dorian 2.6.8 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/.node-version +1 -1
  3. data/.npm-version +1 -1
  4. data/.rubocop.yml +25 -21
  5. data/.ruby-version +1 -1
  6. data/.tool-versions +2 -3
  7. data/Gemfile +0 -4
  8. data/Gemfile.lock +63 -116
  9. data/VERSION +1 -1
  10. data/dorian.gemspec +19 -19
  11. data/lib/dorian/bin.rb +82 -75
  12. data/package-lock.json +8 -8
  13. data/package.json +5 -5
  14. data/vendor/prettier/LICENSE +0 -4372
  15. data/vendor/prettier/README.md +14 -19
  16. data/vendor/prettier/THIRD-PARTY-NOTICES.md +6059 -0
  17. data/vendor/prettier/bin/prettier.cjs +27 -18
  18. data/vendor/prettier/doc.d.ts +11 -0
  19. data/vendor/prettier/doc.js +742 -776
  20. data/vendor/prettier/doc.mjs +743 -766
  21. data/vendor/prettier/index.cjs +266 -371
  22. data/vendor/prettier/index.d.ts +43 -16
  23. data/vendor/prettier/index.mjs +9615 -16721
  24. data/vendor/prettier/internal/experimental-cli-worker.mjs +2841 -0
  25. data/vendor/prettier/internal/experimental-cli.mjs +12790 -0
  26. data/vendor/prettier/internal/legacy-cli.mjs +6229 -0
  27. data/vendor/prettier/package.json +113 -108
  28. data/vendor/prettier/plugins/acorn.js +16 -6618
  29. data/vendor/prettier/plugins/acorn.mjs +16 -6456
  30. data/vendor/prettier/plugins/angular.js +4 -2435
  31. data/vendor/prettier/plugins/angular.mjs +4 -2375
  32. data/vendor/prettier/plugins/babel.d.ts +7 -7
  33. data/vendor/prettier/plugins/babel.js +15 -14271
  34. data/vendor/prettier/plugins/babel.mjs +15 -13986
  35. data/vendor/prettier/plugins/estree.d.ts +6 -1
  36. data/vendor/prettier/plugins/estree.js +43 -9486
  37. data/vendor/prettier/plugins/estree.mjs +43 -9278
  38. data/vendor/prettier/plugins/flow.js +19 -51476
  39. data/vendor/prettier/plugins/flow.mjs +19 -51218
  40. data/vendor/prettier/plugins/glimmer.d.ts +5 -1
  41. data/vendor/prettier/plugins/glimmer.js +30 -8527
  42. data/vendor/prettier/plugins/glimmer.mjs +30 -8414
  43. data/vendor/prettier/plugins/graphql.d.ts +5 -1
  44. data/vendor/prettier/plugins/graphql.js +15 -2408
  45. data/vendor/prettier/plugins/graphql.mjs +15 -2334
  46. data/vendor/prettier/plugins/html.d.ts +6 -1
  47. data/vendor/prettier/plugins/html.js +25 -8182
  48. data/vendor/prettier/plugins/html.mjs +25 -8077
  49. data/vendor/prettier/plugins/markdown.d.ts +5 -1
  50. data/vendor/prettier/plugins/markdown.js +57 -9063
  51. data/vendor/prettier/plugins/markdown.mjs +57 -8972
  52. data/vendor/prettier/plugins/meriyah.js +5 -5953
  53. data/vendor/prettier/plugins/meriyah.mjs +5 -5800
  54. data/vendor/prettier/plugins/postcss.d.ts +5 -1
  55. data/vendor/prettier/plugins/postcss.js +61 -9244
  56. data/vendor/prettier/plugins/postcss.mjs +61 -9046
  57. data/vendor/prettier/plugins/typescript.js +15 -38052
  58. data/vendor/prettier/plugins/typescript.mjs +15 -37726
  59. data/vendor/prettier/plugins/yaml.d.ts +5 -1
  60. data/vendor/prettier/plugins/yaml.js +157 -7423
  61. data/vendor/prettier/plugins/yaml.mjs +157 -7327
  62. data/vendor/prettier/standalone.d.ts +1 -1
  63. data/vendor/prettier/standalone.js +29 -3984
  64. data/vendor/prettier/standalone.mjs +29 -3938
  65. metadata +145 -40
  66. data/vendor/prettier/internal/cli.mjs +0 -4366
@@ -5,53 +5,70 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __getProtoOf = Object.getPrototypeOf;
7
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __esm = (fn, res) =>
9
- function __init() {
10
- return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])((fn = 0))), res;
11
- };
12
- var __commonJS = (cb, mod) =>
13
- function __require() {
14
- return (
15
- mod ||
16
- (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod),
17
- mod.exports
18
- );
19
- };
8
+ var __esm = (fn, res) => function __init() {
9
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
10
+ };
20
11
  var __export = (target, all) => {
21
12
  for (var name in all)
22
13
  __defProp(target, name, { get: all[name], enumerable: true });
23
14
  };
