@savvy-web/silk 3.15.2 → 4.0.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.
- package/bin/savvy-mcp.js +20 -0
- package/bin/savvy.js +20 -0
- package/changesets-changelog.cjs +838 -731
- package/changesets-changelog.d.cts +185 -113
- package/changesets-changelog.d.ts +185 -113
- package/changesets-changelog.js +840 -736
- package/changesets-markdownlint.cjs +813 -719
- package/changesets-markdownlint.d.cts +7 -9237
- package/changesets-markdownlint.d.ts +7 -9237
- package/changesets-markdownlint.js +826 -732
- package/lint.js +1 -1
- package/package.json +18 -14
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { builtinModules, createRequire } from "node:module";
|
|
2
|
-
import { CommentStyle, SectionId } from "@effected/templates";
|
|
3
2
|
import { Context, Data, Effect, FileSystem, Layer, Option, Path, Result, Schema, SchemaIssue, SchemaTransformation } from "effect";
|
|
3
|
+
import { CommentStyle, SectionId } from "@effected/templates";
|
|
4
|
+
import { PublishTarget, PublishabilityDetector, WorkspaceDiscovery, WorkspaceSnapshots, WorkspaceStateSnapshot, Workspaces } from "@effected/workspaces";
|
|
4
5
|
import * as path$1 from "node:path";
|
|
5
6
|
import { basename, delimiter, dirname, isAbsolute, join, normalize, relative, resolve, sep } from "node:path";
|
|
6
|
-
import { PublishTarget, PublishabilityDetector, WorkspaceDiscovery, WorkspaceSnapshots, WorkspaceStateSnapshot, Workspaces } from "@effected/workspaces";
|
|
7
7
|
import * as fs$1 from "node:fs/promises";
|
|
8
8
|
import * as util from "node:util";
|
|
9
9
|
import { format, inspect, styleText } from "node:util";
|
|
@@ -75,7 +75,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
75
75
|
var __require$1 = /* #__PURE__ */ (() => createRequire(import.meta.url))();
|
|
76
76
|
|
|
77
77
|
//#endregion
|
|
78
|
-
//#region ../silk-
|
|
78
|
+
//#region ../silk-core/dist/dev/pkg/errors/ChangesetConfigError.js
|
|
79
79
|
/**
|
|
80
80
|
* Raised when the `.changeset/config.json` file cannot be read or decoded.
|
|
81
81
|
*
|
|
@@ -93,7 +93,451 @@ var ChangesetConfigError = class extends Data.TaggedError("ChangesetConfigError"
|
|
|
93
93
|
};
|
|
94
94
|
|
|
95
95
|
//#endregion
|
|
96
|
-
//#region ../silk-
|
|
96
|
+
//#region ../silk-core/dist/dev/pkg/errors/PublishTargetBindingError.js
|
|
97
|
+
/**
|
|
98
|
+
* Raised when publishability detection selects a directory that the package's
|
|
99
|
+
* `dist/prod/targets.json` binding does not describe.
|
|
100
|
+
*
|
|
101
|
+
* @remarks
|
|
102
|
+
* The bundler's prod build writes `targets.json` naming every byte-group
|
|
103
|
+
* directory it produced. Once that binding exists it is authoritative: the only
|
|
104
|
+
* directories whose bytes may be published are the ones it lists. A detector
|
|
105
|
+
* that returns anything else — most often `publishConfig.directory` pointing at
|
|
106
|
+
* a **dev** build, because silk mode was misdetected — is about to pack an
|
|
107
|
+
* unresolved workspace manifest and ship it to a registry.
|
|
108
|
+
*
|
|
109
|
+
* That is the `yaml-effect@0.7.1` failure: detection picked `dist/dev/pkg`, the
|
|
110
|
+
* dev manifest still carried `catalog:` specifiers, and the published package
|
|
111
|
+
* was uninstallable (`EUNSUPPORTEDPROTOCOL`).
|
|
112
|
+
*
|
|
113
|
+
* @since 3.1.0
|
|
114
|
+
* @public
|
|
115
|
+
*/
|
|
116
|
+
var PublishTargetBindingError = class extends Data.TaggedError("PublishTargetBindingError") {
|
|
117
|
+
get message() {
|
|
118
|
+
return `Package ${this.pkg} resolved publish directory "${this.directory}", which is not one of the directories bound by dist/prod/targets.json (${this.boundDirectories.join(", ")}). This means publishability detection did not select the prod build output — refusing to publish before packing an unresolved manifest.`;
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
//#endregion
|
|
123
|
+
//#region ../../node_modules/.pnpm/@effected+github-references@0.3.0_effect@4.0.0-rc.115/node_modules/@effected/github-references/IssueReferences.js
|
|
124
|
+
/**
|
|
125
|
+
* GitHub's closing-keyword issue-reference grammar, as pure functions.
|
|
126
|
+
*
|
|
127
|
+
* @remarks
|
|
128
|
+
* GitHub links an issue to a pull request when the PR's description carries
|
|
129
|
+
* `<keyword> #<number>` for one of nine documented keywords. Consumers speak
|
|
130
|
+
* that grammar in two distinct dialects, and this module models exactly those
|
|
131
|
+
* two — no service, no layer, nothing but strings in and values out:
|
|
132
|
+
*
|
|
133
|
+
* - **Inline-in-prose** ({@link harvestIssueReferences}): a reference may appear anywhere in
|
|
134
|
+
* running text — `"fixes #12 and closes #13"` — with mandatory whitespace
|
|
135
|
+
* and **no colon**, because that is the spelling GitHub itself scans PR
|
|
136
|
+
* bodies for. This is the dialect a release pipeline harvests from commit
|
|
137
|
+
* subjects and PR descriptions.
|
|
138
|
+
* - **Bare-line** ({@link parseBareLineReference}): the whole line, after trimming, *is*
|
|
139
|
+
* the reference — `"Closes: #12"` — with an **optional colon**, because a
|
|
140
|
+
* generated references region writes one reference per line and a colon
|
|
141
|
+
* reads better there. GitHub does not require the colon; the region format
|
|
142
|
+
* allows it, so the parser must too. The dialects differ because their
|
|
143
|
+
* producers do: prose is written by humans for GitHub's scanner, the region
|
|
144
|
+
* is written by tooling for humans.
|
|
145
|
+
*
|
|
146
|
+
* Deliberately out of scope this round: cross-repo references
|
|
147
|
+
* (`owner/repo#N`) and full-URL references
|
|
148
|
+
* (`https://github.com/owner/repo/issues/N`). Both are real GitHub spellings;
|
|
149
|
+
* neither dialect's consumers emit them yet, and guessing at their shape here
|
|
150
|
+
* would freeze an API nobody has driven.
|
|
151
|
+
*/
|
|
152
|
+
/**
|
|
153
|
+
* The nine closing keywords GitHub documents, lowercased.
|
|
154
|
+
*
|
|
155
|
+
* @public
|
|
156
|
+
*/
|
|
157
|
+
const CLOSING_KEYWORDS = [
|
|
158
|
+
"close",
|
|
159
|
+
"closes",
|
|
160
|
+
"closed",
|
|
161
|
+
"fix",
|
|
162
|
+
"fixes",
|
|
163
|
+
"fixed",
|
|
164
|
+
"resolve",
|
|
165
|
+
"resolves",
|
|
166
|
+
"resolved"
|
|
167
|
+
];
|
|
168
|
+
/**
|
|
169
|
+
* Both patterns derive from {@link CLOSING_KEYWORDS} so the constant and the
|
|
170
|
+
* grammar cannot drift. Alternation order is safe: the regex engine backtracks
|
|
171
|
+
* through alternatives, so `close` matching inside `closes` fails at the
|
|
172
|
+
* mandatory `#`-introducer and retries the longer keyword.
|
|
173
|
+
*/
|
|
174
|
+
const KEYWORDS = CLOSING_KEYWORDS.join("|");
|
|
175
|
+
/** Inline-in-prose: mandatory whitespace, no colon. */
|
|
176
|
+
const INLINE_PATTERN = new RegExp(`\\b(${KEYWORDS})\\s+#(\\d+)`, "gi");
|
|
177
|
+
/**
|
|
178
|
+
* Bare-line: optional colon, then mandatory same-line whitespace. `[ \t]`
|
|
179
|
+
* rather than `\s`, so an embedded newline cannot smuggle two lines past a
|
|
180
|
+
* parser whose contract is one.
|
|
181
|
+
*/
|
|
182
|
+
const BARE_LINE_PATTERN = new RegExp(`^(${KEYWORDS}):?[ \\t]+#(\\d+)$`, "i");
|
|
183
|
+
|
|
184
|
+
//#endregion
|
|
185
|
+
//#region ../../node_modules/.pnpm/@effected+github-references@0.3.0_effect@4.0.0-rc.115/node_modules/@effected/github-references/ClosingList.js
|
|
186
|
+
/**
|
|
187
|
+
* The closing-list dialect: one whole line naming several issues at once.
|
|
188
|
+
*
|
|
189
|
+
* @remarks
|
|
190
|
+
* The third dialect, alongside the two in `IssueReferences`: after trimming,
|
|
191
|
+
* the **entire** line must be `<keyword>[:] <list>` — keyword
|
|
192
|
+
* case-insensitive (lowercased to canonical form in the result), colon
|
|
193
|
+
* optional, and the list one or more `#<digits>` items separated by `,`,
|
|
194
|
+
* `and`, or the Oxford `, and`. Whitespace inside the line is `[ \t]` only,
|
|
195
|
+
* so an embedded newline cannot smuggle two lines past a parser whose
|
|
196
|
+
* contract is one — the same posture as the bare-line pattern. Any trailing
|
|
197
|
+
* content after the list rejects the line; duplicates are preserved in order,
|
|
198
|
+
* because whether `#1, #1` means one issue or two is the caller's business.
|
|
199
|
+
*
|
|
200
|
+
* Two keyword sets play here. {@link parseClosingList} accepts only the nine
|
|
201
|
+
* closing keywords and yields a {@link ClosingList}; {@link parseReferenceList}
|
|
202
|
+
* additionally accepts the non-closing {@link REFERENCE_KEYWORDS} (`ref`,
|
|
203
|
+
* `refs`, `references`) and reports which set matched via
|
|
204
|
+
* {@link ReferenceList}'s `closing` flag.
|
|
205
|
+
*
|
|
206
|
+
* An item whose digits exceed `Number.MAX_SAFE_INTEGER` rejects the **whole
|
|
207
|
+
* line**, where `harvestIssueReferences` merely skips the one match. The
|
|
208
|
+
* asymmetry is deliberate: a harvest drops one reference out of running
|
|
209
|
+
* prose, but a list line is a single claim about a set of issues, and
|
|
210
|
+
* returning the parseable subset would misrepresent the line as claiming
|
|
211
|
+
* less than it does.
|
|
212
|
+
*
|
|
213
|
+
* Complexity posture: parsing is a single left-to-right character scan —
|
|
214
|
+
* this module contains **no regular expressions at all** — so worst-case
|
|
215
|
+
* time is linear in the line length by construction. There is no
|
|
216
|
+
* backtracking engine to feed, no polynomial blow-up for a scanner to flag,
|
|
217
|
+
* and therefore no input truncation.
|
|
218
|
+
*
|
|
219
|
+
* Beyond the whole-line parsers, {@link harvestReferenceLists} generalizes
|
|
220
|
+
* the same list grammar to the inline-in-prose posture — several lists on
|
|
221
|
+
* one line of running text — and {@link parseClosingLists} /
|
|
222
|
+
* {@link parseReferenceLists} apply the whole-line parsers per line of a
|
|
223
|
+
* multi-line text. All of them ride the same character scan; the no-regex
|
|
224
|
+
* promise above covers every export here.
|
|
225
|
+
*/
|
|
226
|
+
/**
|
|
227
|
+
* The non-closing reference keywords the list dialect accepts, lowercased.
|
|
228
|
+
*
|
|
229
|
+
* @remarks
|
|
230
|
+
* GitHub does not act on these — they associate without closing — but a
|
|
231
|
+
* references region writes them, so the parser must read them.
|
|
232
|
+
*
|
|
233
|
+
* @public
|
|
234
|
+
*/
|
|
235
|
+
const REFERENCE_KEYWORDS = [
|
|
236
|
+
"ref",
|
|
237
|
+
"refs",
|
|
238
|
+
"references"
|
|
239
|
+
];
|
|
240
|
+
/**
|
|
241
|
+
* Both keyword tables ARE the exported constants — membership sets built from
|
|
242
|
+
* them once — so the constants and the grammar cannot drift.
|
|
243
|
+
*/
|
|
244
|
+
const ALL_KEYWORDS = /* @__PURE__ */ new Set([...CLOSING_KEYWORDS, ...REFERENCE_KEYWORDS]);
|
|
245
|
+
/** Membership test for reporting `closing`, widened once so no call casts. */
|
|
246
|
+
const CLOSING_SET = new Set(CLOSING_KEYWORDS);
|
|
247
|
+
const HASH = 35;
|
|
248
|
+
const COLON = 58;
|
|
249
|
+
const COMMA = 44;
|
|
250
|
+
/** `[ \t]` — the only whitespace the dialect admits, per the module remarks. */
|
|
251
|
+
const isSpaceTab = (code) => code === 32 || code === 9;
|
|
252
|
+
const isDigit$2 = (code) => code >= 48 && code <= 57;
|
|
253
|
+
const isAsciiLetter = (code) => code >= 65 && code <= 90 || code >= 97 && code <= 122;
|
|
254
|
+
/** The index after the run of `[ \t]` starting at `from` (possibly `from` itself). */
|
|
255
|
+
const skipSpaceTab = (line, from) => {
|
|
256
|
+
let index = from;
|
|
257
|
+
while (index < line.length && isSpaceTab(line.charCodeAt(index))) index += 1;
|
|
258
|
+
return index;
|
|
259
|
+
};
|
|
260
|
+
/**
|
|
261
|
+
* One list item at exactly `from`: `#<digits>` and the index one past it.
|
|
262
|
+
* Digits exceeding `Number.MAX_SAFE_INTEGER` report `"unsafe"` rather than a
|
|
263
|
+
* silently rounded issue number, still carrying the index one past the digit
|
|
264
|
+
* run so a caller can skip the item's extent; the whole-line parsers reject
|
|
265
|
+
* on it and {@link harvestReferenceLists} abandons the entire candidate —
|
|
266
|
+
* see the module remarks for why a list never yields a partial reading.
|
|
267
|
+
* Anything that is not `#<digits>` at all is `undefined`.
|
|
268
|
+
*/
|
|
269
|
+
const readItem = (line, from) => {
|
|
270
|
+
if (line.charCodeAt(from) !== HASH) return void 0;
|
|
271
|
+
const start = from + 1;
|
|
272
|
+
let index = start;
|
|
273
|
+
while (index < line.length && isDigit$2(line.charCodeAt(index))) index += 1;
|
|
274
|
+
if (index === start) return void 0;
|
|
275
|
+
const value = Number(line.slice(start, index));
|
|
276
|
+
return Number.isSafeInteger(value) ? {
|
|
277
|
+
kind: "item",
|
|
278
|
+
value,
|
|
279
|
+
next: index
|
|
280
|
+
} : {
|
|
281
|
+
kind: "unsafe",
|
|
282
|
+
next: index
|
|
283
|
+
};
|
|
284
|
+
};
|
|
285
|
+
/**
|
|
286
|
+
* One separator at exactly `from`: a comma with optional surrounding `[ \t]`
|
|
287
|
+
* and an optional Oxford `and` (consumed only when its own trailing `[ \t]+`
|
|
288
|
+
* is present), or a bare `and` requiring `[ \t]+` on both sides. `and` is
|
|
289
|
+
* lowercase-only — the keyword head is case-insensitive, the separator is
|
|
290
|
+
* not. Returns the index where the next item must start, or `undefined` when
|
|
291
|
+
* no separator is present.
|
|
292
|
+
*/
|
|
293
|
+
const scanSeparator = (line, from) => {
|
|
294
|
+
const afterLeading = skipSpaceTab(line, from);
|
|
295
|
+
if (line.charCodeAt(afterLeading) === COMMA) {
|
|
296
|
+
const afterComma = skipSpaceTab(line, afterLeading + 1);
|
|
297
|
+
if (line.startsWith("and", afterComma)) {
|
|
298
|
+
const afterAnd = skipSpaceTab(line, afterComma + 3);
|
|
299
|
+
if (afterAnd > afterComma + 3) return afterAnd;
|
|
300
|
+
}
|
|
301
|
+
return afterComma;
|
|
302
|
+
}
|
|
303
|
+
if (afterLeading > from && line.startsWith("and", afterLeading)) {
|
|
304
|
+
const afterAnd = skipSpaceTab(line, afterLeading + 3);
|
|
305
|
+
if (afterAnd > afterLeading + 3) return afterAnd;
|
|
306
|
+
}
|
|
307
|
+
};
|
|
308
|
+
/**
|
|
309
|
+
* The scan walk: item, then separator, then item, until the cursor stands
|
|
310
|
+
* exactly at the end of the string. Anything else — a malformed item, an
|
|
311
|
+
* unknown separator, trailing content, an unsafe issue number — is
|
|
312
|
+
* `undefined`, and the caller rejects the whole line.
|
|
313
|
+
*/
|
|
314
|
+
const parseItems = (line, from) => {
|
|
315
|
+
const issueNumbers = [];
|
|
316
|
+
let cursor = from;
|
|
317
|
+
for (;;) {
|
|
318
|
+
const item = readItem(line, cursor);
|
|
319
|
+
if (item === void 0 || item.kind === "unsafe") return void 0;
|
|
320
|
+
issueNumbers.push(item.value);
|
|
321
|
+
cursor = item.next;
|
|
322
|
+
if (cursor === line.length) return issueNumbers;
|
|
323
|
+
const next = scanSeparator(line, cursor);
|
|
324
|
+
if (next === void 0) return void 0;
|
|
325
|
+
cursor = next;
|
|
326
|
+
}
|
|
327
|
+
};
|
|
328
|
+
/**
|
|
329
|
+
* The list a whole line carries under either keyword set, or `Option.none()`.
|
|
330
|
+
*
|
|
331
|
+
* @remarks
|
|
332
|
+
* Accepts the nine closing keywords plus {@link REFERENCE_KEYWORDS}, and
|
|
333
|
+
* reports which set matched in the result's `closing` flag. Grammar,
|
|
334
|
+
* whole-line posture and the whole-line rejection of unsafe issue numbers
|
|
335
|
+
* are in the module remarks.
|
|
336
|
+
*
|
|
337
|
+
* @public
|
|
338
|
+
*/
|
|
339
|
+
const parseReferenceList = (line) => {
|
|
340
|
+
const trimmed = line.trim();
|
|
341
|
+
let letters = 0;
|
|
342
|
+
while (letters < trimmed.length && isAsciiLetter(trimmed.charCodeAt(letters))) letters += 1;
|
|
343
|
+
if (letters === 0) return Option.none();
|
|
344
|
+
const keyword = trimmed.slice(0, letters).toLowerCase();
|
|
345
|
+
if (!ALL_KEYWORDS.has(keyword)) return Option.none();
|
|
346
|
+
let cursor = letters;
|
|
347
|
+
if (trimmed.charCodeAt(cursor) === COLON) cursor += 1;
|
|
348
|
+
const afterWhitespace = skipSpaceTab(trimmed, cursor);
|
|
349
|
+
if (afterWhitespace === cursor) return Option.none();
|
|
350
|
+
const issueNumbers = parseItems(trimmed, afterWhitespace);
|
|
351
|
+
if (issueNumbers === void 0) return Option.none();
|
|
352
|
+
return Option.some({
|
|
353
|
+
keyword,
|
|
354
|
+
closing: CLOSING_SET.has(keyword),
|
|
355
|
+
issueNumbers
|
|
356
|
+
});
|
|
357
|
+
};
|
|
358
|
+
/**
|
|
359
|
+
* Every reference list a text carries, line by line, across both postures.
|
|
360
|
+
*
|
|
361
|
+
* @remarks
|
|
362
|
+
* The trailer/prose interleave consumers otherwise hand-roll: each line is
|
|
363
|
+
* tried as a whole-line reference list first ({@link parseReferenceList} —
|
|
364
|
+
* colon-tolerant, per the line dialect), and only a line that is not one is
|
|
365
|
+
* harvested inline ({@link harvestReferenceLists} — no colon, per the inline
|
|
366
|
+
* dialect). The preference means a colon-less trailer line contributes its
|
|
367
|
+
* list exactly once, never once per posture.
|
|
368
|
+
*
|
|
369
|
+
* Results carry no offsets, deliberately: this is the line-granular
|
|
370
|
+
* composition, and a consumer that needs spans uses
|
|
371
|
+
* {@link harvestReferenceLists} directly. Duplicates are preserved, in
|
|
372
|
+
* document order.
|
|
373
|
+
*
|
|
374
|
+
* @public
|
|
375
|
+
*/
|
|
376
|
+
const collectReferenceLists = (text) => {
|
|
377
|
+
const lists = [];
|
|
378
|
+
for (const line of text.split("\n")) {
|
|
379
|
+
const whole = parseReferenceList(line);
|
|
380
|
+
if (Option.isSome(whole)) {
|
|
381
|
+
lists.push(whole.value);
|
|
382
|
+
continue;
|
|
383
|
+
}
|
|
384
|
+
for (const harvested of harvestReferenceLists(line)) lists.push({
|
|
385
|
+
keyword: harvested.keyword,
|
|
386
|
+
closing: harvested.closing,
|
|
387
|
+
issueNumbers: harvested.issueNumbers
|
|
388
|
+
});
|
|
389
|
+
}
|
|
390
|
+
return lists;
|
|
391
|
+
};
|
|
392
|
+
/** `[A-Za-z0-9_]` — the word-boundary alphabet the inline dialects use. */
|
|
393
|
+
const isWordChar = (code) => isAsciiLetter(code) || isDigit$2(code) || code === 95;
|
|
394
|
+
/**
|
|
395
|
+
* The full JavaScript `\s` set, spelled as a predicate so the module keeps
|
|
396
|
+
* its no-regex promise: ASCII whitespace, NEL-adjacent controls, and the
|
|
397
|
+
* Unicode space separators. Only the keyword→first-item gap of
|
|
398
|
+
* {@link harvestReferenceLists} admits this set — everything inside a list
|
|
399
|
+
* stays `[ \t]`, per the module remarks.
|
|
400
|
+
*/
|
|
401
|
+
const isAnyWhitespace = (code) => code === 32 || code >= 9 && code <= 13 || code === 160 || code === 5760 || code >= 8192 && code <= 8202 || code === 8232 || code === 8233 || code === 8239 || code === 8287 || code === 12288 || code === 65279;
|
|
402
|
+
/**
|
|
403
|
+
* Every reference list found inline in `text`, in document order.
|
|
404
|
+
*
|
|
405
|
+
* @remarks
|
|
406
|
+
* The inline-in-prose posture generalized to lists:
|
|
407
|
+
* `Closes #123, Fixes #456` in one line of a commit body yields two
|
|
408
|
+
* single-item lists, where
|
|
409
|
+
* `harvestIssueReferences` reads only the first reference of each and the
|
|
410
|
+
* whole-line parsers read neither. The grammar per candidate:
|
|
411
|
+
*
|
|
412
|
+
* - The keyword is case-insensitive, drawn from either keyword set,
|
|
413
|
+
* lowercased to canonical form in the result, with `closing` reported by
|
|
414
|
+
* set membership. Word boundaries hold on both sides: the characters
|
|
415
|
+
* immediately before and after the keyword's letter run must not be
|
|
416
|
+
* `[A-Za-z0-9_]`, so `recloses #1` and `1closes #1` do not match.
|
|
417
|
+
* - **No colon** — exactly like `harvestIssueReferences`, the colon spelling
|
|
418
|
+
* belongs to the line dialects ({@link parseReferenceList} and the
|
|
419
|
+
* bare-line parser), so `closes: #1` inline yields nothing.
|
|
420
|
+
* - The keyword→first-item gap is any run of whitespace **including
|
|
421
|
+
* newlines**, mirroring the inline dialect's `\s+`.
|
|
422
|
+
* - List continuation uses the `,` / `and` / Oxford separators with `[ \t]`
|
|
423
|
+
* whitespace only, so a list cannot continue past a newline — a later
|
|
424
|
+
* line makes its own claims.
|
|
425
|
+
* - Items are `#<digits>`; duplicates are preserved in order.
|
|
426
|
+
*
|
|
427
|
+
* A list ends at its last valid item: in `closes #1 and fixes #2` the
|
|
428
|
+
* ` and ` before `fixes` fails as a separator because what follows is not
|
|
429
|
+
* `#`, so the text yields `closes: [1]` then `fixes: [2]`. An item past
|
|
430
|
+
* `Number.MAX_SAFE_INTEGER` anywhere in a candidate skips the **entire**
|
|
431
|
+
* candidate — never a partial list, for the same reason
|
|
432
|
+
* {@link parseReferenceList} rejects the whole line — and scanning resumes
|
|
433
|
+
* after the candidate's scanned extent.
|
|
434
|
+
*
|
|
435
|
+
* Like everything in this module, the harvest is a single left-to-right
|
|
436
|
+
* character scan with no regular expressions, so time stays linear in the
|
|
437
|
+
* text length and no input is truncated.
|
|
438
|
+
*
|
|
439
|
+
* @public
|
|
440
|
+
*/
|
|
441
|
+
const harvestReferenceLists = (text) => {
|
|
442
|
+
const lists = [];
|
|
443
|
+
let index = 0;
|
|
444
|
+
while (index < text.length) {
|
|
445
|
+
if (!isAsciiLetter(text.charCodeAt(index))) {
|
|
446
|
+
index += 1;
|
|
447
|
+
continue;
|
|
448
|
+
}
|
|
449
|
+
const runStart = index;
|
|
450
|
+
let runEnd = index + 1;
|
|
451
|
+
while (runEnd < text.length && isAsciiLetter(text.charCodeAt(runEnd))) runEnd += 1;
|
|
452
|
+
if (runStart > 0 && isWordChar(text.charCodeAt(runStart - 1)) || runEnd < text.length && isWordChar(text.charCodeAt(runEnd))) {
|
|
453
|
+
index = runEnd;
|
|
454
|
+
continue;
|
|
455
|
+
}
|
|
456
|
+
const keyword = text.slice(runStart, runEnd).toLowerCase();
|
|
457
|
+
if (!ALL_KEYWORDS.has(keyword)) {
|
|
458
|
+
index = runEnd;
|
|
459
|
+
continue;
|
|
460
|
+
}
|
|
461
|
+
let cursor = runEnd;
|
|
462
|
+
while (cursor < text.length && isAnyWhitespace(text.charCodeAt(cursor))) cursor += 1;
|
|
463
|
+
const first = cursor === runEnd ? void 0 : readItem(text, cursor);
|
|
464
|
+
if (first === void 0) {
|
|
465
|
+
index = runEnd;
|
|
466
|
+
continue;
|
|
467
|
+
}
|
|
468
|
+
if (first.kind === "unsafe") {
|
|
469
|
+
index = first.next;
|
|
470
|
+
continue;
|
|
471
|
+
}
|
|
472
|
+
const issueNumbers = [first.value];
|
|
473
|
+
let end = first.next;
|
|
474
|
+
let unsafeNext;
|
|
475
|
+
for (;;) {
|
|
476
|
+
const next = scanSeparator(text, end);
|
|
477
|
+
if (next === void 0) break;
|
|
478
|
+
const item = readItem(text, next);
|
|
479
|
+
if (item === void 0) break;
|
|
480
|
+
if (item.kind === "unsafe") {
|
|
481
|
+
unsafeNext = item.next;
|
|
482
|
+
break;
|
|
483
|
+
}
|
|
484
|
+
issueNumbers.push(item.value);
|
|
485
|
+
end = item.next;
|
|
486
|
+
}
|
|
487
|
+
if (unsafeNext !== void 0) {
|
|
488
|
+
index = unsafeNext;
|
|
489
|
+
continue;
|
|
490
|
+
}
|
|
491
|
+
lists.push({
|
|
492
|
+
keyword,
|
|
493
|
+
closing: CLOSING_SET.has(keyword),
|
|
494
|
+
issueNumbers,
|
|
495
|
+
start: runStart,
|
|
496
|
+
end
|
|
497
|
+
});
|
|
498
|
+
index = end;
|
|
499
|
+
}
|
|
500
|
+
return lists;
|
|
501
|
+
};
|
|
502
|
+
|
|
503
|
+
//#endregion
|
|
504
|
+
//#region ../../node_modules/.pnpm/@effected+github-references@0.3.0_effect@4.0.0-rc.115/node_modules/@effected/github-references/KeywordFamily.js
|
|
505
|
+
/**
|
|
506
|
+
* The projection table IS the totality proof: `Record` over the union of
|
|
507
|
+
* both keyword types makes a keyword added to either constant without an
|
|
508
|
+
* entry here fail to compile.
|
|
509
|
+
*/
|
|
510
|
+
const FAMILIES = {
|
|
511
|
+
close: "close",
|
|
512
|
+
closes: "close",
|
|
513
|
+
closed: "close",
|
|
514
|
+
fix: "fix",
|
|
515
|
+
fixes: "fix",
|
|
516
|
+
fixed: "fix",
|
|
517
|
+
resolve: "resolve",
|
|
518
|
+
resolves: "resolve",
|
|
519
|
+
resolved: "resolve",
|
|
520
|
+
ref: "ref",
|
|
521
|
+
refs: "ref",
|
|
522
|
+
references: "ref"
|
|
523
|
+
};
|
|
524
|
+
/**
|
|
525
|
+
* The family a keyword belongs to.
|
|
526
|
+
*
|
|
527
|
+
* @remarks
|
|
528
|
+
* Total over both keyword sets by construction — see the module remarks for
|
|
529
|
+
* why an explicit record beats a `startsWith` heuristic. `close`, `closes`
|
|
530
|
+
* and `closed` map to `"close"`; the `fix` and `resolve` conjugations
|
|
531
|
+
* likewise; `ref`, `refs` and `references` map to `"ref"`. The evidence for
|
|
532
|
+
* the projection is downstream: categorized harvesters key maps by family,
|
|
533
|
+
* and each was hand-rolling this collapse.
|
|
534
|
+
*
|
|
535
|
+
* @public
|
|
536
|
+
*/
|
|
537
|
+
const keywordFamily = (keyword) => FAMILIES[keyword];
|
|
538
|
+
|
|
539
|
+
//#endregion
|
|
540
|
+
//#region ../silk-core/dist/dev/pkg/schemas/VersioningSchemas.js
|
|
97
541
|
/**
|
|
98
542
|
* Configuration for how private packages are handled during versioning.
|
|
99
543
|
*
|
|
@@ -165,7 +609,7 @@ const ChangesetConfigFile = Schema.Struct({
|
|
|
165
609
|
*
|
|
166
610
|
* @remarks
|
|
167
611
|
* Extends {@link (ChangesetConfigFile:type)} with a `_isSilk` marker flag that is automatically
|
|
168
|
-
* set to `true`. Detected by
|
|
612
|
+
* set to `true`. Detected by `ChangesetConfigReader` when the `changelog` field
|
|
169
613
|
* references `@savvy-web/changesets`.
|
|
170
614
|
*
|
|
171
615
|
* @since 0.1.0
|
|
@@ -176,6 +620,26 @@ const SilkChangesetConfigFile = Schema.Struct({
|
|
|
176
620
|
_isSilk: Schema.Boolean.pipe(Schema.withDecodingDefaultType(Effect.succeed(true)), Schema.withConstructorDefault(Effect.succeed(true)))
|
|
177
621
|
});
|
|
178
622
|
|
|
623
|
+
//#endregion
|
|
624
|
+
//#region ../silk-core/dist/dev/pkg/utils/TrailingSlash.js
|
|
625
|
+
/**
|
|
626
|
+
* Trim trailing slashes from a string.
|
|
627
|
+
*
|
|
628
|
+
* @remarks
|
|
629
|
+
* Trims trailing slashes with an index scan rather than `/\/+$/`. That regex is
|
|
630
|
+
* unanchored at the start, so the engine retries the match from every position
|
|
631
|
+
* and degrades to O(n²) on a string of many slashes (CodeQL `js/polynomial-redos`).
|
|
632
|
+
* Only a trailing run of slashes is removed; interior slash runs are untouched.
|
|
633
|
+
*
|
|
634
|
+
* @since 0.1.0
|
|
635
|
+
* @public
|
|
636
|
+
*/
|
|
637
|
+
const trimTrailingSlashes = (s) => {
|
|
638
|
+
let end = s.length;
|
|
639
|
+
while (end > 0 && s[end - 1] === "/") end -= 1;
|
|
640
|
+
return s.slice(0, end);
|
|
641
|
+
};
|
|
642
|
+
|
|
179
643
|
//#endregion
|
|
180
644
|
//#region ../silk-effects/dist/dev/pkg/services/ChangesetConfigReader.js
|
|
181
645
|
/**
|
|
@@ -206,8 +670,8 @@ function isSilkChangelog(changelog) {
|
|
|
206
670
|
*
|
|
207
671
|
* @remarks
|
|
208
672
|
* Automatically detects whether the config uses the Silk changelog adapter
|
|
209
|
-
* (`@savvy-web/changesets`) and decodes as
|
|
210
|
-
* standard
|
|
673
|
+
* (`@savvy-web/changesets`) and decodes as `SilkChangesetConfigFile` or the
|
|
674
|
+
* standard `ChangesetConfigFile` accordingly.
|
|
211
675
|
*
|
|
212
676
|
* @example
|
|
213
677
|
* ```typescript
|
|
@@ -285,33 +749,6 @@ var ChangesetConfigReader = class extends Context.Service()("@savvy-web/silk-eff
|
|
|
285
749
|
}));
|
|
286
750
|
};
|
|
287
751
|
|
|
288
|
-
//#endregion
|
|
289
|
-
//#region ../silk-effects/dist/dev/pkg/errors/PublishTargetBindingError.js
|
|
290
|
-
/**
|
|
291
|
-
* Raised when publishability detection selects a directory that the package's
|
|
292
|
-
* `dist/prod/targets.json` binding does not describe.
|
|
293
|
-
*
|
|
294
|
-
* @remarks
|
|
295
|
-
* The bundler's prod build writes `targets.json` naming every byte-group
|
|
296
|
-
* directory it produced. Once that binding exists it is authoritative: the only
|
|
297
|
-
* directories whose bytes may be published are the ones it lists. A detector
|
|
298
|
-
* that returns anything else — most often `publishConfig.directory` pointing at
|
|
299
|
-
* a **dev** build, because silk mode was misdetected — is about to pack an
|
|
300
|
-
* unresolved workspace manifest and ship it to a registry.
|
|
301
|
-
*
|
|
302
|
-
* That is the `yaml-effect@0.7.1` failure: detection picked `dist/dev/pkg`, the
|
|
303
|
-
* dev manifest still carried `catalog:` specifiers, and the published package
|
|
304
|
-
* was uninstallable (`EUNSUPPORTEDPROTOCOL`).
|
|
305
|
-
*
|
|
306
|
-
* @since 3.1.0
|
|
307
|
-
* @public
|
|
308
|
-
*/
|
|
309
|
-
var PublishTargetBindingError = class extends Data.TaggedError("PublishTargetBindingError") {
|
|
310
|
-
get message() {
|
|
311
|
-
return `Package ${this.pkg} resolved publish directory "${this.directory}", which is not one of the directories bound by dist/prod/targets.json (${this.boundDirectories.join(", ")}). This means publishability detection did not select the prod build output — refusing to publish before packing an unresolved manifest.`;
|
|
312
|
-
}
|
|
313
|
-
};
|
|
314
|
-
|
|
315
752
|
//#endregion
|
|
316
753
|
//#region ../silk-effects/dist/dev/pkg/services/ChangesetConfig.js
|
|
317
754
|
const isSilk = (cfg) => "_isSilk" in cfg && cfg._isSilk === true;
|
|
@@ -389,23 +826,6 @@ var ChangesetConfig = class ChangesetConfig extends Context.Service()("@savvy-we
|
|
|
389
826
|
}));
|
|
390
827
|
};
|
|
391
828
|
|
|
392
|
-
//#endregion
|
|
393
|
-
//#region ../silk-effects/dist/dev/pkg/utils/TrailingSlash.js
|
|
394
|
-
/**
|
|
395
|
-
* Trim trailing slashes from a string.
|
|
396
|
-
*
|
|
397
|
-
* @remarks
|
|
398
|
-
* Trims trailing slashes with an index scan rather than `/\/+$/`. That regex is
|
|
399
|
-
* unanchored at the start, so the engine retries the match from every position
|
|
400
|
-
* and degrades to O(n²) on a string of many slashes (CodeQL `js/polynomial-redos`).
|
|
401
|
-
* Only a trailing run of slashes is removed; interior slash runs are untouched.
|
|
402
|
-
*/
|
|
403
|
-
const trimTrailingSlashes = (s) => {
|
|
404
|
-
let end = s.length;
|
|
405
|
-
while (end > 0 && s[end - 1] === "/") end -= 1;
|
|
406
|
-
return s.slice(0, end);
|
|
407
|
-
};
|
|
408
|
-
|
|
409
829
|
//#endregion
|
|
410
830
|
//#region ../silk-effects/dist/dev/pkg/services/SilkPublishability.js
|
|
411
831
|
const NPM_DEFAULT = "https://registry.npmjs.org/";
|
|
@@ -529,7 +949,7 @@ var SilkPublishability = class SilkPublishability {
|
|
|
529
949
|
* directories it names. A directory outside the binding means detection did
|
|
530
950
|
* not select the prod output — the `yaml-effect@0.7.1` shape, where a dev
|
|
531
951
|
* manifest carrying `catalog:` specifiers was packed and published. Rather
|
|
532
|
-
* than ship those bytes, fail with
|
|
952
|
+
* than ship those bytes, fail with `PublishTargetBindingError`.
|
|
533
953
|
*
|
|
534
954
|
* Before the prod build runs there is no binding, and the detector's
|
|
535
955
|
* placeholder directories are left alone.
|
|
@@ -2671,6 +3091,67 @@ function makeGitHubTest(responses) {
|
|
|
2671
3091
|
} });
|
|
2672
3092
|
}
|
|
2673
3093
|
|
|
3094
|
+
//#endregion
|
|
3095
|
+
//#region ../silk-effects/dist/dev/pkg/changesets/utils/logger.js
|
|
3096
|
+
/**
|
|
3097
|
+
* Warning output for changelog generation, parameterised by a
|
|
3098
|
+
* {@link ChangesetLogMode} reference instead of an ambient environment read.
|
|
3099
|
+
*
|
|
3100
|
+
* @remarks
|
|
3101
|
+
* This module is engine code shared by every front end, so it must not read
|
|
3102
|
+
* `process` — a `process.env` read here would bake one host's environment
|
|
3103
|
+
* into every other. The mode is a `Context.Reference` with a default of
|
|
3104
|
+
* `"stderr"`; a front end that knows it runs under GitHub Actions or a test
|
|
3105
|
+
* runner provides `"github"` or `"silent"` from its own `process.env` read.
|
|
3106
|
+
*
|
|
3107
|
+
* @packageDocumentation
|
|
3108
|
+
*/
|
|
3109
|
+
/**
|
|
3110
|
+
* The reference that selects the {@link ChangesetLogModeValue}.
|
|
3111
|
+
*
|
|
3112
|
+
* @remarks
|
|
3113
|
+
* Defaults to `"stderr"` when no front end provides it, so a program that
|
|
3114
|
+
* never touches the reference still reports. Provide with
|
|
3115
|
+
* `Layer.succeed(ChangesetLogMode, "github")` or
|
|
3116
|
+
* `Effect.provideService(ChangesetLogMode, "silent")`.
|
|
3117
|
+
*
|
|
3118
|
+
* @example
|
|
3119
|
+
* ```typescript
|
|
3120
|
+
* import { Effect } from "effect";
|
|
3121
|
+
* import { Changesets } from "\@savvy-web/silk-effects";
|
|
3122
|
+
*
|
|
3123
|
+
* const mode = process.env.GITHUB_ACTIONS === "true" ? "github" : "stderr";
|
|
3124
|
+
* program.pipe(Effect.provideService(Changesets.ChangesetLogMode, mode));
|
|
3125
|
+
* ```
|
|
3126
|
+
*
|
|
3127
|
+
* @public
|
|
3128
|
+
*/
|
|
3129
|
+
const ChangesetLogMode = Context.Reference("@savvy-web/silk-effects/Changesets/ChangesetLogMode", { defaultValue: () => "stderr" });
|
|
3130
|
+
/**
|
|
3131
|
+
* Log a warning message according to the {@link ChangesetLogMode} in context.
|
|
3132
|
+
*
|
|
3133
|
+
* @param message - The warning message
|
|
3134
|
+
* @param args - Additional arguments (concatenated with a space in `"github"` mode)
|
|
3135
|
+
* @returns An `Effect` that never fails
|
|
3136
|
+
*
|
|
3137
|
+
* @internal
|
|
3138
|
+
*/
|
|
3139
|
+
function logWarning(message, ...args) {
|
|
3140
|
+
return Effect.gen(function* () {
|
|
3141
|
+
switch (yield* ChangesetLogMode) {
|
|
3142
|
+
case "silent": return;
|
|
3143
|
+
case "github": {
|
|
3144
|
+
const text = args.length > 0 ? `${message} ${args.join(" ")}` : message;
|
|
3145
|
+
console.warn(`::warning::${text}`);
|
|
3146
|
+
return;
|
|
3147
|
+
}
|
|
3148
|
+
case "stderr":
|
|
3149
|
+
console.warn(message, ...args);
|
|
3150
|
+
return;
|
|
3151
|
+
}
|
|
3152
|
+
});
|
|
3153
|
+
}
|
|
3154
|
+
|
|
2674
3155
|
//#endregion
|
|
2675
3156
|
//#region ../silk-effects/dist/dev/pkg/changesets/schemas/primitives.js
|
|
2676
3157
|
/**
|
|
@@ -2953,7 +3434,7 @@ const DependencyTableRowSchema = Schema.Struct({
|
|
|
2953
3434
|
const DependencyTableSchema = Schema.Array(DependencyTableRowSchema).check(Schema.isMinLength(1));
|
|
2954
3435
|
|
|
2955
3436
|
//#endregion
|
|
2956
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
3437
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/MarkdownNode.js
|
|
2957
3438
|
/**
|
|
2958
3439
|
* A single point in a source document: 1-based `line` and `column`, 0-based
|
|
2959
3440
|
* `offset`.
|
|
@@ -3760,7 +4241,7 @@ const MarkdownNode = Schema.suspend(() => Schema.Union([
|
|
|
3760
4241
|
]));
|
|
3761
4242
|
|
|
3762
4243
|
//#endregion
|
|
3763
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
4244
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/frontmatter.js
|
|
3764
4245
|
const FENCES = /* @__PURE__ */ new Map([
|
|
3765
4246
|
["---", {
|
|
3766
4247
|
format: "yaml",
|
|
@@ -3815,7 +4296,7 @@ const scanFrontmatter = (lines, text) => {
|
|
|
3815
4296
|
};
|
|
3816
4297
|
|
|
3817
4298
|
//#endregion
|
|
3818
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
4299
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/JsoncNode.js
|
|
3819
4300
|
/**
|
|
3820
4301
|
* Discriminator values for JSONC AST node types: the JSON value types
|
|
3821
4302
|
* (`string`/`number`/`boolean`/`null`), the structural types
|
|
@@ -3991,10 +4472,10 @@ function evaluateNode(node, depth) {
|
|
|
3991
4472
|
}
|
|
3992
4473
|
|
|
3993
4474
|
//#endregion
|
|
3994
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
4475
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/internal/scanner.js
|
|
3995
4476
|
const isWhitespace = (ch) => ch === 32 || ch === 9 || ch === 11 || ch === 12 || ch === 160 || ch === 65279;
|
|
3996
4477
|
const isLineBreak$1 = (ch) => ch === 10 || ch === 13 || ch === 8232 || ch === 8233;
|
|
3997
|
-
const isDigit$
|
|
4478
|
+
const isDigit$1 = (ch) => ch >= 48 && ch <= 57;
|
|
3998
4479
|
/**
|
|
3999
4480
|
* Create a stateful {@link Scanner} for the given JSONC string.
|
|
4000
4481
|
*
|
|
@@ -4099,31 +4580,31 @@ const createScanner$1 = (text, ignoreTrivia = false) => {
|
|
|
4099
4580
|
if (text.charCodeAt(pos) === 45) pos++;
|
|
4100
4581
|
if (text.charCodeAt(pos) === 48) pos++;
|
|
4101
4582
|
else {
|
|
4102
|
-
if (!isDigit$
|
|
4583
|
+
if (!isDigit$1(text.charCodeAt(pos))) {
|
|
4103
4584
|
tokenError = "UnexpectedEndOfNumber";
|
|
4104
4585
|
return text.substring(start, pos);
|
|
4105
4586
|
}
|
|
4106
4587
|
pos++;
|
|
4107
|
-
while (pos < len && isDigit$
|
|
4588
|
+
while (pos < len && isDigit$1(text.charCodeAt(pos))) pos++;
|
|
4108
4589
|
}
|
|
4109
4590
|
if (pos < len && text.charCodeAt(pos) === 46) {
|
|
4110
4591
|
pos++;
|
|
4111
|
-
if (!isDigit$
|
|
4592
|
+
if (!isDigit$1(text.charCodeAt(pos))) {
|
|
4112
4593
|
tokenError = "UnexpectedEndOfNumber";
|
|
4113
4594
|
return text.substring(start, pos);
|
|
4114
4595
|
}
|
|
4115
4596
|
pos++;
|
|
4116
|
-
while (pos < len && isDigit$
|
|
4597
|
+
while (pos < len && isDigit$1(text.charCodeAt(pos))) pos++;
|
|
4117
4598
|
}
|
|
4118
4599
|
if (pos < len && (text.charCodeAt(pos) === 69 || text.charCodeAt(pos) === 101)) {
|
|
4119
4600
|
pos++;
|
|
4120
4601
|
if (pos < len && (text.charCodeAt(pos) === 43 || text.charCodeAt(pos) === 45)) pos++;
|
|
4121
|
-
if (!isDigit$
|
|
4602
|
+
if (!isDigit$1(text.charCodeAt(pos))) {
|
|
4122
4603
|
tokenError = "UnexpectedEndOfNumber";
|
|
4123
4604
|
return text.substring(start, pos);
|
|
4124
4605
|
}
|
|
4125
4606
|
pos++;
|
|
4126
|
-
while (pos < len && isDigit$
|
|
4607
|
+
while (pos < len && isDigit$1(text.charCodeAt(pos))) pos++;
|
|
4127
4608
|
}
|
|
4128
4609
|
return text.substring(start, pos);
|
|
4129
4610
|
};
|
|
@@ -4229,7 +4710,7 @@ const createScanner$1 = (text, ignoreTrivia = false) => {
|
|
|
4229
4710
|
return token;
|
|
4230
4711
|
}
|
|
4231
4712
|
case 45:
|
|
4232
|
-
if (pos + 1 < len && isDigit$
|
|
4713
|
+
if (pos + 1 < len && isDigit$1(text.charCodeAt(pos + 1))) {
|
|
4233
4714
|
tokenValue = scanNumber();
|
|
4234
4715
|
token = "Number";
|
|
4235
4716
|
return token;
|
|
@@ -4240,7 +4721,7 @@ const createScanner$1 = (text, ignoreTrivia = false) => {
|
|
|
4240
4721
|
tokenError = "InvalidSymbol";
|
|
4241
4722
|
return token;
|
|
4242
4723
|
default:
|
|
4243
|
-
if (isDigit$
|
|
4724
|
+
if (isDigit$1(ch)) {
|
|
4244
4725
|
tokenValue = scanNumber();
|
|
4245
4726
|
token = "Number";
|
|
4246
4727
|
return token;
|
|
@@ -4293,7 +4774,7 @@ const createScanner$1 = (text, ignoreTrivia = false) => {
|
|
|
4293
4774
|
};
|
|
4294
4775
|
|
|
4295
4776
|
//#endregion
|
|
4296
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
4777
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/internal/skip.js
|
|
4297
4778
|
/**
|
|
4298
4779
|
* Iteratively consume the value beginning at the cursor's current token and
|
|
4299
4780
|
* return its tight end offset (excludes trailing whitespace/comments).
|
|
@@ -4324,7 +4805,7 @@ const skipBalancedValue = (cursor) => {
|
|
|
4324
4805
|
};
|
|
4325
4806
|
|
|
4326
4807
|
//#endregion
|
|
4327
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
4808
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/internal/parser.js
|
|
4328
4809
|
/**
|
|
4329
4810
|
* The public parse-error code vocabulary. The facade builds its `@public`
|
|
4330
4811
|
* `JsoncParseErrorCode` schema from this array; the parser produces these codes
|
|
@@ -4738,7 +5219,7 @@ const parseTree$2 = (text, flags) => {
|
|
|
4738
5219
|
};
|
|
4739
5220
|
|
|
4740
5221
|
//#endregion
|
|
4741
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
5222
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/Jsonc.js
|
|
4742
5223
|
/**
|
|
4743
5224
|
* The single public parse-error code vocabulary, appearing as the `code` field
|
|
4744
5225
|
* of {@link JsoncParseErrorDetail}.
|
|
@@ -5223,7 +5704,7 @@ var Jsonc = class Jsonc {
|
|
|
5223
5704
|
*/
|
|
5224
5705
|
static fromString(options) {
|
|
5225
5706
|
const flags = toFlags(options);
|
|
5226
|
-
return Schema.String.pipe(Schema.decodeTo(Schema.Unknown, SchemaTransformation.
|
|
5707
|
+
return Schema.String.pipe(Schema.decodeTo(Schema.Unknown, SchemaTransformation.transformEffect({
|
|
5227
5708
|
decode: (input) => {
|
|
5228
5709
|
const { value, errors } = parseValue(input, flags);
|
|
5229
5710
|
if (errors.length > 0) {
|
|
@@ -5307,7 +5788,7 @@ var Jsonc = class Jsonc {
|
|
|
5307
5788
|
};
|
|
5308
5789
|
|
|
5309
5790
|
//#endregion
|
|
5310
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
5791
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/JsoncEdit.js
|
|
5311
5792
|
/**
|
|
5312
5793
|
* A range within a JSONC document, expressed as a zero-based character
|
|
5313
5794
|
* `offset` and a `length` in UTF-16 code units. Pass to `JsoncFormatter.format`
|
|
@@ -5378,7 +5859,7 @@ var JsoncEdit = class extends Schema.Class("JsoncEdit")({
|
|
|
5378
5859
|
};
|
|
5379
5860
|
|
|
5380
5861
|
//#endregion
|
|
5381
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
5862
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/internal/navigate.js
|
|
5382
5863
|
/**
|
|
5383
5864
|
* Resolve `path` against `text`, returning where the target is (or where it
|
|
5384
5865
|
* would be inserted). `path` must be non-empty — the whole-document case is
|
|
@@ -5506,7 +5987,7 @@ function navigate(text, path) {
|
|
|
5506
5987
|
}
|
|
5507
5988
|
|
|
5508
5989
|
//#endregion
|
|
5509
|
-
//#region ../../node_modules/.pnpm/@effected+jsonc@0.
|
|
5990
|
+
//#region ../../node_modules/.pnpm/@effected+jsonc@0.11.0_effect@4.0.0-rc.115/node_modules/@effected/jsonc/JsoncModifier.js
|
|
5510
5991
|
/**
|
|
5511
5992
|
* Raised when `JsoncModifier.modify` cannot navigate the requested path: the
|
|
5512
5993
|
* value at `depth` is not the container kind (`expected`) the next path segment
|
|
@@ -5635,7 +6116,7 @@ var JsoncModifier = class {
|
|
|
5635
6116
|
};
|
|
5636
6117
|
|
|
5637
6118
|
//#endregion
|
|
5638
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6119
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/carriers.js
|
|
5639
6120
|
/**
|
|
5640
6121
|
* P1's error-code vocabulary. Widens as later phases add parse-error kinds;
|
|
5641
6122
|
* P1 registers exactly one, the hardening-guard trip.
|
|
@@ -5676,7 +6157,7 @@ var GuardExceeded$1 = class extends Error {
|
|
|
5676
6157
|
const isGuardExceeded$1 = (u) => u instanceof GuardExceeded$1;
|
|
5677
6158
|
|
|
5678
6159
|
//#endregion
|
|
5679
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6160
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/MarkdownDiagnostic.js
|
|
5680
6161
|
/**
|
|
5681
6162
|
* Error codes `Markdown.parse`/`MarkdownDocument.parse` can fail with. P1
|
|
5682
6163
|
* registers exactly the hardening-guard trip; later phases widen the union
|
|
@@ -5757,7 +6238,7 @@ function lineChar(text, offset) {
|
|
|
5757
6238
|
}
|
|
5758
6239
|
|
|
5759
6240
|
//#endregion
|
|
5760
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6241
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blockTypes.js
|
|
5761
6242
|
/** Narrow materialized children to the flow content most constructs contain. */
|
|
5762
6243
|
const flowChildren = (children) => children.filter((child) => child.type !== "root" && child.type !== "listItem" && child.type !== "tableRow" && child.type !== "tableCell");
|
|
5763
6244
|
/** Narrow materialized children to the list items a list contains. */
|
|
@@ -5783,7 +6264,7 @@ const makeBlockNode = (type, startOffset, startLine, depth = 0) => ({
|
|
|
5783
6264
|
});
|
|
5784
6265
|
|
|
5785
6266
|
//#endregion
|
|
5786
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6267
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/preprocess.js
|
|
5787
6268
|
/**
|
|
5788
6269
|
* Split `text` into lines, preserving each line's absolute start offset.
|
|
5789
6270
|
*
|
|
@@ -5838,7 +6319,7 @@ const peekCode = (line, position) => position >= 0 && position < line.length ? l
|
|
|
5838
6319
|
const columnsToNextTabStop = (column) => 4 - column % 4;
|
|
5839
6320
|
|
|
5840
6321
|
//#endregion
|
|
5841
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6322
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/htmlTags.js
|
|
5842
6323
|
const TAGNAME = "[A-Za-z][A-Za-z0-9-]*";
|
|
5843
6324
|
/** An opening tag, with any attributes and an optional self-closing slash. */
|
|
5844
6325
|
const OPENTAG = `<${TAGNAME}(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^"'=<>\`\\x00-\\x20]+|'[^']*'|"[^"]*"))?)*\\s*/?>`;
|
|
@@ -5850,7 +6331,7 @@ const HTMLTAG = `(?:${OPENTAG}|${CLOSETAG}|<!-->|<!--->|<!--[\\s\\S]*?-->|[<][?]
|
|
|
5850
6331
|
const reHtmlTag = new RegExp(`^${HTMLTAG}`);
|
|
5851
6332
|
|
|
5852
6333
|
//#endregion
|
|
5853
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6334
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/htmlBlock.js
|
|
5854
6335
|
const C_LESSTHAN$3 = 60;
|
|
5855
6336
|
const reHtmlBlockOpen = [
|
|
5856
6337
|
/./,
|
|
@@ -5917,7 +6398,7 @@ const htmlBlockStart = {
|
|
|
5917
6398
|
};
|
|
5918
6399
|
|
|
5919
6400
|
//#endregion
|
|
5920
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6401
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/atxHeading.js
|
|
5921
6402
|
const reATXHeadingMarker = /^#{1,6}(?:[ \t]+|$)/;
|
|
5922
6403
|
const reOnlyTrailingHashes = /^[ \t]*#+[ \t]*$/;
|
|
5923
6404
|
const reClosingHashes = /[ \t]+#+[ \t]*$/;
|
|
@@ -5968,7 +6449,7 @@ const atxHeadingStart = {
|
|
|
5968
6449
|
};
|
|
5969
6450
|
|
|
5970
6451
|
//#endregion
|
|
5971
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6452
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/blockquote.js
|
|
5972
6453
|
const C_GREATERTHAN = 62;
|
|
5973
6454
|
/** Blockquote: continues while each line carries its `>` marker. */
|
|
5974
6455
|
const blockquoteConstruct = {
|
|
@@ -6003,12 +6484,12 @@ const blockquoteStart = {
|
|
|
6003
6484
|
};
|
|
6004
6485
|
|
|
6005
6486
|
//#endregion
|
|
6006
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6487
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/entityMap.js
|
|
6007
6488
|
/** The HTML5 named character references, keyed without `&` or `;`. */
|
|
6008
6489
|
const ENTITY_MAP = new Map(JSON.parse("[[\"AElig\",\"Æ\"],[\"AMP\",\"&\"],[\"Aacute\",\"Á\"],[\"Abreve\",\"Ă\"],[\"Acirc\",\"Â\"],[\"Acy\",\"А\"],[\"Afr\",\"𝔄\"],[\"Agrave\",\"À\"],[\"Alpha\",\"Α\"],[\"Amacr\",\"Ā\"],[\"And\",\"⩓\"],[\"Aogon\",\"Ą\"],[\"Aopf\",\"𝔸\"],[\"ApplyFunction\",\"\"],[\"Aring\",\"Å\"],[\"Ascr\",\"𝒜\"],[\"Assign\",\"≔\"],[\"Atilde\",\"Ã\"],[\"Auml\",\"Ä\"],[\"Backslash\",\"∖\"],[\"Barv\",\"⫧\"],[\"Barwed\",\"⌆\"],[\"Bcy\",\"Б\"],[\"Because\",\"∵\"],[\"Bernoullis\",\"ℬ\"],[\"Beta\",\"Β\"],[\"Bfr\",\"𝔅\"],[\"Bopf\",\"𝔹\"],[\"Breve\",\"˘\"],[\"Bscr\",\"ℬ\"],[\"Bumpeq\",\"≎\"],[\"CHcy\",\"Ч\"],[\"COPY\",\"©\"],[\"Cacute\",\"Ć\"],[\"Cap\",\"⋒\"],[\"CapitalDifferentialD\",\"ⅅ\"],[\"Cayleys\",\"ℭ\"],[\"Ccaron\",\"Č\"],[\"Ccedil\",\"Ç\"],[\"Ccirc\",\"Ĉ\"],[\"Cconint\",\"∰\"],[\"Cdot\",\"Ċ\"],[\"Cedilla\",\"¸\"],[\"CenterDot\",\"·\"],[\"Cfr\",\"ℭ\"],[\"Chi\",\"Χ\"],[\"CircleDot\",\"⊙\"],[\"CircleMinus\",\"⊖\"],[\"CirclePlus\",\"⊕\"],[\"CircleTimes\",\"⊗\"],[\"ClockwiseContourIntegral\",\"∲\"],[\"CloseCurlyDoubleQuote\",\"”\"],[\"CloseCurlyQuote\",\"’\"],[\"Colon\",\"∷\"],[\"Colone\",\"⩴\"],[\"Congruent\",\"≡\"],[\"Conint\",\"∯\"],[\"ContourIntegral\",\"∮\"],[\"Copf\",\"ℂ\"],[\"Coproduct\",\"∐\"],[\"CounterClockwiseContourIntegral\",\"∳\"],[\"Cross\",\"⨯\"],[\"Cscr\",\"𝒞\"],[\"Cup\",\"⋓\"],[\"CupCap\",\"≍\"],[\"DD\",\"ⅅ\"],[\"DDotrahd\",\"⤑\"],[\"DJcy\",\"Ђ\"],[\"DScy\",\"Ѕ\"],[\"DZcy\",\"Џ\"],[\"Dagger\",\"‡\"],[\"Darr\",\"↡\"],[\"Dashv\",\"⫤\"],[\"Dcaron\",\"Ď\"],[\"Dcy\",\"Д\"],[\"Del\",\"∇\"],[\"Delta\",\"Δ\"],[\"Dfr\",\"𝔇\"],[\"DiacriticalAcute\",\"´\"],[\"DiacriticalDot\",\"˙\"],[\"DiacriticalDoubleAcute\",\"˝\"],[\"DiacriticalGrave\",\"`\"],[\"DiacriticalTilde\",\"˜\"],[\"Diamond\",\"⋄\"],[\"DifferentialD\",\"ⅆ\"],[\"Dopf\",\"𝔻\"],[\"Dot\",\"¨\"],[\"DotDot\",\"⃜\"],[\"DotEqual\",\"≐\"],[\"DoubleContourIntegral\",\"∯\"],[\"DoubleDot\",\"¨\"],[\"DoubleDownArrow\",\"⇓\"],[\"DoubleLeftArrow\",\"⇐\"],[\"DoubleLeftRightArrow\",\"⇔\"],[\"DoubleLeftTee\",\"⫤\"],[\"DoubleLongLeftArrow\",\"⟸\"],[\"DoubleLongLeftRightArrow\",\"⟺\"],[\"DoubleLongRightArrow\",\"⟹\"],[\"DoubleRightArrow\",\"⇒\"],[\"DoubleRightTee\",\"⊨\"],[\"DoubleUpArrow\",\"⇑\"],[\"DoubleUpDownArrow\",\"⇕\"],[\"DoubleVerticalBar\",\"∥\"],[\"DownArrow\",\"↓\"],[\"DownArrowBar\",\"⤓\"],[\"DownArrowUpArrow\",\"⇵\"],[\"DownBreve\",\"̑\"],[\"DownLeftRightVector\",\"⥐\"],[\"DownLeftTeeVector\",\"⥞\"],[\"DownLeftVector\",\"↽\"],[\"DownLeftVectorBar\",\"⥖\"],[\"DownRightTeeVector\",\"⥟\"],[\"DownRightVector\",\"⇁\"],[\"DownRightVectorBar\",\"⥗\"],[\"DownTee\",\"⊤\"],[\"DownTeeArrow\",\"↧\"],[\"Downarrow\",\"⇓\"],[\"Dscr\",\"𝒟\"],[\"Dstrok\",\"Đ\"],[\"ENG\",\"Ŋ\"],[\"ETH\",\"Ð\"],[\"Eacute\",\"É\"],[\"Ecaron\",\"Ě\"],[\"Ecirc\",\"Ê\"],[\"Ecy\",\"Э\"],[\"Edot\",\"Ė\"],[\"Efr\",\"𝔈\"],[\"Egrave\",\"È\"],[\"Element\",\"∈\"],[\"Emacr\",\"Ē\"],[\"EmptySmallSquare\",\"◻\"],[\"EmptyVerySmallSquare\",\"▫\"],[\"Eogon\",\"Ę\"],[\"Eopf\",\"𝔼\"],[\"Epsilon\",\"Ε\"],[\"Equal\",\"⩵\"],[\"EqualTilde\",\"≂\"],[\"Equilibrium\",\"⇌\"],[\"Escr\",\"ℰ\"],[\"Esim\",\"⩳\"],[\"Eta\",\"Η\"],[\"Euml\",\"Ë\"],[\"Exists\",\"∃\"],[\"ExponentialE\",\"ⅇ\"],[\"Fcy\",\"Ф\"],[\"Ffr\",\"𝔉\"],[\"FilledSmallSquare\",\"◼\"],[\"FilledVerySmallSquare\",\"▪\"],[\"Fopf\",\"𝔽\"],[\"ForAll\",\"∀\"],[\"Fouriertrf\",\"ℱ\"],[\"Fscr\",\"ℱ\"],[\"GJcy\",\"Ѓ\"],[\"GT\",\">\"],[\"Gamma\",\"Γ\"],[\"Gammad\",\"Ϝ\"],[\"Gbreve\",\"Ğ\"],[\"Gcedil\",\"Ģ\"],[\"Gcirc\",\"Ĝ\"],[\"Gcy\",\"Г\"],[\"Gdot\",\"Ġ\"],[\"Gfr\",\"𝔊\"],[\"Gg\",\"⋙\"],[\"Gopf\",\"𝔾\"],[\"GreaterEqual\",\"≥\"],[\"GreaterEqualLess\",\"⋛\"],[\"GreaterFullEqual\",\"≧\"],[\"GreaterGreater\",\"⪢\"],[\"GreaterLess\",\"≷\"],[\"GreaterSlantEqual\",\"⩾\"],[\"GreaterTilde\",\"≳\"],[\"Gscr\",\"𝒢\"],[\"Gt\",\"≫\"],[\"HARDcy\",\"Ъ\"],[\"Hacek\",\"ˇ\"],[\"Hat\",\"^\"],[\"Hcirc\",\"Ĥ\"],[\"Hfr\",\"ℌ\"],[\"HilbertSpace\",\"ℋ\"],[\"Hopf\",\"ℍ\"],[\"HorizontalLine\",\"─\"],[\"Hscr\",\"ℋ\"],[\"Hstrok\",\"Ħ\"],[\"HumpDownHump\",\"≎\"],[\"HumpEqual\",\"≏\"],[\"IEcy\",\"Е\"],[\"IJlig\",\"IJ\"],[\"IOcy\",\"Ё\"],[\"Iacute\",\"Í\"],[\"Icirc\",\"Î\"],[\"Icy\",\"И\"],[\"Idot\",\"İ\"],[\"Ifr\",\"ℑ\"],[\"Igrave\",\"Ì\"],[\"Im\",\"ℑ\"],[\"Imacr\",\"Ī\"],[\"ImaginaryI\",\"ⅈ\"],[\"Implies\",\"⇒\"],[\"Int\",\"∬\"],[\"Integral\",\"∫\"],[\"Intersection\",\"⋂\"],[\"InvisibleComma\",\"\"],[\"InvisibleTimes\",\"\"],[\"Iogon\",\"Į\"],[\"Iopf\",\"𝕀\"],[\"Iota\",\"Ι\"],[\"Iscr\",\"ℐ\"],[\"Itilde\",\"Ĩ\"],[\"Iukcy\",\"І\"],[\"Iuml\",\"Ï\"],[\"Jcirc\",\"Ĵ\"],[\"Jcy\",\"Й\"],[\"Jfr\",\"𝔍\"],[\"Jopf\",\"𝕁\"],[\"Jscr\",\"𝒥\"],[\"Jsercy\",\"Ј\"],[\"Jukcy\",\"Є\"],[\"KHcy\",\"Х\"],[\"KJcy\",\"Ќ\"],[\"Kappa\",\"Κ\"],[\"Kcedil\",\"Ķ\"],[\"Kcy\",\"К\"],[\"Kfr\",\"𝔎\"],[\"Kopf\",\"𝕂\"],[\"Kscr\",\"𝒦\"],[\"LJcy\",\"Љ\"],[\"LT\",\"<\"],[\"Lacute\",\"Ĺ\"],[\"Lambda\",\"Λ\"],[\"Lang\",\"⟪\"],[\"Laplacetrf\",\"ℒ\"],[\"Larr\",\"↞\"],[\"Lcaron\",\"Ľ\"],[\"Lcedil\",\"Ļ\"],[\"Lcy\",\"Л\"],[\"LeftAngleBracket\",\"⟨\"],[\"LeftArrow\",\"←\"],[\"LeftArrowBar\",\"⇤\"],[\"LeftArrowRightArrow\",\"⇆\"],[\"LeftCeiling\",\"⌈\"],[\"LeftDoubleBracket\",\"⟦\"],[\"LeftDownTeeVector\",\"⥡\"],[\"LeftDownVector\",\"⇃\"],[\"LeftDownVectorBar\",\"⥙\"],[\"LeftFloor\",\"⌊\"],[\"LeftRightArrow\",\"↔\"],[\"LeftRightVector\",\"⥎\"],[\"LeftTee\",\"⊣\"],[\"LeftTeeArrow\",\"↤\"],[\"LeftTeeVector\",\"⥚\"],[\"LeftTriangle\",\"⊲\"],[\"LeftTriangleBar\",\"⧏\"],[\"LeftTriangleEqual\",\"⊴\"],[\"LeftUpDownVector\",\"⥑\"],[\"LeftUpTeeVector\",\"⥠\"],[\"LeftUpVector\",\"↿\"],[\"LeftUpVectorBar\",\"⥘\"],[\"LeftVector\",\"↼\"],[\"LeftVectorBar\",\"⥒\"],[\"Leftarrow\",\"⇐\"],[\"Leftrightarrow\",\"⇔\"],[\"LessEqualGreater\",\"⋚\"],[\"LessFullEqual\",\"≦\"],[\"LessGreater\",\"≶\"],[\"LessLess\",\"⪡\"],[\"LessSlantEqual\",\"⩽\"],[\"LessTilde\",\"≲\"],[\"Lfr\",\"𝔏\"],[\"Ll\",\"⋘\"],[\"Lleftarrow\",\"⇚\"],[\"Lmidot\",\"Ŀ\"],[\"LongLeftArrow\",\"⟵\"],[\"LongLeftRightArrow\",\"⟷\"],[\"LongRightArrow\",\"⟶\"],[\"Longleftarrow\",\"⟸\"],[\"Longleftrightarrow\",\"⟺\"],[\"Longrightarrow\",\"⟹\"],[\"Lopf\",\"𝕃\"],[\"LowerLeftArrow\",\"↙\"],[\"LowerRightArrow\",\"↘\"],[\"Lscr\",\"ℒ\"],[\"Lsh\",\"↰\"],[\"Lstrok\",\"Ł\"],[\"Lt\",\"≪\"],[\"Map\",\"⤅\"],[\"Mcy\",\"М\"],[\"MediumSpace\",\" \"],[\"Mellintrf\",\"ℳ\"],[\"Mfr\",\"𝔐\"],[\"MinusPlus\",\"∓\"],[\"Mopf\",\"𝕄\"],[\"Mscr\",\"ℳ\"],[\"Mu\",\"Μ\"],[\"NJcy\",\"Њ\"],[\"Nacute\",\"Ń\"],[\"Ncaron\",\"Ň\"],[\"Ncedil\",\"Ņ\"],[\"Ncy\",\"Н\"],[\"NegativeMediumSpace\",\"\"],[\"NegativeThickSpace\",\"\"],[\"NegativeThinSpace\",\"\"],[\"NegativeVeryThinSpace\",\"\"],[\"NestedGreaterGreater\",\"≫\"],[\"NestedLessLess\",\"≪\"],[\"NewLine\",\"\\n\"],[\"Nfr\",\"𝔑\"],[\"NoBreak\",\"\"],[\"NonBreakingSpace\",\"\xA0\"],[\"Nopf\",\"ℕ\"],[\"Not\",\"⫬\"],[\"NotCongruent\",\"≢\"],[\"NotCupCap\",\"≭\"],[\"NotDoubleVerticalBar\",\"∦\"],[\"NotElement\",\"∉\"],[\"NotEqual\",\"≠\"],[\"NotEqualTilde\",\"≂̸\"],[\"NotExists\",\"∄\"],[\"NotGreater\",\"≯\"],[\"NotGreaterEqual\",\"≱\"],[\"NotGreaterFullEqual\",\"≧̸\"],[\"NotGreaterGreater\",\"≫̸\"],[\"NotGreaterLess\",\"≹\"],[\"NotGreaterSlantEqual\",\"⩾̸\"],[\"NotGreaterTilde\",\"≵\"],[\"NotHumpDownHump\",\"≎̸\"],[\"NotHumpEqual\",\"≏̸\"],[\"NotLeftTriangle\",\"⋪\"],[\"NotLeftTriangleBar\",\"⧏̸\"],[\"NotLeftTriangleEqual\",\"⋬\"],[\"NotLess\",\"≮\"],[\"NotLessEqual\",\"≰\"],[\"NotLessGreater\",\"≸\"],[\"NotLessLess\",\"≪̸\"],[\"NotLessSlantEqual\",\"⩽̸\"],[\"NotLessTilde\",\"≴\"],[\"NotNestedGreaterGreater\",\"⪢̸\"],[\"NotNestedLessLess\",\"⪡̸\"],[\"NotPrecedes\",\"⊀\"],[\"NotPrecedesEqual\",\"⪯̸\"],[\"NotPrecedesSlantEqual\",\"⋠\"],[\"NotReverseElement\",\"∌\"],[\"NotRightTriangle\",\"⋫\"],[\"NotRightTriangleBar\",\"⧐̸\"],[\"NotRightTriangleEqual\",\"⋭\"],[\"NotSquareSubset\",\"⊏̸\"],[\"NotSquareSubsetEqual\",\"⋢\"],[\"NotSquareSuperset\",\"⊐̸\"],[\"NotSquareSupersetEqual\",\"⋣\"],[\"NotSubset\",\"⊂⃒\"],[\"NotSubsetEqual\",\"⊈\"],[\"NotSucceeds\",\"⊁\"],[\"NotSucceedsEqual\",\"⪰̸\"],[\"NotSucceedsSlantEqual\",\"⋡\"],[\"NotSucceedsTilde\",\"≿̸\"],[\"NotSuperset\",\"⊃⃒\"],[\"NotSupersetEqual\",\"⊉\"],[\"NotTilde\",\"≁\"],[\"NotTildeEqual\",\"≄\"],[\"NotTildeFullEqual\",\"≇\"],[\"NotTildeTilde\",\"≉\"],[\"NotVerticalBar\",\"∤\"],[\"Nscr\",\"𝒩\"],[\"Ntilde\",\"Ñ\"],[\"Nu\",\"Ν\"],[\"OElig\",\"Œ\"],[\"Oacute\",\"Ó\"],[\"Ocirc\",\"Ô\"],[\"Ocy\",\"О\"],[\"Odblac\",\"Ő\"],[\"Ofr\",\"𝔒\"],[\"Ograve\",\"Ò\"],[\"Omacr\",\"Ō\"],[\"Omega\",\"Ω\"],[\"Omicron\",\"Ο\"],[\"Oopf\",\"𝕆\"],[\"OpenCurlyDoubleQuote\",\"“\"],[\"OpenCurlyQuote\",\"‘\"],[\"Or\",\"⩔\"],[\"Oscr\",\"𝒪\"],[\"Oslash\",\"Ø\"],[\"Otilde\",\"Õ\"],[\"Otimes\",\"⨷\"],[\"Ouml\",\"Ö\"],[\"OverBar\",\"‾\"],[\"OverBrace\",\"⏞\"],[\"OverBracket\",\"⎴\"],[\"OverParenthesis\",\"⏜\"],[\"PartialD\",\"∂\"],[\"Pcy\",\"П\"],[\"Pfr\",\"𝔓\"],[\"Phi\",\"Φ\"],[\"Pi\",\"Π\"],[\"PlusMinus\",\"±\"],[\"Poincareplane\",\"ℌ\"],[\"Popf\",\"ℙ\"],[\"Pr\",\"⪻\"],[\"Precedes\",\"≺\"],[\"PrecedesEqual\",\"⪯\"],[\"PrecedesSlantEqual\",\"≼\"],[\"PrecedesTilde\",\"≾\"],[\"Prime\",\"″\"],[\"Product\",\"∏\"],[\"Proportion\",\"∷\"],[\"Proportional\",\"∝\"],[\"Pscr\",\"𝒫\"],[\"Psi\",\"Ψ\"],[\"QUOT\",\"\\\"\"],[\"Qfr\",\"𝔔\"],[\"Qopf\",\"ℚ\"],[\"Qscr\",\"𝒬\"],[\"RBarr\",\"⤐\"],[\"REG\",\"®\"],[\"Racute\",\"Ŕ\"],[\"Rang\",\"⟫\"],[\"Rarr\",\"↠\"],[\"Rarrtl\",\"⤖\"],[\"Rcaron\",\"Ř\"],[\"Rcedil\",\"Ŗ\"],[\"Rcy\",\"Р\"],[\"Re\",\"ℜ\"],[\"ReverseElement\",\"∋\"],[\"ReverseEquilibrium\",\"⇋\"],[\"ReverseUpEquilibrium\",\"⥯\"],[\"Rfr\",\"ℜ\"],[\"Rho\",\"Ρ\"],[\"RightAngleBracket\",\"⟩\"],[\"RightArrow\",\"→\"],[\"RightArrowBar\",\"⇥\"],[\"RightArrowLeftArrow\",\"⇄\"],[\"RightCeiling\",\"⌉\"],[\"RightDoubleBracket\",\"⟧\"],[\"RightDownTeeVector\",\"⥝\"],[\"RightDownVector\",\"⇂\"],[\"RightDownVectorBar\",\"⥕\"],[\"RightFloor\",\"⌋\"],[\"RightTee\",\"⊢\"],[\"RightTeeArrow\",\"↦\"],[\"RightTeeVector\",\"⥛\"],[\"RightTriangle\",\"⊳\"],[\"RightTriangleBar\",\"⧐\"],[\"RightTriangleEqual\",\"⊵\"],[\"RightUpDownVector\",\"⥏\"],[\"RightUpTeeVector\",\"⥜\"],[\"RightUpVector\",\"↾\"],[\"RightUpVectorBar\",\"⥔\"],[\"RightVector\",\"⇀\"],[\"RightVectorBar\",\"⥓\"],[\"Rightarrow\",\"⇒\"],[\"Ropf\",\"ℝ\"],[\"RoundImplies\",\"⥰\"],[\"Rrightarrow\",\"⇛\"],[\"Rscr\",\"ℛ\"],[\"Rsh\",\"↱\"],[\"RuleDelayed\",\"⧴\"],[\"SHCHcy\",\"Щ\"],[\"SHcy\",\"Ш\"],[\"SOFTcy\",\"Ь\"],[\"Sacute\",\"Ś\"],[\"Sc\",\"⪼\"],[\"Scaron\",\"Š\"],[\"Scedil\",\"Ş\"],[\"Scirc\",\"Ŝ\"],[\"Scy\",\"С\"],[\"Sfr\",\"𝔖\"],[\"ShortDownArrow\",\"↓\"],[\"ShortLeftArrow\",\"←\"],[\"ShortRightArrow\",\"→\"],[\"ShortUpArrow\",\"↑\"],[\"Sigma\",\"Σ\"],[\"SmallCircle\",\"∘\"],[\"Sopf\",\"𝕊\"],[\"Sqrt\",\"√\"],[\"Square\",\"□\"],[\"SquareIntersection\",\"⊓\"],[\"SquareSubset\",\"⊏\"],[\"SquareSubsetEqual\",\"⊑\"],[\"SquareSuperset\",\"⊐\"],[\"SquareSupersetEqual\",\"⊒\"],[\"SquareUnion\",\"⊔\"],[\"Sscr\",\"𝒮\"],[\"Star\",\"⋆\"],[\"Sub\",\"⋐\"],[\"Subset\",\"⋐\"],[\"SubsetEqual\",\"⊆\"],[\"Succeeds\",\"≻\"],[\"SucceedsEqual\",\"⪰\"],[\"SucceedsSlantEqual\",\"≽\"],[\"SucceedsTilde\",\"≿\"],[\"SuchThat\",\"∋\"],[\"Sum\",\"∑\"],[\"Sup\",\"⋑\"],[\"Superset\",\"⊃\"],[\"SupersetEqual\",\"⊇\"],[\"Supset\",\"⋑\"],[\"THORN\",\"Þ\"],[\"TRADE\",\"™\"],[\"TSHcy\",\"Ћ\"],[\"TScy\",\"Ц\"],[\"Tab\",\"\\t\"],[\"Tau\",\"Τ\"],[\"Tcaron\",\"Ť\"],[\"Tcedil\",\"Ţ\"],[\"Tcy\",\"Т\"],[\"Tfr\",\"𝔗\"],[\"Therefore\",\"∴\"],[\"Theta\",\"Θ\"],[\"ThickSpace\",\" \"],[\"ThinSpace\",\" \"],[\"Tilde\",\"∼\"],[\"TildeEqual\",\"≃\"],[\"TildeFullEqual\",\"≅\"],[\"TildeTilde\",\"≈\"],[\"Topf\",\"𝕋\"],[\"TripleDot\",\"⃛\"],[\"Tscr\",\"𝒯\"],[\"Tstrok\",\"Ŧ\"],[\"Uacute\",\"Ú\"],[\"Uarr\",\"↟\"],[\"Uarrocir\",\"⥉\"],[\"Ubrcy\",\"Ў\"],[\"Ubreve\",\"Ŭ\"],[\"Ucirc\",\"Û\"],[\"Ucy\",\"У\"],[\"Udblac\",\"Ű\"],[\"Ufr\",\"𝔘\"],[\"Ugrave\",\"Ù\"],[\"Umacr\",\"Ū\"],[\"UnderBar\",\"_\"],[\"UnderBrace\",\"⏟\"],[\"UnderBracket\",\"⎵\"],[\"UnderParenthesis\",\"⏝\"],[\"Union\",\"⋃\"],[\"UnionPlus\",\"⊎\"],[\"Uogon\",\"Ų\"],[\"Uopf\",\"𝕌\"],[\"UpArrow\",\"↑\"],[\"UpArrowBar\",\"⤒\"],[\"UpArrowDownArrow\",\"⇅\"],[\"UpDownArrow\",\"↕\"],[\"UpEquilibrium\",\"⥮\"],[\"UpTee\",\"⊥\"],[\"UpTeeArrow\",\"↥\"],[\"Uparrow\",\"⇑\"],[\"Updownarrow\",\"⇕\"],[\"UpperLeftArrow\",\"↖\"],[\"UpperRightArrow\",\"↗\"],[\"Upsi\",\"ϒ\"],[\"Upsilon\",\"Υ\"],[\"Uring\",\"Ů\"],[\"Uscr\",\"𝒰\"],[\"Utilde\",\"Ũ\"],[\"Uuml\",\"Ü\"],[\"VDash\",\"⊫\"],[\"Vbar\",\"⫫\"],[\"Vcy\",\"В\"],[\"Vdash\",\"⊩\"],[\"Vdashl\",\"⫦\"],[\"Vee\",\"⋁\"],[\"Verbar\",\"‖\"],[\"Vert\",\"‖\"],[\"VerticalBar\",\"∣\"],[\"VerticalLine\",\"|\"],[\"VerticalSeparator\",\"❘\"],[\"VerticalTilde\",\"≀\"],[\"VeryThinSpace\",\" \"],[\"Vfr\",\"𝔙\"],[\"Vopf\",\"𝕍\"],[\"Vscr\",\"𝒱\"],[\"Vvdash\",\"⊪\"],[\"Wcirc\",\"Ŵ\"],[\"Wedge\",\"⋀\"],[\"Wfr\",\"𝔚\"],[\"Wopf\",\"𝕎\"],[\"Wscr\",\"𝒲\"],[\"Xfr\",\"𝔛\"],[\"Xi\",\"Ξ\"],[\"Xopf\",\"𝕏\"],[\"Xscr\",\"𝒳\"],[\"YAcy\",\"Я\"],[\"YIcy\",\"Ї\"],[\"YUcy\",\"Ю\"],[\"Yacute\",\"Ý\"],[\"Ycirc\",\"Ŷ\"],[\"Ycy\",\"Ы\"],[\"Yfr\",\"𝔜\"],[\"Yopf\",\"𝕐\"],[\"Yscr\",\"𝒴\"],[\"Yuml\",\"Ÿ\"],[\"ZHcy\",\"Ж\"],[\"Zacute\",\"Ź\"],[\"Zcaron\",\"Ž\"],[\"Zcy\",\"З\"],[\"Zdot\",\"Ż\"],[\"ZeroWidthSpace\",\"\"],[\"Zeta\",\"Ζ\"],[\"Zfr\",\"ℨ\"],[\"Zopf\",\"ℤ\"],[\"Zscr\",\"𝒵\"],[\"aacute\",\"á\"],[\"abreve\",\"ă\"],[\"ac\",\"∾\"],[\"acE\",\"∾̳\"],[\"acd\",\"∿\"],[\"acirc\",\"â\"],[\"acute\",\"´\"],[\"acy\",\"а\"],[\"aelig\",\"æ\"],[\"af\",\"\"],[\"afr\",\"𝔞\"],[\"agrave\",\"à\"],[\"alefsym\",\"ℵ\"],[\"aleph\",\"ℵ\"],[\"alpha\",\"α\"],[\"amacr\",\"ā\"],[\"amalg\",\"⨿\"],[\"amp\",\"&\"],[\"and\",\"∧\"],[\"andand\",\"⩕\"],[\"andd\",\"⩜\"],[\"andslope\",\"⩘\"],[\"andv\",\"⩚\"],[\"ang\",\"∠\"],[\"ange\",\"⦤\"],[\"angle\",\"∠\"],[\"angmsd\",\"∡\"],[\"angmsdaa\",\"⦨\"],[\"angmsdab\",\"⦩\"],[\"angmsdac\",\"⦪\"],[\"angmsdad\",\"⦫\"],[\"angmsdae\",\"⦬\"],[\"angmsdaf\",\"⦭\"],[\"angmsdag\",\"⦮\"],[\"angmsdah\",\"⦯\"],[\"angrt\",\"∟\"],[\"angrtvb\",\"⊾\"],[\"angrtvbd\",\"⦝\"],[\"angsph\",\"∢\"],[\"angst\",\"Å\"],[\"angzarr\",\"⍼\"],[\"aogon\",\"ą\"],[\"aopf\",\"𝕒\"],[\"ap\",\"≈\"],[\"apE\",\"⩰\"],[\"apacir\",\"⩯\"],[\"ape\",\"≊\"],[\"apid\",\"≋\"],[\"apos\",\"'\"],[\"approx\",\"≈\"],[\"approxeq\",\"≊\"],[\"aring\",\"å\"],[\"ascr\",\"𝒶\"],[\"ast\",\"*\"],[\"asymp\",\"≈\"],[\"asympeq\",\"≍\"],[\"atilde\",\"ã\"],[\"auml\",\"ä\"],[\"awconint\",\"∳\"],[\"awint\",\"⨑\"],[\"bNot\",\"⫭\"],[\"backcong\",\"≌\"],[\"backepsilon\",\"϶\"],[\"backprime\",\"‵\"],[\"backsim\",\"∽\"],[\"backsimeq\",\"⋍\"],[\"barvee\",\"⊽\"],[\"barwed\",\"⌅\"],[\"barwedge\",\"⌅\"],[\"bbrk\",\"⎵\"],[\"bbrktbrk\",\"⎶\"],[\"bcong\",\"≌\"],[\"bcy\",\"б\"],[\"bdquo\",\"„\"],[\"becaus\",\"∵\"],[\"because\",\"∵\"],[\"bemptyv\",\"⦰\"],[\"bepsi\",\"϶\"],[\"bernou\",\"ℬ\"],[\"beta\",\"β\"],[\"beth\",\"ℶ\"],[\"between\",\"≬\"],[\"bfr\",\"𝔟\"],[\"bigcap\",\"⋂\"],[\"bigcirc\",\"◯\"],[\"bigcup\",\"⋃\"],[\"bigodot\",\"⨀\"],[\"bigoplus\",\"⨁\"],[\"bigotimes\",\"⨂\"],[\"bigsqcup\",\"⨆\"],[\"bigstar\",\"★\"],[\"bigtriangledown\",\"▽\"],[\"bigtriangleup\",\"△\"],[\"biguplus\",\"⨄\"],[\"bigvee\",\"⋁\"],[\"bigwedge\",\"⋀\"],[\"bkarow\",\"⤍\"],[\"blacklozenge\",\"⧫\"],[\"blacksquare\",\"▪\"],[\"blacktriangle\",\"▴\"],[\"blacktriangledown\",\"▾\"],[\"blacktriangleleft\",\"◂\"],[\"blacktriangleright\",\"▸\"],[\"blank\",\"␣\"],[\"blk12\",\"▒\"],[\"blk14\",\"░\"],[\"blk34\",\"▓\"],[\"block\",\"█\"],[\"bne\",\"=⃥\"],[\"bnequiv\",\"≡⃥\"],[\"bnot\",\"⌐\"],[\"bopf\",\"𝕓\"],[\"bot\",\"⊥\"],[\"bottom\",\"⊥\"],[\"bowtie\",\"⋈\"],[\"boxDL\",\"╗\"],[\"boxDR\",\"╔\"],[\"boxDl\",\"╖\"],[\"boxDr\",\"╓\"],[\"boxH\",\"═\"],[\"boxHD\",\"╦\"],[\"boxHU\",\"╩\"],[\"boxHd\",\"╤\"],[\"boxHu\",\"╧\"],[\"boxUL\",\"╝\"],[\"boxUR\",\"╚\"],[\"boxUl\",\"╜\"],[\"boxUr\",\"╙\"],[\"boxV\",\"║\"],[\"boxVH\",\"╬\"],[\"boxVL\",\"╣\"],[\"boxVR\",\"╠\"],[\"boxVh\",\"╫\"],[\"boxVl\",\"╢\"],[\"boxVr\",\"╟\"],[\"boxbox\",\"⧉\"],[\"boxdL\",\"╕\"],[\"boxdR\",\"╒\"],[\"boxdl\",\"┐\"],[\"boxdr\",\"┌\"],[\"boxh\",\"─\"],[\"boxhD\",\"╥\"],[\"boxhU\",\"╨\"],[\"boxhd\",\"┬\"],[\"boxhu\",\"┴\"],[\"boxminus\",\"⊟\"],[\"boxplus\",\"⊞\"],[\"boxtimes\",\"⊠\"],[\"boxuL\",\"╛\"],[\"boxuR\",\"╘\"],[\"boxul\",\"┘\"],[\"boxur\",\"└\"],[\"boxv\",\"│\"],[\"boxvH\",\"╪\"],[\"boxvL\",\"╡\"],[\"boxvR\",\"╞\"],[\"boxvh\",\"┼\"],[\"boxvl\",\"┤\"],[\"boxvr\",\"├\"],[\"bprime\",\"‵\"],[\"breve\",\"˘\"],[\"brvbar\",\"¦\"],[\"bscr\",\"𝒷\"],[\"bsemi\",\"⁏\"],[\"bsim\",\"∽\"],[\"bsime\",\"⋍\"],[\"bsol\",\"\\\\\"],[\"bsolb\",\"⧅\"],[\"bsolhsub\",\"⟈\"],[\"bull\",\"•\"],[\"bullet\",\"•\"],[\"bump\",\"≎\"],[\"bumpE\",\"⪮\"],[\"bumpe\",\"≏\"],[\"bumpeq\",\"≏\"],[\"cacute\",\"ć\"],[\"cap\",\"∩\"],[\"capand\",\"⩄\"],[\"capbrcup\",\"⩉\"],[\"capcap\",\"⩋\"],[\"capcup\",\"⩇\"],[\"capdot\",\"⩀\"],[\"caps\",\"∩︀\"],[\"caret\",\"⁁\"],[\"caron\",\"ˇ\"],[\"ccaps\",\"⩍\"],[\"ccaron\",\"č\"],[\"ccedil\",\"ç\"],[\"ccirc\",\"ĉ\"],[\"ccups\",\"⩌\"],[\"ccupssm\",\"⩐\"],[\"cdot\",\"ċ\"],[\"cedil\",\"¸\"],[\"cemptyv\",\"⦲\"],[\"cent\",\"¢\"],[\"centerdot\",\"·\"],[\"cfr\",\"𝔠\"],[\"chcy\",\"ч\"],[\"check\",\"✓\"],[\"checkmark\",\"✓\"],[\"chi\",\"χ\"],[\"cir\",\"○\"],[\"cirE\",\"⧃\"],[\"circ\",\"ˆ\"],[\"circeq\",\"≗\"],[\"circlearrowleft\",\"↺\"],[\"circlearrowright\",\"↻\"],[\"circledR\",\"®\"],[\"circledS\",\"Ⓢ\"],[\"circledast\",\"⊛\"],[\"circledcirc\",\"⊚\"],[\"circleddash\",\"⊝\"],[\"cire\",\"≗\"],[\"cirfnint\",\"⨐\"],[\"cirmid\",\"⫯\"],[\"cirscir\",\"⧂\"],[\"clubs\",\"♣\"],[\"clubsuit\",\"♣\"],[\"colon\",\":\"],[\"colone\",\"≔\"],[\"coloneq\",\"≔\"],[\"comma\",\",\"],[\"commat\",\"@\"],[\"comp\",\"∁\"],[\"compfn\",\"∘\"],[\"complement\",\"∁\"],[\"complexes\",\"ℂ\"],[\"cong\",\"≅\"],[\"congdot\",\"⩭\"],[\"conint\",\"∮\"],[\"copf\",\"𝕔\"],[\"coprod\",\"∐\"],[\"copy\",\"©\"],[\"copysr\",\"℗\"],[\"crarr\",\"↵\"],[\"cross\",\"✗\"],[\"cscr\",\"𝒸\"],[\"csub\",\"⫏\"],[\"csube\",\"⫑\"],[\"csup\",\"⫐\"],[\"csupe\",\"⫒\"],[\"ctdot\",\"⋯\"],[\"cudarrl\",\"⤸\"],[\"cudarrr\",\"⤵\"],[\"cuepr\",\"⋞\"],[\"cuesc\",\"⋟\"],[\"cularr\",\"↶\"],[\"cularrp\",\"⤽\"],[\"cup\",\"∪\"],[\"cupbrcap\",\"⩈\"],[\"cupcap\",\"⩆\"],[\"cupcup\",\"⩊\"],[\"cupdot\",\"⊍\"],[\"cupor\",\"⩅\"],[\"cups\",\"∪︀\"],[\"curarr\",\"↷\"],[\"curarrm\",\"⤼\"],[\"curlyeqprec\",\"⋞\"],[\"curlyeqsucc\",\"⋟\"],[\"curlyvee\",\"⋎\"],[\"curlywedge\",\"⋏\"],[\"curren\",\"¤\"],[\"curvearrowleft\",\"↶\"],[\"curvearrowright\",\"↷\"],[\"cuvee\",\"⋎\"],[\"cuwed\",\"⋏\"],[\"cwconint\",\"∲\"],[\"cwint\",\"∱\"],[\"cylcty\",\"⌭\"],[\"dArr\",\"⇓\"],[\"dHar\",\"⥥\"],[\"dagger\",\"†\"],[\"daleth\",\"ℸ\"],[\"darr\",\"↓\"],[\"dash\",\"‐\"],[\"dashv\",\"⊣\"],[\"dbkarow\",\"⤏\"],[\"dblac\",\"˝\"],[\"dcaron\",\"ď\"],[\"dcy\",\"д\"],[\"dd\",\"ⅆ\"],[\"ddagger\",\"‡\"],[\"ddarr\",\"⇊\"],[\"ddotseq\",\"⩷\"],[\"deg\",\"°\"],[\"delta\",\"δ\"],[\"demptyv\",\"⦱\"],[\"dfisht\",\"⥿\"],[\"dfr\",\"𝔡\"],[\"dharl\",\"⇃\"],[\"dharr\",\"⇂\"],[\"diam\",\"⋄\"],[\"diamond\",\"⋄\"],[\"diamondsuit\",\"♦\"],[\"diams\",\"♦\"],[\"die\",\"¨\"],[\"digamma\",\"ϝ\"],[\"disin\",\"⋲\"],[\"div\",\"÷\"],[\"divide\",\"÷\"],[\"divideontimes\",\"⋇\"],[\"divonx\",\"⋇\"],[\"djcy\",\"ђ\"],[\"dlcorn\",\"⌞\"],[\"dlcrop\",\"⌍\"],[\"dollar\",\"$\"],[\"dopf\",\"𝕕\"],[\"dot\",\"˙\"],[\"doteq\",\"≐\"],[\"doteqdot\",\"≑\"],[\"dotminus\",\"∸\"],[\"dotplus\",\"∔\"],[\"dotsquare\",\"⊡\"],[\"doublebarwedge\",\"⌆\"],[\"downarrow\",\"↓\"],[\"downdownarrows\",\"⇊\"],[\"downharpoonleft\",\"⇃\"],[\"downharpoonright\",\"⇂\"],[\"drbkarow\",\"⤐\"],[\"drcorn\",\"⌟\"],[\"drcrop\",\"⌌\"],[\"dscr\",\"𝒹\"],[\"dscy\",\"ѕ\"],[\"dsol\",\"⧶\"],[\"dstrok\",\"đ\"],[\"dtdot\",\"⋱\"],[\"dtri\",\"▿\"],[\"dtrif\",\"▾\"],[\"duarr\",\"⇵\"],[\"duhar\",\"⥯\"],[\"dwangle\",\"⦦\"],[\"dzcy\",\"џ\"],[\"dzigrarr\",\"⟿\"],[\"eDDot\",\"⩷\"],[\"eDot\",\"≑\"],[\"eacute\",\"é\"],[\"easter\",\"⩮\"],[\"ecaron\",\"ě\"],[\"ecir\",\"≖\"],[\"ecirc\",\"ê\"],[\"ecolon\",\"≕\"],[\"ecy\",\"э\"],[\"edot\",\"ė\"],[\"ee\",\"ⅇ\"],[\"efDot\",\"≒\"],[\"efr\",\"𝔢\"],[\"eg\",\"⪚\"],[\"egrave\",\"è\"],[\"egs\",\"⪖\"],[\"egsdot\",\"⪘\"],[\"el\",\"⪙\"],[\"elinters\",\"⏧\"],[\"ell\",\"ℓ\"],[\"els\",\"⪕\"],[\"elsdot\",\"⪗\"],[\"emacr\",\"ē\"],[\"empty\",\"∅\"],[\"emptyset\",\"∅\"],[\"emptyv\",\"∅\"],[\"emsp\",\" \"],[\"emsp13\",\" \"],[\"emsp14\",\" \"],[\"eng\",\"ŋ\"],[\"ensp\",\" \"],[\"eogon\",\"ę\"],[\"eopf\",\"𝕖\"],[\"epar\",\"⋕\"],[\"eparsl\",\"⧣\"],[\"eplus\",\"⩱\"],[\"epsi\",\"ε\"],[\"epsilon\",\"ε\"],[\"epsiv\",\"ϵ\"],[\"eqcirc\",\"≖\"],[\"eqcolon\",\"≕\"],[\"eqsim\",\"≂\"],[\"eqslantgtr\",\"⪖\"],[\"eqslantless\",\"⪕\"],[\"equals\",\"=\"],[\"equest\",\"≟\"],[\"equiv\",\"≡\"],[\"equivDD\",\"⩸\"],[\"eqvparsl\",\"⧥\"],[\"erDot\",\"≓\"],[\"erarr\",\"⥱\"],[\"escr\",\"ℯ\"],[\"esdot\",\"≐\"],[\"esim\",\"≂\"],[\"eta\",\"η\"],[\"eth\",\"ð\"],[\"euml\",\"ë\"],[\"euro\",\"€\"],[\"excl\",\"!\"],[\"exist\",\"∃\"],[\"expectation\",\"ℰ\"],[\"exponentiale\",\"ⅇ\"],[\"fallingdotseq\",\"≒\"],[\"fcy\",\"ф\"],[\"female\",\"♀\"],[\"ffilig\",\"ffi\"],[\"fflig\",\"ff\"],[\"ffllig\",\"ffl\"],[\"ffr\",\"𝔣\"],[\"filig\",\"fi\"],[\"fjlig\",\"fj\"],[\"flat\",\"♭\"],[\"fllig\",\"fl\"],[\"fltns\",\"▱\"],[\"fnof\",\"ƒ\"],[\"fopf\",\"𝕗\"],[\"forall\",\"∀\"],[\"fork\",\"⋔\"],[\"forkv\",\"⫙\"],[\"fpartint\",\"⨍\"],[\"frac12\",\"½\"],[\"frac13\",\"⅓\"],[\"frac14\",\"¼\"],[\"frac15\",\"⅕\"],[\"frac16\",\"⅙\"],[\"frac18\",\"⅛\"],[\"frac23\",\"⅔\"],[\"frac25\",\"⅖\"],[\"frac34\",\"¾\"],[\"frac35\",\"⅗\"],[\"frac38\",\"⅜\"],[\"frac45\",\"⅘\"],[\"frac56\",\"⅚\"],[\"frac58\",\"⅝\"],[\"frac78\",\"⅞\"],[\"frasl\",\"⁄\"],[\"frown\",\"⌢\"],[\"fscr\",\"𝒻\"],[\"gE\",\"≧\"],[\"gEl\",\"⪌\"],[\"gacute\",\"ǵ\"],[\"gamma\",\"γ\"],[\"gammad\",\"ϝ\"],[\"gap\",\"⪆\"],[\"gbreve\",\"ğ\"],[\"gcirc\",\"ĝ\"],[\"gcy\",\"г\"],[\"gdot\",\"ġ\"],[\"ge\",\"≥\"],[\"gel\",\"⋛\"],[\"geq\",\"≥\"],[\"geqq\",\"≧\"],[\"geqslant\",\"⩾\"],[\"ges\",\"⩾\"],[\"gescc\",\"⪩\"],[\"gesdot\",\"⪀\"],[\"gesdoto\",\"⪂\"],[\"gesdotol\",\"⪄\"],[\"gesl\",\"⋛︀\"],[\"gesles\",\"⪔\"],[\"gfr\",\"𝔤\"],[\"gg\",\"≫\"],[\"ggg\",\"⋙\"],[\"gimel\",\"ℷ\"],[\"gjcy\",\"ѓ\"],[\"gl\",\"≷\"],[\"glE\",\"⪒\"],[\"gla\",\"⪥\"],[\"glj\",\"⪤\"],[\"gnE\",\"≩\"],[\"gnap\",\"⪊\"],[\"gnapprox\",\"⪊\"],[\"gne\",\"⪈\"],[\"gneq\",\"⪈\"],[\"gneqq\",\"≩\"],[\"gnsim\",\"⋧\"],[\"gopf\",\"𝕘\"],[\"grave\",\"`\"],[\"gscr\",\"ℊ\"],[\"gsim\",\"≳\"],[\"gsime\",\"⪎\"],[\"gsiml\",\"⪐\"],[\"gt\",\">\"],[\"gtcc\",\"⪧\"],[\"gtcir\",\"⩺\"],[\"gtdot\",\"⋗\"],[\"gtlPar\",\"⦕\"],[\"gtquest\",\"⩼\"],[\"gtrapprox\",\"⪆\"],[\"gtrarr\",\"⥸\"],[\"gtrdot\",\"⋗\"],[\"gtreqless\",\"⋛\"],[\"gtreqqless\",\"⪌\"],[\"gtrless\",\"≷\"],[\"gtrsim\",\"≳\"],[\"gvertneqq\",\"≩︀\"],[\"gvnE\",\"≩︀\"],[\"hArr\",\"⇔\"],[\"hairsp\",\" \"],[\"half\",\"½\"],[\"hamilt\",\"ℋ\"],[\"hardcy\",\"ъ\"],[\"harr\",\"↔\"],[\"harrcir\",\"⥈\"],[\"harrw\",\"↭\"],[\"hbar\",\"ℏ\"],[\"hcirc\",\"ĥ\"],[\"hearts\",\"♥\"],[\"heartsuit\",\"♥\"],[\"hellip\",\"…\"],[\"hercon\",\"⊹\"],[\"hfr\",\"𝔥\"],[\"hksearow\",\"⤥\"],[\"hkswarow\",\"⤦\"],[\"hoarr\",\"⇿\"],[\"homtht\",\"∻\"],[\"hookleftarrow\",\"↩\"],[\"hookrightarrow\",\"↪\"],[\"hopf\",\"𝕙\"],[\"horbar\",\"―\"],[\"hscr\",\"𝒽\"],[\"hslash\",\"ℏ\"],[\"hstrok\",\"ħ\"],[\"hybull\",\"⁃\"],[\"hyphen\",\"‐\"],[\"iacute\",\"í\"],[\"ic\",\"\"],[\"icirc\",\"î\"],[\"icy\",\"и\"],[\"iecy\",\"е\"],[\"iexcl\",\"¡\"],[\"iff\",\"⇔\"],[\"ifr\",\"𝔦\"],[\"igrave\",\"ì\"],[\"ii\",\"ⅈ\"],[\"iiiint\",\"⨌\"],[\"iiint\",\"∭\"],[\"iinfin\",\"⧜\"],[\"iiota\",\"℩\"],[\"ijlig\",\"ij\"],[\"imacr\",\"ī\"],[\"image\",\"ℑ\"],[\"imagline\",\"ℐ\"],[\"imagpart\",\"ℑ\"],[\"imath\",\"ı\"],[\"imof\",\"⊷\"],[\"imped\",\"Ƶ\"],[\"in\",\"∈\"],[\"incare\",\"℅\"],[\"infin\",\"∞\"],[\"infintie\",\"⧝\"],[\"inodot\",\"ı\"],[\"int\",\"∫\"],[\"intcal\",\"⊺\"],[\"integers\",\"ℤ\"],[\"intercal\",\"⊺\"],[\"intlarhk\",\"⨗\"],[\"intprod\",\"⨼\"],[\"iocy\",\"ё\"],[\"iogon\",\"į\"],[\"iopf\",\"𝕚\"],[\"iota\",\"ι\"],[\"iprod\",\"⨼\"],[\"iquest\",\"¿\"],[\"iscr\",\"𝒾\"],[\"isin\",\"∈\"],[\"isinE\",\"⋹\"],[\"isindot\",\"⋵\"],[\"isins\",\"⋴\"],[\"isinsv\",\"⋳\"],[\"isinv\",\"∈\"],[\"it\",\"\"],[\"itilde\",\"ĩ\"],[\"iukcy\",\"і\"],[\"iuml\",\"ï\"],[\"jcirc\",\"ĵ\"],[\"jcy\",\"й\"],[\"jfr\",\"𝔧\"],[\"jmath\",\"ȷ\"],[\"jopf\",\"𝕛\"],[\"jscr\",\"𝒿\"],[\"jsercy\",\"ј\"],[\"jukcy\",\"є\"],[\"kappa\",\"κ\"],[\"kappav\",\"ϰ\"],[\"kcedil\",\"ķ\"],[\"kcy\",\"к\"],[\"kfr\",\"𝔨\"],[\"kgreen\",\"ĸ\"],[\"khcy\",\"х\"],[\"kjcy\",\"ќ\"],[\"kopf\",\"𝕜\"],[\"kscr\",\"𝓀\"],[\"lAarr\",\"⇚\"],[\"lArr\",\"⇐\"],[\"lAtail\",\"⤛\"],[\"lBarr\",\"⤎\"],[\"lE\",\"≦\"],[\"lEg\",\"⪋\"],[\"lHar\",\"⥢\"],[\"lacute\",\"ĺ\"],[\"laemptyv\",\"⦴\"],[\"lagran\",\"ℒ\"],[\"lambda\",\"λ\"],[\"lang\",\"⟨\"],[\"langd\",\"⦑\"],[\"langle\",\"⟨\"],[\"lap\",\"⪅\"],[\"laquo\",\"«\"],[\"larr\",\"←\"],[\"larrb\",\"⇤\"],[\"larrbfs\",\"⤟\"],[\"larrfs\",\"⤝\"],[\"larrhk\",\"↩\"],[\"larrlp\",\"↫\"],[\"larrpl\",\"⤹\"],[\"larrsim\",\"⥳\"],[\"larrtl\",\"↢\"],[\"lat\",\"⪫\"],[\"latail\",\"⤙\"],[\"late\",\"⪭\"],[\"lates\",\"⪭︀\"],[\"lbarr\",\"⤌\"],[\"lbbrk\",\"❲\"],[\"lbrace\",\"{\"],[\"lbrack\",\"[\"],[\"lbrke\",\"⦋\"],[\"lbrksld\",\"⦏\"],[\"lbrkslu\",\"⦍\"],[\"lcaron\",\"ľ\"],[\"lcedil\",\"ļ\"],[\"lceil\",\"⌈\"],[\"lcub\",\"{\"],[\"lcy\",\"л\"],[\"ldca\",\"⤶\"],[\"ldquo\",\"“\"],[\"ldquor\",\"„\"],[\"ldrdhar\",\"⥧\"],[\"ldrushar\",\"⥋\"],[\"ldsh\",\"↲\"],[\"le\",\"≤\"],[\"leftarrow\",\"←\"],[\"leftarrowtail\",\"↢\"],[\"leftharpoondown\",\"↽\"],[\"leftharpoonup\",\"↼\"],[\"leftleftarrows\",\"⇇\"],[\"leftrightarrow\",\"↔\"],[\"leftrightarrows\",\"⇆\"],[\"leftrightharpoons\",\"⇋\"],[\"leftrightsquigarrow\",\"↭\"],[\"leftthreetimes\",\"⋋\"],[\"leg\",\"⋚\"],[\"leq\",\"≤\"],[\"leqq\",\"≦\"],[\"leqslant\",\"⩽\"],[\"les\",\"⩽\"],[\"lescc\",\"⪨\"],[\"lesdot\",\"⩿\"],[\"lesdoto\",\"⪁\"],[\"lesdotor\",\"⪃\"],[\"lesg\",\"⋚︀\"],[\"lesges\",\"⪓\"],[\"lessapprox\",\"⪅\"],[\"lessdot\",\"⋖\"],[\"lesseqgtr\",\"⋚\"],[\"lesseqqgtr\",\"⪋\"],[\"lessgtr\",\"≶\"],[\"lesssim\",\"≲\"],[\"lfisht\",\"⥼\"],[\"lfloor\",\"⌊\"],[\"lfr\",\"𝔩\"],[\"lg\",\"≶\"],[\"lgE\",\"⪑\"],[\"lhard\",\"↽\"],[\"lharu\",\"↼\"],[\"lharul\",\"⥪\"],[\"lhblk\",\"▄\"],[\"ljcy\",\"љ\"],[\"ll\",\"≪\"],[\"llarr\",\"⇇\"],[\"llcorner\",\"⌞\"],[\"llhard\",\"⥫\"],[\"lltri\",\"◺\"],[\"lmidot\",\"ŀ\"],[\"lmoust\",\"⎰\"],[\"lmoustache\",\"⎰\"],[\"lnE\",\"≨\"],[\"lnap\",\"⪉\"],[\"lnapprox\",\"⪉\"],[\"lne\",\"⪇\"],[\"lneq\",\"⪇\"],[\"lneqq\",\"≨\"],[\"lnsim\",\"⋦\"],[\"loang\",\"⟬\"],[\"loarr\",\"⇽\"],[\"lobrk\",\"⟦\"],[\"longleftarrow\",\"⟵\"],[\"longleftrightarrow\",\"⟷\"],[\"longmapsto\",\"⟼\"],[\"longrightarrow\",\"⟶\"],[\"looparrowleft\",\"↫\"],[\"looparrowright\",\"↬\"],[\"lopar\",\"⦅\"],[\"lopf\",\"𝕝\"],[\"loplus\",\"⨭\"],[\"lotimes\",\"⨴\"],[\"lowast\",\"∗\"],[\"lowbar\",\"_\"],[\"loz\",\"◊\"],[\"lozenge\",\"◊\"],[\"lozf\",\"⧫\"],[\"lpar\",\"(\"],[\"lparlt\",\"⦓\"],[\"lrarr\",\"⇆\"],[\"lrcorner\",\"⌟\"],[\"lrhar\",\"⇋\"],[\"lrhard\",\"⥭\"],[\"lrm\",\"\"],[\"lrtri\",\"⊿\"],[\"lsaquo\",\"‹\"],[\"lscr\",\"𝓁\"],[\"lsh\",\"↰\"],[\"lsim\",\"≲\"],[\"lsime\",\"⪍\"],[\"lsimg\",\"⪏\"],[\"lsqb\",\"[\"],[\"lsquo\",\"‘\"],[\"lsquor\",\"‚\"],[\"lstrok\",\"ł\"],[\"lt\",\"<\"],[\"ltcc\",\"⪦\"],[\"ltcir\",\"⩹\"],[\"ltdot\",\"⋖\"],[\"lthree\",\"⋋\"],[\"ltimes\",\"⋉\"],[\"ltlarr\",\"⥶\"],[\"ltquest\",\"⩻\"],[\"ltrPar\",\"⦖\"],[\"ltri\",\"◃\"],[\"ltrie\",\"⊴\"],[\"ltrif\",\"◂\"],[\"lurdshar\",\"⥊\"],[\"luruhar\",\"⥦\"],[\"lvertneqq\",\"≨︀\"],[\"lvnE\",\"≨︀\"],[\"mDDot\",\"∺\"],[\"macr\",\"¯\"],[\"male\",\"♂\"],[\"malt\",\"✠\"],[\"maltese\",\"✠\"],[\"map\",\"↦\"],[\"mapsto\",\"↦\"],[\"mapstodown\",\"↧\"],[\"mapstoleft\",\"↤\"],[\"mapstoup\",\"↥\"],[\"marker\",\"▮\"],[\"mcomma\",\"⨩\"],[\"mcy\",\"м\"],[\"mdash\",\"—\"],[\"measuredangle\",\"∡\"],[\"mfr\",\"𝔪\"],[\"mho\",\"℧\"],[\"micro\",\"µ\"],[\"mid\",\"∣\"],[\"midast\",\"*\"],[\"midcir\",\"⫰\"],[\"middot\",\"·\"],[\"minus\",\"−\"],[\"minusb\",\"⊟\"],[\"minusd\",\"∸\"],[\"minusdu\",\"⨪\"],[\"mlcp\",\"⫛\"],[\"mldr\",\"…\"],[\"mnplus\",\"∓\"],[\"models\",\"⊧\"],[\"mopf\",\"𝕞\"],[\"mp\",\"∓\"],[\"mscr\",\"𝓂\"],[\"mstpos\",\"∾\"],[\"mu\",\"μ\"],[\"multimap\",\"⊸\"],[\"mumap\",\"⊸\"],[\"nGg\",\"⋙̸\"],[\"nGt\",\"≫⃒\"],[\"nGtv\",\"≫̸\"],[\"nLeftarrow\",\"⇍\"],[\"nLeftrightarrow\",\"⇎\"],[\"nLl\",\"⋘̸\"],[\"nLt\",\"≪⃒\"],[\"nLtv\",\"≪̸\"],[\"nRightarrow\",\"⇏\"],[\"nVDash\",\"⊯\"],[\"nVdash\",\"⊮\"],[\"nabla\",\"∇\"],[\"nacute\",\"ń\"],[\"nang\",\"∠⃒\"],[\"nap\",\"≉\"],[\"napE\",\"⩰̸\"],[\"napid\",\"≋̸\"],[\"napos\",\"ʼn\"],[\"napprox\",\"≉\"],[\"natur\",\"♮\"],[\"natural\",\"♮\"],[\"naturals\",\"ℕ\"],[\"nbsp\",\"\xA0\"],[\"nbump\",\"≎̸\"],[\"nbumpe\",\"≏̸\"],[\"ncap\",\"⩃\"],[\"ncaron\",\"ň\"],[\"ncedil\",\"ņ\"],[\"ncong\",\"≇\"],[\"ncongdot\",\"⩭̸\"],[\"ncup\",\"⩂\"],[\"ncy\",\"н\"],[\"ndash\",\"–\"],[\"ne\",\"≠\"],[\"neArr\",\"⇗\"],[\"nearhk\",\"⤤\"],[\"nearr\",\"↗\"],[\"nearrow\",\"↗\"],[\"nedot\",\"≐̸\"],[\"nequiv\",\"≢\"],[\"nesear\",\"⤨\"],[\"nesim\",\"≂̸\"],[\"nexist\",\"∄\"],[\"nexists\",\"∄\"],[\"nfr\",\"𝔫\"],[\"ngE\",\"≧̸\"],[\"nge\",\"≱\"],[\"ngeq\",\"≱\"],[\"ngeqq\",\"≧̸\"],[\"ngeqslant\",\"⩾̸\"],[\"nges\",\"⩾̸\"],[\"ngsim\",\"≵\"],[\"ngt\",\"≯\"],[\"ngtr\",\"≯\"],[\"nhArr\",\"⇎\"],[\"nharr\",\"↮\"],[\"nhpar\",\"⫲\"],[\"ni\",\"∋\"],[\"nis\",\"⋼\"],[\"nisd\",\"⋺\"],[\"niv\",\"∋\"],[\"njcy\",\"њ\"],[\"nlArr\",\"⇍\"],[\"nlE\",\"≦̸\"],[\"nlarr\",\"↚\"],[\"nldr\",\"‥\"],[\"nle\",\"≰\"],[\"nleftarrow\",\"↚\"],[\"nleftrightarrow\",\"↮\"],[\"nleq\",\"≰\"],[\"nleqq\",\"≦̸\"],[\"nleqslant\",\"⩽̸\"],[\"nles\",\"⩽̸\"],[\"nless\",\"≮\"],[\"nlsim\",\"≴\"],[\"nlt\",\"≮\"],[\"nltri\",\"⋪\"],[\"nltrie\",\"⋬\"],[\"nmid\",\"∤\"],[\"nopf\",\"𝕟\"],[\"not\",\"¬\"],[\"notin\",\"∉\"],[\"notinE\",\"⋹̸\"],[\"notindot\",\"⋵̸\"],[\"notinva\",\"∉\"],[\"notinvb\",\"⋷\"],[\"notinvc\",\"⋶\"],[\"notni\",\"∌\"],[\"notniva\",\"∌\"],[\"notnivb\",\"⋾\"],[\"notnivc\",\"⋽\"],[\"npar\",\"∦\"],[\"nparallel\",\"∦\"],[\"nparsl\",\"⫽⃥\"],[\"npart\",\"∂̸\"],[\"npolint\",\"⨔\"],[\"npr\",\"⊀\"],[\"nprcue\",\"⋠\"],[\"npre\",\"⪯̸\"],[\"nprec\",\"⊀\"],[\"npreceq\",\"⪯̸\"],[\"nrArr\",\"⇏\"],[\"nrarr\",\"↛\"],[\"nrarrc\",\"⤳̸\"],[\"nrarrw\",\"↝̸\"],[\"nrightarrow\",\"↛\"],[\"nrtri\",\"⋫\"],[\"nrtrie\",\"⋭\"],[\"nsc\",\"⊁\"],[\"nsccue\",\"⋡\"],[\"nsce\",\"⪰̸\"],[\"nscr\",\"𝓃\"],[\"nshortmid\",\"∤\"],[\"nshortparallel\",\"∦\"],[\"nsim\",\"≁\"],[\"nsime\",\"≄\"],[\"nsimeq\",\"≄\"],[\"nsmid\",\"∤\"],[\"nspar\",\"∦\"],[\"nsqsube\",\"⋢\"],[\"nsqsupe\",\"⋣\"],[\"nsub\",\"⊄\"],[\"nsubE\",\"⫅̸\"],[\"nsube\",\"⊈\"],[\"nsubset\",\"⊂⃒\"],[\"nsubseteq\",\"⊈\"],[\"nsubseteqq\",\"⫅̸\"],[\"nsucc\",\"⊁\"],[\"nsucceq\",\"⪰̸\"],[\"nsup\",\"⊅\"],[\"nsupE\",\"⫆̸\"],[\"nsupe\",\"⊉\"],[\"nsupset\",\"⊃⃒\"],[\"nsupseteq\",\"⊉\"],[\"nsupseteqq\",\"⫆̸\"],[\"ntgl\",\"≹\"],[\"ntilde\",\"ñ\"],[\"ntlg\",\"≸\"],[\"ntriangleleft\",\"⋪\"],[\"ntrianglelefteq\",\"⋬\"],[\"ntriangleright\",\"⋫\"],[\"ntrianglerighteq\",\"⋭\"],[\"nu\",\"ν\"],[\"num\",\"#\"],[\"numero\",\"№\"],[\"numsp\",\" \"],[\"nvDash\",\"⊭\"],[\"nvHarr\",\"⤄\"],[\"nvap\",\"≍⃒\"],[\"nvdash\",\"⊬\"],[\"nvge\",\"≥⃒\"],[\"nvgt\",\">⃒\"],[\"nvinfin\",\"⧞\"],[\"nvlArr\",\"⤂\"],[\"nvle\",\"≤⃒\"],[\"nvlt\",\"<⃒\"],[\"nvltrie\",\"⊴⃒\"],[\"nvrArr\",\"⤃\"],[\"nvrtrie\",\"⊵⃒\"],[\"nvsim\",\"∼⃒\"],[\"nwArr\",\"⇖\"],[\"nwarhk\",\"⤣\"],[\"nwarr\",\"↖\"],[\"nwarrow\",\"↖\"],[\"nwnear\",\"⤧\"],[\"oS\",\"Ⓢ\"],[\"oacute\",\"ó\"],[\"oast\",\"⊛\"],[\"ocir\",\"⊚\"],[\"ocirc\",\"ô\"],[\"ocy\",\"о\"],[\"odash\",\"⊝\"],[\"odblac\",\"ő\"],[\"odiv\",\"⨸\"],[\"odot\",\"⊙\"],[\"odsold\",\"⦼\"],[\"oelig\",\"œ\"],[\"ofcir\",\"⦿\"],[\"ofr\",\"𝔬\"],[\"ogon\",\"˛\"],[\"ograve\",\"ò\"],[\"ogt\",\"⧁\"],[\"ohbar\",\"⦵\"],[\"ohm\",\"Ω\"],[\"oint\",\"∮\"],[\"olarr\",\"↺\"],[\"olcir\",\"⦾\"],[\"olcross\",\"⦻\"],[\"oline\",\"‾\"],[\"olt\",\"⧀\"],[\"omacr\",\"ō\"],[\"omega\",\"ω\"],[\"omicron\",\"ο\"],[\"omid\",\"⦶\"],[\"ominus\",\"⊖\"],[\"oopf\",\"𝕠\"],[\"opar\",\"⦷\"],[\"operp\",\"⦹\"],[\"oplus\",\"⊕\"],[\"or\",\"∨\"],[\"orarr\",\"↻\"],[\"ord\",\"⩝\"],[\"order\",\"ℴ\"],[\"orderof\",\"ℴ\"],[\"ordf\",\"ª\"],[\"ordm\",\"º\"],[\"origof\",\"⊶\"],[\"oror\",\"⩖\"],[\"orslope\",\"⩗\"],[\"orv\",\"⩛\"],[\"oscr\",\"ℴ\"],[\"oslash\",\"ø\"],[\"osol\",\"⊘\"],[\"otilde\",\"õ\"],[\"otimes\",\"⊗\"],[\"otimesas\",\"⨶\"],[\"ouml\",\"ö\"],[\"ovbar\",\"⌽\"],[\"par\",\"∥\"],[\"para\",\"¶\"],[\"parallel\",\"∥\"],[\"parsim\",\"⫳\"],[\"parsl\",\"⫽\"],[\"part\",\"∂\"],[\"pcy\",\"п\"],[\"percnt\",\"%\"],[\"period\",\".\"],[\"permil\",\"‰\"],[\"perp\",\"⊥\"],[\"pertenk\",\"‱\"],[\"pfr\",\"𝔭\"],[\"phi\",\"φ\"],[\"phiv\",\"ϕ\"],[\"phmmat\",\"ℳ\"],[\"phone\",\"☎\"],[\"pi\",\"π\"],[\"pitchfork\",\"⋔\"],[\"piv\",\"ϖ\"],[\"planck\",\"ℏ\"],[\"planckh\",\"ℎ\"],[\"plankv\",\"ℏ\"],[\"plus\",\"+\"],[\"plusacir\",\"⨣\"],[\"plusb\",\"⊞\"],[\"pluscir\",\"⨢\"],[\"plusdo\",\"∔\"],[\"plusdu\",\"⨥\"],[\"pluse\",\"⩲\"],[\"plusmn\",\"±\"],[\"plussim\",\"⨦\"],[\"plustwo\",\"⨧\"],[\"pm\",\"±\"],[\"pointint\",\"⨕\"],[\"popf\",\"𝕡\"],[\"pound\",\"£\"],[\"pr\",\"≺\"],[\"prE\",\"⪳\"],[\"prap\",\"⪷\"],[\"prcue\",\"≼\"],[\"pre\",\"⪯\"],[\"prec\",\"≺\"],[\"precapprox\",\"⪷\"],[\"preccurlyeq\",\"≼\"],[\"preceq\",\"⪯\"],[\"precnapprox\",\"⪹\"],[\"precneqq\",\"⪵\"],[\"precnsim\",\"⋨\"],[\"precsim\",\"≾\"],[\"prime\",\"′\"],[\"primes\",\"ℙ\"],[\"prnE\",\"⪵\"],[\"prnap\",\"⪹\"],[\"prnsim\",\"⋨\"],[\"prod\",\"∏\"],[\"profalar\",\"⌮\"],[\"profline\",\"⌒\"],[\"profsurf\",\"⌓\"],[\"prop\",\"∝\"],[\"propto\",\"∝\"],[\"prsim\",\"≾\"],[\"prurel\",\"⊰\"],[\"pscr\",\"𝓅\"],[\"psi\",\"ψ\"],[\"puncsp\",\" \"],[\"qfr\",\"𝔮\"],[\"qint\",\"⨌\"],[\"qopf\",\"𝕢\"],[\"qprime\",\"⁗\"],[\"qscr\",\"𝓆\"],[\"quaternions\",\"ℍ\"],[\"quatint\",\"⨖\"],[\"quest\",\"?\"],[\"questeq\",\"≟\"],[\"quot\",\"\\\"\"],[\"rAarr\",\"⇛\"],[\"rArr\",\"⇒\"],[\"rAtail\",\"⤜\"],[\"rBarr\",\"⤏\"],[\"rHar\",\"⥤\"],[\"race\",\"∽̱\"],[\"racute\",\"ŕ\"],[\"radic\",\"√\"],[\"raemptyv\",\"⦳\"],[\"rang\",\"⟩\"],[\"rangd\",\"⦒\"],[\"range\",\"⦥\"],[\"rangle\",\"⟩\"],[\"raquo\",\"»\"],[\"rarr\",\"→\"],[\"rarrap\",\"⥵\"],[\"rarrb\",\"⇥\"],[\"rarrbfs\",\"⤠\"],[\"rarrc\",\"⤳\"],[\"rarrfs\",\"⤞\"],[\"rarrhk\",\"↪\"],[\"rarrlp\",\"↬\"],[\"rarrpl\",\"⥅\"],[\"rarrsim\",\"⥴\"],[\"rarrtl\",\"↣\"],[\"rarrw\",\"↝\"],[\"ratail\",\"⤚\"],[\"ratio\",\"∶\"],[\"rationals\",\"ℚ\"],[\"rbarr\",\"⤍\"],[\"rbbrk\",\"❳\"],[\"rbrace\",\"}\"],[\"rbrack\",\"]\"],[\"rbrke\",\"⦌\"],[\"rbrksld\",\"⦎\"],[\"rbrkslu\",\"⦐\"],[\"rcaron\",\"ř\"],[\"rcedil\",\"ŗ\"],[\"rceil\",\"⌉\"],[\"rcub\",\"}\"],[\"rcy\",\"р\"],[\"rdca\",\"⤷\"],[\"rdldhar\",\"⥩\"],[\"rdquo\",\"”\"],[\"rdquor\",\"”\"],[\"rdsh\",\"↳\"],[\"real\",\"ℜ\"],[\"realine\",\"ℛ\"],[\"realpart\",\"ℜ\"],[\"reals\",\"ℝ\"],[\"rect\",\"▭\"],[\"reg\",\"®\"],[\"rfisht\",\"⥽\"],[\"rfloor\",\"⌋\"],[\"rfr\",\"𝔯\"],[\"rhard\",\"⇁\"],[\"rharu\",\"⇀\"],[\"rharul\",\"⥬\"],[\"rho\",\"ρ\"],[\"rhov\",\"ϱ\"],[\"rightarrow\",\"→\"],[\"rightarrowtail\",\"↣\"],[\"rightharpoondown\",\"⇁\"],[\"rightharpoonup\",\"⇀\"],[\"rightleftarrows\",\"⇄\"],[\"rightleftharpoons\",\"⇌\"],[\"rightrightarrows\",\"⇉\"],[\"rightsquigarrow\",\"↝\"],[\"rightthreetimes\",\"⋌\"],[\"ring\",\"˚\"],[\"risingdotseq\",\"≓\"],[\"rlarr\",\"⇄\"],[\"rlhar\",\"⇌\"],[\"rlm\",\"\"],[\"rmoust\",\"⎱\"],[\"rmoustache\",\"⎱\"],[\"rnmid\",\"⫮\"],[\"roang\",\"⟭\"],[\"roarr\",\"⇾\"],[\"robrk\",\"⟧\"],[\"ropar\",\"⦆\"],[\"ropf\",\"𝕣\"],[\"roplus\",\"⨮\"],[\"rotimes\",\"⨵\"],[\"rpar\",\")\"],[\"rpargt\",\"⦔\"],[\"rppolint\",\"⨒\"],[\"rrarr\",\"⇉\"],[\"rsaquo\",\"›\"],[\"rscr\",\"𝓇\"],[\"rsh\",\"↱\"],[\"rsqb\",\"]\"],[\"rsquo\",\"’\"],[\"rsquor\",\"’\"],[\"rthree\",\"⋌\"],[\"rtimes\",\"⋊\"],[\"rtri\",\"▹\"],[\"rtrie\",\"⊵\"],[\"rtrif\",\"▸\"],[\"rtriltri\",\"⧎\"],[\"ruluhar\",\"⥨\"],[\"rx\",\"℞\"],[\"sacute\",\"ś\"],[\"sbquo\",\"‚\"],[\"sc\",\"≻\"],[\"scE\",\"⪴\"],[\"scap\",\"⪸\"],[\"scaron\",\"š\"],[\"sccue\",\"≽\"],[\"sce\",\"⪰\"],[\"scedil\",\"ş\"],[\"scirc\",\"ŝ\"],[\"scnE\",\"⪶\"],[\"scnap\",\"⪺\"],[\"scnsim\",\"⋩\"],[\"scpolint\",\"⨓\"],[\"scsim\",\"≿\"],[\"scy\",\"с\"],[\"sdot\",\"⋅\"],[\"sdotb\",\"⊡\"],[\"sdote\",\"⩦\"],[\"seArr\",\"⇘\"],[\"searhk\",\"⤥\"],[\"searr\",\"↘\"],[\"searrow\",\"↘\"],[\"sect\",\"§\"],[\"semi\",\";\"],[\"seswar\",\"⤩\"],[\"setminus\",\"∖\"],[\"setmn\",\"∖\"],[\"sext\",\"✶\"],[\"sfr\",\"𝔰\"],[\"sfrown\",\"⌢\"],[\"sharp\",\"♯\"],[\"shchcy\",\"щ\"],[\"shcy\",\"ш\"],[\"shortmid\",\"∣\"],[\"shortparallel\",\"∥\"],[\"shy\",\"\"],[\"sigma\",\"σ\"],[\"sigmaf\",\"ς\"],[\"sigmav\",\"ς\"],[\"sim\",\"∼\"],[\"simdot\",\"⩪\"],[\"sime\",\"≃\"],[\"simeq\",\"≃\"],[\"simg\",\"⪞\"],[\"simgE\",\"⪠\"],[\"siml\",\"⪝\"],[\"simlE\",\"⪟\"],[\"simne\",\"≆\"],[\"simplus\",\"⨤\"],[\"simrarr\",\"⥲\"],[\"slarr\",\"←\"],[\"smallsetminus\",\"∖\"],[\"smashp\",\"⨳\"],[\"smeparsl\",\"⧤\"],[\"smid\",\"∣\"],[\"smile\",\"⌣\"],[\"smt\",\"⪪\"],[\"smte\",\"⪬\"],[\"smtes\",\"⪬︀\"],[\"softcy\",\"ь\"],[\"sol\",\"/\"],[\"solb\",\"⧄\"],[\"solbar\",\"⌿\"],[\"sopf\",\"𝕤\"],[\"spades\",\"♠\"],[\"spadesuit\",\"♠\"],[\"spar\",\"∥\"],[\"sqcap\",\"⊓\"],[\"sqcaps\",\"⊓︀\"],[\"sqcup\",\"⊔\"],[\"sqcups\",\"⊔︀\"],[\"sqsub\",\"⊏\"],[\"sqsube\",\"⊑\"],[\"sqsubset\",\"⊏\"],[\"sqsubseteq\",\"⊑\"],[\"sqsup\",\"⊐\"],[\"sqsupe\",\"⊒\"],[\"sqsupset\",\"⊐\"],[\"sqsupseteq\",\"⊒\"],[\"squ\",\"□\"],[\"square\",\"□\"],[\"squarf\",\"▪\"],[\"squf\",\"▪\"],[\"srarr\",\"→\"],[\"sscr\",\"𝓈\"],[\"ssetmn\",\"∖\"],[\"ssmile\",\"⌣\"],[\"sstarf\",\"⋆\"],[\"star\",\"☆\"],[\"starf\",\"★\"],[\"straightepsilon\",\"ϵ\"],[\"straightphi\",\"ϕ\"],[\"strns\",\"¯\"],[\"sub\",\"⊂\"],[\"subE\",\"⫅\"],[\"subdot\",\"⪽\"],[\"sube\",\"⊆\"],[\"subedot\",\"⫃\"],[\"submult\",\"⫁\"],[\"subnE\",\"⫋\"],[\"subne\",\"⊊\"],[\"subplus\",\"⪿\"],[\"subrarr\",\"⥹\"],[\"subset\",\"⊂\"],[\"subseteq\",\"⊆\"],[\"subseteqq\",\"⫅\"],[\"subsetneq\",\"⊊\"],[\"subsetneqq\",\"⫋\"],[\"subsim\",\"⫇\"],[\"subsub\",\"⫕\"],[\"subsup\",\"⫓\"],[\"succ\",\"≻\"],[\"succapprox\",\"⪸\"],[\"succcurlyeq\",\"≽\"],[\"succeq\",\"⪰\"],[\"succnapprox\",\"⪺\"],[\"succneqq\",\"⪶\"],[\"succnsim\",\"⋩\"],[\"succsim\",\"≿\"],[\"sum\",\"∑\"],[\"sung\",\"♪\"],[\"sup\",\"⊃\"],[\"sup1\",\"¹\"],[\"sup2\",\"²\"],[\"sup3\",\"³\"],[\"supE\",\"⫆\"],[\"supdot\",\"⪾\"],[\"supdsub\",\"⫘\"],[\"supe\",\"⊇\"],[\"supedot\",\"⫄\"],[\"suphsol\",\"⟉\"],[\"suphsub\",\"⫗\"],[\"suplarr\",\"⥻\"],[\"supmult\",\"⫂\"],[\"supnE\",\"⫌\"],[\"supne\",\"⊋\"],[\"supplus\",\"⫀\"],[\"supset\",\"⊃\"],[\"supseteq\",\"⊇\"],[\"supseteqq\",\"⫆\"],[\"supsetneq\",\"⊋\"],[\"supsetneqq\",\"⫌\"],[\"supsim\",\"⫈\"],[\"supsub\",\"⫔\"],[\"supsup\",\"⫖\"],[\"swArr\",\"⇙\"],[\"swarhk\",\"⤦\"],[\"swarr\",\"↙\"],[\"swarrow\",\"↙\"],[\"swnwar\",\"⤪\"],[\"szlig\",\"ß\"],[\"target\",\"⌖\"],[\"tau\",\"τ\"],[\"tbrk\",\"⎴\"],[\"tcaron\",\"ť\"],[\"tcedil\",\"ţ\"],[\"tcy\",\"т\"],[\"tdot\",\"⃛\"],[\"telrec\",\"⌕\"],[\"tfr\",\"𝔱\"],[\"there4\",\"∴\"],[\"therefore\",\"∴\"],[\"theta\",\"θ\"],[\"thetasym\",\"ϑ\"],[\"thetav\",\"ϑ\"],[\"thickapprox\",\"≈\"],[\"thicksim\",\"∼\"],[\"thinsp\",\" \"],[\"thkap\",\"≈\"],[\"thksim\",\"∼\"],[\"thorn\",\"þ\"],[\"tilde\",\"˜\"],[\"times\",\"×\"],[\"timesb\",\"⊠\"],[\"timesbar\",\"⨱\"],[\"timesd\",\"⨰\"],[\"tint\",\"∭\"],[\"toea\",\"⤨\"],[\"top\",\"⊤\"],[\"topbot\",\"⌶\"],[\"topcir\",\"⫱\"],[\"topf\",\"𝕥\"],[\"topfork\",\"⫚\"],[\"tosa\",\"⤩\"],[\"tprime\",\"‴\"],[\"trade\",\"™\"],[\"triangle\",\"▵\"],[\"triangledown\",\"▿\"],[\"triangleleft\",\"◃\"],[\"trianglelefteq\",\"⊴\"],[\"triangleq\",\"≜\"],[\"triangleright\",\"▹\"],[\"trianglerighteq\",\"⊵\"],[\"tridot\",\"◬\"],[\"trie\",\"≜\"],[\"triminus\",\"⨺\"],[\"triplus\",\"⨹\"],[\"trisb\",\"⧍\"],[\"tritime\",\"⨻\"],[\"trpezium\",\"⏢\"],[\"tscr\",\"𝓉\"],[\"tscy\",\"ц\"],[\"tshcy\",\"ћ\"],[\"tstrok\",\"ŧ\"],[\"twixt\",\"≬\"],[\"twoheadleftarrow\",\"↞\"],[\"twoheadrightarrow\",\"↠\"],[\"uArr\",\"⇑\"],[\"uHar\",\"⥣\"],[\"uacute\",\"ú\"],[\"uarr\",\"↑\"],[\"ubrcy\",\"ў\"],[\"ubreve\",\"ŭ\"],[\"ucirc\",\"û\"],[\"ucy\",\"у\"],[\"udarr\",\"⇅\"],[\"udblac\",\"ű\"],[\"udhar\",\"⥮\"],[\"ufisht\",\"⥾\"],[\"ufr\",\"𝔲\"],[\"ugrave\",\"ù\"],[\"uharl\",\"↿\"],[\"uharr\",\"↾\"],[\"uhblk\",\"▀\"],[\"ulcorn\",\"⌜\"],[\"ulcorner\",\"⌜\"],[\"ulcrop\",\"⌏\"],[\"ultri\",\"◸\"],[\"umacr\",\"ū\"],[\"uml\",\"¨\"],[\"uogon\",\"ų\"],[\"uopf\",\"𝕦\"],[\"uparrow\",\"↑\"],[\"updownarrow\",\"↕\"],[\"upharpoonleft\",\"↿\"],[\"upharpoonright\",\"↾\"],[\"uplus\",\"⊎\"],[\"upsi\",\"υ\"],[\"upsih\",\"ϒ\"],[\"upsilon\",\"υ\"],[\"upuparrows\",\"⇈\"],[\"urcorn\",\"⌝\"],[\"urcorner\",\"⌝\"],[\"urcrop\",\"⌎\"],[\"uring\",\"ů\"],[\"urtri\",\"◹\"],[\"uscr\",\"𝓊\"],[\"utdot\",\"⋰\"],[\"utilde\",\"ũ\"],[\"utri\",\"▵\"],[\"utrif\",\"▴\"],[\"uuarr\",\"⇈\"],[\"uuml\",\"ü\"],[\"uwangle\",\"⦧\"],[\"vArr\",\"⇕\"],[\"vBar\",\"⫨\"],[\"vBarv\",\"⫩\"],[\"vDash\",\"⊨\"],[\"vangrt\",\"⦜\"],[\"varepsilon\",\"ϵ\"],[\"varkappa\",\"ϰ\"],[\"varnothing\",\"∅\"],[\"varphi\",\"ϕ\"],[\"varpi\",\"ϖ\"],[\"varpropto\",\"∝\"],[\"varr\",\"↕\"],[\"varrho\",\"ϱ\"],[\"varsigma\",\"ς\"],[\"varsubsetneq\",\"⊊︀\"],[\"varsubsetneqq\",\"⫋︀\"],[\"varsupsetneq\",\"⊋︀\"],[\"varsupsetneqq\",\"⫌︀\"],[\"vartheta\",\"ϑ\"],[\"vartriangleleft\",\"⊲\"],[\"vartriangleright\",\"⊳\"],[\"vcy\",\"в\"],[\"vdash\",\"⊢\"],[\"vee\",\"∨\"],[\"veebar\",\"⊻\"],[\"veeeq\",\"≚\"],[\"vellip\",\"⋮\"],[\"verbar\",\"|\"],[\"vert\",\"|\"],[\"vfr\",\"𝔳\"],[\"vltri\",\"⊲\"],[\"vnsub\",\"⊂⃒\"],[\"vnsup\",\"⊃⃒\"],[\"vopf\",\"𝕧\"],[\"vprop\",\"∝\"],[\"vrtri\",\"⊳\"],[\"vscr\",\"𝓋\"],[\"vsubnE\",\"⫋︀\"],[\"vsubne\",\"⊊︀\"],[\"vsupnE\",\"⫌︀\"],[\"vsupne\",\"⊋︀\"],[\"vzigzag\",\"⦚\"],[\"wcirc\",\"ŵ\"],[\"wedbar\",\"⩟\"],[\"wedge\",\"∧\"],[\"wedgeq\",\"≙\"],[\"weierp\",\"℘\"],[\"wfr\",\"𝔴\"],[\"wopf\",\"𝕨\"],[\"wp\",\"℘\"],[\"wr\",\"≀\"],[\"wreath\",\"≀\"],[\"wscr\",\"𝓌\"],[\"xcap\",\"⋂\"],[\"xcirc\",\"◯\"],[\"xcup\",\"⋃\"],[\"xdtri\",\"▽\"],[\"xfr\",\"𝔵\"],[\"xhArr\",\"⟺\"],[\"xharr\",\"⟷\"],[\"xi\",\"ξ\"],[\"xlArr\",\"⟸\"],[\"xlarr\",\"⟵\"],[\"xmap\",\"⟼\"],[\"xnis\",\"⋻\"],[\"xodot\",\"⨀\"],[\"xopf\",\"𝕩\"],[\"xoplus\",\"⨁\"],[\"xotime\",\"⨂\"],[\"xrArr\",\"⟹\"],[\"xrarr\",\"⟶\"],[\"xscr\",\"𝓍\"],[\"xsqcup\",\"⨆\"],[\"xuplus\",\"⨄\"],[\"xutri\",\"△\"],[\"xvee\",\"⋁\"],[\"xwedge\",\"⋀\"],[\"yacute\",\"ý\"],[\"yacy\",\"я\"],[\"ycirc\",\"ŷ\"],[\"ycy\",\"ы\"],[\"yen\",\"¥\"],[\"yfr\",\"𝔶\"],[\"yicy\",\"ї\"],[\"yopf\",\"𝕪\"],[\"yscr\",\"𝓎\"],[\"yucy\",\"ю\"],[\"yuml\",\"ÿ\"],[\"zacute\",\"ź\"],[\"zcaron\",\"ž\"],[\"zcy\",\"з\"],[\"zdot\",\"ż\"],[\"zeetrf\",\"ℨ\"],[\"zeta\",\"ζ\"],[\"zfr\",\"𝔷\"],[\"zhcy\",\"ж\"],[\"zigrarr\",\"⇝\"],[\"zopf\",\"𝕫\"],[\"zscr\",\"𝓏\"],[\"zwj\",\"\"],[\"zwnj\",\"\"]]"));
|
|
6009
6490
|
|
|
6010
6491
|
//#endregion
|
|
6011
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6492
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/entities.js
|
|
6012
6493
|
/** The largest code point Unicode defines. */
|
|
6013
6494
|
const MAX_CODE_POINT = 1114111;
|
|
6014
6495
|
/**
|
|
@@ -6031,7 +6512,7 @@ const decodeEntity = (entity) => {
|
|
|
6031
6512
|
};
|
|
6032
6513
|
|
|
6033
6514
|
//#endregion
|
|
6034
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6515
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/unescape.js
|
|
6035
6516
|
/** The punctuation set a backslash may escape, per the spec. */
|
|
6036
6517
|
const ESCAPABLE$1 = "[!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-]";
|
|
6037
6518
|
/** One entity, in any of the three spec forms. */
|
|
@@ -6046,7 +6527,7 @@ const unescapeChar = (source) => {
|
|
|
6046
6527
|
const unescapeString = (source) => reBackslashOrAmp.test(source) ? source.replace(reEntityOrEscapedChar, unescapeChar) : source;
|
|
6047
6528
|
|
|
6048
6529
|
//#endregion
|
|
6049
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6530
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/code.js
|
|
6050
6531
|
const reBlankLine = /^[ \t]*$/;
|
|
6051
6532
|
const reClosingCodeFence = /^(?:`{3,}|~{3,})(?=[ \t]*$)/;
|
|
6052
6533
|
/**
|
|
@@ -6131,7 +6612,7 @@ const codeConstruct = {
|
|
|
6131
6612
|
};
|
|
6132
6613
|
|
|
6133
6614
|
//#endregion
|
|
6134
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6615
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/document.js
|
|
6135
6616
|
/** The document root: contains everything except a bare list item. */
|
|
6136
6617
|
const documentConstruct = {
|
|
6137
6618
|
type: "document",
|
|
@@ -6145,7 +6626,7 @@ const documentConstruct = {
|
|
|
6145
6626
|
};
|
|
6146
6627
|
|
|
6147
6628
|
//#endregion
|
|
6148
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6629
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/fencedCode.js
|
|
6149
6630
|
const reCodeFence = /^`{3,}(?!.*`)|^~{3,}/;
|
|
6150
6631
|
const fenceCharOf = (char) => char === "`" || char === "~" ? char : void 0;
|
|
6151
6632
|
/** The fenced-code block start: three or more backticks or tildes. */
|
|
@@ -6170,7 +6651,7 @@ const fencedCodeStart = {
|
|
|
6170
6651
|
};
|
|
6171
6652
|
|
|
6172
6653
|
//#endregion
|
|
6173
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6654
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/patterns.js
|
|
6174
6655
|
const stickyCache = /* @__PURE__ */ new WeakMap();
|
|
6175
6656
|
const globalCache = /* @__PURE__ */ new WeakMap();
|
|
6176
6657
|
const clone = (pattern, flag, dropCaret) => {
|
|
@@ -6195,7 +6676,7 @@ const globalOf = (pattern) => {
|
|
|
6195
6676
|
};
|
|
6196
6677
|
|
|
6197
6678
|
//#endregion
|
|
6198
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6679
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/references.js
|
|
6199
6680
|
const ESCAPABLE = "[!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-]";
|
|
6200
6681
|
const ESCAPED_CHAR = `\\\\${ESCAPABLE}`;
|
|
6201
6682
|
const reLinkTitle = new RegExp(`^(?:"(${ESCAPED_CHAR}|\\\\[^\\\\]|[^\\\\"\\x00])*"|'(${ESCAPED_CHAR}|\\\\[^\\\\]|[^\\\\'\\x00])*'|\\((${ESCAPED_CHAR}|\\\\[^\\\\]|[^\\\\()\\x00])*\\))`);
|
|
@@ -6370,7 +6851,7 @@ const parseReference = (text) => {
|
|
|
6370
6851
|
};
|
|
6371
6852
|
|
|
6372
6853
|
//#endregion
|
|
6373
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6854
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/footnoteDefinition.js
|
|
6374
6855
|
/**
|
|
6375
6856
|
* `_scan_footnote_definition` from `src/scanners.re`:
|
|
6376
6857
|
*
|
|
@@ -6448,7 +6929,7 @@ const footnoteDefinitionStart = {
|
|
|
6448
6929
|
};
|
|
6449
6930
|
|
|
6450
6931
|
//#endregion
|
|
6451
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6932
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/indentedCode.js
|
|
6452
6933
|
/** The indented-code block start: four columns of indentation. */
|
|
6453
6934
|
const indentedCodeStart = {
|
|
6454
6935
|
name: "indentedCode",
|
|
@@ -6463,7 +6944,7 @@ const indentedCodeStart = {
|
|
|
6463
6944
|
};
|
|
6464
6945
|
|
|
6465
6946
|
//#endregion
|
|
6466
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6947
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/segments.js
|
|
6467
6948
|
/**
|
|
6468
6949
|
* The absolute source offset of `textIndex` within a segmented content run.
|
|
6469
6950
|
*
|
|
@@ -6498,7 +6979,7 @@ const sliceWithSegments = (segments, from, to) => {
|
|
|
6498
6979
|
};
|
|
6499
6980
|
|
|
6500
6981
|
//#endregion
|
|
6501
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
6982
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/linkReferenceDefinition.js
|
|
6502
6983
|
const C_OPEN_BRACKET$1 = 91;
|
|
6503
6984
|
/**
|
|
6504
6985
|
* Split every leading link reference definition out of `block`, inserting one
|
|
@@ -6564,7 +7045,7 @@ const definitionConstruct = {
|
|
|
6564
7045
|
};
|
|
6565
7046
|
|
|
6566
7047
|
//#endregion
|
|
6567
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7048
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/list.js
|
|
6568
7049
|
const reBulletListMarker = /^[*+-]/;
|
|
6569
7050
|
const reOrderedListMarker = /^(\d{1,9})([.)])/;
|
|
6570
7051
|
const reNonSpace$1 = /[^ \t\f\v\r\n]/;
|
|
@@ -6718,7 +7199,7 @@ const listItemStart = {
|
|
|
6718
7199
|
};
|
|
6719
7200
|
|
|
6720
7201
|
//#endregion
|
|
6721
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7202
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/paragraph.js
|
|
6722
7203
|
/** Paragraph: absorbs lines until a blank one, and contains nothing. */
|
|
6723
7204
|
const paragraphConstruct = {
|
|
6724
7205
|
type: "paragraph",
|
|
@@ -6741,7 +7222,7 @@ const paragraphConstruct = {
|
|
|
6741
7222
|
};
|
|
6742
7223
|
|
|
6743
7224
|
//#endregion
|
|
6744
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7225
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/setextHeading.js
|
|
6745
7226
|
const reSetextHeadingLine = /^(?:=+|-+)[ \t]*$/;
|
|
6746
7227
|
/** The setext heading block start: a run of `=` or `-` under a paragraph. */
|
|
6747
7228
|
const setextHeadingStart = {
|
|
@@ -6762,7 +7243,7 @@ const setextHeadingStart = {
|
|
|
6762
7243
|
};
|
|
6763
7244
|
|
|
6764
7245
|
//#endregion
|
|
6765
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7246
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/table.js
|
|
6766
7247
|
/**
|
|
6767
7248
|
* Upstream's `MAX_AUTOCOMPLETED_CELLS`: the ceiling on cells the parser
|
|
6768
7249
|
* invents to pad short rows, which is what stops a wide header followed by a
|
|
@@ -7134,7 +7615,7 @@ const tableCellConstruct = {
|
|
|
7134
7615
|
};
|
|
7135
7616
|
|
|
7136
7617
|
//#endregion
|
|
7137
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7618
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/taskListItem.js
|
|
7138
7619
|
/**
|
|
7139
7620
|
* `_scan_tasklist`, as the generated scanner accepts it.
|
|
7140
7621
|
*
|
|
@@ -7169,7 +7650,7 @@ const taskListItemStart = {
|
|
|
7169
7650
|
};
|
|
7170
7651
|
|
|
7171
7652
|
//#endregion
|
|
7172
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7653
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blocks/thematicBreak.js
|
|
7173
7654
|
const reThematicBreak = /^(?:\*[ \t]*){3,}$|^(?:_[ \t]*){3,}$|^(?:-[ \t]*){3,}$/;
|
|
7174
7655
|
const markerCharOf$1 = (char) => char === "-" || char === "_" || char === "*" ? char : void 0;
|
|
7175
7656
|
/** Thematic break: one line, no children. */
|
|
@@ -7201,7 +7682,7 @@ const thematicBreakStart = {
|
|
|
7201
7682
|
};
|
|
7202
7683
|
|
|
7203
7684
|
//#endregion
|
|
7204
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7685
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blockRegistry.js
|
|
7205
7686
|
const constructTable = (constructs) => new Map(constructs.map((construct) => [construct.type, construct]));
|
|
7206
7687
|
const commonmarkDialect$1 = {
|
|
7207
7688
|
constructs: constructTable([
|
|
@@ -7274,7 +7755,7 @@ const blockDialect = (dialect) => {
|
|
|
7274
7755
|
};
|
|
7275
7756
|
|
|
7276
7757
|
//#endregion
|
|
7277
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7758
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/lineIndex.js
|
|
7278
7759
|
/**
|
|
7279
7760
|
* A precomputed index of line-start offsets over a fixed source text,
|
|
7280
7761
|
* answering `positionAt(offset)` in `O(log n)` via binary search rather than
|
|
@@ -7349,7 +7830,7 @@ var LineIndex = class LineIndex {
|
|
|
7349
7830
|
};
|
|
7350
7831
|
|
|
7351
7832
|
//#endregion
|
|
7352
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7833
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlineNode.js
|
|
7353
7834
|
/** Open a node with no links. */
|
|
7354
7835
|
const makeInlineNode = (type, start, end, value = "") => ({
|
|
7355
7836
|
type,
|
|
@@ -7402,7 +7883,7 @@ const childrenOf = (node) => {
|
|
|
7402
7883
|
};
|
|
7403
7884
|
|
|
7404
7885
|
//#endregion
|
|
7405
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7886
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/emphasis.js
|
|
7406
7887
|
const C_ASTERISK$1 = 42;
|
|
7407
7888
|
const C_UNDERSCORE$1 = 95;
|
|
7408
7889
|
const rePunctuation = /^[!"#$%&'()*+,\-./:;<=>?@[\]\\^_`{|}~\p{P}\p{S}]/u;
|
|
@@ -7480,7 +7961,7 @@ const emphasisConstruct = {
|
|
|
7480
7961
|
};
|
|
7481
7962
|
|
|
7482
7963
|
//#endregion
|
|
7483
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
7964
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/strikethrough.js
|
|
7484
7965
|
/**
|
|
7485
7966
|
* Consume a `~` run as literal text and, when it is a viable one- or
|
|
7486
7967
|
* two-tilde run, push it onto the shared delimiter stack.
|
|
@@ -7555,7 +8036,7 @@ const strikethroughConstruct = {
|
|
|
7555
8036
|
};
|
|
7556
8037
|
|
|
7557
8038
|
//#endregion
|
|
7558
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8039
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/autolink.js
|
|
7559
8040
|
const C_LESSTHAN$1 = 60;
|
|
7560
8041
|
const reEmailAutolink = /^<([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/;
|
|
7561
8042
|
const reAutolink = /^<[A-Za-z][A-Za-z0-9.+-]{1,31}:[^<>\0- ]*>/i;
|
|
@@ -7588,7 +8069,7 @@ const autolinkConstruct = {
|
|
|
7588
8069
|
};
|
|
7589
8070
|
|
|
7590
8071
|
//#endregion
|
|
7591
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8072
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/autolinkLiteral.js
|
|
7592
8073
|
const C_LOWER_W = 119;
|
|
7593
8074
|
const C_COLON = 58;
|
|
7594
8075
|
/** `cmark_isspace`: ASCII only, deliberately — upstream's URL scan uses it. */
|
|
@@ -7959,7 +8440,7 @@ const linkifyEmails = (root) => {
|
|
|
7959
8440
|
};
|
|
7960
8441
|
|
|
7961
8442
|
//#endregion
|
|
7962
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8443
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/codeSpan.js
|
|
7963
8444
|
const C_BACKTICK$1 = 96;
|
|
7964
8445
|
const reTicksHere = /^`+/;
|
|
7965
8446
|
const reNewline = /\n/gm;
|
|
@@ -7988,7 +8469,7 @@ const codeSpanConstruct = {
|
|
|
7988
8469
|
};
|
|
7989
8470
|
|
|
7990
8471
|
//#endregion
|
|
7991
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8472
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/entity.js
|
|
7992
8473
|
const C_AMPERSAND = 38;
|
|
7993
8474
|
const reEntityHere = new RegExp(`^${ENTITY}`, "i");
|
|
7994
8475
|
/** A named, decimal or hexadecimal character reference. */
|
|
@@ -8005,7 +8486,7 @@ const entityConstruct = {
|
|
|
8005
8486
|
};
|
|
8006
8487
|
|
|
8007
8488
|
//#endregion
|
|
8008
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8489
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/escape.js
|
|
8009
8490
|
const C_BACKSLASH = 92;
|
|
8010
8491
|
const C_NEWLINE$1 = 10;
|
|
8011
8492
|
const reEscapable = new RegExp(`^${ESCAPABLE$1}`);
|
|
@@ -8035,7 +8516,7 @@ const escapeConstruct = {
|
|
|
8035
8516
|
};
|
|
8036
8517
|
|
|
8037
8518
|
//#endregion
|
|
8038
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8519
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/link.js
|
|
8039
8520
|
const C_BANG = 33;
|
|
8040
8521
|
const C_CARET$1 = 94;
|
|
8041
8522
|
const C_OPEN_BRACKET = 91;
|
|
@@ -8243,7 +8724,7 @@ const makeLinkCloseConstruct = (onNoMatch) => ({
|
|
|
8243
8724
|
const linkCloseConstruct = makeLinkCloseConstruct();
|
|
8244
8725
|
|
|
8245
8726
|
//#endregion
|
|
8246
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8727
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/footnoteReference.js
|
|
8247
8728
|
const C_CARET = 94;
|
|
8248
8729
|
/**
|
|
8249
8730
|
* Whether the bracket that just closed looks like `[^...]` with something
|
|
@@ -8301,7 +8782,7 @@ const gfmLinkCloseConstruct = makeLinkCloseConstruct(footnoteReferenceFallback);
|
|
|
8301
8782
|
const gfmImageOpenConstruct = makeImageOpenConstruct(false);
|
|
8302
8783
|
|
|
8303
8784
|
//#endregion
|
|
8304
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8785
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/lineBreak.js
|
|
8305
8786
|
const C_NEWLINE = 10;
|
|
8306
8787
|
const reInitialSpace = /^ */;
|
|
8307
8788
|
/** A soft or hard line break. */
|
|
@@ -8323,7 +8804,7 @@ const lineBreakConstruct = {
|
|
|
8323
8804
|
};
|
|
8324
8805
|
|
|
8325
8806
|
//#endregion
|
|
8326
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8807
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/rawHtml.js
|
|
8327
8808
|
const C_LESSTHAN = 60;
|
|
8328
8809
|
/** The raw-HTML forms that scan forward for a fixed closing sequence. */
|
|
8329
8810
|
const UNTERMINATED_FORMS = [
|
|
@@ -8346,7 +8827,7 @@ const rawHtmlConstruct = {
|
|
|
8346
8827
|
};
|
|
8347
8828
|
|
|
8348
8829
|
//#endregion
|
|
8349
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8830
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlines/text.js
|
|
8350
8831
|
const reMain = /^[^\n`[\]\\!<&*_'"]+/;
|
|
8351
8832
|
const reMainGfm = /^[^\n`[\]\\!<&*_'"~w:]+/;
|
|
8352
8833
|
/** Consume a run of ordinary characters, stopping before any construct's. */
|
|
@@ -8367,7 +8848,7 @@ const textConstruct = runConstruct("text", reMain);
|
|
|
8367
8848
|
const gfmTextConstruct = runConstruct("text", reMainGfm);
|
|
8368
8849
|
|
|
8369
8850
|
//#endregion
|
|
8370
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8851
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlineRegistry.js
|
|
8371
8852
|
const triggerTable = (constructs) => {
|
|
8372
8853
|
const table = /* @__PURE__ */ new Map();
|
|
8373
8854
|
for (const construct of constructs) for (const trigger of construct.triggers) {
|
|
@@ -8421,7 +8902,7 @@ const inlineDialect = (dialect) => {
|
|
|
8421
8902
|
};
|
|
8422
8903
|
|
|
8423
8904
|
//#endregion
|
|
8424
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
8905
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/inlineParser.js
|
|
8425
8906
|
const C_UNDERSCORE = 95;
|
|
8426
8907
|
const C_ASTERISK = 42;
|
|
8427
8908
|
const reTrailingSpaces = / +$/;
|
|
@@ -8816,7 +9297,7 @@ var InlineParser = class {
|
|
|
8816
9297
|
const parseInlines = (source, refmap, position, dialect = "commonmark", footnoteLabels = /* @__PURE__ */ new Set()) => new InlineParser(source, inlineDialect(dialect), position, refmap, footnoteLabels).parse();
|
|
8817
9298
|
|
|
8818
9299
|
//#endregion
|
|
8819
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
9300
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/rawInline.js
|
|
8820
9301
|
const reWhitespace = /\s/;
|
|
8821
9302
|
const reCmarkSpace = /[ \t\n\r]/;
|
|
8822
9303
|
/**
|
|
@@ -8872,7 +9353,7 @@ const prepareInline = (block, position, refmap, dialect = "commonmark", footnote
|
|
|
8872
9353
|
};
|
|
8873
9354
|
|
|
8874
9355
|
//#endregion
|
|
8875
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
9356
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/blockParser.js
|
|
8876
9357
|
/** Upstream's cheap pre-filter: a line that cannot start any block. */
|
|
8877
9358
|
const reMaybeSpecial = /^[#`~*+_=<>0-9-]/;
|
|
8878
9359
|
var BlockParser = class {
|
|
@@ -9280,7 +9761,7 @@ var BlockParser = class {
|
|
|
9280
9761
|
const parseBlocks = (text, dialect = "commonmark", frontmatter = false) => new BlockParser(text, blockDialect(dialect), dialect, frontmatter).parse();
|
|
9281
9762
|
|
|
9282
9763
|
//#endregion
|
|
9283
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
9764
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/phrasing.js
|
|
9284
9765
|
const EMPTY_REFMAP = /* @__PURE__ */ new Map();
|
|
9285
9766
|
const EMPTY_FOOTNOTE_LABELS = /* @__PURE__ */ new Set();
|
|
9286
9767
|
/**
|
|
@@ -9330,7 +9811,7 @@ const parsePhrasingText = (text, dialect) => {
|
|
|
9330
9811
|
};
|
|
9331
9812
|
|
|
9332
9813
|
//#endregion
|
|
9333
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
9814
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/internal/stringify.js
|
|
9334
9815
|
const FLOW_CONTEXT = {
|
|
9335
9816
|
singleLine: false,
|
|
9336
9817
|
inTable: false,
|
|
@@ -10027,7 +10508,7 @@ const stringifyTree = (root) => {
|
|
|
10027
10508
|
};
|
|
10028
10509
|
|
|
10029
10510
|
//#endregion
|
|
10030
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
10511
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/Markdown.js
|
|
10031
10512
|
/**
|
|
10032
10513
|
* The markdown dialects the parser can be pointed at. `"gfm"` — CommonMark
|
|
10033
10514
|
* 0.31.2 plus the GitHub extensions (tables, strikethrough, autolink
|
|
@@ -10408,7 +10889,7 @@ var Markdown = class Markdown {
|
|
|
10408
10889
|
* @returns A `Schema.Codec<Root, string>`.
|
|
10409
10890
|
*/
|
|
10410
10891
|
static fromString(options) {
|
|
10411
|
-
return Schema.String.pipe(Schema.decodeTo(Root, SchemaTransformation.
|
|
10892
|
+
return Schema.String.pipe(Schema.decodeTo(Root, SchemaTransformation.transformEffect({
|
|
10412
10893
|
decode: (input) => Effect.mapError(Markdown.parse(input, options), (error) => new SchemaIssue.InvalidValue({ message: error.message }, input)),
|
|
10413
10894
|
encode: (value) => Effect.mapError(Markdown.stringify(value), (error) => new SchemaIssue.InvalidValue({ message: error.message }, value))
|
|
10414
10895
|
})));
|
|
@@ -10421,7 +10902,7 @@ var Markdown = class Markdown {
|
|
|
10421
10902
|
};
|
|
10422
10903
|
|
|
10423
10904
|
//#endregion
|
|
10424
|
-
//#region ../../node_modules/.pnpm/@effected+markdown@0.
|
|
10905
|
+
//#region ../../node_modules/.pnpm/@effected+markdown@0.10.0_@effected+jsonc@0.11.0_effect@4.0.0-rc.115__@effected+toml@0._fef2d84f4989873ee8536485b8b3c1ec/node_modules/@effected/markdown/Mdast.js
|
|
10425
10906
|
/**
|
|
10426
10907
|
* The remark-ecosystem interop boundary: projection between this package's
|
|
10427
10908
|
* node classes and plain mdast JSON.
|
|
@@ -24954,7 +25435,7 @@ function gfmStrikethrough(options) {
|
|
|
24954
25435
|
}
|
|
24955
25436
|
|
|
24956
25437
|
//#endregion
|
|
24957
|
-
//#region ../../node_modules/.pnpm/micromark-extension-gfm-table@2.1.
|
|
25438
|
+
//#region ../../node_modules/.pnpm/micromark-extension-gfm-table@2.1.2/node_modules/micromark-extension-gfm-table/lib/edit-map.js
|
|
24958
25439
|
/**
|
|
24959
25440
|
* @import {Event} from 'micromark-util-types'
|
|
24960
25441
|
*/
|
|
@@ -24976,14 +25457,25 @@ var EditMap = class {
|
|
|
24976
25457
|
* @type {Array<Change>}
|
|
24977
25458
|
*/
|
|
24978
25459
|
this.map = [];
|
|
25460
|
+
/**
|
|
25461
|
+
* Changes by index, so `add` does not scan `map` (quadratic on
|
|
25462
|
+
* table-heavy documents).
|
|
25463
|
+
*
|
|
25464
|
+
* @type {Map<number, Change>}
|
|
25465
|
+
*/
|
|
25466
|
+
this.index = /* @__PURE__ */ new Map();
|
|
24979
25467
|
}
|
|
24980
25468
|
/**
|
|
24981
25469
|
* Create an edit: a remove and/or add at a certain place.
|
|
24982
25470
|
*
|
|
24983
25471
|
* @param {number} index
|
|
25472
|
+
* Index at which to apply the edit.
|
|
24984
25473
|
* @param {number} remove
|
|
25474
|
+
* Count of items to remove at the index.
|
|
24985
25475
|
* @param {Array<Event>} add
|
|
25476
|
+
* Items to add at the index.
|
|
24986
25477
|
* @returns {undefined}
|
|
25478
|
+
* Nothing.
|
|
24987
25479
|
*/
|
|
24988
25480
|
add(index, remove, add) {
|
|
24989
25481
|
addImplementation(this, index, remove, add);
|
|
@@ -24992,7 +25484,9 @@ var EditMap = class {
|
|
|
24992
25484
|
* Done, change the events.
|
|
24993
25485
|
*
|
|
24994
25486
|
* @param {Array<Event>} events
|
|
25487
|
+
* List of events to apply the edits to.
|
|
24995
25488
|
* @returns {undefined}
|
|
25489
|
+
* Nothing.
|
|
24996
25490
|
*/
|
|
24997
25491
|
consume(events) {
|
|
24998
25492
|
this.map.sort(function(a, b) {
|
|
@@ -25016,38 +25510,44 @@ var EditMap = class {
|
|
|
25016
25510
|
slice = vecs.pop();
|
|
25017
25511
|
}
|
|
25018
25512
|
this.map.length = 0;
|
|
25513
|
+
this.index.clear();
|
|
25019
25514
|
}
|
|
25020
25515
|
};
|
|
25021
25516
|
/**
|
|
25022
25517
|
* Create an edit.
|
|
25023
25518
|
*
|
|
25024
25519
|
* @param {EditMap} editMap
|
|
25520
|
+
* Edit map to apply to.
|
|
25025
25521
|
* @param {number} at
|
|
25522
|
+
* Index at which to apply the edit.
|
|
25026
25523
|
* @param {number} remove
|
|
25524
|
+
* Count of items to remove at the index.
|
|
25027
25525
|
* @param {Array<Event>} add
|
|
25526
|
+
* Items to add at the index.
|
|
25028
25527
|
* @returns {undefined}
|
|
25528
|
+
* Nothing.
|
|
25029
25529
|
*/
|
|
25030
25530
|
function addImplementation(editMap, at, remove, add) {
|
|
25031
|
-
let index = 0;
|
|
25032
25531
|
/* c8 ignore next 3 -- `resolve` is never called without tables, so without edits. */
|
|
25033
25532
|
if (remove === 0 && add.length === 0) return;
|
|
25034
|
-
|
|
25035
|
-
|
|
25036
|
-
|
|
25037
|
-
|
|
25038
|
-
|
|
25039
|
-
}
|
|
25040
|
-
index += 1;
|
|
25533
|
+
const existing = editMap.index.get(at);
|
|
25534
|
+
if (existing) {
|
|
25535
|
+
existing[1] += remove;
|
|
25536
|
+
existing[2].push(...add);
|
|
25537
|
+
return;
|
|
25041
25538
|
}
|
|
25042
|
-
|
|
25539
|
+
/** @type {Change} */
|
|
25540
|
+
const change = [
|
|
25043
25541
|
at,
|
|
25044
25542
|
remove,
|
|
25045
25543
|
add
|
|
25046
|
-
]
|
|
25544
|
+
];
|
|
25545
|
+
editMap.map.push(change);
|
|
25546
|
+
editMap.index.set(at, change);
|
|
25047
25547
|
}
|
|
25048
25548
|
|
|
25049
25549
|
//#endregion
|
|
25050
|
-
//#region ../../node_modules/.pnpm/micromark-extension-gfm-table@2.1.
|
|
25550
|
+
//#region ../../node_modules/.pnpm/micromark-extension-gfm-table@2.1.2/node_modules/micromark-extension-gfm-table/lib/infer.js
|
|
25051
25551
|
/**
|
|
25052
25552
|
* @import {Event} from 'micromark-util-types'
|
|
25053
25553
|
*/
|
|
@@ -25086,7 +25586,7 @@ function gfmTableAlign(events, index) {
|
|
|
25086
25586
|
}
|
|
25087
25587
|
|
|
25088
25588
|
//#endregion
|
|
25089
|
-
//#region ../../node_modules/.pnpm/micromark-extension-gfm-table@2.1.
|
|
25589
|
+
//#region ../../node_modules/.pnpm/micromark-extension-gfm-table@2.1.2/node_modules/micromark-extension-gfm-table/lib/syntax.js
|
|
25090
25590
|
/**
|
|
25091
25591
|
* @import {Event, Extension, Point, Resolver, State, Token, TokenizeContext, Tokenizer} from 'micromark-util-types'
|
|
25092
25592
|
*/
|
|
@@ -25112,6 +25612,8 @@ function gfmTable() {
|
|
|
25112
25612
|
} } };
|
|
25113
25613
|
}
|
|
25114
25614
|
/**
|
|
25615
|
+
* Tokenizer for GFM tables.
|
|
25616
|
+
*
|
|
25115
25617
|
* @this {TokenizeContext}
|
|
25116
25618
|
* @type {Tokenizer}
|
|
25117
25619
|
*/
|
|
@@ -25141,7 +25643,7 @@ function tokenizeTable(effects, ok, nok) {
|
|
|
25141
25643
|
function start(code) {
|
|
25142
25644
|
let index = self.events.length - 1;
|
|
25143
25645
|
while (index > -1) {
|
|
25144
|
-
const type = self.events[index][1]
|
|
25646
|
+
const { type } = self.events[index][1];
|
|
25145
25647
|
if (type === "lineEnding" || type === "linePrefix") index--;
|
|
25146
25648
|
else break;
|
|
25147
25649
|
}
|
|
@@ -25670,12 +26172,19 @@ function resolveTable(events, context) {
|
|
|
25670
26172
|
* Generate a cell.
|
|
25671
26173
|
*
|
|
25672
26174
|
* @param {EditMap} map
|
|
26175
|
+
* Edit map to apply to.
|
|
25673
26176
|
* @param {Readonly<TokenizeContext>} context
|
|
26177
|
+
* Tokenize context.
|
|
25674
26178
|
* @param {Readonly<Range>} range
|
|
26179
|
+
* Range of the cell within events.
|
|
25675
26180
|
* @param {RowKind} rowKind
|
|
26181
|
+
* Type of row.
|
|
25676
26182
|
* @param {number | undefined} rowEnd
|
|
26183
|
+
* Index of the end of the row, if known.
|
|
25677
26184
|
* @param {Token | undefined} previousCell
|
|
26185
|
+
* Previous cell token, if any.
|
|
25678
26186
|
* @returns {Token | undefined}
|
|
26187
|
+
* Current cell token after flushing, if any.
|
|
25679
26188
|
*/
|
|
25680
26189
|
function flushCell(map, context, range, rowKind, rowEnd, previousCell) {
|
|
25681
26190
|
const groupName = rowKind === 1 ? "tableHeader" : rowKind === 2 ? "tableDelimiter" : "tableData";
|
|
@@ -25746,10 +26255,17 @@ function flushCell(map, context, range, rowKind, rowEnd, previousCell) {
|
|
|
25746
26255
|
* Generate table end (and table body end).
|
|
25747
26256
|
*
|
|
25748
26257
|
* @param {Readonly<EditMap>} map
|
|
26258
|
+
* Edit map to apply to.
|
|
25749
26259
|
* @param {Readonly<TokenizeContext>} context
|
|
26260
|
+
* Tokenize context.
|
|
25750
26261
|
* @param {number} index
|
|
26262
|
+
* Index within the events where the table end should be inserted.
|
|
25751
26263
|
* @param {Token} table
|
|
26264
|
+
* Table token.
|
|
25752
26265
|
* @param {Token | undefined} tableBody
|
|
26266
|
+
* Table body token, if any.
|
|
26267
|
+
* @returns {undefined}
|
|
26268
|
+
* Nothing.
|
|
25753
26269
|
*/
|
|
25754
26270
|
function flushTableEnd(map, context, index, table, tableBody) {
|
|
25755
26271
|
/** @type {Array<Event>} */
|
|
@@ -25772,9 +26288,14 @@ function flushTableEnd(map, context, index, table, tableBody) {
|
|
|
25772
26288
|
map.add(index + 1, 0, exits);
|
|
25773
26289
|
}
|
|
25774
26290
|
/**
|
|
26291
|
+
* Get the point (start or end) for a given event in the list of events.
|
|
26292
|
+
*
|
|
25775
26293
|
* @param {Readonly<Array<Event>>} events
|
|
26294
|
+
* List of events.
|
|
25776
26295
|
* @param {number} index
|
|
26296
|
+
* Index of the event to get the point for.
|
|
25777
26297
|
* @returns {Readonly<Point>}
|
|
26298
|
+
* Start point for enter and end point for exit.
|
|
25778
26299
|
*/
|
|
25779
26300
|
function getPoint(events, index) {
|
|
25780
26301
|
const event = events[index];
|
|
@@ -31256,423 +31777,6 @@ function parseCommitMessage(message) {
|
|
|
31256
31777
|
return { description: message };
|
|
31257
31778
|
}
|
|
31258
31779
|
|
|
31259
|
-
//#endregion
|
|
31260
|
-
//#region ../../node_modules/.pnpm/@effected+github-references@0.2.0_effect@4.0.0-rc.112/node_modules/@effected/github-references/IssueReferences.js
|
|
31261
|
-
/**
|
|
31262
|
-
* GitHub's closing-keyword issue-reference grammar, as pure functions.
|
|
31263
|
-
*
|
|
31264
|
-
* @remarks
|
|
31265
|
-
* GitHub links an issue to a pull request when the PR's description carries
|
|
31266
|
-
* `<keyword> #<number>` for one of nine documented keywords. Consumers speak
|
|
31267
|
-
* that grammar in two distinct dialects, and this module models exactly those
|
|
31268
|
-
* two — no service, no layer, nothing but strings in and values out:
|
|
31269
|
-
*
|
|
31270
|
-
* - **Inline-in-prose** ({@link harvestIssueReferences}): a reference may appear anywhere in
|
|
31271
|
-
* running text — `"fixes #12 and closes #13"` — with mandatory whitespace
|
|
31272
|
-
* and **no colon**, because that is the spelling GitHub itself scans PR
|
|
31273
|
-
* bodies for. This is the dialect a release pipeline harvests from commit
|
|
31274
|
-
* subjects and PR descriptions.
|
|
31275
|
-
* - **Bare-line** ({@link parseBareLineReference}): the whole line, after trimming, *is*
|
|
31276
|
-
* the reference — `"Closes: #12"` — with an **optional colon**, because a
|
|
31277
|
-
* generated references region writes one reference per line and a colon
|
|
31278
|
-
* reads better there. GitHub does not require the colon; the region format
|
|
31279
|
-
* allows it, so the parser must too. The dialects differ because their
|
|
31280
|
-
* producers do: prose is written by humans for GitHub's scanner, the region
|
|
31281
|
-
* is written by tooling for humans.
|
|
31282
|
-
*
|
|
31283
|
-
* Deliberately out of scope this round: cross-repo references
|
|
31284
|
-
* (`owner/repo#N`) and full-URL references
|
|
31285
|
-
* (`https://github.com/owner/repo/issues/N`). Both are real GitHub spellings;
|
|
31286
|
-
* neither dialect's consumers emit them yet, and guessing at their shape here
|
|
31287
|
-
* would freeze an API nobody has driven.
|
|
31288
|
-
*/
|
|
31289
|
-
/**
|
|
31290
|
-
* The nine closing keywords GitHub documents, lowercased.
|
|
31291
|
-
*
|
|
31292
|
-
* @public
|
|
31293
|
-
*/
|
|
31294
|
-
const CLOSING_KEYWORDS = [
|
|
31295
|
-
"close",
|
|
31296
|
-
"closes",
|
|
31297
|
-
"closed",
|
|
31298
|
-
"fix",
|
|
31299
|
-
"fixes",
|
|
31300
|
-
"fixed",
|
|
31301
|
-
"resolve",
|
|
31302
|
-
"resolves",
|
|
31303
|
-
"resolved"
|
|
31304
|
-
];
|
|
31305
|
-
/**
|
|
31306
|
-
* Both patterns derive from {@link CLOSING_KEYWORDS} so the constant and the
|
|
31307
|
-
* grammar cannot drift. Alternation order is safe: the regex engine backtracks
|
|
31308
|
-
* through alternatives, so `close` matching inside `closes` fails at the
|
|
31309
|
-
* mandatory `#`-introducer and retries the longer keyword.
|
|
31310
|
-
*/
|
|
31311
|
-
const KEYWORDS = CLOSING_KEYWORDS.join("|");
|
|
31312
|
-
/** Inline-in-prose: mandatory whitespace, no colon. */
|
|
31313
|
-
const INLINE_PATTERN = new RegExp(`\\b(${KEYWORDS})\\s+#(\\d+)`, "gi");
|
|
31314
|
-
/**
|
|
31315
|
-
* Bare-line: optional colon, then mandatory same-line whitespace. `[ \t]`
|
|
31316
|
-
* rather than `\s`, so an embedded newline cannot smuggle two lines past a
|
|
31317
|
-
* parser whose contract is one.
|
|
31318
|
-
*/
|
|
31319
|
-
const BARE_LINE_PATTERN = new RegExp(`^(${KEYWORDS}):?[ \\t]+#(\\d+)$`, "i");
|
|
31320
|
-
|
|
31321
|
-
//#endregion
|
|
31322
|
-
//#region ../../node_modules/.pnpm/@effected+github-references@0.2.0_effect@4.0.0-rc.112/node_modules/@effected/github-references/ClosingList.js
|
|
31323
|
-
/**
|
|
31324
|
-
* The closing-list dialect: one whole line naming several issues at once.
|
|
31325
|
-
*
|
|
31326
|
-
* @remarks
|
|
31327
|
-
* The third dialect, alongside the two in `IssueReferences`: after trimming,
|
|
31328
|
-
* the **entire** line must be `<keyword>[:] <list>` — keyword
|
|
31329
|
-
* case-insensitive (lowercased to canonical form in the result), colon
|
|
31330
|
-
* optional, and the list one or more `#<digits>` items separated by `,`,
|
|
31331
|
-
* `and`, or the Oxford `, and`. Whitespace inside the line is `[ \t]` only,
|
|
31332
|
-
* so an embedded newline cannot smuggle two lines past a parser whose
|
|
31333
|
-
* contract is one — the same posture as the bare-line pattern. Any trailing
|
|
31334
|
-
* content after the list rejects the line; duplicates are preserved in order,
|
|
31335
|
-
* because whether `#1, #1` means one issue or two is the caller's business.
|
|
31336
|
-
*
|
|
31337
|
-
* Two keyword sets play here. {@link parseClosingList} accepts only the nine
|
|
31338
|
-
* closing keywords and yields a {@link ClosingList}; {@link parseReferenceList}
|
|
31339
|
-
* additionally accepts the non-closing {@link REFERENCE_KEYWORDS} (`ref`,
|
|
31340
|
-
* `refs`, `references`) and reports which set matched via
|
|
31341
|
-
* {@link ReferenceList}'s `closing` flag.
|
|
31342
|
-
*
|
|
31343
|
-
* An item whose digits exceed `Number.MAX_SAFE_INTEGER` rejects the **whole
|
|
31344
|
-
* line**, where `harvestIssueReferences` merely skips the one match. The
|
|
31345
|
-
* asymmetry is deliberate: a harvest drops one reference out of running
|
|
31346
|
-
* prose, but a list line is a single claim about a set of issues, and
|
|
31347
|
-
* returning the parseable subset would misrepresent the line as claiming
|
|
31348
|
-
* less than it does.
|
|
31349
|
-
*
|
|
31350
|
-
* Complexity posture: parsing is a single left-to-right character scan —
|
|
31351
|
-
* this module contains **no regular expressions at all** — so worst-case
|
|
31352
|
-
* time is linear in the line length by construction. There is no
|
|
31353
|
-
* backtracking engine to feed, no polynomial blow-up for a scanner to flag,
|
|
31354
|
-
* and therefore no input truncation.
|
|
31355
|
-
*
|
|
31356
|
-
* Beyond the whole-line parsers, {@link harvestReferenceLists} generalizes
|
|
31357
|
-
* the same list grammar to the inline-in-prose posture — several lists on
|
|
31358
|
-
* one line of running text — and {@link parseClosingLists} /
|
|
31359
|
-
* {@link parseReferenceLists} apply the whole-line parsers per line of a
|
|
31360
|
-
* multi-line text. All of them ride the same character scan; the no-regex
|
|
31361
|
-
* promise above covers every export here.
|
|
31362
|
-
*/
|
|
31363
|
-
/**
|
|
31364
|
-
* The non-closing reference keywords the list dialect accepts, lowercased.
|
|
31365
|
-
*
|
|
31366
|
-
* @remarks
|
|
31367
|
-
* GitHub does not act on these — they associate without closing — but a
|
|
31368
|
-
* references region writes them, so the parser must read them.
|
|
31369
|
-
*
|
|
31370
|
-
* @public
|
|
31371
|
-
*/
|
|
31372
|
-
const REFERENCE_KEYWORDS = [
|
|
31373
|
-
"ref",
|
|
31374
|
-
"refs",
|
|
31375
|
-
"references"
|
|
31376
|
-
];
|
|
31377
|
-
/**
|
|
31378
|
-
* Both keyword tables ARE the exported constants — membership sets built from
|
|
31379
|
-
* them once — so the constants and the grammar cannot drift.
|
|
31380
|
-
*/
|
|
31381
|
-
const ALL_KEYWORDS = /* @__PURE__ */ new Set([...CLOSING_KEYWORDS, ...REFERENCE_KEYWORDS]);
|
|
31382
|
-
/** Membership test for reporting `closing`, widened once so no call casts. */
|
|
31383
|
-
const CLOSING_SET = new Set(CLOSING_KEYWORDS);
|
|
31384
|
-
const HASH = 35;
|
|
31385
|
-
const COLON = 58;
|
|
31386
|
-
const COMMA = 44;
|
|
31387
|
-
/** `[ \t]` — the only whitespace the dialect admits, per the module remarks. */
|
|
31388
|
-
const isSpaceTab = (code) => code === 32 || code === 9;
|
|
31389
|
-
const isDigit$1 = (code) => code >= 48 && code <= 57;
|
|
31390
|
-
const isAsciiLetter = (code) => code >= 65 && code <= 90 || code >= 97 && code <= 122;
|
|
31391
|
-
/** The index after the run of `[ \t]` starting at `from` (possibly `from` itself). */
|
|
31392
|
-
const skipSpaceTab = (line, from) => {
|
|
31393
|
-
let index = from;
|
|
31394
|
-
while (index < line.length && isSpaceTab(line.charCodeAt(index))) index += 1;
|
|
31395
|
-
return index;
|
|
31396
|
-
};
|
|
31397
|
-
/**
|
|
31398
|
-
* One list item at exactly `from`: `#<digits>` and the index one past it.
|
|
31399
|
-
* Digits exceeding `Number.MAX_SAFE_INTEGER` report `"unsafe"` rather than a
|
|
31400
|
-
* silently rounded issue number, still carrying the index one past the digit
|
|
31401
|
-
* run so a caller can skip the item's extent; the whole-line parsers reject
|
|
31402
|
-
* on it and {@link harvestReferenceLists} abandons the entire candidate —
|
|
31403
|
-
* see the module remarks for why a list never yields a partial reading.
|
|
31404
|
-
* Anything that is not `#<digits>` at all is `undefined`.
|
|
31405
|
-
*/
|
|
31406
|
-
const readItem = (line, from) => {
|
|
31407
|
-
if (line.charCodeAt(from) !== HASH) return void 0;
|
|
31408
|
-
const start = from + 1;
|
|
31409
|
-
let index = start;
|
|
31410
|
-
while (index < line.length && isDigit$1(line.charCodeAt(index))) index += 1;
|
|
31411
|
-
if (index === start) return void 0;
|
|
31412
|
-
const value = Number(line.slice(start, index));
|
|
31413
|
-
return Number.isSafeInteger(value) ? {
|
|
31414
|
-
kind: "item",
|
|
31415
|
-
value,
|
|
31416
|
-
next: index
|
|
31417
|
-
} : {
|
|
31418
|
-
kind: "unsafe",
|
|
31419
|
-
next: index
|
|
31420
|
-
};
|
|
31421
|
-
};
|
|
31422
|
-
/**
|
|
31423
|
-
* One separator at exactly `from`: a comma with optional surrounding `[ \t]`
|
|
31424
|
-
* and an optional Oxford `and` (consumed only when its own trailing `[ \t]+`
|
|
31425
|
-
* is present), or a bare `and` requiring `[ \t]+` on both sides. `and` is
|
|
31426
|
-
* lowercase-only — the keyword head is case-insensitive, the separator is
|
|
31427
|
-
* not. Returns the index where the next item must start, or `undefined` when
|
|
31428
|
-
* no separator is present.
|
|
31429
|
-
*/
|
|
31430
|
-
const scanSeparator = (line, from) => {
|
|
31431
|
-
const afterLeading = skipSpaceTab(line, from);
|
|
31432
|
-
if (line.charCodeAt(afterLeading) === COMMA) {
|
|
31433
|
-
const afterComma = skipSpaceTab(line, afterLeading + 1);
|
|
31434
|
-
if (line.startsWith("and", afterComma)) {
|
|
31435
|
-
const afterAnd = skipSpaceTab(line, afterComma + 3);
|
|
31436
|
-
if (afterAnd > afterComma + 3) return afterAnd;
|
|
31437
|
-
}
|
|
31438
|
-
return afterComma;
|
|
31439
|
-
}
|
|
31440
|
-
if (afterLeading > from && line.startsWith("and", afterLeading)) {
|
|
31441
|
-
const afterAnd = skipSpaceTab(line, afterLeading + 3);
|
|
31442
|
-
if (afterAnd > afterLeading + 3) return afterAnd;
|
|
31443
|
-
}
|
|
31444
|
-
};
|
|
31445
|
-
/**
|
|
31446
|
-
* The scan walk: item, then separator, then item, until the cursor stands
|
|
31447
|
-
* exactly at the end of the string. Anything else — a malformed item, an
|
|
31448
|
-
* unknown separator, trailing content, an unsafe issue number — is
|
|
31449
|
-
* `undefined`, and the caller rejects the whole line.
|
|
31450
|
-
*/
|
|
31451
|
-
const parseItems = (line, from) => {
|
|
31452
|
-
const issueNumbers = [];
|
|
31453
|
-
let cursor = from;
|
|
31454
|
-
for (;;) {
|
|
31455
|
-
const item = readItem(line, cursor);
|
|
31456
|
-
if (item === void 0 || item.kind === "unsafe") return void 0;
|
|
31457
|
-
issueNumbers.push(item.value);
|
|
31458
|
-
cursor = item.next;
|
|
31459
|
-
if (cursor === line.length) return issueNumbers;
|
|
31460
|
-
const next = scanSeparator(line, cursor);
|
|
31461
|
-
if (next === void 0) return void 0;
|
|
31462
|
-
cursor = next;
|
|
31463
|
-
}
|
|
31464
|
-
};
|
|
31465
|
-
/**
|
|
31466
|
-
* The list a whole line carries under either keyword set, or `Option.none()`.
|
|
31467
|
-
*
|
|
31468
|
-
* @remarks
|
|
31469
|
-
* Accepts the nine closing keywords plus {@link REFERENCE_KEYWORDS}, and
|
|
31470
|
-
* reports which set matched in the result's `closing` flag. Grammar,
|
|
31471
|
-
* whole-line posture and the whole-line rejection of unsafe issue numbers
|
|
31472
|
-
* are in the module remarks.
|
|
31473
|
-
*
|
|
31474
|
-
* @public
|
|
31475
|
-
*/
|
|
31476
|
-
const parseReferenceList = (line) => {
|
|
31477
|
-
const trimmed = line.trim();
|
|
31478
|
-
let letters = 0;
|
|
31479
|
-
while (letters < trimmed.length && isAsciiLetter(trimmed.charCodeAt(letters))) letters += 1;
|
|
31480
|
-
if (letters === 0) return Option.none();
|
|
31481
|
-
const keyword = trimmed.slice(0, letters).toLowerCase();
|
|
31482
|
-
if (!ALL_KEYWORDS.has(keyword)) return Option.none();
|
|
31483
|
-
let cursor = letters;
|
|
31484
|
-
if (trimmed.charCodeAt(cursor) === COLON) cursor += 1;
|
|
31485
|
-
const afterWhitespace = skipSpaceTab(trimmed, cursor);
|
|
31486
|
-
if (afterWhitespace === cursor) return Option.none();
|
|
31487
|
-
const issueNumbers = parseItems(trimmed, afterWhitespace);
|
|
31488
|
-
if (issueNumbers === void 0) return Option.none();
|
|
31489
|
-
return Option.some({
|
|
31490
|
-
keyword,
|
|
31491
|
-
closing: CLOSING_SET.has(keyword),
|
|
31492
|
-
issueNumbers
|
|
31493
|
-
});
|
|
31494
|
-
};
|
|
31495
|
-
/**
|
|
31496
|
-
* Every reference list a text carries, line by line, across both postures.
|
|
31497
|
-
*
|
|
31498
|
-
* @remarks
|
|
31499
|
-
* The trailer/prose interleave consumers otherwise hand-roll: each line is
|
|
31500
|
-
* tried as a whole-line reference list first ({@link parseReferenceList} —
|
|
31501
|
-
* colon-tolerant, per the line dialect), and only a line that is not one is
|
|
31502
|
-
* harvested inline ({@link harvestReferenceLists} — no colon, per the inline
|
|
31503
|
-
* dialect). The preference means a colon-less trailer line contributes its
|
|
31504
|
-
* list exactly once, never once per posture.
|
|
31505
|
-
*
|
|
31506
|
-
* Results carry no offsets, deliberately: this is the line-granular
|
|
31507
|
-
* composition, and a consumer that needs spans uses
|
|
31508
|
-
* {@link harvestReferenceLists} directly. Duplicates are preserved, in
|
|
31509
|
-
* document order.
|
|
31510
|
-
*
|
|
31511
|
-
* @public
|
|
31512
|
-
*/
|
|
31513
|
-
const collectReferenceLists = (text) => {
|
|
31514
|
-
const lists = [];
|
|
31515
|
-
for (const line of text.split("\n")) {
|
|
31516
|
-
const whole = parseReferenceList(line);
|
|
31517
|
-
if (Option.isSome(whole)) {
|
|
31518
|
-
lists.push(whole.value);
|
|
31519
|
-
continue;
|
|
31520
|
-
}
|
|
31521
|
-
for (const harvested of harvestReferenceLists(line)) lists.push({
|
|
31522
|
-
keyword: harvested.keyword,
|
|
31523
|
-
closing: harvested.closing,
|
|
31524
|
-
issueNumbers: harvested.issueNumbers
|
|
31525
|
-
});
|
|
31526
|
-
}
|
|
31527
|
-
return lists;
|
|
31528
|
-
};
|
|
31529
|
-
/** `[A-Za-z0-9_]` — the word-boundary alphabet the inline dialects use. */
|
|
31530
|
-
const isWordChar = (code) => isAsciiLetter(code) || isDigit$1(code) || code === 95;
|
|
31531
|
-
/**
|
|
31532
|
-
* The full JavaScript `\s` set, spelled as a predicate so the module keeps
|
|
31533
|
-
* its no-regex promise: ASCII whitespace, NEL-adjacent controls, and the
|
|
31534
|
-
* Unicode space separators. Only the keyword→first-item gap of
|
|
31535
|
-
* {@link harvestReferenceLists} admits this set — everything inside a list
|
|
31536
|
-
* stays `[ \t]`, per the module remarks.
|
|
31537
|
-
*/
|
|
31538
|
-
const isAnyWhitespace = (code) => code === 32 || code >= 9 && code <= 13 || code === 160 || code === 5760 || code >= 8192 && code <= 8202 || code === 8232 || code === 8233 || code === 8239 || code === 8287 || code === 12288 || code === 65279;
|
|
31539
|
-
/**
|
|
31540
|
-
* Every reference list found inline in `text`, in document order.
|
|
31541
|
-
*
|
|
31542
|
-
* @remarks
|
|
31543
|
-
* The inline-in-prose posture generalized to lists:
|
|
31544
|
-
* `Closes #123, Fixes #456` in one line of a commit body yields two
|
|
31545
|
-
* single-item lists, where
|
|
31546
|
-
* `harvestIssueReferences` reads only the first reference of each and the
|
|
31547
|
-
* whole-line parsers read neither. The grammar per candidate:
|
|
31548
|
-
*
|
|
31549
|
-
* - The keyword is case-insensitive, drawn from either keyword set,
|
|
31550
|
-
* lowercased to canonical form in the result, with `closing` reported by
|
|
31551
|
-
* set membership. Word boundaries hold on both sides: the characters
|
|
31552
|
-
* immediately before and after the keyword's letter run must not be
|
|
31553
|
-
* `[A-Za-z0-9_]`, so `recloses #1` and `1closes #1` do not match.
|
|
31554
|
-
* - **No colon** — exactly like `harvestIssueReferences`, the colon spelling
|
|
31555
|
-
* belongs to the line dialects ({@link parseReferenceList} and the
|
|
31556
|
-
* bare-line parser), so `closes: #1` inline yields nothing.
|
|
31557
|
-
* - The keyword→first-item gap is any run of whitespace **including
|
|
31558
|
-
* newlines**, mirroring the inline dialect's `\s+`.
|
|
31559
|
-
* - List continuation uses the `,` / `and` / Oxford separators with `[ \t]`
|
|
31560
|
-
* whitespace only, so a list cannot continue past a newline — a later
|
|
31561
|
-
* line makes its own claims.
|
|
31562
|
-
* - Items are `#<digits>`; duplicates are preserved in order.
|
|
31563
|
-
*
|
|
31564
|
-
* A list ends at its last valid item: in `closes #1 and fixes #2` the
|
|
31565
|
-
* ` and ` before `fixes` fails as a separator because what follows is not
|
|
31566
|
-
* `#`, so the text yields `closes: [1]` then `fixes: [2]`. An item past
|
|
31567
|
-
* `Number.MAX_SAFE_INTEGER` anywhere in a candidate skips the **entire**
|
|
31568
|
-
* candidate — never a partial list, for the same reason
|
|
31569
|
-
* {@link parseReferenceList} rejects the whole line — and scanning resumes
|
|
31570
|
-
* after the candidate's scanned extent.
|
|
31571
|
-
*
|
|
31572
|
-
* Like everything in this module, the harvest is a single left-to-right
|
|
31573
|
-
* character scan with no regular expressions, so time stays linear in the
|
|
31574
|
-
* text length and no input is truncated.
|
|
31575
|
-
*
|
|
31576
|
-
* @public
|
|
31577
|
-
*/
|
|
31578
|
-
const harvestReferenceLists = (text) => {
|
|
31579
|
-
const lists = [];
|
|
31580
|
-
let index = 0;
|
|
31581
|
-
while (index < text.length) {
|
|
31582
|
-
if (!isAsciiLetter(text.charCodeAt(index))) {
|
|
31583
|
-
index += 1;
|
|
31584
|
-
continue;
|
|
31585
|
-
}
|
|
31586
|
-
const runStart = index;
|
|
31587
|
-
let runEnd = index + 1;
|
|
31588
|
-
while (runEnd < text.length && isAsciiLetter(text.charCodeAt(runEnd))) runEnd += 1;
|
|
31589
|
-
if (runStart > 0 && isWordChar(text.charCodeAt(runStart - 1)) || runEnd < text.length && isWordChar(text.charCodeAt(runEnd))) {
|
|
31590
|
-
index = runEnd;
|
|
31591
|
-
continue;
|
|
31592
|
-
}
|
|
31593
|
-
const keyword = text.slice(runStart, runEnd).toLowerCase();
|
|
31594
|
-
if (!ALL_KEYWORDS.has(keyword)) {
|
|
31595
|
-
index = runEnd;
|
|
31596
|
-
continue;
|
|
31597
|
-
}
|
|
31598
|
-
let cursor = runEnd;
|
|
31599
|
-
while (cursor < text.length && isAnyWhitespace(text.charCodeAt(cursor))) cursor += 1;
|
|
31600
|
-
const first = cursor === runEnd ? void 0 : readItem(text, cursor);
|
|
31601
|
-
if (first === void 0) {
|
|
31602
|
-
index = runEnd;
|
|
31603
|
-
continue;
|
|
31604
|
-
}
|
|
31605
|
-
if (first.kind === "unsafe") {
|
|
31606
|
-
index = first.next;
|
|
31607
|
-
continue;
|
|
31608
|
-
}
|
|
31609
|
-
const issueNumbers = [first.value];
|
|
31610
|
-
let end = first.next;
|
|
31611
|
-
let unsafeNext;
|
|
31612
|
-
for (;;) {
|
|
31613
|
-
const next = scanSeparator(text, end);
|
|
31614
|
-
if (next === void 0) break;
|
|
31615
|
-
const item = readItem(text, next);
|
|
31616
|
-
if (item === void 0) break;
|
|
31617
|
-
if (item.kind === "unsafe") {
|
|
31618
|
-
unsafeNext = item.next;
|
|
31619
|
-
break;
|
|
31620
|
-
}
|
|
31621
|
-
issueNumbers.push(item.value);
|
|
31622
|
-
end = item.next;
|
|
31623
|
-
}
|
|
31624
|
-
if (unsafeNext !== void 0) {
|
|
31625
|
-
index = unsafeNext;
|
|
31626
|
-
continue;
|
|
31627
|
-
}
|
|
31628
|
-
lists.push({
|
|
31629
|
-
keyword,
|
|
31630
|
-
closing: CLOSING_SET.has(keyword),
|
|
31631
|
-
issueNumbers,
|
|
31632
|
-
start: runStart,
|
|
31633
|
-
end
|
|
31634
|
-
});
|
|
31635
|
-
index = end;
|
|
31636
|
-
}
|
|
31637
|
-
return lists;
|
|
31638
|
-
};
|
|
31639
|
-
|
|
31640
|
-
//#endregion
|
|
31641
|
-
//#region ../../node_modules/.pnpm/@effected+github-references@0.2.0_effect@4.0.0-rc.112/node_modules/@effected/github-references/KeywordFamily.js
|
|
31642
|
-
/**
|
|
31643
|
-
* The projection table IS the totality proof: `Record` over the union of
|
|
31644
|
-
* both keyword types makes a keyword added to either constant without an
|
|
31645
|
-
* entry here fail to compile.
|
|
31646
|
-
*/
|
|
31647
|
-
const FAMILIES = {
|
|
31648
|
-
close: "close",
|
|
31649
|
-
closes: "close",
|
|
31650
|
-
closed: "close",
|
|
31651
|
-
fix: "fix",
|
|
31652
|
-
fixes: "fix",
|
|
31653
|
-
fixed: "fix",
|
|
31654
|
-
resolve: "resolve",
|
|
31655
|
-
resolves: "resolve",
|
|
31656
|
-
resolved: "resolve",
|
|
31657
|
-
ref: "ref",
|
|
31658
|
-
refs: "ref",
|
|
31659
|
-
references: "ref"
|
|
31660
|
-
};
|
|
31661
|
-
/**
|
|
31662
|
-
* The family a keyword belongs to.
|
|
31663
|
-
*
|
|
31664
|
-
* @remarks
|
|
31665
|
-
* Total over both keyword sets by construction — see the module remarks for
|
|
31666
|
-
* why an explicit record beats a `startsWith` heuristic. `close`, `closes`
|
|
31667
|
-
* and `closed` map to `"close"`; the `fix` and `resolve` conjugations
|
|
31668
|
-
* likewise; `ref`, `refs` and `references` map to `"ref"`. The evidence for
|
|
31669
|
-
* the projection is downstream: categorized harvesters key maps by family,
|
|
31670
|
-
* and each was hand-rolling this collapse.
|
|
31671
|
-
*
|
|
31672
|
-
* @public
|
|
31673
|
-
*/
|
|
31674
|
-
const keywordFamily = (keyword) => FAMILIES[keyword];
|
|
31675
|
-
|
|
31676
31780
|
//#endregion
|
|
31677
31781
|
//#region ../silk-effects/dist/dev/pkg/changesets/utils/issue-refs.js
|
|
31678
31782
|
/**
|
|
@@ -31740,42 +31844,6 @@ function parseIssueReferences(commitMessage) {
|
|
|
31740
31844
|
return references;
|
|
31741
31845
|
}
|
|
31742
31846
|
|
|
31743
|
-
//#endregion
|
|
31744
|
-
//#region ../silk-effects/dist/dev/pkg/changesets/utils/logger.js
|
|
31745
|
-
/**
|
|
31746
|
-
* Log a warning message.
|
|
31747
|
-
*
|
|
31748
|
-
* @remarks
|
|
31749
|
-
* Detection order:
|
|
31750
|
-
* 1. If `process.env.VITEST` is set, the message is silently discarded.
|
|
31751
|
-
* 2. If `process.env.GITHUB_ACTIONS === "true"`, the message is emitted
|
|
31752
|
-
* as a `::warning::` annotation.
|
|
31753
|
-
* 3. Otherwise, `console.warn` is used.
|
|
31754
|
-
*
|
|
31755
|
-
* @param message - The warning message
|
|
31756
|
-
* @param args - Additional arguments (concatenated with a space in CI mode)
|
|
31757
|
-
*
|
|
31758
|
-
* @example
|
|
31759
|
-
* ```typescript
|
|
31760
|
-
* import { logWarning } from "../utils/logger.js";
|
|
31761
|
-
*
|
|
31762
|
-
* logWarning("Duplicate dependency entry", "effect@3.19.0");
|
|
31763
|
-
* // In CI: "::warning::Duplicate dependency entry effect@3.19.0"
|
|
31764
|
-
* // Locally: console.warn("Duplicate dependency entry", "effect@3.19.0")
|
|
31765
|
-
* ```
|
|
31766
|
-
*
|
|
31767
|
-
* @internal
|
|
31768
|
-
*/
|
|
31769
|
-
function logWarning(message, ...args) {
|
|
31770
|
-
/* v8 ignore start — environment-specific */
|
|
31771
|
-
if (typeof process !== "undefined" && process.env.VITEST) return;
|
|
31772
|
-
if (typeof process !== "undefined" && process.env.GITHUB_ACTIONS === "true") {
|
|
31773
|
-
const text = args.length > 0 ? `${message} ${args.join(" ")}` : message;
|
|
31774
|
-
console.warn(`::warning::${text}`);
|
|
31775
|
-
} else console.warn(message, ...args);
|
|
31776
|
-
/* v8 ignore stop */
|
|
31777
|
-
}
|
|
31778
|
-
|
|
31779
31847
|
//#endregion
|
|
31780
31848
|
//#region ../silk-effects/dist/dev/pkg/changesets/utils/section-parser.js
|
|
31781
31849
|
/**
|
|
@@ -32148,10 +32216,7 @@ function getReleaseLine(changeset, versionType, options) {
|
|
|
32148
32216
|
if (changeset.commit) commitInfo = yield* (yield* GitHubService).getInfo({
|
|
32149
32217
|
commit: changeset.commit,
|
|
32150
32218
|
repo: options.repo
|
|
32151
|
-
}).pipe(Effect.flatMap((raw) => Schema.decodeUnknownEffect(GitHubInfoSchema)(raw).pipe(Effect.map(() => raw), Effect.catch(() => Effect.succeed(raw)))), Effect.catch((error) =>
|
|
32152
|
-
logWarning("Could not fetch GitHub info for commit:", changeset.commit ?? "", String(error));
|
|
32153
|
-
return Effect.succeed(null);
|
|
32154
|
-
}));
|
|
32219
|
+
}).pipe(Effect.flatMap((raw) => Schema.decodeUnknownEffect(GitHubInfoSchema)(raw).pipe(Effect.map(() => raw), Effect.catch(() => Effect.succeed(raw)))), Effect.catch((error) => logWarning("Could not fetch GitHub info for commit:", changeset.commit ?? "", String(error)).pipe(Effect.as(null))));
|
|
32155
32220
|
const parsed = parseChangesetSections(changeset.summary);
|
|
32156
32221
|
const firstLine = changeset.summary.split("\n")[0];
|
|
32157
32222
|
const commitMsg = parseCommitMessage(firstLine);
|
|
@@ -32250,31 +32315,50 @@ function getReleaseLine(changeset, versionType, options) {
|
|
|
32250
32315
|
*/
|
|
32251
32316
|
const MainLayer = GitHubService.layer;
|
|
32252
32317
|
/**
|
|
32253
|
-
* Changesets
|
|
32318
|
+
* Build a Changesets `ChangelogFunctions` implementation bound to a warning
|
|
32319
|
+
* mode.
|
|
32254
32320
|
*
|
|
32255
|
-
*
|
|
32256
|
-
*
|
|
32257
|
-
*
|
|
32258
|
-
*
|
|
32321
|
+
* @remarks
|
|
32322
|
+
* This module is engine code and reads no environment; the host that installs
|
|
32323
|
+
* the functions (the `\@savvy-web/changelog` package under the changesets CLI)
|
|
32324
|
+
* decides the mode from its own `process.env` and passes it here. Each method
|
|
32325
|
+
* validates options, runs the corresponding Effect program with the merged
|
|
32326
|
+
* service layer and the chosen {@link ChangesetLogMode}, and returns a
|
|
32327
|
+
* `Promise<string>`.
|
|
32259
32328
|
*
|
|
32260
|
-
* @
|
|
32329
|
+
* @param options - The warning mode to provide
|
|
32330
|
+
* @returns A `ChangelogFunctions` object for `.changeset/config.json`
|
|
32331
|
+
*
|
|
32332
|
+
* @public
|
|
32261
32333
|
*/
|
|
32262
|
-
|
|
32263
|
-
|
|
32264
|
-
const
|
|
32334
|
+
function makeChangelogFunctions(options = {}) {
|
|
32335
|
+
const run = (program) => {
|
|
32336
|
+
const provided = program.pipe(Effect.provide(MainLayer));
|
|
32337
|
+
return Effect.runPromise(options.logMode === void 0 ? provided : provided.pipe(Effect.provideService(ChangesetLogMode, options.logMode)));
|
|
32338
|
+
};
|
|
32339
|
+
return {
|
|
32340
|
+
getReleaseLine: async (changeset, versionType, options) => run(Effect.gen(function* () {
|
|
32265
32341
|
const opts = yield* validateChangesetOptions(options);
|
|
32266
32342
|
return yield* getReleaseLine(changeset, versionType, opts);
|
|
32267
|
-
})
|
|
32268
|
-
|
|
32269
|
-
},
|
|
32270
|
-
getDependencyReleaseLine: async (changesets, dependenciesUpdated, options) => {
|
|
32271
|
-
const program = Effect.gen(function* () {
|
|
32343
|
+
})),
|
|
32344
|
+
getDependencyReleaseLine: async (changesets, dependenciesUpdated, options) => run(Effect.gen(function* () {
|
|
32272
32345
|
const opts = yield* validateChangesetOptions(options);
|
|
32273
32346
|
return yield* getDependencyReleaseLine(changesets, dependenciesUpdated, opts);
|
|
32274
|
-
})
|
|
32275
|
-
|
|
32276
|
-
|
|
32277
|
-
|
|
32347
|
+
}))
|
|
32348
|
+
};
|
|
32349
|
+
}
|
|
32350
|
+
/**
|
|
32351
|
+
* Changesets API `ChangelogFunctions` implementation with the default warning
|
|
32352
|
+
* mode (`"stderr"`).
|
|
32353
|
+
*
|
|
32354
|
+
* @remarks
|
|
32355
|
+
* Equivalent to `makeChangelogFunctions()`. A host that runs under GitHub
|
|
32356
|
+
* Actions or a test runner should call {@link makeChangelogFunctions} with the
|
|
32357
|
+
* mode it detects instead.
|
|
32358
|
+
*
|
|
32359
|
+
* @internal
|
|
32360
|
+
*/
|
|
32361
|
+
const changelogFunctions$1 = makeChangelogFunctions();
|
|
32278
32362
|
|
|
32279
32363
|
//#endregion
|
|
32280
32364
|
//#region ../silk-effects/dist/dev/pkg/changesets/api/changelog.js
|
|
@@ -32380,10 +32464,13 @@ var Changelog = class {
|
|
|
32380
32464
|
* @param versionType - The semantic version bump type (`"major"`, `"minor"`, or `"patch"`)
|
|
32381
32465
|
* @param options - Configuration object; must include `repo` in `"owner/repo"` format.
|
|
32382
32466
|
* Pass `null` to use defaults (no GitHub link resolution).
|
|
32467
|
+
* @param logMode - How a failed GitHub lookup is reported (`"stderr"` when omitted);
|
|
32468
|
+
* the host reads its own environment and passes `"github"` / `"silent"` — this
|
|
32469
|
+
* engine never does. See `ChangesetLogMode`.
|
|
32383
32470
|
* @returns A promise resolving to the formatted markdown string
|
|
32384
32471
|
*/
|
|
32385
|
-
static async formatReleaseLine(changeset, versionType, options) {
|
|
32386
|
-
return
|
|
32472
|
+
static async formatReleaseLine(changeset, versionType, options, logMode) {
|
|
32473
|
+
return makeChangelogFunctions(logMode === void 0 ? {} : { logMode }).getReleaseLine(changeset, versionType, options);
|
|
32387
32474
|
}
|
|
32388
32475
|
/**
|
|
32389
32476
|
* Format dependency update release lines into a markdown table.
|
|
@@ -32398,11 +32485,13 @@ var Changelog = class {
|
|
|
32398
32485
|
* old/new versions and package metadata
|
|
32399
32486
|
* @param options - Configuration object; must include `repo` in `"owner/repo"` format.
|
|
32400
32487
|
* Pass `null` to use defaults.
|
|
32488
|
+
* @param logMode - How a failed GitHub lookup is reported (`"stderr"` when omitted);
|
|
32489
|
+
* see {@link Changelog.formatReleaseLine}.
|
|
32401
32490
|
* @returns A promise resolving to the formatted markdown string containing
|
|
32402
32491
|
* the dependency update table
|
|
32403
32492
|
*/
|
|
32404
|
-
static async formatDependencyReleaseLine(changesets, dependenciesUpdated, options) {
|
|
32405
|
-
return
|
|
32493
|
+
static async formatDependencyReleaseLine(changesets, dependenciesUpdated, options, logMode) {
|
|
32494
|
+
return makeChangelogFunctions(logMode === void 0 ? {} : { logMode }).getDependencyReleaseLine(changesets, dependenciesUpdated, options);
|
|
32406
32495
|
}
|
|
32407
32496
|
};
|
|
32408
32497
|
|
|
@@ -34191,7 +34280,7 @@ const LegacySavvyLintHygieneDef = SectionId.make({
|
|
|
34191
34280
|
});
|
|
34192
34281
|
|
|
34193
34282
|
//#endregion
|
|
34194
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
34283
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/limits.js
|
|
34195
34284
|
/** Hard cap on pattern length. Upstream minimatch's MAX_PATTERN_LENGTH (64KB). */
|
|
34196
34285
|
const MAX_PATTERN_LENGTH = 65536;
|
|
34197
34286
|
/** Default brace-expansion output budget. Upstream brace-expansion's EXPANSION_MAX. */
|
|
@@ -34226,7 +34315,7 @@ const assertCap = (name, value) => {
|
|
|
34226
34315
|
};
|
|
34227
34316
|
|
|
34228
34317
|
//#endregion
|
|
34229
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
34318
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/unescape.js
|
|
34230
34319
|
/**
|
|
34231
34320
|
* Un-escape a string that has been escaped with `escape`.
|
|
34232
34321
|
*
|
|
@@ -34250,12 +34339,12 @@ const unescapePattern = (s, { windowsPathsNoEscape = false, magicalBraces = true
|
|
|
34250
34339
|
};
|
|
34251
34340
|
|
|
34252
34341
|
//#endregion
|
|
34253
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
34342
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/types.js
|
|
34254
34343
|
/** The globstar marker in a compiled pattern set. */
|
|
34255
34344
|
const GLOBSTAR = Symbol("globstar **");
|
|
34256
34345
|
|
|
34257
34346
|
//#endregion
|
|
34258
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
34347
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/escape.js
|
|
34259
34348
|
/**
|
|
34260
34349
|
* Escape all magic characters in a glob pattern.
|
|
34261
34350
|
*
|
|
@@ -34274,14 +34363,14 @@ const escapePattern = (s, { windowsPathsNoEscape = false, magicalBraces = false
|
|
|
34274
34363
|
};
|
|
34275
34364
|
|
|
34276
34365
|
//#endregion
|
|
34277
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
34366
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/assertValidPattern.js
|
|
34278
34367
|
const assertValidPattern = (pattern) => {
|
|
34279
34368
|
if (typeof pattern !== "string") throw new TypeError("invalid pattern");
|
|
34280
34369
|
if (pattern.length > 65536) throw new GuardExceeded("PatternTooLong", MAX_PATTERN_LENGTH, pattern.length);
|
|
34281
34370
|
};
|
|
34282
34371
|
|
|
34283
34372
|
//#endregion
|
|
34284
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
34373
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/braceExpressions.js
|
|
34285
34374
|
const posixClasses = {
|
|
34286
34375
|
"[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
|
|
34287
34376
|
"[:alpha:]": ["\\p{L}\\p{Nl}", true],
|
|
@@ -34405,7 +34494,7 @@ const parseClass = (glob, position) => {
|
|
|
34405
34494
|
};
|
|
34406
34495
|
|
|
34407
34496
|
//#endregion
|
|
34408
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
34497
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/ast.js
|
|
34409
34498
|
const types = /* @__PURE__ */ new Set([
|
|
34410
34499
|
"!",
|
|
34411
34500
|
"?",
|
|
@@ -34923,7 +35012,7 @@ var AST = class AST {
|
|
|
34923
35012
|
};
|
|
34924
35013
|
|
|
34925
35014
|
//#endregion
|
|
34926
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
35015
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/balancedMatch.js
|
|
34927
35016
|
const maybeMatch = (reg, str) => {
|
|
34928
35017
|
const m = str.match(reg);
|
|
34929
35018
|
return m ? m[0] : null;
|
|
@@ -34982,7 +35071,7 @@ const range = (a, b, str) => {
|
|
|
34982
35071
|
};
|
|
34983
35072
|
|
|
34984
35073
|
//#endregion
|
|
34985
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
35074
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/braceExpansion.js
|
|
34986
35075
|
const escSlash = `\0SLASH${Math.random()}\0`;
|
|
34987
35076
|
const escOpen = `\0OPEN${Math.random()}\0`;
|
|
34988
35077
|
const escClose = `\0CLOSE${Math.random()}\0`;
|
|
@@ -35130,7 +35219,7 @@ function expand_(str, max, isTopInput, depth) {
|
|
|
35130
35219
|
}
|
|
35131
35220
|
|
|
35132
35221
|
//#endregion
|
|
35133
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
35222
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/internal/minimatch.js
|
|
35134
35223
|
const starDotExtRE = /^\*+([^+@!?*[(]*)$/;
|
|
35135
35224
|
const starDotExtTest = (ext) => (f) => !f.startsWith(".") && f.endsWith(ext);
|
|
35136
35225
|
const starDotExtTestDot = (ext) => (f) => f.endsWith(ext);
|
|
@@ -35704,7 +35793,7 @@ var Minimatch = class {
|
|
|
35704
35793
|
};
|
|
35705
35794
|
|
|
35706
35795
|
//#endregion
|
|
35707
|
-
//#region ../../node_modules/.pnpm/@effected+glob@0.
|
|
35796
|
+
//#region ../../node_modules/.pnpm/@effected+glob@0.6.0_effect@4.0.0-rc.115/node_modules/@effected/glob/GlobPattern.js
|
|
35708
35797
|
/**
|
|
35709
35798
|
* Typed failure raised when a glob pattern trips a compile-time guard:
|
|
35710
35799
|
* over-length, brace-expansion budget exhaustion, or nesting past the depth
|
|
@@ -35984,7 +36073,7 @@ var GlobPattern = class GlobPattern extends Schema.Class("GlobPattern")(Schema.S
|
|
|
35984
36073
|
};
|
|
35985
36074
|
|
|
35986
36075
|
//#endregion
|
|
35987
|
-
//#region ../../node_modules/.pnpm/@effected+walker@0.
|
|
36076
|
+
//#region ../../node_modules/.pnpm/@effected+walker@0.8.0_@effected+glob@0.6.0_effect@4.0.0-rc.115__effect@4.0.0-rc.115/node_modules/@effected/walker/Descend.js
|
|
35988
36077
|
/**
|
|
35989
36078
|
* Typed failure raised by `descend`: a directory mid-walk was unreadable
|
|
35990
36079
|
* (under `onUnreadable: "fail"`), or the walk descended past `maxDepth`. Depth
|
|
@@ -36103,7 +36192,7 @@ function descend(pattern, options) {
|
|
|
36103
36192
|
}
|
|
36104
36193
|
|
|
36105
36194
|
//#endregion
|
|
36106
|
-
//#region ../../node_modules/.pnpm/@effected+walker@0.
|
|
36195
|
+
//#region ../../node_modules/.pnpm/@effected+walker@0.8.0_@effected+glob@0.6.0_effect@4.0.0-rc.115__effect@4.0.0-rc.115/node_modules/@effected/walker/Expand.js
|
|
36107
36196
|
/**
|
|
36108
36197
|
* Typed failure raised by {@link compileAndExpand}: the single error the
|
|
36109
36198
|
* compile+expand recipe fails with, so a caller catches one tag rather than
|
|
@@ -41131,7 +41220,7 @@ function globSync(globInput, options) {
|
|
|
41131
41220
|
}
|
|
41132
41221
|
|
|
41133
41222
|
//#endregion
|
|
41134
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41223
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/identity.js
|
|
41135
41224
|
var require_identity = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41136
41225
|
const ALIAS = Symbol.for("yaml.alias");
|
|
41137
41226
|
const DOC = Symbol.for("yaml.document");
|
|
@@ -41182,7 +41271,7 @@ var require_identity = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41182
41271
|
}));
|
|
41183
41272
|
|
|
41184
41273
|
//#endregion
|
|
41185
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41274
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/visit.js
|
|
41186
41275
|
var require_visit = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41187
41276
|
var identity = require_identity();
|
|
41188
41277
|
const BREAK = Symbol("break visit");
|
|
@@ -41374,7 +41463,7 @@ var require_visit = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41374
41463
|
}));
|
|
41375
41464
|
|
|
41376
41465
|
//#endregion
|
|
41377
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41466
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/doc/directives.js
|
|
41378
41467
|
var require_directives = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41379
41468
|
var identity = require_identity();
|
|
41380
41469
|
var visit = require_visit();
|
|
@@ -41539,7 +41628,7 @@ var require_directives = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41539
41628
|
}));
|
|
41540
41629
|
|
|
41541
41630
|
//#endregion
|
|
41542
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41631
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/doc/anchors.js
|
|
41543
41632
|
var require_anchors = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41544
41633
|
var identity = require_identity();
|
|
41545
41634
|
var visit = require_visit();
|
|
@@ -41607,7 +41696,7 @@ var require_anchors = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41607
41696
|
}));
|
|
41608
41697
|
|
|
41609
41698
|
//#endregion
|
|
41610
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41699
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/doc/applyReviver.js
|
|
41611
41700
|
var require_applyReviver = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41612
41701
|
/**
|
|
41613
41702
|
* Applies the JSON.parse reviver algorithm as defined in the ECMA-262 spec,
|
|
@@ -41650,7 +41739,7 @@ var require_applyReviver = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41650
41739
|
}));
|
|
41651
41740
|
|
|
41652
41741
|
//#endregion
|
|
41653
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41742
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/toJS.js
|
|
41654
41743
|
var require_toJS = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41655
41744
|
var identity = require_identity();
|
|
41656
41745
|
/**
|
|
@@ -41688,7 +41777,7 @@ var require_toJS = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41688
41777
|
}));
|
|
41689
41778
|
|
|
41690
41779
|
//#endregion
|
|
41691
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41780
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/Node.js
|
|
41692
41781
|
var require_Node = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41693
41782
|
var applyReviver = require_applyReviver();
|
|
41694
41783
|
var identity = require_identity();
|
|
@@ -41723,7 +41812,7 @@ var require_Node = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41723
41812
|
}));
|
|
41724
41813
|
|
|
41725
41814
|
//#endregion
|
|
41726
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41815
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/Alias.js
|
|
41727
41816
|
var require_Alias = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41728
41817
|
var anchors = require_anchors();
|
|
41729
41818
|
var visit = require_visit();
|
|
@@ -41758,29 +41847,31 @@ var require_Alias = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41758
41847
|
if (node === this) break;
|
|
41759
41848
|
if (node.anchor === this.source) found = node;
|
|
41760
41849
|
}
|
|
41850
|
+
if (found && ctx) {
|
|
41851
|
+
const { anchors, doc, maxAliasCount } = ctx;
|
|
41852
|
+
let data = anchors.get(found);
|
|
41853
|
+
if (!data) {
|
|
41854
|
+
toJS.toJS(found, null, ctx);
|
|
41855
|
+
data = anchors.get(found);
|
|
41856
|
+
}
|
|
41857
|
+
/* istanbul ignore if */
|
|
41858
|
+
if (data?.res === void 0) throw new ReferenceError("This should not happen: Alias anchor was not resolved?");
|
|
41859
|
+
if (maxAliasCount >= 0) {
|
|
41860
|
+
data.count += 1;
|
|
41861
|
+
if (data.aliasCount === 0) data.aliasCount = getAliasCount(doc, found, anchors);
|
|
41862
|
+
if (data.count * data.aliasCount > maxAliasCount) throw new ReferenceError("Excessive alias count indicates a resource exhaustion attack");
|
|
41863
|
+
}
|
|
41864
|
+
}
|
|
41761
41865
|
return found;
|
|
41762
41866
|
}
|
|
41763
41867
|
toJSON(_arg, ctx) {
|
|
41764
41868
|
if (!ctx) return { source: this.source };
|
|
41765
|
-
const
|
|
41766
|
-
const source = this.resolve(doc, ctx);
|
|
41869
|
+
const source = this.resolve(ctx.doc, ctx);
|
|
41767
41870
|
if (!source) {
|
|
41768
41871
|
const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`;
|
|
41769
41872
|
throw new ReferenceError(msg);
|
|
41770
41873
|
}
|
|
41771
|
-
|
|
41772
|
-
if (!data) {
|
|
41773
|
-
toJS.toJS(source, null, ctx);
|
|
41774
|
-
data = anchors.get(source);
|
|
41775
|
-
}
|
|
41776
|
-
/* istanbul ignore if */
|
|
41777
|
-
if (data?.res === void 0) throw new ReferenceError("This should not happen: Alias anchor was not resolved?");
|
|
41778
|
-
if (maxAliasCount >= 0) {
|
|
41779
|
-
data.count += 1;
|
|
41780
|
-
if (data.aliasCount === 0) data.aliasCount = getAliasCount(doc, source, anchors);
|
|
41781
|
-
if (data.count * data.aliasCount > maxAliasCount) throw new ReferenceError("Excessive alias count indicates a resource exhaustion attack");
|
|
41782
|
-
}
|
|
41783
|
-
return data.res;
|
|
41874
|
+
return ctx.anchors.get(source).res;
|
|
41784
41875
|
}
|
|
41785
41876
|
toString(ctx, _onComment, _onChompKeep) {
|
|
41786
41877
|
const src = `*${this.source}`;
|
|
@@ -41818,7 +41909,7 @@ var require_Alias = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41818
41909
|
}));
|
|
41819
41910
|
|
|
41820
41911
|
//#endregion
|
|
41821
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41912
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/Scalar.js
|
|
41822
41913
|
var require_Scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41823
41914
|
var identity = require_identity();
|
|
41824
41915
|
var Node = require_Node();
|
|
@@ -41846,7 +41937,7 @@ var require_Scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41846
41937
|
}));
|
|
41847
41938
|
|
|
41848
41939
|
//#endregion
|
|
41849
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
41940
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/doc/createNode.js
|
|
41850
41941
|
var require_createNode = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41851
41942
|
var Alias = require_Alias();
|
|
41852
41943
|
var identity = require_identity();
|
|
@@ -41910,7 +42001,7 @@ var require_createNode = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
41910
42001
|
}));
|
|
41911
42002
|
|
|
41912
42003
|
//#endregion
|
|
41913
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42004
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/Collection.js
|
|
41914
42005
|
var require_Collection = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
41915
42006
|
var createNode = require_createNode();
|
|
41916
42007
|
var identity = require_identity();
|
|
@@ -42032,7 +42123,7 @@ var require_Collection = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42032
42123
|
}));
|
|
42033
42124
|
|
|
42034
42125
|
//#endregion
|
|
42035
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42126
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/stringifyComment.js
|
|
42036
42127
|
var require_stringifyComment = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42037
42128
|
/**
|
|
42038
42129
|
* Stringifies a comment.
|
|
@@ -42053,7 +42144,7 @@ var require_stringifyComment = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42053
42144
|
}));
|
|
42054
42145
|
|
|
42055
42146
|
//#endregion
|
|
42056
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42147
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/foldFlowLines.js
|
|
42057
42148
|
var require_foldFlowLines = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42058
42149
|
const FOLD_FLOW = "flow";
|
|
42059
42150
|
const FOLD_BLOCK = "block";
|
|
@@ -42174,7 +42265,7 @@ var require_foldFlowLines = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42174
42265
|
}));
|
|
42175
42266
|
|
|
42176
42267
|
//#endregion
|
|
42177
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42268
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/stringifyString.js
|
|
42178
42269
|
var require_stringifyString = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42179
42270
|
var Scalar = require_Scalar();
|
|
42180
42271
|
var foldFlowLines = require_foldFlowLines();
|
|
@@ -42399,7 +42490,7 @@ var require_stringifyString = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42399
42490
|
}));
|
|
42400
42491
|
|
|
42401
42492
|
//#endregion
|
|
42402
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42493
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/stringify.js
|
|
42403
42494
|
var require_stringify$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42404
42495
|
var anchors = require_anchors();
|
|
42405
42496
|
var identity = require_identity();
|
|
@@ -42508,7 +42599,7 @@ var require_stringify$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42508
42599
|
}));
|
|
42509
42600
|
|
|
42510
42601
|
//#endregion
|
|
42511
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42602
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/stringifyPair.js
|
|
42512
42603
|
var require_stringifyPair = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42513
42604
|
var identity = require_identity();
|
|
42514
42605
|
var Scalar = require_Scalar();
|
|
@@ -42606,7 +42697,7 @@ var require_stringifyPair = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42606
42697
|
}));
|
|
42607
42698
|
|
|
42608
42699
|
//#endregion
|
|
42609
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42700
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/log.js
|
|
42610
42701
|
var require_log = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42611
42702
|
var node_process$2 = __require$1("process");
|
|
42612
42703
|
function debug(logLevel, ...messages) {
|
|
@@ -42623,7 +42714,7 @@ var require_log = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42623
42714
|
}));
|
|
42624
42715
|
|
|
42625
42716
|
//#endregion
|
|
42626
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42717
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/merge.js
|
|
42627
42718
|
var require_merge = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42628
42719
|
var identity = require_identity();
|
|
42629
42720
|
var Scalar = require_Scalar();
|
|
@@ -42667,7 +42758,7 @@ var require_merge = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42667
42758
|
}));
|
|
42668
42759
|
|
|
42669
42760
|
//#endregion
|
|
42670
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42761
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/addPairToJSMap.js
|
|
42671
42762
|
var require_addPairToJSMap = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42672
42763
|
var log = require_log();
|
|
42673
42764
|
var merge = require_merge();
|
|
@@ -42719,7 +42810,7 @@ var require_addPairToJSMap = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42719
42810
|
}));
|
|
42720
42811
|
|
|
42721
42812
|
//#endregion
|
|
42722
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42813
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/Pair.js
|
|
42723
42814
|
var require_Pair = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42724
42815
|
var createNode = require_createNode();
|
|
42725
42816
|
var stringifyPair = require_stringifyPair();
|
|
@@ -42755,7 +42846,7 @@ var require_Pair = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42755
42846
|
}));
|
|
42756
42847
|
|
|
42757
42848
|
//#endregion
|
|
42758
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42849
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/stringifyCollection.js
|
|
42759
42850
|
var require_stringifyCollection = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42760
42851
|
var identity = require_identity();
|
|
42761
42852
|
var stringify = require_stringify$1();
|
|
@@ -42874,7 +42965,7 @@ var require_stringifyCollection = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42874
42965
|
}));
|
|
42875
42966
|
|
|
42876
42967
|
//#endregion
|
|
42877
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
42968
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/YAMLMap.js
|
|
42878
42969
|
var require_YAMLMap = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42879
42970
|
var stringifyCollection = require_stringifyCollection();
|
|
42880
42971
|
var addPairToJSMap = require_addPairToJSMap();
|
|
@@ -42984,7 +43075,7 @@ var require_YAMLMap = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
42984
43075
|
}));
|
|
42985
43076
|
|
|
42986
43077
|
//#endregion
|
|
42987
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43078
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/common/map.js
|
|
42988
43079
|
var require_map = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
42989
43080
|
var identity = require_identity();
|
|
42990
43081
|
var YAMLMap = require_YAMLMap();
|
|
@@ -43003,7 +43094,7 @@ var require_map = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43003
43094
|
}));
|
|
43004
43095
|
|
|
43005
43096
|
//#endregion
|
|
43006
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43097
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/nodes/YAMLSeq.js
|
|
43007
43098
|
var require_YAMLSeq = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43008
43099
|
var createNode = require_createNode();
|
|
43009
43100
|
var stringifyCollection = require_stringifyCollection();
|
|
@@ -43110,7 +43201,7 @@ var require_YAMLSeq = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43110
43201
|
}));
|
|
43111
43202
|
|
|
43112
43203
|
//#endregion
|
|
43113
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43204
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/common/seq.js
|
|
43114
43205
|
var require_seq = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43115
43206
|
var identity = require_identity();
|
|
43116
43207
|
var YAMLSeq = require_YAMLSeq();
|
|
@@ -43129,7 +43220,7 @@ var require_seq = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43129
43220
|
}));
|
|
43130
43221
|
|
|
43131
43222
|
//#endregion
|
|
43132
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43223
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/common/string.js
|
|
43133
43224
|
var require_string = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43134
43225
|
var stringifyString = require_stringifyString();
|
|
43135
43226
|
const string = {
|
|
@@ -43146,7 +43237,7 @@ var require_string = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43146
43237
|
}));
|
|
43147
43238
|
|
|
43148
43239
|
//#endregion
|
|
43149
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43240
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/common/null.js
|
|
43150
43241
|
var require_null = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43151
43242
|
var Scalar = require_Scalar();
|
|
43152
43243
|
const nullTag = {
|
|
@@ -43162,7 +43253,7 @@ var require_null = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43162
43253
|
}));
|
|
43163
43254
|
|
|
43164
43255
|
//#endregion
|
|
43165
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43256
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/core/bool.js
|
|
43166
43257
|
var require_bool$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43167
43258
|
var Scalar = require_Scalar();
|
|
43168
43259
|
const boolTag = {
|
|
@@ -43182,7 +43273,7 @@ var require_bool$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43182
43273
|
}));
|
|
43183
43274
|
|
|
43184
43275
|
//#endregion
|
|
43185
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43276
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/stringifyNumber.js
|
|
43186
43277
|
var require_stringifyNumber = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43187
43278
|
function stringifyNumber({ format, minFractionDigits, tag, value }) {
|
|
43188
43279
|
if (typeof value === "bigint") return String(value);
|
|
@@ -43204,7 +43295,7 @@ var require_stringifyNumber = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43204
43295
|
}));
|
|
43205
43296
|
|
|
43206
43297
|
//#endregion
|
|
43207
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43298
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/core/float.js
|
|
43208
43299
|
var require_float$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43209
43300
|
var Scalar = require_Scalar();
|
|
43210
43301
|
var stringifyNumber = require_stringifyNumber();
|
|
@@ -43247,7 +43338,7 @@ var require_float$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43247
43338
|
}));
|
|
43248
43339
|
|
|
43249
43340
|
//#endregion
|
|
43250
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43341
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/core/int.js
|
|
43251
43342
|
var require_int$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43252
43343
|
var stringifyNumber = require_stringifyNumber();
|
|
43253
43344
|
const intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
|
|
@@ -43289,7 +43380,7 @@ var require_int$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43289
43380
|
}));
|
|
43290
43381
|
|
|
43291
43382
|
//#endregion
|
|
43292
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43383
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/core/schema.js
|
|
43293
43384
|
var require_schema$2 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43294
43385
|
var map = require_map();
|
|
43295
43386
|
var _null = require_null();
|
|
@@ -43315,7 +43406,7 @@ var require_schema$2 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43315
43406
|
}));
|
|
43316
43407
|
|
|
43317
43408
|
//#endregion
|
|
43318
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43409
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/json/schema.js
|
|
43319
43410
|
var require_schema$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43320
43411
|
var Scalar = require_Scalar();
|
|
43321
43412
|
var map = require_map();
|
|
@@ -43379,7 +43470,7 @@ var require_schema$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43379
43470
|
}));
|
|
43380
43471
|
|
|
43381
43472
|
//#endregion
|
|
43382
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43473
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/binary.js
|
|
43383
43474
|
var require_binary = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43384
43475
|
var node_buffer = __require$1("buffer");
|
|
43385
43476
|
var Scalar = require_Scalar();
|
|
@@ -43437,7 +43528,7 @@ var require_binary = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43437
43528
|
}));
|
|
43438
43529
|
|
|
43439
43530
|
//#endregion
|
|
43440
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43531
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/pairs.js
|
|
43441
43532
|
var require_pairs = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43442
43533
|
var identity = require_identity();
|
|
43443
43534
|
var Pair = require_Pair();
|
|
@@ -43499,7 +43590,7 @@ var require_pairs = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43499
43590
|
}));
|
|
43500
43591
|
|
|
43501
43592
|
//#endregion
|
|
43502
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43593
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/omap.js
|
|
43503
43594
|
var require_omap = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43504
43595
|
var identity = require_identity();
|
|
43505
43596
|
var toJS = require_toJS();
|
|
@@ -43565,7 +43656,7 @@ var require_omap = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43565
43656
|
}));
|
|
43566
43657
|
|
|
43567
43658
|
//#endregion
|
|
43568
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43659
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/bool.js
|
|
43569
43660
|
var require_bool = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43570
43661
|
var Scalar = require_Scalar();
|
|
43571
43662
|
function boolStringify({ value, source }, ctx) {
|
|
@@ -43593,7 +43684,7 @@ var require_bool = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43593
43684
|
}));
|
|
43594
43685
|
|
|
43595
43686
|
//#endregion
|
|
43596
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43687
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/float.js
|
|
43597
43688
|
var require_float = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43598
43689
|
var Scalar = require_Scalar();
|
|
43599
43690
|
var stringifyNumber = require_stringifyNumber();
|
|
@@ -43639,7 +43730,7 @@ var require_float = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43639
43730
|
}));
|
|
43640
43731
|
|
|
43641
43732
|
//#endregion
|
|
43642
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43733
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/int.js
|
|
43643
43734
|
var require_int = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43644
43735
|
var stringifyNumber = require_stringifyNumber();
|
|
43645
43736
|
const intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
|
|
@@ -43713,7 +43804,7 @@ var require_int = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43713
43804
|
}));
|
|
43714
43805
|
|
|
43715
43806
|
//#endregion
|
|
43716
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43807
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/set.js
|
|
43717
43808
|
var require_set = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43718
43809
|
var identity = require_identity();
|
|
43719
43810
|
var Pair = require_Pair();
|
|
@@ -43783,7 +43874,7 @@ var require_set = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43783
43874
|
}));
|
|
43784
43875
|
|
|
43785
43876
|
//#endregion
|
|
43786
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43877
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
|
|
43787
43878
|
var require_timestamp = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43788
43879
|
var stringifyNumber = require_stringifyNumber();
|
|
43789
43880
|
/** Internal types handle bigint as number, because TS can't figure it out. */
|
|
@@ -43867,7 +43958,7 @@ var require_timestamp = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43867
43958
|
}));
|
|
43868
43959
|
|
|
43869
43960
|
//#endregion
|
|
43870
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
43961
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/yaml-1.1/schema.js
|
|
43871
43962
|
var require_schema = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43872
43963
|
var map = require_map();
|
|
43873
43964
|
var _null = require_null();
|
|
@@ -43909,7 +44000,7 @@ var require_schema = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43909
44000
|
}));
|
|
43910
44001
|
|
|
43911
44002
|
//#endregion
|
|
43912
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44003
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/tags.js
|
|
43913
44004
|
var require_tags = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
43914
44005
|
var map = require_map();
|
|
43915
44006
|
var _null = require_null();
|
|
@@ -43996,7 +44087,7 @@ var require_tags = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
43996
44087
|
}));
|
|
43997
44088
|
|
|
43998
44089
|
//#endregion
|
|
43999
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44090
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/schema/Schema.js
|
|
44000
44091
|
var require_Schema = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44001
44092
|
var identity = require_identity();
|
|
44002
44093
|
var map = require_map();
|
|
@@ -44026,7 +44117,7 @@ var require_Schema = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44026
44117
|
}));
|
|
44027
44118
|
|
|
44028
44119
|
//#endregion
|
|
44029
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44120
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/stringify/stringifyDocument.js
|
|
44030
44121
|
var require_stringifyDocument = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44031
44122
|
var identity = require_identity();
|
|
44032
44123
|
var stringify = require_stringify$1();
|
|
@@ -44089,7 +44180,7 @@ var require_stringifyDocument = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44089
44180
|
}));
|
|
44090
44181
|
|
|
44091
44182
|
//#endregion
|
|
44092
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44183
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/doc/Document.js
|
|
44093
44184
|
var require_Document = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44094
44185
|
var Alias = require_Alias();
|
|
44095
44186
|
var Collection = require_Collection();
|
|
@@ -44371,7 +44462,7 @@ var require_Document = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44371
44462
|
}));
|
|
44372
44463
|
|
|
44373
44464
|
//#endregion
|
|
44374
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44465
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/errors.js
|
|
44375
44466
|
var require_errors = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44376
44467
|
var YAMLError = class extends Error {
|
|
44377
44468
|
constructor(name, pos, code, message) {
|
|
@@ -44425,7 +44516,7 @@ var require_errors = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44425
44516
|
}));
|
|
44426
44517
|
|
|
44427
44518
|
//#endregion
|
|
44428
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44519
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/resolve-props.js
|
|
44429
44520
|
var require_resolve_props = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44430
44521
|
function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIndent, startOnNewline }) {
|
|
44431
44522
|
let spaceBefore = false;
|
|
@@ -44533,7 +44624,7 @@ var require_resolve_props = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44533
44624
|
}));
|
|
44534
44625
|
|
|
44535
44626
|
//#endregion
|
|
44536
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44627
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/util-contains-newline.js
|
|
44537
44628
|
var require_util_contains_newline = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44538
44629
|
function containsNewline(key) {
|
|
44539
44630
|
if (!key) return null;
|
|
@@ -44563,7 +44654,7 @@ var require_util_contains_newline = /* @__PURE__ */ __commonJSMin(((exports) =>
|
|
|
44563
44654
|
}));
|
|
44564
44655
|
|
|
44565
44656
|
//#endregion
|
|
44566
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44657
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/util-flow-indent-check.js
|
|
44567
44658
|
var require_util_flow_indent_check = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44568
44659
|
var utilContainsNewline = require_util_contains_newline();
|
|
44569
44660
|
function flowIndentCheck(indent, fc, onError) {
|
|
@@ -44576,7 +44667,7 @@ var require_util_flow_indent_check = /* @__PURE__ */ __commonJSMin(((exports) =>
|
|
|
44576
44667
|
}));
|
|
44577
44668
|
|
|
44578
44669
|
//#endregion
|
|
44579
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44670
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/util-map-includes.js
|
|
44580
44671
|
var require_util_map_includes = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44581
44672
|
var identity = require_identity();
|
|
44582
44673
|
function mapIncludes(ctx, items, search) {
|
|
@@ -44589,7 +44680,7 @@ var require_util_map_includes = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44589
44680
|
}));
|
|
44590
44681
|
|
|
44591
44682
|
//#endregion
|
|
44592
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44683
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/resolve-block-map.js
|
|
44593
44684
|
var require_resolve_block_map = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44594
44685
|
var Pair = require_Pair();
|
|
44595
44686
|
var YAMLMap = require_YAMLMap();
|
|
@@ -44678,7 +44769,7 @@ var require_resolve_block_map = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44678
44769
|
}));
|
|
44679
44770
|
|
|
44680
44771
|
//#endregion
|
|
44681
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44772
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/resolve-block-seq.js
|
|
44682
44773
|
var require_resolve_block_seq = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44683
44774
|
var YAMLSeq = require_YAMLSeq();
|
|
44684
44775
|
var resolveProps = require_resolve_props();
|
|
@@ -44724,7 +44815,7 @@ var require_resolve_block_seq = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44724
44815
|
}));
|
|
44725
44816
|
|
|
44726
44817
|
//#endregion
|
|
44727
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44818
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/resolve-end.js
|
|
44728
44819
|
var require_resolve_end = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44729
44820
|
function resolveEnd(end, offset, reqSpace, onError) {
|
|
44730
44821
|
let comment = "";
|
|
@@ -44763,7 +44854,7 @@ var require_resolve_end = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44763
44854
|
}));
|
|
44764
44855
|
|
|
44765
44856
|
//#endregion
|
|
44766
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
44857
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/resolve-flow-collection.js
|
|
44767
44858
|
var require_resolve_flow_collection = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44768
44859
|
var identity = require_identity();
|
|
44769
44860
|
var Pair = require_Pair();
|
|
@@ -44927,7 +45018,7 @@ var require_resolve_flow_collection = /* @__PURE__ */ __commonJSMin(((exports) =
|
|
|
44927
45018
|
}));
|
|
44928
45019
|
|
|
44929
45020
|
//#endregion
|
|
44930
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45021
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/compose-collection.js
|
|
44931
45022
|
var require_compose_collection = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44932
45023
|
var identity = require_identity();
|
|
44933
45024
|
var Scalar = require_Scalar();
|
|
@@ -44980,7 +45071,7 @@ var require_compose_collection = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
44980
45071
|
}));
|
|
44981
45072
|
|
|
44982
45073
|
//#endregion
|
|
44983
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45074
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/resolve-block-scalar.js
|
|
44984
45075
|
var require_resolve_block_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
44985
45076
|
var Scalar = require_Scalar();
|
|
44986
45077
|
function resolveBlockScalar(ctx, scalar, onError) {
|
|
@@ -45158,7 +45249,7 @@ var require_resolve_block_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
45158
45249
|
}));
|
|
45159
45250
|
|
|
45160
45251
|
//#endregion
|
|
45161
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45252
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/resolve-flow-scalar.js
|
|
45162
45253
|
var require_resolve_flow_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
45163
45254
|
var Scalar = require_Scalar();
|
|
45164
45255
|
var resolveEnd = require_resolve_end();
|
|
@@ -45228,40 +45319,41 @@ var require_resolve_flow_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
45228
45319
|
case "`": badChar = `reserved character ${source[0]}`;
|
|
45229
45320
|
}
|
|
45230
45321
|
if (badChar) onError(0, "BAD_SCALAR_START", `Plain value cannot start with ${badChar}`);
|
|
45231
|
-
return
|
|
45322
|
+
return unfoldLines(source);
|
|
45232
45323
|
}
|
|
45233
45324
|
function singleQuotedValue(source, onError) {
|
|
45234
45325
|
if (source[source.length - 1] !== "'" || source.length === 1) onError(source.length, "MISSING_CHAR", "Missing closing 'quote");
|
|
45235
|
-
return
|
|
45326
|
+
return unfoldLines(source.slice(1, -1)).replace(/''/g, "'");
|
|
45236
45327
|
}
|
|
45237
|
-
function
|
|
45328
|
+
function unfoldLines(source) {
|
|
45329
|
+
const line = /(.*?)\r?\n/sy;
|
|
45330
|
+
let match = line.exec(source);
|
|
45331
|
+
if (!match) return source;
|
|
45238
45332
|
/**
|
|
45239
|
-
* The negative
|
|
45333
|
+
* The negative lookbehinds in these RegExps are to
|
|
45240
45334
|
* prevent causing a polynomial search time in certain cases.
|
|
45241
45335
|
*
|
|
45242
|
-
* The try-catch is for Safari
|
|
45336
|
+
* The try-catch is for Safari < 16.4 and other old browsers:
|
|
45243
45337
|
* https://caniuse.com/js-regexp-lookbehind
|
|
45244
45338
|
*/
|
|
45245
|
-
let
|
|
45339
|
+
let trimEnd, trimBoth;
|
|
45246
45340
|
try {
|
|
45247
|
-
|
|
45248
|
-
|
|
45341
|
+
trimEnd = new RegExp("(?<![ ])[ ]+$");
|
|
45342
|
+
trimBoth = new RegExp("^[ ]+|(?<![ ])[ ]+$", "g");
|
|
45249
45343
|
} catch {
|
|
45250
|
-
|
|
45251
|
-
|
|
45344
|
+
trimEnd = /[ \t]+$/;
|
|
45345
|
+
trimBoth = /^[ \t]+|[ \t]+$/g;
|
|
45252
45346
|
}
|
|
45253
|
-
let
|
|
45254
|
-
if (!match) return source;
|
|
45255
|
-
let res = match[1];
|
|
45347
|
+
let res = match[1].replace(trimEnd, "");
|
|
45256
45348
|
let sep = " ";
|
|
45257
|
-
let pos =
|
|
45258
|
-
line.lastIndex = pos;
|
|
45349
|
+
let pos = line.lastIndex;
|
|
45259
45350
|
while (match = line.exec(source)) {
|
|
45260
|
-
|
|
45351
|
+
const lm = match[1].replace(trimBoth, "");
|
|
45352
|
+
if (lm === "") {
|
|
45261
45353
|
if (sep === "\n") res += sep;
|
|
45262
45354
|
else sep = "\n";
|
|
45263
45355
|
} else {
|
|
45264
|
-
res += sep +
|
|
45356
|
+
res += sep + lm;
|
|
45265
45357
|
sep = " ";
|
|
45266
45358
|
}
|
|
45267
45359
|
pos = line.lastIndex;
|
|
@@ -45363,7 +45455,7 @@ var require_resolve_flow_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
45363
45455
|
}));
|
|
45364
45456
|
|
|
45365
45457
|
//#endregion
|
|
45366
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45458
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/compose-scalar.js
|
|
45367
45459
|
var require_compose_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
45368
45460
|
var identity = require_identity();
|
|
45369
45461
|
var Scalar = require_Scalar();
|
|
@@ -45425,7 +45517,7 @@ var require_compose_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
45425
45517
|
}));
|
|
45426
45518
|
|
|
45427
45519
|
//#endregion
|
|
45428
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45520
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/util-empty-scalar-position.js
|
|
45429
45521
|
var require_util_empty_scalar_position = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
45430
45522
|
function emptyScalarPosition(offset, before, pos) {
|
|
45431
45523
|
if (before) {
|
|
@@ -45453,7 +45545,7 @@ var require_util_empty_scalar_position = /* @__PURE__ */ __commonJSMin(((exports
|
|
|
45453
45545
|
}));
|
|
45454
45546
|
|
|
45455
45547
|
//#endregion
|
|
45456
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45548
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/compose-node.js
|
|
45457
45549
|
var require_compose_node = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
45458
45550
|
var Alias = require_Alias();
|
|
45459
45551
|
var identity = require_identity();
|
|
@@ -45545,7 +45637,7 @@ var require_compose_node = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
45545
45637
|
}));
|
|
45546
45638
|
|
|
45547
45639
|
//#endregion
|
|
45548
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45640
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/compose-doc.js
|
|
45549
45641
|
var require_compose_doc = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
45550
45642
|
var Document = require_Document();
|
|
45551
45643
|
var composeNode = require_compose_node();
|
|
@@ -45588,7 +45680,7 @@ var require_compose_doc = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
45588
45680
|
}));
|
|
45589
45681
|
|
|
45590
45682
|
//#endregion
|
|
45591
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45683
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/compose/composer.js
|
|
45592
45684
|
var require_composer = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
45593
45685
|
var node_process$1 = __require$1("process");
|
|
45594
45686
|
var directives = require_directives();
|
|
@@ -45787,7 +45879,7 @@ var require_composer = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
45787
45879
|
}));
|
|
45788
45880
|
|
|
45789
45881
|
//#endregion
|
|
45790
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
45882
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/parse/cst-scalar.js
|
|
45791
45883
|
var require_cst_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
45792
45884
|
var resolveBlockScalar = require_resolve_block_scalar();
|
|
45793
45885
|
var resolveFlowScalar = require_resolve_flow_scalar();
|
|
@@ -46055,7 +46147,7 @@ var require_cst_scalar = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
46055
46147
|
}));
|
|
46056
46148
|
|
|
46057
46149
|
//#endregion
|
|
46058
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
46150
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/parse/cst-stringify.js
|
|
46059
46151
|
var require_cst_stringify = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
46060
46152
|
/**
|
|
46061
46153
|
* Stringify a CST document, token, or collection item
|
|
@@ -46107,7 +46199,7 @@ var require_cst_stringify = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
46107
46199
|
}));
|
|
46108
46200
|
|
|
46109
46201
|
//#endregion
|
|
46110
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
46202
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/parse/cst-visit.js
|
|
46111
46203
|
var require_cst_visit = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
46112
46204
|
const BREAK = Symbol("break visit");
|
|
46113
46205
|
const SKIP = Symbol("skip children");
|
|
@@ -46199,7 +46291,7 @@ var require_cst_visit = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
46199
46291
|
}));
|
|
46200
46292
|
|
|
46201
46293
|
//#endregion
|
|
46202
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
46294
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/parse/cst.js
|
|
46203
46295
|
var require_cst = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
46204
46296
|
var cstScalar = require_cst_scalar();
|
|
46205
46297
|
var cstStringify = require_cst_stringify();
|
|
@@ -46279,7 +46371,7 @@ var require_cst = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
46279
46371
|
}));
|
|
46280
46372
|
|
|
46281
46373
|
//#endregion
|
|
46282
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
46374
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/parse/lexer.js
|
|
46283
46375
|
var require_lexer = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
46284
46376
|
var cst = require_cst();
|
|
46285
46377
|
function isEmpty(ch) {
|
|
@@ -46813,7 +46905,7 @@ var require_lexer = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
46813
46905
|
}));
|
|
46814
46906
|
|
|
46815
46907
|
//#endregion
|
|
46816
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
46908
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/parse/line-counter.js
|
|
46817
46909
|
var require_line_counter = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
46818
46910
|
/**
|
|
46819
46911
|
* Tracks newlines during parsing in order to provide an efficient API for
|
|
@@ -46861,7 +46953,7 @@ var require_line_counter = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
46861
46953
|
}));
|
|
46862
46954
|
|
|
46863
46955
|
//#endregion
|
|
46864
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
46956
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/parse/parser.js
|
|
46865
46957
|
var require_parser = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
46866
46958
|
var node_process = __require$1("process");
|
|
46867
46959
|
var cst = require_cst();
|
|
@@ -47728,7 +47820,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
47728
47820
|
}));
|
|
47729
47821
|
|
|
47730
47822
|
//#endregion
|
|
47731
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
47823
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/public-api.js
|
|
47732
47824
|
var require_public_api = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
47733
47825
|
var composer = require_composer();
|
|
47734
47826
|
var Document = require_Document();
|
|
@@ -47818,7 +47910,7 @@ var require_public_api = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
47818
47910
|
}));
|
|
47819
47911
|
|
|
47820
47912
|
//#endregion
|
|
47821
|
-
//#region ../../node_modules/.pnpm/yaml@2.9.
|
|
47913
|
+
//#region ../../node_modules/.pnpm/yaml@2.9.1/node_modules/yaml/dist/index.js
|
|
47822
47914
|
var require_dist = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
47823
47915
|
var composer = require_composer();
|
|
47824
47916
|
var Document = require_Document();
|
|
@@ -56277,6 +56369,7 @@ var changesets_exports = /* @__PURE__ */ __exportAll({
|
|
|
56277
56369
|
ChangelogTransformer: () => ChangelogTransformer,
|
|
56278
56370
|
ChangesetIOError: () => ChangesetIOError,
|
|
56279
56371
|
ChangesetLinter: () => ChangesetLinter,
|
|
56372
|
+
ChangesetLogMode: () => ChangesetLogMode,
|
|
56280
56373
|
ChangesetOptionsSchema: () => ChangesetOptionsSchema,
|
|
56281
56374
|
ChangesetPreviewSchema: () => ChangesetPreviewSchema,
|
|
56282
56375
|
ChangesetSchema: () => ChangesetSchema,
|
|
@@ -56363,6 +56456,7 @@ var changesets_exports = /* @__PURE__ */ __exportAll({
|
|
|
56363
56456
|
isPureDependencyChangeset: () => isPureDependencyChangeset,
|
|
56364
56457
|
listPublishablePackageNames: () => listPublishablePackageNames,
|
|
56365
56458
|
makeBranchAnalyzerTest: () => makeBranchAnalyzerTest,
|
|
56459
|
+
makeChangelogFunctions: () => makeChangelogFunctions,
|
|
56366
56460
|
makeConfigInspectorTest: () => makeConfigInspectorTest,
|
|
56367
56461
|
makeDepsRegenDefault: () => makeDepsRegenDefault,
|
|
56368
56462
|
makeGitHubTest: () => makeGitHubTest,
|