"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __esm = (fn, res) => function __init() { return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; }; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/utils/skip-inline-comment.js function skipInlineComment(text, startIndex) { if (startIndex === false) { return false; } if (text.charAt(startIndex) === "/" && text.charAt(startIndex + 1) === "*") { for (let i = startIndex + 2; i < text.length; ++i) { if (text.charAt(i) === "*" && text.charAt(i + 1) === "/") { return i + 2; } } } return startIndex; } var skip_inline_comment_default; var init_skip_inline_comment = __esm({ "src/utils/skip-inline-comment.js"() { skip_inline_comment_default = skipInlineComment; } }); // src/utils/skip-newline.js function skipNewline(text, startIndex, options) { const backwards = Boolean(options == null ? void 0 : options.backwards); if (startIndex === false) { return false; } const character = text.charAt(startIndex); if (backwards) { if (text.charAt(startIndex - 1) === "\r" && character === "\n") { return startIndex - 2; } if (character === "\n" || character === "\r" || character === "\u2028" || character === "\u2029") { return startIndex - 1; } } else { if (character === "\r" && text.charAt(startIndex + 1) === "\n") { return startIndex + 2; } if (character === "\n" || character === "\r" || character === "\u2028" || character === "\u2029") { return startIndex + 1; } } return startIndex; } var skip_newline_default; var init_skip_newline = __esm({ "src/utils/skip-newline.js"() { skip_newline_default = skipNewline; } }); // src/utils/skip.js function skip(characters) { return (text, startIndex, options) => { const backwards = Boolean(options == null ? void 0 : options.backwards); if (startIndex === false) { return false; } const { length } = text; let cursor = startIndex; while (cursor >= 0 && cursor < length) { const character = text.charAt(cursor); if (characters instanceof RegExp) { if (!characters.test(character)) { return cursor; } } else if (!characters.includes(character)) { return cursor; } backwards ? cursor-- : cursor++; } if (cursor === -1 || cursor === length) { return cursor; } return false; }; } var skipWhitespace, skipSpaces, skipToLineEnd, skipEverythingButNewLine; var init_skip = __esm({ "src/utils/skip.js"() { skipWhitespace = skip(/\s/); skipSpaces = skip(" "); skipToLineEnd = skip(",; "); skipEverythingButNewLine = skip(/[^\n\r]/); } }); // src/utils/skip-trailing-comment.js function skipTrailingComment(text, startIndex) { if (startIndex === false) { return false; } if (text.charAt(startIndex) === "/" && text.charAt(startIndex + 1) === "/") { return skipEverythingButNewLine(text, startIndex); } return startIndex; } var skip_trailing_comment_default; var init_skip_trailing_comment = __esm({ "src/utils/skip-trailing-comment.js"() { init_skip(); skip_trailing_comment_default = skipTrailingComment; } }); // src/utils/get-next-non-space-non-comment-character-index.js function getNextNonSpaceNonCommentCharacterIndex(text, startIndex) { let oldIdx = null; let nextIdx = startIndex; while (nextIdx !== oldIdx) { oldIdx = nextIdx; nextIdx = skipSpaces(text, nextIdx); nextIdx = skip_inline_comment_default(text, nextIdx); nextIdx = skip_trailing_comment_default(text, nextIdx); nextIdx = skip_newline_default(text, nextIdx); } return nextIdx; } var get_next_non_space_non_comment_character_index_default; var init_get_next_non_space_non_comment_character_index = __esm({ "src/utils/get-next-non-space-non-comment-character-index.js"() { init_skip_inline_comment(); init_skip_newline(); init_skip_trailing_comment(); init_skip(); get_next_non_space_non_comment_character_index_default = getNextNonSpaceNonCommentCharacterIndex; } }); // src/utils/is-previous-line-empty.js function isPreviousLineEmpty(text, startIndex) { let idx = startIndex - 1; idx = skipSpaces(text, idx, { backwards: true }); idx = skip_newline_default(text, idx, { backwards: true }); idx = skipSpaces(text, idx, { backwards: true }); const idx2 = skip_newline_default(text, idx, { backwards: true }); return idx !== idx2; } var is_previous_line_empty_default; var init_is_previous_line_empty = __esm({ "src/utils/is-previous-line-empty.js"() { init_skip_newline(); init_skip(); is_previous_line_empty_default = isPreviousLineEmpty; } }); // src/utils/has-newline.js function hasNewline(text, startIndex, options = {}) { const idx = skipSpaces( text, options.backwards ? startIndex - 1 : startIndex, options ); const idx2 = skip_newline_default(text, idx, options); return idx !== idx2; } var has_newline_default; var init_has_newline = __esm({ "src/utils/has-newline.js"() { init_skip(); init_skip_newline(); has_newline_default = hasNewline; } }); // src/utils/is-next-line-empty.js function isNextLineEmpty(text, startIndex) { let oldIdx = null; let idx = startIndex; while (idx !== oldIdx) { oldIdx = idx; idx = skipToLineEnd(text, idx); idx = skip_inline_comment_default(text, idx); idx = skipSpaces(text, idx); } idx = skip_trailing_comment_default(text, idx); idx = skip_newline_default(text, idx); return idx !== false && has_newline_default(text, idx); } var is_next_line_empty_default; var init_is_next_line_empty = __esm({ "src/utils/is-next-line-empty.js"() { init_skip_newline(); init_skip(); init_skip_inline_comment(); init_skip_trailing_comment(); init_has_newline(); is_next_line_empty_default = isNextLineEmpty; } }); // node_modules/escape-string-regexp/index.js function escapeStringRegexp(string) { if (typeof string !== "string") { throw new TypeError("Expected a string"); } return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); } var init_escape_string_regexp = __esm({ "node_modules/escape-string-regexp/index.js"() { } }); // src/utils/get-max-continuous-count.js function getMaxContinuousCount(text, searchString) { const results = text.match( new RegExp(`(${escapeStringRegexp(searchString)})+`, "g") ); if (results === null) { return 0; } return results.reduce( (maxCount, result) => Math.max(maxCount, result.length / searchString.length), 0 ); } var get_max_continuous_count_default; var init_get_max_continuous_count = __esm({ "src/utils/get-max-continuous-count.js"() { init_escape_string_regexp(); get_max_continuous_count_default = getMaxContinuousCount; } }); // node_modules/emoji-regex/index.mjs var emoji_regex_default; var init_emoji_regex = __esm({ "node_modules/emoji-regex/index.mjs"() { emoji_regex_default = () => { 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\u26D3\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]|\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])?|[\uDFC3\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-\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]|\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(?:[\uDC08\uDC26](?:\u200D\u2B1B)?|[\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-\uDEB6](?:\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-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC15(?:\u200D\uD83E\uDDBA)?|\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-\uDDB3\uDDBC\uDDBD])|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD])|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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?)?)|\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])?|\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-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1))|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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; }; } }); // node_modules/eastasianwidth/eastasianwidth.js var eastasianwidth_default; var init_eastasianwidth = __esm({ "node_modules/eastasianwidth/eastasianwidth.js"() { eastasianwidth_default = { eastAsianWidth(character) { var x = character.charCodeAt(0); var y = character.length == 2 ? character.charCodeAt(1) : 0; var codePoint = x; if (55296 <= x && x <= 56319 && 56320 <= y && y <= 57343) { x &= 1023; y &= 1023; codePoint = x << 10 | y; codePoint += 65536; } if (12288 == codePoint || 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510) { return "F"; } if (4352 <= codePoint && codePoint <= 4447 || 4515 <= codePoint && codePoint <= 4519 || 4602 <= codePoint && codePoint <= 4607 || 9001 <= codePoint && codePoint <= 9002 || 11904 <= codePoint && codePoint <= 11929 || 11931 <= codePoint && codePoint <= 12019 || 12032 <= codePoint && codePoint <= 12245 || 12272 <= codePoint && codePoint <= 12283 || 12289 <= codePoint && codePoint <= 12350 || 12353 <= codePoint && codePoint <= 12438 || 12441 <= codePoint && codePoint <= 12543 || 12549 <= codePoint && codePoint <= 12589 || 12593 <= codePoint && codePoint <= 12686 || 12688 <= codePoint && codePoint <= 12730 || 12736 <= codePoint && codePoint <= 12771 || 12784 <= codePoint && codePoint <= 12830 || 12832 <= codePoint && codePoint <= 12871 || 12880 <= codePoint && codePoint <= 13054 || 13056 <= codePoint && codePoint <= 19903 || 19968 <= codePoint && codePoint <= 42124 || 42128 <= codePoint && codePoint <= 42182 || 43360 <= codePoint && codePoint <= 43388 || 44032 <= codePoint && codePoint <= 55203 || 55216 <= codePoint && codePoint <= 55238 || 55243 <= codePoint && codePoint <= 55291 || 63744 <= codePoint && codePoint <= 64255 || 65040 <= codePoint && codePoint <= 65049 || 65072 <= codePoint && codePoint <= 65106 || 65108 <= codePoint && codePoint <= 65126 || 65128 <= codePoint && codePoint <= 65131 || 110592 <= codePoint && codePoint <= 110593 || 127488 <= codePoint && codePoint <= 127490 || 127504 <= codePoint && codePoint <= 127546 || 127552 <= codePoint && codePoint <= 127560 || 127568 <= codePoint && codePoint <= 127569 || 131072 <= codePoint && codePoint <= 194367 || 177984 <= codePoint && codePoint <= 196605 || 196608 <= codePoint && codePoint <= 262141) { return "W"; } return "N"; } }; } }); // src/utils/get-string-width.js function getStringWidth(text) { if (!text) { return 0; } if (!notAsciiRegex.test(text)) { return text.length; } text = text.replace(emoji_regex_default(), " "); let width = 0; for (const character of text) { const codePoint = character.codePointAt(0); if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) { continue; } if (codePoint >= 768 && codePoint <= 879) { continue; } const code = eastasianwidth_default.eastAsianWidth(character); width += code === "F" || code === "W" ? 2 : 1; } return width; } var notAsciiRegex, get_string_width_default; var init_get_string_width = __esm({ "src/utils/get-string-width.js"() { init_emoji_regex(); init_eastasianwidth(); notAsciiRegex = /[^\x20-\x7F]/; get_string_width_default = getStringWidth; } }); // src/utils/get-alignment-size.js function getAlignmentSize(text, tabWidth, startIndex = 0) { let size = 0; for (let i = startIndex; i < text.length; ++i) { if (text[i] === " ") { size = size + tabWidth - size % tabWidth; } else { size++; } } return size; } var get_alignment_size_default; var init_get_alignment_size = __esm({ "src/utils/get-alignment-size.js"() { get_alignment_size_default = getAlignmentSize; } }); // src/utils/get-indent-size.js function getIndentSize(value, tabWidth) { const lastNewlineIndex = value.lastIndexOf("\n"); if (lastNewlineIndex === -1) { return 0; } return get_alignment_size_default( // All the leading whitespaces value.slice(lastNewlineIndex + 1).match(/^[\t ]*/)[0], tabWidth ); } var get_indent_size_default; var init_get_indent_size = __esm({ "src/utils/get-indent-size.js"() { init_get_alignment_size(); get_indent_size_default = getIndentSize; } }); // src/utils/has-newline-in-range.js function hasNewlineInRange(text, startIndex, endIndex) { for (let i = startIndex; i < endIndex; ++i) { if (text.charAt(i) === "\n") { return true; } } return false; } var has_newline_in_range_default; var init_has_newline_in_range = __esm({ "src/utils/has-newline-in-range.js"() { has_newline_in_range_default = hasNewlineInRange; } }); // src/utils/has-spaces.js function hasSpaces(text, startIndex, options = {}) { const idx = skipSpaces( text, options.backwards ? startIndex - 1 : startIndex, options ); return idx !== startIndex; } var has_spaces_default; var init_has_spaces = __esm({ "src/utils/has-spaces.js"() { init_skip(); has_spaces_default = hasSpaces; } }); // src/utils/get-next-non-space-non-comment-character.js function getNextNonSpaceNonCommentCharacter(text, startIndex) { const index = get_next_non_space_non_comment_character_index_default(text, startIndex); return index === false ? "" : text.charAt(index); } var get_next_non_space_non_comment_character_default; var init_get_next_non_space_non_comment_character = __esm({ "src/utils/get-next-non-space-non-comment-character.js"() { init_get_next_non_space_non_comment_character_index(); get_next_non_space_non_comment_character_default = getNextNonSpaceNonCommentCharacter; } }); // scripts/build/shims/string-replace-all.js var stringReplaceAll, string_replace_all_default; var init_string_replace_all = __esm({ "scripts/build/shims/string-replace-all.js"() { stringReplaceAll = (isOptionalObject, original, pattern, replacement) => { if (isOptionalObject && (original === void 0 || original === null)) { return; } if (original.replaceAll) { return original.replaceAll(pattern, replacement); } if (pattern.global) { return original.replace(pattern, replacement); } return original.split(pattern).join(replacement); }; string_replace_all_default = stringReplaceAll; } }); // src/utils/make-string.js function makeString(rawText, enclosingQuote, unescapeUnnecessaryEscapes) { const otherQuote = enclosingQuote === '"' ? "'" : '"'; const regex = /\\(.)|(["'])/gs; const raw = string_replace_all_default( /* isOptionalObject*/ false, rawText, regex, (match, escaped, quote) => { if (escaped === otherQuote) { return escaped; } if (quote === enclosingQuote) { return "\\" + quote; } if (quote) { return quote; } return unescapeUnnecessaryEscapes && /^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(escaped) ? escaped : "\\" + escaped; } ); return enclosingQuote + raw + enclosingQuote; } var make_string_default; var init_make_string = __esm({ "src/utils/make-string.js"() { init_string_replace_all(); make_string_default = makeString; } }); // src/main/comments/utils.js function describeNodeForDebugging(node) { const nodeType = node.type || node.kind || "(unknown type)"; let nodeName = String( 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 || "" ); if (nodeName.length > 20) { nodeName = nodeName.slice(0, 19) + "\u2026"; } return nodeType + (nodeName ? " " + nodeName : ""); } function addCommentHelper(node, comment) { const comments = node.comments ?? (node.comments = []); comments.push(comment); comment.printed = false; comment.nodeDescription = describeNodeForDebugging(node); } function addLeadingComment(node, comment) { comment.leading = true; comment.trailing = false; addCommentHelper(node, comment); } function addDanglingComment(node, comment, marker) { comment.leading = false; comment.trailing = false; if (marker) { comment.marker = marker; } addCommentHelper(node, comment); } function addTrailingComment(node, comment) { comment.leading = false; comment.trailing = true; addCommentHelper(node, comment); } var init_utils = __esm({ "src/main/comments/utils.js"() { } }); // src/utils/public.js var public_exports = {}; __export(public_exports, { addDanglingComment: () => addDanglingComment, addLeadingComment: () => addLeadingComment, addTrailingComment: () => addTrailingComment, getAlignmentSize: () => get_alignment_size_default, getIndentSize: () => get_indent_size_default, getMaxContinuousCount: () => get_max_continuous_count_default, getNextNonSpaceNonCommentCharacter: () => get_next_non_space_non_comment_character_default, getNextNonSpaceNonCommentCharacterIndex: () => getNextNonSpaceNonCommentCharacterIndex2, getStringWidth: () => get_string_width_default, hasNewline: () => has_newline_default, hasNewlineInRange: () => has_newline_in_range_default, hasSpaces: () => has_spaces_default, isNextLineEmpty: () => isNextLineEmpty2, isNextLineEmptyAfterIndex: () => is_next_line_empty_default, isPreviousLineEmpty: () => isPreviousLineEmpty2, makeString: () => make_string_default, skip: () => skip, skipEverythingButNewLine: () => skipEverythingButNewLine, skipInlineComment: () => skip_inline_comment_default, skipNewline: () => skip_newline_default, skipSpaces: () => skipSpaces, skipToLineEnd: () => skipToLineEnd, skipTrailingComment: () => skip_trailing_comment_default, skipWhitespace: () => skipWhitespace }); function legacyGetNextNonSpaceNonCommentCharacterIndex(text, node, locEnd) { return get_next_non_space_non_comment_character_index_default( text, locEnd(node) ); } function getNextNonSpaceNonCommentCharacterIndex2(text, startIndex) { return arguments.length === 2 || typeof startIndex === "number" ? get_next_non_space_non_comment_character_index_default(text, startIndex) : ( // @ts-expect-error -- expected // eslint-disable-next-line prefer-rest-params legacyGetNextNonSpaceNonCommentCharacterIndex(...arguments) ); } function legacyIsPreviousLineEmpty(text, node, locStart) { return is_previous_line_empty_default(text, locStart(node)); } function isPreviousLineEmpty2(text, startIndex) { return arguments.length === 2 || typeof startIndex === "number" ? is_previous_line_empty_default(text, startIndex) : ( // @ts-expect-error -- expected // eslint-disable-next-line prefer-rest-params legacyIsPreviousLineEmpty(...arguments) ); } function legacyIsNextLineEmpty(text, node, locEnd) { return is_next_line_empty_default(text, locEnd(node)); } function isNextLineEmpty2(text, startIndex) { return arguments.length === 2 || typeof startIndex === "number" ? is_next_line_empty_default(text, startIndex) : ( // @ts-expect-error -- expected // eslint-disable-next-line prefer-rest-params legacyIsNextLineEmpty(...arguments) ); } var init_public = __esm({ "src/utils/public.js"() { init_get_next_non_space_non_comment_character_index(); init_is_previous_line_empty(); init_is_next_line_empty(); init_get_max_continuous_count(); init_get_string_width(); init_get_alignment_size(); init_get_indent_size(); init_skip_newline(); init_skip_inline_comment(); init_skip_trailing_comment(); init_has_newline(); init_has_newline_in_range(); init_has_spaces(); init_get_next_non_space_non_comment_character(); init_make_string(); init_skip(); init_utils(); } }); // src/main/version.evaluate.cjs var require_version_evaluate = __commonJS({ "src/main/version.evaluate.cjs"(exports2, module2) { module2.exports = "3.0.0"; } }); // src/index.cjs var prettierPromise = import("./index.mjs"); var functionNames = [ "formatWithCursor", "format", "check", "resolveConfig", "resolveConfigFile", "clearConfigCache", "getFileInfo", "getSupportInfo" ]; var prettier = /* @__PURE__ */ Object.create(null); for (const name of functionNames) { prettier[name] = async (...args) => { const prettier2 = await prettierPromise; return prettier2[name](...args); }; } var debugApiFunctionNames = [ "parse", "formatAST", "formatDoc", "printToDoc", "printDocToString" ]; var debugApis = /* @__PURE__ */ Object.create(null); for (const name of debugApiFunctionNames) { debugApis[name] = async (...args) => { const prettier2 = await prettierPromise; return prettier2.__debug[name](...args); }; } prettier.__debug = debugApis; if (true) { prettier.util = (init_public(), __toCommonJS(public_exports)); prettier.doc = require("./doc.js"); } else { Object.defineProperties(prettier, { util: { get() { throw new Error( "prettier.util is not available in development CommonJS version" ); } }, doc: { get() { throw new Error( "prettier.doc is not available in development CommonJS version" ); } } }); } prettier.version = require_version_evaluate(); module.exports = prettier;