prettier 3.0.0-alpha.4 → 3.0.0-alpha.5

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.
Files changed (50) hide show
  1. package/LICENSE +849 -415
  2. package/README.md +3 -3
  3. package/doc.d.ts +248 -0
  4. package/doc.js +274 -199
  5. package/doc.mjs +269 -194
  6. package/index.cjs +380 -201
  7. package/index.d.ts +903 -0
  8. package/index.mjs +7539 -5795
  9. package/internal/cli.mjs +2025 -3219
  10. package/internal/third-party.mjs +2948 -5593
  11. package/package.json +32 -1
  12. package/plugins/acorn-and-espree.d.ts +10 -0
  13. package/plugins/acorn-and-espree.js +12 -12
  14. package/plugins/acorn-and-espree.mjs +12 -12
  15. package/plugins/angular.d.ts +11 -0
  16. package/plugins/angular.js +2 -2
  17. package/plugins/angular.mjs +2 -2
  18. package/plugins/babel.d.ts +16 -0
  19. package/plugins/babel.js +13 -13
  20. package/plugins/babel.mjs +13 -13
  21. package/plugins/flow.d.ts +8 -0
  22. package/plugins/flow.js +20 -20
  23. package/plugins/flow.mjs +20 -20
  24. package/plugins/glimmer.d.ts +8 -0
  25. package/plugins/glimmer.js +18 -17
  26. package/plugins/glimmer.mjs +18 -17
  27. package/plugins/graphql.d.ts +8 -0
  28. package/plugins/graphql.js +7 -7
  29. package/plugins/graphql.mjs +7 -7
  30. package/plugins/html.d.ts +11 -0
  31. package/plugins/html.js +17 -28
  32. package/plugins/html.mjs +17 -28
  33. package/plugins/markdown.d.ts +10 -0
  34. package/plugins/markdown.js +28 -29
  35. package/plugins/markdown.mjs +28 -29
  36. package/plugins/meriyah.d.ts +8 -0
  37. package/plugins/meriyah.js +5 -6
  38. package/plugins/meriyah.mjs +5 -6
  39. package/plugins/postcss.d.ts +10 -0
  40. package/plugins/postcss.js +32 -43
  41. package/plugins/postcss.mjs +32 -43
  42. package/plugins/typescript.d.ts +8 -0
  43. package/plugins/typescript.js +18 -27
  44. package/plugins/typescript.mjs +18 -27
  45. package/plugins/yaml.d.ts +8 -0
  46. package/plugins/yaml.js +108 -108
  47. package/plugins/yaml.mjs +108 -108
  48. package/standalone.d.ts +33 -0
  49. package/standalone.js +74 -80
  50. package/standalone.mjs +74 -80
package/doc.js CHANGED
@@ -1,15 +1,13 @@
1
1
  (function (factory) {
2
- function interopModuleDefault(factory) {
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(factory);
8
+ module.exports = interopModuleDefault();
9
9
  } else if (typeof define === "function" && define.amd) {
10
- define(function () {
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(factory);
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,26 +43,19 @@
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
  };
@@ -83,7 +70,6 @@
83
70
  printer: () => printer_exports,
84
71
  utils: () => utils_exports
85
72
  });
86
- init_define_process();
87
73
 
88
74
  // src/document/builders.js
89
75
  var builders_exports = {};
@@ -114,10 +100,8 @@
114
100
  softline: () => softline,
115
101
  trim: () => trim
116
102
  });
117
- init_define_process();
118
103
 
119
104
  // src/document/constants.js
120
- init_define_process();
121
105
  var DOC_TYPE_STRING = "string";
122
106
  var DOC_TYPE_ARRAY = "array";
123
107
  var DOC_TYPE_CURSOR = "cursor";
@@ -149,23 +133,157 @@
149
133
  DOC_TYPE_BREAK_PARENT
150
134
  ]);
151
135
 
