@opentui/core 0.3.4 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NativeSpanFeed.d.ts +4 -0
- package/{index-54s7pk0d.js → index-59t85rvq.js} +3129 -2499
- package/index-59t85rvq.js.map +84 -0
- package/index.js +11256 -77
- package/index.js.map +29 -3
- package/lib/selection.d.ts +2 -1
- package/lib/singleton.d.ts +1 -0
- package/lib/tree-sitter/client.d.ts +17 -1
- package/lib/tree-sitter/index.d.ts +1 -0
- package/lib/tree-sitter/types.d.ts +104 -1
- package/lib/tree-sitter/update-assets.js +8 -6
- package/lib/tree-sitter/update-assets.js.map +3 -3
- package/package.json +27 -34
- package/parser.worker.js +452 -78
- package/parser.worker.js.map +8 -7
- package/platform/ffi.d.ts +6 -3
- package/platform/test.d.ts +12 -0
- package/platform/worker.d.ts +26 -4
- package/platform/worker.node-test.d.ts +1 -0
- package/runtime-plugin-support-configure.js +36 -18
- package/runtime-plugin-support-configure.js.map +1 -9
- package/runtime-plugin-support-configure.node.js +15 -0
- package/runtime-plugin-support.js +4 -19
- package/runtime-plugin-support.js.map +1 -10
- package/runtime-plugin-support.node.js +15 -0
- package/runtime-plugin.js +473 -16
- package/runtime-plugin.js.map +1 -9
- package/runtime-plugin.node.js +15 -0
- package/testing/bun-test-node.d.ts +87 -0
- package/testing/mock-tree-sitter-client.d.ts +4 -0
- package/testing.js +15 -9
- package/testing.js.map +3 -3
- package/zig.d.ts +1 -1
- package/index-0nvgrgam.js +0 -11684
- package/index-0nvgrgam.js.map +0 -35
- package/index-54s7pk0d.js.map +0 -84
- package/index-8t841rbx.js +0 -44
- package/index-8t841rbx.js.map +0 -10
- package/index-r49y8kdq.js +0 -421
- package/index-r49y8kdq.js.map +0 -10
package/parser.worker.js
CHANGED
|
@@ -1,5 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
var
|
|
1
|
+
import { createRequire } from "node:module";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
function __accessProp(key) {
|
|
8
|
+
return this[key];
|
|
9
|
+
}
|
|
10
|
+
var __toESMCache_node;
|
|
11
|
+
var __toESMCache_esm;
|
|
12
|
+
var __toESM = (mod, isNodeMode, target) => {
|
|
13
|
+
var canCache = mod != null && typeof mod === "object";
|
|
14
|
+
if (canCache) {
|
|
15
|
+
var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
|
|
16
|
+
var cached = cache.get(mod);
|
|
17
|
+
if (cached)
|
|
18
|
+
return cached;
|
|
19
|
+
}
|
|
20
|
+
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
21
|
+
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
22
|
+
for (let key of __getOwnPropNames(mod))
|
|
23
|
+
if (!__hasOwnProp.call(to, key))
|
|
24
|
+
__defProp(to, key, {
|
|
25
|
+
get: __accessProp.bind(mod, key),
|
|
26
|
+
enumerable: true
|
|
27
|
+
});
|
|
28
|
+
if (canCache)
|
|
29
|
+
cache.set(mod, to);
|
|
30
|
+
return to;
|
|
31
|
+
};
|
|
32
|
+
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
33
|
+
var __require = /* @__PURE__ */ createRequire(import.meta.url);
|
|
34
|
+
|
|
35
|
+
// ../../node_modules/.bun/emoji-regex@10.6.0/node_modules/emoji-regex/index.js
|
|
36
|
+
var require_emoji_regex = __commonJS((exports, module) => {
|
|
37
|
+
module.exports = () => {
|
|
38
|
+
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;
|
|
39
|
+
};
|
|
40
|
+
});
|
|
3
41
|
|
|
4
42
|
// src/lib/tree-sitter/parser.worker.ts
|
|
5
43
|
import { Parser, Query, Language } from "web-tree-sitter";
|
|
@@ -114,11 +152,8 @@ class DownloadUtils {
|
|
|
114
152
|
}
|
|
115
153
|
}
|
|
116
154
|
|
|
117
|
-
// src/lib/tree-sitter/parser.worker.ts
|
|
118
|
-
import { isMainThread } from "worker_threads";
|
|
119
|
-
|
|
120
155
|
// src/lib/bunfs.ts
|
|
121
|
-
import { basename as basename2, join as join2 } from "path";
|
|
156
|
+
import { basename as basename2, join as join2 } from "node:path";
|
|
122
157
|
function isBunfsPath(path2) {
|
|
123
158
|
return path2.includes("$bunfs") || /^B:[\\/]~BUN/i.test(path2);
|
|
124
159
|
}
|
|
@@ -130,9 +165,10 @@ function normalizeBunfsPath(fileName) {
|
|
|
130
165
|
}
|
|
131
166
|
|
|
132
167
|
// src/platform/runtime.ts
|
|
133
|
-
import {
|
|
134
|
-
import {
|
|
135
|
-
import {
|
|
168
|
+
import { existsSync } from "node:fs";
|
|
169
|
+
import { mkdir as mkdir2, writeFile as writeFileNode } from "node:fs/promises";
|
|
170
|
+
import { dirname as dirname2, isAbsolute, resolve } from "node:path";
|
|
171
|
+
import { fileURLToPath } from "node:url";
|
|
136
172
|
|
|
137
173
|
// ../../node_modules/.bun/ansi-regex@6.2.2/node_modules/ansi-regex/index.js
|
|
138
174
|
function ansiRegex({ onlyFirst = false } = {}) {
|
|
@@ -177,12 +213,8 @@ function eastAsianWidth(codePoint, { ambiguousAsWide = false } = {}) {
|
|
|
177
213
|
return 1;
|
|
178
214
|
}
|
|
179
215
|
|
|
180
|
-
// ../../node_modules/.bun/emoji-regex@10.6.0/node_modules/emoji-regex/index.mjs
|
|
181
|
-
var emoji_regex_default = () => {
|
|
182
|
-
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;
|
|
183
|
-
};
|
|
184
|
-
|
|
185
216
|
// ../../node_modules/.bun/string-width@7.2.0/node_modules/string-width/index.js
|
|
217
|
+
var import_emoji_regex = __toESM(require_emoji_regex(), 1);
|
|
186
218
|
var segmenter = new Intl.Segmenter;
|
|
187
219
|
var defaultIgnorableCodePointRegex = /^\p{Default_Ignorable_Code_Point}$/u;
|
|
188
220
|
function stringWidth(string, options = {}) {
|
|
@@ -221,7 +253,7 @@ function stringWidth(string, options = {}) {
|
|
|
221
253
|
if (defaultIgnorableCodePointRegex.test(character)) {
|
|
222
254
|
continue;
|
|
223
255
|
}
|
|
224
|
-
if (
|
|
256
|
+
if (import_emoji_regex.default().test(character)) {
|
|
225
257
|
width += 2;
|
|
226
258
|
continue;
|
|
227
259
|
}
|
|
@@ -239,17 +271,43 @@ var stripANSI = bun?.stripANSI ?? stripAnsi;
|
|
|
239
271
|
var writeFile2 = bun?.write ?? writeFilePortable;
|
|
240
272
|
async function resolveBundledFilePath(loadBundledFile, fallbackPath, metaUrl) {
|
|
241
273
|
if (!bun) {
|
|
242
|
-
const path2 =
|
|
243
|
-
|
|
274
|
+
const path2 = resolveFallbackFilePath(fallbackPath, metaUrl);
|
|
275
|
+
if (existsSync(path2)) {
|
|
276
|
+
return path2;
|
|
277
|
+
}
|
|
278
|
+
return await loadBundledFilePath(loadBundledFile, metaUrl) ?? path2;
|
|
244
279
|
}
|
|
245
|
-
|
|
280
|
+
return normalizeLoadedFilePath((await loadBundledFile()).default, metaUrl);
|
|
281
|
+
}
|
|
282
|
+
function resolveFallbackFilePath(fallbackPath, metaUrl) {
|
|
283
|
+
const path2 = typeof fallbackPath === "function" ? fallbackPath() : fallbackPath;
|
|
284
|
+
return fileURLToPath(path2 instanceof URL ? path2 : new URL(path2, metaUrl));
|
|
285
|
+
}
|
|
286
|
+
function normalizeLoadedFilePath(loadedPath, baseUrl) {
|
|
246
287
|
if (loadedPath.startsWith("file:")) {
|
|
247
288
|
return fileURLToPath(loadedPath);
|
|
248
289
|
}
|
|
249
290
|
if (isAbsolute(loadedPath)) {
|
|
250
291
|
return loadedPath;
|
|
251
292
|
}
|
|
252
|
-
return resolve(dirname2(fileURLToPath(
|
|
293
|
+
return resolve(dirname2(fileURLToPath(baseUrl)), loadedPath);
|
|
294
|
+
}
|
|
295
|
+
async function loadBundledFilePath(loadBundledFile, metaUrl) {
|
|
296
|
+
const specifier = extractBundledImportSpecifier(loadBundledFile);
|
|
297
|
+
if (!specifier) {
|
|
298
|
+
return;
|
|
299
|
+
}
|
|
300
|
+
try {
|
|
301
|
+
const moduleUrl = new URL(specifier, metaUrl);
|
|
302
|
+
const loaded = await import(moduleUrl.href);
|
|
303
|
+
return normalizeLoadedFilePath(loaded.default, moduleUrl.href);
|
|
304
|
+
} catch {
|
|
305
|
+
return;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
function extractBundledImportSpecifier(loadBundledFile) {
|
|
309
|
+
const match = String(loadBundledFile).match(/\bimport\(\s*(["'`])([^"'`]+)\1/);
|
|
310
|
+
return match?.[2];
|
|
253
311
|
}
|
|
254
312
|
function standardSleep(msOrDate) {
|
|
255
313
|
const ms = msOrDate instanceof Date ? msOrDate.getTime() - Date.now() : msOrDate;
|
|
@@ -265,9 +323,272 @@ async function writeFilePortable(destination, data, options) {
|
|
|
265
323
|
return bytes.byteLength;
|
|
266
324
|
}
|
|
267
325
|
|
|
268
|
-
// src/
|
|
269
|
-
var
|
|
326
|
+
// src/platform/worker.ts
|
|
327
|
+
var WORKER_UNAVAILABLE = "OpenTUI tree-sitter workers are not available for this runtime yet.";
|
|
328
|
+
var globalWithWorker = globalThis;
|
|
329
|
+
var nodeWorkerThreads = getBuiltinModule("node:worker_threads");
|
|
330
|
+
var runtimeBridge = loadWorkerRuntime(nodeWorkerThreads);
|
|
270
331
|
|
|
332
|
+
class UnsupportedWorker {
|
|
333
|
+
onmessage = null;
|
|
334
|
+
onerror = null;
|
|
335
|
+
constructor() {
|
|
336
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
337
|
+
}
|
|
338
|
+
postMessage() {
|
|
339
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
340
|
+
}
|
|
341
|
+
terminate() {
|
|
342
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
343
|
+
}
|
|
344
|
+
addEventListener() {
|
|
345
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
346
|
+
}
|
|
347
|
+
removeEventListener() {
|
|
348
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
var Worker = loadWorkerConstructor();
|
|
352
|
+
var isWorkerRuntime = runtimeBridge !== undefined;
|
|
353
|
+
function postWorkerMessage(value) {
|
|
354
|
+
if (!runtimeBridge) {
|
|
355
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
356
|
+
}
|
|
357
|
+
runtimeBridge.postMessage(value);
|
|
358
|
+
}
|
|
359
|
+
function setWorkerMessageHandler(handler) {
|
|
360
|
+
if (!runtimeBridge) {
|
|
361
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
362
|
+
}
|
|
363
|
+
return runtimeBridge.setMessageHandler(handler);
|
|
364
|
+
}
|
|
365
|
+
function getBuiltinModule(id) {
|
|
366
|
+
if (typeof process === "undefined") {
|
|
367
|
+
return;
|
|
368
|
+
}
|
|
369
|
+
const loader = process.getBuiltinModule;
|
|
370
|
+
if (typeof loader !== "function") {
|
|
371
|
+
return;
|
|
372
|
+
}
|
|
373
|
+
try {
|
|
374
|
+
return loader(id);
|
|
375
|
+
} catch {
|
|
376
|
+
return;
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
function loadWorkerConstructor() {
|
|
380
|
+
if (typeof globalWithWorker.Worker === "function") {
|
|
381
|
+
return globalWithWorker.Worker;
|
|
382
|
+
}
|
|
383
|
+
if (nodeWorkerThreads) {
|
|
384
|
+
return createNodeWorkerConstructor(nodeWorkerThreads);
|
|
385
|
+
}
|
|
386
|
+
return UnsupportedWorker;
|
|
387
|
+
}
|
|
388
|
+
function createNodeWorkerConstructor(node) {
|
|
389
|
+
return class NodeWorkerShim {
|
|
390
|
+
onmessage = null;
|
|
391
|
+
onerror = null;
|
|
392
|
+
errorListeners = new Set;
|
|
393
|
+
messageListeners = new Set;
|
|
394
|
+
worker;
|
|
395
|
+
terminationPromise;
|
|
396
|
+
constructor(specifier, options = {}) {
|
|
397
|
+
const resolvedSpecifier = resolveWorkerImportSpecifier(specifier);
|
|
398
|
+
this.worker = new node.Worker(createWorkerBootstrapSource(resolvedSpecifier), {
|
|
399
|
+
eval: true,
|
|
400
|
+
type: "module",
|
|
401
|
+
name: options.name
|
|
402
|
+
});
|
|
403
|
+
this.worker.on("message", this.handleMessage);
|
|
404
|
+
this.worker.on("error", this.handleError);
|
|
405
|
+
}
|
|
406
|
+
postMessage(value) {
|
|
407
|
+
this.worker.postMessage(value);
|
|
408
|
+
}
|
|
409
|
+
terminate() {
|
|
410
|
+
if (this.terminationPromise) {
|
|
411
|
+
return this.terminationPromise;
|
|
412
|
+
}
|
|
413
|
+
this.worker.off("message", this.handleMessage);
|
|
414
|
+
this.worker.off("error", this.handleError);
|
|
415
|
+
const termination = this.worker.terminate().catch((error) => {
|
|
416
|
+
this.terminationPromise = undefined;
|
|
417
|
+
this.worker.on("message", this.handleMessage);
|
|
418
|
+
this.worker.on("error", this.handleError);
|
|
419
|
+
throw error;
|
|
420
|
+
});
|
|
421
|
+
this.terminationPromise = termination;
|
|
422
|
+
return termination;
|
|
423
|
+
}
|
|
424
|
+
addEventListener(type, listener) {
|
|
425
|
+
if (type === "message") {
|
|
426
|
+
this.messageListeners.add(listener);
|
|
427
|
+
return;
|
|
428
|
+
}
|
|
429
|
+
this.errorListeners.add(listener);
|
|
430
|
+
}
|
|
431
|
+
removeEventListener(type, listener) {
|
|
432
|
+
if (type === "message") {
|
|
433
|
+
this.messageListeners.delete(listener);
|
|
434
|
+
return;
|
|
435
|
+
}
|
|
436
|
+
this.errorListeners.delete(listener);
|
|
437
|
+
}
|
|
438
|
+
handleMessage = (data) => {
|
|
439
|
+
const event = { data };
|
|
440
|
+
this.onmessage?.(event);
|
|
441
|
+
for (const listener of this.messageListeners) {
|
|
442
|
+
listener(event);
|
|
443
|
+
}
|
|
444
|
+
};
|
|
445
|
+
handleError = (error) => {
|
|
446
|
+
const event = {
|
|
447
|
+
error,
|
|
448
|
+
message: error.message
|
|
449
|
+
};
|
|
450
|
+
this.onerror?.(event);
|
|
451
|
+
for (const listener of this.errorListeners) {
|
|
452
|
+
listener(event);
|
|
453
|
+
}
|
|
454
|
+
};
|
|
455
|
+
};
|
|
456
|
+
}
|
|
457
|
+
function createWorkerBootstrapSource(specifier) {
|
|
458
|
+
return `
|
|
459
|
+
import { parentPort } from "node:worker_threads"
|
|
460
|
+
|
|
461
|
+
const pendingMessages = []
|
|
462
|
+
let messageHandler = null
|
|
463
|
+
|
|
464
|
+
globalThis.self ??= globalThis
|
|
465
|
+
globalThis.postMessage ??= (value) => parentPort?.postMessage(value)
|
|
466
|
+
globalThis.__opentuiWorkerMessageBridge = true
|
|
467
|
+
Object.defineProperty(globalThis, "onmessage", {
|
|
468
|
+
configurable: true,
|
|
469
|
+
get: () => messageHandler,
|
|
470
|
+
set: (handler) => {
|
|
471
|
+
messageHandler = typeof handler === "function" ? handler : null
|
|
472
|
+
if (!messageHandler) return
|
|
473
|
+
|
|
474
|
+
const messages = pendingMessages.splice(0)
|
|
475
|
+
for (const data of messages) {
|
|
476
|
+
messageHandler({ data })
|
|
477
|
+
}
|
|
478
|
+
},
|
|
479
|
+
})
|
|
480
|
+
parentPort?.on("message", (data) => {
|
|
481
|
+
if (messageHandler) {
|
|
482
|
+
messageHandler({ data })
|
|
483
|
+
} else {
|
|
484
|
+
pendingMessages.push(data)
|
|
485
|
+
}
|
|
486
|
+
})
|
|
487
|
+
|
|
488
|
+
await import(${JSON.stringify(specifier)})
|
|
489
|
+
`;
|
|
490
|
+
}
|
|
491
|
+
function resolveWorkerImportSpecifier(specifier) {
|
|
492
|
+
if (specifier instanceof URL) {
|
|
493
|
+
return specifier.href;
|
|
494
|
+
}
|
|
495
|
+
if (isRuntimeSpecifier(specifier)) {
|
|
496
|
+
return specifier;
|
|
497
|
+
}
|
|
498
|
+
const nodePath = getBuiltinModule("node:path");
|
|
499
|
+
const nodeUrl = getBuiltinModule("node:url");
|
|
500
|
+
if (!nodePath || !nodeUrl) {
|
|
501
|
+
throw new Error(WORKER_UNAVAILABLE);
|
|
502
|
+
}
|
|
503
|
+
const absolutePath = nodePath.isAbsolute(specifier) ? specifier : nodePath.resolve(specifier);
|
|
504
|
+
return nodeUrl.pathToFileURL(absolutePath).href;
|
|
505
|
+
}
|
|
506
|
+
function isRuntimeSpecifier(specifier) {
|
|
507
|
+
return specifier.startsWith("file:") || specifier.startsWith("data:") || specifier.startsWith("node:") || specifier.startsWith("http:") || specifier.startsWith("https:");
|
|
508
|
+
}
|
|
509
|
+
function loadWorkerRuntime(node) {
|
|
510
|
+
if (node?.parentPort && node.isMainThread === false) {
|
|
511
|
+
if (globalWithWorker.__opentuiWorkerMessageBridge) {
|
|
512
|
+
return createGlobalWorkerRuntimeBridge();
|
|
513
|
+
}
|
|
514
|
+
return {
|
|
515
|
+
postMessage(value) {
|
|
516
|
+
node.parentPort?.postMessage(value);
|
|
517
|
+
},
|
|
518
|
+
setMessageHandler(handler) {
|
|
519
|
+
const listener = (data) => {
|
|
520
|
+
handler({ data });
|
|
521
|
+
};
|
|
522
|
+
node.parentPort?.on("message", listener);
|
|
523
|
+
return () => {
|
|
524
|
+
node.parentPort?.off("message", listener);
|
|
525
|
+
};
|
|
526
|
+
}
|
|
527
|
+
};
|
|
528
|
+
}
|
|
529
|
+
if (!isGlobalWorkerRuntime()) {
|
|
530
|
+
return;
|
|
531
|
+
}
|
|
532
|
+
return createGlobalWorkerRuntimeBridge();
|
|
533
|
+
}
|
|
534
|
+
function createGlobalWorkerRuntimeBridge() {
|
|
535
|
+
let currentRegistration;
|
|
536
|
+
return {
|
|
537
|
+
postMessage(value) {
|
|
538
|
+
globalWithWorker.postMessage?.(value);
|
|
539
|
+
},
|
|
540
|
+
setMessageHandler(handler) {
|
|
541
|
+
const previousHandler = getGlobalWorkerMessageHandler();
|
|
542
|
+
if (currentRegistration && previousHandler !== currentRegistration.listener) {
|
|
543
|
+
currentRegistration = undefined;
|
|
544
|
+
}
|
|
545
|
+
const listener = (event) => {
|
|
546
|
+
const normalizedEvent = normalizeWorkerMessageEvent(event);
|
|
547
|
+
handler(normalizedEvent);
|
|
548
|
+
};
|
|
549
|
+
const registration = {
|
|
550
|
+
active: true,
|
|
551
|
+
fallbackHandler: currentRegistration ? currentRegistration.fallbackHandler : previousHandler,
|
|
552
|
+
listener,
|
|
553
|
+
previous: currentRegistration
|
|
554
|
+
};
|
|
555
|
+
currentRegistration = registration;
|
|
556
|
+
setGlobalWorkerMessageHandler(listener);
|
|
557
|
+
return () => {
|
|
558
|
+
registration.active = false;
|
|
559
|
+
if (currentRegistration !== registration || getGlobalWorkerMessageHandler() !== listener) {
|
|
560
|
+
return;
|
|
561
|
+
}
|
|
562
|
+
let previous = registration.previous;
|
|
563
|
+
while (previous && !previous.active) {
|
|
564
|
+
previous = previous.previous;
|
|
565
|
+
}
|
|
566
|
+
currentRegistration = previous;
|
|
567
|
+
setGlobalWorkerMessageHandler(previous?.listener ?? registration.fallbackHandler);
|
|
568
|
+
};
|
|
569
|
+
}
|
|
570
|
+
};
|
|
571
|
+
}
|
|
572
|
+
function isGlobalWorkerRuntime() {
|
|
573
|
+
if (typeof globalWithWorker.postMessage !== "function") {
|
|
574
|
+
return false;
|
|
575
|
+
}
|
|
576
|
+
return typeof document === "undefined" && typeof globalWithWorker.close === "function" && "onmessage" in globalThis;
|
|
577
|
+
}
|
|
578
|
+
function normalizeWorkerMessageEvent(event) {
|
|
579
|
+
if (event && typeof event === "object" && "data" in event) {
|
|
580
|
+
return event;
|
|
581
|
+
}
|
|
582
|
+
return { data: event };
|
|
583
|
+
}
|
|
584
|
+
function getGlobalWorkerMessageHandler() {
|
|
585
|
+
return globalThis.onmessage ?? null;
|
|
586
|
+
}
|
|
587
|
+
function setGlobalWorkerMessageHandler(handler) {
|
|
588
|
+
globalThis.onmessage = handler;
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
// src/lib/tree-sitter/parser.worker.ts
|
|
271
592
|
class ParserWorker {
|
|
272
593
|
bufferParsers = new Map;
|
|
273
594
|
filetypeParserOptions = new Map;
|
|
@@ -477,7 +798,7 @@ class ParserWorker {
|
|
|
477
798
|
async handleInitializeParser(bufferId, version, content, filetype, messageId) {
|
|
478
799
|
const filetypeParser = await this.resolveFiletypeParser(filetype);
|
|
479
800
|
if (!filetypeParser) {
|
|
480
|
-
|
|
801
|
+
postWorkerMessage({
|
|
481
802
|
type: "PARSER_INIT_RESPONSE",
|
|
482
803
|
bufferId,
|
|
483
804
|
messageId,
|
|
@@ -490,7 +811,7 @@ class ParserWorker {
|
|
|
490
811
|
parser.setLanguage(filetypeParser.language);
|
|
491
812
|
const tree = parser.parse(content);
|
|
492
813
|
if (!tree) {
|
|
493
|
-
|
|
814
|
+
postWorkerMessage({
|
|
494
815
|
type: "PARSER_INIT_RESPONSE",
|
|
495
816
|
bufferId,
|
|
496
817
|
messageId,
|
|
@@ -508,14 +829,14 @@ class ParserWorker {
|
|
|
508
829
|
injectionMapping: filetypeParser.injectionMapping
|
|
509
830
|
};
|
|
510
831
|
this.bufferParsers.set(bufferId, parserState);
|
|
511
|
-
|
|
832
|
+
postWorkerMessage({
|
|
512
833
|
type: "PARSER_INIT_RESPONSE",
|
|
513
834
|
bufferId,
|
|
514
835
|
messageId,
|
|
515
836
|
hasParser: true
|
|
516
837
|
});
|
|
517
838
|
const highlights = await this.initialQuery(parserState);
|
|
518
|
-
|
|
839
|
+
postWorkerMessage({
|
|
519
840
|
type: "HIGHLIGHT_RESPONSE",
|
|
520
841
|
bufferId,
|
|
521
842
|
version,
|
|
@@ -837,7 +1158,7 @@ class ParserWorker {
|
|
|
837
1158
|
async handleOneShotHighlight(content, filetype, messageId) {
|
|
838
1159
|
const reusableState = await this.getReusableParser(filetype);
|
|
839
1160
|
if (!reusableState) {
|
|
840
|
-
|
|
1161
|
+
postWorkerMessage({
|
|
841
1162
|
type: "ONESHOT_HIGHLIGHT_RESPONSE",
|
|
842
1163
|
messageId,
|
|
843
1164
|
hasParser: false,
|
|
@@ -849,7 +1170,7 @@ class ParserWorker {
|
|
|
849
1170
|
` : content;
|
|
850
1171
|
const tree = reusableState.parser.parse(parseContent);
|
|
851
1172
|
if (!tree) {
|
|
852
|
-
|
|
1173
|
+
postWorkerMessage({
|
|
853
1174
|
type: "ONESHOT_HIGHLIGHT_RESPONSE",
|
|
854
1175
|
messageId,
|
|
855
1176
|
hasParser: false,
|
|
@@ -874,7 +1195,7 @@ class ParserWorker {
|
|
|
874
1195
|
injectionRanges = injectionResult.injectionRanges;
|
|
875
1196
|
}
|
|
876
1197
|
const highlights = this.getSimpleHighlights(matches, injectionRanges);
|
|
877
|
-
|
|
1198
|
+
postWorkerMessage({
|
|
878
1199
|
type: "ONESHOT_HIGHLIGHT_RESPONSE",
|
|
879
1200
|
messageId,
|
|
880
1201
|
hasParser: true,
|
|
@@ -913,81 +1234,132 @@ class ParserWorker {
|
|
|
913
1234
|
}
|
|
914
1235
|
}
|
|
915
1236
|
}
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
1237
|
+
function logMessage(type, ...args) {
|
|
1238
|
+
postWorkerMessage({
|
|
1239
|
+
type: "WORKER_LOG",
|
|
1240
|
+
logType: type,
|
|
1241
|
+
data: args
|
|
1242
|
+
});
|
|
1243
|
+
}
|
|
1244
|
+
function postWorkerError(bufferId, error) {
|
|
1245
|
+
postWorkerMessage({
|
|
1246
|
+
type: "ERROR",
|
|
1247
|
+
bufferId,
|
|
1248
|
+
error: error instanceof Error ? error.stack || error.message : String(error)
|
|
1249
|
+
});
|
|
1250
|
+
}
|
|
1251
|
+
if (isWorkerRuntime) {
|
|
924
1252
|
const worker = new ParserWorker;
|
|
925
1253
|
console.log = (...args) => logMessage("log", ...args);
|
|
926
1254
|
console.error = (...args) => logMessage("error", ...args);
|
|
927
1255
|
console.warn = (...args) => logMessage("warn", ...args);
|
|
928
|
-
|
|
929
|
-
const
|
|
1256
|
+
setWorkerMessageHandler(async (event) => {
|
|
1257
|
+
const message = event.data;
|
|
1258
|
+
const messageType = String(event.data.type ?? "unknown");
|
|
930
1259
|
try {
|
|
931
|
-
switch (type) {
|
|
1260
|
+
switch (message.type) {
|
|
932
1261
|
case "INIT":
|
|
933
1262
|
try {
|
|
934
|
-
await worker.initialize({ dataPath });
|
|
935
|
-
|
|
1263
|
+
await worker.initialize({ dataPath: message.dataPath });
|
|
1264
|
+
postWorkerMessage({ type: "INIT_RESPONSE" });
|
|
936
1265
|
} catch (error) {
|
|
937
|
-
|
|
1266
|
+
postWorkerMessage({
|
|
938
1267
|
type: "INIT_RESPONSE",
|
|
939
1268
|
error: error instanceof Error ? error.stack || error.message : String(error)
|
|
940
1269
|
});
|
|
941
1270
|
}
|
|
942
1271
|
break;
|
|
943
1272
|
case "ADD_FILETYPE_PARSER":
|
|
944
|
-
worker.addFiletypeParser(filetypeParser);
|
|
1273
|
+
worker.addFiletypeParser(message.filetypeParser);
|
|
945
1274
|
break;
|
|
946
|
-
case "PRELOAD_PARSER":
|
|
947
|
-
const maybeParser = await worker.preloadParser(filetype);
|
|
948
|
-
|
|
1275
|
+
case "PRELOAD_PARSER": {
|
|
1276
|
+
const maybeParser = await worker.preloadParser(message.filetype);
|
|
1277
|
+
postWorkerMessage({
|
|
1278
|
+
type: "PRELOAD_PARSER_RESPONSE",
|
|
1279
|
+
messageId: message.messageId,
|
|
1280
|
+
hasParser: !!maybeParser
|
|
1281
|
+
});
|
|
949
1282
|
break;
|
|
1283
|
+
}
|
|
950
1284
|
case "INITIALIZE_PARSER":
|
|
951
|
-
await worker.handleInitializeParser(bufferId, version, content, filetype, messageId);
|
|
1285
|
+
await worker.handleInitializeParser(message.bufferId, message.version, message.content, message.filetype, message.messageId);
|
|
952
1286
|
break;
|
|
953
|
-
case "HANDLE_EDITS":
|
|
954
|
-
const response = await worker.handleEdits(bufferId, content, edits);
|
|
1287
|
+
case "HANDLE_EDITS": {
|
|
1288
|
+
const response = await worker.handleEdits(message.bufferId, message.content, message.edits);
|
|
955
1289
|
if (response.highlights && response.highlights.length > 0) {
|
|
956
|
-
|
|
1290
|
+
postWorkerMessage({
|
|
1291
|
+
type: "HIGHLIGHT_RESPONSE",
|
|
1292
|
+
bufferId: message.bufferId,
|
|
1293
|
+
version: message.version,
|
|
1294
|
+
highlights: response.highlights
|
|
1295
|
+
});
|
|
957
1296
|
} else if (response.warning) {
|
|
958
|
-
|
|
1297
|
+
postWorkerMessage({
|
|
1298
|
+
type: "WARNING",
|
|
1299
|
+
bufferId: message.bufferId,
|
|
1300
|
+
warning: response.warning
|
|
1301
|
+
});
|
|
959
1302
|
} else if (response.error) {
|
|
960
|
-
|
|
1303
|
+
postWorkerMessage({
|
|
1304
|
+
type: "ERROR",
|
|
1305
|
+
bufferId: message.bufferId,
|
|
1306
|
+
error: response.error
|
|
1307
|
+
});
|
|
961
1308
|
}
|
|
962
1309
|
break;
|
|
1310
|
+
}
|
|
963
1311
|
case "GET_PERFORMANCE":
|
|
964
|
-
|
|
1312
|
+
postWorkerMessage({
|
|
1313
|
+
type: "PERFORMANCE_RESPONSE",
|
|
1314
|
+
performance: worker.performance,
|
|
1315
|
+
messageId: message.messageId
|
|
1316
|
+
});
|
|
965
1317
|
break;
|
|
966
|
-
case "RESET_BUFFER":
|
|
967
|
-
const resetResponse = await worker.handleResetBuffer(bufferId, version, content);
|
|
1318
|
+
case "RESET_BUFFER": {
|
|
1319
|
+
const resetResponse = await worker.handleResetBuffer(message.bufferId, message.version, message.content);
|
|
968
1320
|
if (resetResponse.highlights && resetResponse.highlights.length > 0) {
|
|
969
|
-
|
|
1321
|
+
postWorkerMessage({
|
|
1322
|
+
type: "HIGHLIGHT_RESPONSE",
|
|
1323
|
+
bufferId: message.bufferId,
|
|
1324
|
+
version: message.version,
|
|
1325
|
+
highlights: resetResponse.highlights
|
|
1326
|
+
});
|
|
970
1327
|
} else if (resetResponse.warning) {
|
|
971
|
-
|
|
1328
|
+
postWorkerMessage({
|
|
1329
|
+
type: "WARNING",
|
|
1330
|
+
bufferId: message.bufferId,
|
|
1331
|
+
warning: resetResponse.warning
|
|
1332
|
+
});
|
|
972
1333
|
} else if (resetResponse.error) {
|
|
973
|
-
|
|
1334
|
+
postWorkerMessage({
|
|
1335
|
+
type: "ERROR",
|
|
1336
|
+
bufferId: message.bufferId,
|
|
1337
|
+
error: resetResponse.error
|
|
1338
|
+
});
|
|
974
1339
|
}
|
|
975
1340
|
break;
|
|
1341
|
+
}
|
|
976
1342
|
case "DISPOSE_BUFFER":
|
|
977
|
-
worker.disposeBuffer(bufferId);
|
|
978
|
-
|
|
1343
|
+
worker.disposeBuffer(message.bufferId);
|
|
1344
|
+
postWorkerMessage({
|
|
1345
|
+
type: "BUFFER_DISPOSED",
|
|
1346
|
+
bufferId: message.bufferId
|
|
1347
|
+
});
|
|
979
1348
|
break;
|
|
980
1349
|
case "ONESHOT_HIGHLIGHT":
|
|
981
|
-
await worker.handleOneShotHighlight(content, filetype, messageId);
|
|
1350
|
+
await worker.handleOneShotHighlight(message.content, message.filetype, message.messageId);
|
|
982
1351
|
break;
|
|
983
1352
|
case "UPDATE_DATA_PATH":
|
|
984
1353
|
try {
|
|
985
|
-
await worker.updateDataPath(dataPath);
|
|
986
|
-
|
|
1354
|
+
await worker.updateDataPath(message.dataPath);
|
|
1355
|
+
postWorkerMessage({
|
|
1356
|
+
type: "UPDATE_DATA_PATH_RESPONSE",
|
|
1357
|
+
messageId: message.messageId
|
|
1358
|
+
});
|
|
987
1359
|
} catch (error) {
|
|
988
|
-
|
|
1360
|
+
postWorkerMessage({
|
|
989
1361
|
type: "UPDATE_DATA_PATH_RESPONSE",
|
|
990
|
-
messageId,
|
|
1362
|
+
messageId: message.messageId,
|
|
991
1363
|
error: error instanceof Error ? error.message : String(error)
|
|
992
1364
|
});
|
|
993
1365
|
}
|
|
@@ -995,31 +1367,33 @@ if (!isMainThread) {
|
|
|
995
1367
|
case "CLEAR_CACHE":
|
|
996
1368
|
try {
|
|
997
1369
|
await worker.clearCache();
|
|
998
|
-
|
|
1370
|
+
postWorkerMessage({
|
|
1371
|
+
type: "CLEAR_CACHE_RESPONSE",
|
|
1372
|
+
messageId: message.messageId
|
|
1373
|
+
});
|
|
999
1374
|
} catch (error) {
|
|
1000
|
-
|
|
1375
|
+
postWorkerMessage({
|
|
1001
1376
|
type: "CLEAR_CACHE_RESPONSE",
|
|
1002
|
-
messageId,
|
|
1377
|
+
messageId: message.messageId,
|
|
1003
1378
|
error: error instanceof Error ? error.message : String(error)
|
|
1004
1379
|
});
|
|
1005
1380
|
}
|
|
1006
1381
|
break;
|
|
1007
1382
|
default:
|
|
1008
|
-
|
|
1383
|
+
postWorkerMessage({
|
|
1009
1384
|
type: "ERROR",
|
|
1010
|
-
|
|
1011
|
-
error: `Unknown message type: ${type}`
|
|
1385
|
+
error: `Unknown message type: ${messageType}`
|
|
1012
1386
|
});
|
|
1013
1387
|
}
|
|
1014
1388
|
} catch (error) {
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
}
|
|
1389
|
+
if ("bufferId" in message) {
|
|
1390
|
+
postWorkerError(message.bufferId, error);
|
|
1391
|
+
} else {
|
|
1392
|
+
postWorkerError(undefined, error);
|
|
1393
|
+
}
|
|
1020
1394
|
}
|
|
1021
|
-
};
|
|
1395
|
+
});
|
|
1022
1396
|
}
|
|
1023
1397
|
|
|
1024
|
-
//# debugId=
|
|
1398
|
+
//# debugId=0D88AD8518CAE38D64756E2164756E21
|
|
1025
1399
|
//# sourceMappingURL=parser.worker.js.map
|