24
15
  var __copyProps = (to, from, except, desc) => {
25
- if ((from && typeof from === "object") || typeof from === "function") {
16
+ if (from && typeof from === "object" || typeof from === "function") {
26
17
  for (let key of __getOwnPropNames(from))
27
18
  if (!__hasOwnProp.call(to, key) && key !== except)
28
- __defProp(to, key, {
29
- get: () => from[key],
30
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable,
31
- });
19
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
32
20
  }
33
21
  return to;
34
22
  };
35
- var __toESM = (mod, isNodeMode, target) => (
36
- (target = mod != null ? __create(__getProtoOf(mod)) : {}),
37
- __copyProps(
38
- // If the importer is in node compatibility mode or this is not an ESM
39
- // file that has been converted to a CommonJS file using a Babel-
40
- // compatible transform (i.e. "__esModule" has not been set), then set
41
- // "default" to the CommonJS "module.exports" for node compatibility.
42
- isNodeMode || !mod || !mod.__esModule
43
- ? __defProp(target, "default", { value: mod, enumerable: true })
44
- : target,
45
- mod,
46
- )
47
- );
48
- var __toCommonJS = (mod) =>
49
- __copyProps(__defProp({}, "__esModule", { value: true }), mod);
23
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
24
+ // If the importer is in node compatibility mode or this is not an ESM
25
+ // file that has been converted to a CommonJS file using a Babel-
26
+ // compatible transform (i.e. "__esModule" has not been set), then set
27
+ // "default" to the CommonJS "module.exports" for node compatibility.
28
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
29
+ mod
30
+ ));
31
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
32
+
33
+ // scripts/build/shims/shared.js
34
+ var OPTIONAL_OBJECT, createMethodShim;
35
+ var init_shared = __esm({
36
+ "scripts/build/shims/shared.js"() {
37
+ OPTIONAL_OBJECT = 1;
38
+ createMethodShim = (methodName, getImplementation) => (flags, object, ...arguments_) => {
39
+ if (flags | OPTIONAL_OBJECT && (object === void 0 || object === null)) {
40
+ return;
41
+ }
42
+ const implementation = getImplementation.call(object) ?? object[methodName];
43
+ return implementation.apply(object, arguments_);
44
+ };
45
+ }
46
+ });
47
+
48
+ // scripts/build/shims/method-replace-all.js
49
+ var stringReplaceAll, replaceAll, method_replace_all_default;
50
+ var init_method_replace_all = __esm({
51
+ "scripts/build/shims/method-replace-all.js"() {
52
+ init_shared();
53
+ stringReplaceAll = String.prototype.replaceAll ?? function(pattern, replacement) {
54
+ if (pattern.global) {
55
+ return this.replace(pattern, replacement);
56
+ }
57
+ return this.split(pattern).join(replacement);
58
+ };
59
+ replaceAll = createMethodShim("replaceAll", function() {
60
+ if (typeof this === "string") {
61
+ return stringReplaceAll;
62
+ }
63
+ });
64
+ method_replace_all_default = replaceAll;
65
+ }
66
+ });
50
67
 