136
+ // src/document/utils/get-doc-type.js
137
+ function getDocType(doc) {
138
+ if (typeof doc === "string") {
139
+ return DOC_TYPE_STRING;
140
+ }
141
+ if (Array.isArray(doc)) {
142
+ return DOC_TYPE_ARRAY;
143
+ }
144
+ if (!doc) {
145
+ return;
146
+ }
147
+ const { type } = doc;
148
+ if (VALID_OBJECT_DOC_TYPES.has(type)) {
149
+ return type;
150
+ }
151
+ }
152
+ var get_doc_type_default = getDocType;
153
+
154
+ // src/document/invalid-doc-error.js
155
+ var disjunctionListFormat = (list) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(list);
156
+ function getDocErrorMessage(doc) {
157
+ const type = doc === null ? "null" : typeof doc;
158
+ if (type !== "string" && type !== "object") {
159
+ return `Unexpected doc '${type}',
160
+ Expected it to be 'string' or 'object'.`;
161
+ }
162
+ if (get_doc_type_default(doc)) {
163
+ throw new Error("doc is valid.");
164
+ }
165
+ const objectType = Object.prototype.toString.call(doc);
166
+ if (objectType !== "[object Object]") {
167
+ return `Unexpected doc '${objectType}'.`;
168
+ }
169
+ const EXPECTED_TYPE_VALUES = disjunctionListFormat(
170
+ [...VALID_OBJECT_DOC_TYPES].map((type2) => `'${type2}'`)
171
+ );
172
+ return `Unexpected doc.type '${doc.type}'.
173
+ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
174
+ }
175
+ var InvalidDocError = class extends Error {
176
+ name = "InvalidDocError";
177
+ constructor(doc) {
178
+ super(getDocErrorMessage(doc));
179
+ this.doc = doc;
180
+ }
181
+ };
182
+ var invalid_doc_error_default = InvalidDocError;
183
+
184
+ // src/document/utils/traverse-doc.js
185
+ var traverseDocOnExitStackMarker = {};
186
+ function traverseDoc(doc, onEnter, onExit, shouldTraverseConditionalGroups) {
187
+ const docsStack = [doc];
188
+ while (docsStack.length > 0) {
189
+ const doc2 = docsStack.pop();
190
+ if (doc2 === traverseDocOnExitStackMarker) {
191
+ onExit(docsStack.pop());
192
+ continue;
193
+ }
194
+ if (onExit) {
195
+ docsStack.push(doc2, traverseDocOnExitStackMarker);
196
+ }
197
+ const docType = get_doc_type_default(doc2);
198
+ if (!docType) {
199
+ throw new invalid_doc_error_default(doc2);
200
+ }
201
+ if ((onEnter == null ? void 0 : onEnter(doc2)) === false) {
202
+ continue;
203
+ }
204
+ switch (docType) {
205
+ case DOC_TYPE_ARRAY:
206
+ case DOC_TYPE_FILL: {
207
+ const parts = docType === DOC_TYPE_ARRAY ? doc2 : doc2.parts;
208
+ for (let ic = parts.length, i = ic - 1; i >= 0; --i) {
209
+ docsStack.push(parts[i]);
210
+ }
211
+ break;
212
+ }
213
+ case DOC_TYPE_IF_BREAK:
214
+ docsStack.push(doc2.flatContents, doc2.breakContents);
215
+ break;
216
+ case DOC_TYPE_GROUP:
217
+ if (shouldTraverseConditionalGroups && doc2.expandedStates) {
218
+ for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) {
219
+ docsStack.push(doc2.expandedStates[i]);
220
+ }
221
+ } else {
222
+ docsStack.push(doc2.contents);
223
+ }
224
+ break;
225
+ case DOC_TYPE_ALIGN:
226
+ case DOC_TYPE_INDENT:
227
+ case DOC_TYPE_INDENT_IF_BREAK:
228
+ case DOC_TYPE_LABEL:
229
+ case DOC_TYPE_LINE_SUFFIX:
230
+ docsStack.push(doc2.contents);
231
+ break;
232
+ case DOC_TYPE_STRING:
233
+ case DOC_TYPE_CURSOR:
234
+ case DOC_TYPE_TRIM:
235
+ case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
236
+ case DOC_TYPE_LINE:
237
+ case DOC_TYPE_BREAK_PARENT:
238
+ break;
239
+ default:
240
+ throw new invalid_doc_error_default(doc2);
241
+ }
242
+ }
243
+ }
244
+ var traverse_doc_default = traverseDoc;
245
+
246
+ // src/document/utils/assert-doc.js
247
+ var noop = () => {
248
+ };
249
+ var assertDoc = true ? noop : function(doc) {
250
+ traverse_doc_default(doc, (doc2) => {
251
+ if (checked.has(doc2)) {
252
+ return false;
253
+ }
254
+ if (typeof doc2 !== "string") {
255
+ checked.add(doc2);
256
+ }
257
+ });
258
+ };
259
+ var assertDocArray = true ? noop : function(docs, optional = false) {
260
+ if (optional && !docs) {
261
+ return;
262
+ }
263
+ if (!Array.isArray(docs)) {
264
+ throw new TypeError("Unexpected doc array.");
265
+ }
266
+ for (const doc of docs) {
267
+ assertDoc(doc);
268
+ }
269
+ };
270
+
152
271
  // src/document/builders.js
153
272
  function indent(contents) {
154
- if (false) {
155
- assertDoc(contents);
156
- }
273
+ assertDoc(contents);
157
274
  return { type: DOC_TYPE_INDENT, contents };
158
275
  }
159
276
  function align(widthOrString, contents) {
160
- if (false) {
161
- assertDoc(contents);
162
- }
277
+ assertDoc(contents);
163
278
  return { type: DOC_TYPE_ALIGN, contents, n: widthOrString };
164
279
  }
165
280
  function group(contents, opts = {}) {
166
- if (false) {
167
- assertDoc(contents);
168
- }
281
+ assertDoc(contents);
282
+ assertDocArray(
283
+ opts.expandedStates,
284
+ /* optional */
285
+ true
286
+ );
169
287
  return {
170
288
  type: DOC_TYPE_GROUP,
171
289
  id: opts.id,
@@ -187,21 +305,13 @@
187
305
  return group(states[0], { ...opts, expandedStates: states });
188
306
  }
189
307
  function fill(parts) {
190
- if (false) {
191
- for (const part of parts) {
192
- assertDoc(part);
193
- }
194
- }
308
+ assertDocArray(parts);
195
309
  return { type: DOC_TYPE_FILL, parts };
196
310
  }
197
311
  function ifBreak(breakContents, flatContents = "", opts = {}) {
198
- if (false) {
199
- if (breakContents) {
200
- assertDoc(breakContents);
201
- }
202
- if (flatContents) {
203
- assertDoc(flatContents);
204
- }
312
+ assertDoc(breakContents);
313
+ if (flatContents !== "") {
314
+ assertDoc(flatContents);
205
315
  }
206
316
  return {
207
317
  type: DOC_TYPE_IF_BREAK,
@@ -211,6 +321,7 @@
211
321
  };
212
322
  }
213
323
  function indentIfBreak(contents, opts) {
324
+ assertDoc(contents);
214
325
  return {
215
326
  type: DOC_TYPE_INDENT_IF_BREAK,
216
327
  contents,
@@ -219,9 +330,7 @@
219
330
  };
220
331
  }
221
332
  function lineSuffix(contents) {
222
- if (false) {
223
- assertDoc(contents);
224
- }
333
+ assertDoc(contents);
225
334
  return { type: DOC_TYPE_LINE_SUFFIX, contents };
226
335
  }
227
336
  var lineSuffixBoundary = { type: DOC_TYPE_LINE_SUFFIX_BOUNDARY };
@@ -238,17 +347,20 @@
238
347
  var hardline = [hardlineWithoutBreakParent, breakParent];
239
348
  var literalline = [literallineWithoutBreakParent, breakParent];
240
349
  var cursor = { type: DOC_TYPE_CURSOR };
241
- function join(sep, arr) {
242
- const res = [];
243
- for (let i = 0; i < arr.length; i++) {
350
+ function join(separator, docs) {
351
+ assertDoc(separator);
352
+ assertDocArray(docs);
353
+ const parts = [];
354
+ for (let i = 0; i < docs.length; i++) {
244
355
  if (i !== 0) {
245
- res.push(sep);
356
+ parts.push(separator);
246
357
  }
247
- res.push(arr[i]);
358
+ parts.push(docs[i]);
248
359
  }
249
- return res;
360
+ return parts;
250
361
  }
251
362
  function addAlignmentToDoc(doc, size, tabWidth) {
363
+ assertDoc(doc);
252
364
  let aligned = doc;
253
365
  if (size > 0) {
254
366
  for (let i = 0; i < Math.floor(size / tabWidth); ++i) {
@@ -260,6 +372,7 @@
260
372
  return aligned;
261
373
  }
262
374
  function label(label2, contents) {
375
+ assertDoc(contents);
263
376
  return label2 ? { type: DOC_TYPE_LABEL, label: label2, contents } : contents;
264
377
  }
265
378
  var concat = (parts) => parts;
@@ -269,20 +382,32 @@
269
382
  __export(printer_exports, {
270
383
  printDocToString: () => printDocToString
271
384
  });
272
- init_define_process();
273
385
 
274
386
  // scripts/build/shims/at.js
275
- init_define_process();
276
- var at = (isOptionalObject, object, index, ...args) => {
387
+ var at = (isOptionalObject, object, index) => {
277
388
  if (isOptionalObject && (object === void 0 || object === null)) {
278
389
  return;
279
390
  }
280
- return object.at ? object.at(index, ...args) : object[index < 0 ? object.length + index : index];
391
+ return object.at ? object.at(index) : object[index < 0 ? object.length + index : index];
281
392
  };
282
393
  var at_default = at;
283
394
 
395
+ // scripts/build/shims/string-replace-all.js
396
+ var stringReplaceAll = (isOptionalObject, original, pattern, replacement) => {
397
+ if (isOptionalObject && (original === void 0 || original === null)) {
398
+ return;
399
+ }
400
+ if (original.replaceAll) {
401
+ return original.replaceAll(pattern, replacement);
402
+ }
403
+ if (pattern.global) {
404
+ return original.replace(pattern, replacement);
405
+ }
406
+ return original.split(pattern).join(replacement);
407
+ };
408
+ var string_replace_all_default = stringReplaceAll;
409
+
284
410
  // src/common/end-of-line.js
285
- init_define_process();
286
411
  function convertEndOfLineToChars(value) {
287
412
  switch (value) {
288
413
  case "cr":
@@ -294,17 +419,7 @@
294
419
  }
295
420
  }
296
421
 
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
422
  // node_modules/strip-ansi/node_modules/ansi-regex/index.js
307
- init_define_process();
308
423
  function ansiRegex({ onlyFirst = false } = {}) {
309
424
  const pattern = [
310
425
  "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
@@ -322,12 +437,26 @@
322
437
  }
323
438
 
324
439
  // node_modules/string-width/node_modules/is-fullwidth-code-point/index.js
325
- init_define_process();
326
440
  function isFullwidthCodePoint(codePoint) {
327
441
  if (!Number.isInteger(codePoint)) {
328
442
  return false;
329
443
  }
330
- return codePoint >= 4352 && (codePoint <= 4447 || codePoint === 9001 || codePoint === 9002 || 11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || 12880 <= codePoint && codePoint <= 19903 || 19968 <= codePoint && codePoint <= 42182 || 43360 <= codePoint && codePoint <= 43388 || 44032 <= codePoint && codePoint <= 55203 || 63744 <= codePoint && codePoint <= 64255 || 65040 <= codePoint && codePoint <= 65049 || 65072 <= codePoint && codePoint <= 65131 || 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || 110592 <= codePoint && codePoint <= 110593 || 127488 <= codePoint && codePoint <= 127569 || 131072 <= codePoint && codePoint <= 262141);
444
+ return codePoint >= 4352 && (codePoint <= 4447 || // Hangul Jamo
445
+ codePoint === 9001 || // LEFT-POINTING ANGLE BRACKET
446
+ codePoint === 9002 || // RIGHT-POINTING ANGLE BRACKET
447
+ // CJK Radicals Supplement .. Enclosed CJK Letters and Months
448
+ 11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A
449
+ 12880 <= codePoint && codePoint <= 19903 || // CJK Unified Ideographs .. Yi Radicals
450
+ 19968 <= codePoint && codePoint <= 42182 || // Hangul Jamo Extended-A
451
+ 43360 <= codePoint && codePoint <= 43388 || // Hangul Syllables
452
+ 44032 <= codePoint && codePoint <= 55203 || // CJK Compatibility Ideographs
453
+ 63744 <= codePoint && codePoint <= 64255 || // Vertical Forms
454
+ 65040 <= codePoint && codePoint <= 65049 || // CJK Compatibility Forms .. Small Form Variants
455
+ 65072 <= codePoint && codePoint <= 65131 || // Halfwidth and Fullwidth Forms
456
+ 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || // Kana Supplement
457
+ 110592 <= codePoint && codePoint <= 110593 || // Enclosed Ideographic Supplement
458
+ 127488 <= codePoint && codePoint <= 127569 || // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane
459
+ 131072 <= codePoint && codePoint <= 262141);
331
460
  }
332
461
 
333
462
  // node_modules/string-width/index.js
@@ -389,119 +518,6 @@
389
518
  traverseDoc: () => traverse_doc_default,
390
519
  willBreak: () => willBreak
391
520
  });
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
- docsStack.push(doc2.flatContents, doc2.breakContents);
473
- break;
474
- case DOC_TYPE_GROUP:
475
- if (shouldTraverseConditionalGroups && doc2.expandedStates) {
476
- for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) {
477
- docsStack.push(doc2.expandedStates[i]);
478
- }
479
- } else {
480
- docsStack.push(doc2.contents);
481
- }
482
- break;
483
- case DOC_TYPE_ALIGN:
484
- case DOC_TYPE_INDENT:
485
- case DOC_TYPE_INDENT_IF_BREAK:
486
- case DOC_TYPE_LABEL:
487
- case DOC_TYPE_LINE_SUFFIX:
488
- docsStack.push(doc2.contents);
489
- break;
490
- case DOC_TYPE_STRING:
491
- case DOC_TYPE_CURSOR:
492
- case DOC_TYPE_TRIM:
493
- case DOC_TYPE_LINE_SUFFIX_BOUNDARY:
494
- case DOC_TYPE_LINE:
495
- case DOC_TYPE_BREAK_PARENT:
496
- break;
497
- default:
498
- throw new invalid_doc_error_default(doc2);
499
- }
500
- }
501
- }
502
- var traverse_doc_default = traverseDoc;
503
-
504
- // src/document/utils.js
505
521
  var getDocParts = (doc) => {
506
522
  if (Array.isArray(doc)) {
507
523
  return doc;
@@ -610,7 +626,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
610
626
  }
611
627
  function breakParentGroup(groupStack) {
612
628
  if (groupStack.length > 0) {
613
- const parentGroup = at_default(false, groupStack, -1);
629
+ const parentGroup = at_default(
630
+ /* isOptionalObject*/
631
+ false,
632
+ groupStack,
633
+ -1
634
+ );
614
635
  if (!parentGroup.expandedStates && !parentGroup.break) {
615
636
  parentGroup.break = "propagated";
616
637
  }
@@ -640,7 +661,13 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
640
661
  }
641
662
  }
642
663
  }
643
- traverse_doc_default(doc, propagateBreaksOnEnterFn, propagateBreaksOnExitFn, true);
664
+ traverse_doc_default(
665
+ doc,
666
+ propagateBreaksOnEnterFn,
667
+ propagateBreaksOnExitFn,
668
+ /* shouldTraverseConditionalGroups */
669
+ true
670
+ );
644
671
  }
645
672
  function removeLinesFn(doc) {
646
673
  if (doc.type === DOC_TYPE_LINE && !doc.hard) {
@@ -656,11 +683,26 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
656
683
  }
657
684
  function stripTrailingHardlineFromParts(parts) {
658
685
  parts = [...parts];
659
- while (parts.length >= 2 && at_default(false, parts, -2).type === DOC_TYPE_LINE && at_default(false, parts, -1).type === DOC_TYPE_BREAK_PARENT) {
686
+ while (parts.length >= 2 && at_default(
687
+ /* isOptionalObject*/
688
+ false,
689
+ parts,
690
+ -2
691
+ ).type === DOC_TYPE_LINE && at_default(
692
+ /* isOptionalObject*/
693
+ false,
694
+ parts,
695
+ -1
696
+ ).type === DOC_TYPE_BREAK_PARENT) {
660
697
  parts.length -= 2;
661
698
  }
662
699
  if (parts.length > 0) {
663
- const lastPart = stripTrailingHardlineFromDoc(at_default(false, parts, -1));
700
+ const lastPart = stripTrailingHardlineFromDoc(at_default(
701
+ /* isOptionalObject*/
702
+ false,
703
+ parts,
704
+ -1
705
+ ));
664
706
  parts[parts.length - 1] = lastPart;
665
707
  }
666
708
  return parts;
@@ -743,7 +785,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
743
785
  continue;
744
786
  }
745
787
  const [currentPart, ...restParts] = Array.isArray(part) ? part : [part];
746
- if (typeof currentPart === "string" && typeof at_default(false, parts, -1) === "string") {
788
+ if (typeof currentPart === "string" && typeof at_default(
789
+ /* isOptionalObject*/
790
+ false,
791
+ parts,
792
+ -1
793
+ ) === "string") {
747
794
  parts[parts.length - 1] += currentPart;
748
795
  } else {
749
796
  parts.push(currentPart);
@@ -786,7 +833,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
786
833
  restParts.unshift(...part);
787
834
  continue;
788
835
  }
789
- if (newParts.length > 0 && typeof at_default(false, newParts, -1) === "string" && typeof part === "string") {
836
+ if (newParts.length > 0 && typeof at_default(
837
+ /* isOptionalObject*/
838
+ false,
839
+ newParts,
840
+ -1
841
+ ) === "string" && typeof part === "string") {
790
842
  newParts[newParts.length - 1] += part;
791
843
  continue;
792
844
  }
@@ -1009,7 +1061,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1009
1061
  return false;
1010
1062
  }
1011
1063
  const groupMode = doc.break ? MODE_BREAK : mode;
1012
- const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default(false, doc.expandedStates, -1) : doc.contents;
1064
+ const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default(
1065
+ /* isOptionalObject*/
1066
+ false,
1067
+ doc.expandedStates,
1068
+ -1
1069
+ ) : doc.contents;
1013
1070
  cmds.push({
1014
1071
  mode: groupMode,
1015
1072
  doc: contents
@@ -1070,9 +1127,17 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1070
1127
  } = cmds.pop();
1071
1128
  switch (get_doc_type_default(doc2)) {
1072
1129
  case DOC_TYPE_STRING: {
1073
- const formatted = newLine !== "\n" ? doc2.replace(/\n/g, newLine) : doc2;
1130
+ const formatted = newLine !== "\n" ? string_replace_all_default(
1131
+ /* isOptionalObject*/
1132
+ false,
1133
+ doc2,
1134
+ "\n",
1135
+ newLine
1136
+ ) : doc2;
1074
1137
  out.push(formatted);
1075
- pos += get_string_width_default(formatted);
1138
+ if (cmds.length > 0) {
1139
+ pos += get_string_width_default(formatted);
1140
+ }
1076
1141
  break;
1077
1142
  }
1078
1143
  case DOC_TYPE_ARRAY:
@@ -1132,7 +1197,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1132
1197
  cmds.push(next);
1133
1198
  } else {
1134
1199
  if (doc2.expandedStates) {
1135
- const mostExpanded = at_default(false, doc2.expandedStates, -1);
1200
+ const mostExpanded = at_default(
1201
+ /* isOptionalObject*/
1202
+ false,
1203
+ doc2.expandedStates,
1204
+ -1
1205
+ );
1136
1206
  if (doc2.break) {
1137
1207
  cmds.push({
1138
1208
  ind,
@@ -1175,7 +1245,12 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1175
1245
  }
1176
1246
  }
1177
1247
  if (doc2.id) {
1178
- groupModeMap[doc2.id] = at_default(false, cmds, -1).mode;
1248
+ groupModeMap[doc2.id] = at_default(
1249
+ /* isOptionalObject*/
1250
+ false,
1251
+ cmds,
1252
+ -1
1253
+ ).mode;
1179
1254
  }
1180
1255
  break;
1181
1256
  case DOC_TYPE_FILL: {
@@ -1364,7 +1439,6 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1364
1439
  __export(debug_exports, {
1365
1440
  printDocToDebug: () => printDocToDebug
1366
1441
  });
1367
- init_define_process();
1368
1442
  function flattenDoc(doc) {
1369
1443
  var _a;
1370
1444
  if (!doc) {
@@ -1411,6 +1485,7 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1411
1485
  const usedKeysForSymbols = /* @__PURE__ */ new Set();
1412
1486
  return printDoc(flattenDoc(doc));
1413
1487
  function printDoc(doc2, index, parentParts) {
1488
+ var _a, _b;
1414
1489
  if (typeof doc2 === "string") {
1415
1490
  return JSON.stringify(doc2);
1416
1491
  }
@@ -1419,7 +1494,7 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1419
1494
  return printed.length === 1 ? printed[0] : `[${printed.join(", ")}]`;
1420
1495
  }
1421
1496
  if (doc2.type === DOC_TYPE_LINE) {
1422
- const withBreakParent = Array.isArray(parentParts) && parentParts[index + 1] && parentParts[index + 1].type === DOC_TYPE_BREAK_PARENT;
1497
+ const withBreakParent = ((_a = parentParts == null ? void 0 : parentParts[index + 1]) == null ? void 0 : _a.type) === DOC_TYPE_BREAK_PARENT;
1423
1498
  if (doc2.literal) {
1424
1499
  return withBreakParent ? "literalline" : "literallineWithoutBreakParent";
1425
1500
  }
@@ -1432,7 +1507,7 @@ Expected it to be ${EXPECTED_TYPE_VALUES}.`;
1432
1507
  return "line";
1433
1508
  }
1434
1509
  if (doc2.type === DOC_TYPE_BREAK_PARENT) {
1435
- const afterHardline = Array.isArray(parentParts) && parentParts[index - 1] && parentParts[index - 1].type === DOC_TYPE_LINE && parentParts[index - 1].hard;
1510
+ const afterHardline = ((_b = parentParts == null ? void 0 : parentParts[index - 1]) == null ? void 0 : _b.type) === DOC_TYPE_LINE && parentParts[index - 1].hard;
1436
1511
  return afterHardline ? void 0 : "breakParent";
1437
1512
  }
1438
1513
  if (doc2.type === DOC_TYPE_TRIM) {