@typespec/playground 0.4.0-dev.5 → 0.4.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/dist/manifest-Bx5EZvxu-Bx5EZvxu.js +6 -0
- package/dist/react/index.js +1614 -1601
- package/package.json +12 -13
- package/dist/manifest-DR4jWHsG-DR4jWHsG.js +0 -6
package/dist/react/index.js
CHANGED
|
@@ -32009,6 +32009,7 @@ const diagnostics = {
|
|
|
32009
32009
|
severity: "error",
|
|
32010
32010
|
messages: {
|
|
32011
32011
|
default: paramMessage `Model has an inherited property named ${"propName"} of type ${"propType"} which cannot override type ${"parentType"}`,
|
|
32012
|
+
disallowedOptionalOverride: paramMessage `Model has a required inherited property named ${"propName"} which cannot be overridden as optional`,
|
|
32012
32013
|
},
|
|
32013
32014
|
},
|
|
32014
32015
|
"extend-scalar": {
|
|
@@ -40268,7 +40269,7 @@ let manifest;
|
|
|
40268
40269
|
try {
|
|
40269
40270
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
40270
40271
|
// @ts-ignore
|
|
40271
|
-
manifest = (await import('../manifest-
|
|
40272
|
+
manifest = (await import('../manifest-Bx5EZvxu-Bx5EZvxu.js')).default;
|
|
40272
40273
|
}
|
|
40273
40274
|
catch {
|
|
40274
40275
|
const name = "../dist/manifest.js";
|
|
@@ -41632,1735 +41633,1747 @@ function isTemplateInstance(type) {
|
|
|
41632
41633
|
maybeTemplateType.isFinished);
|
|
41633
41634
|
}
|
|
41634
41635
|
|
|
41635
|
-
|
|
41636
|
-
|
|
41637
|
-
|
|
41638
|
-
|
|
41639
|
-
|
|
41640
|
-
|
|
41641
|
-
|
|
41642
|
-
|
|
41643
|
-
|
|
41644
|
-
|
|
41645
|
-
|
|
41646
|
-
|
|
41647
|
-
|
|
41648
|
-
|
|
41649
|
-
|
|
41650
|
-
|
|
41651
|
-
|
|
41652
|
-
|
|
41653
|
-
|
|
41654
|
-
|
|
41655
|
-
|
|
41656
|
-
|
|
41657
|
-
|
|
41658
|
-
|
|
41659
|
-
var DOC_TYPE_INDENT_IF_BREAK = "indent-if-break";
|
|
41660
|
-
var DOC_TYPE_LINE_SUFFIX = "line-suffix";
|
|
41661
|
-
var DOC_TYPE_LINE_SUFFIX_BOUNDARY = "line-suffix-boundary";
|
|
41662
|
-
var DOC_TYPE_LINE = "line";
|
|
41663
|
-
var DOC_TYPE_LABEL = "label";
|
|
41664
|
-
var DOC_TYPE_BREAK_PARENT = "break-parent";
|
|
41665
|
-
var VALID_OBJECT_DOC_TYPES = /* @__PURE__ */ new Set([
|
|
41666
|
-
DOC_TYPE_CURSOR,
|
|
41667
|
-
DOC_TYPE_INDENT,
|
|
41668
|
-
DOC_TYPE_ALIGN,
|
|
41669
|
-
DOC_TYPE_TRIM,
|
|
41670
|
-
DOC_TYPE_GROUP,
|
|
41671
|
-
DOC_TYPE_FILL,
|
|
41672
|
-
DOC_TYPE_IF_BREAK,
|
|
41673
|
-
DOC_TYPE_INDENT_IF_BREAK,
|
|
41674
|
-
DOC_TYPE_LINE_SUFFIX,
|
|
41675
|
-
DOC_TYPE_LINE_SUFFIX_BOUNDARY,
|
|
41676
|
-
DOC_TYPE_LINE,
|
|
41677
|
-
DOC_TYPE_LABEL,
|
|
41678
|
-
DOC_TYPE_BREAK_PARENT
|
|
41679
|
-
]);
|
|
41680
|
-
|
|
41681
|
-
// src/document/utils/get-doc-type.js
|
|
41682
|
-
function getDocType(doc) {
|
|
41683
|
-
if (typeof doc === "string") {
|
|
41684
|
-
return DOC_TYPE_STRING;
|
|
41685
|
-
}
|
|
41686
|
-
if (Array.isArray(doc)) {
|
|
41687
|
-
return DOC_TYPE_ARRAY;
|
|
41688
|
-
}
|
|
41689
|
-
if (!doc) {
|
|
41690
|
-
return;
|
|
41691
|
-
}
|
|
41692
|
-
const { type } = doc;
|
|
41693
|
-
if (VALID_OBJECT_DOC_TYPES.has(type)) {
|
|
41694
|
-
return type;
|
|
41695
|
-
}
|
|
41636
|
+
/**
|
|
41637
|
+
* Print a string as a TypeSpec identifier. If the string is a valid identifier, return it as is otherwise wrap it into backticks.
|
|
41638
|
+
* @param sv Identifier string value.
|
|
41639
|
+
* @returns Identifier string as it would be represented in a TypeSpec file.
|
|
41640
|
+
*
|
|
41641
|
+
* @example
|
|
41642
|
+
* ```ts
|
|
41643
|
+
* printIdentifier("foo") // foo
|
|
41644
|
+
* printIdentifier("foo bar") // `foo bar`
|
|
41645
|
+
* ```
|
|
41646
|
+
*/
|
|
41647
|
+
function printIdentifier(sv) {
|
|
41648
|
+
if (needBacktick(sv)) {
|
|
41649
|
+
const escapedString = sv
|
|
41650
|
+
.replace(/\\/g, "\\\\")
|
|
41651
|
+
.replace(/\n/g, "\\n")
|
|
41652
|
+
.replace(/\r/g, "\\r")
|
|
41653
|
+
.replace(/\t/g, "\\t")
|
|
41654
|
+
.replace(/`/g, "\\`");
|
|
41655
|
+
return `\`${escapedString}\``;
|
|
41656
|
+
}
|
|
41657
|
+
else {
|
|
41658
|
+
return sv;
|
|
41659
|
+
}
|
|
41696
41660
|
}
|
|
41697
|
-
|
|
41698
|
-
|
|
41699
|
-
|
|
41700
|
-
|
|
41701
|
-
|
|
41702
|
-
|
|
41703
|
-
|
|
41704
|
-
|
|
41705
|
-
|
|
41706
|
-
|
|
41707
|
-
|
|
41708
|
-
|
|
41709
|
-
|
|
41710
|
-
|
|
41711
|
-
|
|
41712
|
-
return
|
|
41713
|
-
}
|
|
41714
|
-
const EXPECTED_TYPE_VALUES = disjunctionListFormat(
|
|
41715
|
-
[...VALID_OBJECT_DOC_TYPES].map((type2) => `'${type2}'`)
|
|
41716
|
-
);
|
|
41717
|
-
return `Unexpected doc.type '${doc.type}'.
|
|
41718
|
-
Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
41661
|
+
function needBacktick(sv) {
|
|
41662
|
+
if (sv.length === 0) {
|
|
41663
|
+
return false;
|
|
41664
|
+
}
|
|
41665
|
+
if (Keywords.has(sv)) {
|
|
41666
|
+
return true;
|
|
41667
|
+
}
|
|
41668
|
+
let cp = sv.codePointAt(0);
|
|
41669
|
+
if (!isIdentifierStart(cp)) {
|
|
41670
|
+
return true;
|
|
41671
|
+
}
|
|
41672
|
+
let pos = 0;
|
|
41673
|
+
do {
|
|
41674
|
+
pos += utf16CodeUnits(cp);
|
|
41675
|
+
} while (pos < sv.length && isIdentifierContinue((cp = sv.codePointAt(pos))));
|
|
41676
|
+
return pos < sv.length;
|
|
41719
41677
|
}
|
|
41720
|
-
var InvalidDocError = class extends Error {
|
|
41721
|
-
name = "InvalidDocError";
|
|
41722
|
-
constructor(doc) {
|
|
41723
|
-
super(getDocErrorMessage(doc));
|
|
41724
|
-
this.doc = doc;
|
|
41725
|
-
}
|
|
41726
|
-
};
|
|
41727
|
-
var invalid_doc_error_default = InvalidDocError;
|
|
41728
41678
|
|
|
41729
|
-
|
|
41730
|
-
|
|
41731
|
-
|
|
41732
|
-
|
|
41733
|
-
|
|
41734
|
-
|
|
41735
|
-
|
|
41736
|
-
|
|
41737
|
-
|
|
41679
|
+
function getTypeName(type, options) {
|
|
41680
|
+
switch (type.kind) {
|
|
41681
|
+
case "Namespace":
|
|
41682
|
+
return getNamespaceFullName(type, options);
|
|
41683
|
+
case "TemplateParameter":
|
|
41684
|
+
return getIdentifierName(type.node.id.sv, options);
|
|
41685
|
+
case "Scalar":
|
|
41686
|
+
return getScalarName(type, options);
|
|
41687
|
+
case "Model":
|
|
41688
|
+
return getModelName(type, options);
|
|
41689
|
+
case "ModelProperty":
|
|
41690
|
+
return getModelPropertyName(type, options);
|
|
41691
|
+
case "Interface":
|
|
41692
|
+
return getInterfaceName(type, options);
|
|
41693
|
+
case "Operation":
|
|
41694
|
+
return getOperationName(type, options);
|
|
41695
|
+
case "Enum":
|
|
41696
|
+
return getEnumName(type, options);
|
|
41697
|
+
case "EnumMember":
|
|
41698
|
+
return `${getEnumName(type.enum, options)}.${getIdentifierName(type.name, options)}`;
|
|
41699
|
+
case "Union":
|
|
41700
|
+
return getUnionName(type, options);
|
|
41701
|
+
case "UnionVariant":
|
|
41702
|
+
return getTypeName(type.type, options);
|
|
41703
|
+
case "Tuple":
|
|
41704
|
+
return "[" + type.values.map((x) => getTypeName(x, options)).join(", ") + "]";
|
|
41705
|
+
case "StringTemplate":
|
|
41706
|
+
return getStringTemplateName(type);
|
|
41707
|
+
case "String":
|
|
41708
|
+
return `"${type.value}"`;
|
|
41709
|
+
case "Number":
|
|
41710
|
+
return type.valueAsString;
|
|
41711
|
+
case "Boolean":
|
|
41712
|
+
return type.value.toString();
|
|
41713
|
+
case "Intrinsic":
|
|
41714
|
+
return type.name;
|
|
41715
|
+
default:
|
|
41716
|
+
return `(unnamed type)`;
|
|
41738
41717
|
}
|
|
41739
|
-
|
|
41740
|
-
|
|
41718
|
+
}
|
|
41719
|
+
function getValuePreview(value, options) {
|
|
41720
|
+
switch (value.valueKind) {
|
|
41721
|
+
case "ObjectValue":
|
|
41722
|
+
return `#{${[...value.properties.entries()].map(([name, value]) => `${name}: ${getValuePreview(value.value, options)}`).join(", ")}}`;
|
|
41723
|
+
case "ArrayValue":
|
|
41724
|
+
return `#[${value.values.map((x) => getValuePreview(x, options)).join(", ")}]`;
|
|
41725
|
+
case "StringValue":
|
|
41726
|
+
return `"${value.value}"`;
|
|
41727
|
+
case "BooleanValue":
|
|
41728
|
+
return `${value.value}`;
|
|
41729
|
+
case "NumericValue":
|
|
41730
|
+
return `${value.value.toString()}`;
|
|
41731
|
+
case "EnumValue":
|
|
41732
|
+
return getTypeName(value.value);
|
|
41733
|
+
case "NullValue":
|
|
41734
|
+
return "null";
|
|
41735
|
+
case "ScalarValue":
|
|
41736
|
+
return `${getTypeName(value.type, options)}.${value.value.name}(${value.value.args.map((x) => getValuePreview(x, options)).join(", ")}})`;
|
|
41741
41737
|
}
|
|
41742
|
-
|
|
41743
|
-
|
|
41744
|
-
|
|
41738
|
+
}
|
|
41739
|
+
function getEntityName(entity, options) {
|
|
41740
|
+
if (isValue(entity)) {
|
|
41741
|
+
return getValuePreview(entity, options);
|
|
41745
41742
|
}
|
|
41746
|
-
if ((
|
|
41747
|
-
|
|
41743
|
+
else if (isType(entity)) {
|
|
41744
|
+
return getTypeName(entity, options);
|
|
41748
41745
|
}
|
|
41749
|
-
|
|
41750
|
-
|
|
41751
|
-
|
|
41752
|
-
|
|
41753
|
-
|
|
41754
|
-
|
|
41755
|
-
|
|
41756
|
-
|
|
41757
|
-
|
|
41758
|
-
|
|
41759
|
-
|
|
41760
|
-
break;
|
|
41761
|
-
case DOC_TYPE_GROUP:
|
|
41762
|
-
if (shouldTraverseConditionalGroups && doc2.expandedStates) {
|
|
41763
|
-
for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) {
|
|
41764
|
-
docsStack.push(doc2.expandedStates[i]);
|
|
41765
|
-
}
|
|
41766
|
-
} else {
|
|
41767
|
-
docsStack.push(doc2.contents);
|
|
41746
|
+
else {
|
|
41747
|
+
switch (entity.entityKind) {
|
|
41748
|
+
case "MixedParameterConstraint":
|
|
41749
|
+
return [
|
|
41750
|
+
entity.type && getEntityName(entity.type),
|
|
41751
|
+
entity.valueType && `valueof ${getEntityName(entity.valueType)}`,
|
|
41752
|
+
]
|
|
41753
|
+
.filter(isDefined)
|
|
41754
|
+
.join(" | ");
|
|
41755
|
+
case "Indeterminate":
|
|
41756
|
+
return getTypeName(entity.type, options);
|
|
41768
41757
|
}
|
|
41769
|
-
break;
|
|
41770
|
-
case DOC_TYPE_ALIGN:
|
|
41771
|
-
case DOC_TYPE_INDENT:
|
|
41772
|
-
case DOC_TYPE_INDENT_IF_BREAK:
|
|
41773
|
-
case DOC_TYPE_LABEL:
|
|
41774
|
-
case DOC_TYPE_LINE_SUFFIX:
|
|
41775
|
-
docsStack.push(doc2.contents);
|
|
41776
|
-
break;
|
|
41777
|
-
case DOC_TYPE_STRING:
|
|
41778
|
-
case DOC_TYPE_CURSOR:
|
|
41779
|
-
case DOC_TYPE_TRIM:
|
|
41780
|
-
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
41781
|
-
case DOC_TYPE_LINE:
|
|
41782
|
-
case DOC_TYPE_BREAK_PARENT:
|
|
41783
|
-
break;
|
|
41784
|
-
default:
|
|
41785
|
-
throw new invalid_doc_error_default(doc2);
|
|
41786
41758
|
}
|
|
41787
|
-
}
|
|
41788
41759
|
}
|
|
41789
|
-
|
|
41790
|
-
|
|
41791
|
-
|
|
41792
|
-
|
|
41793
|
-
|
|
41794
|
-
var assertDocArray = noop ;
|
|
41795
|
-
|
|
41796
|
-
// src/document/builders.js
|
|
41797
|
-
function indent(contents) {
|
|
41798
|
-
return { type: DOC_TYPE_INDENT, contents };
|
|
41799
|
-
}
|
|
41800
|
-
function align(widthOrString, contents) {
|
|
41801
|
-
return { type: DOC_TYPE_ALIGN, contents, n: widthOrString };
|
|
41760
|
+
function isStdNamespace(namespace) {
|
|
41761
|
+
return ((namespace.name === "TypeSpec" && namespace.namespace?.name === "") ||
|
|
41762
|
+
(namespace.name === "Reflection" &&
|
|
41763
|
+
namespace.namespace?.name === "TypeSpec" &&
|
|
41764
|
+
namespace.namespace?.namespace?.name === ""));
|
|
41802
41765
|
}
|
|
41803
|
-
|
|
41804
|
-
|
|
41805
|
-
|
|
41806
|
-
|
|
41807
|
-
|
|
41808
|
-
|
|
41809
|
-
|
|
41810
|
-
|
|
41811
|
-
|
|
41812
|
-
|
|
41766
|
+
/**
|
|
41767
|
+
* Return the full name of the namespace(e.g. "Foo.Bar")
|
|
41768
|
+
* @param type namespace type
|
|
41769
|
+
* @param options
|
|
41770
|
+
* @returns
|
|
41771
|
+
*/
|
|
41772
|
+
function getNamespaceFullName(type, options) {
|
|
41773
|
+
const segments = [];
|
|
41774
|
+
let current = type;
|
|
41775
|
+
while (current && current.name !== "") {
|
|
41776
|
+
segments.unshift(getIdentifierName(current.name, options));
|
|
41777
|
+
current = current.namespace;
|
|
41778
|
+
}
|
|
41779
|
+
return segments.join(".");
|
|
41813
41780
|
}
|
|
41814
|
-
function
|
|
41815
|
-
|
|
41781
|
+
function getNamespacePrefix(type, options) {
|
|
41782
|
+
if (type === undefined || isStdNamespace(type)) {
|
|
41783
|
+
return "";
|
|
41784
|
+
}
|
|
41785
|
+
const namespaceFullName = getNamespaceFullName(type, options);
|
|
41786
|
+
return namespaceFullName !== "" ? namespaceFullName + "." : "";
|
|
41816
41787
|
}
|
|
41817
|
-
function
|
|
41818
|
-
|
|
41788
|
+
function getEnumName(e, options) {
|
|
41789
|
+
return `${getNamespacePrefix(e.namespace, options)}${getIdentifierName(e.name, options)}`;
|
|
41819
41790
|
}
|
|
41820
|
-
function
|
|
41821
|
-
|
|
41791
|
+
function getScalarName(scalar, options) {
|
|
41792
|
+
return `${getNamespacePrefix(scalar.namespace, options)}${getIdentifierName(scalar.name, options)}`;
|
|
41822
41793
|
}
|
|
41823
|
-
function
|
|
41824
|
-
|
|
41794
|
+
function getModelName(model, options) {
|
|
41795
|
+
const nsPrefix = getNamespacePrefix(model.namespace, options);
|
|
41796
|
+
if (model.name === "" && model.properties.size === 0) {
|
|
41797
|
+
return "{}";
|
|
41798
|
+
}
|
|
41799
|
+
if (model.indexer && model.indexer.key.kind === "Scalar") {
|
|
41800
|
+
if (model.name === "Array" && isInTypeSpecNamespace(model)) {
|
|
41801
|
+
return `${getTypeName(model.indexer.value, options)}[]`;
|
|
41802
|
+
}
|
|
41803
|
+
}
|
|
41804
|
+
if (model.name === "") {
|
|
41805
|
+
return (nsPrefix +
|
|
41806
|
+
`{ ${[...model.properties.values()].map((prop) => `${prop.name}: ${getTypeName(prop.type, options)}`).join(", ")} }`);
|
|
41807
|
+
}
|
|
41808
|
+
const modelName = nsPrefix + getIdentifierName(model.name, options);
|
|
41809
|
+
if (isTemplateInstance(model)) {
|
|
41810
|
+
// template instantiation
|
|
41811
|
+
const args = model.templateMapper.args.map((x) => getEntityName(x, options));
|
|
41812
|
+
return `${modelName}<${args.join(", ")}>`;
|
|
41813
|
+
}
|
|
41814
|
+
else if (model.node?.templateParameters?.length > 0) {
|
|
41815
|
+
// template
|
|
41816
|
+
const params = model.node.templateParameters.map((t) => getIdentifierName(t.id.sv, options));
|
|
41817
|
+
return `${modelName}<${params.join(", ")}>`;
|
|
41818
|
+
}
|
|
41819
|
+
else {
|
|
41820
|
+
// regular old model.
|
|
41821
|
+
return modelName;
|
|
41822
|
+
}
|
|
41825
41823
|
}
|
|
41826
|
-
function
|
|
41827
|
-
|
|
41824
|
+
function getUnionName(type, options) {
|
|
41825
|
+
const nsPrefix = getNamespacePrefix(type.namespace, options);
|
|
41826
|
+
const typeName = type.name
|
|
41827
|
+
? getIdentifierName(type.name, options)
|
|
41828
|
+
: [...type.variants.values()].map((x) => getTypeName(x.type, options)).join(" | ");
|
|
41829
|
+
return nsPrefix + typeName;
|
|
41828
41830
|
}
|
|
41829
|
-
|
|
41830
|
-
|
|
41831
|
-
|
|
41832
|
-
|
|
41833
|
-
|
|
41834
|
-
groupId: opts.groupId
|
|
41835
|
-
};
|
|
41831
|
+
/**
|
|
41832
|
+
* Check if the given namespace is the standard library `TypeSpec` namespace.
|
|
41833
|
+
*/
|
|
41834
|
+
function isTypeSpecNamespace(namespace) {
|
|
41835
|
+
return namespace.name === "TypeSpec" && namespace.namespace?.name === "";
|
|
41836
41836
|
}
|
|
41837
|
-
|
|
41838
|
-
|
|
41839
|
-
|
|
41840
|
-
|
|
41841
|
-
|
|
41842
|
-
negate: opts.negate
|
|
41843
|
-
};
|
|
41837
|
+
/**
|
|
41838
|
+
* Check if the given type is defined right in the TypeSpec namespace.
|
|
41839
|
+
*/
|
|
41840
|
+
function isInTypeSpecNamespace(type) {
|
|
41841
|
+
return Boolean(type.namespace && isTypeSpecNamespace(type.namespace));
|
|
41844
41842
|
}
|
|
41845
|
-
function
|
|
41846
|
-
|
|
41843
|
+
function getModelPropertyName(prop, options) {
|
|
41844
|
+
const modelName = prop.model ? getModelName(prop.model, options) : undefined;
|
|
41845
|
+
return `${modelName ?? "(anonymous model)"}.${prop.name}`;
|
|
41847
41846
|
}
|
|
41848
|
-
|
|
41849
|
-
|
|
41850
|
-
|
|
41851
|
-
|
|
41852
|
-
|
|
41853
|
-
|
|
41854
|
-
hard: true,
|
|
41855
|
-
literal: true
|
|
41856
|
-
};
|
|
41857
|
-
var line = { type: DOC_TYPE_LINE };
|
|
41858
|
-
var softline = { type: DOC_TYPE_LINE, soft: true };
|
|
41859
|
-
var hardline = [hardlineWithoutBreakParent, breakParent];
|
|
41860
|
-
var literalline = [literallineWithoutBreakParent, breakParent];
|
|
41861
|
-
var cursor = { type: DOC_TYPE_CURSOR };
|
|
41862
|
-
function join(separator, docs) {
|
|
41863
|
-
const parts = [];
|
|
41864
|
-
for (let i = 0; i < docs.length; i++) {
|
|
41865
|
-
if (i !== 0) {
|
|
41866
|
-
parts.push(separator);
|
|
41847
|
+
function getInterfaceName(iface, options) {
|
|
41848
|
+
let interfaceName = getIdentifierName(iface.name, options);
|
|
41849
|
+
if (isTemplateInstance(iface)) {
|
|
41850
|
+
interfaceName += `<${iface.templateMapper.args
|
|
41851
|
+
.map((x) => getEntityName(x, options))
|
|
41852
|
+
.join(", ")}>`;
|
|
41867
41853
|
}
|
|
41868
|
-
|
|
41869
|
-
}
|
|
41870
|
-
return parts;
|
|
41854
|
+
return `${getNamespacePrefix(iface.namespace, options)}${interfaceName}`;
|
|
41871
41855
|
}
|
|
41872
|
-
function
|
|
41873
|
-
|
|
41874
|
-
|
|
41875
|
-
|
|
41876
|
-
|
|
41856
|
+
function getOperationName(op, options) {
|
|
41857
|
+
let opName = getIdentifierName(op.name, options);
|
|
41858
|
+
if (op.node.templateParameters.length > 0) {
|
|
41859
|
+
// template
|
|
41860
|
+
const params = op.node.templateParameters.map((t) => getIdentifierName(t.id.sv, options));
|
|
41861
|
+
opName += `<${params.join(", ")}>`;
|
|
41877
41862
|
}
|
|
41878
|
-
|
|
41879
|
-
|
|
41880
|
-
|
|
41881
|
-
|
|
41863
|
+
const prefix = op.interface
|
|
41864
|
+
? getInterfaceName(op.interface, options) + "."
|
|
41865
|
+
: getNamespacePrefix(op.namespace, options);
|
|
41866
|
+
return `${prefix}${opName}`;
|
|
41882
41867
|
}
|
|
41883
|
-
function
|
|
41884
|
-
|
|
41868
|
+
function getIdentifierName(name, options) {
|
|
41869
|
+
return options?.printable ? printIdentifier(name) : name;
|
|
41885
41870
|
}
|
|
41886
|
-
|
|
41887
|
-
|
|
41888
|
-
|
|
41889
|
-
|
|
41890
|
-
return;
|
|
41891
|
-
}
|
|
41892
|
-
if (Array.isArray(object) || typeof object === "string") {
|
|
41893
|
-
return object[index < 0 ? object.length + index : index];
|
|
41894
|
-
}
|
|
41895
|
-
return object.at(index);
|
|
41896
|
-
};
|
|
41897
|
-
var at_default = at$1;
|
|
41898
|
-
|
|
41899
|
-
// scripts/build/shims/string-replace-all.js
|
|
41900
|
-
var stringReplaceAll = (isOptionalObject, original, pattern, replacement) => {
|
|
41901
|
-
if (isOptionalObject && (original === void 0 || original === null)) {
|
|
41902
|
-
return;
|
|
41903
|
-
}
|
|
41904
|
-
if (original.replaceAll) {
|
|
41905
|
-
return original.replaceAll(pattern, replacement);
|
|
41906
|
-
}
|
|
41907
|
-
if (pattern.global) {
|
|
41908
|
-
return original.replace(pattern, replacement);
|
|
41909
|
-
}
|
|
41910
|
-
return original.split(pattern).join(replacement);
|
|
41911
|
-
};
|
|
41912
|
-
var string_replace_all_default = stringReplaceAll;
|
|
41913
|
-
|
|
41914
|
-
// src/common/end-of-line.js
|
|
41915
|
-
function convertEndOfLineToChars(value) {
|
|
41916
|
-
switch (value) {
|
|
41917
|
-
case "cr":
|
|
41918
|
-
return "\r";
|
|
41919
|
-
case "crlf":
|
|
41920
|
-
return "\r\n";
|
|
41921
|
-
default:
|
|
41922
|
-
return "\n";
|
|
41923
|
-
}
|
|
41871
|
+
function getStringTemplateName(type) {
|
|
41872
|
+
if (type.stringValue) {
|
|
41873
|
+
return `"${type.stringValue}"`;
|
|
41874
|
+
}
|
|
41875
|
+
return "string";
|
|
41924
41876
|
}
|
|
41925
41877
|
|
|
41926
|
-
|
|
41927
|
-
|
|
41928
|
-
return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
|
|
41929
|
-
};
|
|
41930
|
-
|
|
41931
|
-
// node_modules/get-east-asian-width/lookup.js
|
|
41932
|
-
function isFullWidth(x) {
|
|
41933
|
-
return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510;
|
|
41934
|
-
}
|
|
41935
|
-
function isWide(x) {
|
|
41936
|
-
return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9800 && x <= 9811 || x === 9855 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12771 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 19903 || x >= 19968 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x === 94192 || x === 94193 || x >= 94208 && x <= 100343 || x >= 100352 && x <= 101589 || x >= 101632 && x <= 101640 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128727 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129672 || x >= 129680 && x <= 129725 || x >= 129727 && x <= 129733 || x >= 129742 && x <= 129755 || x >= 129760 && x <= 129768 || x >= 129776 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141;
|
|
41878
|
+
class InvalidNumericError extends Error {
|
|
41879
|
+
code = "InvalidNumeric";
|
|
41937
41880
|
}
|
|
41938
|
-
|
|
41939
|
-
|
|
41940
|
-
|
|
41941
|
-
|
|
41942
|
-
|
|
41943
|
-
|
|
41944
|
-
|
|
41945
|
-
|
|
41946
|
-
return 0;
|
|
41947
|
-
}
|
|
41948
|
-
if (!notAsciiRegex.test(text)) {
|
|
41949
|
-
return text.length;
|
|
41950
|
-
}
|
|
41951
|
-
text = text.replace(emoji_regex_default(), " ");
|
|
41952
|
-
let width = 0;
|
|
41953
|
-
for (const character of text) {
|
|
41954
|
-
const codePoint = character.codePointAt(0);
|
|
41955
|
-
if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
|
|
41956
|
-
continue;
|
|
41881
|
+
/** @internal */
|
|
41882
|
+
const InternalDataSym = Symbol.for("NumericInternalData");
|
|
41883
|
+
/**
|
|
41884
|
+
* Represent any possible numeric value
|
|
41885
|
+
*/
|
|
41886
|
+
function Numeric(stringValue) {
|
|
41887
|
+
if (new.target) {
|
|
41888
|
+
throw new Error("Numeric is not a constructor");
|
|
41957
41889
|
}
|
|
41958
|
-
|
|
41959
|
-
|
|
41960
|
-
|
|
41961
|
-
|
|
41962
|
-
|
|
41963
|
-
|
|
41890
|
+
const data = parse$1(stringValue);
|
|
41891
|
+
const isInteger = data.d === 0;
|
|
41892
|
+
const obj = {
|
|
41893
|
+
[InternalDataSym]: data,
|
|
41894
|
+
isInteger,
|
|
41895
|
+
};
|
|
41896
|
+
// We are explicitly not using a class here due to version mismatch between the compiler and the runtime that could happen and break instanceof checks.
|
|
41897
|
+
const numeric = setTypedProptotype(obj, NumericPrototype);
|
|
41898
|
+
return Object.freeze(numeric);
|
|
41964
41899
|
}
|
|
41965
|
-
|
|
41966
|
-
|
|
41967
|
-
|
|
41968
|
-
|
|
41969
|
-
|
|
41970
|
-
|
|
41971
|
-
|
|
41972
|
-
|
|
41973
|
-
|
|
41974
|
-
|
|
41975
|
-
|
|
41976
|
-
|
|
41900
|
+
function setTypedProptotype(obj, prototype) {
|
|
41901
|
+
Object.setPrototypeOf(obj, prototype);
|
|
41902
|
+
return obj;
|
|
41903
|
+
}
|
|
41904
|
+
function parse$1(original) {
|
|
41905
|
+
let stringValue = original;
|
|
41906
|
+
let start = 0;
|
|
41907
|
+
let sign = 1;
|
|
41908
|
+
let n;
|
|
41909
|
+
let exp;
|
|
41910
|
+
let decimal;
|
|
41911
|
+
if (stringValue[0] === "-") {
|
|
41912
|
+
start = 1;
|
|
41913
|
+
sign = -1;
|
|
41977
41914
|
}
|
|
41978
|
-
const
|
|
41979
|
-
|
|
41980
|
-
|
|
41981
|
-
|
|
41982
|
-
|
|
41983
|
-
|
|
41984
|
-
|
|
41985
|
-
|
|
41986
|
-
|
|
41987
|
-
return cb({
|
|
41988
|
-
...doc2,
|
|
41989
|
-
parts: doc2.parts.map(rec)
|
|
41990
|
-
});
|
|
41991
|
-
case DOC_TYPE_IF_BREAK:
|
|
41992
|
-
return cb({
|
|
41993
|
-
...doc2,
|
|
41994
|
-
breakContents: rec(doc2.breakContents),
|
|
41995
|
-
flatContents: rec(doc2.flatContents)
|
|
41996
|
-
});
|
|
41997
|
-
case DOC_TYPE_GROUP: {
|
|
41998
|
-
let {
|
|
41999
|
-
expandedStates,
|
|
42000
|
-
contents
|
|
42001
|
-
} = doc2;
|
|
42002
|
-
if (expandedStates) {
|
|
42003
|
-
expandedStates = expandedStates.map(rec);
|
|
42004
|
-
contents = expandedStates[0];
|
|
42005
|
-
} else {
|
|
42006
|
-
contents = rec(contents);
|
|
41915
|
+
const second = stringValue[start + 1]?.toLowerCase();
|
|
41916
|
+
if (stringValue[start] === "0" && (second === "b" || second === "x" || second === "o")) {
|
|
41917
|
+
try {
|
|
41918
|
+
n = BigInt(stringValue.slice(start));
|
|
41919
|
+
exp = n.toString().length;
|
|
41920
|
+
decimal = 0;
|
|
41921
|
+
}
|
|
41922
|
+
catch {
|
|
41923
|
+
throw new InvalidNumericError(`Invalid numeric value: ${original}`);
|
|
42007
41924
|
}
|
|
42008
|
-
return cb({
|
|
42009
|
-
...doc2,
|
|
42010
|
-
contents,
|
|
42011
|
-
expandedStates
|
|
42012
|
-
});
|
|
42013
|
-
}
|
|
42014
|
-
case DOC_TYPE_ALIGN:
|
|
42015
|
-
case DOC_TYPE_INDENT:
|
|
42016
|
-
case DOC_TYPE_INDENT_IF_BREAK:
|
|
42017
|
-
case DOC_TYPE_LABEL:
|
|
42018
|
-
case DOC_TYPE_LINE_SUFFIX:
|
|
42019
|
-
return cb({
|
|
42020
|
-
...doc2,
|
|
42021
|
-
contents: rec(doc2.contents)
|
|
42022
|
-
});
|
|
42023
|
-
case DOC_TYPE_STRING:
|
|
42024
|
-
case DOC_TYPE_CURSOR:
|
|
42025
|
-
case DOC_TYPE_TRIM:
|
|
42026
|
-
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42027
|
-
case DOC_TYPE_LINE:
|
|
42028
|
-
case DOC_TYPE_BREAK_PARENT:
|
|
42029
|
-
return cb(doc2);
|
|
42030
|
-
default:
|
|
42031
|
-
throw new invalid_doc_error_default(doc2);
|
|
42032
|
-
}
|
|
42033
|
-
}
|
|
42034
|
-
}
|
|
42035
|
-
function findInDoc(doc, fn, defaultValue) {
|
|
42036
|
-
let result = defaultValue;
|
|
42037
|
-
let shouldSkipFurtherProcessing = false;
|
|
42038
|
-
function findInDocOnEnterFn(doc2) {
|
|
42039
|
-
if (shouldSkipFurtherProcessing) {
|
|
42040
|
-
return false;
|
|
42041
41925
|
}
|
|
42042
|
-
|
|
42043
|
-
|
|
42044
|
-
|
|
42045
|
-
|
|
41926
|
+
else {
|
|
41927
|
+
// Skip leading 0.
|
|
41928
|
+
while (stringValue[start] === "0") {
|
|
41929
|
+
start++;
|
|
41930
|
+
}
|
|
41931
|
+
const decimalPointIndex = stringValue.indexOf(".");
|
|
41932
|
+
const adjustedPointIndex = decimalPointIndex - start;
|
|
41933
|
+
// Decimal point?
|
|
41934
|
+
if (decimalPointIndex !== -1) {
|
|
41935
|
+
exp = adjustedPointIndex;
|
|
41936
|
+
stringValue = stringValue.replace(".", "");
|
|
41937
|
+
}
|
|
41938
|
+
let i;
|
|
41939
|
+
if ((i = stringValue.search(/e/i)) > 0) {
|
|
41940
|
+
// Determine exponent.
|
|
41941
|
+
if (exp === undefined) {
|
|
41942
|
+
exp = i - start;
|
|
41943
|
+
}
|
|
41944
|
+
exp += Number(stringValue.slice(i + 1));
|
|
41945
|
+
stringValue = stringValue.slice(start, i);
|
|
41946
|
+
}
|
|
41947
|
+
else if (exp === undefined) {
|
|
41948
|
+
// Integer.
|
|
41949
|
+
exp = stringValue.length - start;
|
|
41950
|
+
stringValue = stringValue.slice(start);
|
|
41951
|
+
}
|
|
41952
|
+
else {
|
|
41953
|
+
stringValue = stringValue.slice(start);
|
|
41954
|
+
}
|
|
41955
|
+
let end = stringValue.length;
|
|
41956
|
+
while (stringValue[end - 1] === "0" && end > adjustedPointIndex) {
|
|
41957
|
+
end--;
|
|
41958
|
+
}
|
|
41959
|
+
try {
|
|
41960
|
+
stringValue = stringValue.slice(0, end);
|
|
41961
|
+
stringValue = stringValue + "0".repeat(Math.max(exp - stringValue.length, 0)); // add remaining zeros for cases like 3e30
|
|
41962
|
+
n = BigInt(stringValue);
|
|
41963
|
+
decimal = n === 0n ? 0 : Math.max(stringValue.length - exp, 0);
|
|
41964
|
+
}
|
|
41965
|
+
catch {
|
|
41966
|
+
throw new InvalidNumericError(`Invalid numeric value: ${original}`);
|
|
41967
|
+
}
|
|
42046
41968
|
}
|
|
42047
|
-
|
|
42048
|
-
traverse_doc_default(doc, findInDocOnEnterFn);
|
|
42049
|
-
return result;
|
|
42050
|
-
}
|
|
42051
|
-
function willBreakFn(doc) {
|
|
42052
|
-
if (doc.type === DOC_TYPE_GROUP && doc.break) {
|
|
42053
|
-
return true;
|
|
42054
|
-
}
|
|
42055
|
-
if (doc.type === DOC_TYPE_LINE && doc.hard) {
|
|
42056
|
-
return true;
|
|
42057
|
-
}
|
|
42058
|
-
if (doc.type === DOC_TYPE_BREAK_PARENT) {
|
|
42059
|
-
return true;
|
|
42060
|
-
}
|
|
41969
|
+
return { n, e: exp, s: sign, d: decimal };
|
|
42061
41970
|
}
|
|
42062
|
-
function
|
|
42063
|
-
|
|
41971
|
+
function stringify(value) {
|
|
41972
|
+
const n = value.n.toString();
|
|
41973
|
+
const sign = value.s === -1 ? "-" : "";
|
|
41974
|
+
const decimal = value.e < n.length ? "." + n.slice(value.e) : "";
|
|
41975
|
+
return sign + n.slice(0, value.e) + decimal;
|
|
42064
41976
|
}
|
|
42065
|
-
|
|
42066
|
-
|
|
42067
|
-
|
|
42068
|
-
|
|
42069
|
-
false,
|
|
42070
|
-
groupStack,
|
|
42071
|
-
-1
|
|
42072
|
-
);
|
|
42073
|
-
if (!parentGroup.expandedStates && !parentGroup.break) {
|
|
42074
|
-
parentGroup.break = "propagated";
|
|
41977
|
+
const equals = (a, b) => a.n === b.n && a.e === b.e;
|
|
41978
|
+
const compare = (a, b) => {
|
|
41979
|
+
if (a.s < b.s) {
|
|
41980
|
+
return -1;
|
|
42075
41981
|
}
|
|
42076
|
-
|
|
42077
|
-
|
|
42078
|
-
}
|
|
42079
|
-
function propagateBreaks(doc) {
|
|
42080
|
-
const alreadyVisitedSet = /* @__PURE__ */ new Set();
|
|
42081
|
-
const groupStack = [];
|
|
42082
|
-
function propagateBreaksOnEnterFn(doc2) {
|
|
42083
|
-
if (doc2.type === DOC_TYPE_BREAK_PARENT) {
|
|
42084
|
-
breakParentGroup(groupStack);
|
|
41982
|
+
else if (a.s > b.s) {
|
|
41983
|
+
return 1;
|
|
42085
41984
|
}
|
|
42086
|
-
|
|
42087
|
-
|
|
42088
|
-
|
|
42089
|
-
return false;
|
|
42090
|
-
}
|
|
42091
|
-
alreadyVisitedSet.add(doc2);
|
|
41985
|
+
const neg = a.s;
|
|
41986
|
+
if (a.e < b.e) {
|
|
41987
|
+
return (-1 * neg);
|
|
42092
41988
|
}
|
|
42093
|
-
|
|
42094
|
-
|
|
42095
|
-
if (doc2.type === DOC_TYPE_GROUP) {
|
|
42096
|
-
const group2 = groupStack.pop();
|
|
42097
|
-
if (group2.break) {
|
|
42098
|
-
breakParentGroup(groupStack);
|
|
42099
|
-
}
|
|
41989
|
+
else if (a.e > b.e) {
|
|
41990
|
+
return (1 * neg);
|
|
42100
41991
|
}
|
|
41992
|
+
let aN = a.n;
|
|
41993
|
+
let bN = b.n;
|
|
41994
|
+
if (a.d < b.d) {
|
|
41995
|
+
aN *= 10n ** BigInt(b.d - a.d);
|
|
41996
|
+
}
|
|
41997
|
+
else {
|
|
41998
|
+
bN *= 10n ** BigInt(a.d - b.d);
|
|
41999
|
+
}
|
|
42000
|
+
if (aN < bN)
|
|
42001
|
+
return (-1 * neg);
|
|
42002
|
+
if (aN > bN)
|
|
42003
|
+
return (1 * neg);
|
|
42004
|
+
return 0;
|
|
42005
|
+
};
|
|
42006
|
+
const NumericPrototype = {
|
|
42007
|
+
toString: function () {
|
|
42008
|
+
return stringify(this[InternalDataSym]);
|
|
42009
|
+
},
|
|
42010
|
+
asNumber: function () {
|
|
42011
|
+
const num = Number(stringify(this[InternalDataSym]));
|
|
42012
|
+
return equals(this[InternalDataSym], Numeric(num.toString())[InternalDataSym]) ? num : null;
|
|
42013
|
+
},
|
|
42014
|
+
asBigInt: function () {
|
|
42015
|
+
return this.isInteger ? this[InternalDataSym].n : null;
|
|
42016
|
+
},
|
|
42017
|
+
equals: function (other) {
|
|
42018
|
+
return equals(this[InternalDataSym], other[InternalDataSym]);
|
|
42019
|
+
},
|
|
42020
|
+
lt: function (other) {
|
|
42021
|
+
return compare(this[InternalDataSym], other[InternalDataSym]) === -1;
|
|
42022
|
+
},
|
|
42023
|
+
lte: function (other) {
|
|
42024
|
+
return compare(this[InternalDataSym], other[InternalDataSym]) <= 0;
|
|
42025
|
+
},
|
|
42026
|
+
gt: function (other) {
|
|
42027
|
+
return compare(this[InternalDataSym], other[InternalDataSym]) === 1;
|
|
42028
|
+
},
|
|
42029
|
+
gte: function (other) {
|
|
42030
|
+
return compare(this[InternalDataSym], other[InternalDataSym]) >= 0;
|
|
42031
|
+
},
|
|
42032
|
+
};
|
|
42033
|
+
NumericPrototype.toString = function () {
|
|
42034
|
+
return stringify(this[InternalDataSym]);
|
|
42035
|
+
};
|
|
42036
|
+
|
|
42037
|
+
/**
|
|
42038
|
+
* Set of known numeric ranges
|
|
42039
|
+
*/
|
|
42040
|
+
({
|
|
42041
|
+
int64: [
|
|
42042
|
+
Numeric("-9223372036854775808"),
|
|
42043
|
+
Numeric("9223372036854775807"),
|
|
42044
|
+
{ int: true, isJsNumber: false },
|
|
42045
|
+
],
|
|
42046
|
+
int32: [Numeric("-2147483648"), Numeric("2147483647"), { int: true, isJsNumber: true }],
|
|
42047
|
+
int16: [Numeric("-32768"), Numeric("32767"), { int: true, isJsNumber: true }],
|
|
42048
|
+
int8: [Numeric("-128"), Numeric("127"), { int: true, isJsNumber: true }],
|
|
42049
|
+
uint64: [Numeric("0"), Numeric("18446744073709551615"), { int: true, isJsNumber: false }],
|
|
42050
|
+
uint32: [Numeric("0"), Numeric("4294967295"), { int: true, isJsNumber: true }],
|
|
42051
|
+
uint16: [Numeric("0"), Numeric("65535"), { int: true, isJsNumber: true }],
|
|
42052
|
+
uint8: [Numeric("0"), Numeric("255"), { int: true, isJsNumber: true }],
|
|
42053
|
+
safeint: [
|
|
42054
|
+
Numeric(Number.MIN_SAFE_INTEGER.toString()),
|
|
42055
|
+
Numeric(Number.MAX_SAFE_INTEGER.toString()),
|
|
42056
|
+
{ int: true, isJsNumber: true },
|
|
42057
|
+
],
|
|
42058
|
+
float32: [Numeric("-3.4e38"), Numeric("3.4e38"), { int: false, isJsNumber: true }],
|
|
42059
|
+
float64: [
|
|
42060
|
+
Numeric(`${-Number.MAX_VALUE}`),
|
|
42061
|
+
Numeric(Number.MAX_VALUE.toString()),
|
|
42062
|
+
{ int: false, isJsNumber: true },
|
|
42063
|
+
],
|
|
42064
|
+
});
|
|
42065
|
+
|
|
42066
|
+
var ResolutionKind;
|
|
42067
|
+
(function (ResolutionKind) {
|
|
42068
|
+
ResolutionKind[ResolutionKind["Value"] = 0] = "Value";
|
|
42069
|
+
ResolutionKind[ResolutionKind["Type"] = 1] = "Type";
|
|
42070
|
+
ResolutionKind[ResolutionKind["BaseType"] = 2] = "BaseType";
|
|
42071
|
+
ResolutionKind[ResolutionKind["Constraint"] = 3] = "Constraint";
|
|
42072
|
+
})(ResolutionKind || (ResolutionKind = {}));
|
|
42073
|
+
var Related;
|
|
42074
|
+
(function (Related) {
|
|
42075
|
+
Related[Related["false"] = 0] = "false";
|
|
42076
|
+
Related[Related["true"] = 1] = "true";
|
|
42077
|
+
Related[Related["maybe"] = 2] = "maybe";
|
|
42078
|
+
})(Related || (Related = {}));
|
|
42079
|
+
|
|
42080
|
+
var Eu=Object.create;var $e=Object.defineProperty;var Cu=Object.getOwnPropertyDescriptor;var hu=Object.getOwnPropertyNames;var gu=Object.getPrototypeOf,yu=Object.prototype.hasOwnProperty;var or=e=>{throw TypeError(e)};var Au=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),We=(e,t)=>{for(var r in t)$e(e,r,{get:t[r],enumerable:!0});},ir=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of hu(t))!yu.call(e,o)&&o!==r&&$e(e,o,{get:()=>t[o],enumerable:!(n=Cu(t,o))||n.enumerable});return e};var Ae=(e,t,r)=>(r=e!=null?Eu(gu(e)):{},ir($e(r,"default",{value:e,enumerable:!0}),e)),Bu=e=>ir($e({},"__esModule",{value:!0}),e);var _u=(e,t,r)=>t.has(e)||or("Cannot "+r);var sr=(e,t,r)=>t.has(e)?or("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r);var fe=(e,t,r)=>(_u(e,t,"access private method"),r);var ar=ye(yt=>{Object.defineProperty(yt,"__esModule",{value:!0});yt.default=Dr;function Dr(){}Dr.prototype={diff:function(t,r){var n,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},u=o.callback;typeof o=="function"&&(u=o,o={}),this.options=o;var i=this;function s(C){return u?(setTimeout(function(){u(void 0,C);},0),!0):C}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var D=r.length,a=t.length,c=1,p=D+a;o.maxEditLength&&(p=Math.min(p,o.maxEditLength));var f=(n=o.timeout)!==null&&n!==void 0?n:1/0,F=Date.now()+f,l=[{oldPos:-1,lastComponent:void 0}],d=this.extractCommon(l[0],r,t,0);if(l[0].oldPos+1>=a&&d+1>=D)return s([{value:this.join(r),count:r.length}]);var m=-1/0,E=1/0;function A(){for(var C=Math.max(m,-c);C<=Math.min(E,c);C+=2){var h=void 0,v=l[C-1],k=l[C+1];v&&(l[C-1]=void 0);var W=!1;if(k){var ge=k.oldPos-C;W=k&&0<=ge&&ge<D;}var gt=v&&v.oldPos+1<a;if(!W&&!gt){l[C]=void 0;continue}if(!gt||W&&v.oldPos+1<k.oldPos?h=i.addToPath(k,!0,void 0,0):h=i.addToPath(v,void 0,!0,1),d=i.extractCommon(h,r,t,C),h.oldPos+1>=a&&d+1>=D)return s(xu(i,h.lastComponent,r,t,i.useLongestToken));l[C]=h,h.oldPos+1>=a&&(E=Math.min(E,C-1)),d+1>=D&&(m=Math.max(m,C+1));}c++;}if(u)(function C(){setTimeout(function(){if(c>p||Date.now()>F)return u();A()||C();},0);})();else for(;c<=p&&Date.now()<=F;){var _=A();if(_)return _}},addToPath:function(t,r,n,o){var u=t.lastComponent;return u&&u.added===r&&u.removed===n?{oldPos:t.oldPos+o,lastComponent:{count:u.count+1,added:r,removed:n,previousComponent:u.previousComponent}}:{oldPos:t.oldPos+o,lastComponent:{count:1,added:r,removed:n,previousComponent:u}}},extractCommon:function(t,r,n,o){for(var u=r.length,i=n.length,s=t.oldPos,D=s-o,a=0;D+1<u&&s+1<i&&this.equals(r[D+1],n[s+1]);)D++,s++,a++;return a&&(t.lastComponent={count:a,previousComponent:t.lastComponent}),t.oldPos=s,D},equals:function(t,r){return this.options.comparator?this.options.comparator(t,r):t===r||this.options.ignoreCase&&t.toLowerCase()===r.toLowerCase()},removeEmpty:function(t){for(var r=[],n=0;n<t.length;n++)t[n]&&r.push(t[n]);return r},castInput:function(t){return t},tokenize:function(t){return t.split("")},join:function(t){return t.join("")}};function xu(e,t,r,n,o){for(var u=[],i;t;)u.push(t),i=t.previousComponent,delete t.previousComponent,t=i;u.reverse();for(var s=0,D=u.length,a=0,c=0;s<D;s++){var p=u[s];if(p.removed){if(p.value=e.join(n.slice(c,c+p.count)),c+=p.count,s&&u[s-1].added){var F=u[s-1];u[s-1]=u[s],u[s]=F;}}else {if(!p.added&&o){var f=r.slice(a,a+p.count);f=f.map(function(d,m){var E=n[c+m];return E.length>d.length?E:d}),p.value=e.join(f);}else p.value=e.join(r.slice(a,a+p.count));a+=p.count,p.added||(c+=p.count);}}var l=u[D-1];return D>1&&typeof l.value=="string"&&(l.added||l.removed)&&e.equals("",l.value)&&(u[D-2].value+=l.value,u.pop()),u}});var cr=ye(_e=>{Object.defineProperty(_e,"__esModule",{value:!0});_e.diffArrays=Ou;_e.arrayDiff=void 0;var ku=wu(ar());function wu(e){return e&&e.__esModule?e:{default:e}}var Be=new ku.default;_e.arrayDiff=Be;Be.tokenize=function(e){return e.slice()};Be.join=Be.removeEmpty=function(e){return e};function Ou(e,t,r){return Be.diff(e,t,r)}});var ot=ye((tD,rn)=>{var tn=new Proxy(String,{get:()=>tn});rn.exports=tn;});var wn={};We(wn,{default:()=>Ao,shouldHighlight:()=>yo});var yo,Ao,On=Au(()=>{yo=()=>!1,Ao=String;});var Tn=ye((Ba,qt)=>{var g=String,Nn=function(){return {isColorSupported:!1,reset:g,bold:g,dim:g,italic:g,underline:g,inverse:g,hidden:g,strikethrough:g,black:g,red:g,green:g,yellow:g,blue:g,magenta:g,cyan:g,white:g,gray:g,bgBlack:g,bgRed:g,bgGreen:g,bgYellow:g,bgBlue:g,bgMagenta:g,bgCyan:g,bgWhite:g}};qt.exports=Nn();qt.exports.createColors=Nn;});var jn=ye(Ct=>{Object.defineProperty(Ct,"__esModule",{value:!0});Ct.codeFrameColumns=Yn;Ct.default=wo;var Sn=(On(),Bu(wn)),In=Bo(Tn(),!0);function Rn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return (Rn=function(n){return n?r:t})(e)}function Bo(e,t){if(e===null||typeof e!="object"&&typeof e!="function")return {default:e};var r=Rn(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if(u!=="default"&&{}.hasOwnProperty.call(e,u)){var i=o?Object.getOwnPropertyDescriptor(e,u):null;i&&(i.get||i.set)?Object.defineProperty(n,u,i):n[u]=e[u];}return n.default=e,r&&r.set(e,n),n}var _o=In.default,vn=(e,t)=>r=>e(t(r)),Jt;function bo(e){if(e){return (Jt)!=null||(Jt=(0, In.createColors)(!0)),Jt}return _o}var Pn=!1;function xo(e){return {gutter:e.gray,marker:vn(e.red,e.bold),message:vn(e.red,e.bold)}}var Ln=/\r\n|[\n\r\u2028\u2029]/;function ko(e,t,r){let n=Object.assign({column:0,line:-1},e.start),o=Object.assign({},n,e.end),{linesAbove:u=2,linesBelow:i=3}=r||{},s=n.line,D=n.column,a=o.line,c=o.column,p=Math.max(s-(u+1),0),f=Math.min(t.length,a+i);s===-1&&(p=0),a===-1&&(f=t.length);let F=a-s,l={};if(F)for(let d=0;d<=F;d++){let m=d+s;if(!D)l[m]=!0;else if(d===0){let E=t[m-1].length;l[m]=[D,E-D+1];}else if(d===F)l[m]=[0,c];else {let E=t[m-d].length;l[m]=[0,E];}}else D===c?D?l[s]=[D,0]:l[s]=!0:l[s]=[D,c-D];return {start:p,end:f,markerLines:l}}function Yn(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0, Sn.shouldHighlight)(r),o=bo(r.forceColor),u=xo(o),i=(d,m)=>n?d(m):m,s=e.split(Ln),{start:D,end:a,markerLines:c}=ko(t,s,r),p=t.start&&typeof t.start.column=="number",f=String(a).length,l=(n?(0, Sn.default)(e,r):e).split(Ln,a).slice(D,a).map((d,m)=>{let E=D+1+m,_=` ${` ${E}`.slice(-f)} |`,C=c[E],h=!c[E+1];if(C){let v="";if(Array.isArray(C)){let k=d.slice(0,Math.max(C[0]-1,0)).replace(/[^\t]/g," "),W=C[1]||1;v=[`
|
|
42081
|
+
`,i(u.gutter,_.replace(/\d/g," "))," ",k,i(u.marker,"^").repeat(W)].join(""),h&&r.message&&(v+=" "+i(u.message,r.message));}return [i(u.marker,">"),i(u.gutter,_),d.length>0?` ${d}`:"",v].join("")}else return ` ${i(u.gutter,_)}${d.length>0?` ${d}`:""}`}).join(`
|
|
42082
|
+
`);return r.message&&!p&&(l=`${" ".repeat(f+1)}${r.message}
|
|
42083
|
+
${l}`),n?o.reset(l):l}function wo(e,t,r,n={}){if(!Pn){Pn=!0;let u="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";{let i=new Error(u);i.name="DeprecationWarning",console.warn(new Error(u));}}return r=Math.max(r,0),Yn(e,{start:{column:r,line:t}},n)}});var ur={};We(ur,{__debug:()=>ai,check:()=>si,doc:()=>tr,format:()=>mu,formatWithCursor:()=>du,getSupportInfo:()=>Di,util:()=>nr,version:()=>Du});var bu=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},re=bu;var Qn=Ae(cr());function lr(e){let t=e.indexOf("\r");return t>=0?e.charAt(t+1)===`
|
|
42084
|
+
`?"crlf":"cr":"lf"}function be(e){switch(e){case"cr":return "\r";case"crlf":return `\r
|
|
42085
|
+
`;default:return `
|
|
42086
|
+
`}}function At(e,t){let r;switch(t){case`
|
|
42087
|
+
`:r=/\n/g;break;case"\r":r=/\r/g;break;case`\r
|
|
42088
|
+
`:r=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(t)}.`)}let n=e.match(r);return n?n.length:0}function fr(e){return re(!1,e,/\r\n?/g,`
|
|
42089
|
+
`)}var G="string",V="array",z="cursor",P="indent",L="align",I="trim",b="group",N="fill",x="if-break",R="indent-if-break",Y="line-suffix",j="line-suffix-boundary",B="line",T="label",w="break-parent",Ue=new Set([z,P,L,I,b,N,x,R,Y,j,B,T,w]);function Nu(e){if(typeof e=="string")return G;if(Array.isArray(e))return V;if(!e)return;let{type:t}=e;if(Ue.has(t))return t}var K=Nu;var Tu=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Su(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return `Unexpected doc '${t}',
|
|
42090
|
+
Expected it to be 'string' or 'object'.`;if(K(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return `Unexpected doc '${r}'.`;let n=Tu([...Ue].map(o=>`'${o}'`));return `Unexpected doc.type '${e.type}'.
|
|
42091
|
+
Expected it to be ${n}.`}var Bt=class extends Error{name="InvalidDocError";constructor(t){super(Su(t)),this.doc=t;}},Z=Bt;var Fr={};function vu(e,t,r,n){let o=[e];for(;o.length>0;){let u=o.pop();if(u===Fr){r(o.pop());continue}r&&o.push(u,Fr);let i=K(u);if(!i)throw new Z(u);if((t==null?void 0:t(u))!==!1)switch(i){case V:case N:{let s=i===V?u:u.parts;for(let D=s.length,a=D-1;a>=0;--a)o.push(s[a]);break}case x:o.push(u.flatContents,u.breakContents);break;case b:if(n&&u.expandedStates)for(let s=u.expandedStates.length,D=s-1;D>=0;--D)o.push(u.expandedStates[D]);else o.push(u.contents);break;case L:case P:case R:case T:case Y:o.push(u.contents);break;case G:case z:case I:case j:case B:case w:break;default:throw new Z(u)}}}var xe=vu;var pr=()=>{},Ge=pr;function De(e){return {type:P,contents:e}}function se(e,t){return {type:L,contents:t,n:e}}function _t(e,t={}){return Ge(t.expandedStates),{type:b,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function dr(e){return se(Number.NEGATIVE_INFINITY,e)}function mr(e){return se({type:"root"},e)}function Er(e){return se(-1,e)}function Cr(e,t){return _t(e[0],{...t,expandedStates:e})}function ze(e){return {type:N,parts:e}}function hr(e,t="",r={}){return {type:x,breakContents:e,flatContents:t,groupId:r.groupId}}function gr(e,t){return {type:R,contents:e,groupId:t.groupId,negate:t.negate}}function ke(e){return {type:Y,contents:e}}var yr={type:j},Fe={type:w},Ar={type:I},we={type:B,hard:!0},bt={type:B,hard:!0,literal:!0},Ke={type:B},Br={type:B,soft:!0},q=[we,Fe],He=[bt,Fe],Oe={type:z};function Ne(e,t){let r=[];for(let n=0;n<t.length;n++)n!==0&&r.push(e),r.push(t[n]);return r}function qe(e,t,r){let n=e;if(t>0){for(let o=0;o<Math.floor(t/r);++o)n=De(n);n=se(t%r,n),n=se(Number.NEGATIVE_INFINITY,n);}return n}function _r(e,t){return e?{type:T,label:e,contents:t}:t}function Q(e){var t;if(!e)return "";if(Array.isArray(e)){let r=[];for(let n of e)if(Array.isArray(n))r.push(...Q(n));else {let o=Q(n);o!==""&&r.push(o);}return r}return e.type===x?{...e,breakContents:Q(e.breakContents),flatContents:Q(e.flatContents)}:e.type===b?{...e,contents:Q(e.contents),expandedStates:(t=e.expandedStates)==null?void 0:t.map(Q)}:e.type===N?{type:"fill",parts:e.parts.map(Q)}:e.contents?{...e,contents:Q(e.contents)}:e}function br(e){let t=Object.create(null),r=new Set;return n(Q(e));function n(u,i,s){var D,a;if(typeof u=="string")return JSON.stringify(u);if(Array.isArray(u)){let c=u.map(n).filter(Boolean);return c.length===1?c[0]:`[${c.join(", ")}]`}if(u.type===B){let c=((D=s==null?void 0:s[i+1])==null?void 0:D.type)===w;return u.literal?c?"literalline":"literallineWithoutBreakParent":u.hard?c?"hardline":"hardlineWithoutBreakParent":u.soft?"softline":"line"}if(u.type===w)return ((a=s==null?void 0:s[i-1])==null?void 0:a.type)===B&&s[i-1].hard?void 0:"breakParent";if(u.type===I)return "trim";if(u.type===P)return "indent("+n(u.contents)+")";if(u.type===L)return u.n===Number.NEGATIVE_INFINITY?"dedentToRoot("+n(u.contents)+")":u.n<0?"dedent("+n(u.contents)+")":u.n.type==="root"?"markAsRoot("+n(u.contents)+")":"align("+JSON.stringify(u.n)+", "+n(u.contents)+")";if(u.type===x)return "ifBreak("+n(u.breakContents)+(u.flatContents?", "+n(u.flatContents):"")+(u.groupId?(u.flatContents?"":', ""')+`, { groupId: ${o(u.groupId)} }`:"")+")";if(u.type===R){let c=[];u.negate&&c.push("negate: true"),u.groupId&&c.push(`groupId: ${o(u.groupId)}`);let p=c.length>0?`, { ${c.join(", ")} }`:"";return `indentIfBreak(${n(u.contents)}${p})`}if(u.type===b){let c=[];u.break&&u.break!=="propagated"&&c.push("shouldBreak: true"),u.id&&c.push(`id: ${o(u.id)}`);let p=c.length>0?`, { ${c.join(", ")} }`:"";return u.expandedStates?`conditionalGroup([${u.expandedStates.map(f=>n(f)).join(",")}]${p})`:`group(${n(u.contents)}${p})`}if(u.type===N)return `fill([${u.parts.map(c=>n(c)).join(", ")}])`;if(u.type===Y)return "lineSuffix("+n(u.contents)+")";if(u.type===j)return "lineSuffixBoundary";if(u.type===T)return `label(${JSON.stringify(u.label)}, ${n(u.contents)})`;throw new Error("Unknown doc type "+u.type)}function o(u){if(typeof u!="symbol")return JSON.stringify(String(u));if(u in t)return t[u];let i=u.description||"symbol";for(let s=0;;s++){let D=i+(s>0?` #${s}`:"");if(!r.has(D))return r.add(D),t[u]=`Symbol.for(${JSON.stringify(D)})`}}}var Pu=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},y=Pu;var xr=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function kr(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function wr(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Or=e=>!(kr(e)||wr(e));var Lu=/[^\x20-\x7F]/;function Iu(e){if(!e)return 0;if(!Lu.test(e))return e.length;e=e.replace(xr()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Or(n)?1:2);}return t}var Te=Iu;function ve(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(u){if(r.has(u))return r.get(u);let i=o(u);return r.set(u,i),i}function o(u){switch(K(u)){case V:return t(u.map(n));case N:return t({...u,parts:u.parts.map(n)});case x:return t({...u,breakContents:n(u.breakContents),flatContents:n(u.flatContents)});case b:{let{expandedStates:i,contents:s}=u;return i?(i=i.map(n),s=i[0]):s=n(s),t({...u,contents:s,expandedStates:i})}case L:case P:case R:case T:case Y:return t({...u,contents:n(u.contents)});case G:case z:case I:case j:case B:case w:return t(u);default:throw new Z(u)}}}function Je(e,t,r){let n=r,o=!1;function u(i){if(o)return !1;let s=t(i);s!==void 0&&(o=!0,n=s);}return xe(e,u),n}function Ru(e){if(e.type===b&&e.break||e.type===B&&e.hard||e.type===w)return !0}function Sr(e){return Je(e,Ru,!1)}function Nr(e){if(e.length>0){let t=y(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated");}return null}function vr(e){let t=new Set,r=[];function n(u){if(u.type===w&&Nr(r),u.type===b){if(r.push(u),t.has(u))return !1;t.add(u);}}function o(u){u.type===b&&r.pop().break&&Nr(r);}xe(e,n,o,!0);}function Yu(e){return e.type===B&&!e.hard?e.soft?"":" ":e.type===x?e.flatContents:e}function Pr(e){return ve(e,Yu)}function Tr(e){for(e=[...e];e.length>=2&&y(!1,e,-2).type===B&&y(!1,e,-1).type===w;)e.length-=2;if(e.length>0){let t=Se(y(!1,e,-1));e[e.length-1]=t;}return e}function Se(e){switch(K(e)){case P:case R:case b:case Y:case T:{let t=Se(e.contents);return {...e,contents:t}}case x:return {...e,breakContents:Se(e.breakContents),flatContents:Se(e.flatContents)};case N:return {...e,parts:Tr(e.parts)};case V:return Tr(e);case G:return e.replace(/[\n\r]*$/,"");case L:case z:case I:case j:case B:case w:break;default:throw new Z(e)}return e}function Xe(e){return Se(Mu(e))}function ju(e){switch(K(e)){case N:if(e.parts.every(t=>t===""))return "";break;case b:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return "";if(e.contents.type===b&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case L:case P:case R:case Y:if(!e.contents)return "";break;case x:if(!e.flatContents&&!e.breakContents)return "";break;case V:{let t=[];for(let r of e){if(!r)continue;let[n,...o]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof y(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...o);}return t.length===0?"":t.length===1?t[0]:t}case G:case z:case I:case j:case B:case T:case w:break;default:throw new Z(e)}return e}function Mu(e){return ve(e,t=>ju(t))}function Lr(e,t=He){return ve(e,r=>typeof r=="string"?Ne(t,r.split(`
|
|
42092
|
+
`)):r)}function Vu(e){if(e.type===B)return !0}function Ir(e){return Je(e,Vu,!1)}function Ze(e,t){return e.type===T?{...e,contents:t(e.contents)}:t(e)}var M=Symbol("MODE_BREAK"),J=Symbol("MODE_FLAT"),Pe=Symbol("cursor");function Rr(){return {value:"",length:0,queue:[]}}function $u(e,t){return xt(e,{type:"indent"},t)}function Wu(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Rr():t<0?xt(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:xt(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function xt(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],o="",u=0,i=0,s=0;for(let l of n)switch(l.type){case"indent":c(),r.useTabs?D(1):a(r.tabWidth);break;case"stringAlign":c(),o+=l.n,u+=l.n.length;break;case"numberAlign":i+=1,s+=l.n;break;default:throw new Error(`Unexpected type '${l.type}'`)}return f(),{...e,value:o,length:u,queue:n};function D(l){o+=" ".repeat(l),u+=r.tabWidth*l;}function a(l){o+=" ".repeat(l),u+=l;}function c(){r.useTabs?p():f();}function p(){i>0&&D(i),F();}function f(){s>0&&a(s),F();}function F(){i=0,s=0;}}function kt(e){let t=0,r=0,n=e.length;e:for(;n--;){let o=e[n];if(o===Pe){r++;continue}for(let u=o.length-1;u>=0;u--){let i=o[u];if(i===" "||i===" ")t++;else {e[n]=o.slice(0,u+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(Pe);return t}function Qe(e,t,r,n,o,u){if(r===Number.POSITIVE_INFINITY)return !0;let i=t.length,s=[e],D=[];for(;r>=0;){if(s.length===0){if(i===0)return !0;s.push(t[--i]);continue}let{mode:a,doc:c}=s.pop(),p=K(c);switch(p){case G:D.push(c),r-=Te(c);break;case V:case N:{let f=p===V?c:c.parts;for(let F=f.length-1;F>=0;F--)s.push({mode:a,doc:f[F]});break}case P:case L:case R:case T:s.push({mode:a,doc:c.contents});break;case I:r+=kt(D);break;case b:{if(u&&c.break)return !1;let f=c.break?M:a,F=c.expandedStates&&f===M?y(!1,c.expandedStates,-1):c.contents;s.push({mode:f,doc:F});break}case x:{let F=(c.groupId?o[c.groupId]||J:a)===M?c.breakContents:c.flatContents;F&&s.push({mode:a,doc:F});break}case B:if(a===M||c.hard)return !0;c.soft||(D.push(" "),r--);break;case Y:n=!0;break;case j:if(n)return !1;break}}return !1}function pe(e,t){let r={},n=t.printWidth,o=be(t.endOfLine),u=0,i=[{ind:Rr(),mode:M,doc:e}],s=[],D=!1,a=[],c=0;for(vr(e);i.length>0;){let{ind:f,mode:F,doc:l}=i.pop();switch(K(l)){case G:{let d=o!==`
|
|
42093
|
+
`?re(!1,l,`
|
|
42094
|
+
`,o):l;s.push(d),i.length>0&&(u+=Te(d));break}case V:for(let d=l.length-1;d>=0;d--)i.push({ind:f,mode:F,doc:l[d]});break;case z:if(c>=2)throw new Error("There are too many 'cursor' in doc.");s.push(Pe),c++;break;case P:i.push({ind:$u(f,t),mode:F,doc:l.contents});break;case L:i.push({ind:Wu(f,l.n,t),mode:F,doc:l.contents});break;case I:u-=kt(s);break;case b:switch(F){case J:if(!D){i.push({ind:f,mode:l.break?M:J,doc:l.contents});break}case M:{D=!1;let d={ind:f,mode:J,doc:l.contents},m=n-u,E=a.length>0;if(!l.break&&Qe(d,i,m,E,r))i.push(d);else if(l.expandedStates){let A=y(!1,l.expandedStates,-1);if(l.break){i.push({ind:f,mode:M,doc:A});break}else for(let _=1;_<l.expandedStates.length+1;_++)if(_>=l.expandedStates.length){i.push({ind:f,mode:M,doc:A});break}else {let C=l.expandedStates[_],h={ind:f,mode:J,doc:C};if(Qe(h,i,m,E,r)){i.push(h);break}}}else i.push({ind:f,mode:M,doc:l.contents});break}}l.id&&(r[l.id]=y(!1,i,-1).mode);break;case N:{let d=n-u,{parts:m}=l;if(m.length===0)break;let[E,A]=m,_={ind:f,mode:J,doc:E},C={ind:f,mode:M,doc:E},h=Qe(_,[],d,a.length>0,r,!0);if(m.length===1){h?i.push(_):i.push(C);break}let v={ind:f,mode:J,doc:A},k={ind:f,mode:M,doc:A};if(m.length===2){h?i.push(v,_):i.push(k,C);break}m.splice(0,2);let W={ind:f,mode:F,doc:ze(m)},ge=m[0];Qe({ind:f,mode:J,doc:[E,A,ge]},[],d,a.length>0,r,!0)?i.push(W,v,_):h?i.push(W,k,_):i.push(W,k,C);break}case x:case R:{let d=l.groupId?r[l.groupId]:F;if(d===M){let m=l.type===x?l.breakContents:l.negate?l.contents:De(l.contents);m&&i.push({ind:f,mode:F,doc:m});}if(d===J){let m=l.type===x?l.flatContents:l.negate?De(l.contents):l.contents;m&&i.push({ind:f,mode:F,doc:m});}break}case Y:a.push({ind:f,mode:F,doc:l.contents});break;case j:a.length>0&&i.push({ind:f,mode:F,doc:we});break;case B:switch(F){case J:if(l.hard)D=!0;else {l.soft||(s.push(" "),u+=1);break}case M:if(a.length>0){i.push({ind:f,mode:F,doc:l},...a.reverse()),a.length=0;break}l.literal?f.root?(s.push(o,f.root.value),u=f.root.length):(s.push(o),u=0):(u-=kt(s),s.push(o+f.value),u=f.length);break}break;case T:i.push({ind:f,mode:F,doc:l.contents});break;case w:break;default:throw new Z(l)}i.length===0&&a.length>0&&(i.push(...a.reverse()),a.length=0);}let p=s.indexOf(Pe);if(p!==-1){let f=s.indexOf(Pe,p+1),F=s.slice(0,p).join(""),l=s.slice(p+1,f).join(""),d=s.slice(f+1).join("");return {formatted:F+l+d,cursorNodeStart:F.length,cursorNodeText:l}}return {formatted:s.join("")}}function Uu(e,t,r=0){let n=0;for(let o=r;o<e.length;++o)e[o]===" "?n=n+t-n%t:n++;return n}var de=Uu;var ee,Ot,et,wt=class{constructor(t){sr(this,ee);this.stack=[t];}get key(){let{stack:t,siblings:r}=this;return y(!1,t,r===null?-2:-4)??null}get index(){return this.siblings===null?null:y(!1,this.stack,-2)}get node(){return y(!1,this.stack,-1)}get parent(){return this.getNode(1)}get grandparent(){return this.getNode(2)}get isInArray(){return this.siblings!==null}get siblings(){let{stack:t}=this,r=y(!1,t,-3);return Array.isArray(r)?r:null}get next(){let{siblings:t}=this;return t===null?null:t[this.index+1]}get previous(){let{siblings:t}=this;return t===null?null:t[this.index-1]}get isFirst(){return this.index===0}get isLast(){let{siblings:t,index:r}=this;return t!==null&&r===t.length-1}get isRoot(){return this.stack.length===1}get root(){return this.stack[0]}get ancestors(){return [...fe(this,ee,et).call(this)]}getName(){let{stack:t}=this,{length:r}=t;return r>1?y(!1,t,-2):null}getValue(){return y(!1,this.stack,-1)}getNode(t=0){let r=fe(this,ee,Ot).call(this,t);return r===-1?null:this.stack[r]}getParentNode(t=0){return this.getNode(t+1)}call(t,...r){let{stack:n}=this,{length:o}=n,u=y(!1,n,-1);for(let i of r)u=u[i],n.push(i,u);try{return t(this)}finally{n.length=o;}}callParent(t,r=0){let n=fe(this,ee,Ot).call(this,r+1),o=this.stack.splice(n+1);try{return t(this)}finally{this.stack.push(...o);}}each(t,...r){let{stack:n}=this,{length:o}=n,u=y(!1,n,-1);for(let i of r)u=u[i],n.push(i,u);try{for(let i=0;i<u.length;++i)n.push(i,u[i]),t(this,i,u),n.length-=2;}finally{n.length=o;}}map(t,...r){let n=[];return this.each((o,u,i)=>{n[u]=t(o,u,i);},...r),n}match(...t){let r=this.stack.length-1,n=null,o=this.stack[r--];for(let u of t){if(o===void 0)return !1;let i=null;if(typeof n=="number"&&(i=n,n=this.stack[r--],o=this.stack[r--]),u&&!u(o,n,i))return !1;n=this.stack[r--],o=this.stack[r--];}return !0}findAncestor(t){for(let r of fe(this,ee,et).call(this))if(t(r))return r}hasAncestor(t){for(let r of fe(this,ee,et).call(this))if(t(r))return !0;return !1}};ee=new WeakSet,Ot=function(t){let{stack:r}=this;for(let n=r.length-1;n>=0;n-=2)if(!Array.isArray(r[n])&&--t<0)return n;return -1},et=function*(){let{stack:t}=this;for(let r=t.length-3;r>=0;r-=2){let n=t[r];Array.isArray(n)||(yield n);}};var Yr=wt;var jr=new Proxy(()=>{},{get:()=>jr}),Le=jr;function Gu(e){return e!==null&&typeof e=="object"}var Mr=Gu;function*Nt(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,o=u=>Mr(u)&&n(u);for(let u of r(e)){let i=e[u];if(Array.isArray(i))for(let s of i)o(s)&&(yield s);else o(i)&&(yield i);}}function*Vr(e,t){let r=[e];for(let n=0;n<r.length;n++){let o=r[n];for(let u of Nt(o,t))yield u,r.push(u);}}function me(e){return (t,r,n)=>{let o=!!(n!=null&&n.backwards);if(r===!1)return !1;let{length:u}=t,i=r;for(;i>=0&&i<u;){let s=t.charAt(i);if(e instanceof RegExp){if(!e.test(s))return i}else if(!e.includes(s))return i;o?i--:i++;}return i===-1||i===u?i:!1}}var $r=me(/\s/),S=me(" "),tt=me(",; "),rt=me(/[^\n\r]/);function zu(e,t,r){let n=!!(r!=null&&r.backwards);if(t===!1)return !1;let o=e.charAt(t);if(n){if(e.charAt(t-1)==="\r"&&o===`
|
|
42095
|
+
`)return t-2;if(o===`
|
|
42096
|
+
`||o==="\r"||o==="\u2028"||o==="\u2029")return t-1}else {if(o==="\r"&&e.charAt(t+1)===`
|
|
42097
|
+
`)return t+2;if(o===`
|
|
42098
|
+
`||o==="\r"||o==="\u2028"||o==="\u2029")return t+1}return t}var $=zu;function Ku(e,t,r={}){let n=S(e,r.backwards?t-1:t,r),o=$(e,n,r);return n!==o}var U=Ku;function Hu(e){return Array.isArray(e)&&e.length>0}var Tt=Hu;var Wr=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),qu=e=>Object.keys(e).filter(t=>!Wr.has(t));function Ju(e){return e?t=>e(t,Wr):qu}var X=Ju;function Xu(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function St(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=Xu(e);}function ne(e,t){t.leading=!0,t.trailing=!1,St(e,t);}function te(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),St(e,t);}function ue(e,t){t.leading=!1,t.trailing=!0,St(e,t);}var vt=new WeakMap;function nt(e,t){if(vt.has(e))return vt.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:o},locStart:u,locEnd:i}=t;if(!n)return [];let s=((r==null?void 0:r(e,t))??[...Nt(e,{getVisitorKeys:X(o)})]).flatMap(D=>n(D)?[D]:nt(D,t));return s.sort((D,a)=>u(D)-u(a)||i(D)-i(a)),vt.set(e,s),s}function Gr(e,t,r,n){let{locStart:o,locEnd:u}=r,i=o(t),s=u(t),D=nt(e,r),a,c,p=0,f=D.length;for(;p<f;){let F=p+f>>1,l=D[F],d=o(l),m=u(l);if(d<=i&&s<=m)return Gr(l,t,r,l);if(m<=i){a=l,p=F+1;continue}if(s<=d){c=l,f=F;continue}throw new Error("Comment location overlaps with node location")}if((n==null?void 0:n.type)==="TemplateLiteral"){let{quasis:F}=n,l=Lt(F,t,r);a&&Lt(F,a,r)!==l&&(a=null),c&&Lt(F,c,r)!==l&&(c=null);}return {enclosingNode:n,precedingNode:a,followingNode:c}}var Pt=()=>!1;function zr(e,t){let{comments:r}=e;if(delete e.comments,!Tt(r)||!t.printer.canAttachComment)return;let n=[],{locStart:o,locEnd:u,printer:{experimentalFeatures:{avoidAstMutation:i=!1}={},handleComments:s={}},originalText:D}=t,{ownLine:a=Pt,endOfLine:c=Pt,remaining:p=Pt}=s,f=r.map((F,l)=>({...Gr(e,F,t),comment:F,text:D,options:t,ast:e,isLastComment:r.length-1===l}));for(let[F,l]of f.entries()){let{comment:d,precedingNode:m,enclosingNode:E,followingNode:A,text:_,options:C,ast:h,isLastComment:v}=l;if(C.parser==="json"||C.parser==="json5"||C.parser==="jsonc"||C.parser==="__js_expression"||C.parser==="__ts_expression"||C.parser==="__vue_expression"||C.parser==="__vue_ts_expression"){if(o(d)-o(h)<=0){ne(h,d);continue}if(u(d)-u(h)>=0){ue(h,d);continue}}let k;if(i?k=[l]:(d.enclosingNode=E,d.precedingNode=m,d.followingNode=A,k=[d,_,C,h,v]),Zu(_,C,f,F))d.placement="ownLine",a(...k)||(A?ne(A,d):m?ue(m,d):E?te(E,d):te(h,d));else if(Qu(_,C,f,F))d.placement="endOfLine",c(...k)||(m?ue(m,d):A?ne(A,d):E?te(E,d):te(h,d));else if(d.placement="remaining",!p(...k))if(m&&A){let W=n.length;W>0&&n[W-1].followingNode!==A&&Ur(n,C),n.push(l);}else m?ue(m,d):A?ne(A,d):E?te(E,d):te(h,d);}if(Ur(n,t),!i)for(let F of r)delete F.precedingNode,delete F.enclosingNode,delete F.followingNode;}var Kr=e=>!/[\S\n\u2028\u2029]/.test(e);function Zu(e,t,r,n){let{comment:o,precedingNode:u}=r[n],{locStart:i,locEnd:s}=t,D=i(o);if(u)for(let a=n-1;a>=0;a--){let{comment:c,precedingNode:p}=r[a];if(p!==u||!Kr(e.slice(s(c),D)))break;D=i(c);}return U(e,D,{backwards:!0})}function Qu(e,t,r,n){let{comment:o,followingNode:u}=r[n],{locStart:i,locEnd:s}=t,D=s(o);if(u)for(let a=n+1;a<r.length;a++){let{comment:c,followingNode:p}=r[a];if(p!==u||!Kr(e.slice(D,i(c))))break;D=s(c);}return U(e,D)}function Ur(e,t){var s,D;let r=e.length;if(r===0)return;let{precedingNode:n,followingNode:o}=e[0],u=t.locStart(o),i;for(i=r;i>0;--i){let{comment:a,precedingNode:c,followingNode:p}=e[i-1];Le.strictEqual(c,n),Le.strictEqual(p,o);let f=t.originalText.slice(t.locEnd(a),u);if(((D=(s=t.printer).isGap)==null?void 0:D.call(s,f,t))??/^[\s(]*$/.test(f))u=t.locStart(a);else break}for(let[a,{comment:c}]of e.entries())a<i?ue(n,c):ne(o,c);for(let a of [n,o])a.comments&&a.comments.length>1&&a.comments.sort((c,p)=>t.locStart(c)-t.locStart(p));e.length=0;}function Lt(e,t,r){let n=r.locStart(t)-1;for(let o=1;o<e.length;++o)if(n<r.locStart(e[o]))return o-1;return 0}function eo(e,t){let r=t-1;r=S(e,r,{backwards:!0}),r=$(e,r,{backwards:!0}),r=S(e,r,{backwards:!0});let n=$(e,r,{backwards:!0});return r!==n}var Ie=eo;function Hr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function to(e,t){var c;let r=e.node,n=[Hr(e,t)],{printer:o,originalText:u,locStart:i,locEnd:s}=t;if((c=o.isBlockComment)==null?void 0:c.call(o,r)){let p=U(u,s(r))?U(u,i(r),{backwards:!0})?q:Ke:" ";n.push(p);}else n.push(q);let a=$(u,S(u,s(r)));return a!==!1&&U(u,a)&&n.push(q),n}function ro(e,t,r){var a;let n=e.node,o=Hr(e,t),{printer:u,originalText:i,locStart:s}=t,D=(a=u.isBlockComment)==null?void 0:a.call(u,n);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||U(i,s(n),{backwards:!0})){let c=Ie(i,s(n));return {doc:ke([q,c?q:"",o]),isBlock:D,hasLineSuffix:!0}}return !D||r!=null&&r.hasLineSuffix?{doc:[ke([" ",o]),Fe],isBlock:D,hasLineSuffix:!0}:{doc:[" ",o],isBlock:D,hasLineSuffix:!1}}function no(e,t){let r=e.node;if(!r)return {};let n=t[Symbol.for("printedComments")];if((r.comments||[]).filter(D=>!n.has(D)).length===0)return {leading:"",trailing:""};let u=[],i=[],s;return e.each(()=>{let D=e.node;if(n!=null&&n.has(D))return;let{leading:a,trailing:c}=D;a?u.push(to(e,t)):c&&(s=ro(e,t,s),i.push(s.doc));},"comments"),{leading:u,trailing:i}}function qr(e,t,r){let{leading:n,trailing:o}=no(e,r);return !n&&!o?t:Ze(t,u=>[n,u,o])}function Jr(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed;}}var Re=class extends Error{name="ConfigError"},Ye=class extends Error{name="UndefinedParserError"};var Zr={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing
|
|
42099
|
+
(mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:e=>typeof e=="string"||typeof e=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:e=>typeof e=="string"||typeof e=="object",cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive).
|
|
42100
|
+
The range will extend forwards to the end of the selected statement.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset.
|
|
42101
|
+
The range will extend backwards to the start of the first line containing the selected statement.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment
|
|
42102
|
+
in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function ut({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(o=>o.languages??[]),n=[];for(let o of io(Object.assign({},...e.map(({options:u})=>u),Zr)))!t&&o.deprecated||(Array.isArray(o.choices)&&(t||(o.choices=o.choices.filter(u=>!u.deprecated)),o.name==="parser"&&(o.choices=[...o.choices,...oo(o.choices,r,e)])),o.pluginDefaults=Object.fromEntries(e.filter(u=>{var i;return ((i=u.defaultOptions)==null?void 0:i[o.name])!==void 0}).map(u=>[u.name,u.defaultOptions[o.name]])),n.push(o));return {languages:r,options:n}}function*oo(e,t,r){let n=new Set(e.map(o=>o.value));for(let o of t)if(o.parsers){for(let u of o.parsers)if(!n.has(u)){n.add(u);let i=r.find(D=>D.parsers&&Object.prototype.hasOwnProperty.call(D.parsers,u)),s=o.name;i!=null&&i.name&&(s+=` (plugin: ${i.name})`),yield {value:u,description:s};}}}function io(e){let t=[];for(let[r,n]of Object.entries(e)){let o={name:r,...n};Array.isArray(o.default)&&(o.default=y(!1,o.default,-1).value),t.push(o);}return t}var so=e=>String(e).split(/[/\\]/).pop();function Qr(e,t){if(!t)return;let r=so(t).toLowerCase();return e.find(({filenames:n})=>n==null?void 0:n.some(o=>o.toLowerCase()===r))??e.find(({extensions:n})=>n==null?void 0:n.some(o=>r.endsWith(o)))}function Do(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r==null?void 0:r.includes(t))??e.find(({extensions:r})=>r==null?void 0:r.includes(`.${t}`))}function ao(e,t){let r=e.plugins.flatMap(o=>o.languages??[]),n=Do(r,t.language)??Qr(r,t.physicalFile)??Qr(r,t.file)??(t.physicalFile,void 0);return n==null?void 0:n.parsers[0]}var en=ao;var oe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(r=>oe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${oe.key(r)}: ${oe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>oe.value({[e]:t})};var It=Ae(ot()),nn=(e,t,{descriptor:r})=>{let n=[`${It.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${It.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."};var ae=Ae(ot());var it=Symbol.for("vnopts.VALUE_NOT_EXIST"),Ee=Symbol.for("vnopts.VALUE_UNCHANGED");var un=" ".repeat(2),sn=(e,t,r)=>{let{text:n,list:o}=r.normalizeExpectedResult(r.schemas[e].expected(r)),u=[];return n&&u.push(on(e,t,n,r.descriptor)),o&&u.push([on(e,t,o.title,r.descriptor)].concat(o.values.map(i=>Dn(i,r.loggerPrintWidth))).join(`
|
|
42103
|
+
`)),an(u,r.loggerPrintWidth)};function on(e,t,r,n){return [`Invalid ${ae.default.red(n.key(e))} value.`,`Expected ${ae.default.blue(r)},`,`but received ${t===it?ae.default.gray("nothing"):ae.default.red(n.value(t))}.`].join(" ")}function Dn({text:e,list:t},r){let n=[];return e&&n.push(`- ${ae.default.blue(e)}`),t&&n.push([`- ${ae.default.blue(t.title)}:`].concat(t.values.map(o=>Dn(o,r-un.length).replace(/^|\n/g,`$&${un}`))).join(`
|
|
42104
|
+
`)),an(n,r)}function an(e,t){if(e.length===1)return e[0];let[r,n]=e,[o,u]=e.map(i=>i.split(`
|
|
42105
|
+
`,1)[0].length);return o>t&&o>u?n:r}var jt=Ae(ot());var Rt=[],cn=[];function Yt(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,o=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-o);)n--,o--;let u=0;for(;u<n&&e.charCodeAt(u)===t.charCodeAt(u);)u++;if(n-=u,o-=u,n===0)return o;let i,s,D,a,c=0,p=0;for(;c<n;)cn[c]=e.charCodeAt(u+c),Rt[c]=++c;for(;p<o;)for(i=t.charCodeAt(u+p),D=p++,s=p,c=0;c<n;c++)a=i===cn[c]?D:D+1,D=Rt[c],s=Rt[c]=D>s?a>s?s+1:a:a>D?D+1:a;return s}var st=(e,t,{descriptor:r,logger:n,schemas:o})=>{let u=[`Ignored unknown option ${jt.default.yellow(r.pair({key:e,value:t}))}.`],i=Object.keys(o).sort().find(s=>Yt(e,s)<3);i&&u.push(`Did you mean ${jt.default.blue(r.key(i))}?`),n.warn(u.join(" "));};var co=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function lo(e,t){let r=new e(t),n=Object.create(r);for(let o of co)o in t&&(n[o]=fo(t[o],r,O.prototype[o].length));return n}var O=class{static create(t){return lo(this,t)}constructor(t){this.name=t.name;}default(t){}expected(t){return "nothing"}validate(t,r){return !1}deprecated(t,r){return !1}forward(t,r){}redirect(t,r){}overlap(t,r,n){return t}preprocess(t,r){return t}postprocess(t,r){return Ee}};function fo(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}var Dt=class extends O{constructor(t){super(t),this._sourceName=t.sourceName;}expected(t){return t.schemas[this._sourceName].expected(t)}validate(t,r){return r.schemas[this._sourceName].validate(t,r)}redirect(t,r){return this._sourceName}};var at$1=class at extends O{expected(){return "anything"}validate(){return !0}};var ct=class extends O{constructor({valueSchema:t,name:r=t.name,...n}){super({...n,name:r}),this._valueSchema=t;}expected(t){let{text:r,list:n}=t.normalizeExpectedResult(this._valueSchema.expected(t));return {text:r&&`an array of ${r}`,list:n&&{title:"an array of the following values",values:[{list:n}]}}}validate(t,r){if(!Array.isArray(t))return !1;let n=[];for(let o of t){let u=r.normalizeValidateResult(this._valueSchema.validate(o,r),o);u!==!0&&n.push(u.value);}return n.length===0?!0:{value:n}}deprecated(t,r){let n=[];for(let o of t){let u=r.normalizeDeprecatedResult(this._valueSchema.deprecated(o,r),o);u!==!1&&n.push(...u.map(({value:i})=>({value:[i]})));}return n}forward(t,r){let n=[];for(let o of t){let u=r.normalizeForwardResult(this._valueSchema.forward(o,r),o);n.push(...u.map(ln));}return n}redirect(t,r){let n=[],o=[];for(let u of t){let i=r.normalizeRedirectResult(this._valueSchema.redirect(u,r),u);"remain"in i&&n.push(i.remain),o.push(...i.redirect.map(ln));}return n.length===0?{redirect:o}:{redirect:o,remain:n}}overlap(t,r){return t.concat(r)}};function ln({from:e,to:t}){return {from:[e],to:t}}var lt=class extends O{expected(){return "true or false"}validate(t){return typeof t=="boolean"}};function Fn(e,t){let r=Object.create(null);for(let n of e){let o=n[t];if(r[o])throw new Error(`Duplicate ${t} ${JSON.stringify(o)}`);r[o]=n;}return r}function pn(e,t){let r=new Map;for(let n of e){let o=n[t];if(r.has(o))throw new Error(`Duplicate ${t} ${JSON.stringify(o)}`);r.set(o,n);}return r}function dn(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function mn(e,t){let r=[],n=[];for(let o of e)t(o)?r.push(o):n.push(o);return [r,n]}function En(e){return e===Math.floor(e)}function Cn(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,o=["undefined","object","boolean","number","string"];return r!==n?o.indexOf(r)-o.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function hn(e){return (...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function Mt(e){return e===void 0?{}:e}function Vt(e){if(typeof e=="string")return {text:e};let{text:t,list:r}=e;return Fo((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(Vt)}}:{text:t}}function $t(e,t){return e===!0?!0:e===!1?{value:t}:e}function Wt(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function fn(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function ft(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>fn(r,t)):[fn(e,t)]}function Ut(e,t){let r=ft(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function Fo(e,t){if(!e)throw new Error(t)}var Ft=class extends O{constructor(t){super(t),this._choices=pn(t.choices.map(r=>r&&typeof r=="object"?r:{value:r}),"value");}expected({descriptor:t}){let r=Array.from(this._choices.keys()).map(i=>this._choices.get(i)).filter(({hidden:i})=>!i).map(i=>i.value).sort(Cn).map(t.value),n=r.slice(0,-2),o=r.slice(-2);return {text:n.concat(o.join(" or ")).join(", "),list:{title:"one of the following values",values:r}}}validate(t){return this._choices.has(t)}deprecated(t){let r=this._choices.get(t);return r&&r.deprecated?{value:t}:!1}forward(t){let r=this._choices.get(t);return r?r.forward:void 0}redirect(t){let r=this._choices.get(t);return r?r.redirect:void 0}};var pt=class extends O{expected(){return "a number"}validate(t,r){return typeof t=="number"}};var dt=class extends pt{expected(){return "an integer"}validate(t,r){return r.normalizeValidateResult(super.validate(t,r),t)===!0&&En(t)}};var je=class extends O{expected(){return "a string"}validate(t){return typeof t=="string"}};var gn=oe,yn=st,An=sn,Bn=nn;var mt=class{constructor(t,r){let{logger:n=console,loggerPrintWidth:o=80,descriptor:u=gn,unknown:i=yn,invalid:s=An,deprecated:D=Bn,missing:a=()=>!1,required:c=()=>!1,preprocess:p=F=>F,postprocess:f=()=>Ee}=r||{};this._utils={descriptor:u,logger:n||{warn:()=>{}},loggerPrintWidth:o,schemas:Fn(t,"name"),normalizeDefaultResult:Mt,normalizeExpectedResult:Vt,normalizeDeprecatedResult:Wt,normalizeForwardResult:ft,normalizeRedirectResult:Ut,normalizeValidateResult:$t},this._unknownHandler=i,this._invalidHandler=hn(s),this._deprecatedHandler=D,this._identifyMissing=(F,l)=>!(F in l)||a(F,l),this._identifyRequired=c,this._preprocess=p,this._postprocess=f,this.cleanHistory();}cleanHistory(){this._hasDeprecationWarned=dn();}normalize(t){let r={},o=[this._preprocess(t,this._utils)],u=()=>{for(;o.length!==0;){let i=o.shift(),s=this._applyNormalization(i,r);o.push(...s);}};u();for(let i of Object.keys(this._utils.schemas)){let s=this._utils.schemas[i];if(!(i in r)){let D=Mt(s.default(this._utils));"value"in D&&o.push({[i]:D.value});}}u();for(let i of Object.keys(this._utils.schemas)){if(!(i in r))continue;let s=this._utils.schemas[i],D=r[i],a=s.postprocess(D,this._utils);a!==Ee&&(this._applyValidation(a,i,s),r[i]=a);}return this._applyPostprocess(r),this._applyRequiredCheck(r),r}_applyNormalization(t,r){let n=[],{knownKeys:o,unknownKeys:u}=this._partitionOptionKeys(t);for(let i of o){let s=this._utils.schemas[i],D=s.preprocess(t[i],this._utils);this._applyValidation(D,i,s);let a=({from:F,to:l})=>{n.push(typeof l=="string"?{[l]:F}:{[l.key]:l.value});},c=({value:F,redirectTo:l})=>{let d=Wt(s.deprecated(F,this._utils),D,!0);if(d!==!1)if(d===!0)this._hasDeprecationWarned(i)||this._utils.logger.warn(this._deprecatedHandler(i,l,this._utils));else for(let{value:m}of d){let E={key:i,value:m};if(!this._hasDeprecationWarned(E)){let A=typeof l=="string"?{key:l,value:m}:l;this._utils.logger.warn(this._deprecatedHandler(E,A,this._utils));}}};ft(s.forward(D,this._utils),D).forEach(a);let f=Ut(s.redirect(D,this._utils),D);if(f.redirect.forEach(a),"remain"in f){let F=f.remain;r[i]=i in r?s.overlap(r[i],F,this._utils):F,c({value:F});}for(let{from:F,to:l}of f.redirect)c({value:F,redirectTo:l});}for(let i of u){let s=t[i];this._applyUnknownHandler(i,s,r,(D,a)=>{n.push({[D]:a});});}return n}_applyRequiredCheck(t){for(let r of Object.keys(this._utils.schemas))if(this._identifyMissing(r,t)&&this._identifyRequired(r))throw this._invalidHandler(r,it,this._utils)}_partitionOptionKeys(t){let[r,n]=mn(Object.keys(t).filter(o=>!this._identifyMissing(o,t)),o=>o in this._utils.schemas);return {knownKeys:r,unknownKeys:n}}_applyValidation(t,r,n){let o=$t(n.validate(t,this._utils),t);if(o!==!0)throw this._invalidHandler(r,o.value,this._utils)}_applyUnknownHandler(t,r,n,o){let u=this._unknownHandler(t,r,this._utils);if(u)for(let i of Object.keys(u)){if(this._identifyMissing(i,u))continue;let s=u[i];i in this._utils.schemas?o(i,s):n[i]=s;}}_applyPostprocess(t){let r=this._postprocess(t,this._utils);if(r!==Ee){if(r.delete)for(let n of r.delete)delete t[n];if(r.override){let{knownKeys:n,unknownKeys:o}=this._partitionOptionKeys(r.override);for(let u of n){let i=r.override[u];this._applyValidation(i,u,this._utils.schemas[u]),t[u]=i;}for(let u of o){let i=r.override[u];this._applyUnknownHandler(u,i,t,(s,D)=>{let a=this._utils.schemas[s];this._applyValidation(D,s,a),t[s]=D;});}}}}};var Gt;function mo(e,t,{logger:r=!1,isCLI:n=!1,passThrough:o=!1,FlagSchema:u,descriptor:i}={}){if(n){if(!u)throw new Error("'FlagSchema' option is required.");if(!i)throw new Error("'descriptor' option is required.")}else i=oe;let s=o?Array.isArray(o)?(f,F)=>o.includes(f)?{[f]:F}:void 0:(f,F)=>({[f]:F}):(f,F,l)=>{let{_:d,...m}=l.schemas;return st(f,F,{...l,schemas:m})},D=Eo(t,{isCLI:n,FlagSchema:u}),a=new mt(D,{logger:r,unknown:s,descriptor:i}),c=r!==!1;c&&Gt&&(a._hasDeprecationWarned=Gt);let p=a.normalize(e);return c&&(Gt=a._hasDeprecationWarned),p}function Eo(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(at$1.create({name:"_"}));for(let o of e)n.push(Co(o,{isCLI:t,optionInfos:e,FlagSchema:r})),o.alias&&t&&n.push(Dt.create({name:o.alias,sourceName:o.name}));return n}function Co(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:o}=e,u={name:o},i,s={};switch(e.type){case"int":i=dt,t&&(u.preprocess=Number);break;case"string":i=je;break;case"choice":i=Ft,u.choices=e.choices.map(D=>D!=null&&D.redirect?{...D,redirect:{to:{key:e.name,value:D.redirect}}}:D);break;case"boolean":i=lt;break;case"flag":i=n,u.flags=r.flatMap(D=>[D.alias,D.description&&D.name,D.oppositeDescription&&`no-${D.name}`].filter(Boolean));break;case"path":i=je;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?u.validate=(D,a,c)=>e.exception(D)||a.validate(D,c):u.validate=(D,a,c)=>D===void 0||a.validate(D,c),e.redirect&&(s.redirect=D=>D?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(s.deprecated=!0),t&&!e.array){let D=u.preprocess||(a=>a);u.preprocess=(a,c,p)=>c.preprocess(D(Array.isArray(a)?y(!1,a,-1):a),p);}return e.array?ct.create({...t?{preprocess:D=>Array.isArray(D)?D:[D]}:{},...s,valueSchema:i.create(u)}):i.create({...u,...s})}var _n=mo;var ho=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let o=t[n];if(r(o,n,t))return o}}},zt=ho;function Kt(e,t){if(!t)throw new Error("parserName is required.");let r=zt(!1,e,o=>o.parsers&&Object.prototype.hasOwnProperty.call(o.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new Re(n)}function bn(e,t){if(!t)throw new Error("astFormat is required.");let r=zt(!1,e,o=>o.printers&&Object.prototype.hasOwnProperty.call(o.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new Re(n)}function Et({plugins:e,parser:t}){let r=Kt(e,t);return Ht(r,t)}function Ht(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function xn(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var kn={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function go(e,t={}){var p;let r={...e};if(!r.parser)if(r.filepath){if(r.parser=en(r,{physicalFile:r.filepath}),!r.parser)throw new Ye(`No parser could be inferred for file "${r.filepath}".`)}else throw new Ye("No parser and no file path given, couldn't infer a parser.");let n=ut({plugins:e.plugins,showDeprecated:!0}).options,o={...kn,...Object.fromEntries(n.filter(f=>f.default!==void 0).map(f=>[f.name,f.default]))},u=Kt(r.plugins,r.parser),i=await Ht(u,r.parser);r.astFormat=i.astFormat,r.locEnd=i.locEnd,r.locStart=i.locStart;let s=(p=u.printers)!=null&&p[i.astFormat]?u:bn(r.plugins,i.astFormat),D=await xn(s,i.astFormat);r.printer=D;let a=s.defaultOptions?Object.fromEntries(Object.entries(s.defaultOptions).filter(([,f])=>f!==void 0)):{},c={...o,...a};for(let[f,F]of Object.entries(c))(r[f]===null||r[f]===void 0)&&(r[f]=F);return r.parser==="json"&&(r.trailingComma="none"),_n(r,n,{passThrough:Object.keys(kn),...t})}var ie=go;var Mn=Ae(jn());async function Oo(e,t){let r=await Et(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let o;try{o=await r.parse(n,t,t);}catch(u){No(u,e);}return {text:n,ast:o}}function No(e,t){let{loc:r}=e;if(r){let n=(0, Mn.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=`
|
|
42106
|
+
`+n,e.codeFrame=n,e}throw e}var ce=Oo;async function Vn(e,t,r,n,o){let{embeddedLanguageFormatting:u,printer:{embed:i,hasPrettierIgnore:s=()=>!1,getVisitorKeys:D}}=r;if(!i||u!=="auto")return;if(i.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/en/plugins.html#optional-embed");let a=X(i.getVisitorKeys??D),c=[];F();let p=e.stack;for(let{print:l,node:d,pathStack:m}of c)try{e.stack=m;let E=await l(f,t,e,r);E&&o.set(d,E);}catch(E){if(globalThis.PRETTIER_DEBUG)throw E}e.stack=p;function f(l,d){return To(l,d,r,n)}function F(){let{node:l}=e;if(l===null||typeof l!="object"||s(e))return;for(let m of a(l))Array.isArray(l[m])?e.each(F,m):e.call(F,m);let d=i(e,r);if(d){if(typeof d=="function"){c.push({print:d,node:l,pathStack:[...e.stack]});return}o.set(l,d);}}}async function To(e,t,r,n){let o=await ie({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:u}=await ce(e,o),i=await n(u,o);return Xe(i)}function So(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:o,locEnd:u,[Symbol.for("printedComments")]:i}=t,{node:s}=e,D=o(s),a=u(s);for(let c of n)o(c)>=D&&u(c)<=a&&i.add(c);return r.slice(D,a)}var $n=So;async function Me(e,t){({ast:e}=await Xt(e,t));let r=new Map,n=new Yr(e),u=new Map;await Vn(n,s,t,Me,u);let i=await Wn(n,t,s,void 0,u);return Jr(t),i;function s(a,c){return a===void 0||a===n?D(c):Array.isArray(a)?n.call(()=>D(c),...a):n.call(()=>D(c),a)}function D(a){let c=n.node;if(c==null)return "";let p=c&&typeof c=="object"&&a===void 0;if(p&&r.has(c))return r.get(c);let f=Wn(n,t,s,a,u);return p&&r.set(c,f),f}}function Wn(e,t,r,n,o){var D;let{node:u}=e,{printer:i}=t,s;return (D=i.hasPrettierIgnore)!=null&&D.call(i,e)?s=$n(e,t):o.has(u)?s=o.get(u):s=i.print(e,t,r,n),u===t.cursorNode&&(s=Ze(s,a=>[Oe,a,Oe])),i.printComment&&(!i.willPrintOwnComments||!i.willPrintOwnComments(e,t))&&(s=qr(e,s,t)),s}async function Xt(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,zr(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function vo(e,t){let{cursorOffset:r,locStart:n,locEnd:o}=t,u=X(t.printer.getVisitorKeys),i=D=>n(D)<=r&&o(D)>=r,s=e;for(let D of Vr(e,{getVisitorKeys:u,filter:i}))s=D;return s}var Un=vo;function Po(e,t){let{printer:{massageAstNode:r,getVisitorKeys:n}}=t;if(!r)return e;let o=X(n),u=r.ignoredProperties??new Set;return i(e);function i(s,D){if(!(s!==null&&typeof s=="object"))return s;if(Array.isArray(s))return s.map(f=>i(f,D)).filter(Boolean);let a={},c=new Set(o(s));for(let f in s)!Object.prototype.hasOwnProperty.call(s,f)||u.has(f)||(c.has(f)?a[f]=i(s[f],s):a[f]=s[f]);let p=r(s,a,D);if(p!==null)return p??a}}var Gn=Po;var Lo=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function Io(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(o=>Hn.has(o.type)&&n.has(o))}function zn(e){let t=e.length-1;for(;;){let r=e[t];if((r==null?void 0:r.type)==="Program"||(r==null?void 0:r.type)==="File")t--;else break}return e.slice(0,t+1)}function Ro(e,t,{locStart:r,locEnd:n}){let o=e.node,u=t.node;if(o===u)return {startNode:o,endNode:u};let i=r(e.node);for(let D of zn(t.parentNodes))if(r(D)>=i)u=D;else break;let s=n(t.node);for(let D of zn(e.parentNodes)){if(n(D)<=s)o=D;else break;if(o===u)break}return {startNode:o,endNode:u}}function Zt(e,t,r,n,o=[],u){let{locStart:i,locEnd:s}=r,D=i(e),a=s(e);if(!(t>a||t<D||u==="rangeEnd"&&t===D||u==="rangeStart"&&t===a)){for(let c of nt(e,r)){let p=Zt(c,t,r,n,[e,...o],u);if(p)return p}if(!n||n(e,o[0]))return {node:e,parentNodes:o}}}function Yo(e,t){return t!=="DeclareExportDeclaration"&&e!=="TypeParameterDeclaration"&&(e==="Directive"||e==="TypeAlias"||e==="TSExportAssignment"||e.startsWith("Declare")||e.startsWith("TSDeclare")||e.endsWith("Statement")||e.endsWith("Declaration"))}var Hn=new Set(["JsonRoot","ObjectExpression","ArrayExpression","StringLiteral","NumericLiteral","BooleanLiteral","NullLiteral","UnaryExpression","TemplateLiteral"]),jo=new Set(["OperationDefinition","FragmentDefinition","VariableDefinition","TypeExtensionDefinition","ObjectTypeDefinition","FieldDefinition","DirectiveDefinition","EnumTypeDefinition","EnumValueDefinition","InputValueDefinition","InputObjectTypeDefinition","SchemaDefinition","OperationTypeDefinition","InterfaceTypeDefinition","UnionTypeDefinition","ScalarTypeDefinition"]);function Kn(e,t,r){if(!t)return !1;switch(e.parser){case"flow":case"babel":case"babel-flow":case"babel-ts":case"typescript":case"acorn":case"espree":case"meriyah":case"__babel_estree":return Yo(t.type,r==null?void 0:r.type);case"json":case"json5":case"jsonc":case"json-stringify":return Hn.has(t.type);case"graphql":return jo.has(t.kind);case"vue":return t.tag!=="root"}return !1}function qn(e,t,r){let{rangeStart:n,rangeEnd:o,locStart:u,locEnd:i}=t;Le.ok(o>n);let s=e.slice(n,o).search(/\S/),D=s===-1;if(!D)for(n+=s;o>n&&!/\S/.test(e[o-1]);--o);let a=Zt(r,n,t,(F,l)=>Kn(t,F,l),[],"rangeStart"),c=D?a:Zt(r,o,t,F=>Kn(t,F),[],"rangeEnd");if(!a||!c)return {rangeStart:0,rangeEnd:0};let p,f;if(Lo(t)){let F=Io(a,c);p=F,f=F;}else ({startNode:p,endNode:f}=Ro(a,c,t));return {rangeStart:Math.min(u(p),u(f)),rangeEnd:Math.max(i(p),i(f))}}var eu="\uFEFF",Jn=Symbol("cursor");async function tu(e,t,r=0){if(!e||e.trim().length===0)return {formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:o}=await ce(e,t);t.cursorOffset>=0&&(t.cursorNode=Un(n,t));let u=await Me(n,t);r>0&&(u=qe([q,u],r,t.tabWidth));let i=pe(u,t);if(r>0){let D=i.formatted.trim();i.cursorNodeStart!==void 0&&(i.cursorNodeStart-=i.formatted.indexOf(D)),i.formatted=D+be(t.endOfLine);}let s=t[Symbol.for("comments")];if(t.cursorOffset>=0){let D,a,c,p,f;if(t.cursorNode&&i.cursorNodeText?(D=t.locStart(t.cursorNode),a=o.slice(D,t.locEnd(t.cursorNode)),c=t.cursorOffset-D,p=i.cursorNodeStart,f=i.cursorNodeText):(D=0,a=o,c=t.cursorOffset,p=0,f=i.formatted),a===f)return {formatted:i.formatted,cursorOffset:p+c,comments:s};let F=a.split("");F.splice(c,0,Jn);let l=f.split(""),d=(0, Qn.diffArrays)(F,l),m=p;for(let E of d)if(E.removed){if(E.value.includes(Jn))break}else m+=E.count;return {formatted:i.formatted,cursorOffset:m,comments:s}}return {formatted:i.formatted,cursorOffset:-1,comments:s}}async function Mo(e,t){let{ast:r,text:n}=await ce(e,t),{rangeStart:o,rangeEnd:u}=qn(n,t,r),i=n.slice(o,u),s=Math.min(o,n.lastIndexOf(`
|
|
42107
|
+
`,o)+1),D=n.slice(s,o).match(/^\s*/)[0],a=de(D,t.tabWidth),c=await tu(i,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>o&&t.cursorOffset<=u?t.cursorOffset-o:-1,endOfLine:"lf"},a),p=c.formatted.trimEnd(),{cursorOffset:f}=t;f>u?f+=p.length-i.length:c.cursorOffset>=0&&(f=c.cursorOffset+o);let F=n.slice(0,o)+p+n.slice(u);if(t.endOfLine!=="lf"){let l=be(t.endOfLine);f>=0&&l===`\r
|
|
42108
|
+
`&&(f+=At(F.slice(0,f),`
|
|
42109
|
+
`)),F=re(!1,F,`
|
|
42110
|
+
`,l);}return {formatted:F,cursorOffset:f,comments:c.comments}}function Qt(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function Xn(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:o}=t;return r=Qt(e,r,-1),n=Qt(e,n,0),o=Qt(e,o,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:o}}function ru(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:o,endOfLine:u}=Xn(e,t),i=e.charAt(0)===eu;if(i&&(e=e.slice(1),r--,n--,o--),u==="auto"&&(u=lr(e)),e.includes("\r")){let s=D=>At(e.slice(0,Math.max(D,0)),`\r
|
|
42111
|
+
`);r-=s(r),n-=s(n),o-=s(o),e=fr(e);}return {hasBOM:i,text:e,options:Xn(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:o,endOfLine:u})}}async function Zn(e,t){let r=await Et(t);return !r.hasPragma||r.hasPragma(e)}async function er(e,t){let{hasBOM:r,text:n,options:o}=ru(e,await ie(t));if(o.rangeStart>=o.rangeEnd&&n!==""||o.requirePragma&&!await Zn(n,o))return {formatted:e,cursorOffset:t.cursorOffset,comments:[]};let u;return o.rangeStart>0||o.rangeEnd<n.length?u=await Mo(n,o):(!o.requirePragma&&o.insertPragma&&o.printer.insertPragma&&!await Zn(n,o)&&(n=o.printer.insertPragma(n)),u=await tu(n,o)),r&&(u.formatted=eu+u.formatted,u.cursorOffset>=0&&u.cursorOffset++),u}async function nu(e,t,r){let{text:n,options:o}=ru(e,await ie(t)),u=await ce(n,o);return r&&(r.preprocessForPrint&&(u.ast=await Xt(u.ast,o)),r.massage&&(u.ast=Gn(u.ast,o))),u}async function uu(e,t){t=await ie(t);let r=await Me(e,t);return pe(r,t)}async function ou(e,t){let r=br(e),{formatted:n}=await er(r,{...t,parser:"__js_expression"});return n}async function iu(e,t){t=await ie(t);let{ast:r}=await ce(e,t);return Me(r,t)}async function su(e,t){return pe(e,await ie(t))}var tr={};We(tr,{builders:()=>$o,printer:()=>Wo,utils:()=>Uo});var $o={join:Ne,line:Ke,softline:Br,hardline:q,literalline:He,group:_t,conditionalGroup:Cr,fill:ze,lineSuffix:ke,lineSuffixBoundary:yr,cursor:Oe,breakParent:Fe,ifBreak:hr,trim:Ar,indent:De,indentIfBreak:gr,align:se,addAlignmentToDoc:qe,markAsRoot:mr,dedentToRoot:dr,dedent:Er,hardlineWithoutBreakParent:we,literallineWithoutBreakParent:bt,label:_r,concat:e=>e},Wo={printDocToString:pe},Uo={willBreak:Sr,traverseDoc:xe,findInDoc:Je,mapDoc:ve,removeLines:Pr,stripTrailingHardline:Xe,replaceEndOfLine:Lr,canBreak:Ir};var Du="3.3.2";var nr={};We(nr,{addDanglingComment:()=>te,addLeadingComment:()=>ne,addTrailingComment:()=>ue,getAlignmentSize:()=>de,getIndentSize:()=>au,getMaxContinuousCount:()=>cu,getNextNonSpaceNonCommentCharacter:()=>lu,getNextNonSpaceNonCommentCharacterIndex:()=>ri,getStringWidth:()=>Te,hasNewline:()=>U,hasNewlineInRange:()=>fu,hasSpaces:()=>Fu,isNextLineEmpty:()=>ii,isNextLineEmptyAfterIndex:()=>ht,isPreviousLineEmpty:()=>ui,makeString:()=>pu,skip:()=>me,skipEverythingButNewLine:()=>rt,skipInlineComment:()=>Ce,skipNewline:()=>$,skipSpaces:()=>S,skipToLineEnd:()=>tt,skipTrailingComment:()=>he,skipWhitespace:()=>$r});function Go(e,t){if(t===!1)return !1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r<e.length;++r)if(e.charAt(r)==="*"&&e.charAt(r+1)==="/")return r+2}return t}var Ce=Go;function zo(e,t){return t===!1?!1:e.charAt(t)==="/"&&e.charAt(t+1)==="/"?rt(e,t):t}var he=zo;function Ko(e,t){let r=null,n=t;for(;n!==r;)r=n,n=S(e,n),n=Ce(e,n),n=he(e,n),n=$(e,n);return n}var Ve=Ko;function Ho(e,t){let r=null,n=t;for(;n!==r;)r=n,n=tt(e,n),n=Ce(e,n),n=S(e,n);return n=he(e,n),n=$(e,n),n!==!1&&U(e,n)}var ht=Ho;function qo(e,t){let r=e.lastIndexOf(`
|
|
42112
|
+
`);return r===-1?0:de(e.slice(r+1).match(/^[\t ]*/)[0],t)}var au=qo;function rr(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function Jo(e,t){let r=e.match(new RegExp(`(${rr(t)})+`,"g"));return r===null?0:r.reduce((n,o)=>Math.max(n,o.length/t.length),0)}var cu=Jo;function Xo(e,t){let r=Ve(e,t);return r===!1?"":e.charAt(r)}var lu=Xo;function Zo(e,t,r){for(let n=t;n<r;++n)if(e.charAt(n)===`
|
|
42113
|
+
`)return !0;return !1}var fu=Zo;function Qo(e,t,r={}){return S(e,r.backwards?t-1:t,r)!==t}var Fu=Qo;function ei(e,t,r){let n=t==='"'?"'":'"',u=re(!1,e,/\\(.)|(["'])/gs,(i,s,D)=>s===n?s:D===t?"\\"+D:D||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(s)?s:"\\"+s));return t+u+t}var pu=ei;function ti(e,t,r){return Ve(e,r(t))}function ri(e,t){return arguments.length===2||typeof t=="number"?Ve(e,t):ti(...arguments)}function ni(e,t,r){return Ie(e,r(t))}function ui(e,t){return arguments.length===2||typeof t=="number"?Ie(e,t):ni(...arguments)}function oi(e,t,r){return ht(e,r(t))}function ii(e,t){return arguments.length===2||typeof t=="number"?ht(e,t):oi(...arguments)}function le(e,t=1){return async(...r)=>{let n=r[t]??{},o=n.plugins??[];return r[t]={...n,plugins:Array.isArray(o)?o:Object.values(o)},e(...r)}}var du=le(er);async function mu(e,t){let{formatted:r}=await du(e,{...t,cursorOffset:-1});return r}async function si(e,t){return await mu(e,t)===e}var Di=le(ut,0),ai={parse:le(nu),formatAST:le(uu),formatDoc:le(ou),printToDoc:le(iu),printDocToString:le(su)};
|
|
42114
|
+
|
|
42115
|
+
var __defProp = Object.defineProperty;
|
|
42116
|
+
var __export = (target, all) => {
|
|
42117
|
+
for (var name in all)
|
|
42118
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
42119
|
+
};
|
|
42120
|
+
|
|
42121
|
+
// src/document/public.js
|
|
42122
|
+
var public_exports = {};
|
|
42123
|
+
__export(public_exports, {
|
|
42124
|
+
builders: () => builders,
|
|
42125
|
+
printer: () => printer,
|
|
42126
|
+
utils: () => utils
|
|
42127
|
+
});
|
|
42128
|
+
|
|
42129
|
+
// src/document/constants.js
|
|
42130
|
+
var DOC_TYPE_STRING = "string";
|
|
42131
|
+
var DOC_TYPE_ARRAY = "array";
|
|
42132
|
+
var DOC_TYPE_CURSOR = "cursor";
|
|
42133
|
+
var DOC_TYPE_INDENT = "indent";
|
|
42134
|
+
var DOC_TYPE_ALIGN = "align";
|
|
42135
|
+
var DOC_TYPE_TRIM = "trim";
|
|
42136
|
+
var DOC_TYPE_GROUP = "group";
|
|
42137
|
+
var DOC_TYPE_FILL = "fill";
|
|
42138
|
+
var DOC_TYPE_IF_BREAK = "if-break";
|
|
42139
|
+
var DOC_TYPE_INDENT_IF_BREAK = "indent-if-break";
|
|
42140
|
+
var DOC_TYPE_LINE_SUFFIX = "line-suffix";
|
|
42141
|
+
var DOC_TYPE_LINE_SUFFIX_BOUNDARY = "line-suffix-boundary";
|
|
42142
|
+
var DOC_TYPE_LINE = "line";
|
|
42143
|
+
var DOC_TYPE_LABEL = "label";
|
|
42144
|
+
var DOC_TYPE_BREAK_PARENT = "break-parent";
|
|
42145
|
+
var VALID_OBJECT_DOC_TYPES = /* @__PURE__ */ new Set([
|
|
42146
|
+
DOC_TYPE_CURSOR,
|
|
42147
|
+
DOC_TYPE_INDENT,
|
|
42148
|
+
DOC_TYPE_ALIGN,
|
|
42149
|
+
DOC_TYPE_TRIM,
|
|
42150
|
+
DOC_TYPE_GROUP,
|
|
42151
|
+
DOC_TYPE_FILL,
|
|
42152
|
+
DOC_TYPE_IF_BREAK,
|
|
42153
|
+
DOC_TYPE_INDENT_IF_BREAK,
|
|
42154
|
+
DOC_TYPE_LINE_SUFFIX,
|
|
42155
|
+
DOC_TYPE_LINE_SUFFIX_BOUNDARY,
|
|
42156
|
+
DOC_TYPE_LINE,
|
|
42157
|
+
DOC_TYPE_LABEL,
|
|
42158
|
+
DOC_TYPE_BREAK_PARENT
|
|
42159
|
+
]);
|
|
42160
|
+
|
|
42161
|
+
// src/document/utils/get-doc-type.js
|
|
42162
|
+
function getDocType(doc) {
|
|
42163
|
+
if (typeof doc === "string") {
|
|
42164
|
+
return DOC_TYPE_STRING;
|
|
42101
42165
|
}
|
|
42102
|
-
|
|
42103
|
-
|
|
42104
|
-
propagateBreaksOnEnterFn,
|
|
42105
|
-
propagateBreaksOnExitFn,
|
|
42106
|
-
/* shouldTraverseConditionalGroups */
|
|
42107
|
-
true
|
|
42108
|
-
);
|
|
42109
|
-
}
|
|
42110
|
-
function removeLinesFn(doc) {
|
|
42111
|
-
if (doc.type === DOC_TYPE_LINE && !doc.hard) {
|
|
42112
|
-
return doc.soft ? "" : " ";
|
|
42113
|
-
}
|
|
42114
|
-
if (doc.type === DOC_TYPE_IF_BREAK) {
|
|
42115
|
-
return doc.flatContents;
|
|
42116
|
-
}
|
|
42117
|
-
return doc;
|
|
42118
|
-
}
|
|
42119
|
-
function removeLines(doc) {
|
|
42120
|
-
return mapDoc(doc, removeLinesFn);
|
|
42121
|
-
}
|
|
42122
|
-
function stripTrailingHardlineFromParts(parts) {
|
|
42123
|
-
parts = [...parts];
|
|
42124
|
-
while (parts.length >= 2 && at_default(
|
|
42125
|
-
/* isOptionalObject */
|
|
42126
|
-
false,
|
|
42127
|
-
parts,
|
|
42128
|
-
-2
|
|
42129
|
-
).type === DOC_TYPE_LINE && at_default(
|
|
42130
|
-
/* isOptionalObject */
|
|
42131
|
-
false,
|
|
42132
|
-
parts,
|
|
42133
|
-
-1
|
|
42134
|
-
).type === DOC_TYPE_BREAK_PARENT) {
|
|
42135
|
-
parts.length -= 2;
|
|
42136
|
-
}
|
|
42137
|
-
if (parts.length > 0) {
|
|
42138
|
-
const lastPart = stripTrailingHardlineFromDoc(at_default(
|
|
42139
|
-
/* isOptionalObject */
|
|
42140
|
-
false,
|
|
42141
|
-
parts,
|
|
42142
|
-
-1
|
|
42143
|
-
));
|
|
42144
|
-
parts[parts.length - 1] = lastPart;
|
|
42166
|
+
if (Array.isArray(doc)) {
|
|
42167
|
+
return DOC_TYPE_ARRAY;
|
|
42145
42168
|
}
|
|
42146
|
-
|
|
42147
|
-
|
|
42148
|
-
|
|
42149
|
-
|
|
42150
|
-
|
|
42151
|
-
|
|
42152
|
-
case DOC_TYPE_GROUP:
|
|
42153
|
-
case DOC_TYPE_LINE_SUFFIX:
|
|
42154
|
-
case DOC_TYPE_LABEL: {
|
|
42155
|
-
const contents = stripTrailingHardlineFromDoc(doc.contents);
|
|
42156
|
-
return {
|
|
42157
|
-
...doc,
|
|
42158
|
-
contents
|
|
42159
|
-
};
|
|
42160
|
-
}
|
|
42161
|
-
case DOC_TYPE_IF_BREAK:
|
|
42162
|
-
return {
|
|
42163
|
-
...doc,
|
|
42164
|
-
breakContents: stripTrailingHardlineFromDoc(doc.breakContents),
|
|
42165
|
-
flatContents: stripTrailingHardlineFromDoc(doc.flatContents)
|
|
42166
|
-
};
|
|
42167
|
-
case DOC_TYPE_FILL:
|
|
42168
|
-
return {
|
|
42169
|
-
...doc,
|
|
42170
|
-
parts: stripTrailingHardlineFromParts(doc.parts)
|
|
42171
|
-
};
|
|
42172
|
-
case DOC_TYPE_ARRAY:
|
|
42173
|
-
return stripTrailingHardlineFromParts(doc);
|
|
42174
|
-
case DOC_TYPE_STRING:
|
|
42175
|
-
return doc.replace(/[\n\r]*$/, "");
|
|
42176
|
-
case DOC_TYPE_ALIGN:
|
|
42177
|
-
case DOC_TYPE_CURSOR:
|
|
42178
|
-
case DOC_TYPE_TRIM:
|
|
42179
|
-
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42180
|
-
case DOC_TYPE_LINE:
|
|
42181
|
-
case DOC_TYPE_BREAK_PARENT:
|
|
42182
|
-
break;
|
|
42183
|
-
default:
|
|
42184
|
-
throw new invalid_doc_error_default(doc);
|
|
42169
|
+
if (!doc) {
|
|
42170
|
+
return;
|
|
42171
|
+
}
|
|
42172
|
+
const { type } = doc;
|
|
42173
|
+
if (VALID_OBJECT_DOC_TYPES.has(type)) {
|
|
42174
|
+
return type;
|
|
42185
42175
|
}
|
|
42186
|
-
return doc;
|
|
42187
42176
|
}
|
|
42188
|
-
|
|
42189
|
-
|
|
42177
|
+
var get_doc_type_default = getDocType;
|
|
42178
|
+
|
|
42179
|
+
// src/document/invalid-doc-error.js
|
|
42180
|
+
var disjunctionListFormat = (list) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(list);
|
|
42181
|
+
function getDocErrorMessage(doc) {
|
|
42182
|
+
const type = doc === null ? "null" : typeof doc;
|
|
42183
|
+
if (type !== "string" && type !== "object") {
|
|
42184
|
+
return `Unexpected doc '${type}',
|
|
42185
|
+
Expected it to be 'string' or 'object'.`;
|
|
42186
|
+
}
|
|
42187
|
+
if (get_doc_type_default(doc)) {
|
|
42188
|
+
throw new Error("doc is valid.");
|
|
42189
|
+
}
|
|
42190
|
+
const objectType = Object.prototype.toString.call(doc);
|
|
42191
|
+
if (objectType !== "[object Object]") {
|
|
42192
|
+
return `Unexpected doc '${objectType}'.`;
|
|
42193
|
+
}
|
|
42194
|
+
const EXPECTED_TYPE_VALUES = disjunctionListFormat(
|
|
42195
|
+
[...VALID_OBJECT_DOC_TYPES].map((type2) => `'${type2}'`)
|
|
42196
|
+
);
|
|
42197
|
+
return `Unexpected doc.type '${doc.type}'.
|
|
42198
|
+
Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
42190
42199
|
}
|
|
42191
|
-
|
|
42192
|
-
|
|
42193
|
-
|
|
42194
|
-
|
|
42195
|
-
|
|
42196
|
-
|
|
42197
|
-
|
|
42198
|
-
|
|
42199
|
-
|
|
42200
|
-
|
|
42201
|
-
|
|
42202
|
-
|
|
42203
|
-
|
|
42204
|
-
|
|
42205
|
-
|
|
42206
|
-
|
|
42207
|
-
|
|
42208
|
-
|
|
42209
|
-
|
|
42210
|
-
|
|
42211
|
-
|
|
42212
|
-
|
|
42213
|
-
|
|
42214
|
-
|
|
42215
|
-
|
|
42216
|
-
|
|
42217
|
-
|
|
42218
|
-
|
|
42219
|
-
|
|
42220
|
-
|
|
42221
|
-
|
|
42222
|
-
|
|
42223
|
-
|
|
42200
|
+
var InvalidDocError = class extends Error {
|
|
42201
|
+
name = "InvalidDocError";
|
|
42202
|
+
constructor(doc) {
|
|
42203
|
+
super(getDocErrorMessage(doc));
|
|
42204
|
+
this.doc = doc;
|
|
42205
|
+
}
|
|
42206
|
+
};
|
|
42207
|
+
var invalid_doc_error_default = InvalidDocError;
|
|
42208
|
+
|
|
42209
|
+
// src/document/utils/traverse-doc.js
|
|
42210
|
+
var traverseDocOnExitStackMarker = {};
|
|
42211
|
+
function traverseDoc(doc, onEnter, onExit, shouldTraverseConditionalGroups) {
|
|
42212
|
+
const docsStack = [doc];
|
|
42213
|
+
while (docsStack.length > 0) {
|
|
42214
|
+
const doc2 = docsStack.pop();
|
|
42215
|
+
if (doc2 === traverseDocOnExitStackMarker) {
|
|
42216
|
+
onExit(docsStack.pop());
|
|
42217
|
+
continue;
|
|
42218
|
+
}
|
|
42219
|
+
if (onExit) {
|
|
42220
|
+
docsStack.push(doc2, traverseDocOnExitStackMarker);
|
|
42221
|
+
}
|
|
42222
|
+
const docType = get_doc_type_default(doc2);
|
|
42223
|
+
if (!docType) {
|
|
42224
|
+
throw new invalid_doc_error_default(doc2);
|
|
42225
|
+
}
|
|
42226
|
+
if ((onEnter == null ? void 0 : onEnter(doc2)) === false) {
|
|
42227
|
+
continue;
|
|
42228
|
+
}
|
|
42229
|
+
switch (docType) {
|
|
42230
|
+
case DOC_TYPE_ARRAY:
|
|
42231
|
+
case DOC_TYPE_FILL: {
|
|
42232
|
+
const parts = docType === DOC_TYPE_ARRAY ? doc2 : doc2.parts;
|
|
42233
|
+
for (let ic = parts.length, i = ic - 1; i >= 0; --i) {
|
|
42234
|
+
docsStack.push(parts[i]);
|
|
42224
42235
|
}
|
|
42225
|
-
|
|
42226
|
-
|
|
42227
|
-
|
|
42228
|
-
|
|
42229
|
-
|
|
42230
|
-
|
|
42231
|
-
|
|
42232
|
-
|
|
42236
|
+
break;
|
|
42237
|
+
}
|
|
42238
|
+
case DOC_TYPE_IF_BREAK:
|
|
42239
|
+
docsStack.push(doc2.flatContents, doc2.breakContents);
|
|
42240
|
+
break;
|
|
42241
|
+
case DOC_TYPE_GROUP:
|
|
42242
|
+
if (shouldTraverseConditionalGroups && doc2.expandedStates) {
|
|
42243
|
+
for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) {
|
|
42244
|
+
docsStack.push(doc2.expandedStates[i]);
|
|
42245
|
+
}
|
|
42233
42246
|
} else {
|
|
42234
|
-
|
|
42247
|
+
docsStack.push(doc2.contents);
|
|
42235
42248
|
}
|
|
42236
|
-
|
|
42237
|
-
|
|
42238
|
-
|
|
42239
|
-
|
|
42240
|
-
|
|
42241
|
-
|
|
42242
|
-
|
|
42243
|
-
|
|
42244
|
-
|
|
42249
|
+
break;
|
|
42250
|
+
case DOC_TYPE_ALIGN:
|
|
42251
|
+
case DOC_TYPE_INDENT:
|
|
42252
|
+
case DOC_TYPE_INDENT_IF_BREAK:
|
|
42253
|
+
case DOC_TYPE_LABEL:
|
|
42254
|
+
case DOC_TYPE_LINE_SUFFIX:
|
|
42255
|
+
docsStack.push(doc2.contents);
|
|
42256
|
+
break;
|
|
42257
|
+
case DOC_TYPE_STRING:
|
|
42258
|
+
case DOC_TYPE_CURSOR:
|
|
42259
|
+
case DOC_TYPE_TRIM:
|
|
42260
|
+
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42261
|
+
case DOC_TYPE_LINE:
|
|
42262
|
+
case DOC_TYPE_BREAK_PARENT:
|
|
42263
|
+
break;
|
|
42264
|
+
default:
|
|
42265
|
+
throw new invalid_doc_error_default(doc2);
|
|
42245
42266
|
}
|
|
42246
|
-
case DOC_TYPE_STRING:
|
|
42247
|
-
case DOC_TYPE_CURSOR:
|
|
42248
|
-
case DOC_TYPE_TRIM:
|
|
42249
|
-
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42250
|
-
case DOC_TYPE_LINE:
|
|
42251
|
-
case DOC_TYPE_LABEL:
|
|
42252
|
-
case DOC_TYPE_BREAK_PARENT:
|
|
42253
|
-
break;
|
|
42254
|
-
default:
|
|
42255
|
-
throw new invalid_doc_error_default(doc);
|
|
42256
42267
|
}
|
|
42257
|
-
return doc;
|
|
42258
42268
|
}
|
|
42259
|
-
|
|
42260
|
-
|
|
42269
|
+
var traverse_doc_default = traverseDoc;
|
|
42270
|
+
|
|
42271
|
+
// src/document/utils/assert-doc.js
|
|
42272
|
+
var noop = () => {
|
|
42273
|
+
};
|
|
42274
|
+
var assertDocArray = noop ;
|
|
42275
|
+
|
|
42276
|
+
// src/document/builders.js
|
|
42277
|
+
function indent(contents) {
|
|
42278
|
+
return { type: DOC_TYPE_INDENT, contents };
|
|
42261
42279
|
}
|
|
42262
|
-
function
|
|
42263
|
-
return
|
|
42280
|
+
function align(widthOrString, contents) {
|
|
42281
|
+
return { type: DOC_TYPE_ALIGN, contents, n: widthOrString };
|
|
42264
42282
|
}
|
|
42265
|
-
function
|
|
42266
|
-
|
|
42267
|
-
|
|
42268
|
-
|
|
42283
|
+
function group(contents, opts = {}) {
|
|
42284
|
+
assertDocArray(
|
|
42285
|
+
opts.expandedStates);
|
|
42286
|
+
return {
|
|
42287
|
+
type: DOC_TYPE_GROUP,
|
|
42288
|
+
id: opts.id,
|
|
42289
|
+
contents,
|
|
42290
|
+
break: Boolean(opts.shouldBreak),
|
|
42291
|
+
expandedStates: opts.expandedStates
|
|
42292
|
+
};
|
|
42269
42293
|
}
|
|
42270
|
-
function
|
|
42271
|
-
return
|
|
42294
|
+
function dedentToRoot(contents) {
|
|
42295
|
+
return align(Number.NEGATIVE_INFINITY, contents);
|
|
42272
42296
|
}
|
|
42273
|
-
|
|
42274
|
-
|
|
42275
|
-
|
|
42276
|
-
|
|
42277
|
-
|
|
42278
|
-
|
|
42297
|
+
function markAsRoot(contents) {
|
|
42298
|
+
return align({ type: "root" }, contents);
|
|
42299
|
+
}
|
|
42300
|
+
function dedent(contents) {
|
|
42301
|
+
return align(-1, contents);
|
|
42302
|
+
}
|
|
42303
|
+
function conditionalGroup(states, opts) {
|
|
42304
|
+
return group(states[0], { ...opts, expandedStates: states });
|
|
42305
|
+
}
|
|
42306
|
+
function fill(parts) {
|
|
42307
|
+
return { type: DOC_TYPE_FILL, parts };
|
|
42308
|
+
}
|
|
42309
|
+
function ifBreak(breakContents, flatContents = "", opts = {}) {
|
|
42279
42310
|
return {
|
|
42280
|
-
|
|
42281
|
-
|
|
42282
|
-
|
|
42311
|
+
type: DOC_TYPE_IF_BREAK,
|
|
42312
|
+
breakContents,
|
|
42313
|
+
flatContents,
|
|
42314
|
+
groupId: opts.groupId
|
|
42283
42315
|
};
|
|
42284
42316
|
}
|
|
42285
|
-
function
|
|
42286
|
-
return
|
|
42287
|
-
type:
|
|
42288
|
-
|
|
42317
|
+
function indentIfBreak(contents, opts) {
|
|
42318
|
+
return {
|
|
42319
|
+
type: DOC_TYPE_INDENT_IF_BREAK,
|
|
42320
|
+
contents,
|
|
42321
|
+
groupId: opts.groupId,
|
|
42322
|
+
negate: opts.negate
|
|
42323
|
+
};
|
|
42289
42324
|
}
|
|
42290
|
-
function
|
|
42291
|
-
|
|
42292
|
-
|
|
42325
|
+
function lineSuffix(contents) {
|
|
42326
|
+
return { type: DOC_TYPE_LINE_SUFFIX, contents };
|
|
42327
|
+
}
|
|
42328
|
+
var lineSuffixBoundary = { type: DOC_TYPE_LINE_SUFFIX_BOUNDARY };
|
|
42329
|
+
var breakParent = { type: DOC_TYPE_BREAK_PARENT };
|
|
42330
|
+
var trim = { type: DOC_TYPE_TRIM };
|
|
42331
|
+
var hardlineWithoutBreakParent = { type: DOC_TYPE_LINE, hard: true };
|
|
42332
|
+
var literallineWithoutBreakParent = {
|
|
42333
|
+
type: DOC_TYPE_LINE,
|
|
42334
|
+
hard: true,
|
|
42335
|
+
literal: true
|
|
42336
|
+
};
|
|
42337
|
+
var line = { type: DOC_TYPE_LINE };
|
|
42338
|
+
var softline = { type: DOC_TYPE_LINE, soft: true };
|
|
42339
|
+
var hardline = [hardlineWithoutBreakParent, breakParent];
|
|
42340
|
+
var literalline = [literallineWithoutBreakParent, breakParent];
|
|
42341
|
+
var cursor = { type: DOC_TYPE_CURSOR };
|
|
42342
|
+
function join(separator, docs) {
|
|
42343
|
+
const parts = [];
|
|
42344
|
+
for (let i = 0; i < docs.length; i++) {
|
|
42345
|
+
if (i !== 0) {
|
|
42346
|
+
parts.push(separator);
|
|
42347
|
+
}
|
|
42348
|
+
parts.push(docs[i]);
|
|
42293
42349
|
}
|
|
42294
|
-
|
|
42295
|
-
|
|
42296
|
-
|
|
42297
|
-
|
|
42350
|
+
return parts;
|
|
42351
|
+
}
|
|
42352
|
+
function addAlignmentToDoc(doc, size, tabWidth) {
|
|
42353
|
+
let aligned = doc;
|
|
42354
|
+
if (size > 0) {
|
|
42355
|
+
for (let i = 0; i < Math.floor(size / tabWidth); ++i) {
|
|
42356
|
+
aligned = indent(aligned);
|
|
42357
|
+
}
|
|
42358
|
+
aligned = align(size % tabWidth, aligned);
|
|
42359
|
+
aligned = align(Number.NEGATIVE_INFINITY, aligned);
|
|
42298
42360
|
}
|
|
42299
|
-
|
|
42300
|
-
|
|
42361
|
+
return aligned;
|
|
42362
|
+
}
|
|
42363
|
+
function label(label2, contents) {
|
|
42364
|
+
return label2 ? { type: DOC_TYPE_LABEL, label: label2, contents } : contents;
|
|
42365
|
+
}
|
|
42366
|
+
|
|
42367
|
+
// scripts/build/shims/at.js
|
|
42368
|
+
var at = (isOptionalObject, object, index) => {
|
|
42369
|
+
if (isOptionalObject && (object === void 0 || object === null)) {
|
|
42370
|
+
return;
|
|
42301
42371
|
}
|
|
42302
|
-
if (
|
|
42303
|
-
return
|
|
42304
|
-
...indent2,
|
|
42305
|
-
root: indent2
|
|
42306
|
-
};
|
|
42372
|
+
if (Array.isArray(object) || typeof object === "string") {
|
|
42373
|
+
return object[index < 0 ? object.length + index : index];
|
|
42307
42374
|
}
|
|
42308
|
-
|
|
42309
|
-
|
|
42310
|
-
|
|
42311
|
-
|
|
42312
|
-
|
|
42313
|
-
|
|
42314
|
-
|
|
42315
|
-
|
|
42316
|
-
let value = "";
|
|
42317
|
-
let length = 0;
|
|
42318
|
-
let lastTabs = 0;
|
|
42319
|
-
let lastSpaces = 0;
|
|
42320
|
-
for (const part of queue) {
|
|
42321
|
-
switch (part.type) {
|
|
42322
|
-
case "indent":
|
|
42323
|
-
flush();
|
|
42324
|
-
if (options.useTabs) {
|
|
42325
|
-
addTabs(1);
|
|
42326
|
-
} else {
|
|
42327
|
-
addSpaces(options.tabWidth);
|
|
42328
|
-
}
|
|
42329
|
-
break;
|
|
42330
|
-
case "stringAlign":
|
|
42331
|
-
flush();
|
|
42332
|
-
value += part.n;
|
|
42333
|
-
length += part.n.length;
|
|
42334
|
-
break;
|
|
42335
|
-
case "numberAlign":
|
|
42336
|
-
lastTabs += 1;
|
|
42337
|
-
lastSpaces += part.n;
|
|
42338
|
-
break;
|
|
42339
|
-
default:
|
|
42340
|
-
throw new Error(`Unexpected type '${part.type}'`);
|
|
42341
|
-
}
|
|
42342
|
-
}
|
|
42343
|
-
flushSpaces();
|
|
42344
|
-
return {
|
|
42345
|
-
...ind,
|
|
42346
|
-
value,
|
|
42347
|
-
length,
|
|
42348
|
-
queue
|
|
42349
|
-
};
|
|
42350
|
-
function addTabs(count) {
|
|
42351
|
-
value += " ".repeat(count);
|
|
42352
|
-
length += options.tabWidth * count;
|
|
42353
|
-
}
|
|
42354
|
-
function addSpaces(count) {
|
|
42355
|
-
value += " ".repeat(count);
|
|
42356
|
-
length += count;
|
|
42357
|
-
}
|
|
42358
|
-
function flush() {
|
|
42359
|
-
if (options.useTabs) {
|
|
42360
|
-
flushTabs();
|
|
42361
|
-
} else {
|
|
42362
|
-
flushSpaces();
|
|
42363
|
-
}
|
|
42375
|
+
return object.at(index);
|
|
42376
|
+
};
|
|
42377
|
+
var at_default = at;
|
|
42378
|
+
|
|
42379
|
+
// scripts/build/shims/string-replace-all.js
|
|
42380
|
+
var stringReplaceAll = (isOptionalObject, original, pattern, replacement) => {
|
|
42381
|
+
if (isOptionalObject && (original === void 0 || original === null)) {
|
|
42382
|
+
return;
|
|
42364
42383
|
}
|
|
42365
|
-
|
|
42366
|
-
|
|
42367
|
-
addTabs(lastTabs);
|
|
42368
|
-
}
|
|
42369
|
-
resetLast();
|
|
42384
|
+
if (original.replaceAll) {
|
|
42385
|
+
return original.replaceAll(pattern, replacement);
|
|
42370
42386
|
}
|
|
42371
|
-
|
|
42372
|
-
|
|
42373
|
-
addSpaces(lastSpaces);
|
|
42374
|
-
}
|
|
42375
|
-
resetLast();
|
|
42387
|
+
if (pattern.global) {
|
|
42388
|
+
return original.replace(pattern, replacement);
|
|
42376
42389
|
}
|
|
42377
|
-
|
|
42378
|
-
|
|
42379
|
-
|
|
42390
|
+
return original.split(pattern).join(replacement);
|
|
42391
|
+
};
|
|
42392
|
+
var string_replace_all_default = stringReplaceAll;
|
|
42393
|
+
|
|
42394
|
+
// src/common/end-of-line.js
|
|
42395
|
+
function convertEndOfLineToChars(value) {
|
|
42396
|
+
switch (value) {
|
|
42397
|
+
case "cr":
|
|
42398
|
+
return "\r";
|
|
42399
|
+
case "crlf":
|
|
42400
|
+
return "\r\n";
|
|
42401
|
+
default:
|
|
42402
|
+
return "\n";
|
|
42380
42403
|
}
|
|
42381
42404
|
}
|
|
42382
|
-
|
|
42383
|
-
|
|
42384
|
-
|
|
42385
|
-
let outIndex = out.length;
|
|
42386
|
-
|
|
42387
|
-
|
|
42388
|
-
|
|
42389
|
-
|
|
42390
|
-
|
|
42391
|
-
}
|
|
42392
|
-
for (let charIndex = last.length - 1; charIndex >= 0; charIndex--) {
|
|
42393
|
-
const char = last[charIndex];
|
|
42394
|
-
if (char === " " || char === " ") {
|
|
42395
|
-
trimCount++;
|
|
42396
|
-
} else {
|
|
42397
|
-
out[outIndex] = last.slice(0, charIndex + 1);
|
|
42398
|
-
break outer;
|
|
42399
|
-
}
|
|
42400
|
-
}
|
|
42401
|
-
}
|
|
42402
|
-
if (trimCount > 0 || cursorCount > 0) {
|
|
42403
|
-
out.length = outIndex + 1;
|
|
42404
|
-
while (cursorCount-- > 0) {
|
|
42405
|
-
out.push(CURSOR_PLACEHOLDER);
|
|
42406
|
-
}
|
|
42407
|
-
}
|
|
42408
|
-
return trimCount;
|
|
42405
|
+
|
|
42406
|
+
// node_modules/emoji-regex/index.mjs
|
|
42407
|
+
var emoji_regex_default = () => {
|
|
42408
|
+
return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
|
|
42409
|
+
};
|
|
42410
|
+
|
|
42411
|
+
// node_modules/get-east-asian-width/lookup.js
|
|
42412
|
+
function isFullWidth(x) {
|
|
42413
|
+
return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510;
|
|
42409
42414
|
}
|
|
42410
|
-
function
|
|
42411
|
-
|
|
42412
|
-
return true;
|
|
42413
|
-
}
|
|
42414
|
-
let restIdx = restCommands.length;
|
|
42415
|
-
const cmds = [next];
|
|
42416
|
-
const out = [];
|
|
42417
|
-
while (width >= 0) {
|
|
42418
|
-
if (cmds.length === 0) {
|
|
42419
|
-
if (restIdx === 0) {
|
|
42420
|
-
return true;
|
|
42421
|
-
}
|
|
42422
|
-
cmds.push(restCommands[--restIdx]);
|
|
42423
|
-
continue;
|
|
42424
|
-
}
|
|
42425
|
-
const {
|
|
42426
|
-
mode,
|
|
42427
|
-
doc
|
|
42428
|
-
} = cmds.pop();
|
|
42429
|
-
const docType = get_doc_type_default(doc);
|
|
42430
|
-
switch (docType) {
|
|
42431
|
-
case DOC_TYPE_STRING:
|
|
42432
|
-
out.push(doc);
|
|
42433
|
-
width -= get_string_width_default(doc);
|
|
42434
|
-
break;
|
|
42435
|
-
case DOC_TYPE_ARRAY:
|
|
42436
|
-
case DOC_TYPE_FILL: {
|
|
42437
|
-
const parts = docType === DOC_TYPE_ARRAY ? doc : doc.parts;
|
|
42438
|
-
for (let i = parts.length - 1; i >= 0; i--) {
|
|
42439
|
-
cmds.push({
|
|
42440
|
-
mode,
|
|
42441
|
-
doc: parts[i]
|
|
42442
|
-
});
|
|
42443
|
-
}
|
|
42444
|
-
break;
|
|
42445
|
-
}
|
|
42446
|
-
case DOC_TYPE_INDENT:
|
|
42447
|
-
case DOC_TYPE_ALIGN:
|
|
42448
|
-
case DOC_TYPE_INDENT_IF_BREAK:
|
|
42449
|
-
case DOC_TYPE_LABEL:
|
|
42450
|
-
cmds.push({
|
|
42451
|
-
mode,
|
|
42452
|
-
doc: doc.contents
|
|
42453
|
-
});
|
|
42454
|
-
break;
|
|
42455
|
-
case DOC_TYPE_TRIM:
|
|
42456
|
-
width += trim2(out);
|
|
42457
|
-
break;
|
|
42458
|
-
case DOC_TYPE_GROUP: {
|
|
42459
|
-
if (mustBeFlat && doc.break) {
|
|
42460
|
-
return false;
|
|
42461
|
-
}
|
|
42462
|
-
const groupMode = doc.break ? MODE_BREAK : mode;
|
|
42463
|
-
const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default(
|
|
42464
|
-
/* isOptionalObject */
|
|
42465
|
-
false,
|
|
42466
|
-
doc.expandedStates,
|
|
42467
|
-
-1
|
|
42468
|
-
) : doc.contents;
|
|
42469
|
-
cmds.push({
|
|
42470
|
-
mode: groupMode,
|
|
42471
|
-
doc: contents
|
|
42472
|
-
});
|
|
42473
|
-
break;
|
|
42474
|
-
}
|
|
42475
|
-
case DOC_TYPE_IF_BREAK: {
|
|
42476
|
-
const groupMode = doc.groupId ? groupModeMap[doc.groupId] || MODE_FLAT : mode;
|
|
42477
|
-
const contents = groupMode === MODE_BREAK ? doc.breakContents : doc.flatContents;
|
|
42478
|
-
if (contents) {
|
|
42479
|
-
cmds.push({
|
|
42480
|
-
mode,
|
|
42481
|
-
doc: contents
|
|
42482
|
-
});
|
|
42483
|
-
}
|
|
42484
|
-
break;
|
|
42485
|
-
}
|
|
42486
|
-
case DOC_TYPE_LINE:
|
|
42487
|
-
if (mode === MODE_BREAK || doc.hard) {
|
|
42488
|
-
return true;
|
|
42489
|
-
}
|
|
42490
|
-
if (!doc.soft) {
|
|
42491
|
-
out.push(" ");
|
|
42492
|
-
width--;
|
|
42493
|
-
}
|
|
42494
|
-
break;
|
|
42495
|
-
case DOC_TYPE_LINE_SUFFIX:
|
|
42496
|
-
hasLineSuffix = true;
|
|
42497
|
-
break;
|
|
42498
|
-
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42499
|
-
if (hasLineSuffix) {
|
|
42500
|
-
return false;
|
|
42501
|
-
}
|
|
42502
|
-
break;
|
|
42503
|
-
}
|
|
42504
|
-
}
|
|
42505
|
-
return false;
|
|
42415
|
+
function isWide(x) {
|
|
42416
|
+
return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9800 && x <= 9811 || x === 9855 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12771 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 19903 || x >= 19968 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x === 94192 || x === 94193 || x >= 94208 && x <= 100343 || x >= 100352 && x <= 101589 || x >= 101632 && x <= 101640 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128727 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129672 || x >= 129680 && x <= 129725 || x >= 129727 && x <= 129733 || x >= 129742 && x <= 129755 || x >= 129760 && x <= 129768 || x >= 129776 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141;
|
|
42506
42417
|
}
|
|
42507
|
-
|
|
42508
|
-
|
|
42509
|
-
|
|
42510
|
-
|
|
42511
|
-
|
|
42512
|
-
|
|
42513
|
-
|
|
42514
|
-
|
|
42515
|
-
|
|
42516
|
-
}
|
|
42517
|
-
|
|
42518
|
-
|
|
42519
|
-
|
|
42520
|
-
|
|
42521
|
-
|
|
42522
|
-
|
|
42523
|
-
const
|
|
42524
|
-
|
|
42525
|
-
|
|
42526
|
-
|
|
42527
|
-
|
|
42528
|
-
|
|
42529
|
-
|
|
42530
|
-
|
|
42531
|
-
|
|
42532
|
-
|
|
42533
|
-
|
|
42534
|
-
|
|
42535
|
-
|
|
42536
|
-
|
|
42537
|
-
|
|
42538
|
-
|
|
42539
|
-
|
|
42540
|
-
|
|
42541
|
-
|
|
42542
|
-
|
|
42543
|
-
|
|
42544
|
-
|
|
42545
|
-
|
|
42546
|
-
|
|
42547
|
-
|
|
42548
|
-
|
|
42549
|
-
|
|
42550
|
-
|
|
42551
|
-
|
|
42552
|
-
|
|
42553
|
-
|
|
42554
|
-
|
|
42555
|
-
|
|
42556
|
-
|
|
42557
|
-
|
|
42558
|
-
|
|
42559
|
-
|
|
42560
|
-
|
|
42561
|
-
|
|
42562
|
-
|
|
42563
|
-
|
|
42564
|
-
|
|
42565
|
-
|
|
42566
|
-
case
|
|
42567
|
-
|
|
42568
|
-
|
|
42569
|
-
|
|
42570
|
-
doc: doc2.contents
|
|
42571
|
-
});
|
|
42572
|
-
break;
|
|
42573
|
-
case DOC_TYPE_TRIM:
|
|
42574
|
-
pos -= trim2(out);
|
|
42575
|
-
break;
|
|
42576
|
-
case DOC_TYPE_GROUP:
|
|
42577
|
-
switch (mode) {
|
|
42578
|
-
case MODE_FLAT:
|
|
42579
|
-
if (!shouldRemeasure) {
|
|
42580
|
-
cmds.push({
|
|
42581
|
-
ind,
|
|
42582
|
-
mode: doc2.break ? MODE_BREAK : MODE_FLAT,
|
|
42583
|
-
doc: doc2.contents
|
|
42584
|
-
});
|
|
42585
|
-
break;
|
|
42586
|
-
}
|
|
42587
|
-
case MODE_BREAK: {
|
|
42588
|
-
shouldRemeasure = false;
|
|
42589
|
-
const next = {
|
|
42590
|
-
ind,
|
|
42591
|
-
mode: MODE_FLAT,
|
|
42592
|
-
doc: doc2.contents
|
|
42593
|
-
};
|
|
42594
|
-
const rem = width - pos;
|
|
42595
|
-
const hasLineSuffix = lineSuffix2.length > 0;
|
|
42596
|
-
if (!doc2.break && fits(next, cmds, rem, hasLineSuffix, groupModeMap)) {
|
|
42597
|
-
cmds.push(next);
|
|
42598
|
-
} else {
|
|
42599
|
-
if (doc2.expandedStates) {
|
|
42600
|
-
const mostExpanded = at_default(
|
|
42601
|
-
/* isOptionalObject */
|
|
42602
|
-
false,
|
|
42603
|
-
doc2.expandedStates,
|
|
42604
|
-
-1
|
|
42605
|
-
);
|
|
42606
|
-
if (doc2.break) {
|
|
42607
|
-
cmds.push({
|
|
42608
|
-
ind,
|
|
42609
|
-
mode: MODE_BREAK,
|
|
42610
|
-
doc: mostExpanded
|
|
42611
|
-
});
|
|
42612
|
-
break;
|
|
42613
|
-
} else {
|
|
42614
|
-
for (let i = 1; i < doc2.expandedStates.length + 1; i++) {
|
|
42615
|
-
if (i >= doc2.expandedStates.length) {
|
|
42616
|
-
cmds.push({
|
|
42617
|
-
ind,
|
|
42618
|
-
mode: MODE_BREAK,
|
|
42619
|
-
doc: mostExpanded
|
|
42620
|
-
});
|
|
42621
|
-
break;
|
|
42622
|
-
} else {
|
|
42623
|
-
const state = doc2.expandedStates[i];
|
|
42624
|
-
const cmd = {
|
|
42625
|
-
ind,
|
|
42626
|
-
mode: MODE_FLAT,
|
|
42627
|
-
doc: state
|
|
42628
|
-
};
|
|
42629
|
-
if (fits(cmd, cmds, rem, hasLineSuffix, groupModeMap)) {
|
|
42630
|
-
cmds.push(cmd);
|
|
42631
|
-
break;
|
|
42632
|
-
}
|
|
42633
|
-
}
|
|
42634
|
-
}
|
|
42635
|
-
}
|
|
42636
|
-
} else {
|
|
42637
|
-
cmds.push({
|
|
42638
|
-
ind,
|
|
42639
|
-
mode: MODE_BREAK,
|
|
42640
|
-
doc: doc2.contents
|
|
42641
|
-
});
|
|
42642
|
-
}
|
|
42643
|
-
}
|
|
42644
|
-
break;
|
|
42645
|
-
}
|
|
42646
|
-
}
|
|
42647
|
-
if (doc2.id) {
|
|
42648
|
-
groupModeMap[doc2.id] = at_default(
|
|
42649
|
-
/* isOptionalObject */
|
|
42650
|
-
false,
|
|
42651
|
-
cmds,
|
|
42652
|
-
-1
|
|
42653
|
-
).mode;
|
|
42654
|
-
}
|
|
42655
|
-
break;
|
|
42656
|
-
case DOC_TYPE_FILL: {
|
|
42657
|
-
const rem = width - pos;
|
|
42658
|
-
const {
|
|
42659
|
-
parts
|
|
42418
|
+
|
|
42419
|
+
// node_modules/get-east-asian-width/index.js
|
|
42420
|
+
var _isNarrowWidth = (codePoint) => !(isFullWidth(codePoint) || isWide(codePoint));
|
|
42421
|
+
|
|
42422
|
+
// src/utils/get-string-width.js
|
|
42423
|
+
var notAsciiRegex = /[^\x20-\x7F]/;
|
|
42424
|
+
function getStringWidth(text) {
|
|
42425
|
+
if (!text) {
|
|
42426
|
+
return 0;
|
|
42427
|
+
}
|
|
42428
|
+
if (!notAsciiRegex.test(text)) {
|
|
42429
|
+
return text.length;
|
|
42430
|
+
}
|
|
42431
|
+
text = text.replace(emoji_regex_default(), " ");
|
|
42432
|
+
let width = 0;
|
|
42433
|
+
for (const character of text) {
|
|
42434
|
+
const codePoint = character.codePointAt(0);
|
|
42435
|
+
if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
|
|
42436
|
+
continue;
|
|
42437
|
+
}
|
|
42438
|
+
if (codePoint >= 768 && codePoint <= 879) {
|
|
42439
|
+
continue;
|
|
42440
|
+
}
|
|
42441
|
+
width += _isNarrowWidth(codePoint) ? 1 : 2;
|
|
42442
|
+
}
|
|
42443
|
+
return width;
|
|
42444
|
+
}
|
|
42445
|
+
var get_string_width_default = getStringWidth;
|
|
42446
|
+
|
|
42447
|
+
// src/document/utils.js
|
|
42448
|
+
function mapDoc(doc, cb) {
|
|
42449
|
+
if (typeof doc === "string") {
|
|
42450
|
+
return cb(doc);
|
|
42451
|
+
}
|
|
42452
|
+
const mapped = /* @__PURE__ */ new Map();
|
|
42453
|
+
return rec(doc);
|
|
42454
|
+
function rec(doc2) {
|
|
42455
|
+
if (mapped.has(doc2)) {
|
|
42456
|
+
return mapped.get(doc2);
|
|
42457
|
+
}
|
|
42458
|
+
const result = process2(doc2);
|
|
42459
|
+
mapped.set(doc2, result);
|
|
42460
|
+
return result;
|
|
42461
|
+
}
|
|
42462
|
+
function process2(doc2) {
|
|
42463
|
+
switch (get_doc_type_default(doc2)) {
|
|
42464
|
+
case DOC_TYPE_ARRAY:
|
|
42465
|
+
return cb(doc2.map(rec));
|
|
42466
|
+
case DOC_TYPE_FILL:
|
|
42467
|
+
return cb({
|
|
42468
|
+
...doc2,
|
|
42469
|
+
parts: doc2.parts.map(rec)
|
|
42470
|
+
});
|
|
42471
|
+
case DOC_TYPE_IF_BREAK:
|
|
42472
|
+
return cb({
|
|
42473
|
+
...doc2,
|
|
42474
|
+
breakContents: rec(doc2.breakContents),
|
|
42475
|
+
flatContents: rec(doc2.flatContents)
|
|
42476
|
+
});
|
|
42477
|
+
case DOC_TYPE_GROUP: {
|
|
42478
|
+
let {
|
|
42479
|
+
expandedStates,
|
|
42480
|
+
contents
|
|
42660
42481
|
} = doc2;
|
|
42661
|
-
if (
|
|
42662
|
-
|
|
42663
|
-
|
|
42664
|
-
const [content, whitespace] = parts;
|
|
42665
|
-
const contentFlatCmd = {
|
|
42666
|
-
ind,
|
|
42667
|
-
mode: MODE_FLAT,
|
|
42668
|
-
doc: content
|
|
42669
|
-
};
|
|
42670
|
-
const contentBreakCmd = {
|
|
42671
|
-
ind,
|
|
42672
|
-
mode: MODE_BREAK,
|
|
42673
|
-
doc: content
|
|
42674
|
-
};
|
|
42675
|
-
const contentFits = fits(contentFlatCmd, [], rem, lineSuffix2.length > 0, groupModeMap, true);
|
|
42676
|
-
if (parts.length === 1) {
|
|
42677
|
-
if (contentFits) {
|
|
42678
|
-
cmds.push(contentFlatCmd);
|
|
42679
|
-
} else {
|
|
42680
|
-
cmds.push(contentBreakCmd);
|
|
42681
|
-
}
|
|
42682
|
-
break;
|
|
42683
|
-
}
|
|
42684
|
-
const whitespaceFlatCmd = {
|
|
42685
|
-
ind,
|
|
42686
|
-
mode: MODE_FLAT,
|
|
42687
|
-
doc: whitespace
|
|
42688
|
-
};
|
|
42689
|
-
const whitespaceBreakCmd = {
|
|
42690
|
-
ind,
|
|
42691
|
-
mode: MODE_BREAK,
|
|
42692
|
-
doc: whitespace
|
|
42693
|
-
};
|
|
42694
|
-
if (parts.length === 2) {
|
|
42695
|
-
if (contentFits) {
|
|
42696
|
-
cmds.push(whitespaceFlatCmd, contentFlatCmd);
|
|
42697
|
-
} else {
|
|
42698
|
-
cmds.push(whitespaceBreakCmd, contentBreakCmd);
|
|
42699
|
-
}
|
|
42700
|
-
break;
|
|
42701
|
-
}
|
|
42702
|
-
parts.splice(0, 2);
|
|
42703
|
-
const remainingCmd = {
|
|
42704
|
-
ind,
|
|
42705
|
-
mode,
|
|
42706
|
-
doc: fill(parts)
|
|
42707
|
-
};
|
|
42708
|
-
const secondContent = parts[0];
|
|
42709
|
-
const firstAndSecondContentFlatCmd = {
|
|
42710
|
-
ind,
|
|
42711
|
-
mode: MODE_FLAT,
|
|
42712
|
-
doc: [content, whitespace, secondContent]
|
|
42713
|
-
};
|
|
42714
|
-
const firstAndSecondContentFits = fits(firstAndSecondContentFlatCmd, [], rem, lineSuffix2.length > 0, groupModeMap, true);
|
|
42715
|
-
if (firstAndSecondContentFits) {
|
|
42716
|
-
cmds.push(remainingCmd, whitespaceFlatCmd, contentFlatCmd);
|
|
42717
|
-
} else if (contentFits) {
|
|
42718
|
-
cmds.push(remainingCmd, whitespaceBreakCmd, contentFlatCmd);
|
|
42482
|
+
if (expandedStates) {
|
|
42483
|
+
expandedStates = expandedStates.map(rec);
|
|
42484
|
+
contents = expandedStates[0];
|
|
42719
42485
|
} else {
|
|
42720
|
-
|
|
42721
|
-
}
|
|
42722
|
-
break;
|
|
42723
|
-
}
|
|
42724
|
-
case DOC_TYPE_IF_BREAK:
|
|
42725
|
-
case DOC_TYPE_INDENT_IF_BREAK: {
|
|
42726
|
-
const groupMode = doc2.groupId ? groupModeMap[doc2.groupId] : mode;
|
|
42727
|
-
if (groupMode === MODE_BREAK) {
|
|
42728
|
-
const breakContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.breakContents : doc2.negate ? doc2.contents : indent(doc2.contents);
|
|
42729
|
-
if (breakContents) {
|
|
42730
|
-
cmds.push({
|
|
42731
|
-
ind,
|
|
42732
|
-
mode,
|
|
42733
|
-
doc: breakContents
|
|
42734
|
-
});
|
|
42735
|
-
}
|
|
42736
|
-
}
|
|
42737
|
-
if (groupMode === MODE_FLAT) {
|
|
42738
|
-
const flatContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.flatContents : doc2.negate ? indent(doc2.contents) : doc2.contents;
|
|
42739
|
-
if (flatContents) {
|
|
42740
|
-
cmds.push({
|
|
42741
|
-
ind,
|
|
42742
|
-
mode,
|
|
42743
|
-
doc: flatContents
|
|
42744
|
-
});
|
|
42745
|
-
}
|
|
42486
|
+
contents = rec(contents);
|
|
42746
42487
|
}
|
|
42747
|
-
|
|
42488
|
+
return cb({
|
|
42489
|
+
...doc2,
|
|
42490
|
+
contents,
|
|
42491
|
+
expandedStates
|
|
42492
|
+
});
|
|
42748
42493
|
}
|
|
42494
|
+
case DOC_TYPE_ALIGN:
|
|
42495
|
+
case DOC_TYPE_INDENT:
|
|
42496
|
+
case DOC_TYPE_INDENT_IF_BREAK:
|
|
42497
|
+
case DOC_TYPE_LABEL:
|
|
42749
42498
|
case DOC_TYPE_LINE_SUFFIX:
|
|
42750
|
-
|
|
42751
|
-
|
|
42752
|
-
|
|
42753
|
-
doc: doc2.contents
|
|
42499
|
+
return cb({
|
|
42500
|
+
...doc2,
|
|
42501
|
+
contents: rec(doc2.contents)
|
|
42754
42502
|
});
|
|
42755
|
-
|
|
42503
|
+
case DOC_TYPE_STRING:
|
|
42504
|
+
case DOC_TYPE_CURSOR:
|
|
42505
|
+
case DOC_TYPE_TRIM:
|
|
42756
42506
|
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42757
|
-
if (lineSuffix2.length > 0) {
|
|
42758
|
-
cmds.push({
|
|
42759
|
-
ind,
|
|
42760
|
-
mode,
|
|
42761
|
-
doc: hardlineWithoutBreakParent
|
|
42762
|
-
});
|
|
42763
|
-
}
|
|
42764
|
-
break;
|
|
42765
42507
|
case DOC_TYPE_LINE:
|
|
42766
|
-
switch (mode) {
|
|
42767
|
-
case MODE_FLAT:
|
|
42768
|
-
if (!doc2.hard) {
|
|
42769
|
-
if (!doc2.soft) {
|
|
42770
|
-
out.push(" ");
|
|
42771
|
-
pos += 1;
|
|
42772
|
-
}
|
|
42773
|
-
break;
|
|
42774
|
-
} else {
|
|
42775
|
-
shouldRemeasure = true;
|
|
42776
|
-
}
|
|
42777
|
-
case MODE_BREAK:
|
|
42778
|
-
if (lineSuffix2.length > 0) {
|
|
42779
|
-
cmds.push({
|
|
42780
|
-
ind,
|
|
42781
|
-
mode,
|
|
42782
|
-
doc: doc2
|
|
42783
|
-
}, ...lineSuffix2.reverse());
|
|
42784
|
-
lineSuffix2.length = 0;
|
|
42785
|
-
break;
|
|
42786
|
-
}
|
|
42787
|
-
if (doc2.literal) {
|
|
42788
|
-
if (ind.root) {
|
|
42789
|
-
out.push(newLine, ind.root.value);
|
|
42790
|
-
pos = ind.root.length;
|
|
42791
|
-
} else {
|
|
42792
|
-
out.push(newLine);
|
|
42793
|
-
pos = 0;
|
|
42794
|
-
}
|
|
42795
|
-
} else {
|
|
42796
|
-
pos -= trim2(out);
|
|
42797
|
-
out.push(newLine + ind.value);
|
|
42798
|
-
pos = ind.length;
|
|
42799
|
-
}
|
|
42800
|
-
break;
|
|
42801
|
-
}
|
|
42802
|
-
break;
|
|
42803
|
-
case DOC_TYPE_LABEL:
|
|
42804
|
-
cmds.push({
|
|
42805
|
-
ind,
|
|
42806
|
-
mode,
|
|
42807
|
-
doc: doc2.contents
|
|
42808
|
-
});
|
|
42809
|
-
break;
|
|
42810
42508
|
case DOC_TYPE_BREAK_PARENT:
|
|
42811
|
-
|
|
42509
|
+
return cb(doc2);
|
|
42812
42510
|
default:
|
|
42813
42511
|
throw new invalid_doc_error_default(doc2);
|
|
42814
42512
|
}
|
|
42815
|
-
|
|
42816
|
-
|
|
42817
|
-
|
|
42513
|
+
}
|
|
42514
|
+
}
|
|
42515
|
+
function findInDoc(doc, fn, defaultValue) {
|
|
42516
|
+
let result = defaultValue;
|
|
42517
|
+
let shouldSkipFurtherProcessing = false;
|
|
42518
|
+
function findInDocOnEnterFn(doc2) {
|
|
42519
|
+
if (shouldSkipFurtherProcessing) {
|
|
42520
|
+
return false;
|
|
42521
|
+
}
|
|
42522
|
+
const maybeResult = fn(doc2);
|
|
42523
|
+
if (maybeResult !== void 0) {
|
|
42524
|
+
shouldSkipFurtherProcessing = true;
|
|
42525
|
+
result = maybeResult;
|
|
42818
42526
|
}
|
|
42819
42527
|
}
|
|
42820
|
-
|
|
42821
|
-
|
|
42822
|
-
|
|
42823
|
-
|
|
42824
|
-
|
|
42825
|
-
|
|
42826
|
-
|
|
42827
|
-
|
|
42828
|
-
|
|
42829
|
-
|
|
42830
|
-
|
|
42528
|
+
traverse_doc_default(doc, findInDocOnEnterFn);
|
|
42529
|
+
return result;
|
|
42530
|
+
}
|
|
42531
|
+
function willBreakFn(doc) {
|
|
42532
|
+
if (doc.type === DOC_TYPE_GROUP && doc.break) {
|
|
42533
|
+
return true;
|
|
42534
|
+
}
|
|
42535
|
+
if (doc.type === DOC_TYPE_LINE && doc.hard) {
|
|
42536
|
+
return true;
|
|
42537
|
+
}
|
|
42538
|
+
if (doc.type === DOC_TYPE_BREAK_PARENT) {
|
|
42539
|
+
return true;
|
|
42831
42540
|
}
|
|
42832
|
-
return {
|
|
42833
|
-
formatted: out.join("")
|
|
42834
|
-
};
|
|
42835
42541
|
}
|
|
42836
|
-
|
|
42837
|
-
|
|
42838
|
-
|
|
42839
|
-
|
|
42840
|
-
|
|
42841
|
-
|
|
42842
|
-
|
|
42843
|
-
|
|
42844
|
-
|
|
42845
|
-
|
|
42846
|
-
|
|
42847
|
-
|
|
42848
|
-
|
|
42849
|
-
cursor,
|
|
42850
|
-
breakParent,
|
|
42851
|
-
ifBreak,
|
|
42852
|
-
trim,
|
|
42853
|
-
indent,
|
|
42854
|
-
indentIfBreak,
|
|
42855
|
-
align,
|
|
42856
|
-
addAlignmentToDoc,
|
|
42857
|
-
markAsRoot,
|
|
42858
|
-
dedentToRoot,
|
|
42859
|
-
dedent,
|
|
42860
|
-
hardlineWithoutBreakParent,
|
|
42861
|
-
literallineWithoutBreakParent,
|
|
42862
|
-
label,
|
|
42863
|
-
// TODO: Remove this in v4
|
|
42864
|
-
concat: (parts) => parts
|
|
42865
|
-
};
|
|
42866
|
-
var printer = { printDocToString };
|
|
42867
|
-
var utils = {
|
|
42868
|
-
willBreak,
|
|
42869
|
-
traverseDoc: traverse_doc_default,
|
|
42870
|
-
findInDoc,
|
|
42871
|
-
mapDoc,
|
|
42872
|
-
removeLines,
|
|
42873
|
-
stripTrailingHardline,
|
|
42874
|
-
replaceEndOfLine,
|
|
42875
|
-
canBreak
|
|
42876
|
-
};
|
|
42877
|
-
|
|
42878
|
-
var Eu=Object.create;var $e=Object.defineProperty;var Cu=Object.getOwnPropertyDescriptor;var hu=Object.getOwnPropertyNames;var gu=Object.getPrototypeOf,yu=Object.prototype.hasOwnProperty;var or=e=>{throw TypeError(e)};var Au=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),We=(e,t)=>{for(var r in t)$e(e,r,{get:t[r],enumerable:!0});},ir=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of hu(t))!yu.call(e,o)&&o!==r&&$e(e,o,{get:()=>t[o],enumerable:!(n=Cu(t,o))||n.enumerable});return e};var Ae=(e,t,r)=>(r=e!=null?Eu(gu(e)):{},ir($e(r,"default",{value:e,enumerable:!0}),e)),Bu=e=>ir($e({},"__esModule",{value:!0}),e);var _u=(e,t,r)=>t.has(e)||or("Cannot "+r);var sr=(e,t,r)=>t.has(e)?or("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r);var fe=(e,t,r)=>(_u(e,t,"access private method"),r);var ar=ye(yt=>{Object.defineProperty(yt,"__esModule",{value:!0});yt.default=Dr;function Dr(){}Dr.prototype={diff:function(t,r){var n,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},u=o.callback;typeof o=="function"&&(u=o,o={}),this.options=o;var i=this;function s(C){return u?(setTimeout(function(){u(void 0,C);},0),!0):C}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var D=r.length,a=t.length,c=1,p=D+a;o.maxEditLength&&(p=Math.min(p,o.maxEditLength));var f=(n=o.timeout)!==null&&n!==void 0?n:1/0,F=Date.now()+f,l=[{oldPos:-1,lastComponent:void 0}],d=this.extractCommon(l[0],r,t,0);if(l[0].oldPos+1>=a&&d+1>=D)return s([{value:this.join(r),count:r.length}]);var m=-1/0,E=1/0;function A(){for(var C=Math.max(m,-c);C<=Math.min(E,c);C+=2){var h=void 0,v=l[C-1],k=l[C+1];v&&(l[C-1]=void 0);var W=!1;if(k){var ge=k.oldPos-C;W=k&&0<=ge&&ge<D;}var gt=v&&v.oldPos+1<a;if(!W&&!gt){l[C]=void 0;continue}if(!gt||W&&v.oldPos+1<k.oldPos?h=i.addToPath(k,!0,void 0,0):h=i.addToPath(v,void 0,!0,1),d=i.extractCommon(h,r,t,C),h.oldPos+1>=a&&d+1>=D)return s(xu(i,h.lastComponent,r,t,i.useLongestToken));l[C]=h,h.oldPos+1>=a&&(E=Math.min(E,C-1)),d+1>=D&&(m=Math.max(m,C+1));}c++;}if(u)(function C(){setTimeout(function(){if(c>p||Date.now()>F)return u();A()||C();},0);})();else for(;c<=p&&Date.now()<=F;){var _=A();if(_)return _}},addToPath:function(t,r,n,o){var u=t.lastComponent;return u&&u.added===r&&u.removed===n?{oldPos:t.oldPos+o,lastComponent:{count:u.count+1,added:r,removed:n,previousComponent:u.previousComponent}}:{oldPos:t.oldPos+o,lastComponent:{count:1,added:r,removed:n,previousComponent:u}}},extractCommon:function(t,r,n,o){for(var u=r.length,i=n.length,s=t.oldPos,D=s-o,a=0;D+1<u&&s+1<i&&this.equals(r[D+1],n[s+1]);)D++,s++,a++;return a&&(t.lastComponent={count:a,previousComponent:t.lastComponent}),t.oldPos=s,D},equals:function(t,r){return this.options.comparator?this.options.comparator(t,r):t===r||this.options.ignoreCase&&t.toLowerCase()===r.toLowerCase()},removeEmpty:function(t){for(var r=[],n=0;n<t.length;n++)t[n]&&r.push(t[n]);return r},castInput:function(t){return t},tokenize:function(t){return t.split("")},join:function(t){return t.join("")}};function xu(e,t,r,n,o){for(var u=[],i;t;)u.push(t),i=t.previousComponent,delete t.previousComponent,t=i;u.reverse();for(var s=0,D=u.length,a=0,c=0;s<D;s++){var p=u[s];if(p.removed){if(p.value=e.join(n.slice(c,c+p.count)),c+=p.count,s&&u[s-1].added){var F=u[s-1];u[s-1]=u[s],u[s]=F;}}else {if(!p.added&&o){var f=r.slice(a,a+p.count);f=f.map(function(d,m){var E=n[c+m];return E.length>d.length?E:d}),p.value=e.join(f);}else p.value=e.join(r.slice(a,a+p.count));a+=p.count,p.added||(c+=p.count);}}var l=u[D-1];return D>1&&typeof l.value=="string"&&(l.added||l.removed)&&e.equals("",l.value)&&(u[D-2].value+=l.value,u.pop()),u}});var cr=ye(_e=>{Object.defineProperty(_e,"__esModule",{value:!0});_e.diffArrays=Ou;_e.arrayDiff=void 0;var ku=wu(ar());function wu(e){return e&&e.__esModule?e:{default:e}}var Be=new ku.default;_e.arrayDiff=Be;Be.tokenize=function(e){return e.slice()};Be.join=Be.removeEmpty=function(e){return e};function Ou(e,t,r){return Be.diff(e,t,r)}});var ot=ye((tD,rn)=>{var tn=new Proxy(String,{get:()=>tn});rn.exports=tn;});var wn={};We(wn,{default:()=>Ao,shouldHighlight:()=>yo});var yo,Ao,On=Au(()=>{yo=()=>!1,Ao=String;});var Tn=ye((Ba,qt)=>{var g=String,Nn=function(){return {isColorSupported:!1,reset:g,bold:g,dim:g,italic:g,underline:g,inverse:g,hidden:g,strikethrough:g,black:g,red:g,green:g,yellow:g,blue:g,magenta:g,cyan:g,white:g,gray:g,bgBlack:g,bgRed:g,bgGreen:g,bgYellow:g,bgBlue:g,bgMagenta:g,bgCyan:g,bgWhite:g}};qt.exports=Nn();qt.exports.createColors=Nn;});var jn=ye(Ct=>{Object.defineProperty(Ct,"__esModule",{value:!0});Ct.codeFrameColumns=Yn;Ct.default=wo;var Sn=(On(),Bu(wn)),In=Bo(Tn(),!0);function Rn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return (Rn=function(n){return n?r:t})(e)}function Bo(e,t){if(e===null||typeof e!="object"&&typeof e!="function")return {default:e};var r=Rn(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if(u!=="default"&&{}.hasOwnProperty.call(e,u)){var i=o?Object.getOwnPropertyDescriptor(e,u):null;i&&(i.get||i.set)?Object.defineProperty(n,u,i):n[u]=e[u];}return n.default=e,r&&r.set(e,n),n}var _o=In.default,vn=(e,t)=>r=>e(t(r)),Jt;function bo(e){if(e){return (Jt)!=null||(Jt=(0, In.createColors)(!0)),Jt}return _o}var Pn=!1;function xo(e){return {gutter:e.gray,marker:vn(e.red,e.bold),message:vn(e.red,e.bold)}}var Ln=/\r\n|[\n\r\u2028\u2029]/;function ko(e,t,r){let n=Object.assign({column:0,line:-1},e.start),o=Object.assign({},n,e.end),{linesAbove:u=2,linesBelow:i=3}=r||{},s=n.line,D=n.column,a=o.line,c=o.column,p=Math.max(s-(u+1),0),f=Math.min(t.length,a+i);s===-1&&(p=0),a===-1&&(f=t.length);let F=a-s,l={};if(F)for(let d=0;d<=F;d++){let m=d+s;if(!D)l[m]=!0;else if(d===0){let E=t[m-1].length;l[m]=[D,E-D+1];}else if(d===F)l[m]=[0,c];else {let E=t[m-d].length;l[m]=[0,E];}}else D===c?D?l[s]=[D,0]:l[s]=!0:l[s]=[D,c-D];return {start:p,end:f,markerLines:l}}function Yn(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0, Sn.shouldHighlight)(r),o=bo(r.forceColor),u=xo(o),i=(d,m)=>n?d(m):m,s=e.split(Ln),{start:D,end:a,markerLines:c}=ko(t,s,r),p=t.start&&typeof t.start.column=="number",f=String(a).length,l=(n?(0, Sn.default)(e,r):e).split(Ln,a).slice(D,a).map((d,m)=>{let E=D+1+m,_=` ${` ${E}`.slice(-f)} |`,C=c[E],h=!c[E+1];if(C){let v="";if(Array.isArray(C)){let k=d.slice(0,Math.max(C[0]-1,0)).replace(/[^\t]/g," "),W=C[1]||1;v=[`
|
|
42879
|
-
`,i(u.gutter,_.replace(/\d/g," "))," ",k,i(u.marker,"^").repeat(W)].join(""),h&&r.message&&(v+=" "+i(u.message,r.message));}return [i(u.marker,">"),i(u.gutter,_),d.length>0?` ${d}`:"",v].join("")}else return ` ${i(u.gutter,_)}${d.length>0?` ${d}`:""}`}).join(`
|
|
42880
|
-
`);return r.message&&!p&&(l=`${" ".repeat(f+1)}${r.message}
|
|
42881
|
-
${l}`),n?o.reset(l):l}function wo(e,t,r,n={}){if(!Pn){Pn=!0;let u="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";{let i=new Error(u);i.name="DeprecationWarning",console.warn(new Error(u));}}return r=Math.max(r,0),Yn(e,{start:{column:r,line:t}},n)}});var ur={};We(ur,{__debug:()=>ai,check:()=>si,doc:()=>tr,format:()=>mu,formatWithCursor:()=>du,getSupportInfo:()=>Di,util:()=>nr,version:()=>Du});var bu=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},re=bu;var Qn=Ae(cr());function lr(e){let t=e.indexOf("\r");return t>=0?e.charAt(t+1)===`
|
|
42882
|
-
`?"crlf":"cr":"lf"}function be(e){switch(e){case"cr":return "\r";case"crlf":return `\r
|
|
42883
|
-
`;default:return `
|
|
42884
|
-
`}}function At(e,t){let r;switch(t){case`
|
|
42885
|
-
`:r=/\n/g;break;case"\r":r=/\r/g;break;case`\r
|
|
42886
|
-
`:r=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(t)}.`)}let n=e.match(r);return n?n.length:0}function fr(e){return re(!1,e,/\r\n?/g,`
|
|
42887
|
-
`)}var G="string",V="array",z="cursor",P="indent",L="align",I="trim",b="group",N="fill",x="if-break",R="indent-if-break",Y="line-suffix",j="line-suffix-boundary",B="line",T="label",w="break-parent",Ue=new Set([z,P,L,I,b,N,x,R,Y,j,B,T,w]);function Nu(e){if(typeof e=="string")return G;if(Array.isArray(e))return V;if(!e)return;let{type:t}=e;if(Ue.has(t))return t}var K=Nu;var Tu=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Su(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return `Unexpected doc '${t}',
|
|
42888
|
-
Expected it to be 'string' or 'object'.`;if(K(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return `Unexpected doc '${r}'.`;let n=Tu([...Ue].map(o=>`'${o}'`));return `Unexpected doc.type '${e.type}'.
|
|
42889
|
-
Expected it to be ${n}.`}var Bt=class extends Error{name="InvalidDocError";constructor(t){super(Su(t)),this.doc=t;}},Z=Bt;var Fr={};function vu(e,t,r,n){let o=[e];for(;o.length>0;){let u=o.pop();if(u===Fr){r(o.pop());continue}r&&o.push(u,Fr);let i=K(u);if(!i)throw new Z(u);if((t==null?void 0:t(u))!==!1)switch(i){case V:case N:{let s=i===V?u:u.parts;for(let D=s.length,a=D-1;a>=0;--a)o.push(s[a]);break}case x:o.push(u.flatContents,u.breakContents);break;case b:if(n&&u.expandedStates)for(let s=u.expandedStates.length,D=s-1;D>=0;--D)o.push(u.expandedStates[D]);else o.push(u.contents);break;case L:case P:case R:case T:case Y:o.push(u.contents);break;case G:case z:case I:case j:case B:case w:break;default:throw new Z(u)}}}var xe=vu;var pr=()=>{},Ge=pr;function De(e){return {type:P,contents:e}}function se(e,t){return {type:L,contents:t,n:e}}function _t(e,t={}){return Ge(t.expandedStates),{type:b,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function dr(e){return se(Number.NEGATIVE_INFINITY,e)}function mr(e){return se({type:"root"},e)}function Er(e){return se(-1,e)}function Cr(e,t){return _t(e[0],{...t,expandedStates:e})}function ze(e){return {type:N,parts:e}}function hr(e,t="",r={}){return {type:x,breakContents:e,flatContents:t,groupId:r.groupId}}function gr(e,t){return {type:R,contents:e,groupId:t.groupId,negate:t.negate}}function ke(e){return {type:Y,contents:e}}var yr={type:j},Fe={type:w},Ar={type:I},we={type:B,hard:!0},bt={type:B,hard:!0,literal:!0},Ke={type:B},Br={type:B,soft:!0},q=[we,Fe],He=[bt,Fe],Oe={type:z};function Ne(e,t){let r=[];for(let n=0;n<t.length;n++)n!==0&&r.push(e),r.push(t[n]);return r}function qe(e,t,r){let n=e;if(t>0){for(let o=0;o<Math.floor(t/r);++o)n=De(n);n=se(t%r,n),n=se(Number.NEGATIVE_INFINITY,n);}return n}function _r(e,t){return e?{type:T,label:e,contents:t}:t}function Q(e){var t;if(!e)return "";if(Array.isArray(e)){let r=[];for(let n of e)if(Array.isArray(n))r.push(...Q(n));else {let o=Q(n);o!==""&&r.push(o);}return r}return e.type===x?{...e,breakContents:Q(e.breakContents),flatContents:Q(e.flatContents)}:e.type===b?{...e,contents:Q(e.contents),expandedStates:(t=e.expandedStates)==null?void 0:t.map(Q)}:e.type===N?{type:"fill",parts:e.parts.map(Q)}:e.contents?{...e,contents:Q(e.contents)}:e}function br(e){let t=Object.create(null),r=new Set;return n(Q(e));function n(u,i,s){var D,a;if(typeof u=="string")return JSON.stringify(u);if(Array.isArray(u)){let c=u.map(n).filter(Boolean);return c.length===1?c[0]:`[${c.join(", ")}]`}if(u.type===B){let c=((D=s==null?void 0:s[i+1])==null?void 0:D.type)===w;return u.literal?c?"literalline":"literallineWithoutBreakParent":u.hard?c?"hardline":"hardlineWithoutBreakParent":u.soft?"softline":"line"}if(u.type===w)return ((a=s==null?void 0:s[i-1])==null?void 0:a.type)===B&&s[i-1].hard?void 0:"breakParent";if(u.type===I)return "trim";if(u.type===P)return "indent("+n(u.contents)+")";if(u.type===L)return u.n===Number.NEGATIVE_INFINITY?"dedentToRoot("+n(u.contents)+")":u.n<0?"dedent("+n(u.contents)+")":u.n.type==="root"?"markAsRoot("+n(u.contents)+")":"align("+JSON.stringify(u.n)+", "+n(u.contents)+")";if(u.type===x)return "ifBreak("+n(u.breakContents)+(u.flatContents?", "+n(u.flatContents):"")+(u.groupId?(u.flatContents?"":', ""')+`, { groupId: ${o(u.groupId)} }`:"")+")";if(u.type===R){let c=[];u.negate&&c.push("negate: true"),u.groupId&&c.push(`groupId: ${o(u.groupId)}`);let p=c.length>0?`, { ${c.join(", ")} }`:"";return `indentIfBreak(${n(u.contents)}${p})`}if(u.type===b){let c=[];u.break&&u.break!=="propagated"&&c.push("shouldBreak: true"),u.id&&c.push(`id: ${o(u.id)}`);let p=c.length>0?`, { ${c.join(", ")} }`:"";return u.expandedStates?`conditionalGroup([${u.expandedStates.map(f=>n(f)).join(",")}]${p})`:`group(${n(u.contents)}${p})`}if(u.type===N)return `fill([${u.parts.map(c=>n(c)).join(", ")}])`;if(u.type===Y)return "lineSuffix("+n(u.contents)+")";if(u.type===j)return "lineSuffixBoundary";if(u.type===T)return `label(${JSON.stringify(u.label)}, ${n(u.contents)})`;throw new Error("Unknown doc type "+u.type)}function o(u){if(typeof u!="symbol")return JSON.stringify(String(u));if(u in t)return t[u];let i=u.description||"symbol";for(let s=0;;s++){let D=i+(s>0?` #${s}`:"");if(!r.has(D))return r.add(D),t[u]=`Symbol.for(${JSON.stringify(D)})`}}}var Pu=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},y=Pu;var xr=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function kr(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function wr(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Or=e=>!(kr(e)||wr(e));var Lu=/[^\x20-\x7F]/;function Iu(e){if(!e)return 0;if(!Lu.test(e))return e.length;e=e.replace(xr()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Or(n)?1:2);}return t}var Te=Iu;function ve(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(u){if(r.has(u))return r.get(u);let i=o(u);return r.set(u,i),i}function o(u){switch(K(u)){case V:return t(u.map(n));case N:return t({...u,parts:u.parts.map(n)});case x:return t({...u,breakContents:n(u.breakContents),flatContents:n(u.flatContents)});case b:{let{expandedStates:i,contents:s}=u;return i?(i=i.map(n),s=i[0]):s=n(s),t({...u,contents:s,expandedStates:i})}case L:case P:case R:case T:case Y:return t({...u,contents:n(u.contents)});case G:case z:case I:case j:case B:case w:return t(u);default:throw new Z(u)}}}function Je(e,t,r){let n=r,o=!1;function u(i){if(o)return !1;let s=t(i);s!==void 0&&(o=!0,n=s);}return xe(e,u),n}function Ru(e){if(e.type===b&&e.break||e.type===B&&e.hard||e.type===w)return !0}function Sr(e){return Je(e,Ru,!1)}function Nr(e){if(e.length>0){let t=y(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated");}return null}function vr(e){let t=new Set,r=[];function n(u){if(u.type===w&&Nr(r),u.type===b){if(r.push(u),t.has(u))return !1;t.add(u);}}function o(u){u.type===b&&r.pop().break&&Nr(r);}xe(e,n,o,!0);}function Yu(e){return e.type===B&&!e.hard?e.soft?"":" ":e.type===x?e.flatContents:e}function Pr(e){return ve(e,Yu)}function Tr(e){for(e=[...e];e.length>=2&&y(!1,e,-2).type===B&&y(!1,e,-1).type===w;)e.length-=2;if(e.length>0){let t=Se(y(!1,e,-1));e[e.length-1]=t;}return e}function Se(e){switch(K(e)){case P:case R:case b:case Y:case T:{let t=Se(e.contents);return {...e,contents:t}}case x:return {...e,breakContents:Se(e.breakContents),flatContents:Se(e.flatContents)};case N:return {...e,parts:Tr(e.parts)};case V:return Tr(e);case G:return e.replace(/[\n\r]*$/,"");case L:case z:case I:case j:case B:case w:break;default:throw new Z(e)}return e}function Xe(e){return Se(Mu(e))}function ju(e){switch(K(e)){case N:if(e.parts.every(t=>t===""))return "";break;case b:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return "";if(e.contents.type===b&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case L:case P:case R:case Y:if(!e.contents)return "";break;case x:if(!e.flatContents&&!e.breakContents)return "";break;case V:{let t=[];for(let r of e){if(!r)continue;let[n,...o]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof y(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...o);}return t.length===0?"":t.length===1?t[0]:t}case G:case z:case I:case j:case B:case T:case w:break;default:throw new Z(e)}return e}function Mu(e){return ve(e,t=>ju(t))}function Lr(e,t=He){return ve(e,r=>typeof r=="string"?Ne(t,r.split(`
|
|
42890
|
-
`)):r)}function Vu(e){if(e.type===B)return !0}function Ir(e){return Je(e,Vu,!1)}function Ze(e,t){return e.type===T?{...e,contents:t(e.contents)}:t(e)}var M=Symbol("MODE_BREAK"),J=Symbol("MODE_FLAT"),Pe=Symbol("cursor");function Rr(){return {value:"",length:0,queue:[]}}function $u(e,t){return xt(e,{type:"indent"},t)}function Wu(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Rr():t<0?xt(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:xt(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function xt(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],o="",u=0,i=0,s=0;for(let l of n)switch(l.type){case"indent":c(),r.useTabs?D(1):a(r.tabWidth);break;case"stringAlign":c(),o+=l.n,u+=l.n.length;break;case"numberAlign":i+=1,s+=l.n;break;default:throw new Error(`Unexpected type '${l.type}'`)}return f(),{...e,value:o,length:u,queue:n};function D(l){o+=" ".repeat(l),u+=r.tabWidth*l;}function a(l){o+=" ".repeat(l),u+=l;}function c(){r.useTabs?p():f();}function p(){i>0&&D(i),F();}function f(){s>0&&a(s),F();}function F(){i=0,s=0;}}function kt(e){let t=0,r=0,n=e.length;e:for(;n--;){let o=e[n];if(o===Pe){r++;continue}for(let u=o.length-1;u>=0;u--){let i=o[u];if(i===" "||i===" ")t++;else {e[n]=o.slice(0,u+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(Pe);return t}function Qe(e,t,r,n,o,u){if(r===Number.POSITIVE_INFINITY)return !0;let i=t.length,s=[e],D=[];for(;r>=0;){if(s.length===0){if(i===0)return !0;s.push(t[--i]);continue}let{mode:a,doc:c}=s.pop(),p=K(c);switch(p){case G:D.push(c),r-=Te(c);break;case V:case N:{let f=p===V?c:c.parts;for(let F=f.length-1;F>=0;F--)s.push({mode:a,doc:f[F]});break}case P:case L:case R:case T:s.push({mode:a,doc:c.contents});break;case I:r+=kt(D);break;case b:{if(u&&c.break)return !1;let f=c.break?M:a,F=c.expandedStates&&f===M?y(!1,c.expandedStates,-1):c.contents;s.push({mode:f,doc:F});break}case x:{let F=(c.groupId?o[c.groupId]||J:a)===M?c.breakContents:c.flatContents;F&&s.push({mode:a,doc:F});break}case B:if(a===M||c.hard)return !0;c.soft||(D.push(" "),r--);break;case Y:n=!0;break;case j:if(n)return !1;break}}return !1}function pe(e,t){let r={},n=t.printWidth,o=be(t.endOfLine),u=0,i=[{ind:Rr(),mode:M,doc:e}],s=[],D=!1,a=[],c=0;for(vr(e);i.length>0;){let{ind:f,mode:F,doc:l}=i.pop();switch(K(l)){case G:{let d=o!==`
|
|
42891
|
-
`?re(!1,l,`
|
|
42892
|
-
`,o):l;s.push(d),i.length>0&&(u+=Te(d));break}case V:for(let d=l.length-1;d>=0;d--)i.push({ind:f,mode:F,doc:l[d]});break;case z:if(c>=2)throw new Error("There are too many 'cursor' in doc.");s.push(Pe),c++;break;case P:i.push({ind:$u(f,t),mode:F,doc:l.contents});break;case L:i.push({ind:Wu(f,l.n,t),mode:F,doc:l.contents});break;case I:u-=kt(s);break;case b:switch(F){case J:if(!D){i.push({ind:f,mode:l.break?M:J,doc:l.contents});break}case M:{D=!1;let d={ind:f,mode:J,doc:l.contents},m=n-u,E=a.length>0;if(!l.break&&Qe(d,i,m,E,r))i.push(d);else if(l.expandedStates){let A=y(!1,l.expandedStates,-1);if(l.break){i.push({ind:f,mode:M,doc:A});break}else for(let _=1;_<l.expandedStates.length+1;_++)if(_>=l.expandedStates.length){i.push({ind:f,mode:M,doc:A});break}else {let C=l.expandedStates[_],h={ind:f,mode:J,doc:C};if(Qe(h,i,m,E,r)){i.push(h);break}}}else i.push({ind:f,mode:M,doc:l.contents});break}}l.id&&(r[l.id]=y(!1,i,-1).mode);break;case N:{let d=n-u,{parts:m}=l;if(m.length===0)break;let[E,A]=m,_={ind:f,mode:J,doc:E},C={ind:f,mode:M,doc:E},h=Qe(_,[],d,a.length>0,r,!0);if(m.length===1){h?i.push(_):i.push(C);break}let v={ind:f,mode:J,doc:A},k={ind:f,mode:M,doc:A};if(m.length===2){h?i.push(v,_):i.push(k,C);break}m.splice(0,2);let W={ind:f,mode:F,doc:ze(m)},ge=m[0];Qe({ind:f,mode:J,doc:[E,A,ge]},[],d,a.length>0,r,!0)?i.push(W,v,_):h?i.push(W,k,_):i.push(W,k,C);break}case x:case R:{let d=l.groupId?r[l.groupId]:F;if(d===M){let m=l.type===x?l.breakContents:l.negate?l.contents:De(l.contents);m&&i.push({ind:f,mode:F,doc:m});}if(d===J){let m=l.type===x?l.flatContents:l.negate?De(l.contents):l.contents;m&&i.push({ind:f,mode:F,doc:m});}break}case Y:a.push({ind:f,mode:F,doc:l.contents});break;case j:a.length>0&&i.push({ind:f,mode:F,doc:we});break;case B:switch(F){case J:if(l.hard)D=!0;else {l.soft||(s.push(" "),u+=1);break}case M:if(a.length>0){i.push({ind:f,mode:F,doc:l},...a.reverse()),a.length=0;break}l.literal?f.root?(s.push(o,f.root.value),u=f.root.length):(s.push(o),u=0):(u-=kt(s),s.push(o+f.value),u=f.length);break}break;case T:i.push({ind:f,mode:F,doc:l.contents});break;case w:break;default:throw new Z(l)}i.length===0&&a.length>0&&(i.push(...a.reverse()),a.length=0);}let p=s.indexOf(Pe);if(p!==-1){let f=s.indexOf(Pe,p+1),F=s.slice(0,p).join(""),l=s.slice(p+1,f).join(""),d=s.slice(f+1).join("");return {formatted:F+l+d,cursorNodeStart:F.length,cursorNodeText:l}}return {formatted:s.join("")}}function Uu(e,t,r=0){let n=0;for(let o=r;o<e.length;++o)e[o]===" "?n=n+t-n%t:n++;return n}var de=Uu;var ee,Ot,et,wt=class{constructor(t){sr(this,ee);this.stack=[t];}get key(){let{stack:t,siblings:r}=this;return y(!1,t,r===null?-2:-4)??null}get index(){return this.siblings===null?null:y(!1,this.stack,-2)}get node(){return y(!1,this.stack,-1)}get parent(){return this.getNode(1)}get grandparent(){return this.getNode(2)}get isInArray(){return this.siblings!==null}get siblings(){let{stack:t}=this,r=y(!1,t,-3);return Array.isArray(r)?r:null}get next(){let{siblings:t}=this;return t===null?null:t[this.index+1]}get previous(){let{siblings:t}=this;return t===null?null:t[this.index-1]}get isFirst(){return this.index===0}get isLast(){let{siblings:t,index:r}=this;return t!==null&&r===t.length-1}get isRoot(){return this.stack.length===1}get root(){return this.stack[0]}get ancestors(){return [...fe(this,ee,et).call(this)]}getName(){let{stack:t}=this,{length:r}=t;return r>1?y(!1,t,-2):null}getValue(){return y(!1,this.stack,-1)}getNode(t=0){let r=fe(this,ee,Ot).call(this,t);return r===-1?null:this.stack[r]}getParentNode(t=0){return this.getNode(t+1)}call(t,...r){let{stack:n}=this,{length:o}=n,u=y(!1,n,-1);for(let i of r)u=u[i],n.push(i,u);try{return t(this)}finally{n.length=o;}}callParent(t,r=0){let n=fe(this,ee,Ot).call(this,r+1),o=this.stack.splice(n+1);try{return t(this)}finally{this.stack.push(...o);}}each(t,...r){let{stack:n}=this,{length:o}=n,u=y(!1,n,-1);for(let i of r)u=u[i],n.push(i,u);try{for(let i=0;i<u.length;++i)n.push(i,u[i]),t(this,i,u),n.length-=2;}finally{n.length=o;}}map(t,...r){let n=[];return this.each((o,u,i)=>{n[u]=t(o,u,i);},...r),n}match(...t){let r=this.stack.length-1,n=null,o=this.stack[r--];for(let u of t){if(o===void 0)return !1;let i=null;if(typeof n=="number"&&(i=n,n=this.stack[r--],o=this.stack[r--]),u&&!u(o,n,i))return !1;n=this.stack[r--],o=this.stack[r--];}return !0}findAncestor(t){for(let r of fe(this,ee,et).call(this))if(t(r))return r}hasAncestor(t){for(let r of fe(this,ee,et).call(this))if(t(r))return !0;return !1}};ee=new WeakSet,Ot=function(t){let{stack:r}=this;for(let n=r.length-1;n>=0;n-=2)if(!Array.isArray(r[n])&&--t<0)return n;return -1},et=function*(){let{stack:t}=this;for(let r=t.length-3;r>=0;r-=2){let n=t[r];Array.isArray(n)||(yield n);}};var Yr=wt;var jr=new Proxy(()=>{},{get:()=>jr}),Le=jr;function Gu(e){return e!==null&&typeof e=="object"}var Mr=Gu;function*Nt(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,o=u=>Mr(u)&&n(u);for(let u of r(e)){let i=e[u];if(Array.isArray(i))for(let s of i)o(s)&&(yield s);else o(i)&&(yield i);}}function*Vr(e,t){let r=[e];for(let n=0;n<r.length;n++){let o=r[n];for(let u of Nt(o,t))yield u,r.push(u);}}function me(e){return (t,r,n)=>{let o=!!(n!=null&&n.backwards);if(r===!1)return !1;let{length:u}=t,i=r;for(;i>=0&&i<u;){let s=t.charAt(i);if(e instanceof RegExp){if(!e.test(s))return i}else if(!e.includes(s))return i;o?i--:i++;}return i===-1||i===u?i:!1}}var $r=me(/\s/),S=me(" "),tt=me(",; "),rt=me(/[^\n\r]/);function zu(e,t,r){let n=!!(r!=null&&r.backwards);if(t===!1)return !1;let o=e.charAt(t);if(n){if(e.charAt(t-1)==="\r"&&o===`
|
|
42893
|
-
`)return t-2;if(o===`
|
|
42894
|
-
`||o==="\r"||o==="\u2028"||o==="\u2029")return t-1}else {if(o==="\r"&&e.charAt(t+1)===`
|
|
42895
|
-
`)return t+2;if(o===`
|
|
42896
|
-
`||o==="\r"||o==="\u2028"||o==="\u2029")return t+1}return t}var $=zu;function Ku(e,t,r={}){let n=S(e,r.backwards?t-1:t,r),o=$(e,n,r);return n!==o}var U=Ku;function Hu(e){return Array.isArray(e)&&e.length>0}var Tt=Hu;var Wr=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),qu=e=>Object.keys(e).filter(t=>!Wr.has(t));function Ju(e){return e?t=>e(t,Wr):qu}var X=Ju;function Xu(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function St(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=Xu(e);}function ne(e,t){t.leading=!0,t.trailing=!1,St(e,t);}function te(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),St(e,t);}function ue(e,t){t.leading=!1,t.trailing=!0,St(e,t);}var vt=new WeakMap;function nt(e,t){if(vt.has(e))return vt.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:o},locStart:u,locEnd:i}=t;if(!n)return [];let s=((r==null?void 0:r(e,t))??[...Nt(e,{getVisitorKeys:X(o)})]).flatMap(D=>n(D)?[D]:nt(D,t));return s.sort((D,a)=>u(D)-u(a)||i(D)-i(a)),vt.set(e,s),s}function Gr(e,t,r,n){let{locStart:o,locEnd:u}=r,i=o(t),s=u(t),D=nt(e,r),a,c,p=0,f=D.length;for(;p<f;){let F=p+f>>1,l=D[F],d=o(l),m=u(l);if(d<=i&&s<=m)return Gr(l,t,r,l);if(m<=i){a=l,p=F+1;continue}if(s<=d){c=l,f=F;continue}throw new Error("Comment location overlaps with node location")}if((n==null?void 0:n.type)==="TemplateLiteral"){let{quasis:F}=n,l=Lt(F,t,r);a&&Lt(F,a,r)!==l&&(a=null),c&&Lt(F,c,r)!==l&&(c=null);}return {enclosingNode:n,precedingNode:a,followingNode:c}}var Pt=()=>!1;function zr(e,t){let{comments:r}=e;if(delete e.comments,!Tt(r)||!t.printer.canAttachComment)return;let n=[],{locStart:o,locEnd:u,printer:{experimentalFeatures:{avoidAstMutation:i=!1}={},handleComments:s={}},originalText:D}=t,{ownLine:a=Pt,endOfLine:c=Pt,remaining:p=Pt}=s,f=r.map((F,l)=>({...Gr(e,F,t),comment:F,text:D,options:t,ast:e,isLastComment:r.length-1===l}));for(let[F,l]of f.entries()){let{comment:d,precedingNode:m,enclosingNode:E,followingNode:A,text:_,options:C,ast:h,isLastComment:v}=l;if(C.parser==="json"||C.parser==="json5"||C.parser==="jsonc"||C.parser==="__js_expression"||C.parser==="__ts_expression"||C.parser==="__vue_expression"||C.parser==="__vue_ts_expression"){if(o(d)-o(h)<=0){ne(h,d);continue}if(u(d)-u(h)>=0){ue(h,d);continue}}let k;if(i?k=[l]:(d.enclosingNode=E,d.precedingNode=m,d.followingNode=A,k=[d,_,C,h,v]),Zu(_,C,f,F))d.placement="ownLine",a(...k)||(A?ne(A,d):m?ue(m,d):E?te(E,d):te(h,d));else if(Qu(_,C,f,F))d.placement="endOfLine",c(...k)||(m?ue(m,d):A?ne(A,d):E?te(E,d):te(h,d));else if(d.placement="remaining",!p(...k))if(m&&A){let W=n.length;W>0&&n[W-1].followingNode!==A&&Ur(n,C),n.push(l);}else m?ue(m,d):A?ne(A,d):E?te(E,d):te(h,d);}if(Ur(n,t),!i)for(let F of r)delete F.precedingNode,delete F.enclosingNode,delete F.followingNode;}var Kr=e=>!/[\S\n\u2028\u2029]/.test(e);function Zu(e,t,r,n){let{comment:o,precedingNode:u}=r[n],{locStart:i,locEnd:s}=t,D=i(o);if(u)for(let a=n-1;a>=0;a--){let{comment:c,precedingNode:p}=r[a];if(p!==u||!Kr(e.slice(s(c),D)))break;D=i(c);}return U(e,D,{backwards:!0})}function Qu(e,t,r,n){let{comment:o,followingNode:u}=r[n],{locStart:i,locEnd:s}=t,D=s(o);if(u)for(let a=n+1;a<r.length;a++){let{comment:c,followingNode:p}=r[a];if(p!==u||!Kr(e.slice(D,i(c))))break;D=s(c);}return U(e,D)}function Ur(e,t){var s,D;let r=e.length;if(r===0)return;let{precedingNode:n,followingNode:o}=e[0],u=t.locStart(o),i;for(i=r;i>0;--i){let{comment:a,precedingNode:c,followingNode:p}=e[i-1];Le.strictEqual(c,n),Le.strictEqual(p,o);let f=t.originalText.slice(t.locEnd(a),u);if(((D=(s=t.printer).isGap)==null?void 0:D.call(s,f,t))??/^[\s(]*$/.test(f))u=t.locStart(a);else break}for(let[a,{comment:c}]of e.entries())a<i?ue(n,c):ne(o,c);for(let a of [n,o])a.comments&&a.comments.length>1&&a.comments.sort((c,p)=>t.locStart(c)-t.locStart(p));e.length=0;}function Lt(e,t,r){let n=r.locStart(t)-1;for(let o=1;o<e.length;++o)if(n<r.locStart(e[o]))return o-1;return 0}function eo(e,t){let r=t-1;r=S(e,r,{backwards:!0}),r=$(e,r,{backwards:!0}),r=S(e,r,{backwards:!0});let n=$(e,r,{backwards:!0});return r!==n}var Ie=eo;function Hr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function to(e,t){var c;let r=e.node,n=[Hr(e,t)],{printer:o,originalText:u,locStart:i,locEnd:s}=t;if((c=o.isBlockComment)==null?void 0:c.call(o,r)){let p=U(u,s(r))?U(u,i(r),{backwards:!0})?q:Ke:" ";n.push(p);}else n.push(q);let a=$(u,S(u,s(r)));return a!==!1&&U(u,a)&&n.push(q),n}function ro(e,t,r){var a;let n=e.node,o=Hr(e,t),{printer:u,originalText:i,locStart:s}=t,D=(a=u.isBlockComment)==null?void 0:a.call(u,n);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||U(i,s(n),{backwards:!0})){let c=Ie(i,s(n));return {doc:ke([q,c?q:"",o]),isBlock:D,hasLineSuffix:!0}}return !D||r!=null&&r.hasLineSuffix?{doc:[ke([" ",o]),Fe],isBlock:D,hasLineSuffix:!0}:{doc:[" ",o],isBlock:D,hasLineSuffix:!1}}function no(e,t){let r=e.node;if(!r)return {};let n=t[Symbol.for("printedComments")];if((r.comments||[]).filter(D=>!n.has(D)).length===0)return {leading:"",trailing:""};let u=[],i=[],s;return e.each(()=>{let D=e.node;if(n!=null&&n.has(D))return;let{leading:a,trailing:c}=D;a?u.push(to(e,t)):c&&(s=ro(e,t,s),i.push(s.doc));},"comments"),{leading:u,trailing:i}}function qr(e,t,r){let{leading:n,trailing:o}=no(e,r);return !n&&!o?t:Ze(t,u=>[n,u,o])}function Jr(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed;}}var Re=class extends Error{name="ConfigError"},Ye=class extends Error{name="UndefinedParserError"};var Zr={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing
|
|
42897
|
-
(mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:e=>typeof e=="string"||typeof e=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:e=>typeof e=="string"||typeof e=="object",cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive).
|
|
42898
|
-
The range will extend forwards to the end of the selected statement.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset.
|
|
42899
|
-
The range will extend backwards to the start of the first line containing the selected statement.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment
|
|
42900
|
-
in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function ut({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(o=>o.languages??[]),n=[];for(let o of io(Object.assign({},...e.map(({options:u})=>u),Zr)))!t&&o.deprecated||(Array.isArray(o.choices)&&(t||(o.choices=o.choices.filter(u=>!u.deprecated)),o.name==="parser"&&(o.choices=[...o.choices,...oo(o.choices,r,e)])),o.pluginDefaults=Object.fromEntries(e.filter(u=>{var i;return ((i=u.defaultOptions)==null?void 0:i[o.name])!==void 0}).map(u=>[u.name,u.defaultOptions[o.name]])),n.push(o));return {languages:r,options:n}}function*oo(e,t,r){let n=new Set(e.map(o=>o.value));for(let o of t)if(o.parsers){for(let u of o.parsers)if(!n.has(u)){n.add(u);let i=r.find(D=>D.parsers&&Object.prototype.hasOwnProperty.call(D.parsers,u)),s=o.name;i!=null&&i.name&&(s+=` (plugin: ${i.name})`),yield {value:u,description:s};}}}function io(e){let t=[];for(let[r,n]of Object.entries(e)){let o={name:r,...n};Array.isArray(o.default)&&(o.default=y(!1,o.default,-1).value),t.push(o);}return t}var so=e=>String(e).split(/[/\\]/).pop();function Qr(e,t){if(!t)return;let r=so(t).toLowerCase();return e.find(({filenames:n})=>n==null?void 0:n.some(o=>o.toLowerCase()===r))??e.find(({extensions:n})=>n==null?void 0:n.some(o=>r.endsWith(o)))}function Do(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r==null?void 0:r.includes(t))??e.find(({extensions:r})=>r==null?void 0:r.includes(`.${t}`))}function ao(e,t){let r=e.plugins.flatMap(o=>o.languages??[]),n=Do(r,t.language)??Qr(r,t.physicalFile)??Qr(r,t.file)??(t.physicalFile,void 0);return n==null?void 0:n.parsers[0]}var en=ao;var oe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(r=>oe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${oe.key(r)}: ${oe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>oe.value({[e]:t})};var It=Ae(ot()),nn=(e,t,{descriptor:r})=>{let n=[`${It.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${It.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."};var ae=Ae(ot());var it=Symbol.for("vnopts.VALUE_NOT_EXIST"),Ee=Symbol.for("vnopts.VALUE_UNCHANGED");var un=" ".repeat(2),sn=(e,t,r)=>{let{text:n,list:o}=r.normalizeExpectedResult(r.schemas[e].expected(r)),u=[];return n&&u.push(on(e,t,n,r.descriptor)),o&&u.push([on(e,t,o.title,r.descriptor)].concat(o.values.map(i=>Dn(i,r.loggerPrintWidth))).join(`
|
|
42901
|
-
`)),an(u,r.loggerPrintWidth)};function on(e,t,r,n){return [`Invalid ${ae.default.red(n.key(e))} value.`,`Expected ${ae.default.blue(r)},`,`but received ${t===it?ae.default.gray("nothing"):ae.default.red(n.value(t))}.`].join(" ")}function Dn({text:e,list:t},r){let n=[];return e&&n.push(`- ${ae.default.blue(e)}`),t&&n.push([`- ${ae.default.blue(t.title)}:`].concat(t.values.map(o=>Dn(o,r-un.length).replace(/^|\n/g,`$&${un}`))).join(`
|
|
42902
|
-
`)),an(n,r)}function an(e,t){if(e.length===1)return e[0];let[r,n]=e,[o,u]=e.map(i=>i.split(`
|
|
42903
|
-
`,1)[0].length);return o>t&&o>u?n:r}var jt=Ae(ot());var Rt=[],cn=[];function Yt(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,o=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-o);)n--,o--;let u=0;for(;u<n&&e.charCodeAt(u)===t.charCodeAt(u);)u++;if(n-=u,o-=u,n===0)return o;let i,s,D,a,c=0,p=0;for(;c<n;)cn[c]=e.charCodeAt(u+c),Rt[c]=++c;for(;p<o;)for(i=t.charCodeAt(u+p),D=p++,s=p,c=0;c<n;c++)a=i===cn[c]?D:D+1,D=Rt[c],s=Rt[c]=D>s?a>s?s+1:a:a>D?D+1:a;return s}var st=(e,t,{descriptor:r,logger:n,schemas:o})=>{let u=[`Ignored unknown option ${jt.default.yellow(r.pair({key:e,value:t}))}.`],i=Object.keys(o).sort().find(s=>Yt(e,s)<3);i&&u.push(`Did you mean ${jt.default.blue(r.key(i))}?`),n.warn(u.join(" "));};var co=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function lo(e,t){let r=new e(t),n=Object.create(r);for(let o of co)o in t&&(n[o]=fo(t[o],r,O.prototype[o].length));return n}var O=class{static create(t){return lo(this,t)}constructor(t){this.name=t.name;}default(t){}expected(t){return "nothing"}validate(t,r){return !1}deprecated(t,r){return !1}forward(t,r){}redirect(t,r){}overlap(t,r,n){return t}preprocess(t,r){return t}postprocess(t,r){return Ee}};function fo(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}var Dt=class extends O{constructor(t){super(t),this._sourceName=t.sourceName;}expected(t){return t.schemas[this._sourceName].expected(t)}validate(t,r){return r.schemas[this._sourceName].validate(t,r)}redirect(t,r){return this._sourceName}};var at=class extends O{expected(){return "anything"}validate(){return !0}};var ct=class extends O{constructor({valueSchema:t,name:r=t.name,...n}){super({...n,name:r}),this._valueSchema=t;}expected(t){let{text:r,list:n}=t.normalizeExpectedResult(this._valueSchema.expected(t));return {text:r&&`an array of ${r}`,list:n&&{title:"an array of the following values",values:[{list:n}]}}}validate(t,r){if(!Array.isArray(t))return !1;let n=[];for(let o of t){let u=r.normalizeValidateResult(this._valueSchema.validate(o,r),o);u!==!0&&n.push(u.value);}return n.length===0?!0:{value:n}}deprecated(t,r){let n=[];for(let o of t){let u=r.normalizeDeprecatedResult(this._valueSchema.deprecated(o,r),o);u!==!1&&n.push(...u.map(({value:i})=>({value:[i]})));}return n}forward(t,r){let n=[];for(let o of t){let u=r.normalizeForwardResult(this._valueSchema.forward(o,r),o);n.push(...u.map(ln));}return n}redirect(t,r){let n=[],o=[];for(let u of t){let i=r.normalizeRedirectResult(this._valueSchema.redirect(u,r),u);"remain"in i&&n.push(i.remain),o.push(...i.redirect.map(ln));}return n.length===0?{redirect:o}:{redirect:o,remain:n}}overlap(t,r){return t.concat(r)}};function ln({from:e,to:t}){return {from:[e],to:t}}var lt=class extends O{expected(){return "true or false"}validate(t){return typeof t=="boolean"}};function Fn(e,t){let r=Object.create(null);for(let n of e){let o=n[t];if(r[o])throw new Error(`Duplicate ${t} ${JSON.stringify(o)}`);r[o]=n;}return r}function pn(e,t){let r=new Map;for(let n of e){let o=n[t];if(r.has(o))throw new Error(`Duplicate ${t} ${JSON.stringify(o)}`);r.set(o,n);}return r}function dn(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function mn(e,t){let r=[],n=[];for(let o of e)t(o)?r.push(o):n.push(o);return [r,n]}function En(e){return e===Math.floor(e)}function Cn(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,o=["undefined","object","boolean","number","string"];return r!==n?o.indexOf(r)-o.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function hn(e){return (...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function Mt(e){return e===void 0?{}:e}function Vt(e){if(typeof e=="string")return {text:e};let{text:t,list:r}=e;return Fo((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(Vt)}}:{text:t}}function $t(e,t){return e===!0?!0:e===!1?{value:t}:e}function Wt(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function fn(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function ft(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>fn(r,t)):[fn(e,t)]}function Ut(e,t){let r=ft(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function Fo(e,t){if(!e)throw new Error(t)}var Ft=class extends O{constructor(t){super(t),this._choices=pn(t.choices.map(r=>r&&typeof r=="object"?r:{value:r}),"value");}expected({descriptor:t}){let r=Array.from(this._choices.keys()).map(i=>this._choices.get(i)).filter(({hidden:i})=>!i).map(i=>i.value).sort(Cn).map(t.value),n=r.slice(0,-2),o=r.slice(-2);return {text:n.concat(o.join(" or ")).join(", "),list:{title:"one of the following values",values:r}}}validate(t){return this._choices.has(t)}deprecated(t){let r=this._choices.get(t);return r&&r.deprecated?{value:t}:!1}forward(t){let r=this._choices.get(t);return r?r.forward:void 0}redirect(t){let r=this._choices.get(t);return r?r.redirect:void 0}};var pt=class extends O{expected(){return "a number"}validate(t,r){return typeof t=="number"}};var dt=class extends pt{expected(){return "an integer"}validate(t,r){return r.normalizeValidateResult(super.validate(t,r),t)===!0&&En(t)}};var je=class extends O{expected(){return "a string"}validate(t){return typeof t=="string"}};var gn=oe,yn=st,An=sn,Bn=nn;var mt=class{constructor(t,r){let{logger:n=console,loggerPrintWidth:o=80,descriptor:u=gn,unknown:i=yn,invalid:s=An,deprecated:D=Bn,missing:a=()=>!1,required:c=()=>!1,preprocess:p=F=>F,postprocess:f=()=>Ee}=r||{};this._utils={descriptor:u,logger:n||{warn:()=>{}},loggerPrintWidth:o,schemas:Fn(t,"name"),normalizeDefaultResult:Mt,normalizeExpectedResult:Vt,normalizeDeprecatedResult:Wt,normalizeForwardResult:ft,normalizeRedirectResult:Ut,normalizeValidateResult:$t},this._unknownHandler=i,this._invalidHandler=hn(s),this._deprecatedHandler=D,this._identifyMissing=(F,l)=>!(F in l)||a(F,l),this._identifyRequired=c,this._preprocess=p,this._postprocess=f,this.cleanHistory();}cleanHistory(){this._hasDeprecationWarned=dn();}normalize(t){let r={},o=[this._preprocess(t,this._utils)],u=()=>{for(;o.length!==0;){let i=o.shift(),s=this._applyNormalization(i,r);o.push(...s);}};u();for(let i of Object.keys(this._utils.schemas)){let s=this._utils.schemas[i];if(!(i in r)){let D=Mt(s.default(this._utils));"value"in D&&o.push({[i]:D.value});}}u();for(let i of Object.keys(this._utils.schemas)){if(!(i in r))continue;let s=this._utils.schemas[i],D=r[i],a=s.postprocess(D,this._utils);a!==Ee&&(this._applyValidation(a,i,s),r[i]=a);}return this._applyPostprocess(r),this._applyRequiredCheck(r),r}_applyNormalization(t,r){let n=[],{knownKeys:o,unknownKeys:u}=this._partitionOptionKeys(t);for(let i of o){let s=this._utils.schemas[i],D=s.preprocess(t[i],this._utils);this._applyValidation(D,i,s);let a=({from:F,to:l})=>{n.push(typeof l=="string"?{[l]:F}:{[l.key]:l.value});},c=({value:F,redirectTo:l})=>{let d=Wt(s.deprecated(F,this._utils),D,!0);if(d!==!1)if(d===!0)this._hasDeprecationWarned(i)||this._utils.logger.warn(this._deprecatedHandler(i,l,this._utils));else for(let{value:m}of d){let E={key:i,value:m};if(!this._hasDeprecationWarned(E)){let A=typeof l=="string"?{key:l,value:m}:l;this._utils.logger.warn(this._deprecatedHandler(E,A,this._utils));}}};ft(s.forward(D,this._utils),D).forEach(a);let f=Ut(s.redirect(D,this._utils),D);if(f.redirect.forEach(a),"remain"in f){let F=f.remain;r[i]=i in r?s.overlap(r[i],F,this._utils):F,c({value:F});}for(let{from:F,to:l}of f.redirect)c({value:F,redirectTo:l});}for(let i of u){let s=t[i];this._applyUnknownHandler(i,s,r,(D,a)=>{n.push({[D]:a});});}return n}_applyRequiredCheck(t){for(let r of Object.keys(this._utils.schemas))if(this._identifyMissing(r,t)&&this._identifyRequired(r))throw this._invalidHandler(r,it,this._utils)}_partitionOptionKeys(t){let[r,n]=mn(Object.keys(t).filter(o=>!this._identifyMissing(o,t)),o=>o in this._utils.schemas);return {knownKeys:r,unknownKeys:n}}_applyValidation(t,r,n){let o=$t(n.validate(t,this._utils),t);if(o!==!0)throw this._invalidHandler(r,o.value,this._utils)}_applyUnknownHandler(t,r,n,o){let u=this._unknownHandler(t,r,this._utils);if(u)for(let i of Object.keys(u)){if(this._identifyMissing(i,u))continue;let s=u[i];i in this._utils.schemas?o(i,s):n[i]=s;}}_applyPostprocess(t){let r=this._postprocess(t,this._utils);if(r!==Ee){if(r.delete)for(let n of r.delete)delete t[n];if(r.override){let{knownKeys:n,unknownKeys:o}=this._partitionOptionKeys(r.override);for(let u of n){let i=r.override[u];this._applyValidation(i,u,this._utils.schemas[u]),t[u]=i;}for(let u of o){let i=r.override[u];this._applyUnknownHandler(u,i,t,(s,D)=>{let a=this._utils.schemas[s];this._applyValidation(D,s,a),t[s]=D;});}}}}};var Gt;function mo(e,t,{logger:r=!1,isCLI:n=!1,passThrough:o=!1,FlagSchema:u,descriptor:i}={}){if(n){if(!u)throw new Error("'FlagSchema' option is required.");if(!i)throw new Error("'descriptor' option is required.")}else i=oe;let s=o?Array.isArray(o)?(f,F)=>o.includes(f)?{[f]:F}:void 0:(f,F)=>({[f]:F}):(f,F,l)=>{let{_:d,...m}=l.schemas;return st(f,F,{...l,schemas:m})},D=Eo(t,{isCLI:n,FlagSchema:u}),a=new mt(D,{logger:r,unknown:s,descriptor:i}),c=r!==!1;c&&Gt&&(a._hasDeprecationWarned=Gt);let p=a.normalize(e);return c&&(Gt=a._hasDeprecationWarned),p}function Eo(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(at.create({name:"_"}));for(let o of e)n.push(Co(o,{isCLI:t,optionInfos:e,FlagSchema:r})),o.alias&&t&&n.push(Dt.create({name:o.alias,sourceName:o.name}));return n}function Co(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:o}=e,u={name:o},i,s={};switch(e.type){case"int":i=dt,t&&(u.preprocess=Number);break;case"string":i=je;break;case"choice":i=Ft,u.choices=e.choices.map(D=>D!=null&&D.redirect?{...D,redirect:{to:{key:e.name,value:D.redirect}}}:D);break;case"boolean":i=lt;break;case"flag":i=n,u.flags=r.flatMap(D=>[D.alias,D.description&&D.name,D.oppositeDescription&&`no-${D.name}`].filter(Boolean));break;case"path":i=je;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?u.validate=(D,a,c)=>e.exception(D)||a.validate(D,c):u.validate=(D,a,c)=>D===void 0||a.validate(D,c),e.redirect&&(s.redirect=D=>D?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(s.deprecated=!0),t&&!e.array){let D=u.preprocess||(a=>a);u.preprocess=(a,c,p)=>c.preprocess(D(Array.isArray(a)?y(!1,a,-1):a),p);}return e.array?ct.create({...t?{preprocess:D=>Array.isArray(D)?D:[D]}:{},...s,valueSchema:i.create(u)}):i.create({...u,...s})}var _n=mo;var ho=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let o=t[n];if(r(o,n,t))return o}}},zt=ho;function Kt(e,t){if(!t)throw new Error("parserName is required.");let r=zt(!1,e,o=>o.parsers&&Object.prototype.hasOwnProperty.call(o.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new Re(n)}function bn(e,t){if(!t)throw new Error("astFormat is required.");let r=zt(!1,e,o=>o.printers&&Object.prototype.hasOwnProperty.call(o.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new Re(n)}function Et({plugins:e,parser:t}){let r=Kt(e,t);return Ht(r,t)}function Ht(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function xn(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var kn={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function go(e,t={}){var p;let r={...e};if(!r.parser)if(r.filepath){if(r.parser=en(r,{physicalFile:r.filepath}),!r.parser)throw new Ye(`No parser could be inferred for file "${r.filepath}".`)}else throw new Ye("No parser and no file path given, couldn't infer a parser.");let n=ut({plugins:e.plugins,showDeprecated:!0}).options,o={...kn,...Object.fromEntries(n.filter(f=>f.default!==void 0).map(f=>[f.name,f.default]))},u=Kt(r.plugins,r.parser),i=await Ht(u,r.parser);r.astFormat=i.astFormat,r.locEnd=i.locEnd,r.locStart=i.locStart;let s=(p=u.printers)!=null&&p[i.astFormat]?u:bn(r.plugins,i.astFormat),D=await xn(s,i.astFormat);r.printer=D;let a=s.defaultOptions?Object.fromEntries(Object.entries(s.defaultOptions).filter(([,f])=>f!==void 0)):{},c={...o,...a};for(let[f,F]of Object.entries(c))(r[f]===null||r[f]===void 0)&&(r[f]=F);return r.parser==="json"&&(r.trailingComma="none"),_n(r,n,{passThrough:Object.keys(kn),...t})}var ie=go;var Mn=Ae(jn());async function Oo(e,t){let r=await Et(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let o;try{o=await r.parse(n,t,t);}catch(u){No(u,e);}return {text:n,ast:o}}function No(e,t){let{loc:r}=e;if(r){let n=(0, Mn.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=`
|
|
42904
|
-
`+n,e.codeFrame=n,e}throw e}var ce=Oo;async function Vn(e,t,r,n,o){let{embeddedLanguageFormatting:u,printer:{embed:i,hasPrettierIgnore:s=()=>!1,getVisitorKeys:D}}=r;if(!i||u!=="auto")return;if(i.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/en/plugins.html#optional-embed");let a=X(i.getVisitorKeys??D),c=[];F();let p=e.stack;for(let{print:l,node:d,pathStack:m}of c)try{e.stack=m;let E=await l(f,t,e,r);E&&o.set(d,E);}catch(E){if(globalThis.PRETTIER_DEBUG)throw E}e.stack=p;function f(l,d){return To(l,d,r,n)}function F(){let{node:l}=e;if(l===null||typeof l!="object"||s(e))return;for(let m of a(l))Array.isArray(l[m])?e.each(F,m):e.call(F,m);let d=i(e,r);if(d){if(typeof d=="function"){c.push({print:d,node:l,pathStack:[...e.stack]});return}o.set(l,d);}}}async function To(e,t,r,n){let o=await ie({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:u}=await ce(e,o),i=await n(u,o);return Xe(i)}function So(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:o,locEnd:u,[Symbol.for("printedComments")]:i}=t,{node:s}=e,D=o(s),a=u(s);for(let c of n)o(c)>=D&&u(c)<=a&&i.add(c);return r.slice(D,a)}var $n=So;async function Me(e,t){({ast:e}=await Xt(e,t));let r=new Map,n=new Yr(e),u=new Map;await Vn(n,s,t,Me,u);let i=await Wn(n,t,s,void 0,u);return Jr(t),i;function s(a,c){return a===void 0||a===n?D(c):Array.isArray(a)?n.call(()=>D(c),...a):n.call(()=>D(c),a)}function D(a){let c=n.node;if(c==null)return "";let p=c&&typeof c=="object"&&a===void 0;if(p&&r.has(c))return r.get(c);let f=Wn(n,t,s,a,u);return p&&r.set(c,f),f}}function Wn(e,t,r,n,o){var D;let{node:u}=e,{printer:i}=t,s;return (D=i.hasPrettierIgnore)!=null&&D.call(i,e)?s=$n(e,t):o.has(u)?s=o.get(u):s=i.print(e,t,r,n),u===t.cursorNode&&(s=Ze(s,a=>[Oe,a,Oe])),i.printComment&&(!i.willPrintOwnComments||!i.willPrintOwnComments(e,t))&&(s=qr(e,s,t)),s}async function Xt(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,zr(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function vo(e,t){let{cursorOffset:r,locStart:n,locEnd:o}=t,u=X(t.printer.getVisitorKeys),i=D=>n(D)<=r&&o(D)>=r,s=e;for(let D of Vr(e,{getVisitorKeys:u,filter:i}))s=D;return s}var Un=vo;function Po(e,t){let{printer:{massageAstNode:r,getVisitorKeys:n}}=t;if(!r)return e;let o=X(n),u=r.ignoredProperties??new Set;return i(e);function i(s,D){if(!(s!==null&&typeof s=="object"))return s;if(Array.isArray(s))return s.map(f=>i(f,D)).filter(Boolean);let a={},c=new Set(o(s));for(let f in s)!Object.prototype.hasOwnProperty.call(s,f)||u.has(f)||(c.has(f)?a[f]=i(s[f],s):a[f]=s[f]);let p=r(s,a,D);if(p!==null)return p??a}}var Gn=Po;var Lo=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function Io(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(o=>Hn.has(o.type)&&n.has(o))}function zn(e){let t=e.length-1;for(;;){let r=e[t];if((r==null?void 0:r.type)==="Program"||(r==null?void 0:r.type)==="File")t--;else break}return e.slice(0,t+1)}function Ro(e,t,{locStart:r,locEnd:n}){let o=e.node,u=t.node;if(o===u)return {startNode:o,endNode:u};let i=r(e.node);for(let D of zn(t.parentNodes))if(r(D)>=i)u=D;else break;let s=n(t.node);for(let D of zn(e.parentNodes)){if(n(D)<=s)o=D;else break;if(o===u)break}return {startNode:o,endNode:u}}function Zt(e,t,r,n,o=[],u){let{locStart:i,locEnd:s}=r,D=i(e),a=s(e);if(!(t>a||t<D||u==="rangeEnd"&&t===D||u==="rangeStart"&&t===a)){for(let c of nt(e,r)){let p=Zt(c,t,r,n,[e,...o],u);if(p)return p}if(!n||n(e,o[0]))return {node:e,parentNodes:o}}}function Yo(e,t){return t!=="DeclareExportDeclaration"&&e!=="TypeParameterDeclaration"&&(e==="Directive"||e==="TypeAlias"||e==="TSExportAssignment"||e.startsWith("Declare")||e.startsWith("TSDeclare")||e.endsWith("Statement")||e.endsWith("Declaration"))}var Hn=new Set(["JsonRoot","ObjectExpression","ArrayExpression","StringLiteral","NumericLiteral","BooleanLiteral","NullLiteral","UnaryExpression","TemplateLiteral"]),jo=new Set(["OperationDefinition","FragmentDefinition","VariableDefinition","TypeExtensionDefinition","ObjectTypeDefinition","FieldDefinition","DirectiveDefinition","EnumTypeDefinition","EnumValueDefinition","InputValueDefinition","InputObjectTypeDefinition","SchemaDefinition","OperationTypeDefinition","InterfaceTypeDefinition","UnionTypeDefinition","ScalarTypeDefinition"]);function Kn(e,t,r){if(!t)return !1;switch(e.parser){case"flow":case"babel":case"babel-flow":case"babel-ts":case"typescript":case"acorn":case"espree":case"meriyah":case"__babel_estree":return Yo(t.type,r==null?void 0:r.type);case"json":case"json5":case"jsonc":case"json-stringify":return Hn.has(t.type);case"graphql":return jo.has(t.kind);case"vue":return t.tag!=="root"}return !1}function qn(e,t,r){let{rangeStart:n,rangeEnd:o,locStart:u,locEnd:i}=t;Le.ok(o>n);let s=e.slice(n,o).search(/\S/),D=s===-1;if(!D)for(n+=s;o>n&&!/\S/.test(e[o-1]);--o);let a=Zt(r,n,t,(F,l)=>Kn(t,F,l),[],"rangeStart"),c=D?a:Zt(r,o,t,F=>Kn(t,F),[],"rangeEnd");if(!a||!c)return {rangeStart:0,rangeEnd:0};let p,f;if(Lo(t)){let F=Io(a,c);p=F,f=F;}else ({startNode:p,endNode:f}=Ro(a,c,t));return {rangeStart:Math.min(u(p),u(f)),rangeEnd:Math.max(i(p),i(f))}}var eu="\uFEFF",Jn=Symbol("cursor");async function tu(e,t,r=0){if(!e||e.trim().length===0)return {formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:o}=await ce(e,t);t.cursorOffset>=0&&(t.cursorNode=Un(n,t));let u=await Me(n,t);r>0&&(u=qe([q,u],r,t.tabWidth));let i=pe(u,t);if(r>0){let D=i.formatted.trim();i.cursorNodeStart!==void 0&&(i.cursorNodeStart-=i.formatted.indexOf(D)),i.formatted=D+be(t.endOfLine);}let s=t[Symbol.for("comments")];if(t.cursorOffset>=0){let D,a,c,p,f;if(t.cursorNode&&i.cursorNodeText?(D=t.locStart(t.cursorNode),a=o.slice(D,t.locEnd(t.cursorNode)),c=t.cursorOffset-D,p=i.cursorNodeStart,f=i.cursorNodeText):(D=0,a=o,c=t.cursorOffset,p=0,f=i.formatted),a===f)return {formatted:i.formatted,cursorOffset:p+c,comments:s};let F=a.split("");F.splice(c,0,Jn);let l=f.split(""),d=(0, Qn.diffArrays)(F,l),m=p;for(let E of d)if(E.removed){if(E.value.includes(Jn))break}else m+=E.count;return {formatted:i.formatted,cursorOffset:m,comments:s}}return {formatted:i.formatted,cursorOffset:-1,comments:s}}async function Mo(e,t){let{ast:r,text:n}=await ce(e,t),{rangeStart:o,rangeEnd:u}=qn(n,t,r),i=n.slice(o,u),s=Math.min(o,n.lastIndexOf(`
|
|
42905
|
-
`,o)+1),D=n.slice(s,o).match(/^\s*/)[0],a=de(D,t.tabWidth),c=await tu(i,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>o&&t.cursorOffset<=u?t.cursorOffset-o:-1,endOfLine:"lf"},a),p=c.formatted.trimEnd(),{cursorOffset:f}=t;f>u?f+=p.length-i.length:c.cursorOffset>=0&&(f=c.cursorOffset+o);let F=n.slice(0,o)+p+n.slice(u);if(t.endOfLine!=="lf"){let l=be(t.endOfLine);f>=0&&l===`\r
|
|
42906
|
-
`&&(f+=At(F.slice(0,f),`
|
|
42907
|
-
`)),F=re(!1,F,`
|
|
42908
|
-
`,l);}return {formatted:F,cursorOffset:f,comments:c.comments}}function Qt(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function Xn(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:o}=t;return r=Qt(e,r,-1),n=Qt(e,n,0),o=Qt(e,o,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:o}}function ru(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:o,endOfLine:u}=Xn(e,t),i=e.charAt(0)===eu;if(i&&(e=e.slice(1),r--,n--,o--),u==="auto"&&(u=lr(e)),e.includes("\r")){let s=D=>At(e.slice(0,Math.max(D,0)),`\r
|
|
42909
|
-
`);r-=s(r),n-=s(n),o-=s(o),e=fr(e);}return {hasBOM:i,text:e,options:Xn(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:o,endOfLine:u})}}async function Zn(e,t){let r=await Et(t);return !r.hasPragma||r.hasPragma(e)}async function er(e,t){let{hasBOM:r,text:n,options:o}=ru(e,await ie(t));if(o.rangeStart>=o.rangeEnd&&n!==""||o.requirePragma&&!await Zn(n,o))return {formatted:e,cursorOffset:t.cursorOffset,comments:[]};let u;return o.rangeStart>0||o.rangeEnd<n.length?u=await Mo(n,o):(!o.requirePragma&&o.insertPragma&&o.printer.insertPragma&&!await Zn(n,o)&&(n=o.printer.insertPragma(n)),u=await tu(n,o)),r&&(u.formatted=eu+u.formatted,u.cursorOffset>=0&&u.cursorOffset++),u}async function nu(e,t,r){let{text:n,options:o}=ru(e,await ie(t)),u=await ce(n,o);return r&&(r.preprocessForPrint&&(u.ast=await Xt(u.ast,o)),r.massage&&(u.ast=Gn(u.ast,o))),u}async function uu(e,t){t=await ie(t);let r=await Me(e,t);return pe(r,t)}async function ou(e,t){let r=br(e),{formatted:n}=await er(r,{...t,parser:"__js_expression"});return n}async function iu(e,t){t=await ie(t);let{ast:r}=await ce(e,t);return Me(r,t)}async function su(e,t){return pe(e,await ie(t))}var tr={};We(tr,{builders:()=>$o,printer:()=>Wo,utils:()=>Uo});var $o={join:Ne,line:Ke,softline:Br,hardline:q,literalline:He,group:_t,conditionalGroup:Cr,fill:ze,lineSuffix:ke,lineSuffixBoundary:yr,cursor:Oe,breakParent:Fe,ifBreak:hr,trim:Ar,indent:De,indentIfBreak:gr,align:se,addAlignmentToDoc:qe,markAsRoot:mr,dedentToRoot:dr,dedent:Er,hardlineWithoutBreakParent:we,literallineWithoutBreakParent:bt,label:_r,concat:e=>e},Wo={printDocToString:pe},Uo={willBreak:Sr,traverseDoc:xe,findInDoc:Je,mapDoc:ve,removeLines:Pr,stripTrailingHardline:Xe,replaceEndOfLine:Lr,canBreak:Ir};var Du="3.3.2";var nr={};We(nr,{addDanglingComment:()=>te,addLeadingComment:()=>ne,addTrailingComment:()=>ue,getAlignmentSize:()=>de,getIndentSize:()=>au,getMaxContinuousCount:()=>cu,getNextNonSpaceNonCommentCharacter:()=>lu,getNextNonSpaceNonCommentCharacterIndex:()=>ri,getStringWidth:()=>Te,hasNewline:()=>U,hasNewlineInRange:()=>fu,hasSpaces:()=>Fu,isNextLineEmpty:()=>ii,isNextLineEmptyAfterIndex:()=>ht,isPreviousLineEmpty:()=>ui,makeString:()=>pu,skip:()=>me,skipEverythingButNewLine:()=>rt,skipInlineComment:()=>Ce,skipNewline:()=>$,skipSpaces:()=>S,skipToLineEnd:()=>tt,skipTrailingComment:()=>he,skipWhitespace:()=>$r});function Go(e,t){if(t===!1)return !1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r<e.length;++r)if(e.charAt(r)==="*"&&e.charAt(r+1)==="/")return r+2}return t}var Ce=Go;function zo(e,t){return t===!1?!1:e.charAt(t)==="/"&&e.charAt(t+1)==="/"?rt(e,t):t}var he=zo;function Ko(e,t){let r=null,n=t;for(;n!==r;)r=n,n=S(e,n),n=Ce(e,n),n=he(e,n),n=$(e,n);return n}var Ve=Ko;function Ho(e,t){let r=null,n=t;for(;n!==r;)r=n,n=tt(e,n),n=Ce(e,n),n=S(e,n);return n=he(e,n),n=$(e,n),n!==!1&&U(e,n)}var ht=Ho;function qo(e,t){let r=e.lastIndexOf(`
|
|
42910
|
-
`);return r===-1?0:de(e.slice(r+1).match(/^[\t ]*/)[0],t)}var au=qo;function rr(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function Jo(e,t){let r=e.match(new RegExp(`(${rr(t)})+`,"g"));return r===null?0:r.reduce((n,o)=>Math.max(n,o.length/t.length),0)}var cu=Jo;function Xo(e,t){let r=Ve(e,t);return r===!1?"":e.charAt(r)}var lu=Xo;function Zo(e,t,r){for(let n=t;n<r;++n)if(e.charAt(n)===`
|
|
42911
|
-
`)return !0;return !1}var fu=Zo;function Qo(e,t,r={}){return S(e,r.backwards?t-1:t,r)!==t}var Fu=Qo;function ei(e,t,r){let n=t==='"'?"'":'"',u=re(!1,e,/\\(.)|(["'])/gs,(i,s,D)=>s===n?s:D===t?"\\"+D:D||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(s)?s:"\\"+s));return t+u+t}var pu=ei;function ti(e,t,r){return Ve(e,r(t))}function ri(e,t){return arguments.length===2||typeof t=="number"?Ve(e,t):ti(...arguments)}function ni(e,t,r){return Ie(e,r(t))}function ui(e,t){return arguments.length===2||typeof t=="number"?Ie(e,t):ni(...arguments)}function oi(e,t,r){return ht(e,r(t))}function ii(e,t){return arguments.length===2||typeof t=="number"?ht(e,t):oi(...arguments)}function le(e,t=1){return async(...r)=>{let n=r[t]??{},o=n.plugins??[];return r[t]={...n,plugins:Array.isArray(o)?o:Object.values(o)},e(...r)}}var du=le(er);async function mu(e,t){let{formatted:r}=await du(e,{...t,cursorOffset:-1});return r}async function si(e,t){return await mu(e,t)===e}var Di=le(ut,0),ai={parse:le(nu),formatAST:le(uu),formatDoc:le(ou),printToDoc:le(iu),printDocToString:le(su)};
|
|
42912
|
-
|
|
42913
|
-
function printId(sv) {
|
|
42914
|
-
if (needBacktick(sv)) {
|
|
42915
|
-
const escapedString = sv
|
|
42916
|
-
.replace(/\\/g, "\\\\")
|
|
42917
|
-
.replace(/\n/g, "\\n")
|
|
42918
|
-
.replace(/\r/g, "\\r")
|
|
42919
|
-
.replace(/\t/g, "\\t")
|
|
42920
|
-
.replace(/`/g, "\\`");
|
|
42921
|
-
return `\`${escapedString}\``;
|
|
42922
|
-
}
|
|
42923
|
-
else {
|
|
42924
|
-
return sv;
|
|
42542
|
+
function willBreak(doc) {
|
|
42543
|
+
return findInDoc(doc, willBreakFn, false);
|
|
42544
|
+
}
|
|
42545
|
+
function breakParentGroup(groupStack) {
|
|
42546
|
+
if (groupStack.length > 0) {
|
|
42547
|
+
const parentGroup = at_default(
|
|
42548
|
+
/* isOptionalObject */
|
|
42549
|
+
false,
|
|
42550
|
+
groupStack,
|
|
42551
|
+
-1
|
|
42552
|
+
);
|
|
42553
|
+
if (!parentGroup.expandedStates && !parentGroup.break) {
|
|
42554
|
+
parentGroup.break = "propagated";
|
|
42925
42555
|
}
|
|
42556
|
+
}
|
|
42557
|
+
return null;
|
|
42926
42558
|
}
|
|
42927
|
-
function
|
|
42928
|
-
|
|
42929
|
-
|
|
42559
|
+
function propagateBreaks(doc) {
|
|
42560
|
+
const alreadyVisitedSet = /* @__PURE__ */ new Set();
|
|
42561
|
+
const groupStack = [];
|
|
42562
|
+
function propagateBreaksOnEnterFn(doc2) {
|
|
42563
|
+
if (doc2.type === DOC_TYPE_BREAK_PARENT) {
|
|
42564
|
+
breakParentGroup(groupStack);
|
|
42930
42565
|
}
|
|
42931
|
-
if (
|
|
42932
|
-
|
|
42566
|
+
if (doc2.type === DOC_TYPE_GROUP) {
|
|
42567
|
+
groupStack.push(doc2);
|
|
42568
|
+
if (alreadyVisitedSet.has(doc2)) {
|
|
42569
|
+
return false;
|
|
42570
|
+
}
|
|
42571
|
+
alreadyVisitedSet.add(doc2);
|
|
42933
42572
|
}
|
|
42934
|
-
|
|
42935
|
-
|
|
42936
|
-
|
|
42573
|
+
}
|
|
42574
|
+
function propagateBreaksOnExitFn(doc2) {
|
|
42575
|
+
if (doc2.type === DOC_TYPE_GROUP) {
|
|
42576
|
+
const group2 = groupStack.pop();
|
|
42577
|
+
if (group2.break) {
|
|
42578
|
+
breakParentGroup(groupStack);
|
|
42579
|
+
}
|
|
42937
42580
|
}
|
|
42938
|
-
|
|
42939
|
-
|
|
42940
|
-
|
|
42941
|
-
|
|
42942
|
-
|
|
42581
|
+
}
|
|
42582
|
+
traverse_doc_default(
|
|
42583
|
+
doc,
|
|
42584
|
+
propagateBreaksOnEnterFn,
|
|
42585
|
+
propagateBreaksOnExitFn,
|
|
42586
|
+
/* shouldTraverseConditionalGroups */
|
|
42587
|
+
true
|
|
42588
|
+
);
|
|
42943
42589
|
}
|
|
42944
|
-
|
|
42945
|
-
(
|
|
42946
|
-
|
|
42947
|
-
|
|
42948
|
-
|
|
42949
|
-
|
|
42950
|
-
|
|
42951
|
-
|
|
42952
|
-
|
|
42953
|
-
|
|
42954
|
-
|
|
42955
|
-
|
|
42956
|
-
|
|
42957
|
-
|
|
42958
|
-
|
|
42959
|
-
|
|
42960
|
-
|
|
42961
|
-
|
|
42962
|
-
|
|
42963
|
-
|
|
42964
|
-
|
|
42965
|
-
|
|
42966
|
-
|
|
42967
|
-
|
|
42968
|
-
|
|
42969
|
-
|
|
42970
|
-
|
|
42971
|
-
|
|
42972
|
-
|
|
42973
|
-
|
|
42974
|
-
|
|
42975
|
-
|
|
42976
|
-
|
|
42977
|
-
|
|
42978
|
-
|
|
42979
|
-
|
|
42980
|
-
|
|
42981
|
-
|
|
42982
|
-
|
|
42983
|
-
|
|
42984
|
-
|
|
42985
|
-
|
|
42986
|
-
|
|
42987
|
-
|
|
42988
|
-
|
|
42989
|
-
|
|
42990
|
-
|
|
42991
|
-
|
|
42992
|
-
|
|
42993
|
-
|
|
42994
|
-
case "Number":
|
|
42995
|
-
return type.valueAsString;
|
|
42996
|
-
case "Boolean":
|
|
42997
|
-
return type.value.toString();
|
|
42998
|
-
case "Intrinsic":
|
|
42999
|
-
return type.name;
|
|
43000
|
-
default:
|
|
43001
|
-
return `(unnamed type)`;
|
|
42590
|
+
function removeLinesFn(doc) {
|
|
42591
|
+
if (doc.type === DOC_TYPE_LINE && !doc.hard) {
|
|
42592
|
+
return doc.soft ? "" : " ";
|
|
42593
|
+
}
|
|
42594
|
+
if (doc.type === DOC_TYPE_IF_BREAK) {
|
|
42595
|
+
return doc.flatContents;
|
|
42596
|
+
}
|
|
42597
|
+
return doc;
|
|
42598
|
+
}
|
|
42599
|
+
function removeLines(doc) {
|
|
42600
|
+
return mapDoc(doc, removeLinesFn);
|
|
42601
|
+
}
|
|
42602
|
+
function stripTrailingHardlineFromParts(parts) {
|
|
42603
|
+
parts = [...parts];
|
|
42604
|
+
while (parts.length >= 2 && at_default(
|
|
42605
|
+
/* isOptionalObject */
|
|
42606
|
+
false,
|
|
42607
|
+
parts,
|
|
42608
|
+
-2
|
|
42609
|
+
).type === DOC_TYPE_LINE && at_default(
|
|
42610
|
+
/* isOptionalObject */
|
|
42611
|
+
false,
|
|
42612
|
+
parts,
|
|
42613
|
+
-1
|
|
42614
|
+
).type === DOC_TYPE_BREAK_PARENT) {
|
|
42615
|
+
parts.length -= 2;
|
|
42616
|
+
}
|
|
42617
|
+
if (parts.length > 0) {
|
|
42618
|
+
const lastPart = stripTrailingHardlineFromDoc(at_default(
|
|
42619
|
+
/* isOptionalObject */
|
|
42620
|
+
false,
|
|
42621
|
+
parts,
|
|
42622
|
+
-1
|
|
42623
|
+
));
|
|
42624
|
+
parts[parts.length - 1] = lastPart;
|
|
42625
|
+
}
|
|
42626
|
+
return parts;
|
|
42627
|
+
}
|
|
42628
|
+
function stripTrailingHardlineFromDoc(doc) {
|
|
42629
|
+
switch (get_doc_type_default(doc)) {
|
|
42630
|
+
case DOC_TYPE_INDENT:
|
|
42631
|
+
case DOC_TYPE_INDENT_IF_BREAK:
|
|
42632
|
+
case DOC_TYPE_GROUP:
|
|
42633
|
+
case DOC_TYPE_LINE_SUFFIX:
|
|
42634
|
+
case DOC_TYPE_LABEL: {
|
|
42635
|
+
const contents = stripTrailingHardlineFromDoc(doc.contents);
|
|
42636
|
+
return {
|
|
42637
|
+
...doc,
|
|
42638
|
+
contents
|
|
42639
|
+
};
|
|
43002
42640
|
}
|
|
42641
|
+
case DOC_TYPE_IF_BREAK:
|
|
42642
|
+
return {
|
|
42643
|
+
...doc,
|
|
42644
|
+
breakContents: stripTrailingHardlineFromDoc(doc.breakContents),
|
|
42645
|
+
flatContents: stripTrailingHardlineFromDoc(doc.flatContents)
|
|
42646
|
+
};
|
|
42647
|
+
case DOC_TYPE_FILL:
|
|
42648
|
+
return {
|
|
42649
|
+
...doc,
|
|
42650
|
+
parts: stripTrailingHardlineFromParts(doc.parts)
|
|
42651
|
+
};
|
|
42652
|
+
case DOC_TYPE_ARRAY:
|
|
42653
|
+
return stripTrailingHardlineFromParts(doc);
|
|
42654
|
+
case DOC_TYPE_STRING:
|
|
42655
|
+
return doc.replace(/[\n\r]*$/, "");
|
|
42656
|
+
case DOC_TYPE_ALIGN:
|
|
42657
|
+
case DOC_TYPE_CURSOR:
|
|
42658
|
+
case DOC_TYPE_TRIM:
|
|
42659
|
+
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42660
|
+
case DOC_TYPE_LINE:
|
|
42661
|
+
case DOC_TYPE_BREAK_PARENT:
|
|
42662
|
+
break;
|
|
42663
|
+
default:
|
|
42664
|
+
throw new invalid_doc_error_default(doc);
|
|
42665
|
+
}
|
|
42666
|
+
return doc;
|
|
43003
42667
|
}
|
|
43004
|
-
function
|
|
43005
|
-
|
|
43006
|
-
case "ObjectValue":
|
|
43007
|
-
return `#{${[...value.properties.entries()].map(([name, value]) => `${name}: ${getValuePreview(value.value, options)}`).join(", ")}}`;
|
|
43008
|
-
case "ArrayValue":
|
|
43009
|
-
return `#[${value.values.map((x) => getValuePreview(x, options)).join(", ")}]`;
|
|
43010
|
-
case "StringValue":
|
|
43011
|
-
return `"${value.value}"`;
|
|
43012
|
-
case "BooleanValue":
|
|
43013
|
-
return `${value.value}`;
|
|
43014
|
-
case "NumericValue":
|
|
43015
|
-
return `${value.value.toString()}`;
|
|
43016
|
-
case "EnumValue":
|
|
43017
|
-
return getTypeName(value.value);
|
|
43018
|
-
case "NullValue":
|
|
43019
|
-
return "null";
|
|
43020
|
-
case "ScalarValue":
|
|
43021
|
-
return `${getTypeName(value.type, options)}.${value.value.name}(${value.value.args.map((x) => getValuePreview(x, options)).join(", ")}})`;
|
|
43022
|
-
}
|
|
42668
|
+
function stripTrailingHardline(doc) {
|
|
42669
|
+
return stripTrailingHardlineFromDoc(cleanDoc(doc));
|
|
43023
42670
|
}
|
|
43024
|
-
function
|
|
43025
|
-
|
|
43026
|
-
|
|
43027
|
-
|
|
43028
|
-
|
|
43029
|
-
|
|
43030
|
-
|
|
43031
|
-
|
|
43032
|
-
|
|
43033
|
-
|
|
43034
|
-
|
|
43035
|
-
|
|
43036
|
-
|
|
43037
|
-
|
|
43038
|
-
|
|
43039
|
-
|
|
43040
|
-
|
|
43041
|
-
|
|
42671
|
+
function cleanDocFn(doc) {
|
|
42672
|
+
switch (get_doc_type_default(doc)) {
|
|
42673
|
+
case DOC_TYPE_FILL:
|
|
42674
|
+
if (doc.parts.every((part) => part === "")) {
|
|
42675
|
+
return "";
|
|
42676
|
+
}
|
|
42677
|
+
break;
|
|
42678
|
+
case DOC_TYPE_GROUP:
|
|
42679
|
+
if (!doc.contents && !doc.id && !doc.break && !doc.expandedStates) {
|
|
42680
|
+
return "";
|
|
42681
|
+
}
|
|
42682
|
+
if (doc.contents.type === DOC_TYPE_GROUP && doc.contents.id === doc.id && doc.contents.break === doc.break && doc.contents.expandedStates === doc.expandedStates) {
|
|
42683
|
+
return doc.contents;
|
|
42684
|
+
}
|
|
42685
|
+
break;
|
|
42686
|
+
case DOC_TYPE_ALIGN:
|
|
42687
|
+
case DOC_TYPE_INDENT:
|
|
42688
|
+
case DOC_TYPE_INDENT_IF_BREAK:
|
|
42689
|
+
case DOC_TYPE_LINE_SUFFIX:
|
|
42690
|
+
if (!doc.contents) {
|
|
42691
|
+
return "";
|
|
42692
|
+
}
|
|
42693
|
+
break;
|
|
42694
|
+
case DOC_TYPE_IF_BREAK:
|
|
42695
|
+
if (!doc.flatContents && !doc.breakContents) {
|
|
42696
|
+
return "";
|
|
42697
|
+
}
|
|
42698
|
+
break;
|
|
42699
|
+
case DOC_TYPE_ARRAY: {
|
|
42700
|
+
const parts = [];
|
|
42701
|
+
for (const part of doc) {
|
|
42702
|
+
if (!part) {
|
|
42703
|
+
continue;
|
|
42704
|
+
}
|
|
42705
|
+
const [currentPart, ...restParts] = Array.isArray(part) ? part : [part];
|
|
42706
|
+
if (typeof currentPart === "string" && typeof at_default(
|
|
42707
|
+
/* isOptionalObject */
|
|
42708
|
+
false,
|
|
42709
|
+
parts,
|
|
42710
|
+
-1
|
|
42711
|
+
) === "string") {
|
|
42712
|
+
parts[parts.length - 1] += currentPart;
|
|
42713
|
+
} else {
|
|
42714
|
+
parts.push(currentPart);
|
|
43042
42715
|
}
|
|
42716
|
+
parts.push(...restParts);
|
|
42717
|
+
}
|
|
42718
|
+
if (parts.length === 0) {
|
|
42719
|
+
return "";
|
|
42720
|
+
}
|
|
42721
|
+
if (parts.length === 1) {
|
|
42722
|
+
return parts[0];
|
|
42723
|
+
}
|
|
42724
|
+
return parts;
|
|
43043
42725
|
}
|
|
42726
|
+
case DOC_TYPE_STRING:
|
|
42727
|
+
case DOC_TYPE_CURSOR:
|
|
42728
|
+
case DOC_TYPE_TRIM:
|
|
42729
|
+
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42730
|
+
case DOC_TYPE_LINE:
|
|
42731
|
+
case DOC_TYPE_LABEL:
|
|
42732
|
+
case DOC_TYPE_BREAK_PARENT:
|
|
42733
|
+
break;
|
|
42734
|
+
default:
|
|
42735
|
+
throw new invalid_doc_error_default(doc);
|
|
42736
|
+
}
|
|
42737
|
+
return doc;
|
|
43044
42738
|
}
|
|
43045
|
-
function
|
|
43046
|
-
|
|
43047
|
-
(namespace.name === "Reflection" &&
|
|
43048
|
-
namespace.namespace?.name === "TypeSpec" &&
|
|
43049
|
-
namespace.namespace?.namespace?.name === ""));
|
|
42739
|
+
function cleanDoc(doc) {
|
|
42740
|
+
return mapDoc(doc, (currentDoc) => cleanDocFn(currentDoc));
|
|
43050
42741
|
}
|
|
43051
|
-
|
|
43052
|
-
|
|
43053
|
-
* @param type namespace type
|
|
43054
|
-
* @param options
|
|
43055
|
-
* @returns
|
|
43056
|
-
*/
|
|
43057
|
-
function getNamespaceFullName(type, options) {
|
|
43058
|
-
const segments = [];
|
|
43059
|
-
let current = type;
|
|
43060
|
-
while (current && current.name !== "") {
|
|
43061
|
-
segments.unshift(getIdentifierName(current.name, options));
|
|
43062
|
-
current = current.namespace;
|
|
43063
|
-
}
|
|
43064
|
-
return segments.join(".");
|
|
42742
|
+
function replaceEndOfLine(doc, replacement = literalline) {
|
|
42743
|
+
return mapDoc(doc, (currentDoc) => typeof currentDoc === "string" ? join(replacement, currentDoc.split("\n")) : currentDoc);
|
|
43065
42744
|
}
|
|
43066
|
-
function
|
|
43067
|
-
|
|
43068
|
-
|
|
43069
|
-
|
|
43070
|
-
const namespaceFullName = getNamespaceFullName(type, options);
|
|
43071
|
-
return namespaceFullName !== "" ? namespaceFullName + "." : "";
|
|
42745
|
+
function canBreakFn(doc) {
|
|
42746
|
+
if (doc.type === DOC_TYPE_LINE) {
|
|
42747
|
+
return true;
|
|
42748
|
+
}
|
|
43072
42749
|
}
|
|
43073
|
-
function
|
|
43074
|
-
|
|
42750
|
+
function canBreak(doc) {
|
|
42751
|
+
return findInDoc(doc, canBreakFn, false);
|
|
43075
42752
|
}
|
|
43076
|
-
|
|
43077
|
-
|
|
42753
|
+
|
|
42754
|
+
// src/document/printer.js
|
|
42755
|
+
var MODE_BREAK = Symbol("MODE_BREAK");
|
|
42756
|
+
var MODE_FLAT = Symbol("MODE_FLAT");
|
|
42757
|
+
var CURSOR_PLACEHOLDER = Symbol("cursor");
|
|
42758
|
+
function rootIndent() {
|
|
42759
|
+
return {
|
|
42760
|
+
value: "",
|
|
42761
|
+
length: 0,
|
|
42762
|
+
queue: []
|
|
42763
|
+
};
|
|
43078
42764
|
}
|
|
43079
|
-
function
|
|
43080
|
-
|
|
43081
|
-
|
|
43082
|
-
|
|
43083
|
-
|
|
43084
|
-
|
|
43085
|
-
|
|
43086
|
-
|
|
42765
|
+
function makeIndent(ind, options) {
|
|
42766
|
+
return generateInd(ind, {
|
|
42767
|
+
type: "indent"
|
|
42768
|
+
}, options);
|
|
42769
|
+
}
|
|
42770
|
+
function makeAlign(indent2, widthOrDoc, options) {
|
|
42771
|
+
if (widthOrDoc === Number.NEGATIVE_INFINITY) {
|
|
42772
|
+
return indent2.root || rootIndent();
|
|
42773
|
+
}
|
|
42774
|
+
if (widthOrDoc < 0) {
|
|
42775
|
+
return generateInd(indent2, {
|
|
42776
|
+
type: "dedent"
|
|
42777
|
+
}, options);
|
|
42778
|
+
}
|
|
42779
|
+
if (!widthOrDoc) {
|
|
42780
|
+
return indent2;
|
|
42781
|
+
}
|
|
42782
|
+
if (widthOrDoc.type === "root") {
|
|
42783
|
+
return {
|
|
42784
|
+
...indent2,
|
|
42785
|
+
root: indent2
|
|
42786
|
+
};
|
|
42787
|
+
}
|
|
42788
|
+
const alignType = typeof widthOrDoc === "string" ? "stringAlign" : "numberAlign";
|
|
42789
|
+
return generateInd(indent2, {
|
|
42790
|
+
type: alignType,
|
|
42791
|
+
n: widthOrDoc
|
|
42792
|
+
}, options);
|
|
42793
|
+
}
|
|
42794
|
+
function generateInd(ind, newPart, options) {
|
|
42795
|
+
const queue = newPart.type === "dedent" ? ind.queue.slice(0, -1) : [...ind.queue, newPart];
|
|
42796
|
+
let value = "";
|
|
42797
|
+
let length = 0;
|
|
42798
|
+
let lastTabs = 0;
|
|
42799
|
+
let lastSpaces = 0;
|
|
42800
|
+
for (const part of queue) {
|
|
42801
|
+
switch (part.type) {
|
|
42802
|
+
case "indent":
|
|
42803
|
+
flush();
|
|
42804
|
+
if (options.useTabs) {
|
|
42805
|
+
addTabs(1);
|
|
42806
|
+
} else {
|
|
42807
|
+
addSpaces(options.tabWidth);
|
|
43087
42808
|
}
|
|
42809
|
+
break;
|
|
42810
|
+
case "stringAlign":
|
|
42811
|
+
flush();
|
|
42812
|
+
value += part.n;
|
|
42813
|
+
length += part.n.length;
|
|
42814
|
+
break;
|
|
42815
|
+
case "numberAlign":
|
|
42816
|
+
lastTabs += 1;
|
|
42817
|
+
lastSpaces += part.n;
|
|
42818
|
+
break;
|
|
42819
|
+
default:
|
|
42820
|
+
throw new Error(`Unexpected type '${part.type}'`);
|
|
43088
42821
|
}
|
|
43089
|
-
|
|
43090
|
-
|
|
43091
|
-
|
|
43092
|
-
|
|
43093
|
-
|
|
43094
|
-
|
|
43095
|
-
|
|
43096
|
-
|
|
43097
|
-
|
|
43098
|
-
|
|
43099
|
-
|
|
43100
|
-
|
|
43101
|
-
|
|
43102
|
-
|
|
43103
|
-
|
|
43104
|
-
|
|
43105
|
-
|
|
43106
|
-
|
|
42822
|
+
}
|
|
42823
|
+
flushSpaces();
|
|
42824
|
+
return {
|
|
42825
|
+
...ind,
|
|
42826
|
+
value,
|
|
42827
|
+
length,
|
|
42828
|
+
queue
|
|
42829
|
+
};
|
|
42830
|
+
function addTabs(count) {
|
|
42831
|
+
value += " ".repeat(count);
|
|
42832
|
+
length += options.tabWidth * count;
|
|
42833
|
+
}
|
|
42834
|
+
function addSpaces(count) {
|
|
42835
|
+
value += " ".repeat(count);
|
|
42836
|
+
length += count;
|
|
42837
|
+
}
|
|
42838
|
+
function flush() {
|
|
42839
|
+
if (options.useTabs) {
|
|
42840
|
+
flushTabs();
|
|
42841
|
+
} else {
|
|
42842
|
+
flushSpaces();
|
|
43107
42843
|
}
|
|
43108
|
-
}
|
|
43109
|
-
function
|
|
43110
|
-
|
|
43111
|
-
|
|
43112
|
-
? getIdentifierName(type.name, options)
|
|
43113
|
-
: [...type.variants.values()].map((x) => getTypeName(x.type, options)).join(" | ");
|
|
43114
|
-
return nsPrefix + typeName;
|
|
43115
|
-
}
|
|
43116
|
-
/**
|
|
43117
|
-
* Check if the given namespace is the standard library `TypeSpec` namespace.
|
|
43118
|
-
*/
|
|
43119
|
-
function isTypeSpecNamespace(namespace) {
|
|
43120
|
-
return namespace.name === "TypeSpec" && namespace.namespace?.name === "";
|
|
43121
|
-
}
|
|
43122
|
-
/**
|
|
43123
|
-
* Check if the given type is defined right in the TypeSpec namespace.
|
|
43124
|
-
*/
|
|
43125
|
-
function isInTypeSpecNamespace(type) {
|
|
43126
|
-
return Boolean(type.namespace && isTypeSpecNamespace(type.namespace));
|
|
43127
|
-
}
|
|
43128
|
-
function getModelPropertyName(prop, options) {
|
|
43129
|
-
const modelName = prop.model ? getModelName(prop.model, options) : undefined;
|
|
43130
|
-
return `${modelName ?? "(anonymous model)"}.${prop.name}`;
|
|
43131
|
-
}
|
|
43132
|
-
function getInterfaceName(iface, options) {
|
|
43133
|
-
let interfaceName = getIdentifierName(iface.name, options);
|
|
43134
|
-
if (isTemplateInstance(iface)) {
|
|
43135
|
-
interfaceName += `<${iface.templateMapper.args
|
|
43136
|
-
.map((x) => getEntityName(x, options))
|
|
43137
|
-
.join(", ")}>`;
|
|
42844
|
+
}
|
|
42845
|
+
function flushTabs() {
|
|
42846
|
+
if (lastTabs > 0) {
|
|
42847
|
+
addTabs(lastTabs);
|
|
43138
42848
|
}
|
|
43139
|
-
|
|
43140
|
-
}
|
|
43141
|
-
function
|
|
43142
|
-
|
|
43143
|
-
|
|
43144
|
-
// template
|
|
43145
|
-
const params = op.node.templateParameters.map((t) => getIdentifierName(t.id.sv, options));
|
|
43146
|
-
opName += `<${params.join(", ")}>`;
|
|
42849
|
+
resetLast();
|
|
42850
|
+
}
|
|
42851
|
+
function flushSpaces() {
|
|
42852
|
+
if (lastSpaces > 0) {
|
|
42853
|
+
addSpaces(lastSpaces);
|
|
43147
42854
|
}
|
|
43148
|
-
|
|
43149
|
-
|
|
43150
|
-
|
|
43151
|
-
|
|
43152
|
-
|
|
43153
|
-
|
|
43154
|
-
return options?.printable ? printId(name) : name;
|
|
42855
|
+
resetLast();
|
|
42856
|
+
}
|
|
42857
|
+
function resetLast() {
|
|
42858
|
+
lastTabs = 0;
|
|
42859
|
+
lastSpaces = 0;
|
|
42860
|
+
}
|
|
43155
42861
|
}
|
|
43156
|
-
function
|
|
43157
|
-
|
|
43158
|
-
|
|
42862
|
+
function trim2(out) {
|
|
42863
|
+
let trimCount = 0;
|
|
42864
|
+
let cursorCount = 0;
|
|
42865
|
+
let outIndex = out.length;
|
|
42866
|
+
outer: while (outIndex--) {
|
|
42867
|
+
const last = out[outIndex];
|
|
42868
|
+
if (last === CURSOR_PLACEHOLDER) {
|
|
42869
|
+
cursorCount++;
|
|
42870
|
+
continue;
|
|
43159
42871
|
}
|
|
43160
|
-
|
|
43161
|
-
|
|
43162
|
-
|
|
43163
|
-
|
|
43164
|
-
|
|
43165
|
-
|
|
43166
|
-
|
|
43167
|
-
|
|
43168
|
-
/**
|
|
43169
|
-
* Represent any possible numeric value
|
|
43170
|
-
*/
|
|
43171
|
-
function Numeric(stringValue) {
|
|
43172
|
-
if (new.target) {
|
|
43173
|
-
throw new Error("Numeric is not a constructor");
|
|
42872
|
+
for (let charIndex = last.length - 1; charIndex >= 0; charIndex--) {
|
|
42873
|
+
const char = last[charIndex];
|
|
42874
|
+
if (char === " " || char === " ") {
|
|
42875
|
+
trimCount++;
|
|
42876
|
+
} else {
|
|
42877
|
+
out[outIndex] = last.slice(0, charIndex + 1);
|
|
42878
|
+
break outer;
|
|
42879
|
+
}
|
|
43174
42880
|
}
|
|
43175
|
-
|
|
43176
|
-
|
|
43177
|
-
|
|
43178
|
-
|
|
43179
|
-
|
|
43180
|
-
}
|
|
43181
|
-
|
|
43182
|
-
|
|
43183
|
-
return Object.freeze(numeric);
|
|
43184
|
-
}
|
|
43185
|
-
function setTypedProptotype(obj, prototype) {
|
|
43186
|
-
Object.setPrototypeOf(obj, prototype);
|
|
43187
|
-
return obj;
|
|
42881
|
+
}
|
|
42882
|
+
if (trimCount > 0 || cursorCount > 0) {
|
|
42883
|
+
out.length = outIndex + 1;
|
|
42884
|
+
while (cursorCount-- > 0) {
|
|
42885
|
+
out.push(CURSOR_PLACEHOLDER);
|
|
42886
|
+
}
|
|
42887
|
+
}
|
|
42888
|
+
return trimCount;
|
|
43188
42889
|
}
|
|
43189
|
-
function
|
|
43190
|
-
|
|
43191
|
-
|
|
43192
|
-
|
|
43193
|
-
|
|
43194
|
-
|
|
43195
|
-
|
|
43196
|
-
|
|
43197
|
-
|
|
43198
|
-
|
|
42890
|
+
function fits(next, restCommands, width, hasLineSuffix, groupModeMap, mustBeFlat) {
|
|
42891
|
+
if (width === Number.POSITIVE_INFINITY) {
|
|
42892
|
+
return true;
|
|
42893
|
+
}
|
|
42894
|
+
let restIdx = restCommands.length;
|
|
42895
|
+
const cmds = [next];
|
|
42896
|
+
const out = [];
|
|
42897
|
+
while (width >= 0) {
|
|
42898
|
+
if (cmds.length === 0) {
|
|
42899
|
+
if (restIdx === 0) {
|
|
42900
|
+
return true;
|
|
42901
|
+
}
|
|
42902
|
+
cmds.push(restCommands[--restIdx]);
|
|
42903
|
+
continue;
|
|
43199
42904
|
}
|
|
43200
|
-
const
|
|
43201
|
-
|
|
43202
|
-
|
|
43203
|
-
|
|
43204
|
-
|
|
43205
|
-
|
|
42905
|
+
const {
|
|
42906
|
+
mode,
|
|
42907
|
+
doc
|
|
42908
|
+
} = cmds.pop();
|
|
42909
|
+
const docType = get_doc_type_default(doc);
|
|
42910
|
+
switch (docType) {
|
|
42911
|
+
case DOC_TYPE_STRING:
|
|
42912
|
+
out.push(doc);
|
|
42913
|
+
width -= get_string_width_default(doc);
|
|
42914
|
+
break;
|
|
42915
|
+
case DOC_TYPE_ARRAY:
|
|
42916
|
+
case DOC_TYPE_FILL: {
|
|
42917
|
+
const parts = docType === DOC_TYPE_ARRAY ? doc : doc.parts;
|
|
42918
|
+
for (let i = parts.length - 1; i >= 0; i--) {
|
|
42919
|
+
cmds.push({
|
|
42920
|
+
mode,
|
|
42921
|
+
doc: parts[i]
|
|
42922
|
+
});
|
|
43206
42923
|
}
|
|
43207
|
-
|
|
43208
|
-
|
|
42924
|
+
break;
|
|
42925
|
+
}
|
|
42926
|
+
case DOC_TYPE_INDENT:
|
|
42927
|
+
case DOC_TYPE_ALIGN:
|
|
42928
|
+
case DOC_TYPE_INDENT_IF_BREAK:
|
|
42929
|
+
case DOC_TYPE_LABEL:
|
|
42930
|
+
cmds.push({
|
|
42931
|
+
mode,
|
|
42932
|
+
doc: doc.contents
|
|
42933
|
+
});
|
|
42934
|
+
break;
|
|
42935
|
+
case DOC_TYPE_TRIM:
|
|
42936
|
+
width += trim2(out);
|
|
42937
|
+
break;
|
|
42938
|
+
case DOC_TYPE_GROUP: {
|
|
42939
|
+
if (mustBeFlat && doc.break) {
|
|
42940
|
+
return false;
|
|
42941
|
+
}
|
|
42942
|
+
const groupMode = doc.break ? MODE_BREAK : mode;
|
|
42943
|
+
const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default(
|
|
42944
|
+
/* isOptionalObject */
|
|
42945
|
+
false,
|
|
42946
|
+
doc.expandedStates,
|
|
42947
|
+
-1
|
|
42948
|
+
) : doc.contents;
|
|
42949
|
+
cmds.push({
|
|
42950
|
+
mode: groupMode,
|
|
42951
|
+
doc: contents
|
|
42952
|
+
});
|
|
42953
|
+
break;
|
|
42954
|
+
}
|
|
42955
|
+
case DOC_TYPE_IF_BREAK: {
|
|
42956
|
+
const groupMode = doc.groupId ? groupModeMap[doc.groupId] || MODE_FLAT : mode;
|
|
42957
|
+
const contents = groupMode === MODE_BREAK ? doc.breakContents : doc.flatContents;
|
|
42958
|
+
if (contents) {
|
|
42959
|
+
cmds.push({
|
|
42960
|
+
mode,
|
|
42961
|
+
doc: contents
|
|
42962
|
+
});
|
|
42963
|
+
}
|
|
42964
|
+
break;
|
|
42965
|
+
}
|
|
42966
|
+
case DOC_TYPE_LINE:
|
|
42967
|
+
if (mode === MODE_BREAK || doc.hard) {
|
|
42968
|
+
return true;
|
|
42969
|
+
}
|
|
42970
|
+
if (!doc.soft) {
|
|
42971
|
+
out.push(" ");
|
|
42972
|
+
width--;
|
|
42973
|
+
}
|
|
42974
|
+
break;
|
|
42975
|
+
case DOC_TYPE_LINE_SUFFIX:
|
|
42976
|
+
hasLineSuffix = true;
|
|
42977
|
+
break;
|
|
42978
|
+
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
42979
|
+
if (hasLineSuffix) {
|
|
42980
|
+
return false;
|
|
42981
|
+
}
|
|
42982
|
+
break;
|
|
42983
|
+
}
|
|
42984
|
+
}
|
|
42985
|
+
return false;
|
|
42986
|
+
}
|
|
42987
|
+
function printDocToString(doc, options) {
|
|
42988
|
+
const groupModeMap = {};
|
|
42989
|
+
const width = options.printWidth;
|
|
42990
|
+
const newLine = convertEndOfLineToChars(options.endOfLine);
|
|
42991
|
+
let pos = 0;
|
|
42992
|
+
const cmds = [{
|
|
42993
|
+
ind: rootIndent(),
|
|
42994
|
+
mode: MODE_BREAK,
|
|
42995
|
+
doc
|
|
42996
|
+
}];
|
|
42997
|
+
const out = [];
|
|
42998
|
+
let shouldRemeasure = false;
|
|
42999
|
+
const lineSuffix2 = [];
|
|
43000
|
+
let printedCursorCount = 0;
|
|
43001
|
+
propagateBreaks(doc);
|
|
43002
|
+
while (cmds.length > 0) {
|
|
43003
|
+
const {
|
|
43004
|
+
ind,
|
|
43005
|
+
mode,
|
|
43006
|
+
doc: doc2
|
|
43007
|
+
} = cmds.pop();
|
|
43008
|
+
switch (get_doc_type_default(doc2)) {
|
|
43009
|
+
case DOC_TYPE_STRING: {
|
|
43010
|
+
const formatted = newLine !== "\n" ? string_replace_all_default(
|
|
43011
|
+
/* isOptionalObject */
|
|
43012
|
+
false,
|
|
43013
|
+
doc2,
|
|
43014
|
+
"\n",
|
|
43015
|
+
newLine
|
|
43016
|
+
) : doc2;
|
|
43017
|
+
out.push(formatted);
|
|
43018
|
+
if (cmds.length > 0) {
|
|
43019
|
+
pos += get_string_width_default(formatted);
|
|
43209
43020
|
}
|
|
43210
|
-
|
|
43211
|
-
|
|
43212
|
-
|
|
43213
|
-
|
|
43214
|
-
|
|
43021
|
+
break;
|
|
43022
|
+
}
|
|
43023
|
+
case DOC_TYPE_ARRAY:
|
|
43024
|
+
for (let i = doc2.length - 1; i >= 0; i--) {
|
|
43025
|
+
cmds.push({
|
|
43026
|
+
ind,
|
|
43027
|
+
mode,
|
|
43028
|
+
doc: doc2[i]
|
|
43029
|
+
});
|
|
43215
43030
|
}
|
|
43216
|
-
|
|
43217
|
-
|
|
43218
|
-
|
|
43219
|
-
|
|
43220
|
-
exp = adjustedPointIndex;
|
|
43221
|
-
stringValue = stringValue.replace(".", "");
|
|
43031
|
+
break;
|
|
43032
|
+
case DOC_TYPE_CURSOR:
|
|
43033
|
+
if (printedCursorCount >= 2) {
|
|
43034
|
+
throw new Error("There are too many 'cursor' in doc.");
|
|
43222
43035
|
}
|
|
43223
|
-
|
|
43224
|
-
|
|
43225
|
-
|
|
43226
|
-
|
|
43227
|
-
|
|
43036
|
+
out.push(CURSOR_PLACEHOLDER);
|
|
43037
|
+
printedCursorCount++;
|
|
43038
|
+
break;
|
|
43039
|
+
case DOC_TYPE_INDENT:
|
|
43040
|
+
cmds.push({
|
|
43041
|
+
ind: makeIndent(ind, options),
|
|
43042
|
+
mode,
|
|
43043
|
+
doc: doc2.contents
|
|
43044
|
+
});
|
|
43045
|
+
break;
|
|
43046
|
+
case DOC_TYPE_ALIGN:
|
|
43047
|
+
cmds.push({
|
|
43048
|
+
ind: makeAlign(ind, doc2.n, options),
|
|
43049
|
+
mode,
|
|
43050
|
+
doc: doc2.contents
|
|
43051
|
+
});
|
|
43052
|
+
break;
|
|
43053
|
+
case DOC_TYPE_TRIM:
|
|
43054
|
+
pos -= trim2(out);
|
|
43055
|
+
break;
|
|
43056
|
+
case DOC_TYPE_GROUP:
|
|
43057
|
+
switch (mode) {
|
|
43058
|
+
case MODE_FLAT:
|
|
43059
|
+
if (!shouldRemeasure) {
|
|
43060
|
+
cmds.push({
|
|
43061
|
+
ind,
|
|
43062
|
+
mode: doc2.break ? MODE_BREAK : MODE_FLAT,
|
|
43063
|
+
doc: doc2.contents
|
|
43064
|
+
});
|
|
43065
|
+
break;
|
|
43228
43066
|
}
|
|
43229
|
-
|
|
43230
|
-
|
|
43067
|
+
case MODE_BREAK: {
|
|
43068
|
+
shouldRemeasure = false;
|
|
43069
|
+
const next = {
|
|
43070
|
+
ind,
|
|
43071
|
+
mode: MODE_FLAT,
|
|
43072
|
+
doc: doc2.contents
|
|
43073
|
+
};
|
|
43074
|
+
const rem = width - pos;
|
|
43075
|
+
const hasLineSuffix = lineSuffix2.length > 0;
|
|
43076
|
+
if (!doc2.break && fits(next, cmds, rem, hasLineSuffix, groupModeMap)) {
|
|
43077
|
+
cmds.push(next);
|
|
43078
|
+
} else {
|
|
43079
|
+
if (doc2.expandedStates) {
|
|
43080
|
+
const mostExpanded = at_default(
|
|
43081
|
+
/* isOptionalObject */
|
|
43082
|
+
false,
|
|
43083
|
+
doc2.expandedStates,
|
|
43084
|
+
-1
|
|
43085
|
+
);
|
|
43086
|
+
if (doc2.break) {
|
|
43087
|
+
cmds.push({
|
|
43088
|
+
ind,
|
|
43089
|
+
mode: MODE_BREAK,
|
|
43090
|
+
doc: mostExpanded
|
|
43091
|
+
});
|
|
43092
|
+
break;
|
|
43093
|
+
} else {
|
|
43094
|
+
for (let i = 1; i < doc2.expandedStates.length + 1; i++) {
|
|
43095
|
+
if (i >= doc2.expandedStates.length) {
|
|
43096
|
+
cmds.push({
|
|
43097
|
+
ind,
|
|
43098
|
+
mode: MODE_BREAK,
|
|
43099
|
+
doc: mostExpanded
|
|
43100
|
+
});
|
|
43101
|
+
break;
|
|
43102
|
+
} else {
|
|
43103
|
+
const state = doc2.expandedStates[i];
|
|
43104
|
+
const cmd = {
|
|
43105
|
+
ind,
|
|
43106
|
+
mode: MODE_FLAT,
|
|
43107
|
+
doc: state
|
|
43108
|
+
};
|
|
43109
|
+
if (fits(cmd, cmds, rem, hasLineSuffix, groupModeMap)) {
|
|
43110
|
+
cmds.push(cmd);
|
|
43111
|
+
break;
|
|
43112
|
+
}
|
|
43113
|
+
}
|
|
43114
|
+
}
|
|
43115
|
+
}
|
|
43116
|
+
} else {
|
|
43117
|
+
cmds.push({
|
|
43118
|
+
ind,
|
|
43119
|
+
mode: MODE_BREAK,
|
|
43120
|
+
doc: doc2.contents
|
|
43121
|
+
});
|
|
43122
|
+
}
|
|
43123
|
+
}
|
|
43124
|
+
break;
|
|
43125
|
+
}
|
|
43231
43126
|
}
|
|
43232
|
-
|
|
43233
|
-
|
|
43234
|
-
|
|
43235
|
-
|
|
43127
|
+
if (doc2.id) {
|
|
43128
|
+
groupModeMap[doc2.id] = at_default(
|
|
43129
|
+
/* isOptionalObject */
|
|
43130
|
+
false,
|
|
43131
|
+
cmds,
|
|
43132
|
+
-1
|
|
43133
|
+
).mode;
|
|
43236
43134
|
}
|
|
43237
|
-
|
|
43238
|
-
|
|
43135
|
+
break;
|
|
43136
|
+
case DOC_TYPE_FILL: {
|
|
43137
|
+
const rem = width - pos;
|
|
43138
|
+
const {
|
|
43139
|
+
parts
|
|
43140
|
+
} = doc2;
|
|
43141
|
+
if (parts.length === 0) {
|
|
43142
|
+
break;
|
|
43239
43143
|
}
|
|
43240
|
-
|
|
43241
|
-
|
|
43242
|
-
|
|
43144
|
+
const [content, whitespace] = parts;
|
|
43145
|
+
const contentFlatCmd = {
|
|
43146
|
+
ind,
|
|
43147
|
+
mode: MODE_FLAT,
|
|
43148
|
+
doc: content
|
|
43149
|
+
};
|
|
43150
|
+
const contentBreakCmd = {
|
|
43151
|
+
ind,
|
|
43152
|
+
mode: MODE_BREAK,
|
|
43153
|
+
doc: content
|
|
43154
|
+
};
|
|
43155
|
+
const contentFits = fits(contentFlatCmd, [], rem, lineSuffix2.length > 0, groupModeMap, true);
|
|
43156
|
+
if (parts.length === 1) {
|
|
43157
|
+
if (contentFits) {
|
|
43158
|
+
cmds.push(contentFlatCmd);
|
|
43159
|
+
} else {
|
|
43160
|
+
cmds.push(contentBreakCmd);
|
|
43161
|
+
}
|
|
43162
|
+
break;
|
|
43163
|
+
}
|
|
43164
|
+
const whitespaceFlatCmd = {
|
|
43165
|
+
ind,
|
|
43166
|
+
mode: MODE_FLAT,
|
|
43167
|
+
doc: whitespace
|
|
43168
|
+
};
|
|
43169
|
+
const whitespaceBreakCmd = {
|
|
43170
|
+
ind,
|
|
43171
|
+
mode: MODE_BREAK,
|
|
43172
|
+
doc: whitespace
|
|
43173
|
+
};
|
|
43174
|
+
if (parts.length === 2) {
|
|
43175
|
+
if (contentFits) {
|
|
43176
|
+
cmds.push(whitespaceFlatCmd, contentFlatCmd);
|
|
43177
|
+
} else {
|
|
43178
|
+
cmds.push(whitespaceBreakCmd, contentBreakCmd);
|
|
43179
|
+
}
|
|
43180
|
+
break;
|
|
43181
|
+
}
|
|
43182
|
+
parts.splice(0, 2);
|
|
43183
|
+
const remainingCmd = {
|
|
43184
|
+
ind,
|
|
43185
|
+
mode,
|
|
43186
|
+
doc: fill(parts)
|
|
43187
|
+
};
|
|
43188
|
+
const secondContent = parts[0];
|
|
43189
|
+
const firstAndSecondContentFlatCmd = {
|
|
43190
|
+
ind,
|
|
43191
|
+
mode: MODE_FLAT,
|
|
43192
|
+
doc: [content, whitespace, secondContent]
|
|
43193
|
+
};
|
|
43194
|
+
const firstAndSecondContentFits = fits(firstAndSecondContentFlatCmd, [], rem, lineSuffix2.length > 0, groupModeMap, true);
|
|
43195
|
+
if (firstAndSecondContentFits) {
|
|
43196
|
+
cmds.push(remainingCmd, whitespaceFlatCmd, contentFlatCmd);
|
|
43197
|
+
} else if (contentFits) {
|
|
43198
|
+
cmds.push(remainingCmd, whitespaceBreakCmd, contentFlatCmd);
|
|
43199
|
+
} else {
|
|
43200
|
+
cmds.push(remainingCmd, whitespaceBreakCmd, contentBreakCmd);
|
|
43201
|
+
}
|
|
43202
|
+
break;
|
|
43203
|
+
}
|
|
43204
|
+
case DOC_TYPE_IF_BREAK:
|
|
43205
|
+
case DOC_TYPE_INDENT_IF_BREAK: {
|
|
43206
|
+
const groupMode = doc2.groupId ? groupModeMap[doc2.groupId] : mode;
|
|
43207
|
+
if (groupMode === MODE_BREAK) {
|
|
43208
|
+
const breakContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.breakContents : doc2.negate ? doc2.contents : indent(doc2.contents);
|
|
43209
|
+
if (breakContents) {
|
|
43210
|
+
cmds.push({
|
|
43211
|
+
ind,
|
|
43212
|
+
mode,
|
|
43213
|
+
doc: breakContents
|
|
43214
|
+
});
|
|
43215
|
+
}
|
|
43216
|
+
}
|
|
43217
|
+
if (groupMode === MODE_FLAT) {
|
|
43218
|
+
const flatContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.flatContents : doc2.negate ? indent(doc2.contents) : doc2.contents;
|
|
43219
|
+
if (flatContents) {
|
|
43220
|
+
cmds.push({
|
|
43221
|
+
ind,
|
|
43222
|
+
mode,
|
|
43223
|
+
doc: flatContents
|
|
43224
|
+
});
|
|
43225
|
+
}
|
|
43243
43226
|
}
|
|
43244
|
-
|
|
43245
|
-
|
|
43246
|
-
|
|
43247
|
-
|
|
43248
|
-
|
|
43227
|
+
break;
|
|
43228
|
+
}
|
|
43229
|
+
case DOC_TYPE_LINE_SUFFIX:
|
|
43230
|
+
lineSuffix2.push({
|
|
43231
|
+
ind,
|
|
43232
|
+
mode,
|
|
43233
|
+
doc: doc2.contents
|
|
43234
|
+
});
|
|
43235
|
+
break;
|
|
43236
|
+
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
43237
|
+
if (lineSuffix2.length > 0) {
|
|
43238
|
+
cmds.push({
|
|
43239
|
+
ind,
|
|
43240
|
+
mode,
|
|
43241
|
+
doc: hardlineWithoutBreakParent
|
|
43242
|
+
});
|
|
43249
43243
|
}
|
|
43250
|
-
|
|
43251
|
-
|
|
43244
|
+
break;
|
|
43245
|
+
case DOC_TYPE_LINE:
|
|
43246
|
+
switch (mode) {
|
|
43247
|
+
case MODE_FLAT:
|
|
43248
|
+
if (!doc2.hard) {
|
|
43249
|
+
if (!doc2.soft) {
|
|
43250
|
+
out.push(" ");
|
|
43251
|
+
pos += 1;
|
|
43252
|
+
}
|
|
43253
|
+
break;
|
|
43254
|
+
} else {
|
|
43255
|
+
shouldRemeasure = true;
|
|
43256
|
+
}
|
|
43257
|
+
case MODE_BREAK:
|
|
43258
|
+
if (lineSuffix2.length > 0) {
|
|
43259
|
+
cmds.push({
|
|
43260
|
+
ind,
|
|
43261
|
+
mode,
|
|
43262
|
+
doc: doc2
|
|
43263
|
+
}, ...lineSuffix2.reverse());
|
|
43264
|
+
lineSuffix2.length = 0;
|
|
43265
|
+
break;
|
|
43266
|
+
}
|
|
43267
|
+
if (doc2.literal) {
|
|
43268
|
+
if (ind.root) {
|
|
43269
|
+
out.push(newLine, ind.root.value);
|
|
43270
|
+
pos = ind.root.length;
|
|
43271
|
+
} else {
|
|
43272
|
+
out.push(newLine);
|
|
43273
|
+
pos = 0;
|
|
43274
|
+
}
|
|
43275
|
+
} else {
|
|
43276
|
+
pos -= trim2(out);
|
|
43277
|
+
out.push(newLine + ind.value);
|
|
43278
|
+
pos = ind.length;
|
|
43279
|
+
}
|
|
43280
|
+
break;
|
|
43252
43281
|
}
|
|
43282
|
+
break;
|
|
43283
|
+
case DOC_TYPE_LABEL:
|
|
43284
|
+
cmds.push({
|
|
43285
|
+
ind,
|
|
43286
|
+
mode,
|
|
43287
|
+
doc: doc2.contents
|
|
43288
|
+
});
|
|
43289
|
+
break;
|
|
43290
|
+
case DOC_TYPE_BREAK_PARENT:
|
|
43291
|
+
break;
|
|
43292
|
+
default:
|
|
43293
|
+
throw new invalid_doc_error_default(doc2);
|
|
43253
43294
|
}
|
|
43254
|
-
|
|
43255
|
-
|
|
43256
|
-
|
|
43257
|
-
const n = value.n.toString();
|
|
43258
|
-
const sign = value.s === -1 ? "-" : "";
|
|
43259
|
-
const decimal = value.e < n.length ? "." + n.slice(value.e) : "";
|
|
43260
|
-
return sign + n.slice(0, value.e) + decimal;
|
|
43261
|
-
}
|
|
43262
|
-
const equals = (a, b) => a.n === b.n && a.e === b.e;
|
|
43263
|
-
const compare = (a, b) => {
|
|
43264
|
-
if (a.s < b.s) {
|
|
43265
|
-
return -1;
|
|
43266
|
-
}
|
|
43267
|
-
else if (a.s > b.s) {
|
|
43268
|
-
return 1;
|
|
43269
|
-
}
|
|
43270
|
-
const neg = a.s;
|
|
43271
|
-
if (a.e < b.e) {
|
|
43272
|
-
return (-1 * neg);
|
|
43273
|
-
}
|
|
43274
|
-
else if (a.e > b.e) {
|
|
43275
|
-
return (1 * neg);
|
|
43276
|
-
}
|
|
43277
|
-
let aN = a.n;
|
|
43278
|
-
let bN = b.n;
|
|
43279
|
-
if (a.d < b.d) {
|
|
43280
|
-
aN *= 10n ** BigInt(b.d - a.d);
|
|
43281
|
-
}
|
|
43282
|
-
else {
|
|
43283
|
-
bN *= 10n ** BigInt(a.d - b.d);
|
|
43295
|
+
if (cmds.length === 0 && lineSuffix2.length > 0) {
|
|
43296
|
+
cmds.push(...lineSuffix2.reverse());
|
|
43297
|
+
lineSuffix2.length = 0;
|
|
43284
43298
|
}
|
|
43285
|
-
|
|
43286
|
-
|
|
43287
|
-
|
|
43288
|
-
|
|
43289
|
-
|
|
43290
|
-
|
|
43291
|
-
const
|
|
43292
|
-
|
|
43293
|
-
|
|
43294
|
-
|
|
43295
|
-
|
|
43296
|
-
|
|
43297
|
-
|
|
43298
|
-
|
|
43299
|
-
|
|
43300
|
-
|
|
43301
|
-
|
|
43302
|
-
|
|
43303
|
-
|
|
43304
|
-
|
|
43305
|
-
|
|
43306
|
-
|
|
43307
|
-
|
|
43308
|
-
|
|
43309
|
-
|
|
43310
|
-
|
|
43311
|
-
|
|
43312
|
-
|
|
43313
|
-
|
|
43314
|
-
|
|
43315
|
-
|
|
43316
|
-
|
|
43299
|
+
}
|
|
43300
|
+
const cursorPlaceholderIndex = out.indexOf(CURSOR_PLACEHOLDER);
|
|
43301
|
+
if (cursorPlaceholderIndex !== -1) {
|
|
43302
|
+
const otherCursorPlaceholderIndex = out.indexOf(CURSOR_PLACEHOLDER, cursorPlaceholderIndex + 1);
|
|
43303
|
+
const beforeCursor = out.slice(0, cursorPlaceholderIndex).join("");
|
|
43304
|
+
const aroundCursor = out.slice(cursorPlaceholderIndex + 1, otherCursorPlaceholderIndex).join("");
|
|
43305
|
+
const afterCursor = out.slice(otherCursorPlaceholderIndex + 1).join("");
|
|
43306
|
+
return {
|
|
43307
|
+
formatted: beforeCursor + aroundCursor + afterCursor,
|
|
43308
|
+
cursorNodeStart: beforeCursor.length,
|
|
43309
|
+
cursorNodeText: aroundCursor
|
|
43310
|
+
};
|
|
43311
|
+
}
|
|
43312
|
+
return {
|
|
43313
|
+
formatted: out.join("")
|
|
43314
|
+
};
|
|
43315
|
+
}
|
|
43316
|
+
|
|
43317
|
+
// src/document/public.js
|
|
43318
|
+
var builders = {
|
|
43319
|
+
join,
|
|
43320
|
+
line,
|
|
43321
|
+
softline,
|
|
43322
|
+
hardline,
|
|
43323
|
+
literalline,
|
|
43324
|
+
group,
|
|
43325
|
+
conditionalGroup,
|
|
43326
|
+
fill,
|
|
43327
|
+
lineSuffix,
|
|
43328
|
+
lineSuffixBoundary,
|
|
43329
|
+
cursor,
|
|
43330
|
+
breakParent,
|
|
43331
|
+
ifBreak,
|
|
43332
|
+
trim,
|
|
43333
|
+
indent,
|
|
43334
|
+
indentIfBreak,
|
|
43335
|
+
align,
|
|
43336
|
+
addAlignmentToDoc,
|
|
43337
|
+
markAsRoot,
|
|
43338
|
+
dedentToRoot,
|
|
43339
|
+
dedent,
|
|
43340
|
+
hardlineWithoutBreakParent,
|
|
43341
|
+
literallineWithoutBreakParent,
|
|
43342
|
+
label,
|
|
43343
|
+
// TODO: Remove this in v4
|
|
43344
|
+
concat: (parts) => parts
|
|
43317
43345
|
};
|
|
43318
|
-
|
|
43319
|
-
|
|
43346
|
+
var printer = { printDocToString };
|
|
43347
|
+
var utils = {
|
|
43348
|
+
willBreak,
|
|
43349
|
+
traverseDoc: traverse_doc_default,
|
|
43350
|
+
findInDoc,
|
|
43351
|
+
mapDoc,
|
|
43352
|
+
removeLines,
|
|
43353
|
+
stripTrailingHardline,
|
|
43354
|
+
replaceEndOfLine,
|
|
43355
|
+
canBreak
|
|
43320
43356
|
};
|
|
43321
43357
|
|
|
43322
|
-
|
|
43323
|
-
|
|
43324
|
-
*/
|
|
43325
|
-
|
|
43326
|
-
|
|
43327
|
-
|
|
43328
|
-
|
|
43329
|
-
|
|
43330
|
-
|
|
43331
|
-
|
|
43332
|
-
|
|
43333
|
-
|
|
43334
|
-
|
|
43335
|
-
|
|
43336
|
-
|
|
43337
|
-
|
|
43338
|
-
|
|
43339
|
-
|
|
43340
|
-
|
|
43341
|
-
{ int: true, isJsNumber: true },
|
|
43342
|
-
],
|
|
43343
|
-
float32: [Numeric("-3.4e38"), Numeric("3.4e38"), { int: false, isJsNumber: true }],
|
|
43344
|
-
float64: [
|
|
43345
|
-
Numeric(`${-Number.MAX_VALUE}`),
|
|
43346
|
-
Numeric(Number.MAX_VALUE.toString()),
|
|
43347
|
-
{ int: false, isJsNumber: true },
|
|
43348
|
-
],
|
|
43349
|
-
});
|
|
43350
|
-
|
|
43351
|
-
var ResolutionKind;
|
|
43352
|
-
(function (ResolutionKind) {
|
|
43353
|
-
ResolutionKind[ResolutionKind["Value"] = 0] = "Value";
|
|
43354
|
-
ResolutionKind[ResolutionKind["Type"] = 1] = "Type";
|
|
43355
|
-
ResolutionKind[ResolutionKind["BaseType"] = 2] = "BaseType";
|
|
43356
|
-
ResolutionKind[ResolutionKind["Constraint"] = 3] = "Constraint";
|
|
43357
|
-
})(ResolutionKind || (ResolutionKind = {}));
|
|
43358
|
-
var Related;
|
|
43359
|
-
(function (Related) {
|
|
43360
|
-
Related[Related["false"] = 0] = "false";
|
|
43361
|
-
Related[Related["true"] = 1] = "true";
|
|
43362
|
-
Related[Related["maybe"] = 2] = "maybe";
|
|
43363
|
-
})(Related || (Related = {}));
|
|
43358
|
+
var CommentCheckFlags;
|
|
43359
|
+
(function (CommentCheckFlags) {
|
|
43360
|
+
/** Check comment is a leading comment */
|
|
43361
|
+
CommentCheckFlags[CommentCheckFlags["Leading"] = 2] = "Leading";
|
|
43362
|
+
/** Check comment is a trailing comment */
|
|
43363
|
+
CommentCheckFlags[CommentCheckFlags["Trailing"] = 4] = "Trailing";
|
|
43364
|
+
/** Check comment is a dangling comment */
|
|
43365
|
+
CommentCheckFlags[CommentCheckFlags["Dangling"] = 8] = "Dangling";
|
|
43366
|
+
/** Check comment is a block comment */
|
|
43367
|
+
CommentCheckFlags[CommentCheckFlags["Block"] = 16] = "Block";
|
|
43368
|
+
/** Check comment is a line comment */
|
|
43369
|
+
CommentCheckFlags[CommentCheckFlags["Line"] = 32] = "Line";
|
|
43370
|
+
/** Check comment is a `prettier-ignore` comment */
|
|
43371
|
+
CommentCheckFlags[CommentCheckFlags["PrettierIgnore"] = 64] = "PrettierIgnore";
|
|
43372
|
+
/** Check comment is the first attached comment */
|
|
43373
|
+
CommentCheckFlags[CommentCheckFlags["First"] = 128] = "First";
|
|
43374
|
+
/** Check comment is the last attached comment */
|
|
43375
|
+
CommentCheckFlags[CommentCheckFlags["Last"] = 256] = "Last";
|
|
43376
|
+
})(CommentCheckFlags || (CommentCheckFlags = {}));
|
|
43364
43377
|
|
|
43365
43378
|
const noContext = new Set(["modelPropertyReference", "enumMemberReference"]);
|
|
43366
43379
|
new Set([
|