51
- // src/utils/skip.js
68
+ // src/utilities/skip.js
52
69
  function skip(characters) {
53
70
  return (text, startIndex, options) => {
54
- const backwards = Boolean(options == null ? void 0 : options.backwards);
71
+ const backwards = Boolean(options?.backwards);
55
72
  if (startIndex === false) {
56
73
  return false;
57
74
  }
@@ -76,15 +93,15 @@ function skip(characters) {
76
93
  }
77
94
  var skipWhitespace, skipSpaces, skipToLineEnd, skipEverythingButNewLine;
78
95
  var init_skip = __esm({
79
- "src/utils/skip.js"() {
96
+ "src/utilities/skip.js"() {
80
97
  skipWhitespace = skip(/\s/u);
81
98
  skipSpaces = skip(" ");
82
99
  skipToLineEnd = skip(",; ");
83
100
  skipEverythingButNewLine = skip(/[^\n\r]/u);
84
- },
101
+ }
85
102
  });
86
103
 
87
- // src/utils/skip-inline-comment.js
104
+ // src/utilities/skip-inline-comment.js
88
105
  function skipInlineComment(text, startIndex) {
89
106
  if (startIndex === false) {
90
107
  return false;
@@ -100,14 +117,14 @@ function skipInlineComment(text, startIndex) {
100
117
  }
101
118
  var skip_inline_comment_default;
102
119
  var init_skip_inline_comment = __esm({
103
- "src/utils/skip-inline-comment.js"() {
120
+ "src/utilities/skip-inline-comment.js"() {
104
121
  skip_inline_comment_default = skipInlineComment;
105
- },
122
+ }
106
123
  });
107
124
 
108
- // src/utils/skip-newline.js
125
+ // src/utilities/skip-newline.js
109
126
  function skipNewline(text, startIndex, options) {
110
- const backwards = Boolean(options == null ? void 0 : options.backwards);
127
+ const backwards = Boolean(options?.backwards);
111
128
  if (startIndex === false) {
112
129
  return false;
113
130
  }
@@ -116,37 +133,28 @@ function skipNewline(text, startIndex, options) {
116
133
  if (text.charAt(startIndex - 1) === "\r" && character === "\n") {
117
134
  return startIndex - 2;
118
135
  }
119
- if (
120
- character === "\n" ||
121
- character === "\r" ||
122
- character === "\u2028" ||
123
- character === "\u2029"
124
- ) {
136
+ if (isNewlineCharacter(character)) {
125
137
  return startIndex - 1;
126
138
  }
127
139
  } else {
128
140
  if (character === "\r" && text.charAt(startIndex + 1) === "\n") {
129
141
  return startIndex + 2;
130
142
  }
131
- if (
132
- character === "\n" ||
133
- character === "\r" ||
134
- character === "\u2028" ||
135
- character === "\u2029"
136
- ) {
143
+ if (isNewlineCharacter(character)) {
137
144
  return startIndex + 1;
138
145
  }
139
146
  }
140
147
  return startIndex;
141
148
  }
142
- var skip_newline_default;
149
+ var isNewlineCharacter, skip_newline_default;
143
150
  var init_skip_newline = __esm({
144
- "src/utils/skip-newline.js"() {
151
+ "src/utilities/skip-newline.js"() {
152
+ isNewlineCharacter = (character) => character === "\n" || character === "\r" || character === "\u2028" || character === "\u2029";
145
153
  skip_newline_default = skipNewline;
146
- },
154
+ }
147
155
  });
148
156
 
149
- // src/utils/skip-trailing-comment.js
157
+ // src/utilities/skip-trailing-comment.js
150
158
  function skipTrailingComment(text, startIndex) {
151
159
  if (startIndex === false) {
152
160
  return false;
@@ -158,13 +166,13 @@ function skipTrailingComment(text, startIndex) {
158
166
  }
159
167
  var skip_trailing_comment_default;
160
168
  var init_skip_trailing_comment = __esm({
161
- "src/utils/skip-trailing-comment.js"() {
169
+ "src/utilities/skip-trailing-comment.js"() {
162
170
  init_skip();
163
171
  skip_trailing_comment_default = skipTrailingComment;
164
- },
172
+ }
165
173
  });
166
174
 
167
- // src/utils/get-next-non-space-non-comment-character-index.js
175
+ // src/utilities/get-next-non-space-non-comment-character-index.js
168
176
  function getNextNonSpaceNonCommentCharacterIndex(text, startIndex) {
169
177
  let oldIdx = null;
170
178
  let nextIdx = startIndex;
@@ -179,36 +187,35 @@ function getNextNonSpaceNonCommentCharacterIndex(text, startIndex) {
179
187
  }
180
188
  var get_next_non_space_non_comment_character_index_default;
181
189
  var init_get_next_non_space_non_comment_character_index = __esm({
182
- "src/utils/get-next-non-space-non-comment-character-index.js"() {
190
+ "src/utilities/get-next-non-space-non-comment-character-index.js"() {
183
191
  init_skip();
184
192
  init_skip_inline_comment();
185
193
  init_skip_newline();
186
194
  init_skip_trailing_comment();
187
- get_next_non_space_non_comment_character_index_default =
188
- getNextNonSpaceNonCommentCharacterIndex;
189
- },
195
+ get_next_non_space_non_comment_character_index_default = getNextNonSpaceNonCommentCharacterIndex;
196
+ }
190
197
  });
191
198
 
192
- // src/utils/has-newline.js
199
+ // src/utilities/has-newline.js
193
200
  function hasNewline(text, startIndex, options = {}) {
194
201
  const idx = skipSpaces(
195
202
  text,
196
203
  options.backwards ? startIndex - 1 : startIndex,
197
- options,
204
+ options
198
205
  );
199
206
  const idx2 = skip_newline_default(text, idx, options);
200
207
  return idx !== idx2;
201
208
  }
202
209
  var has_newline_default;
203
210
  var init_has_newline = __esm({
204
- "src/utils/has-newline.js"() {
211
+ "src/utilities/has-newline.js"() {
205
212
  init_skip();
206
213
  init_skip_newline();
207
214
  has_newline_default = hasNewline;
208
- },
215
+ }
209
216
  });
210
217
 
211
- // src/utils/is-next-line-empty.js
218
+ // src/utilities/is-next-line-empty.js
212
219
  function isNextLineEmpty(text, startIndex) {
213
220
  let oldIdx = null;
214
221
  let idx = startIndex;
@@ -224,17 +231,17 @@ function isNextLineEmpty(text, startIndex) {
224
231
  }
225
232
  var is_next_line_empty_default;
226
233
  var init_is_next_line_empty = __esm({
227
- "src/utils/is-next-line-empty.js"() {
234
+ "src/utilities/is-next-line-empty.js"() {
228
235
  init_has_newline();
229
236
  init_skip();
230
237
  init_skip_inline_comment();
231
238
  init_skip_newline();
232
239
  init_skip_trailing_comment();
233
240
  is_next_line_empty_default = isNextLineEmpty;
234
- },
241
+ }
235
242
  });
236
243
 
237
- // src/utils/is-previous-line-empty.js
244
+ // src/utilities/is-previous-line-empty.js
238
245
  function isPreviousLineEmpty(text, startIndex) {
239
246
  let idx = startIndex - 1;
240
247
  idx = skipSpaces(text, idx, { backwards: true });
@@ -245,24 +252,18 @@ function isPreviousLineEmpty(text, startIndex) {
245
252
  }
246
253
  var is_previous_line_empty_default;
247
254
  var init_is_previous_line_empty = __esm({
248
- "src/utils/is-previous-line-empty.js"() {
255
+ "src/utilities/is-previous-line-empty.js"() {
249
256
  init_skip();
250
257
  init_skip_newline();
251
258
  is_previous_line_empty_default = isPreviousLineEmpty;
252
- },
259
+ }
253
260
  });
254
261
 
255
- // src/main/comments/utils.js
262
+ // src/main/comments/utilities.js
256
263
  function describeNodeForDebugging(node) {
257
264
  const nodeType = node.type || node.kind || "(unknown type)";
258
265
  let nodeName = String(
259
- node.name ||
260
- (node.id && (typeof node.id === "object" ? node.id.name : node.id)) ||
261
- (node.key && (typeof node.key === "object" ? node.key.name : node.key)) ||
262
- (node.value &&
263
- (typeof node.value === "object" ? "" : String(node.value))) ||
264
- node.operator ||
265
- "",
266
+ node.name || node.id && (typeof node.id === "object" ? node.id.name : node.id) || node.key && (typeof node.key === "object" ? node.key.name : node.key) || node.value && (typeof node.value === "object" ? "" : String(node.value)) || node.operator || ""
266
267
  );
267
268
  if (nodeName.length > 20) {
268
269
  nodeName = nodeName.slice(0, 19) + "\u2026";
@@ -293,16 +294,17 @@ function addTrailingComment(node, comment) {
293
294
  comment.trailing = true;
294
295
  addCommentHelper(node, comment);
295
296
  }
296
- var init_utils = __esm({
297
- "src/main/comments/utils.js"() {},
297
+ var init_utilities = __esm({
298
+ "src/main/comments/utilities.js"() {
299
+ }
298
300
  });
299
301
 
300
- // src/utils/get-alignment-size.js
302
+ // src/utilities/get-alignment-size.js
301
303
  function getAlignmentSize(text, tabWidth, startIndex = 0) {
302
304
  let size = 0;
303
305
  for (let i = startIndex; i < text.length; ++i) {
304
306
  if (text[i] === " ") {
305
- size = size + tabWidth - (size % tabWidth);
307
+ size = size + tabWidth - size % tabWidth;
306
308
  } else {
307
309
  size++;
308
310
  }
@@ -311,12 +313,12 @@ function getAlignmentSize(text, tabWidth, startIndex = 0) {
311
313
  }
312
314
  var get_alignment_size_default;
313
315
  var init_get_alignment_size = __esm({
314
- "src/utils/get-alignment-size.js"() {
316
+ "src/utilities/get-alignment-size.js"() {
315
317
  get_alignment_size_default = getAlignmentSize;
316
- },
318
+ }
317
319
  });
318
320
 
319
- // src/utils/get-indent-size.js
321
+ // src/utilities/get-indent-size.js
320
322
  function getIndentSize(value, tabWidth) {
321
323
  const lastNewlineIndex = value.lastIndexOf("\n");
322
324
  if (lastNewlineIndex === -1) {
@@ -325,15 +327,15 @@ function getIndentSize(value, tabWidth) {
325
327
  return get_alignment_size_default(
326
328
  // All the leading whitespaces
327
329
  value.slice(lastNewlineIndex + 1).match(/^[\t ]*/u)[0],
328
- tabWidth,
330
+ tabWidth
329
331
  );
330
332
  }
331
333
  var get_indent_size_default;
332
334
  var init_get_indent_size = __esm({
333
- "src/utils/get-indent-size.js"() {
335
+ "src/utilities/get-indent-size.js"() {
334
336
  init_get_alignment_size();
335
337
  get_indent_size_default = getIndentSize;
336
- },
338
+ }
337
339
  });
338
340
 
339
341
  // node_modules/escape-string-regexp/index.js
@@ -344,46 +346,83 @@ function escapeStringRegexp(string) {
344
346
  return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
345
347
  }
346
348
  var init_escape_string_regexp = __esm({
347
- "node_modules/escape-string-regexp/index.js"() {},
349
+ "node_modules/escape-string-regexp/index.js"() {
350
+ }
348
351
  });
349
352
 
350
- // src/utils/get-max-continuous-count.js
353
+ // src/utilities/get-max-continuous-count.js
351
354
  function getMaxContinuousCount(text, searchString) {
352
- const results = text.match(
353
- new RegExp(`(${escapeStringRegexp(searchString)})+`, "gu"),
355
+ let results = text.matchAll(
356
+ new RegExp(`(?:${escapeStringRegexp(searchString)})+`, "gu")
354
357
  );
355
- if (results === null) {
356
- return 0;
358
+ if (!results.reduce) {
359
+ results = [...results];
357
360
  }
358
361
  return results.reduce(
359
- (maxCount, result) =>
360
- Math.max(maxCount, result.length / searchString.length),
361
- 0,
362
- );
362
+ (maxCount, [result]) => Math.max(maxCount, result.length),
363
+ 0
364
+ ) / searchString.length;
363
365
  }
364
366
  var get_max_continuous_count_default;
365
367
  var init_get_max_continuous_count = __esm({
366
- "src/utils/get-max-continuous-count.js"() {
368
+ "src/utilities/get-max-continuous-count.js"() {
367
369
  init_escape_string_regexp();
368
370
  get_max_continuous_count_default = getMaxContinuousCount;
369
- },
371
+ }
370
372
  });
371
373
 
372
- // src/utils/get-next-non-space-non-comment-character.js
374
+ // src/utilities/get-next-non-space-non-comment-character.js
373
375
  function getNextNonSpaceNonCommentCharacter(text, startIndex) {
374
- const index = get_next_non_space_non_comment_character_index_default(
375
- text,
376
- startIndex,
377
- );
376
+ const index = get_next_non_space_non_comment_character_index_default(text, startIndex);
378
377
  return index === false ? "" : text.charAt(index);
379
378
  }
380
379
  var get_next_non_space_non_comment_character_default;
381
380
  var init_get_next_non_space_non_comment_character = __esm({
382
- "src/utils/get-next-non-space-non-comment-character.js"() {
381
+ "src/utilities/get-next-non-space-non-comment-character.js"() {
383
382
  init_get_next_non_space_non_comment_character_index();
384
- get_next_non_space_non_comment_character_default =
385
- getNextNonSpaceNonCommentCharacter;
386
- },
383
+ get_next_non_space_non_comment_character_default = getNextNonSpaceNonCommentCharacter;
384
+ }
385
+ });
386
+
387
+ // src/utilities/get-preferred-quote.js
388
+ function getPreferredQuote(text, preferredQuoteOrPreferSingleQuote) {
389
+ const { preferred, alternate } = preferredQuoteOrPreferSingleQuote === true || preferredQuoteOrPreferSingleQuote === SINGLE_QUOTE ? SINGLE_QUOTE_SETTINGS : DOUBLE_QUOTE_SETTINGS;
390
+ const { length } = text;
391
+ let preferredQuoteCount = 0;
392
+ let alternateQuoteCount = 0;
393
+ for (let index = 0; index < length; index++) {
394
+ const codePoint = text.charCodeAt(index);
395
+ if (codePoint === preferred.codePoint) {
396
+ preferredQuoteCount++;
397
+ } else if (codePoint === alternate.codePoint) {
398
+ alternateQuoteCount++;
399
+ }
400
+ }
401
+ return (preferredQuoteCount > alternateQuoteCount ? alternate : preferred).character;
402
+ }
403
+ var SINGLE_QUOTE, DOUBLE_QUOTE, SINGLE_QUOTE_DATA, DOUBLE_QUOTE_DATA, SINGLE_QUOTE_SETTINGS, DOUBLE_QUOTE_SETTINGS, get_preferred_quote_default;
404
+ var init_get_preferred_quote = __esm({
405
+ "src/utilities/get-preferred-quote.js"() {
406
+ SINGLE_QUOTE = "'";
407
+ DOUBLE_QUOTE = '"';
408
+ SINGLE_QUOTE_DATA = Object.freeze({
409
+ character: SINGLE_QUOTE,
410
+ codePoint: 39
411
+ });
412
+ DOUBLE_QUOTE_DATA = Object.freeze({
413
+ character: DOUBLE_QUOTE,
414
+ codePoint: 34
415
+ });
416
+ SINGLE_QUOTE_SETTINGS = Object.freeze({
417
+ preferred: SINGLE_QUOTE_DATA,
418
+ alternate: DOUBLE_QUOTE_DATA
419
+ });
420
+ DOUBLE_QUOTE_SETTINGS = Object.freeze({
421
+ preferred: DOUBLE_QUOTE_DATA,
422
+ alternate: SINGLE_QUOTE_DATA
423
+ });
424
+ get_preferred_quote_default = getPreferredQuote;
425
+ }
387
426
  });
388
427
 
389
428
  // node_modules/emoji-regex/index.mjs
@@ -391,170 +430,39 @@ var emoji_regex_default;
391
430
  var init_emoji_regex = __esm({
392
431
  "node_modules/emoji-regex/index.mjs"() {
393
432
  emoji_regex_default = () => {
394
- return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
433
+ return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
395
434
  };
396
- },
435
+ }
397
436
  });
398
437
 
399
438
  // node_modules/get-east-asian-width/lookup.js
400
439
  function isFullWidth(x) {
401
- return (
402
- x === 12288 || (x >= 65281 && x <= 65376) || (x >= 65504 && x <= 65510)
403
- );
440
+ return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510;
404
441
  }
405
442
  function isWide(x) {
406
- return (
407
- (x >= 4352 && x <= 4447) ||
408
- x === 8986 ||
409
- x === 8987 ||
410
- x === 9001 ||
411
- x === 9002 ||
412
- (x >= 9193 && x <= 9196) ||
413
- x === 9200 ||
414
- x === 9203 ||
415
- x === 9725 ||
416
- x === 9726 ||
417
- x === 9748 ||
418
- x === 9749 ||
419
- (x >= 9800 && x <= 9811) ||
420
- x === 9855 ||
421
- x === 9875 ||
422
- x === 9889 ||
423
- x === 9898 ||
424
- x === 9899 ||
425
- x === 9917 ||
426
- x === 9918 ||
427
- x === 9924 ||
428
- x === 9925 ||
429
- x === 9934 ||
430
- x === 9940 ||
431
- x === 9962 ||
432
- x === 9970 ||
433
- x === 9971 ||
434
- x === 9973 ||
435
- x === 9978 ||
436
- x === 9981 ||
437
- x === 9989 ||
438
- x === 9994 ||
439
- x === 9995 ||
440
- x === 10024 ||
441
- x === 10060 ||
442
- x === 10062 ||
443
- (x >= 10067 && x <= 10069) ||
444
- x === 10071 ||
445
- (x >= 10133 && x <= 10135) ||
446
- x === 10160 ||
447
- x === 10175 ||
448
- x === 11035 ||
449
- x === 11036 ||
450
- x === 11088 ||
451
- x === 11093 ||
452
- (x >= 11904 && x <= 11929) ||
453
- (x >= 11931 && x <= 12019) ||
454
- (x >= 12032 && x <= 12245) ||
455
- (x >= 12272 && x <= 12287) ||
456
- (x >= 12289 && x <= 12350) ||
457
- (x >= 12353 && x <= 12438) ||
458
- (x >= 12441 && x <= 12543) ||
459
- (x >= 12549 && x <= 12591) ||
460
- (x >= 12593 && x <= 12686) ||
461
- (x >= 12688 && x <= 12771) ||
462
- (x >= 12783 && x <= 12830) ||
463
- (x >= 12832 && x <= 12871) ||
464
- (x >= 12880 && x <= 19903) ||
465
- (x >= 19968 && x <= 42124) ||
466
- (x >= 42128 && x <= 42182) ||
467
- (x >= 43360 && x <= 43388) ||
468
- (x >= 44032 && x <= 55203) ||
469
- (x >= 63744 && x <= 64255) ||
470
- (x >= 65040 && x <= 65049) ||
471
- (x >= 65072 && x <= 65106) ||
472
- (x >= 65108 && x <= 65126) ||
473
- (x >= 65128 && x <= 65131) ||
474
- (x >= 94176 && x <= 94180) ||
475
- x === 94192 ||
476
- x === 94193 ||
477
- (x >= 94208 && x <= 100343) ||
478
- (x >= 100352 && x <= 101589) ||
479
- (x >= 101632 && x <= 101640) ||
480
- (x >= 110576 && x <= 110579) ||
481
- (x >= 110581 && x <= 110587) ||
482
- x === 110589 ||
483
- x === 110590 ||
484
- (x >= 110592 && x <= 110882) ||
485
- x === 110898 ||
486
- (x >= 110928 && x <= 110930) ||
487
- x === 110933 ||
488
- (x >= 110948 && x <= 110951) ||
489
- (x >= 110960 && x <= 111355) ||
490
- x === 126980 ||
491
- x === 127183 ||
492
- x === 127374 ||
493
- (x >= 127377 && x <= 127386) ||
494
- (x >= 127488 && x <= 127490) ||
495
- (x >= 127504 && x <= 127547) ||
496
- (x >= 127552 && x <= 127560) ||
497
- x === 127568 ||
498
- x === 127569 ||
499
- (x >= 127584 && x <= 127589) ||
500
- (x >= 127744 && x <= 127776) ||
501
- (x >= 127789 && x <= 127797) ||
502
- (x >= 127799 && x <= 127868) ||
503
- (x >= 127870 && x <= 127891) ||
504
- (x >= 127904 && x <= 127946) ||
505
- (x >= 127951 && x <= 127955) ||
506
- (x >= 127968 && x <= 127984) ||
507
- x === 127988 ||
508
- (x >= 127992 && x <= 128062) ||
509
- x === 128064 ||
510
- (x >= 128066 && x <= 128252) ||
511
- (x >= 128255 && x <= 128317) ||
512
- (x >= 128331 && x <= 128334) ||
513
- (x >= 128336 && x <= 128359) ||
514
- x === 128378 ||
515
- x === 128405 ||
516
- x === 128406 ||
517
- x === 128420 ||
518
- (x >= 128507 && x <= 128591) ||
519
- (x >= 128640 && x <= 128709) ||
520
- x === 128716 ||
521
- (x >= 128720 && x <= 128722) ||
522
- (x >= 128725 && x <= 128727) ||
523
- (x >= 128732 && x <= 128735) ||
524
- x === 128747 ||
525
- x === 128748 ||
526
- (x >= 128756 && x <= 128764) ||
527
- (x >= 128992 && x <= 129003) ||
528
- x === 129008 ||
529
- (x >= 129292 && x <= 129338) ||
530
- (x >= 129340 && x <= 129349) ||
531
- (x >= 129351 && x <= 129535) ||
532
- (x >= 129648 && x <= 129660) ||
533
- (x >= 129664 && x <= 129672) ||
534
- (x >= 129680 && x <= 129725) ||
535
- (x >= 129727 && x <= 129733) ||
536
- (x >= 129742 && x <= 129755) ||
537
- (x >= 129760 && x <= 129768) ||
538
- (x >= 129776 && x <= 129784) ||
539
- (x >= 131072 && x <= 196605) ||
540
- (x >= 196608 && x <= 262141)
541
- );
443
+ return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9776 && x <= 9783 || x >= 9800 && x <= 9811 || x === 9855 || x >= 9866 && x <= 9871 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12773 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x >= 94192 && x <= 94198 || x >= 94208 && x <= 101589 || x >= 101631 && x <= 101662 || x >= 101760 && x <= 101874 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x >= 119552 && x <= 119638 || x >= 119648 && x <= 119670 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128728 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129674 || x >= 129678 && x <= 129734 || x === 129736 || x >= 129741 && x <= 129756 || x >= 129759 && x <= 129770 || x >= 129775 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141;
542
444
  }
543
445
  var init_lookup = __esm({
544
- "node_modules/get-east-asian-width/lookup.js"() {},
446
+ "node_modules/get-east-asian-width/lookup.js"() {
447
+ }
545
448
  });
546
449
 
547
450
  // node_modules/get-east-asian-width/index.js
548
- var _isNarrowWidth;
549
451
  var init_get_east_asian_width = __esm({
550
452
  "node_modules/get-east-asian-width/index.js"() {
551
453
  init_lookup();
552
- _isNarrowWidth = (codePoint) =>
553
- !(isFullWidth(codePoint) || isWide(codePoint));
554
- },
454
+ }
555
455
  });
556
456
 
557
- // src/utils/get-string-width.js
457
+ // src/utilities/narrow-emojis.evaluate.js
458
+ var narrow_emojis_evaluate_default;
459
+ var init_narrow_emojis_evaluate = __esm({
460
+ "src/utilities/narrow-emojis.evaluate.js"() {
461
+ narrow_emojis_evaluate_default = "\xA9\xAE\u203C\u2049\u2122\u2139\u2194\u2195\u2196\u2197\u2198\u2199\u21A9\u21AA\u2328\u23CF\u23F1\u23F2\u23F8\u23F9\u23FA\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600\u2601\u2602\u2603\u2604\u260E\u2611\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638\u2639\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694\u2695\u2696\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F1\u26F7\u26F8\u26F9\u2702\u2708\u2709\u270C\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u2764\u27A1\u2934\u2935\u2B05\u2B06\u2B07";
462
+ }
463
+ });
464
+
465
+ // src/utilities/get-string-width.js
558
466
  function getStringWidth(text) {
559
467
  if (!text) {
560
468
  return 0;
@@ -562,31 +470,39 @@ function getStringWidth(text) {
562
470
  if (!notAsciiRegex.test(text)) {
563
471
  return text.length;
564
472
  }
565
- text = text.replace(emoji_regex_default(), " ");
473
+ text = text.replace(
474
+ emoji_regex_default(),
475
+ (match) => narrowEmojisSet.has(match) ? " " : " "
476
+ );
566
477
  let width = 0;
567
478
  for (const character of text) {
568
479
  const codePoint = character.codePointAt(0);
569
- if (codePoint <= 31 || (codePoint >= 127 && codePoint <= 159)) {
480
+ if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
570
481
  continue;
571
482
  }
572
483
  if (codePoint >= 768 && codePoint <= 879) {
573
484
  continue;
574
485
  }
575
- width += _isNarrowWidth(codePoint) ? 1 : 2;
486
+ if (codePoint >= 65024 && codePoint <= 65039) {
487
+ continue;
488
+ }
489
+ width += isFullWidth(codePoint) || isWide(codePoint) ? 2 : 1;
576
490
  }
577
491
  return width;
578
492
  }
579
- var notAsciiRegex, get_string_width_default;
493
+ var notAsciiRegex, narrowEmojisSet, get_string_width_default;
580
494
  var init_get_string_width = __esm({
581
- "src/utils/get-string-width.js"() {
495
+ "src/utilities/get-string-width.js"() {
582
496
  init_emoji_regex();
583
497
  init_get_east_asian_width();
498
+ init_narrow_emojis_evaluate();
584
499
  notAsciiRegex = /[^\x20-\x7F]/u;
500
+ narrowEmojisSet = new Set(narrow_emojis_evaluate_default);
585
501
  get_string_width_default = getStringWidth;
586
- },
502
+ }
587
503
  });
588
504
 
589
- // src/utils/has-newline-in-range.js
505
+ // src/utilities/has-newline-in-range.js
590
506
  function hasNewlineInRange(text, startIndex, endIndex) {
591
507
  for (let i = startIndex; i < endIndex; ++i) {
592
508
  if (text.charAt(i) === "\n") {
@@ -597,84 +513,29 @@ function hasNewlineInRange(text, startIndex, endIndex) {
597
513
  }
598
514
  var has_newline_in_range_default;
599
515
  var init_has_newline_in_range = __esm({
600
- "src/utils/has-newline-in-range.js"() {
516
+ "src/utilities/has-newline-in-range.js"() {
601
517
  has_newline_in_range_default = hasNewlineInRange;
602
- },
518
+ }
603
519
  });
604
520
 
605
- // src/utils/has-spaces.js
521
+ // src/utilities/has-spaces.js
606
522
  function hasSpaces(text, startIndex, options = {}) {
607
523
  const idx = skipSpaces(
608
524
  text,
609
525
  options.backwards ? startIndex - 1 : startIndex,
610
- options,
526
+ options
611
527
  );
612
528
  return idx !== startIndex;
613
529
  }
614
530
  var has_spaces_default;
615
531
  var init_has_spaces = __esm({
616
- "src/utils/has-spaces.js"() {
532
+ "src/utilities/has-spaces.js"() {
617
533
  init_skip();
618
534
  has_spaces_default = hasSpaces;
619
- },
620
- });
621
-
622
- // scripts/build/shims/string-replace-all.js
623
- var stringReplaceAll, string_replace_all_default;
624
- var init_string_replace_all = __esm({
625
- "scripts/build/shims/string-replace-all.js"() {
626
- stringReplaceAll = (isOptionalObject, original, pattern, replacement) => {
627
- if (isOptionalObject && (original === void 0 || original === null)) {
628
- return;
629
- }
630
- if (original.replaceAll) {
631
- return original.replaceAll(pattern, replacement);
632
- }
633
- if (pattern.global) {
634
- return original.replace(pattern, replacement);
635
- }
636
- return original.split(pattern).join(replacement);
637
- };
638
- string_replace_all_default = stringReplaceAll;
639
- },
640
- });
641
-
642
- // src/utils/make-string.js
643
- function makeString(rawText, enclosingQuote, unescapeUnnecessaryEscapes) {
644
- const otherQuote = enclosingQuote === '"' ? "'" : '"';
645
- const regex = /\\(.)|(["'])/gsu;
646
- const raw = string_replace_all_default(
647
- /* isOptionalObject */
648
- false,
649
- rawText,
650
- regex,
651
- (match, escaped, quote) => {
652
- if (escaped === otherQuote) {
653
- return escaped;
654
- }
655
- if (quote === enclosingQuote) {
656
- return "\\" + quote;
657
- }
658
- if (quote) {
659
- return quote;
660
- }
661
- return unescapeUnnecessaryEscapes &&
662
- /^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(escaped)
663
- ? escaped
664
- : "\\" + escaped;
665
- },
666
- );
667
- return enclosingQuote + raw + enclosingQuote;
668
- }
669
- var make_string_default;
670
- var init_make_string = __esm({
671
- "src/utils/make-string.js"() {
672
- init_string_replace_all();
673
- make_string_default = makeString;
674
- },
535
+ }
675
536
  });
676
537
 
677
- // src/utils/public.js
538
+ // src/utilities/public.js
678
539
  var public_exports = {};
679
540
  __export(public_exports, {
680
541
  addDanglingComment: () => addDanglingComment,
@@ -683,10 +544,9 @@ __export(public_exports, {
683
544
  getAlignmentSize: () => get_alignment_size_default,
684
545
  getIndentSize: () => get_indent_size_default,
685
546
  getMaxContinuousCount: () => get_max_continuous_count_default,
686
- getNextNonSpaceNonCommentCharacter: () =>
687
- get_next_non_space_non_comment_character_default,
688
- getNextNonSpaceNonCommentCharacterIndex: () =>
689
- getNextNonSpaceNonCommentCharacterIndex2,
547
+ getNextNonSpaceNonCommentCharacter: () => get_next_non_space_non_comment_character_default,
548
+ getNextNonSpaceNonCommentCharacterIndex: () => getNextNonSpaceNonCommentCharacterIndex2,
549
+ getPreferredQuote: () => get_preferred_quote_default,
690
550
  getStringWidth: () => get_string_width_default,
691
551
  hasNewline: () => has_newline_default,
692
552
  hasNewlineInRange: () => has_newline_in_range_default,
@@ -694,7 +554,7 @@ __export(public_exports, {
694
554
  isNextLineEmpty: () => isNextLineEmpty2,
695
555
  isNextLineEmptyAfterIndex: () => is_next_line_empty_default,
696
556
  isPreviousLineEmpty: () => isPreviousLineEmpty2,
697
- makeString: () => make_string_default,
557
+ makeString: () => makeString,
698
558
  skip: () => skip,
699
559
  skipEverythingButNewLine: () => skipEverythingButNewLine,
700
560
  skipInlineComment: () => skip_inline_comment_default,
@@ -702,68 +562,94 @@ __export(public_exports, {
702
562
  skipSpaces: () => skipSpaces,
703
563
  skipToLineEnd: () => skipToLineEnd,
704
564
  skipTrailingComment: () => skip_trailing_comment_default,
705
- skipWhitespace: () => skipWhitespace,
565
+ skipWhitespace: () => skipWhitespace
706
566
  });
707
567
  function legacyGetNextNonSpaceNonCommentCharacterIndex(text, node, locEnd) {
708
- return get_next_non_space_non_comment_character_index_default(
709
- text,
710
- locEnd(node),
711
- );
568
+ return get_next_non_space_non_comment_character_index_default(text, locEnd(node));
712
569
  }
713
570
  function getNextNonSpaceNonCommentCharacterIndex2(text, startIndex) {
714
- return arguments.length === 2 || typeof startIndex === "number"
715
- ? get_next_non_space_non_comment_character_index_default(text, startIndex)
716
- : // @ts-expect-error -- expected
717
- // eslint-disable-next-line prefer-rest-params
718
- legacyGetNextNonSpaceNonCommentCharacterIndex(...arguments);
571
+ return arguments.length === 2 || typeof startIndex === "number" ? get_next_non_space_non_comment_character_index_default(text, startIndex) : (
572
+ // @ts-expect-error -- expected
573
+ // eslint-disable-next-line prefer-rest-params
574
+ legacyGetNextNonSpaceNonCommentCharacterIndex(...arguments)
575
+ );
719
576
  }
720
577
  function legacyIsPreviousLineEmpty(text, node, locStart) {
721
578
  return is_previous_line_empty_default(text, locStart(node));
722
579
  }
723
580
  function isPreviousLineEmpty2(text, startIndex) {
724
- return arguments.length === 2 || typeof startIndex === "number"
725
- ? is_previous_line_empty_default(text, startIndex)
726
- : // @ts-expect-error -- expected
727
- // eslint-disable-next-line prefer-rest-params
728
- legacyIsPreviousLineEmpty(...arguments);
581
+ return arguments.length === 2 || typeof startIndex === "number" ? is_previous_line_empty_default(text, startIndex) : (
582
+ // @ts-expect-error -- expected
583
+ // eslint-disable-next-line prefer-rest-params
584
+ legacyIsPreviousLineEmpty(...arguments)
585
+ );
729
586
  }
730
587
  function legacyIsNextLineEmpty(text, node, locEnd) {
731
588
  return is_next_line_empty_default(text, locEnd(node));
732
589
  }
590
+ function makeString(rawText, enclosingQuote, unescapeUnnecessaryEscapes) {
591
+ const otherQuote = enclosingQuote === '"' ? "'" : '"';
592
+ const regex = /\\(.)|(["'])/gsu;
593
+ const raw = method_replace_all_default(
594
+ /* OPTIONAL_OBJECT: false */
595
+ 0,
596
+ rawText,
597
+ regex,
598
+ (match, escaped, quote) => {
599
+ if (escaped === otherQuote) {
600
+ return escaped;
601
+ }
602
+ if (quote === enclosingQuote) {
603
+ return "\\" + quote;
604
+ }
605
+ if (quote) {
606
+ return quote;
607
+ }
608
+ return unescapeUnnecessaryEscapes && /^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(escaped) ? escaped : "\\" + escaped;
609
+ }
610
+ );
611
+ return enclosingQuote + raw + enclosingQuote;
612
+ }
733
613
  function isNextLineEmpty2(text, startIndex) {
734
- return arguments.length === 2 || typeof startIndex === "number"
735
- ? is_next_line_empty_default(text, startIndex)
736
- : // @ts-expect-error -- expected
737
- // eslint-disable-next-line prefer-rest-params
738
- legacyIsNextLineEmpty(...arguments);
614
+ return arguments.length === 2 || typeof startIndex === "number" ? is_next_line_empty_default(text, startIndex) : (
615
+ // @ts-expect-error -- expected
616
+ // eslint-disable-next-line prefer-rest-params
617
+ legacyIsNextLineEmpty(...arguments)
618
+ );
739
619
  }
740
620
  var init_public = __esm({
741
- "src/utils/public.js"() {
621
+ "src/utilities/public.js"() {
622
+ init_method_replace_all();
742
623
  init_get_next_non_space_non_comment_character_index();
743
624
  init_is_next_line_empty();
744
625
  init_is_previous_line_empty();
745
- init_utils();
626
+ init_utilities();
746
627
  init_get_alignment_size();
747
628
  init_get_indent_size();
748
629
  init_get_max_continuous_count();
749
630
  init_get_next_non_space_non_comment_character();
631
+ init_get_preferred_quote();
750
632
  init_get_string_width();
751
633
  init_has_newline();
752
634
  init_has_newline_in_range();
753
635
  init_has_spaces();
754
- init_make_string();
755
636
  init_skip();
756
637
  init_skip_inline_comment();
757
638
  init_skip_newline();
758
639
  init_skip_trailing_comment();
759
- },
640
+ }
760
641
  });
761
642
 
762
- // src/main/version.evaluate.cjs
763
- var require_version_evaluate = __commonJS({
764
- "src/main/version.evaluate.cjs"(exports2, module2) {
765
- module2.exports = "3.3.3";
766
- },
643
+ // src/main/version.evaluate.js
644
+ var version_evaluate_exports = {};
645
+ __export(version_evaluate_exports, {
646
+ default: () => version_evaluate_default
647
+ });
648
+ var version_evaluate_default;
649
+ var init_version_evaluate = __esm({
650
+ "src/main/version.evaluate.js"() {
651
+ version_evaluate_default = "3.8.4";
652
+ }
767
653
  });
768
654
 
769
655
  // src/index.cjs
@@ -776,7 +662,7 @@ var functionNames = [
776
662
  "resolveConfigFile",
777
663
  "clearConfigCache",
778
664
  "getFileInfo",
779
- "getSupportInfo",
665
+ "getSupportInfo"
780
666
  ];
781
667
  var prettier = /* @__PURE__ */ Object.create(null);
782
668
  for (const name of functionNames) {
@@ -790,7 +676,7 @@ var debugApiFunctionNames = [
790
676
  "formatAST",
791
677
  "formatDoc",
792
678
  "printToDoc",
793
- "printDocToString",
679
+ "printDocToString"
794
680
  ];
795
681
  var debugApis = /* @__PURE__ */ Object.create(null);
796
682
  for (const name of debugApiFunctionNames) {
@@ -803,23 +689,32 @@ prettier.__debug = debugApis;
803
689
  if (true) {
804
690
  prettier.util = (init_public(), __toCommonJS(public_exports));
805
691
  prettier.doc = require("./doc.js");
692
+ prettier.version = (init_version_evaluate(), __toCommonJS(version_evaluate_exports)).default;
806
693
  } else {
807
694
  Object.defineProperties(prettier, {
808
695
  util: {
809
696
  get() {
697
+ try {
698
+ return null;
699
+ } catch {
700
+ }
810
701
  throw new Error(
811
- "prettier.util is not available in development CommonJS version",
702
+ "prettier.util is not available in development CommonJS version"
812
703
  );
813
- },
704
+ }
814
705
  },
815
706
  doc: {
816
707
  get() {
708
+ try {
709
+ return null;
710
+ } catch {
711
+ }
817
712
  throw new Error(
818
- "prettier.doc is not available in development CommonJS version",
713
+ "prettier.doc is not available in development CommonJS version"
819
714
  );
820
- },
821
- },
715
+ }
716
+ }
822
717
  });
718
+ prettier.version = null.version;
823
719
  }
824
- prettier.version = require_version_evaluate();
825
720
  module.exports = prettier;