prettier 3.0.0-alpha.1 → 3.0.0-alpha.10
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/LICENSE +910 -759
- package/README.md +3 -3
- package/bin/prettier.cjs +0 -0
- package/doc.d.ts +240 -0
- package/doc.js +351 -479
- package/doc.mjs +342 -474
- package/index.cjs +400 -230
- package/index.d.ts +921 -0
- package/index.mjs +17218 -32209
- package/internal/cli.mjs +4374 -10823
- package/internal/internal.mjs +6437 -0
- package/package.json +55 -13
- package/plugins/acorn.d.ts +6 -0
- package/plugins/acorn.js +13 -0
- package/plugins/acorn.mjs +13 -0
- package/plugins/angular.d.ts +8 -0
- package/plugins/angular.js +2 -2
- package/plugins/angular.mjs +2 -2
- package/plugins/babel.d.ts +17 -0
- package/plugins/babel.js +12 -12
- package/plugins/babel.mjs +12 -12
- package/plugins/estree.d.ts +0 -0
- package/plugins/estree.js +35 -0
- package/plugins/estree.mjs +35 -0
- package/plugins/flow.d.ts +5 -0
- package/plugins/flow.js +20 -20
- package/plugins/flow.mjs +20 -20
- package/plugins/glimmer.d.ts +5 -0
- package/plugins/glimmer.js +22 -17
- package/plugins/glimmer.mjs +22 -17
- package/plugins/graphql.d.ts +5 -0
- package/plugins/graphql.js +16 -7
- package/plugins/graphql.mjs +16 -7
- package/plugins/html.d.ts +8 -0
- package/plugins/html.js +19 -29
- package/plugins/html.mjs +19 -29
- package/plugins/markdown.d.ts +7 -0
- package/plugins/markdown.js +54 -34
- package/plugins/markdown.mjs +54 -34
- package/plugins/meriyah.d.ts +5 -0
- package/plugins/meriyah.js +5 -6
- package/plugins/meriyah.mjs +5 -6
- package/plugins/postcss.d.ts +7 -0
- package/plugins/postcss.js +45 -43
- package/plugins/postcss.mjs +45 -43
- package/plugins/typescript.d.ts +5 -0
- package/plugins/typescript.js +24 -239
- package/plugins/typescript.mjs +24 -239
- package/plugins/yaml.d.ts +5 -0
- package/plugins/yaml.js +148 -135
- package/plugins/yaml.mjs +148 -135
- package/standalone.d.ts +33 -0
- package/standalone.js +35 -105
- package/standalone.mjs +35 -105
- package/internal/third-party.mjs +0 -9071
- package/plugins/acorn-and-espree.js +0 -13
- package/plugins/acorn-and-espree.mjs +0 -13
package/doc.js
CHANGED
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
(function (factory) {
|
|
2
|
-
function interopModuleDefault(
|
|
2
|
+
function interopModuleDefault() {
|
|
3
3
|
var module = factory();
|
|
4
|
-
return module;
|
|
4
|
+
return module.default || module;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
if (typeof exports === "object" && typeof module === "object") {
|
|
8
|
-
module.exports = interopModuleDefault(
|
|
8
|
+
module.exports = interopModuleDefault();
|
|
9
9
|
} else if (typeof define === "function" && define.amd) {
|
|
10
|
-
define(
|
|
11
|
-
return interopModuleDefault(factory)
|
|
12
|
-
});
|
|
10
|
+
define(interopModuleDefault);
|
|
13
11
|
} else {
|
|
14
12
|
var root =
|
|
15
13
|
typeof globalThis !== "undefined"
|
|
@@ -19,7 +17,7 @@
|
|
|
19
17
|
: typeof self !== "undefined"
|
|
20
18
|
? self
|
|
21
19
|
: this || {};
|
|
22
|
-
root.doc = interopModuleDefault(
|
|
20
|
+
root.doc = interopModuleDefault();
|
|
23
21
|
}
|
|
24
22
|
})(function() {
|
|
25
23
|
"use strict";
|
|
@@ -29,10 +27,6 @@
|
|
|
29
27
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
30
28
|
var __getProtoOf = Object.getPrototypeOf;
|
|
31
29
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
32
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
33
|
-
var __esm = (fn, res) => function __init() {
|
|
34
|
-
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
35
|
-
};
|
|
36
30
|
var __commonJS = (cb, mod) => function __require() {
|
|
37
31
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
38
32
|
};
|
|
@@ -49,75 +43,34 @@
|
|
|
49
43
|
return to;
|
|
50
44
|
};
|
|
51
45
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
46
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
47
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
48
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
49
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
52
50
|
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
53
51
|
mod
|
|
54
52
|
));
|
|
55
53
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
56
|
-
var __publicField = (obj, key, value) => {
|
|
57
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
58
|
-
return value;
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
// <define:process>
|
|
62
|
-
var init_define_process = __esm({
|
|
63
|
-
"<define:process>"() {
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
54
|
|
|
67
55
|
// node_modules/string-width/node_modules/emoji-regex/index.js
|
|
68
56
|
var require_emoji_regex = __commonJS({
|
|
69
57
|
"node_modules/string-width/node_modules/emoji-regex/index.js"(exports, module) {
|
|
70
58
|
"use strict";
|
|
71
|
-
init_define_process();
|
|
72
59
|
module.exports = function() {
|
|
73
60
|
return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\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|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\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]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\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-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
|
|
74
61
|
};
|
|
75
62
|
}
|
|
76
63
|
});
|
|
77
64
|
|
|
78
|
-
// src/document/
|
|
79
|
-
var
|
|
80
|
-
__export(
|
|
81
|
-
builders: () =>
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
utils: () => utils_exports
|
|
65
|
+
// src/document/public.js
|
|
66
|
+
var public_exports = {};
|
|
67
|
+
__export(public_exports, {
|
|
68
|
+
builders: () => builders,
|
|
69
|
+
printer: () => printer,
|
|
70
|
+
utils: () => utils
|
|
85
71
|
});
|
|
86
|
-
init_define_process();
|
|
87
|
-
|
|
88
|
-
// src/document/builders.js
|
|
89
|
-
var builders_exports = {};
|
|
90
|
-
__export(builders_exports, {
|
|
91
|
-
addAlignmentToDoc: () => addAlignmentToDoc,
|
|
92
|
-
align: () => align,
|
|
93
|
-
breakParent: () => breakParent,
|
|
94
|
-
concat: () => concat,
|
|
95
|
-
conditionalGroup: () => conditionalGroup,
|
|
96
|
-
cursor: () => cursor,
|
|
97
|
-
dedent: () => dedent,
|
|
98
|
-
dedentToRoot: () => dedentToRoot,
|
|
99
|
-
fill: () => fill,
|
|
100
|
-
group: () => group,
|
|
101
|
-
hardline: () => hardline,
|
|
102
|
-
hardlineWithoutBreakParent: () => hardlineWithoutBreakParent,
|
|
103
|
-
ifBreak: () => ifBreak,
|
|
104
|
-
indent: () => indent,
|
|
105
|
-
indentIfBreak: () => indentIfBreak,
|
|
106
|
-
join: () => join,
|
|
107
|
-
label: () => label,
|
|
108
|
-
line: () => line,
|
|
109
|
-
lineSuffix: () => lineSuffix,
|
|
110
|
-
lineSuffixBoundary: () => lineSuffixBoundary,
|
|
111
|
-
literalline: () => literalline,
|
|
112
|
-
literallineWithoutBreakParent: () => literallineWithoutBreakParent,
|
|
113
|
-
markAsRoot: () => markAsRoot,
|
|
114
|
-
softline: () => softline,
|
|
115
|
-
trim: () => trim
|
|
116
|
-
});
|
|
117
|
-
init_define_process();
|
|
118
72
|
|
|
119
73
|
// src/document/constants.js
|
|
120
|
-
init_define_process();
|
|
121
74
|
var DOC_TYPE_STRING = "string";
|
|
122
75
|
var DOC_TYPE_ARRAY = "array";
|
|
123
76
|
var DOC_TYPE_CURSOR = "cursor";
|
|
@@ -149,23 +102,157 @@
|
|
|
149
102
|
DOC_TYPE_BREAK_PARENT
|
|
150
103
|
]);
|
|
151
104
|
|
|
105
|
+
// src/document/utils/get-doc-type.js
|
|
106
|
+
function getDocType(doc) {
|
|
107
|
+
if (typeof doc === "string") {
|
|
108
|
+
return DOC_TYPE_STRING;
|
|
109
|
+
}
|
|
110
|
+
if (Array.isArray(doc)) {
|
|
111
|
+
return DOC_TYPE_ARRAY;
|
|
112
|
+
}
|
|
113
|
+
if (!doc) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
const { type } = doc;
|
|
117
|
+
if (VALID_OBJECT_DOC_TYPES.has(type)) {
|
|
118
|
+
return type;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
var get_doc_type_default = getDocType;
|
|
122
|
+
|
|
123
|
+
// src/document/invalid-doc-error.js
|
|
124
|
+
var disjunctionListFormat = (list) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(list);
|
|
125
|
+
function getDocErrorMessage(doc) {
|
|
126
|
+
const type = doc === null ? "null" : typeof doc;
|
|
127
|
+
if (type !== "string" && type !== "object") {
|
|
128
|
+
return `Unexpected doc '${type}',
|
|
129
|
+
Expected it to be 'string' or 'object'.`;
|
|
130
|
+
}
|
|
131
|
+
if (get_doc_type_default(doc)) {
|
|
132
|
+
throw new Error("doc is valid.");
|
|
133
|
+
}
|
|
134
|
+
const objectType = Object.prototype.toString.call(doc);
|
|
135
|
+
if (objectType !== "[object Object]") {
|
|
136
|
+
return `Unexpected doc '${objectType}'.`;
|
|
137
|
+
}
|
|
138
|
+
const EXPECTED_TYPE_VALUES = disjunctionListFormat(
|
|
139
|
+
[...VALID_OBJECT_DOC_TYPES].map((type2) => `'${type2}'`)
|
|
140
|
+
);
|
|
141
|
+
return `Unexpected doc.type '${doc.type}'.
|
|
142
|
+
Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
143
|
+
}
|
|
144
|
+
var InvalidDocError = class extends Error {
|
|
145
|
+
name = "InvalidDocError";
|
|
146
|
+
constructor(doc) {
|
|
147
|
+
super(getDocErrorMessage(doc));
|
|
148
|
+
this.doc = doc;
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
var invalid_doc_error_default = InvalidDocError;
|
|
152
|
+
|
|
153
|
+
// src/document/utils/traverse-doc.js
|
|
154
|
+
var traverseDocOnExitStackMarker = {};
|
|
155
|
+
function traverseDoc(doc, onEnter, onExit, shouldTraverseConditionalGroups) {
|
|
156
|
+
const docsStack = [doc];
|
|
157
|
+
while (docsStack.length > 0) {
|
|
158
|
+
const doc2 = docsStack.pop();
|
|
159
|
+
if (doc2 === traverseDocOnExitStackMarker) {
|
|
160
|
+
onExit(docsStack.pop());
|
|
161
|
+
continue;
|
|
162
|
+
}
|
|
163
|
+
if (onExit) {
|
|
164
|
+
docsStack.push(doc2, traverseDocOnExitStackMarker);
|
|
165
|
+
}
|
|
166
|
+
const docType = get_doc_type_default(doc2);
|
|
167
|
+
if (!docType) {
|
|
168
|
+
throw new invalid_doc_error_default(doc2);
|
|
169
|
+
}
|
|
170
|
+
if ((onEnter == null ? void 0 : onEnter(doc2)) === false) {
|
|
171
|
+
continue;
|
|
172
|
+
}
|
|
173
|
+
switch (docType) {
|
|
174
|
+
case DOC_TYPE_ARRAY:
|
|
175
|
+
case DOC_TYPE_FILL: {
|
|
176
|
+
const parts = docType === DOC_TYPE_ARRAY ? doc2 : doc2.parts;
|
|
177
|
+
for (let ic = parts.length, i = ic - 1; i >= 0; --i) {
|
|
178
|
+
docsStack.push(parts[i]);
|
|
179
|
+
}
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
182
|
+
case DOC_TYPE_IF_BREAK:
|
|
183
|
+
docsStack.push(doc2.flatContents, doc2.breakContents);
|
|
184
|
+
break;
|
|
185
|
+
case DOC_TYPE_GROUP:
|
|
186
|
+
if (shouldTraverseConditionalGroups && doc2.expandedStates) {
|
|
187
|
+
for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) {
|
|
188
|
+
docsStack.push(doc2.expandedStates[i]);
|
|
189
|
+
}
|
|
190
|
+
} else {
|
|
191
|
+
docsStack.push(doc2.contents);
|
|
192
|
+
}
|
|
193
|
+
break;
|
|
194
|
+
case DOC_TYPE_ALIGN:
|
|
195
|
+
case DOC_TYPE_INDENT:
|
|
196
|
+
case DOC_TYPE_INDENT_IF_BREAK:
|
|
197
|
+
case DOC_TYPE_LABEL:
|
|
198
|
+
case DOC_TYPE_LINE_SUFFIX:
|
|
199
|
+
docsStack.push(doc2.contents);
|
|
200
|
+
break;
|
|
201
|
+
case DOC_TYPE_STRING:
|
|
202
|
+
case DOC_TYPE_CURSOR:
|
|
203
|
+
case DOC_TYPE_TRIM:
|
|
204
|
+
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
205
|
+
case DOC_TYPE_LINE:
|
|
206
|
+
case DOC_TYPE_BREAK_PARENT:
|
|
207
|
+
break;
|
|
208
|
+
default:
|
|
209
|
+
throw new invalid_doc_error_default(doc2);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
var traverse_doc_default = traverseDoc;
|
|
214
|
+
|
|
215
|
+
// src/document/utils/assert-doc.js
|
|
216
|
+
var noop = () => {
|
|
217
|
+
};
|
|
218
|
+
var assertDoc = true ? noop : function(doc) {
|
|
219
|
+
traverse_doc_default(doc, (doc2) => {
|
|
220
|
+
if (checked.has(doc2)) {
|
|
221
|
+
return false;
|
|
222
|
+
}
|
|
223
|
+
if (typeof doc2 !== "string") {
|
|
224
|
+
checked.add(doc2);
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
};
|
|
228
|
+
var assertDocArray = true ? noop : function(docs, optional = false) {
|
|
229
|
+
if (optional && !docs) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
if (!Array.isArray(docs)) {
|
|
233
|
+
throw new TypeError("Unexpected doc array.");
|
|
234
|
+
}
|
|
235
|
+
for (const doc of docs) {
|
|
236
|
+
assertDoc(doc);
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
|
|
152
240
|
// src/document/builders.js
|
|
153
241
|
function indent(contents) {
|
|
154
|
-
|
|
155
|
-
assertDoc(contents);
|
|
156
|
-
}
|
|
242
|
+
assertDoc(contents);
|
|
157
243
|
return { type: DOC_TYPE_INDENT, contents };
|
|
158
244
|
}
|
|
159
245
|
function align(widthOrString, contents) {
|
|
160
|
-
|
|
161
|
-
assertDoc(contents);
|
|
162
|
-
}
|
|
246
|
+
assertDoc(contents);
|
|
163
247
|
return { type: DOC_TYPE_ALIGN, contents, n: widthOrString };
|
|
164
248
|
}
|
|
165
249
|
function group(contents, opts = {}) {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
250
|
+
assertDoc(contents);
|
|
251
|
+
assertDocArray(
|
|
252
|
+
opts.expandedStates,
|
|
253
|
+
/* optional */
|
|
254
|
+
true
|
|
255
|
+
);
|
|
169
256
|
return {
|
|
170
257
|
type: DOC_TYPE_GROUP,
|
|
171
258
|
id: opts.id,
|
|
@@ -187,21 +274,13 @@
|
|
|
187
274
|
return group(states[0], { ...opts, expandedStates: states });
|
|
188
275
|
}
|
|
189
276
|
function fill(parts) {
|
|
190
|
-
|
|
191
|
-
for (const part of parts) {
|
|
192
|
-
assertDoc(part);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
277
|
+
assertDocArray(parts);
|
|
195
278
|
return { type: DOC_TYPE_FILL, parts };
|
|
196
279
|
}
|
|
197
|
-
function ifBreak(breakContents, flatContents, opts = {}) {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
}
|
|
202
|
-
if (flatContents) {
|
|
203
|
-
assertDoc(flatContents);
|
|
204
|
-
}
|
|
280
|
+
function ifBreak(breakContents, flatContents = "", opts = {}) {
|
|
281
|
+
assertDoc(breakContents);
|
|
282
|
+
if (flatContents !== "") {
|
|
283
|
+
assertDoc(flatContents);
|
|
205
284
|
}
|
|
206
285
|
return {
|
|
207
286
|
type: DOC_TYPE_IF_BREAK,
|
|
@@ -211,6 +290,7 @@
|
|
|
211
290
|
};
|
|
212
291
|
}
|
|
213
292
|
function indentIfBreak(contents, opts) {
|
|
293
|
+
assertDoc(contents);
|
|
214
294
|
return {
|
|
215
295
|
type: DOC_TYPE_INDENT_IF_BREAK,
|
|
216
296
|
contents,
|
|
@@ -219,9 +299,7 @@
|
|
|
219
299
|
};
|
|
220
300
|
}
|
|
221
301
|
function lineSuffix(contents) {
|
|
222
|
-
|
|
223
|
-
assertDoc(contents);
|
|
224
|
-
}
|
|
302
|
+
assertDoc(contents);
|
|
225
303
|
return { type: DOC_TYPE_LINE_SUFFIX, contents };
|
|
226
304
|
}
|
|
227
305
|
var lineSuffixBoundary = { type: DOC_TYPE_LINE_SUFFIX_BOUNDARY };
|
|
@@ -238,17 +316,20 @@
|
|
|
238
316
|
var hardline = [hardlineWithoutBreakParent, breakParent];
|
|
239
317
|
var literalline = [literallineWithoutBreakParent, breakParent];
|
|
240
318
|
var cursor = { type: DOC_TYPE_CURSOR };
|
|
241
|
-
function join(
|
|
242
|
-
|
|
243
|
-
|
|
319
|
+
function join(separator, docs) {
|
|
320
|
+
assertDoc(separator);
|
|
321
|
+
assertDocArray(docs);
|
|
322
|
+
const parts = [];
|
|
323
|
+
for (let i = 0; i < docs.length; i++) {
|
|
244
324
|
if (i !== 0) {
|
|
245
|
-
|
|
325
|
+
parts.push(separator);
|
|
246
326
|
}
|
|
247
|
-
|
|
327
|
+
parts.push(docs[i]);
|
|
248
328
|
}
|
|
249
|
-
return
|
|
329
|
+
return parts;
|
|
250
330
|
}
|
|
251
331
|
function addAlignmentToDoc(doc, size, tabWidth) {
|
|
332
|
+
assertDoc(doc);
|
|
252
333
|
let aligned = doc;
|
|
253
334
|
if (size > 0) {
|
|
254
335
|
for (let i = 0; i < Math.floor(size / tabWidth); ++i) {
|
|
@@ -260,29 +341,38 @@
|
|
|
260
341
|
return aligned;
|
|
261
342
|
}
|
|
262
343
|
function label(label2, contents) {
|
|
344
|
+
assertDoc(contents);
|
|
263
345
|
return label2 ? { type: DOC_TYPE_LABEL, label: label2, contents } : contents;
|
|
264
346
|
}
|
|
265
|
-
var concat = (parts) => parts;
|
|
266
|
-
|
|
267
|
-
// src/document/printer.js
|
|
268
|
-
var printer_exports = {};
|
|
269
|
-
__export(printer_exports, {
|
|
270
|
-
printDocToString: () => printDocToString
|
|
271
|
-
});
|
|
272
|
-
init_define_process();
|
|
273
347
|
|
|
274
348
|
// scripts/build/shims/at.js
|
|
275
|
-
|
|
276
|
-
var at = (isOptionalObject, object, index, ...args) => {
|
|
349
|
+
var at = (isOptionalObject, object, index) => {
|
|
277
350
|
if (isOptionalObject && (object === void 0 || object === null)) {
|
|
278
351
|
return;
|
|
279
352
|
}
|
|
280
|
-
|
|
353
|
+
if (Array.isArray(object) || typeof object === "string") {
|
|
354
|
+
return object[index < 0 ? object.length + index : index];
|
|
355
|
+
}
|
|
356
|
+
return object.at(index);
|
|
281
357
|
};
|
|
282
358
|
var at_default = at;
|
|
283
359
|
|
|
360
|
+
// scripts/build/shims/string-replace-all.js
|
|
361
|
+
var stringReplaceAll = (isOptionalObject, original, pattern, replacement) => {
|
|
362
|
+
if (isOptionalObject && (original === void 0 || original === null)) {
|
|
363
|
+
return;
|
|
364
|
+
}
|
|
365
|
+
if (original.replaceAll) {
|
|
366
|
+
return original.replaceAll(pattern, replacement);
|
|
367
|
+
}
|
|
368
|
+
if (pattern.global) {
|
|
369
|
+
return original.replace(pattern, replacement);
|
|
370
|
+
}
|
|
371
|
+
return original.split(pattern).join(replacement);
|
|
372
|
+
};
|
|
373
|
+
var string_replace_all_default = stringReplaceAll;
|
|
374
|
+
|
|
284
375
|
// src/common/end-of-line.js
|
|
285
|
-
init_define_process();
|
|
286
376
|
function convertEndOfLineToChars(value) {
|
|
287
377
|
switch (value) {
|
|
288
378
|
case "cr":
|
|
@@ -294,17 +384,7 @@
|
|
|
294
384
|
}
|
|
295
385
|
}
|
|
296
386
|
|
|
297
|
-
// src/utils/get-string-width.js
|
|
298
|
-
init_define_process();
|
|
299
|
-
|
|
300
|
-
// node_modules/string-width/index.js
|
|
301
|
-
init_define_process();
|
|
302
|
-
|
|
303
|
-
// node_modules/strip-ansi/index.js
|
|
304
|
-
init_define_process();
|
|
305
|
-
|
|
306
387
|
// node_modules/strip-ansi/node_modules/ansi-regex/index.js
|
|
307
|
-
init_define_process();
|
|
308
388
|
function ansiRegex({ onlyFirst = false } = {}) {
|
|
309
389
|
const pattern = [
|
|
310
390
|
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
|
@@ -322,12 +402,26 @@
|
|
|
322
402
|
}
|
|
323
403
|
|
|
324
404
|
// node_modules/string-width/node_modules/is-fullwidth-code-point/index.js
|
|
325
|
-
init_define_process();
|
|
326
405
|
function isFullwidthCodePoint(codePoint) {
|
|
327
406
|
if (!Number.isInteger(codePoint)) {
|
|
328
407
|
return false;
|
|
329
408
|
}
|
|
330
|
-
return codePoint >= 4352 && (codePoint <= 4447 ||
|
|
409
|
+
return codePoint >= 4352 && (codePoint <= 4447 || // Hangul Jamo
|
|
410
|
+
codePoint === 9001 || // LEFT-POINTING ANGLE BRACKET
|
|
411
|
+
codePoint === 9002 || // RIGHT-POINTING ANGLE BRACKET
|
|
412
|
+
// CJK Radicals Supplement .. Enclosed CJK Letters and Months
|
|
413
|
+
11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A
|
|
414
|
+
12880 <= codePoint && codePoint <= 19903 || // CJK Unified Ideographs .. Yi Radicals
|
|
415
|
+
19968 <= codePoint && codePoint <= 42182 || // Hangul Jamo Extended-A
|
|
416
|
+
43360 <= codePoint && codePoint <= 43388 || // Hangul Syllables
|
|
417
|
+
44032 <= codePoint && codePoint <= 55203 || // CJK Compatibility Ideographs
|
|
418
|
+
63744 <= codePoint && codePoint <= 64255 || // Vertical Forms
|
|
419
|
+
65040 <= codePoint && codePoint <= 65049 || // CJK Compatibility Forms .. Small Form Variants
|
|
420
|
+
65072 <= codePoint && codePoint <= 65131 || // Halfwidth and Fullwidth Forms
|
|
421
|
+
65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || // Kana Supplement
|
|
422
|
+
110592 <= codePoint && codePoint <= 110593 || // Enclosed Ideographic Supplement
|
|
423
|
+
127488 <= codePoint && codePoint <= 127569 || // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane
|
|
424
|
+
131072 <= codePoint && codePoint <= 262141);
|
|
331
425
|
}
|
|
332
426
|
|
|
333
427
|
// node_modules/string-width/index.js
|
|
@@ -371,141 +465,6 @@
|
|
|
371
465
|
}
|
|
372
466
|
var get_string_width_default = getStringWidth;
|
|
373
467
|
|
|
374
|
-
// src/document/utils.js
|
|
375
|
-
var utils_exports = {};
|
|
376
|
-
__export(utils_exports, {
|
|
377
|
-
canBreak: () => canBreak,
|
|
378
|
-
cleanDoc: () => cleanDoc,
|
|
379
|
-
findInDoc: () => findInDoc,
|
|
380
|
-
getDocParts: () => getDocParts,
|
|
381
|
-
getDocType: () => get_doc_type_default,
|
|
382
|
-
mapDoc: () => mapDoc,
|
|
383
|
-
normalizeDoc: () => normalizeDoc,
|
|
384
|
-
normalizeParts: () => normalizeParts,
|
|
385
|
-
propagateBreaks: () => propagateBreaks,
|
|
386
|
-
removeLines: () => removeLines,
|
|
387
|
-
replaceEndOfLine: () => replaceEndOfLine,
|
|
388
|
-
stripTrailingHardline: () => stripTrailingHardline,
|
|
389
|
-
traverseDoc: () => traverse_doc_default,
|
|
390
|
-
willBreak: () => willBreak
|
|
391
|
-
});
|
|
392
|
-
init_define_process();
|
|
393
|
-
|
|
394
|
-
// src/document/utils/get-doc-type.js
|
|
395
|
-
init_define_process();
|
|
396
|
-
function getDocType(doc) {
|
|
397
|
-
if (typeof doc === "string") {
|
|
398
|
-
return DOC_TYPE_STRING;
|
|
399
|
-
}
|
|
400
|
-
if (Array.isArray(doc)) {
|
|
401
|
-
return DOC_TYPE_ARRAY;
|
|
402
|
-
}
|
|
403
|
-
if (!doc) {
|
|
404
|
-
return;
|
|
405
|
-
}
|
|
406
|
-
const { type } = doc;
|
|
407
|
-
if (VALID_OBJECT_DOC_TYPES.has(type)) {
|
|
408
|
-
return type;
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
var get_doc_type_default = getDocType;
|
|
412
|
-
|
|
413
|
-
// src/document/utils/traverse-doc.js
|
|
414
|
-
init_define_process();
|
|
415
|
-
|
|
416
|
-
// src/document/invalid-doc-error.js
|
|
417
|
-
init_define_process();
|
|
418
|
-
var disjunctionListFormat = (list) => [...list.slice(0, -1), `or ${at_default(false, list, -1)}`].join(", ");
|
|
419
|
-
function getDocErrorMessage(doc) {
|
|
420
|
-
const type = doc === null ? null : typeof doc;
|
|
421
|
-
if (type !== "string" && type !== "object") {
|
|
422
|
-
return `Unexpected doc '${type}',
|
|
423
|
-
Expected it to be 'string' or 'object'.`;
|
|
424
|
-
}
|
|
425
|
-
if (get_doc_type_default(doc)) {
|
|
426
|
-
throw new Error("doc is valid.");
|
|
427
|
-
}
|
|
428
|
-
const objectType = Object.prototype.toString.call(doc);
|
|
429
|
-
if (objectType !== "[object Object]") {
|
|
430
|
-
return `Unexpected doc '${objectType}'.`;
|
|
431
|
-
}
|
|
432
|
-
const EXPECTED_TYPE_VALUES = disjunctionListFormat([...VALID_OBJECT_DOC_TYPES].map((type2) => `'${type2}'`));
|
|
433
|
-
return `Unexpected doc.type '${doc.type}'.
|
|
434
|
-
Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
435
|
-
}
|
|
436
|
-
var InvalidDocError = class extends Error {
|
|
437
|
-
constructor(doc) {
|
|
438
|
-
super(getDocErrorMessage(doc));
|
|
439
|
-
__publicField(this, "name", "InvalidDocError");
|
|
440
|
-
this.doc = doc;
|
|
441
|
-
}
|
|
442
|
-
};
|
|
443
|
-
var invalid_doc_error_default = InvalidDocError;
|
|
444
|
-
|
|
445
|
-
// src/document/utils/traverse-doc.js
|
|
446
|
-
var traverseDocOnExitStackMarker = {};
|
|
447
|
-
function traverseDoc(doc, onEnter, onExit, shouldTraverseConditionalGroups) {
|
|
448
|
-
const docsStack = [doc];
|
|
449
|
-
while (docsStack.length > 0) {
|
|
450
|
-
const doc2 = docsStack.pop();
|
|
451
|
-
if (doc2 === traverseDocOnExitStackMarker) {
|
|
452
|
-
onExit(docsStack.pop());
|
|
453
|
-
continue;
|
|
454
|
-
}
|
|
455
|
-
if (onExit) {
|
|
456
|
-
docsStack.push(doc2, traverseDocOnExitStackMarker);
|
|
457
|
-
}
|
|
458
|
-
if ((onEnter == null ? void 0 : onEnter(doc2)) === false) {
|
|
459
|
-
continue;
|
|
460
|
-
}
|
|
461
|
-
const docType = get_doc_type_default(doc2);
|
|
462
|
-
switch (docType) {
|
|
463
|
-
case DOC_TYPE_ARRAY:
|
|
464
|
-
case DOC_TYPE_FILL: {
|
|
465
|
-
const parts = docType === DOC_TYPE_ARRAY ? doc2 : doc2.parts;
|
|
466
|
-
for (let ic = parts.length, i = ic - 1; i >= 0; --i) {
|
|
467
|
-
docsStack.push(parts[i]);
|
|
468
|
-
}
|
|
469
|
-
break;
|
|
470
|
-
}
|
|
471
|
-
case DOC_TYPE_IF_BREAK:
|
|
472
|
-
if (doc2.flatContents) {
|
|
473
|
-
docsStack.push(doc2.flatContents);
|
|
474
|
-
}
|
|
475
|
-
if (doc2.breakContents) {
|
|
476
|
-
docsStack.push(doc2.breakContents);
|
|
477
|
-
}
|
|
478
|
-
break;
|
|
479
|
-
case DOC_TYPE_GROUP:
|
|
480
|
-
if (shouldTraverseConditionalGroups && doc2.expandedStates) {
|
|
481
|
-
for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) {
|
|
482
|
-
docsStack.push(doc2.expandedStates[i]);
|
|
483
|
-
}
|
|
484
|
-
} else {
|
|
485
|
-
docsStack.push(doc2.contents);
|
|
486
|
-
}
|
|
487
|
-
break;
|
|
488
|
-
case DOC_TYPE_ALIGN:
|
|
489
|
-
case DOC_TYPE_INDENT:
|
|
490
|
-
case DOC_TYPE_INDENT_IF_BREAK:
|
|
491
|
-
case DOC_TYPE_LABEL:
|
|
492
|
-
case DOC_TYPE_LINE_SUFFIX:
|
|
493
|
-
docsStack.push(doc2.contents);
|
|
494
|
-
break;
|
|
495
|
-
case DOC_TYPE_STRING:
|
|
496
|
-
case DOC_TYPE_CURSOR:
|
|
497
|
-
case DOC_TYPE_TRIM:
|
|
498
|
-
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
499
|
-
case DOC_TYPE_LINE:
|
|
500
|
-
case DOC_TYPE_BREAK_PARENT:
|
|
501
|
-
break;
|
|
502
|
-
default:
|
|
503
|
-
throw new invalid_doc_error_default(doc2);
|
|
504
|
-
}
|
|
505
|
-
}
|
|
506
|
-
}
|
|
507
|
-
var traverse_doc_default = traverseDoc;
|
|
508
|
-
|
|
509
468
|
// src/document/utils.js
|
|
510
469
|
var getDocParts = (doc) => {
|
|
511
470
|
if (Array.isArray(doc)) {
|
|
@@ -539,19 +498,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
539
498
|
...doc2,
|
|
540
499
|
parts: doc2.parts.map(rec)
|
|
541
500
|
});
|
|
542
|
-
case DOC_TYPE_IF_BREAK:
|
|
543
|
-
let {
|
|
544
|
-
breakContents,
|
|
545
|
-
flatContents
|
|
546
|
-
} = doc2;
|
|
547
|
-
breakContents && (breakContents = rec(breakContents));
|
|
548
|
-
flatContents && (flatContents = rec(flatContents));
|
|
501
|
+
case DOC_TYPE_IF_BREAK:
|
|
549
502
|
return cb({
|
|
550
503
|
...doc2,
|
|
551
|
-
breakContents,
|
|
552
|
-
flatContents
|
|
504
|
+
breakContents: rec(doc2.breakContents),
|
|
505
|
+
flatContents: rec(doc2.flatContents)
|
|
553
506
|
});
|
|
554
|
-
}
|
|
555
507
|
case DOC_TYPE_GROUP: {
|
|
556
508
|
let {
|
|
557
509
|
expandedStates,
|
|
@@ -622,7 +574,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
622
574
|
}
|
|
623
575
|
function breakParentGroup(groupStack) {
|
|
624
576
|
if (groupStack.length > 0) {
|
|
625
|
-
const parentGroup = at_default(
|
|
577
|
+
const parentGroup = at_default(
|
|
578
|
+
/* isOptionalObject*/
|
|
579
|
+
false,
|
|
580
|
+
groupStack,
|
|
581
|
+
-1
|
|
582
|
+
);
|
|
626
583
|
if (!parentGroup.expandedStates && !parentGroup.break) {
|
|
627
584
|
parentGroup.break = "propagated";
|
|
628
585
|
}
|
|
@@ -656,6 +613,7 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
656
613
|
doc,
|
|
657
614
|
propagateBreaksOnEnterFn,
|
|
658
615
|
propagateBreaksOnExitFn,
|
|
616
|
+
/* shouldTraverseConditionalGroups */
|
|
659
617
|
true
|
|
660
618
|
);
|
|
661
619
|
}
|
|
@@ -664,62 +622,81 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
664
622
|
return doc.soft ? "" : " ";
|
|
665
623
|
}
|
|
666
624
|
if (doc.type === DOC_TYPE_IF_BREAK) {
|
|
667
|
-
return doc.flatContents
|
|
625
|
+
return doc.flatContents;
|
|
668
626
|
}
|
|
669
627
|
return doc;
|
|
670
628
|
}
|
|
671
629
|
function removeLines(doc) {
|
|
672
630
|
return mapDoc(doc, removeLinesFn);
|
|
673
631
|
}
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
632
|
+
function stripTrailingHardlineFromParts(parts) {
|
|
633
|
+
parts = [...parts];
|
|
634
|
+
while (parts.length >= 2 && at_default(
|
|
635
|
+
/* isOptionalObject*/
|
|
636
|
+
false,
|
|
637
|
+
parts,
|
|
638
|
+
-2
|
|
639
|
+
).type === DOC_TYPE_LINE && at_default(
|
|
640
|
+
/* isOptionalObject*/
|
|
641
|
+
false,
|
|
642
|
+
parts,
|
|
643
|
+
-1
|
|
644
|
+
).type === DOC_TYPE_BREAK_PARENT) {
|
|
645
|
+
parts.length -= 2;
|
|
646
|
+
}
|
|
647
|
+
if (parts.length > 0) {
|
|
648
|
+
const lastPart = stripTrailingHardlineFromDoc(at_default(
|
|
649
|
+
/* isOptionalObject*/
|
|
650
|
+
false,
|
|
651
|
+
parts,
|
|
652
|
+
-1
|
|
653
|
+
));
|
|
654
|
+
parts[parts.length - 1] = lastPart;
|
|
655
|
+
}
|
|
656
|
+
return parts;
|
|
657
|
+
}
|
|
658
|
+
function stripTrailingHardlineFromDoc(doc) {
|
|
659
|
+
switch (get_doc_type_default(doc)) {
|
|
694
660
|
case DOC_TYPE_ALIGN:
|
|
695
661
|
case DOC_TYPE_INDENT:
|
|
696
662
|
case DOC_TYPE_INDENT_IF_BREAK:
|
|
697
663
|
case DOC_TYPE_GROUP:
|
|
698
664
|
case DOC_TYPE_LINE_SUFFIX:
|
|
699
665
|
case DOC_TYPE_LABEL: {
|
|
700
|
-
const contents =
|
|
666
|
+
const contents = stripTrailingHardlineFromDoc(doc.contents);
|
|
701
667
|
return {
|
|
702
668
|
...doc,
|
|
703
669
|
contents
|
|
704
670
|
};
|
|
705
671
|
}
|
|
706
|
-
case DOC_TYPE_IF_BREAK:
|
|
707
|
-
const breakContents = stripDocTrailingHardlineFromDoc(doc.breakContents);
|
|
708
|
-
const flatContents = stripDocTrailingHardlineFromDoc(doc.flatContents);
|
|
672
|
+
case DOC_TYPE_IF_BREAK:
|
|
709
673
|
return {
|
|
710
674
|
...doc,
|
|
711
|
-
breakContents,
|
|
712
|
-
flatContents
|
|
675
|
+
breakContents: stripTrailingHardlineFromDoc(doc.breakContents),
|
|
676
|
+
flatContents: stripTrailingHardlineFromDoc(doc.flatContents)
|
|
713
677
|
};
|
|
714
|
-
|
|
678
|
+
case DOC_TYPE_FILL:
|
|
679
|
+
return {
|
|
680
|
+
...doc,
|
|
681
|
+
parts: stripTrailingHardlineFromParts(doc.parts)
|
|
682
|
+
};
|
|
683
|
+
case DOC_TYPE_ARRAY:
|
|
684
|
+
return stripTrailingHardlineFromParts(doc);
|
|
685
|
+
case DOC_TYPE_STRING:
|
|
686
|
+
return doc.replace(/[\n\r]*$/, "");
|
|
687
|
+
case DOC_TYPE_CURSOR:
|
|
688
|
+
case DOC_TYPE_TRIM:
|
|
689
|
+
case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
|
|
690
|
+
case DOC_TYPE_LINE:
|
|
691
|
+
case DOC_TYPE_BREAK_PARENT:
|
|
692
|
+
break;
|
|
693
|
+
default:
|
|
694
|
+
throw new invalid_doc_error_default(doc);
|
|
715
695
|
}
|
|
716
696
|
return doc;
|
|
717
697
|
}
|
|
718
698
|
function stripTrailingHardline(doc) {
|
|
719
|
-
|
|
720
|
-
return doc.replace(/(?:\r?\n)*$/, "");
|
|
721
|
-
}
|
|
722
|
-
return stripDocTrailingHardlineFromDoc(cleanDoc(doc));
|
|
699
|
+
return stripTrailingHardlineFromDoc(cleanDoc(doc));
|
|
723
700
|
}
|
|
724
701
|
function cleanDocFn(doc) {
|
|
725
702
|
switch (get_doc_type_default(doc)) {
|
|
@@ -756,7 +733,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
756
733
|
continue;
|
|
757
734
|
}
|
|
758
735
|
const [currentPart, ...restParts] = Array.isArray(part) ? part : [part];
|
|
759
|
-
if (typeof currentPart === "string" && typeof at_default(
|
|
736
|
+
if (typeof currentPart === "string" && typeof at_default(
|
|
737
|
+
/* isOptionalObject*/
|
|
738
|
+
false,
|
|
739
|
+
parts,
|
|
740
|
+
-1
|
|
741
|
+
) === "string") {
|
|
760
742
|
parts[parts.length - 1] += currentPart;
|
|
761
743
|
} else {
|
|
762
744
|
parts.push(currentPart);
|
|
@@ -787,40 +769,6 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
787
769
|
function cleanDoc(doc) {
|
|
788
770
|
return mapDoc(doc, (currentDoc) => cleanDocFn(currentDoc));
|
|
789
771
|
}
|
|
790
|
-
function normalizeParts(parts) {
|
|
791
|
-
const newParts = [];
|
|
792
|
-
const restParts = parts.filter(Boolean);
|
|
793
|
-
while (restParts.length > 0) {
|
|
794
|
-
const part = restParts.shift();
|
|
795
|
-
if (!part) {
|
|
796
|
-
continue;
|
|
797
|
-
}
|
|
798
|
-
if (Array.isArray(part)) {
|
|
799
|
-
restParts.unshift(...part);
|
|
800
|
-
continue;
|
|
801
|
-
}
|
|
802
|
-
if (newParts.length > 0 && typeof at_default(false, newParts, -1) === "string" && typeof part === "string") {
|
|
803
|
-
newParts[newParts.length - 1] += part;
|
|
804
|
-
continue;
|
|
805
|
-
}
|
|
806
|
-
newParts.push(part);
|
|
807
|
-
}
|
|
808
|
-
return newParts;
|
|
809
|
-
}
|
|
810
|
-
function normalizeDoc(doc) {
|
|
811
|
-
return mapDoc(doc, (currentDoc) => {
|
|
812
|
-
if (Array.isArray(currentDoc)) {
|
|
813
|
-
return normalizeParts(currentDoc);
|
|
814
|
-
}
|
|
815
|
-
if (!currentDoc.parts) {
|
|
816
|
-
return currentDoc;
|
|
817
|
-
}
|
|
818
|
-
return {
|
|
819
|
-
...currentDoc,
|
|
820
|
-
parts: normalizeParts(currentDoc.parts)
|
|
821
|
-
};
|
|
822
|
-
});
|
|
823
|
-
}
|
|
824
772
|
function replaceEndOfLine(doc, replacement = literalline) {
|
|
825
773
|
return mapDoc(doc, (currentDoc) => typeof currentDoc === "string" ? join(replacement, currentDoc.split("\n")) : currentDoc);
|
|
826
774
|
}
|
|
@@ -974,6 +922,9 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
974
922
|
return trimCount;
|
|
975
923
|
}
|
|
976
924
|
function fits(next, restCommands, width, hasLineSuffix, groupModeMap, mustBeFlat) {
|
|
925
|
+
if (width === Number.POSITIVE_INFINITY) {
|
|
926
|
+
return true;
|
|
927
|
+
}
|
|
977
928
|
let restIdx = restCommands.length;
|
|
978
929
|
const cmds = [next];
|
|
979
930
|
const out = [];
|
|
@@ -1022,7 +973,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
1022
973
|
return false;
|
|
1023
974
|
}
|
|
1024
975
|
const groupMode = doc.break ? MODE_BREAK : mode;
|
|
1025
|
-
const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default(
|
|
976
|
+
const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default(
|
|
977
|
+
/* isOptionalObject*/
|
|
978
|
+
false,
|
|
979
|
+
doc.expandedStates,
|
|
980
|
+
-1
|
|
981
|
+
) : doc.contents;
|
|
1026
982
|
cmds.push({
|
|
1027
983
|
mode: groupMode,
|
|
1028
984
|
doc: contents
|
|
@@ -1075,6 +1031,7 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
1075
1031
|
let shouldRemeasure = false;
|
|
1076
1032
|
const lineSuffix2 = [];
|
|
1077
1033
|
let printedCursorCount = 0;
|
|
1034
|
+
propagateBreaks(doc);
|
|
1078
1035
|
while (cmds.length > 0) {
|
|
1079
1036
|
const {
|
|
1080
1037
|
ind,
|
|
@@ -1083,9 +1040,17 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
1083
1040
|
} = cmds.pop();
|
|
1084
1041
|
switch (get_doc_type_default(doc2)) {
|
|
1085
1042
|
case DOC_TYPE_STRING: {
|
|
1086
|
-
const formatted = newLine !== "\n" ?
|
|
1043
|
+
const formatted = newLine !== "\n" ? string_replace_all_default(
|
|
1044
|
+
/* isOptionalObject*/
|
|
1045
|
+
false,
|
|
1046
|
+
doc2,
|
|
1047
|
+
"\n",
|
|
1048
|
+
newLine
|
|
1049
|
+
) : doc2;
|
|
1087
1050
|
out.push(formatted);
|
|
1088
|
-
|
|
1051
|
+
if (cmds.length > 0) {
|
|
1052
|
+
pos += get_string_width_default(formatted);
|
|
1053
|
+
}
|
|
1089
1054
|
break;
|
|
1090
1055
|
}
|
|
1091
1056
|
case DOC_TYPE_ARRAY:
|
|
@@ -1145,7 +1110,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
1145
1110
|
cmds.push(next);
|
|
1146
1111
|
} else {
|
|
1147
1112
|
if (doc2.expandedStates) {
|
|
1148
|
-
const mostExpanded = at_default(
|
|
1113
|
+
const mostExpanded = at_default(
|
|
1114
|
+
/* isOptionalObject*/
|
|
1115
|
+
false,
|
|
1116
|
+
doc2.expandedStates,
|
|
1117
|
+
-1
|
|
1118
|
+
);
|
|
1149
1119
|
if (doc2.break) {
|
|
1150
1120
|
cmds.push({
|
|
1151
1121
|
ind,
|
|
@@ -1188,7 +1158,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
1188
1158
|
}
|
|
1189
1159
|
}
|
|
1190
1160
|
if (doc2.id) {
|
|
1191
|
-
groupModeMap[doc2.id] = at_default(
|
|
1161
|
+
groupModeMap[doc2.id] = at_default(
|
|
1162
|
+
/* isOptionalObject*/
|
|
1163
|
+
false,
|
|
1164
|
+
cmds,
|
|
1165
|
+
-1
|
|
1166
|
+
).mode;
|
|
1192
1167
|
}
|
|
1193
1168
|
break;
|
|
1194
1169
|
case DOC_TYPE_FILL: {
|
|
@@ -1372,148 +1347,45 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
|
|
|
1372
1347
|
};
|
|
1373
1348
|
}
|
|
1374
1349
|
|
|
1375
|
-
// src/document/
|
|
1376
|
-
var
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
if (doc.contents) {
|
|
1417
|
-
return { ...doc, contents: flattenDoc(doc.contents) };
|
|
1418
|
-
}
|
|
1419
|
-
return doc;
|
|
1420
|
-
}
|
|
1421
|
-
function printDocToDebug(doc) {
|
|
1422
|
-
const printedSymbols = /* @__PURE__ */ Object.create(null);
|
|
1423
|
-
const usedKeysForSymbols = /* @__PURE__ */ new Set();
|
|
1424
|
-
return printDoc(flattenDoc(doc));
|
|
1425
|
-
function printDoc(doc2, index, parentParts) {
|
|
1426
|
-
if (typeof doc2 === "string") {
|
|
1427
|
-
return JSON.stringify(doc2);
|
|
1428
|
-
}
|
|
1429
|
-
if (Array.isArray(doc2)) {
|
|
1430
|
-
const printed = doc2.map(printDoc).filter(Boolean);
|
|
1431
|
-
return printed.length === 1 ? printed[0] : `[${printed.join(", ")}]`;
|
|
1432
|
-
}
|
|
1433
|
-
if (doc2.type === DOC_TYPE_LINE) {
|
|
1434
|
-
const withBreakParent = Array.isArray(parentParts) && parentParts[index + 1] && parentParts[index + 1].type === DOC_TYPE_BREAK_PARENT;
|
|
1435
|
-
if (doc2.literal) {
|
|
1436
|
-
return withBreakParent ? "literalline" : "literallineWithoutBreakParent";
|
|
1437
|
-
}
|
|
1438
|
-
if (doc2.hard) {
|
|
1439
|
-
return withBreakParent ? "hardline" : "hardlineWithoutBreakParent";
|
|
1440
|
-
}
|
|
1441
|
-
if (doc2.soft) {
|
|
1442
|
-
return "softline";
|
|
1443
|
-
}
|
|
1444
|
-
return "line";
|
|
1445
|
-
}
|
|
1446
|
-
if (doc2.type === DOC_TYPE_BREAK_PARENT) {
|
|
1447
|
-
const afterHardline = Array.isArray(parentParts) && parentParts[index - 1] && parentParts[index - 1].type === DOC_TYPE_LINE && parentParts[index - 1].hard;
|
|
1448
|
-
return afterHardline ? void 0 : "breakParent";
|
|
1449
|
-
}
|
|
1450
|
-
if (doc2.type === DOC_TYPE_TRIM) {
|
|
1451
|
-
return "trim";
|
|
1452
|
-
}
|
|
1453
|
-
if (doc2.type === DOC_TYPE_INDENT) {
|
|
1454
|
-
return "indent(" + printDoc(doc2.contents) + ")";
|
|
1455
|
-
}
|
|
1456
|
-
if (doc2.type === DOC_TYPE_ALIGN) {
|
|
1457
|
-
return doc2.n === Number.NEGATIVE_INFINITY ? "dedentToRoot(" + printDoc(doc2.contents) + ")" : doc2.n < 0 ? "dedent(" + printDoc(doc2.contents) + ")" : doc2.n.type === "root" ? "markAsRoot(" + printDoc(doc2.contents) + ")" : "align(" + JSON.stringify(doc2.n) + ", " + printDoc(doc2.contents) + ")";
|
|
1458
|
-
}
|
|
1459
|
-
if (doc2.type === DOC_TYPE_IF_BREAK) {
|
|
1460
|
-
return "ifBreak(" + printDoc(doc2.breakContents) + (doc2.flatContents ? ", " + printDoc(doc2.flatContents) : "") + (doc2.groupId ? (!doc2.flatContents ? ', ""' : "") + `, { groupId: ${printGroupId(doc2.groupId)} }` : "") + ")";
|
|
1461
|
-
}
|
|
1462
|
-
if (doc2.type === DOC_TYPE_INDENT_IF_BREAK) {
|
|
1463
|
-
const optionsParts = [];
|
|
1464
|
-
if (doc2.negate) {
|
|
1465
|
-
optionsParts.push("negate: true");
|
|
1466
|
-
}
|
|
1467
|
-
if (doc2.groupId) {
|
|
1468
|
-
optionsParts.push(`groupId: ${printGroupId(doc2.groupId)}`);
|
|
1469
|
-
}
|
|
1470
|
-
const options = optionsParts.length > 0 ? `, { ${optionsParts.join(", ")} }` : "";
|
|
1471
|
-
return `indentIfBreak(${printDoc(doc2.contents)}${options})`;
|
|
1472
|
-
}
|
|
1473
|
-
if (doc2.type === DOC_TYPE_GROUP) {
|
|
1474
|
-
const optionsParts = [];
|
|
1475
|
-
if (doc2.break && doc2.break !== "propagated") {
|
|
1476
|
-
optionsParts.push("shouldBreak: true");
|
|
1477
|
-
}
|
|
1478
|
-
if (doc2.id) {
|
|
1479
|
-
optionsParts.push(`id: ${printGroupId(doc2.id)}`);
|
|
1480
|
-
}
|
|
1481
|
-
const options = optionsParts.length > 0 ? `, { ${optionsParts.join(", ")} }` : "";
|
|
1482
|
-
if (doc2.expandedStates) {
|
|
1483
|
-
return `conditionalGroup([${doc2.expandedStates.map((part) => printDoc(part)).join(",")}]${options})`;
|
|
1484
|
-
}
|
|
1485
|
-
return `group(${printDoc(doc2.contents)}${options})`;
|
|
1486
|
-
}
|
|
1487
|
-
if (doc2.type === DOC_TYPE_FILL) {
|
|
1488
|
-
return `fill([${doc2.parts.map((part) => printDoc(part)).join(", ")}])`;
|
|
1489
|
-
}
|
|
1490
|
-
if (doc2.type === DOC_TYPE_LINE_SUFFIX) {
|
|
1491
|
-
return "lineSuffix(" + printDoc(doc2.contents) + ")";
|
|
1492
|
-
}
|
|
1493
|
-
if (doc2.type === DOC_TYPE_LINE_SUFFIX_BOUNDARY) {
|
|
1494
|
-
return "lineSuffixBoundary";
|
|
1495
|
-
}
|
|
1496
|
-
if (doc2.type === DOC_TYPE_LABEL) {
|
|
1497
|
-
return `label(${JSON.stringify(doc2.label)}, ${printDoc(doc2.contents)})`;
|
|
1498
|
-
}
|
|
1499
|
-
throw new Error("Unknown doc type " + doc2.type);
|
|
1500
|
-
}
|
|
1501
|
-
function printGroupId(id) {
|
|
1502
|
-
if (typeof id !== "symbol") {
|
|
1503
|
-
return JSON.stringify(String(id));
|
|
1504
|
-
}
|
|
1505
|
-
if (id in printedSymbols) {
|
|
1506
|
-
return printedSymbols[id];
|
|
1507
|
-
}
|
|
1508
|
-
const prefix = id.description || "symbol";
|
|
1509
|
-
for (let counter = 0; ; counter++) {
|
|
1510
|
-
const key = prefix + (counter > 0 ? ` #${counter}` : "");
|
|
1511
|
-
if (!usedKeysForSymbols.has(key)) {
|
|
1512
|
-
usedKeysForSymbols.add(key);
|
|
1513
|
-
return printedSymbols[id] = `Symbol.for(${JSON.stringify(key)})`;
|
|
1514
|
-
}
|
|
1515
|
-
}
|
|
1516
|
-
}
|
|
1517
|
-
}
|
|
1518
|
-
return __toCommonJS(document_exports);
|
|
1350
|
+
// src/document/public.js
|
|
1351
|
+
var builders = {
|
|
1352
|
+
join,
|
|
1353
|
+
line,
|
|
1354
|
+
softline,
|
|
1355
|
+
hardline,
|
|
1356
|
+
literalline,
|
|
1357
|
+
group,
|
|
1358
|
+
conditionalGroup,
|
|
1359
|
+
fill,
|
|
1360
|
+
lineSuffix,
|
|
1361
|
+
lineSuffixBoundary,
|
|
1362
|
+
cursor,
|
|
1363
|
+
breakParent,
|
|
1364
|
+
ifBreak,
|
|
1365
|
+
trim,
|
|
1366
|
+
indent,
|
|
1367
|
+
indentIfBreak,
|
|
1368
|
+
align,
|
|
1369
|
+
addAlignmentToDoc,
|
|
1370
|
+
markAsRoot,
|
|
1371
|
+
dedentToRoot,
|
|
1372
|
+
dedent,
|
|
1373
|
+
hardlineWithoutBreakParent,
|
|
1374
|
+
literallineWithoutBreakParent,
|
|
1375
|
+
label,
|
|
1376
|
+
// TODO: Remove this in v4
|
|
1377
|
+
concat: (parts) => parts
|
|
1378
|
+
};
|
|
1379
|
+
var printer = { printDocToString };
|
|
1380
|
+
var utils = {
|
|
1381
|
+
willBreak,
|
|
1382
|
+
traverseDoc: traverse_doc_default,
|
|
1383
|
+
findInDoc,
|
|
1384
|
+
mapDoc,
|
|
1385
|
+
removeLines,
|
|
1386
|
+
stripTrailingHardline,
|
|
1387
|
+
replaceEndOfLine,
|
|
1388
|
+
canBreak
|
|
1389
|
+
};
|
|
1390
|
+
return __toCommonJS(public_exports);
|
|
1519
1391
|
});
|