@gitterm/cli 0.0.4 → 0.1.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/README.md +5 -0
- package/dist/index.js +2252 -455
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -18,13 +18,15 @@ var __toESM = (mod, isNodeMode, target) => {
|
|
|
18
18
|
return cached;
|
|
19
19
|
}
|
|
20
20
|
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
21
|
-
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
21
|
+
const to = isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
22
|
+
if (mod && typeof mod === "object" || typeof mod === "function") {
|
|
23
|
+
for (let key of __getOwnPropNames(mod))
|
|
24
|
+
if (!__hasOwnProp.call(to, key))
|
|
25
|
+
__defProp(to, key, {
|
|
26
|
+
get: __accessProp.bind(mod, key),
|
|
27
|
+
enumerable: true
|
|
28
|
+
});
|
|
29
|
+
}
|
|
28
30
|
if (canCache)
|
|
29
31
|
cache.set(mod, to);
|
|
30
32
|
return to;
|
|
@@ -32,14 +34,14 @@ var __toESM = (mod, isNodeMode, target) => {
|
|
|
32
34
|
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
33
35
|
|
|
34
36
|
// ../../node_modules/.bun/emoji-regex@10.6.0/node_modules/emoji-regex/index.js
|
|
35
|
-
var require_emoji_regex = __commonJS((exports, module)
|
|
37
|
+
var require_emoji_regex = __commonJS(function(exports, module) {
|
|
36
38
|
module.exports = () => {
|
|
37
39
|
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;
|
|
38
40
|
};
|
|
39
41
|
});
|
|
40
42
|
|
|
41
43
|
// ../../node_modules/.bun/get-caller-file@2.0.5/node_modules/get-caller-file/index.js
|
|
42
|
-
var require_get_caller_file = __commonJS((exports, module)
|
|
44
|
+
var require_get_caller_file = __commonJS(function(exports, module) {
|
|
43
45
|
module.exports = function getCallerFile(position) {
|
|
44
46
|
if (position === undefined) {
|
|
45
47
|
position = 2;
|
|
@@ -48,8 +50,8 @@ var require_get_caller_file = __commonJS((exports, module) => {
|
|
|
48
50
|
throw new TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `" + position + "` and Error.stackTraceLimit was: `" + Error.stackTraceLimit + "`");
|
|
49
51
|
}
|
|
50
52
|
var oldPrepareStackTrace = Error.prepareStackTrace;
|
|
51
|
-
Error.prepareStackTrace = function(_,
|
|
52
|
-
return
|
|
53
|
+
Error.prepareStackTrace = function(_, stack) {
|
|
54
|
+
return stack;
|
|
53
55
|
};
|
|
54
56
|
var stack = new Error().stack;
|
|
55
57
|
Error.prepareStackTrace = oldPrepareStackTrace;
|
|
@@ -60,7 +62,7 @@ var require_get_caller_file = __commonJS((exports, module) => {
|
|
|
60
62
|
});
|
|
61
63
|
|
|
62
64
|
// ../../node_modules/.bun/cli-spinners@2.9.2/node_modules/cli-spinners/spinners.json
|
|
63
|
-
var require_spinners = __commonJS((exports, module)
|
|
65
|
+
var require_spinners = __commonJS(function(exports, module) {
|
|
64
66
|
module.exports = {
|
|
65
67
|
dots: {
|
|
66
68
|
interval: 80,
|
|
@@ -1686,7 +1688,7 @@ var require_spinners = __commonJS((exports, module) => {
|
|
|
1686
1688
|
});
|
|
1687
1689
|
|
|
1688
1690
|
// ../../node_modules/.bun/cli-spinners@2.9.2/node_modules/cli-spinners/index.js
|
|
1689
|
-
var require_cli_spinners = __commonJS((exports, module)
|
|
1691
|
+
var require_cli_spinners = __commonJS(function(exports, module) {
|
|
1690
1692
|
var spinners = Object.assign({}, require_spinners());
|
|
1691
1693
|
var spinnersList = Object.keys(spinners);
|
|
1692
1694
|
Object.defineProperty(spinners, "random", {
|
|
@@ -1988,6 +1990,24 @@ function createChain(opts) {
|
|
|
1988
1990
|
return obs$.subscribe(observer);
|
|
1989
1991
|
});
|
|
1990
1992
|
}
|
|
1993
|
+
function asArray(value) {
|
|
1994
|
+
return Array.isArray(value) ? value : [value];
|
|
1995
|
+
}
|
|
1996
|
+
function splitLink(opts) {
|
|
1997
|
+
return (runtime) => {
|
|
1998
|
+
const yes = asArray(opts.true).map((link) => link(runtime));
|
|
1999
|
+
const no = asArray(opts.false).map((link) => link(runtime));
|
|
2000
|
+
return (props) => {
|
|
2001
|
+
return observable((observer) => {
|
|
2002
|
+
const links = opts.condition(props.op) ? yes : no;
|
|
2003
|
+
return createChain({
|
|
2004
|
+
op: props.op,
|
|
2005
|
+
links
|
|
2006
|
+
}).subscribe(observer);
|
|
2007
|
+
});
|
|
2008
|
+
};
|
|
2009
|
+
};
|
|
2010
|
+
}
|
|
1991
2011
|
|
|
1992
2012
|
// ../../node_modules/.bun/@trpc+server@11.8.1+1fb4c65d43e298b9/node_modules/@trpc/server/dist/codes-DagpWZLc.mjs
|
|
1993
2013
|
function isObject(value) {
|
|
@@ -1996,6 +2016,7 @@ function isObject(value) {
|
|
|
1996
2016
|
function emptyObject() {
|
|
1997
2017
|
return Object.create(null);
|
|
1998
2018
|
}
|
|
2019
|
+
var run = (fn) => fn();
|
|
1999
2020
|
var TRPC_ERROR_CODES_BY_KEY = {
|
|
2000
2021
|
PARSE_ERROR: -32700,
|
|
2001
2022
|
BAD_REQUEST: -32600,
|
|
@@ -2212,9 +2233,608 @@ function transformResult(response, transformer) {
|
|
|
2212
2233
|
}
|
|
2213
2234
|
var import_objectSpread22 = __toESM3(require_objectSpread22(), 1);
|
|
2214
2235
|
var trackedSymbol = Symbol();
|
|
2236
|
+
// ../../node_modules/.bun/@trpc+server@11.8.1+1fb4c65d43e298b9/node_modules/@trpc/server/dist/resolveResponse-C7AcnFLN.mjs
|
|
2237
|
+
var import_objectSpread2$12 = __toESM3(require_objectSpread22(), 1);
|
|
2238
|
+
/*!
|
|
2239
|
+
* is-plain-object <https://github.com/jonschlinkert/is-plain-object>
|
|
2240
|
+
*
|
|
2241
|
+
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
2242
|
+
* Released under the MIT License.
|
|
2243
|
+
*/
|
|
2244
|
+
var import_defineProperty2 = __toESM3(require_defineProperty2(), 1);
|
|
2245
|
+
var _Symbol$toStringTag;
|
|
2246
|
+
var subscribableCache = /* @__PURE__ */ new WeakMap;
|
|
2247
|
+
var NOOP = () => {};
|
|
2248
|
+
_Symbol$toStringTag = Symbol.toStringTag;
|
|
2249
|
+
var Unpromise = class Unpromise {
|
|
2250
|
+
constructor(arg) {
|
|
2251
|
+
(0, import_defineProperty2.default)(this, "promise", undefined);
|
|
2252
|
+
(0, import_defineProperty2.default)(this, "subscribers", []);
|
|
2253
|
+
(0, import_defineProperty2.default)(this, "settlement", null);
|
|
2254
|
+
(0, import_defineProperty2.default)(this, _Symbol$toStringTag, "Unpromise");
|
|
2255
|
+
if (typeof arg === "function")
|
|
2256
|
+
this.promise = new Promise(arg);
|
|
2257
|
+
else
|
|
2258
|
+
this.promise = arg;
|
|
2259
|
+
const thenReturn = this.promise.then((value) => {
|
|
2260
|
+
const { subscribers } = this;
|
|
2261
|
+
this.subscribers = null;
|
|
2262
|
+
this.settlement = {
|
|
2263
|
+
status: "fulfilled",
|
|
2264
|
+
value
|
|
2265
|
+
};
|
|
2266
|
+
subscribers === null || subscribers === undefined || subscribers.forEach(({ resolve }) => {
|
|
2267
|
+
resolve(value);
|
|
2268
|
+
});
|
|
2269
|
+
});
|
|
2270
|
+
if ("catch" in thenReturn)
|
|
2271
|
+
thenReturn.catch((reason) => {
|
|
2272
|
+
const { subscribers } = this;
|
|
2273
|
+
this.subscribers = null;
|
|
2274
|
+
this.settlement = {
|
|
2275
|
+
status: "rejected",
|
|
2276
|
+
reason
|
|
2277
|
+
};
|
|
2278
|
+
subscribers === null || subscribers === undefined || subscribers.forEach(({ reject }) => {
|
|
2279
|
+
reject(reason);
|
|
2280
|
+
});
|
|
2281
|
+
});
|
|
2282
|
+
}
|
|
2283
|
+
subscribe() {
|
|
2284
|
+
let promise;
|
|
2285
|
+
let unsubscribe;
|
|
2286
|
+
const { settlement } = this;
|
|
2287
|
+
if (settlement === null) {
|
|
2288
|
+
if (this.subscribers === null)
|
|
2289
|
+
throw new Error("Unpromise settled but still has subscribers");
|
|
2290
|
+
const subscriber = withResolvers();
|
|
2291
|
+
this.subscribers = listWithMember(this.subscribers, subscriber);
|
|
2292
|
+
promise = subscriber.promise;
|
|
2293
|
+
unsubscribe = () => {
|
|
2294
|
+
if (this.subscribers !== null)
|
|
2295
|
+
this.subscribers = listWithoutMember(this.subscribers, subscriber);
|
|
2296
|
+
};
|
|
2297
|
+
} else {
|
|
2298
|
+
const { status } = settlement;
|
|
2299
|
+
if (status === "fulfilled")
|
|
2300
|
+
promise = Promise.resolve(settlement.value);
|
|
2301
|
+
else
|
|
2302
|
+
promise = Promise.reject(settlement.reason);
|
|
2303
|
+
unsubscribe = NOOP;
|
|
2304
|
+
}
|
|
2305
|
+
return Object.assign(promise, { unsubscribe });
|
|
2306
|
+
}
|
|
2307
|
+
then(onfulfilled, onrejected) {
|
|
2308
|
+
const subscribed = this.subscribe();
|
|
2309
|
+
const { unsubscribe } = subscribed;
|
|
2310
|
+
return Object.assign(subscribed.then(onfulfilled, onrejected), { unsubscribe });
|
|
2311
|
+
}
|
|
2312
|
+
catch(onrejected) {
|
|
2313
|
+
const subscribed = this.subscribe();
|
|
2314
|
+
const { unsubscribe } = subscribed;
|
|
2315
|
+
return Object.assign(subscribed.catch(onrejected), { unsubscribe });
|
|
2316
|
+
}
|
|
2317
|
+
finally(onfinally) {
|
|
2318
|
+
const subscribed = this.subscribe();
|
|
2319
|
+
const { unsubscribe } = subscribed;
|
|
2320
|
+
return Object.assign(subscribed.finally(onfinally), { unsubscribe });
|
|
2321
|
+
}
|
|
2322
|
+
static proxy(promise) {
|
|
2323
|
+
const cached = Unpromise.getSubscribablePromise(promise);
|
|
2324
|
+
return typeof cached !== "undefined" ? cached : Unpromise.createSubscribablePromise(promise);
|
|
2325
|
+
}
|
|
2326
|
+
static createSubscribablePromise(promise) {
|
|
2327
|
+
const created = new Unpromise(promise);
|
|
2328
|
+
subscribableCache.set(promise, created);
|
|
2329
|
+
subscribableCache.set(created, created);
|
|
2330
|
+
return created;
|
|
2331
|
+
}
|
|
2332
|
+
static getSubscribablePromise(promise) {
|
|
2333
|
+
return subscribableCache.get(promise);
|
|
2334
|
+
}
|
|
2335
|
+
static resolve(value) {
|
|
2336
|
+
const promise = typeof value === "object" && value !== null && "then" in value && typeof value.then === "function" ? value : Promise.resolve(value);
|
|
2337
|
+
return Unpromise.proxy(promise).subscribe();
|
|
2338
|
+
}
|
|
2339
|
+
static async any(values) {
|
|
2340
|
+
const valuesArray = Array.isArray(values) ? values : [...values];
|
|
2341
|
+
const subscribedPromises = valuesArray.map(Unpromise.resolve);
|
|
2342
|
+
try {
|
|
2343
|
+
return await Promise.any(subscribedPromises);
|
|
2344
|
+
} finally {
|
|
2345
|
+
subscribedPromises.forEach(({ unsubscribe }) => {
|
|
2346
|
+
unsubscribe();
|
|
2347
|
+
});
|
|
2348
|
+
}
|
|
2349
|
+
}
|
|
2350
|
+
static async race(values) {
|
|
2351
|
+
const valuesArray = Array.isArray(values) ? values : [...values];
|
|
2352
|
+
const subscribedPromises = valuesArray.map(Unpromise.resolve);
|
|
2353
|
+
try {
|
|
2354
|
+
return await Promise.race(subscribedPromises);
|
|
2355
|
+
} finally {
|
|
2356
|
+
subscribedPromises.forEach(({ unsubscribe }) => {
|
|
2357
|
+
unsubscribe();
|
|
2358
|
+
});
|
|
2359
|
+
}
|
|
2360
|
+
}
|
|
2361
|
+
static async raceReferences(promises) {
|
|
2362
|
+
const selfPromises = promises.map(resolveSelfTuple);
|
|
2363
|
+
try {
|
|
2364
|
+
return await Promise.race(selfPromises);
|
|
2365
|
+
} finally {
|
|
2366
|
+
for (const promise of selfPromises)
|
|
2367
|
+
promise.unsubscribe();
|
|
2368
|
+
}
|
|
2369
|
+
}
|
|
2370
|
+
};
|
|
2371
|
+
function resolveSelfTuple(promise) {
|
|
2372
|
+
return Unpromise.proxy(promise).then(() => [promise]);
|
|
2373
|
+
}
|
|
2374
|
+
function withResolvers() {
|
|
2375
|
+
let resolve;
|
|
2376
|
+
let reject;
|
|
2377
|
+
const promise = new Promise((_resolve, _reject) => {
|
|
2378
|
+
resolve = _resolve;
|
|
2379
|
+
reject = _reject;
|
|
2380
|
+
});
|
|
2381
|
+
return {
|
|
2382
|
+
promise,
|
|
2383
|
+
resolve,
|
|
2384
|
+
reject
|
|
2385
|
+
};
|
|
2386
|
+
}
|
|
2387
|
+
function listWithMember(arr, member) {
|
|
2388
|
+
return [...arr, member];
|
|
2389
|
+
}
|
|
2390
|
+
function listWithoutIndex(arr, index) {
|
|
2391
|
+
return [...arr.slice(0, index), ...arr.slice(index + 1)];
|
|
2392
|
+
}
|
|
2393
|
+
function listWithoutMember(arr, member) {
|
|
2394
|
+
const index = arr.indexOf(member);
|
|
2395
|
+
if (index !== -1)
|
|
2396
|
+
return listWithoutIndex(arr, index);
|
|
2397
|
+
return arr;
|
|
2398
|
+
}
|
|
2399
|
+
var _Symbol;
|
|
2400
|
+
var _Symbol$dispose;
|
|
2401
|
+
var _Symbol2;
|
|
2402
|
+
var _Symbol2$asyncDispose;
|
|
2403
|
+
(_Symbol$dispose = (_Symbol = Symbol).dispose) !== null && _Symbol$dispose !== undefined || (_Symbol.dispose = Symbol());
|
|
2404
|
+
(_Symbol2$asyncDispose = (_Symbol2 = Symbol).asyncDispose) !== null && _Symbol2$asyncDispose !== undefined || (_Symbol2.asyncDispose = Symbol());
|
|
2405
|
+
function makeResource(thing, dispose) {
|
|
2406
|
+
const it = thing;
|
|
2407
|
+
const existing = it[Symbol.dispose];
|
|
2408
|
+
it[Symbol.dispose] = () => {
|
|
2409
|
+
dispose();
|
|
2410
|
+
existing === null || existing === undefined || existing();
|
|
2411
|
+
};
|
|
2412
|
+
return it;
|
|
2413
|
+
}
|
|
2414
|
+
function makeAsyncResource(thing, dispose) {
|
|
2415
|
+
const it = thing;
|
|
2416
|
+
const existing = it[Symbol.asyncDispose];
|
|
2417
|
+
it[Symbol.asyncDispose] = async () => {
|
|
2418
|
+
await dispose();
|
|
2419
|
+
await (existing === null || existing === undefined ? undefined : existing());
|
|
2420
|
+
};
|
|
2421
|
+
return it;
|
|
2422
|
+
}
|
|
2423
|
+
var disposablePromiseTimerResult = Symbol();
|
|
2424
|
+
function timerResource(ms) {
|
|
2425
|
+
let timer = null;
|
|
2426
|
+
return makeResource({ start() {
|
|
2427
|
+
if (timer)
|
|
2428
|
+
throw new Error("Timer already started");
|
|
2429
|
+
const promise = new Promise((resolve) => {
|
|
2430
|
+
timer = setTimeout(() => resolve(disposablePromiseTimerResult), ms);
|
|
2431
|
+
});
|
|
2432
|
+
return promise;
|
|
2433
|
+
} }, () => {
|
|
2434
|
+
if (timer)
|
|
2435
|
+
clearTimeout(timer);
|
|
2436
|
+
});
|
|
2437
|
+
}
|
|
2438
|
+
var require_usingCtx = __commonJS3({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.js"(exports, module) {
|
|
2439
|
+
function _usingCtx() {
|
|
2440
|
+
var r = typeof SuppressedError == "function" ? SuppressedError : function(r$1, e$1) {
|
|
2441
|
+
var n$1 = Error();
|
|
2442
|
+
return n$1.name = "SuppressedError", n$1.error = r$1, n$1.suppressed = e$1, n$1;
|
|
2443
|
+
}, e = {}, n = [];
|
|
2444
|
+
function using(r$1, e$1) {
|
|
2445
|
+
if (e$1 != null) {
|
|
2446
|
+
if (Object(e$1) !== e$1)
|
|
2447
|
+
throw new TypeError("using declarations can only be used with objects, functions, null, or undefined.");
|
|
2448
|
+
if (r$1)
|
|
2449
|
+
var o = e$1[Symbol.asyncDispose || Symbol["for"]("Symbol.asyncDispose")];
|
|
2450
|
+
if (o === undefined && (o = e$1[Symbol.dispose || Symbol["for"]("Symbol.dispose")], r$1))
|
|
2451
|
+
var t = o;
|
|
2452
|
+
if (typeof o != "function")
|
|
2453
|
+
throw new TypeError("Object is not disposable.");
|
|
2454
|
+
t && (o = function o$1() {
|
|
2455
|
+
try {
|
|
2456
|
+
t.call(e$1);
|
|
2457
|
+
} catch (r$2) {
|
|
2458
|
+
return Promise.reject(r$2);
|
|
2459
|
+
}
|
|
2460
|
+
}), n.push({
|
|
2461
|
+
v: e$1,
|
|
2462
|
+
d: o,
|
|
2463
|
+
a: r$1
|
|
2464
|
+
});
|
|
2465
|
+
} else
|
|
2466
|
+
r$1 && n.push({
|
|
2467
|
+
d: e$1,
|
|
2468
|
+
a: r$1
|
|
2469
|
+
});
|
|
2470
|
+
return e$1;
|
|
2471
|
+
}
|
|
2472
|
+
return {
|
|
2473
|
+
e,
|
|
2474
|
+
u: using.bind(null, false),
|
|
2475
|
+
a: using.bind(null, true),
|
|
2476
|
+
d: function d() {
|
|
2477
|
+
var o, t = this.e, s = 0;
|
|
2478
|
+
function next() {
|
|
2479
|
+
for (;o = n.pop(); )
|
|
2480
|
+
try {
|
|
2481
|
+
if (!o.a && s === 1)
|
|
2482
|
+
return s = 0, n.push(o), Promise.resolve().then(next);
|
|
2483
|
+
if (o.d) {
|
|
2484
|
+
var r$1 = o.d.call(o.v);
|
|
2485
|
+
if (o.a)
|
|
2486
|
+
return s |= 2, Promise.resolve(r$1).then(next, err);
|
|
2487
|
+
} else
|
|
2488
|
+
s |= 1;
|
|
2489
|
+
} catch (r$2) {
|
|
2490
|
+
return err(r$2);
|
|
2491
|
+
}
|
|
2492
|
+
if (s === 1)
|
|
2493
|
+
return t !== e ? Promise.reject(t) : Promise.resolve();
|
|
2494
|
+
if (t !== e)
|
|
2495
|
+
throw t;
|
|
2496
|
+
}
|
|
2497
|
+
function err(n$1) {
|
|
2498
|
+
return t = t !== e ? new r(n$1, t) : n$1, next();
|
|
2499
|
+
}
|
|
2500
|
+
return next();
|
|
2501
|
+
}
|
|
2502
|
+
};
|
|
2503
|
+
}
|
|
2504
|
+
module.exports = _usingCtx, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2505
|
+
} });
|
|
2506
|
+
var require_OverloadYield = __commonJS3({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/OverloadYield.js"(exports, module) {
|
|
2507
|
+
function _OverloadYield(e, d) {
|
|
2508
|
+
this.v = e, this.k = d;
|
|
2509
|
+
}
|
|
2510
|
+
module.exports = _OverloadYield, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2511
|
+
} });
|
|
2512
|
+
var require_awaitAsyncGenerator = __commonJS3({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/awaitAsyncGenerator.js"(exports, module) {
|
|
2513
|
+
var OverloadYield$2 = require_OverloadYield();
|
|
2514
|
+
function _awaitAsyncGenerator$5(e) {
|
|
2515
|
+
return new OverloadYield$2(e, 0);
|
|
2516
|
+
}
|
|
2517
|
+
module.exports = _awaitAsyncGenerator$5, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2518
|
+
} });
|
|
2519
|
+
var require_wrapAsyncGenerator = __commonJS3({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/wrapAsyncGenerator.js"(exports, module) {
|
|
2520
|
+
var OverloadYield$1 = require_OverloadYield();
|
|
2521
|
+
function _wrapAsyncGenerator$6(e) {
|
|
2522
|
+
return function() {
|
|
2523
|
+
return new AsyncGenerator(e.apply(this, arguments));
|
|
2524
|
+
};
|
|
2525
|
+
}
|
|
2526
|
+
function AsyncGenerator(e) {
|
|
2527
|
+
var r, t;
|
|
2528
|
+
function resume(r$1, t$1) {
|
|
2529
|
+
try {
|
|
2530
|
+
var n = e[r$1](t$1), o = n.value, u = o instanceof OverloadYield$1;
|
|
2531
|
+
Promise.resolve(u ? o.v : o).then(function(t$2) {
|
|
2532
|
+
if (u) {
|
|
2533
|
+
var i = r$1 === "return" ? "return" : "next";
|
|
2534
|
+
if (!o.k || t$2.done)
|
|
2535
|
+
return resume(i, t$2);
|
|
2536
|
+
t$2 = e[i](t$2).value;
|
|
2537
|
+
}
|
|
2538
|
+
settle(n.done ? "return" : "normal", t$2);
|
|
2539
|
+
}, function(e$1) {
|
|
2540
|
+
resume("throw", e$1);
|
|
2541
|
+
});
|
|
2542
|
+
} catch (e$1) {
|
|
2543
|
+
settle("throw", e$1);
|
|
2544
|
+
}
|
|
2545
|
+
}
|
|
2546
|
+
function settle(e$1, n) {
|
|
2547
|
+
switch (e$1) {
|
|
2548
|
+
case "return":
|
|
2549
|
+
r.resolve({
|
|
2550
|
+
value: n,
|
|
2551
|
+
done: true
|
|
2552
|
+
});
|
|
2553
|
+
break;
|
|
2554
|
+
case "throw":
|
|
2555
|
+
r.reject(n);
|
|
2556
|
+
break;
|
|
2557
|
+
default:
|
|
2558
|
+
r.resolve({
|
|
2559
|
+
value: n,
|
|
2560
|
+
done: false
|
|
2561
|
+
});
|
|
2562
|
+
}
|
|
2563
|
+
(r = r.next) ? resume(r.key, r.arg) : t = null;
|
|
2564
|
+
}
|
|
2565
|
+
this._invoke = function(e$1, n) {
|
|
2566
|
+
return new Promise(function(o, u) {
|
|
2567
|
+
var i = {
|
|
2568
|
+
key: e$1,
|
|
2569
|
+
arg: n,
|
|
2570
|
+
resolve: o,
|
|
2571
|
+
reject: u,
|
|
2572
|
+
next: null
|
|
2573
|
+
};
|
|
2574
|
+
t ? t = t.next = i : (r = t = i, resume(e$1, n));
|
|
2575
|
+
});
|
|
2576
|
+
}, typeof e["return"] != "function" && (this["return"] = undefined);
|
|
2577
|
+
}
|
|
2578
|
+
AsyncGenerator.prototype[typeof Symbol == "function" && Symbol.asyncIterator || "@@asyncIterator"] = function() {
|
|
2579
|
+
return this;
|
|
2580
|
+
}, AsyncGenerator.prototype.next = function(e) {
|
|
2581
|
+
return this._invoke("next", e);
|
|
2582
|
+
}, AsyncGenerator.prototype["throw"] = function(e) {
|
|
2583
|
+
return this._invoke("throw", e);
|
|
2584
|
+
}, AsyncGenerator.prototype["return"] = function(e) {
|
|
2585
|
+
return this._invoke("return", e);
|
|
2586
|
+
};
|
|
2587
|
+
module.exports = _wrapAsyncGenerator$6, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2588
|
+
} });
|
|
2589
|
+
var import_usingCtx$4 = __toESM3(require_usingCtx(), 1);
|
|
2590
|
+
var import_awaitAsyncGenerator$4 = __toESM3(require_awaitAsyncGenerator(), 1);
|
|
2591
|
+
var import_wrapAsyncGenerator$5 = __toESM3(require_wrapAsyncGenerator(), 1);
|
|
2592
|
+
var import_usingCtx$3 = __toESM3(require_usingCtx(), 1);
|
|
2593
|
+
var import_awaitAsyncGenerator$3 = __toESM3(require_awaitAsyncGenerator(), 1);
|
|
2594
|
+
var import_wrapAsyncGenerator$4 = __toESM3(require_wrapAsyncGenerator(), 1);
|
|
2595
|
+
var import_usingCtx$2 = __toESM3(require_usingCtx(), 1);
|
|
2596
|
+
var import_awaitAsyncGenerator$2 = __toESM3(require_awaitAsyncGenerator(), 1);
|
|
2597
|
+
var import_wrapAsyncGenerator$3 = __toESM3(require_wrapAsyncGenerator(), 1);
|
|
2598
|
+
var PING_SYM = Symbol("ping");
|
|
2599
|
+
var require_asyncIterator = __commonJS3({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/asyncIterator.js"(exports, module) {
|
|
2600
|
+
function _asyncIterator$2(r) {
|
|
2601
|
+
var n, t, o, e = 2;
|
|
2602
|
+
for (typeof Symbol != "undefined" && (t = Symbol.asyncIterator, o = Symbol.iterator);e--; ) {
|
|
2603
|
+
if (t && (n = r[t]) != null)
|
|
2604
|
+
return n.call(r);
|
|
2605
|
+
if (o && (n = r[o]) != null)
|
|
2606
|
+
return new AsyncFromSyncIterator(n.call(r));
|
|
2607
|
+
t = "@@asyncIterator", o = "@@iterator";
|
|
2608
|
+
}
|
|
2609
|
+
throw new TypeError("Object is not async iterable");
|
|
2610
|
+
}
|
|
2611
|
+
function AsyncFromSyncIterator(r) {
|
|
2612
|
+
function AsyncFromSyncIteratorContinuation(r$1) {
|
|
2613
|
+
if (Object(r$1) !== r$1)
|
|
2614
|
+
return Promise.reject(new TypeError(r$1 + " is not an object."));
|
|
2615
|
+
var n = r$1.done;
|
|
2616
|
+
return Promise.resolve(r$1.value).then(function(r$2) {
|
|
2617
|
+
return {
|
|
2618
|
+
value: r$2,
|
|
2619
|
+
done: n
|
|
2620
|
+
};
|
|
2621
|
+
});
|
|
2622
|
+
}
|
|
2623
|
+
return AsyncFromSyncIterator = function AsyncFromSyncIterator$1(r$1) {
|
|
2624
|
+
this.s = r$1, this.n = r$1.next;
|
|
2625
|
+
}, AsyncFromSyncIterator.prototype = {
|
|
2626
|
+
s: null,
|
|
2627
|
+
n: null,
|
|
2628
|
+
next: function next() {
|
|
2629
|
+
return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments));
|
|
2630
|
+
},
|
|
2631
|
+
return: function _return(r$1) {
|
|
2632
|
+
var n = this.s["return"];
|
|
2633
|
+
return n === undefined ? Promise.resolve({
|
|
2634
|
+
value: r$1,
|
|
2635
|
+
done: true
|
|
2636
|
+
}) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));
|
|
2637
|
+
},
|
|
2638
|
+
throw: function _throw(r$1) {
|
|
2639
|
+
var n = this.s["return"];
|
|
2640
|
+
return n === undefined ? Promise.reject(r$1) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));
|
|
2641
|
+
}
|
|
2642
|
+
}, new AsyncFromSyncIterator(r);
|
|
2643
|
+
}
|
|
2644
|
+
module.exports = _asyncIterator$2, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2645
|
+
} });
|
|
2646
|
+
var import_awaitAsyncGenerator$1 = __toESM3(require_awaitAsyncGenerator(), 1);
|
|
2647
|
+
var import_wrapAsyncGenerator$2 = __toESM3(require_wrapAsyncGenerator(), 1);
|
|
2648
|
+
var import_usingCtx$1 = __toESM3(require_usingCtx(), 1);
|
|
2649
|
+
var import_asyncIterator$1 = __toESM3(require_asyncIterator(), 1);
|
|
2650
|
+
var require_asyncGeneratorDelegate = __commonJS3({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/asyncGeneratorDelegate.js"(exports, module) {
|
|
2651
|
+
var OverloadYield = require_OverloadYield();
|
|
2652
|
+
function _asyncGeneratorDelegate$1(t) {
|
|
2653
|
+
var e = {}, n = false;
|
|
2654
|
+
function pump(e$1, r) {
|
|
2655
|
+
return n = true, r = new Promise(function(n$1) {
|
|
2656
|
+
n$1(t[e$1](r));
|
|
2657
|
+
}), {
|
|
2658
|
+
done: false,
|
|
2659
|
+
value: new OverloadYield(r, 1)
|
|
2660
|
+
};
|
|
2661
|
+
}
|
|
2662
|
+
return e[typeof Symbol != "undefined" && Symbol.iterator || "@@iterator"] = function() {
|
|
2663
|
+
return this;
|
|
2664
|
+
}, e.next = function(t$1) {
|
|
2665
|
+
return n ? (n = false, t$1) : pump("next", t$1);
|
|
2666
|
+
}, typeof t["throw"] == "function" && (e["throw"] = function(t$1) {
|
|
2667
|
+
if (n)
|
|
2668
|
+
throw n = false, t$1;
|
|
2669
|
+
return pump("throw", t$1);
|
|
2670
|
+
}), typeof t["return"] == "function" && (e["return"] = function(t$1) {
|
|
2671
|
+
return n ? (n = false, t$1) : pump("return", t$1);
|
|
2672
|
+
}), e;
|
|
2673
|
+
}
|
|
2674
|
+
module.exports = _asyncGeneratorDelegate$1, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2675
|
+
} });
|
|
2676
|
+
var import_asyncIterator = __toESM3(require_asyncIterator(), 1);
|
|
2677
|
+
var import_awaitAsyncGenerator = __toESM3(require_awaitAsyncGenerator(), 1);
|
|
2678
|
+
var import_wrapAsyncGenerator$1 = __toESM3(require_wrapAsyncGenerator(), 1);
|
|
2679
|
+
var import_asyncGeneratorDelegate = __toESM3(require_asyncGeneratorDelegate(), 1);
|
|
2680
|
+
var import_usingCtx = __toESM3(require_usingCtx(), 1);
|
|
2681
|
+
var PING_EVENT = "ping";
|
|
2682
|
+
var SERIALIZED_ERROR_EVENT = "serialized-error";
|
|
2683
|
+
var CONNECTED_EVENT = "connected";
|
|
2684
|
+
var RETURN_EVENT = "return";
|
|
2685
|
+
async function withTimeout(opts) {
|
|
2686
|
+
try {
|
|
2687
|
+
var _usingCtx$1 = (0, import_usingCtx.default)();
|
|
2688
|
+
const timeoutPromise = _usingCtx$1.u(timerResource(opts.timeoutMs));
|
|
2689
|
+
const res = await Unpromise.race([opts.promise, timeoutPromise.start()]);
|
|
2690
|
+
if (res === disposablePromiseTimerResult)
|
|
2691
|
+
return await opts.onTimeout();
|
|
2692
|
+
return res;
|
|
2693
|
+
} catch (_) {
|
|
2694
|
+
_usingCtx$1.e = _;
|
|
2695
|
+
} finally {
|
|
2696
|
+
_usingCtx$1.d();
|
|
2697
|
+
}
|
|
2698
|
+
}
|
|
2699
|
+
function sseStreamConsumer(opts) {
|
|
2700
|
+
const { deserialize = (v) => v } = opts;
|
|
2701
|
+
let clientOptions = emptyObject();
|
|
2702
|
+
const signal = opts.signal;
|
|
2703
|
+
let _es = null;
|
|
2704
|
+
const createStream = () => new ReadableStream({
|
|
2705
|
+
async start(controller) {
|
|
2706
|
+
const [url, init] = await Promise.all([opts.url(), opts.init()]);
|
|
2707
|
+
const eventSource = _es = new opts.EventSource(url, init);
|
|
2708
|
+
controller.enqueue({
|
|
2709
|
+
type: "connecting",
|
|
2710
|
+
eventSource: _es,
|
|
2711
|
+
event: null
|
|
2712
|
+
});
|
|
2713
|
+
eventSource.addEventListener(CONNECTED_EVENT, (_msg) => {
|
|
2714
|
+
const msg = _msg;
|
|
2715
|
+
const options = JSON.parse(msg.data);
|
|
2716
|
+
clientOptions = options;
|
|
2717
|
+
controller.enqueue({
|
|
2718
|
+
type: "connected",
|
|
2719
|
+
options,
|
|
2720
|
+
eventSource
|
|
2721
|
+
});
|
|
2722
|
+
});
|
|
2723
|
+
eventSource.addEventListener(SERIALIZED_ERROR_EVENT, (_msg) => {
|
|
2724
|
+
const msg = _msg;
|
|
2725
|
+
controller.enqueue({
|
|
2726
|
+
type: "serialized-error",
|
|
2727
|
+
error: deserialize(JSON.parse(msg.data)),
|
|
2728
|
+
eventSource
|
|
2729
|
+
});
|
|
2730
|
+
});
|
|
2731
|
+
eventSource.addEventListener(PING_EVENT, () => {
|
|
2732
|
+
controller.enqueue({
|
|
2733
|
+
type: "ping",
|
|
2734
|
+
eventSource
|
|
2735
|
+
});
|
|
2736
|
+
});
|
|
2737
|
+
eventSource.addEventListener(RETURN_EVENT, () => {
|
|
2738
|
+
eventSource.close();
|
|
2739
|
+
controller.close();
|
|
2740
|
+
_es = null;
|
|
2741
|
+
});
|
|
2742
|
+
eventSource.addEventListener("error", (event) => {
|
|
2743
|
+
if (eventSource.readyState === eventSource.CLOSED)
|
|
2744
|
+
controller.error(event);
|
|
2745
|
+
else
|
|
2746
|
+
controller.enqueue({
|
|
2747
|
+
type: "connecting",
|
|
2748
|
+
eventSource,
|
|
2749
|
+
event
|
|
2750
|
+
});
|
|
2751
|
+
});
|
|
2752
|
+
eventSource.addEventListener("message", (_msg) => {
|
|
2753
|
+
const msg = _msg;
|
|
2754
|
+
const chunk = deserialize(JSON.parse(msg.data));
|
|
2755
|
+
const def = { data: chunk };
|
|
2756
|
+
if (msg.lastEventId)
|
|
2757
|
+
def.id = msg.lastEventId;
|
|
2758
|
+
controller.enqueue({
|
|
2759
|
+
type: "data",
|
|
2760
|
+
data: def,
|
|
2761
|
+
eventSource
|
|
2762
|
+
});
|
|
2763
|
+
});
|
|
2764
|
+
const onAbort = () => {
|
|
2765
|
+
try {
|
|
2766
|
+
eventSource.close();
|
|
2767
|
+
controller.close();
|
|
2768
|
+
} catch (_unused) {}
|
|
2769
|
+
};
|
|
2770
|
+
if (signal.aborted)
|
|
2771
|
+
onAbort();
|
|
2772
|
+
else
|
|
2773
|
+
signal.addEventListener("abort", onAbort);
|
|
2774
|
+
},
|
|
2775
|
+
cancel() {
|
|
2776
|
+
_es === null || _es === undefined || _es.close();
|
|
2777
|
+
}
|
|
2778
|
+
});
|
|
2779
|
+
const getStreamResource = () => {
|
|
2780
|
+
let stream = createStream();
|
|
2781
|
+
let reader = stream.getReader();
|
|
2782
|
+
async function dispose() {
|
|
2783
|
+
await reader.cancel();
|
|
2784
|
+
_es = null;
|
|
2785
|
+
}
|
|
2786
|
+
return makeAsyncResource({
|
|
2787
|
+
read() {
|
|
2788
|
+
return reader.read();
|
|
2789
|
+
},
|
|
2790
|
+
async recreate() {
|
|
2791
|
+
await dispose();
|
|
2792
|
+
stream = createStream();
|
|
2793
|
+
reader = stream.getReader();
|
|
2794
|
+
}
|
|
2795
|
+
}, dispose);
|
|
2796
|
+
};
|
|
2797
|
+
return run((0, import_wrapAsyncGenerator$1.default)(function* () {
|
|
2798
|
+
try {
|
|
2799
|
+
var _usingCtx3 = (0, import_usingCtx.default)();
|
|
2800
|
+
const stream = _usingCtx3.a(getStreamResource());
|
|
2801
|
+
while (true) {
|
|
2802
|
+
let promise = stream.read();
|
|
2803
|
+
const timeoutMs = clientOptions.reconnectAfterInactivityMs;
|
|
2804
|
+
if (timeoutMs)
|
|
2805
|
+
promise = withTimeout({
|
|
2806
|
+
promise,
|
|
2807
|
+
timeoutMs,
|
|
2808
|
+
onTimeout: async () => {
|
|
2809
|
+
const res = {
|
|
2810
|
+
value: {
|
|
2811
|
+
type: "timeout",
|
|
2812
|
+
ms: timeoutMs,
|
|
2813
|
+
eventSource: _es
|
|
2814
|
+
},
|
|
2815
|
+
done: false
|
|
2816
|
+
};
|
|
2817
|
+
await stream.recreate();
|
|
2818
|
+
return res;
|
|
2819
|
+
}
|
|
2820
|
+
});
|
|
2821
|
+
const result = yield (0, import_awaitAsyncGenerator.default)(promise);
|
|
2822
|
+
if (result.done)
|
|
2823
|
+
return result.value;
|
|
2824
|
+
yield result.value;
|
|
2825
|
+
}
|
|
2826
|
+
} catch (_) {
|
|
2827
|
+
_usingCtx3.e = _;
|
|
2828
|
+
} finally {
|
|
2829
|
+
yield (0, import_awaitAsyncGenerator.default)(_usingCtx3.d());
|
|
2830
|
+
}
|
|
2831
|
+
}));
|
|
2832
|
+
}
|
|
2833
|
+
var import_wrapAsyncGenerator = __toESM3(require_wrapAsyncGenerator(), 1);
|
|
2834
|
+
var import_objectSpread23 = __toESM3(require_objectSpread22(), 1);
|
|
2215
2835
|
// ../../node_modules/.bun/@trpc+client@11.8.1+56fb0e3277503e89/node_modules/@trpc/client/dist/TRPCClientError-CjKyS10w.mjs
|
|
2216
|
-
var
|
|
2217
|
-
var
|
|
2836
|
+
var import_defineProperty3 = __toESM2(require_defineProperty(), 1);
|
|
2837
|
+
var import_objectSpread24 = __toESM2(require_objectSpread2(), 1);
|
|
2218
2838
|
function isTRPCClientError(cause) {
|
|
2219
2839
|
return cause instanceof TRPCClientError;
|
|
2220
2840
|
}
|
|
@@ -2228,32 +2848,32 @@ function getMessageFromUnknownError(err, fallback) {
|
|
|
2228
2848
|
return err["message"];
|
|
2229
2849
|
return fallback;
|
|
2230
2850
|
}
|
|
2231
|
-
var TRPCClientError = class
|
|
2851
|
+
var TRPCClientError = class TRPCClientError extends Error {
|
|
2232
2852
|
constructor(message, opts) {
|
|
2233
2853
|
var _opts$result, _opts$result2;
|
|
2234
2854
|
const cause = opts === null || opts === undefined ? undefined : opts.cause;
|
|
2235
2855
|
super(message, { cause });
|
|
2236
|
-
(0,
|
|
2237
|
-
(0,
|
|
2238
|
-
(0,
|
|
2239
|
-
(0,
|
|
2856
|
+
(0, import_defineProperty3.default)(this, "cause", undefined);
|
|
2857
|
+
(0, import_defineProperty3.default)(this, "shape", undefined);
|
|
2858
|
+
(0, import_defineProperty3.default)(this, "data", undefined);
|
|
2859
|
+
(0, import_defineProperty3.default)(this, "meta", undefined);
|
|
2240
2860
|
this.meta = opts === null || opts === undefined ? undefined : opts.meta;
|
|
2241
2861
|
this.cause = cause;
|
|
2242
2862
|
this.shape = opts === null || opts === undefined || (_opts$result = opts.result) === null || _opts$result === undefined ? undefined : _opts$result.error;
|
|
2243
2863
|
this.data = opts === null || opts === undefined || (_opts$result2 = opts.result) === null || _opts$result2 === undefined ? undefined : _opts$result2.error.data;
|
|
2244
2864
|
this.name = "TRPCClientError";
|
|
2245
|
-
Object.setPrototypeOf(this,
|
|
2865
|
+
Object.setPrototypeOf(this, TRPCClientError.prototype);
|
|
2246
2866
|
}
|
|
2247
2867
|
static from(_cause, opts = {}) {
|
|
2248
2868
|
const cause = _cause;
|
|
2249
2869
|
if (isTRPCClientError(cause)) {
|
|
2250
2870
|
if (opts.meta)
|
|
2251
|
-
cause.meta = (0,
|
|
2871
|
+
cause.meta = (0, import_objectSpread24.default)((0, import_objectSpread24.default)({}, cause.meta), opts.meta);
|
|
2252
2872
|
return cause;
|
|
2253
2873
|
}
|
|
2254
2874
|
if (isTRPCErrorResponse(cause))
|
|
2255
|
-
return new
|
|
2256
|
-
return new
|
|
2875
|
+
return new TRPCClientError(cause.error.message, (0, import_objectSpread24.default)((0, import_objectSpread24.default)({}, opts), {}, { result: cause }));
|
|
2876
|
+
return new TRPCClientError(getMessageFromUnknownError(cause, "Unknown error"), (0, import_objectSpread24.default)((0, import_objectSpread24.default)({}, opts), {}, { cause }));
|
|
2257
2877
|
}
|
|
2258
2878
|
};
|
|
2259
2879
|
|
|
@@ -2290,7 +2910,7 @@ function getFetch(customFetchImpl) {
|
|
|
2290
2910
|
return globalThis.fetch;
|
|
2291
2911
|
throw new Error("No fetch implementation found");
|
|
2292
2912
|
}
|
|
2293
|
-
var
|
|
2913
|
+
var import_objectSpread25 = __toESM2(require_objectSpread2(), 1);
|
|
2294
2914
|
function resolveHTTPLinkOptions(opts) {
|
|
2295
2915
|
return {
|
|
2296
2916
|
url: opts.url.toString(),
|
|
@@ -2340,7 +2960,7 @@ var getBody = (opts) => {
|
|
|
2340
2960
|
return input !== undefined ? JSON.stringify(input) : undefined;
|
|
2341
2961
|
};
|
|
2342
2962
|
var jsonHttpRequester = (opts) => {
|
|
2343
|
-
return httpRequest((0,
|
|
2963
|
+
return httpRequest((0, import_objectSpread25.default)((0, import_objectSpread25.default)({}, opts), {}, {
|
|
2344
2964
|
contentTypeHeader: "application/json",
|
|
2345
2965
|
getUrl,
|
|
2346
2966
|
getBody
|
|
@@ -2375,7 +2995,7 @@ async function fetchHTTPResponse(opts) {
|
|
|
2375
2995
|
return Object.fromEntries(heads);
|
|
2376
2996
|
return heads;
|
|
2377
2997
|
})();
|
|
2378
|
-
const headers = (0,
|
|
2998
|
+
const headers = (0, import_objectSpread25.default)((0, import_objectSpread25.default)((0, import_objectSpread25.default)({}, opts.contentTypeHeader && method !== "GET" ? { "content-type": opts.contentTypeHeader } : {}), opts.trpcAcceptHeader ? { "trpc-accept": opts.trpcAcceptHeader } : undefined), resolvedHeaders);
|
|
2379
2999
|
return getFetch(opts.fetch)(url, {
|
|
2380
3000
|
method,
|
|
2381
3001
|
signal: opts.signal,
|
|
@@ -2396,7 +3016,7 @@ async function httpRequest(opts) {
|
|
|
2396
3016
|
}
|
|
2397
3017
|
|
|
2398
3018
|
// ../../node_modules/.bun/@trpc+client@11.8.1+56fb0e3277503e89/node_modules/@trpc/client/dist/httpLink-DCFpUmZF.mjs
|
|
2399
|
-
var
|
|
3019
|
+
var import_objectSpread26 = __toESM2(require_objectSpread2(), 1);
|
|
2400
3020
|
|
|
2401
3021
|
// ../../node_modules/.bun/@trpc+client@11.8.1+56fb0e3277503e89/node_modules/@trpc/client/dist/httpBatchLink-BOe5aCcR.mjs
|
|
2402
3022
|
var throwFatalError = () => {
|
|
@@ -2515,7 +3135,16 @@ function allAbortSignals(...signals) {
|
|
|
2515
3135
|
signal === null || signal === undefined || signal.addEventListener("abort", onAbort, { once: true });
|
|
2516
3136
|
return ac.signal;
|
|
2517
3137
|
}
|
|
2518
|
-
|
|
3138
|
+
function raceAbortSignals(...signals) {
|
|
3139
|
+
const ac = new AbortController;
|
|
3140
|
+
for (const signal of signals)
|
|
3141
|
+
if (signal === null || signal === undefined ? undefined : signal.aborted)
|
|
3142
|
+
ac.abort();
|
|
3143
|
+
else
|
|
3144
|
+
signal === null || signal === undefined || signal.addEventListener("abort", () => ac.abort(), { once: true });
|
|
3145
|
+
return ac.signal;
|
|
3146
|
+
}
|
|
3147
|
+
var import_objectSpread27 = __toESM2(require_objectSpread2(), 1);
|
|
2519
3148
|
function httpBatchLink(opts) {
|
|
2520
3149
|
var _opts$maxURLLength, _opts$maxItems;
|
|
2521
3150
|
const resolvedOpts = resolveHTTPLinkOptions(opts);
|
|
@@ -2531,7 +3160,7 @@ function httpBatchLink(opts) {
|
|
|
2531
3160
|
return false;
|
|
2532
3161
|
const path = batchOps.map((op) => op.path).join(",");
|
|
2533
3162
|
const inputs = batchOps.map((op) => op.input);
|
|
2534
|
-
const url = getUrl((0,
|
|
3163
|
+
const url = getUrl((0, import_objectSpread27.default)((0, import_objectSpread27.default)({}, resolvedOpts), {}, {
|
|
2535
3164
|
type,
|
|
2536
3165
|
path,
|
|
2537
3166
|
inputs,
|
|
@@ -2543,7 +3172,7 @@ function httpBatchLink(opts) {
|
|
|
2543
3172
|
const path = batchOps.map((op) => op.path).join(",");
|
|
2544
3173
|
const inputs = batchOps.map((op) => op.input);
|
|
2545
3174
|
const signal = allAbortSignals(...batchOps.map((op) => op.signal));
|
|
2546
|
-
const res = await jsonHttpRequester((0,
|
|
3175
|
+
const res = await jsonHttpRequester((0, import_objectSpread27.default)((0, import_objectSpread27.default)({}, resolvedOpts), {}, {
|
|
2547
3176
|
path,
|
|
2548
3177
|
inputs,
|
|
2549
3178
|
type,
|
|
@@ -2600,14 +3229,14 @@ function httpBatchLink(opts) {
|
|
|
2600
3229
|
}
|
|
2601
3230
|
|
|
2602
3231
|
// ../../node_modules/.bun/@trpc+client@11.8.1+56fb0e3277503e89/node_modules/@trpc/client/dist/loggerLink-ineCN1PO.mjs
|
|
2603
|
-
var
|
|
3232
|
+
var import_objectSpread28 = __toESM2(require_objectSpread2(), 1);
|
|
2604
3233
|
|
|
2605
3234
|
// ../../node_modules/.bun/@trpc+client@11.8.1+56fb0e3277503e89/node_modules/@trpc/client/dist/wsLink-CatceK3c.mjs
|
|
2606
3235
|
var resultOf = (value, ...args) => {
|
|
2607
3236
|
return typeof value === "function" ? value(...args) : value;
|
|
2608
3237
|
};
|
|
2609
3238
|
var import_defineProperty$3 = __toESM2(require_defineProperty(), 1);
|
|
2610
|
-
function
|
|
3239
|
+
function withResolvers2() {
|
|
2611
3240
|
let resolve;
|
|
2612
3241
|
let reject;
|
|
2613
3242
|
const promise = new Promise((res, rej) => {
|
|
@@ -2638,7 +3267,7 @@ async function buildConnectionMessage(connectionParams) {
|
|
|
2638
3267
|
var import_defineProperty$2 = __toESM2(require_defineProperty(), 1);
|
|
2639
3268
|
var import_defineProperty$1 = __toESM2(require_defineProperty(), 1);
|
|
2640
3269
|
function asyncWsOpen(ws) {
|
|
2641
|
-
const { promise, resolve, reject } =
|
|
3270
|
+
const { promise, resolve, reject } = withResolvers2();
|
|
2642
3271
|
ws.addEventListener("open", () => {
|
|
2643
3272
|
ws.removeEventListener("error", reject);
|
|
2644
3273
|
resolve();
|
|
@@ -2677,10 +3306,10 @@ function setupPingInterval(ws, { intervalMs, pongTimeoutMs }) {
|
|
|
2677
3306
|
clearTimeout(pongTimeout);
|
|
2678
3307
|
});
|
|
2679
3308
|
}
|
|
2680
|
-
var WsConnection = class
|
|
3309
|
+
var WsConnection = class WsConnection {
|
|
2681
3310
|
constructor(opts) {
|
|
2682
3311
|
var _opts$WebSocketPonyfi;
|
|
2683
|
-
(0, import_defineProperty$1.default)(this, "id", ++
|
|
3312
|
+
(0, import_defineProperty$1.default)(this, "id", ++WsConnection.connectCount);
|
|
2684
3313
|
(0, import_defineProperty$1.default)(this, "WebSocketPonyfill", undefined);
|
|
2685
3314
|
(0, import_defineProperty$1.default)(this, "urlOptions", undefined);
|
|
2686
3315
|
(0, import_defineProperty$1.default)(this, "keepAliveOpts", undefined);
|
|
@@ -2708,7 +3337,7 @@ var WsConnection = class WsConnection2 {
|
|
|
2708
3337
|
var _this = this;
|
|
2709
3338
|
if (_this.openPromise)
|
|
2710
3339
|
return _this.openPromise;
|
|
2711
|
-
_this.id = ++
|
|
3340
|
+
_this.id = ++WsConnection.connectCount;
|
|
2712
3341
|
const wsPromise = prepareUrl(_this.urlOptions).then((url) => new _this.WebSocketPonyfill(url));
|
|
2713
3342
|
_this.openPromise = wsPromise.then(async (ws) => {
|
|
2714
3343
|
_this.ws = ws;
|
|
@@ -2743,17 +3372,17 @@ var WsConnection = class WsConnection2 {
|
|
|
2743
3372
|
}
|
|
2744
3373
|
};
|
|
2745
3374
|
(0, import_defineProperty$1.default)(WsConnection, "connectCount", 0);
|
|
2746
|
-
var
|
|
2747
|
-
var
|
|
3375
|
+
var import_defineProperty4 = __toESM2(require_defineProperty(), 1);
|
|
3376
|
+
var import_objectSpread29 = __toESM2(require_objectSpread2(), 1);
|
|
2748
3377
|
|
|
2749
3378
|
// ../../node_modules/.bun/@trpc+client@11.8.1+56fb0e3277503e89/node_modules/@trpc/client/dist/index.mjs
|
|
2750
|
-
var
|
|
3379
|
+
var import_defineProperty5 = __toESM2(require_defineProperty(), 1);
|
|
2751
3380
|
var import_objectSpread2$4 = __toESM2(require_objectSpread2(), 1);
|
|
2752
3381
|
var TRPCUntypedClient = class {
|
|
2753
3382
|
constructor(opts) {
|
|
2754
|
-
(0,
|
|
2755
|
-
(0,
|
|
2756
|
-
(0,
|
|
3383
|
+
(0, import_defineProperty5.default)(this, "links", undefined);
|
|
3384
|
+
(0, import_defineProperty5.default)(this, "runtime", undefined);
|
|
3385
|
+
(0, import_defineProperty5.default)(this, "requestId", undefined);
|
|
2757
3386
|
this.requestId = 0;
|
|
2758
3387
|
this.runtime = {};
|
|
2759
3388
|
this.links = opts.links.map((link) => link(this.runtime));
|
|
@@ -2872,7 +3501,14 @@ function createTRPCClient(opts) {
|
|
|
2872
3501
|
}
|
|
2873
3502
|
var import_objectSpread2$3 = __toESM2(require_objectSpread2(), 1);
|
|
2874
3503
|
var import_objectSpread2$2 = __toESM2(require_objectSpread2(), 1);
|
|
2875
|
-
|
|
3504
|
+
function inputWithTrackedEventId(input, lastEventId) {
|
|
3505
|
+
if (!lastEventId)
|
|
3506
|
+
return input;
|
|
3507
|
+
if (input != null && typeof input !== "object")
|
|
3508
|
+
return input;
|
|
3509
|
+
return (0, import_objectSpread2$2.default)((0, import_objectSpread2$2.default)({}, input !== null && input !== undefined ? input : {}), {}, { lastEventId });
|
|
3510
|
+
}
|
|
3511
|
+
var require_asyncIterator2 = __commonJS2({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/asyncIterator.js"(exports, module) {
|
|
2876
3512
|
function _asyncIterator$1(r) {
|
|
2877
3513
|
var n, t, o, e = 2;
|
|
2878
3514
|
for (typeof Symbol != "undefined" && (t = Symbol.asyncIterator, o = Symbol.iterator);e--; ) {
|
|
@@ -2919,9 +3555,153 @@ var require_asyncIterator = __commonJS2({ "../../node_modules/.pnpm/@oxc-project
|
|
|
2919
3555
|
}
|
|
2920
3556
|
module.exports = _asyncIterator$1, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2921
3557
|
} });
|
|
2922
|
-
var
|
|
2923
|
-
|
|
2924
|
-
|
|
3558
|
+
var import_asyncIterator2 = __toESM2(require_asyncIterator2(), 1);
|
|
3559
|
+
async function urlWithConnectionParams(opts) {
|
|
3560
|
+
let url = await resultOf(opts.url);
|
|
3561
|
+
if (opts.connectionParams) {
|
|
3562
|
+
const params = await resultOf(opts.connectionParams);
|
|
3563
|
+
const prefix = url.includes("?") ? "&" : "?";
|
|
3564
|
+
url += prefix + "connectionParams=" + encodeURIComponent(JSON.stringify(params));
|
|
3565
|
+
}
|
|
3566
|
+
return url;
|
|
3567
|
+
}
|
|
3568
|
+
function httpSubscriptionLink(opts) {
|
|
3569
|
+
const transformer = getTransformer(opts.transformer);
|
|
3570
|
+
return () => {
|
|
3571
|
+
return ({ op }) => {
|
|
3572
|
+
return observable((observer) => {
|
|
3573
|
+
var _opts$EventSource;
|
|
3574
|
+
const { type, path, input } = op;
|
|
3575
|
+
if (type !== "subscription")
|
|
3576
|
+
throw new Error("httpSubscriptionLink only supports subscriptions");
|
|
3577
|
+
let lastEventId = undefined;
|
|
3578
|
+
const ac = new AbortController;
|
|
3579
|
+
const signal = raceAbortSignals(op.signal, ac.signal);
|
|
3580
|
+
const eventSourceStream = sseStreamConsumer({
|
|
3581
|
+
url: async () => getUrl({
|
|
3582
|
+
transformer,
|
|
3583
|
+
url: await urlWithConnectionParams(opts),
|
|
3584
|
+
input: inputWithTrackedEventId(input, lastEventId),
|
|
3585
|
+
path,
|
|
3586
|
+
type,
|
|
3587
|
+
signal: null
|
|
3588
|
+
}),
|
|
3589
|
+
init: () => resultOf(opts.eventSourceOptions, { op }),
|
|
3590
|
+
signal,
|
|
3591
|
+
deserialize: (data) => transformer.output.deserialize(data),
|
|
3592
|
+
EventSource: (_opts$EventSource = opts.EventSource) !== null && _opts$EventSource !== undefined ? _opts$EventSource : globalThis.EventSource
|
|
3593
|
+
});
|
|
3594
|
+
const connectionState = behaviorSubject({
|
|
3595
|
+
type: "state",
|
|
3596
|
+
state: "connecting",
|
|
3597
|
+
error: null
|
|
3598
|
+
});
|
|
3599
|
+
const connectionSub = connectionState.subscribe({ next(state) {
|
|
3600
|
+
observer.next({ result: state });
|
|
3601
|
+
} });
|
|
3602
|
+
run(async () => {
|
|
3603
|
+
var _iteratorAbruptCompletion = false;
|
|
3604
|
+
var _didIteratorError = false;
|
|
3605
|
+
var _iteratorError;
|
|
3606
|
+
try {
|
|
3607
|
+
for (var _iterator = (0, import_asyncIterator2.default)(eventSourceStream), _step;_iteratorAbruptCompletion = !(_step = await _iterator.next()).done; _iteratorAbruptCompletion = false) {
|
|
3608
|
+
const chunk = _step.value;
|
|
3609
|
+
switch (chunk.type) {
|
|
3610
|
+
case "ping":
|
|
3611
|
+
break;
|
|
3612
|
+
case "data":
|
|
3613
|
+
const chunkData = chunk.data;
|
|
3614
|
+
let result;
|
|
3615
|
+
if (chunkData.id) {
|
|
3616
|
+
lastEventId = chunkData.id;
|
|
3617
|
+
result = {
|
|
3618
|
+
id: chunkData.id,
|
|
3619
|
+
data: chunkData
|
|
3620
|
+
};
|
|
3621
|
+
} else
|
|
3622
|
+
result = { data: chunkData.data };
|
|
3623
|
+
observer.next({
|
|
3624
|
+
result,
|
|
3625
|
+
context: { eventSource: chunk.eventSource }
|
|
3626
|
+
});
|
|
3627
|
+
break;
|
|
3628
|
+
case "connected": {
|
|
3629
|
+
observer.next({
|
|
3630
|
+
result: { type: "started" },
|
|
3631
|
+
context: { eventSource: chunk.eventSource }
|
|
3632
|
+
});
|
|
3633
|
+
connectionState.next({
|
|
3634
|
+
type: "state",
|
|
3635
|
+
state: "pending",
|
|
3636
|
+
error: null
|
|
3637
|
+
});
|
|
3638
|
+
break;
|
|
3639
|
+
}
|
|
3640
|
+
case "serialized-error": {
|
|
3641
|
+
const error = TRPCClientError.from({ error: chunk.error });
|
|
3642
|
+
if (retryableRpcCodes.includes(chunk.error.code)) {
|
|
3643
|
+
connectionState.next({
|
|
3644
|
+
type: "state",
|
|
3645
|
+
state: "connecting",
|
|
3646
|
+
error
|
|
3647
|
+
});
|
|
3648
|
+
break;
|
|
3649
|
+
}
|
|
3650
|
+
throw error;
|
|
3651
|
+
}
|
|
3652
|
+
case "connecting": {
|
|
3653
|
+
const lastState = connectionState.get();
|
|
3654
|
+
const error = chunk.event && TRPCClientError.from(chunk.event);
|
|
3655
|
+
if (!error && lastState.state === "connecting")
|
|
3656
|
+
break;
|
|
3657
|
+
connectionState.next({
|
|
3658
|
+
type: "state",
|
|
3659
|
+
state: "connecting",
|
|
3660
|
+
error
|
|
3661
|
+
});
|
|
3662
|
+
break;
|
|
3663
|
+
}
|
|
3664
|
+
case "timeout":
|
|
3665
|
+
connectionState.next({
|
|
3666
|
+
type: "state",
|
|
3667
|
+
state: "connecting",
|
|
3668
|
+
error: new TRPCClientError(`Timeout of ${chunk.ms}ms reached while waiting for a response`)
|
|
3669
|
+
});
|
|
3670
|
+
}
|
|
3671
|
+
}
|
|
3672
|
+
} catch (err) {
|
|
3673
|
+
_didIteratorError = true;
|
|
3674
|
+
_iteratorError = err;
|
|
3675
|
+
} finally {
|
|
3676
|
+
try {
|
|
3677
|
+
if (_iteratorAbruptCompletion && _iterator.return != null)
|
|
3678
|
+
await _iterator.return();
|
|
3679
|
+
} finally {
|
|
3680
|
+
if (_didIteratorError)
|
|
3681
|
+
throw _iteratorError;
|
|
3682
|
+
}
|
|
3683
|
+
}
|
|
3684
|
+
observer.next({ result: { type: "stopped" } });
|
|
3685
|
+
connectionState.next({
|
|
3686
|
+
type: "state",
|
|
3687
|
+
state: "idle",
|
|
3688
|
+
error: null
|
|
3689
|
+
});
|
|
3690
|
+
observer.complete();
|
|
3691
|
+
}).catch((error) => {
|
|
3692
|
+
observer.error(TRPCClientError.from(error));
|
|
3693
|
+
});
|
|
3694
|
+
return () => {
|
|
3695
|
+
observer.complete();
|
|
3696
|
+
ac.abort();
|
|
3697
|
+
connectionSub.unsubscribe();
|
|
3698
|
+
};
|
|
3699
|
+
});
|
|
3700
|
+
};
|
|
3701
|
+
};
|
|
3702
|
+
}
|
|
3703
|
+
var import_objectSpread2$13 = __toESM2(require_objectSpread2(), 1);
|
|
3704
|
+
var require_usingCtx2 = __commonJS2({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.js"(exports, module) {
|
|
2925
3705
|
function _usingCtx() {
|
|
2926
3706
|
var r = typeof SuppressedError == "function" ? SuppressedError : function(r$1, e$1) {
|
|
2927
3707
|
var n$1 = Error();
|
|
@@ -2987,96 +3767,752 @@ var require_usingCtx = __commonJS2({ "../../node_modules/.pnpm/@oxc-project+runt
|
|
|
2987
3767
|
}
|
|
2988
3768
|
};
|
|
2989
3769
|
}
|
|
2990
|
-
module.exports = _usingCtx, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
2991
|
-
} });
|
|
2992
|
-
var
|
|
2993
|
-
function _OverloadYield(e, d) {
|
|
2994
|
-
this.v = e, this.k = d;
|
|
3770
|
+
module.exports = _usingCtx, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
3771
|
+
} });
|
|
3772
|
+
var require_OverloadYield2 = __commonJS2({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/OverloadYield.js"(exports, module) {
|
|
3773
|
+
function _OverloadYield(e, d) {
|
|
3774
|
+
this.v = e, this.k = d;
|
|
3775
|
+
}
|
|
3776
|
+
module.exports = _OverloadYield, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
3777
|
+
} });
|
|
3778
|
+
var require_awaitAsyncGenerator2 = __commonJS2({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/awaitAsyncGenerator.js"(exports, module) {
|
|
3779
|
+
var OverloadYield$1 = require_OverloadYield2();
|
|
3780
|
+
function _awaitAsyncGenerator$1(e) {
|
|
3781
|
+
return new OverloadYield$1(e, 0);
|
|
3782
|
+
}
|
|
3783
|
+
module.exports = _awaitAsyncGenerator$1, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
3784
|
+
} });
|
|
3785
|
+
var require_wrapAsyncGenerator2 = __commonJS2({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/wrapAsyncGenerator.js"(exports, module) {
|
|
3786
|
+
var OverloadYield = require_OverloadYield2();
|
|
3787
|
+
function _wrapAsyncGenerator$1(e) {
|
|
3788
|
+
return function() {
|
|
3789
|
+
return new AsyncGenerator(e.apply(this, arguments));
|
|
3790
|
+
};
|
|
3791
|
+
}
|
|
3792
|
+
function AsyncGenerator(e) {
|
|
3793
|
+
var r, t;
|
|
3794
|
+
function resume(r$1, t$1) {
|
|
3795
|
+
try {
|
|
3796
|
+
var n = e[r$1](t$1), o = n.value, u = o instanceof OverloadYield;
|
|
3797
|
+
Promise.resolve(u ? o.v : o).then(function(t$2) {
|
|
3798
|
+
if (u) {
|
|
3799
|
+
var i = r$1 === "return" ? "return" : "next";
|
|
3800
|
+
if (!o.k || t$2.done)
|
|
3801
|
+
return resume(i, t$2);
|
|
3802
|
+
t$2 = e[i](t$2).value;
|
|
3803
|
+
}
|
|
3804
|
+
settle(n.done ? "return" : "normal", t$2);
|
|
3805
|
+
}, function(e$1) {
|
|
3806
|
+
resume("throw", e$1);
|
|
3807
|
+
});
|
|
3808
|
+
} catch (e$1) {
|
|
3809
|
+
settle("throw", e$1);
|
|
3810
|
+
}
|
|
3811
|
+
}
|
|
3812
|
+
function settle(e$1, n) {
|
|
3813
|
+
switch (e$1) {
|
|
3814
|
+
case "return":
|
|
3815
|
+
r.resolve({
|
|
3816
|
+
value: n,
|
|
3817
|
+
done: true
|
|
3818
|
+
});
|
|
3819
|
+
break;
|
|
3820
|
+
case "throw":
|
|
3821
|
+
r.reject(n);
|
|
3822
|
+
break;
|
|
3823
|
+
default:
|
|
3824
|
+
r.resolve({
|
|
3825
|
+
value: n,
|
|
3826
|
+
done: false
|
|
3827
|
+
});
|
|
3828
|
+
}
|
|
3829
|
+
(r = r.next) ? resume(r.key, r.arg) : t = null;
|
|
3830
|
+
}
|
|
3831
|
+
this._invoke = function(e$1, n) {
|
|
3832
|
+
return new Promise(function(o, u) {
|
|
3833
|
+
var i = {
|
|
3834
|
+
key: e$1,
|
|
3835
|
+
arg: n,
|
|
3836
|
+
resolve: o,
|
|
3837
|
+
reject: u,
|
|
3838
|
+
next: null
|
|
3839
|
+
};
|
|
3840
|
+
t ? t = t.next = i : (r = t = i, resume(e$1, n));
|
|
3841
|
+
});
|
|
3842
|
+
}, typeof e["return"] != "function" && (this["return"] = undefined);
|
|
3843
|
+
}
|
|
3844
|
+
AsyncGenerator.prototype[typeof Symbol == "function" && Symbol.asyncIterator || "@@asyncIterator"] = function() {
|
|
3845
|
+
return this;
|
|
3846
|
+
}, AsyncGenerator.prototype.next = function(e) {
|
|
3847
|
+
return this._invoke("next", e);
|
|
3848
|
+
}, AsyncGenerator.prototype["throw"] = function(e) {
|
|
3849
|
+
return this._invoke("throw", e);
|
|
3850
|
+
}, AsyncGenerator.prototype["return"] = function(e) {
|
|
3851
|
+
return this._invoke("return", e);
|
|
3852
|
+
};
|
|
3853
|
+
module.exports = _wrapAsyncGenerator$1, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
|
3854
|
+
} });
|
|
3855
|
+
var import_usingCtx2 = __toESM2(require_usingCtx2(), 1);
|
|
3856
|
+
var import_awaitAsyncGenerator2 = __toESM2(require_awaitAsyncGenerator2(), 1);
|
|
3857
|
+
var import_wrapAsyncGenerator2 = __toESM2(require_wrapAsyncGenerator2(), 1);
|
|
3858
|
+
var import_objectSpread210 = __toESM2(require_objectSpread2(), 1);
|
|
3859
|
+
// ../../node_modules/.bun/eventsource-parser@4.1.0/node_modules/eventsource-parser/dist/errors.js
|
|
3860
|
+
class ParseError extends Error {
|
|
3861
|
+
constructor(message, options) {
|
|
3862
|
+
super(message);
|
|
3863
|
+
this.name = "ParseError";
|
|
3864
|
+
this.type = options.type;
|
|
3865
|
+
this.field = options.field;
|
|
3866
|
+
this.value = options.value;
|
|
3867
|
+
this.line = options.line;
|
|
3868
|
+
}
|
|
3869
|
+
}
|
|
3870
|
+
|
|
3871
|
+
// ../../node_modules/.bun/eventsource-parser@4.1.0/node_modules/eventsource-parser/dist/parse.js
|
|
3872
|
+
var LF = 10;
|
|
3873
|
+
var CR = 13;
|
|
3874
|
+
var SPACE = 32;
|
|
3875
|
+
var MAX_FIELD_PREFIX_LENGTH = 6;
|
|
3876
|
+
function createParser(config) {
|
|
3877
|
+
if (typeof config === "function") {
|
|
3878
|
+
throw new TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");
|
|
3879
|
+
}
|
|
3880
|
+
const { maxBufferSize, onComment, onError, onEvent, onId, onRetry } = config;
|
|
3881
|
+
const pendingFragments = [];
|
|
3882
|
+
let pendingFragmentsLength = 0;
|
|
3883
|
+
let isFirstChunk = true;
|
|
3884
|
+
let id;
|
|
3885
|
+
let data = "";
|
|
3886
|
+
let dataLines = 0;
|
|
3887
|
+
let eventType;
|
|
3888
|
+
let terminated = false;
|
|
3889
|
+
let skippingLine = false;
|
|
3890
|
+
let skipNextLineFeed = false;
|
|
3891
|
+
function feed(chunk) {
|
|
3892
|
+
if (terminated) {
|
|
3893
|
+
throw new Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");
|
|
3894
|
+
}
|
|
3895
|
+
if (isFirstChunk) {
|
|
3896
|
+
isFirstChunk = false;
|
|
3897
|
+
if (chunk.charCodeAt(0) === 65279) {
|
|
3898
|
+
chunk = chunk.slice(1);
|
|
3899
|
+
} else if (chunk.charCodeAt(0) === 239 && chunk.charCodeAt(1) === 187 && chunk.charCodeAt(2) === 191) {
|
|
3900
|
+
chunk = chunk.slice(3);
|
|
3901
|
+
}
|
|
3902
|
+
}
|
|
3903
|
+
if (skippingLine || skipNextLineFeed) {
|
|
3904
|
+
chunk = resumeAfterSkip(chunk);
|
|
3905
|
+
if (!chunk) {
|
|
3906
|
+
return;
|
|
3907
|
+
}
|
|
3908
|
+
}
|
|
3909
|
+
if (!pendingFragments.length) {
|
|
3910
|
+
const trailing = processLines(chunk);
|
|
3911
|
+
if (trailing !== "") {
|
|
3912
|
+
storeTrailing(trailing);
|
|
3913
|
+
}
|
|
3914
|
+
checkBufferSize();
|
|
3915
|
+
return;
|
|
3916
|
+
}
|
|
3917
|
+
if (chunk.indexOf(`
|
|
3918
|
+
`) === -1 && chunk.indexOf("\r") === -1) {
|
|
3919
|
+
if (pendingFragmentsLength < MAX_FIELD_PREFIX_LENGTH) {
|
|
3920
|
+
const head = pendingFragments.join("") + chunk.slice(0, MAX_FIELD_PREFIX_LENGTH - pendingFragmentsLength);
|
|
3921
|
+
if (!shouldBufferTrailing(head)) {
|
|
3922
|
+
pendingFragments.length = 0;
|
|
3923
|
+
pendingFragmentsLength = 0;
|
|
3924
|
+
skippingLine = true;
|
|
3925
|
+
return;
|
|
3926
|
+
}
|
|
3927
|
+
}
|
|
3928
|
+
pendingFragments.push(chunk);
|
|
3929
|
+
pendingFragmentsLength += chunk.length;
|
|
3930
|
+
checkBufferSize();
|
|
3931
|
+
return;
|
|
3932
|
+
}
|
|
3933
|
+
pendingFragments.push(chunk);
|
|
3934
|
+
const input = pendingFragments.join("");
|
|
3935
|
+
pendingFragments.length = 0;
|
|
3936
|
+
pendingFragmentsLength = 0;
|
|
3937
|
+
storeTrailing(processLines(input));
|
|
3938
|
+
checkBufferSize();
|
|
3939
|
+
}
|
|
3940
|
+
function resumeAfterSkip(chunk) {
|
|
3941
|
+
if (chunk.length === 0) {
|
|
3942
|
+
return chunk;
|
|
3943
|
+
}
|
|
3944
|
+
if (skipNextLineFeed) {
|
|
3945
|
+
skipNextLineFeed = false;
|
|
3946
|
+
return chunk.charCodeAt(0) === LF ? chunk.slice(1) : chunk;
|
|
3947
|
+
}
|
|
3948
|
+
const crIndex = chunk.indexOf("\r");
|
|
3949
|
+
const lfIndex = chunk.indexOf(`
|
|
3950
|
+
`);
|
|
3951
|
+
const lineEnd = crIndex === -1 ? lfIndex : lfIndex === -1 ? crIndex : crIndex < lfIndex ? crIndex : lfIndex;
|
|
3952
|
+
if (lineEnd === -1) {
|
|
3953
|
+
return "";
|
|
3954
|
+
}
|
|
3955
|
+
if (lineEnd === chunk.length - 1 && chunk.charCodeAt(lineEnd) === CR) {
|
|
3956
|
+
skippingLine = false;
|
|
3957
|
+
skipNextLineFeed = true;
|
|
3958
|
+
return "";
|
|
3959
|
+
}
|
|
3960
|
+
skippingLine = false;
|
|
3961
|
+
return chunk.slice(lineEnd + (chunk.charCodeAt(lineEnd) === CR && chunk.charCodeAt(lineEnd + 1) === LF ? 2 : 1));
|
|
3962
|
+
}
|
|
3963
|
+
function storeTrailing(trailing) {
|
|
3964
|
+
if (!trailing)
|
|
3965
|
+
return;
|
|
3966
|
+
if (trailing.charCodeAt(trailing.length - 1) === CR) {
|
|
3967
|
+
parseLine(trailing, 0, trailing.length - 1);
|
|
3968
|
+
skipNextLineFeed = true;
|
|
3969
|
+
return;
|
|
3970
|
+
}
|
|
3971
|
+
if (shouldBufferTrailing(trailing)) {
|
|
3972
|
+
pendingFragments.push(trailing);
|
|
3973
|
+
pendingFragmentsLength = trailing.length;
|
|
3974
|
+
return;
|
|
3975
|
+
}
|
|
3976
|
+
skippingLine = true;
|
|
3977
|
+
}
|
|
3978
|
+
function shouldBufferTrailing(trailing) {
|
|
3979
|
+
const firstCharCode = trailing.charCodeAt(0);
|
|
3980
|
+
return firstCharCode === 58 && !!onComment || firstCharCode === 100 && isPotentialField(trailing, "data") || firstCharCode === 101 && isPotentialField(trailing, "event") || firstCharCode === 105 && isPotentialField(trailing, "id") || firstCharCode === 114 && isPotentialField(trailing, "retry");
|
|
3981
|
+
}
|
|
3982
|
+
function checkBufferSize() {
|
|
3983
|
+
if (maxBufferSize === undefined)
|
|
3984
|
+
return;
|
|
3985
|
+
if (pendingFragmentsLength + data.length <= maxBufferSize)
|
|
3986
|
+
return;
|
|
3987
|
+
terminated = true;
|
|
3988
|
+
pendingFragments.length = 0;
|
|
3989
|
+
pendingFragmentsLength = 0;
|
|
3990
|
+
id = undefined;
|
|
3991
|
+
data = "";
|
|
3992
|
+
dataLines = 0;
|
|
3993
|
+
eventType = undefined;
|
|
3994
|
+
skippingLine = false;
|
|
3995
|
+
skipNextLineFeed = false;
|
|
3996
|
+
onError === null || onError === undefined || onError(new ParseError(`Buffered data exceeded max buffer size of ${maxBufferSize} characters`, {
|
|
3997
|
+
type: "max-buffer-size-exceeded"
|
|
3998
|
+
}));
|
|
3999
|
+
}
|
|
4000
|
+
function processLines(chunk) {
|
|
4001
|
+
let searchIndex = 0;
|
|
4002
|
+
if (chunk.indexOf("\r") === -1) {
|
|
4003
|
+
let lfIndex = chunk.indexOf(`
|
|
4004
|
+
`, searchIndex);
|
|
4005
|
+
while (lfIndex !== -1) {
|
|
4006
|
+
if (searchIndex === lfIndex) {
|
|
4007
|
+
if (id !== undefined) {
|
|
4008
|
+
onId === null || onId === undefined || onId(id);
|
|
4009
|
+
}
|
|
4010
|
+
if (dataLines > 0) {
|
|
4011
|
+
onEvent === null || onEvent === undefined || onEvent({ id, event: eventType, data });
|
|
4012
|
+
}
|
|
4013
|
+
id = undefined;
|
|
4014
|
+
data = "";
|
|
4015
|
+
dataLines = 0;
|
|
4016
|
+
eventType = undefined;
|
|
4017
|
+
searchIndex = lfIndex + 1;
|
|
4018
|
+
lfIndex = chunk.indexOf(`
|
|
4019
|
+
`, searchIndex);
|
|
4020
|
+
continue;
|
|
4021
|
+
}
|
|
4022
|
+
const firstCharCode = chunk.charCodeAt(searchIndex);
|
|
4023
|
+
if (isDataPrefix(chunk, searchIndex, firstCharCode)) {
|
|
4024
|
+
const valueStart = chunk.charCodeAt(searchIndex + 5) === SPACE ? searchIndex + 6 : searchIndex + 5;
|
|
4025
|
+
const value = chunk.slice(valueStart, lfIndex);
|
|
4026
|
+
if (dataLines === 0 && chunk.charCodeAt(lfIndex + 1) === LF) {
|
|
4027
|
+
if (id !== undefined) {
|
|
4028
|
+
onId === null || onId === undefined || onId(id);
|
|
4029
|
+
}
|
|
4030
|
+
onEvent === null || onEvent === undefined || onEvent({ id, event: eventType, data: value });
|
|
4031
|
+
id = undefined;
|
|
4032
|
+
data = "";
|
|
4033
|
+
eventType = undefined;
|
|
4034
|
+
searchIndex = lfIndex + 2;
|
|
4035
|
+
lfIndex = chunk.indexOf(`
|
|
4036
|
+
`, searchIndex);
|
|
4037
|
+
continue;
|
|
4038
|
+
}
|
|
4039
|
+
data = dataLines === 0 ? value : `${data}
|
|
4040
|
+
${value}`;
|
|
4041
|
+
dataLines++;
|
|
4042
|
+
} else if (isEventPrefix(chunk, searchIndex, firstCharCode)) {
|
|
4043
|
+
eventType = chunk.slice(chunk.charCodeAt(searchIndex + 6) === SPACE ? searchIndex + 7 : searchIndex + 6, lfIndex) || undefined;
|
|
4044
|
+
} else {
|
|
4045
|
+
parseLine(chunk, searchIndex, lfIndex);
|
|
4046
|
+
}
|
|
4047
|
+
searchIndex = lfIndex + 1;
|
|
4048
|
+
lfIndex = chunk.indexOf(`
|
|
4049
|
+
`, searchIndex);
|
|
4050
|
+
}
|
|
4051
|
+
return chunk.slice(searchIndex);
|
|
4052
|
+
}
|
|
4053
|
+
while (searchIndex < chunk.length) {
|
|
4054
|
+
const crIndex = chunk.indexOf("\r", searchIndex);
|
|
4055
|
+
const lfIndex = chunk.indexOf(`
|
|
4056
|
+
`, searchIndex);
|
|
4057
|
+
let lineEnd = -1;
|
|
4058
|
+
if (crIndex !== -1 && lfIndex !== -1) {
|
|
4059
|
+
lineEnd = crIndex < lfIndex ? crIndex : lfIndex;
|
|
4060
|
+
} else if (crIndex !== -1) {
|
|
4061
|
+
if (crIndex === chunk.length - 1) {
|
|
4062
|
+
lineEnd = -1;
|
|
4063
|
+
} else {
|
|
4064
|
+
lineEnd = crIndex;
|
|
4065
|
+
}
|
|
4066
|
+
} else if (lfIndex !== -1) {
|
|
4067
|
+
lineEnd = lfIndex;
|
|
4068
|
+
}
|
|
4069
|
+
if (lineEnd === -1) {
|
|
4070
|
+
break;
|
|
4071
|
+
}
|
|
4072
|
+
parseLine(chunk, searchIndex, lineEnd);
|
|
4073
|
+
searchIndex = lineEnd + 1;
|
|
4074
|
+
if (chunk.charCodeAt(searchIndex - 1) === CR && chunk.charCodeAt(searchIndex) === LF) {
|
|
4075
|
+
searchIndex++;
|
|
4076
|
+
}
|
|
4077
|
+
}
|
|
4078
|
+
return chunk.slice(searchIndex);
|
|
4079
|
+
}
|
|
4080
|
+
function parseLine(chunk, start, end) {
|
|
4081
|
+
if (start === end) {
|
|
4082
|
+
dispatchEvent();
|
|
4083
|
+
return;
|
|
4084
|
+
}
|
|
4085
|
+
const firstCharCode = chunk.charCodeAt(start);
|
|
4086
|
+
if (isDataPrefix(chunk, start, firstCharCode)) {
|
|
4087
|
+
const valueStart = chunk.charCodeAt(start + 5) === SPACE ? start + 6 : start + 5;
|
|
4088
|
+
const value = chunk.slice(valueStart, end);
|
|
4089
|
+
data = dataLines === 0 ? value : `${data}
|
|
4090
|
+
${value}`;
|
|
4091
|
+
dataLines++;
|
|
4092
|
+
return;
|
|
4093
|
+
}
|
|
4094
|
+
if (isEventPrefix(chunk, start, firstCharCode)) {
|
|
4095
|
+
eventType = chunk.slice(chunk.charCodeAt(start + 6) === SPACE ? start + 7 : start + 6, end) || undefined;
|
|
4096
|
+
return;
|
|
4097
|
+
}
|
|
4098
|
+
if (firstCharCode === 105 && chunk.charCodeAt(start + 1) === 100 && chunk.charCodeAt(start + 2) === 58) {
|
|
4099
|
+
const value = chunk.slice(chunk.charCodeAt(start + 3) === SPACE ? start + 4 : start + 3, end);
|
|
4100
|
+
if (!value.includes("\x00"))
|
|
4101
|
+
id = value;
|
|
4102
|
+
return;
|
|
4103
|
+
}
|
|
4104
|
+
if (firstCharCode === 58) {
|
|
4105
|
+
if (onComment) {
|
|
4106
|
+
const line = chunk.slice(start, end);
|
|
4107
|
+
onComment(line.slice(chunk.charCodeAt(start + 1) === SPACE ? 2 : 1));
|
|
4108
|
+
}
|
|
4109
|
+
return;
|
|
4110
|
+
}
|
|
4111
|
+
const line = chunk.slice(start, end);
|
|
4112
|
+
const fieldSeparatorIndex = line.indexOf(":");
|
|
4113
|
+
if (fieldSeparatorIndex === -1) {
|
|
4114
|
+
processField(line, "", line);
|
|
4115
|
+
return;
|
|
4116
|
+
}
|
|
4117
|
+
const field = line.slice(0, fieldSeparatorIndex);
|
|
4118
|
+
const offset = line.charCodeAt(fieldSeparatorIndex + 1) === SPACE ? 2 : 1;
|
|
4119
|
+
const value = line.slice(fieldSeparatorIndex + offset);
|
|
4120
|
+
processField(field, value, line);
|
|
4121
|
+
}
|
|
4122
|
+
function processField(field, value, line) {
|
|
4123
|
+
switch (field) {
|
|
4124
|
+
case "event":
|
|
4125
|
+
eventType = value || undefined;
|
|
4126
|
+
break;
|
|
4127
|
+
case "data":
|
|
4128
|
+
data = dataLines === 0 ? value : `${data}
|
|
4129
|
+
${value}`;
|
|
4130
|
+
dataLines++;
|
|
4131
|
+
break;
|
|
4132
|
+
case "id":
|
|
4133
|
+
if (!value.includes("\x00"))
|
|
4134
|
+
id = value;
|
|
4135
|
+
break;
|
|
4136
|
+
case "retry":
|
|
4137
|
+
if (/^\d+$/.test(value)) {
|
|
4138
|
+
onRetry === null || onRetry === undefined || onRetry(parseInt(value, 10));
|
|
4139
|
+
} else {
|
|
4140
|
+
onError === null || onError === undefined || onError(new ParseError(`Invalid \`retry\` value: "${value}"`, {
|
|
4141
|
+
type: "invalid-retry",
|
|
4142
|
+
value,
|
|
4143
|
+
line
|
|
4144
|
+
}));
|
|
4145
|
+
}
|
|
4146
|
+
break;
|
|
4147
|
+
default:
|
|
4148
|
+
onError === null || onError === undefined || onError(new ParseError(`Unknown field "${field.length > 20 ? `${field.slice(0, 20)}…` : field}"`, { type: "unknown-field", field, value, line }));
|
|
4149
|
+
break;
|
|
4150
|
+
}
|
|
4151
|
+
}
|
|
4152
|
+
function dispatchEvent() {
|
|
4153
|
+
if (id !== undefined) {
|
|
4154
|
+
onId === null || onId === undefined || onId(id);
|
|
4155
|
+
}
|
|
4156
|
+
if (dataLines > 0) {
|
|
4157
|
+
onEvent === null || onEvent === undefined || onEvent({
|
|
4158
|
+
id,
|
|
4159
|
+
event: eventType,
|
|
4160
|
+
data
|
|
4161
|
+
});
|
|
4162
|
+
}
|
|
4163
|
+
id = undefined;
|
|
4164
|
+
data = "";
|
|
4165
|
+
dataLines = 0;
|
|
4166
|
+
eventType = undefined;
|
|
4167
|
+
}
|
|
4168
|
+
function reset(options = {}) {
|
|
4169
|
+
if (options.consume && pendingFragments.length > 0) {
|
|
4170
|
+
const incompleteLine = pendingFragments.join("");
|
|
4171
|
+
parseLine(incompleteLine, 0, incompleteLine.length);
|
|
4172
|
+
}
|
|
4173
|
+
isFirstChunk = true;
|
|
4174
|
+
id = undefined;
|
|
4175
|
+
data = "";
|
|
4176
|
+
dataLines = 0;
|
|
4177
|
+
eventType = undefined;
|
|
4178
|
+
pendingFragments.length = 0;
|
|
4179
|
+
pendingFragmentsLength = 0;
|
|
4180
|
+
terminated = false;
|
|
4181
|
+
skippingLine = false;
|
|
4182
|
+
skipNextLineFeed = false;
|
|
4183
|
+
}
|
|
4184
|
+
return { feed, reset };
|
|
4185
|
+
}
|
|
4186
|
+
function isDataPrefix(chunk, i, firstCharCode) {
|
|
4187
|
+
return firstCharCode === 100 && chunk.charCodeAt(i + 1) === 97 && chunk.charCodeAt(i + 2) === 116 && chunk.charCodeAt(i + 3) === 97 && chunk.charCodeAt(i + 4) === 58;
|
|
4188
|
+
}
|
|
4189
|
+
function isEventPrefix(chunk, i, firstCharCode) {
|
|
4190
|
+
return firstCharCode === 101 && chunk.charCodeAt(i + 1) === 118 && chunk.charCodeAt(i + 2) === 101 && chunk.charCodeAt(i + 3) === 110 && chunk.charCodeAt(i + 4) === 116 && chunk.charCodeAt(i + 5) === 58;
|
|
4191
|
+
}
|
|
4192
|
+
function isPotentialField(line, field) {
|
|
4193
|
+
let i = 1;
|
|
4194
|
+
while (i < line.length && i < field.length) {
|
|
4195
|
+
if (line.charCodeAt(i) !== field.charCodeAt(i)) {
|
|
4196
|
+
return false;
|
|
4197
|
+
}
|
|
4198
|
+
i++;
|
|
4199
|
+
}
|
|
4200
|
+
return line.length <= field.length || line.charCodeAt(field.length) === 58;
|
|
4201
|
+
}
|
|
4202
|
+
// ../../node_modules/.bun/eventsource@5.1.1/node_modules/eventsource/dist/errors.js
|
|
4203
|
+
class ErrorEvent extends Event {
|
|
4204
|
+
code;
|
|
4205
|
+
message;
|
|
4206
|
+
constructor(type, errorEventInitDict) {
|
|
4207
|
+
super(type);
|
|
4208
|
+
this.code = errorEventInitDict?.code ?? undefined;
|
|
4209
|
+
this.message = errorEventInitDict?.message ?? undefined;
|
|
4210
|
+
}
|
|
4211
|
+
[Symbol.for("nodejs.util.inspect.custom")](_depth, options, inspect) {
|
|
4212
|
+
return inspect(inspectableError(this), options);
|
|
2995
4213
|
}
|
|
2996
|
-
|
|
2997
|
-
|
|
2998
|
-
var require_awaitAsyncGenerator = __commonJS2({ "../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/awaitAsyncGenerator.js"(exports, module) {
|
|
2999
|
-
var OverloadYield$1 = require_OverloadYield();
|
|
3000
|
-
function _awaitAsyncGenerator$1(e) {
|
|
3001
|
-
return new OverloadYield$1(e, 0);
|
|
4214
|
+
[Symbol.for("Deno.customInspect")](inspect, options) {
|
|
4215
|
+
return inspect(inspectableError(this), options);
|
|
3002
4216
|
}
|
|
3003
|
-
|
|
3004
|
-
|
|
3005
|
-
|
|
3006
|
-
|
|
3007
|
-
|
|
3008
|
-
return function() {
|
|
3009
|
-
return new AsyncGenerator(e.apply(this, arguments));
|
|
3010
|
-
};
|
|
4217
|
+
}
|
|
4218
|
+
function syntaxError(message) {
|
|
4219
|
+
const DomException = globalThis.DOMException;
|
|
4220
|
+
if (typeof DomException === "function") {
|
|
4221
|
+
return new DomException(message, "SyntaxError");
|
|
3011
4222
|
}
|
|
3012
|
-
|
|
3013
|
-
|
|
3014
|
-
|
|
3015
|
-
|
|
3016
|
-
|
|
3017
|
-
|
|
3018
|
-
|
|
3019
|
-
|
|
3020
|
-
|
|
3021
|
-
|
|
3022
|
-
|
|
3023
|
-
|
|
3024
|
-
|
|
3025
|
-
|
|
3026
|
-
|
|
3027
|
-
|
|
3028
|
-
|
|
3029
|
-
|
|
4223
|
+
return new SyntaxError(message);
|
|
4224
|
+
}
|
|
4225
|
+
function flattenError(err) {
|
|
4226
|
+
if (!(err instanceof Error)) {
|
|
4227
|
+
return `${err}`;
|
|
4228
|
+
}
|
|
4229
|
+
if ("errors" in err && Array.isArray(err.errors)) {
|
|
4230
|
+
return err.errors.map(flattenError).join(", ");
|
|
4231
|
+
}
|
|
4232
|
+
if ("cause" in err && err.cause instanceof Error) {
|
|
4233
|
+
return `${err}: ${flattenError(err.cause)}`;
|
|
4234
|
+
}
|
|
4235
|
+
return err.message;
|
|
4236
|
+
}
|
|
4237
|
+
function inspectableError(err) {
|
|
4238
|
+
return {
|
|
4239
|
+
type: err.type,
|
|
4240
|
+
message: err.message,
|
|
4241
|
+
code: err.code,
|
|
4242
|
+
defaultPrevented: err.defaultPrevented,
|
|
4243
|
+
cancelable: err.cancelable,
|
|
4244
|
+
timeStamp: err.timeStamp
|
|
4245
|
+
};
|
|
4246
|
+
}
|
|
4247
|
+
|
|
4248
|
+
// ../../node_modules/.bun/eventsource@5.1.1/node_modules/eventsource/dist/EventSource.js
|
|
4249
|
+
var DEFAULT_MAX_BUFFER_SIZE = 100 * 1024 * 1024;
|
|
4250
|
+
|
|
4251
|
+
class EventSourceImpl extends EventTarget {
|
|
4252
|
+
static CONNECTING = 0;
|
|
4253
|
+
static OPEN = 1;
|
|
4254
|
+
static CLOSED = 2;
|
|
4255
|
+
CONNECTING = 0;
|
|
4256
|
+
OPEN = 1;
|
|
4257
|
+
CLOSED = 2;
|
|
4258
|
+
get readyState() {
|
|
4259
|
+
return this.#readyState;
|
|
4260
|
+
}
|
|
4261
|
+
get url() {
|
|
4262
|
+
return this.#url.href;
|
|
4263
|
+
}
|
|
4264
|
+
get withCredentials() {
|
|
4265
|
+
return this.#withCredentials;
|
|
4266
|
+
}
|
|
4267
|
+
get onerror() {
|
|
4268
|
+
return this.#onError;
|
|
4269
|
+
}
|
|
4270
|
+
set onerror(value) {
|
|
4271
|
+
if (this.#onError) {
|
|
4272
|
+
this.removeEventListener("error", this.#onError);
|
|
4273
|
+
}
|
|
4274
|
+
this.#onError = value;
|
|
4275
|
+
if (value) {
|
|
4276
|
+
this.addEventListener("error", value);
|
|
4277
|
+
}
|
|
4278
|
+
}
|
|
4279
|
+
get onmessage() {
|
|
4280
|
+
return this.#onMessage;
|
|
4281
|
+
}
|
|
4282
|
+
set onmessage(value) {
|
|
4283
|
+
if (this.#onMessage) {
|
|
4284
|
+
this.removeEventListener("message", this.#onMessage);
|
|
4285
|
+
}
|
|
4286
|
+
this.#onMessage = value;
|
|
4287
|
+
if (value) {
|
|
4288
|
+
this.addEventListener("message", value);
|
|
4289
|
+
}
|
|
4290
|
+
}
|
|
4291
|
+
get onopen() {
|
|
4292
|
+
return this.#onOpen;
|
|
4293
|
+
}
|
|
4294
|
+
set onopen(value) {
|
|
4295
|
+
if (this.#onOpen) {
|
|
4296
|
+
this.removeEventListener("open", this.#onOpen);
|
|
4297
|
+
}
|
|
4298
|
+
this.#onOpen = value;
|
|
4299
|
+
if (value) {
|
|
4300
|
+
this.addEventListener("open", value);
|
|
4301
|
+
}
|
|
4302
|
+
}
|
|
4303
|
+
addEventListener(type, listener, options) {
|
|
4304
|
+
const listen = listener;
|
|
4305
|
+
super.addEventListener(type, listen, options);
|
|
4306
|
+
}
|
|
4307
|
+
removeEventListener(type, listener, options) {
|
|
4308
|
+
const listen = listener;
|
|
4309
|
+
super.removeEventListener(type, listen, options);
|
|
4310
|
+
}
|
|
4311
|
+
constructor(url, eventSourceInitDict) {
|
|
4312
|
+
super();
|
|
4313
|
+
try {
|
|
4314
|
+
if (url instanceof URL) {
|
|
4315
|
+
this.#url = url;
|
|
4316
|
+
} else if (typeof url === "string") {
|
|
4317
|
+
this.#url = new URL(url, getBaseURL());
|
|
4318
|
+
} else {
|
|
4319
|
+
throw new Error("Invalid URL");
|
|
3030
4320
|
}
|
|
4321
|
+
} catch {
|
|
4322
|
+
throw syntaxError("An invalid or illegal string was specified");
|
|
4323
|
+
}
|
|
4324
|
+
this.#parser = createParser({
|
|
4325
|
+
maxBufferSize: eventSourceInitDict?.maxBufferSize ?? DEFAULT_MAX_BUFFER_SIZE,
|
|
4326
|
+
onEvent: this.#onEvent,
|
|
4327
|
+
onError: this.#onParseError,
|
|
4328
|
+
onId: this.#onIdChange,
|
|
4329
|
+
onRetry: this.#onRetryChange
|
|
4330
|
+
});
|
|
4331
|
+
this.#readyState = this.CONNECTING;
|
|
4332
|
+
this.#reconnectInterval = 3000;
|
|
4333
|
+
this.#fetch = eventSourceInitDict?.fetch ?? globalThis.fetch;
|
|
4334
|
+
this.#withCredentials = eventSourceInitDict?.withCredentials ?? false;
|
|
4335
|
+
this.#connect();
|
|
4336
|
+
}
|
|
4337
|
+
close() {
|
|
4338
|
+
if (this.#reconnectTimer)
|
|
4339
|
+
clearTimeout(this.#reconnectTimer);
|
|
4340
|
+
if (this.#readyState === this.CLOSED)
|
|
4341
|
+
return;
|
|
4342
|
+
if (this.#controller)
|
|
4343
|
+
this.#controller.abort();
|
|
4344
|
+
this.#readyState = this.CLOSED;
|
|
4345
|
+
this.#controller = undefined;
|
|
4346
|
+
}
|
|
4347
|
+
#readyState;
|
|
4348
|
+
#url;
|
|
4349
|
+
#redirectUrl;
|
|
4350
|
+
#withCredentials;
|
|
4351
|
+
#fetch;
|
|
4352
|
+
#reconnectInterval;
|
|
4353
|
+
#reconnectTimer;
|
|
4354
|
+
#lastEventId = null;
|
|
4355
|
+
#controller;
|
|
4356
|
+
#parser;
|
|
4357
|
+
#onError = null;
|
|
4358
|
+
#onMessage = null;
|
|
4359
|
+
#onOpen = null;
|
|
4360
|
+
#connect() {
|
|
4361
|
+
this.#readyState = this.CONNECTING;
|
|
4362
|
+
this.#controller = new AbortController;
|
|
4363
|
+
const fetch2 = this.#fetch;
|
|
4364
|
+
fetch2(this.#url, this.#getRequestOptions()).then(this.#onFetchResponse).catch(this.#onFetchError);
|
|
4365
|
+
}
|
|
4366
|
+
#onFetchResponse = async (response) => {
|
|
4367
|
+
this.#parser.reset();
|
|
4368
|
+
const { body, redirected, status, headers } = response;
|
|
4369
|
+
if (status === 204) {
|
|
4370
|
+
this.#failConnection("Server sent HTTP 204, not reconnecting", 204);
|
|
4371
|
+
this.close();
|
|
4372
|
+
return;
|
|
3031
4373
|
}
|
|
3032
|
-
|
|
3033
|
-
|
|
3034
|
-
|
|
3035
|
-
|
|
3036
|
-
|
|
3037
|
-
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
|
|
3043
|
-
|
|
3044
|
-
|
|
3045
|
-
|
|
3046
|
-
|
|
3047
|
-
|
|
4374
|
+
if (redirected) {
|
|
4375
|
+
this.#redirectUrl = new URL(response.url);
|
|
4376
|
+
} else {
|
|
4377
|
+
this.#redirectUrl = undefined;
|
|
4378
|
+
}
|
|
4379
|
+
if (status !== 200) {
|
|
4380
|
+
this.#failConnection(`Non-200 status code (${status})`, status);
|
|
4381
|
+
return;
|
|
4382
|
+
}
|
|
4383
|
+
const contentType = headers.get("content-type") || "";
|
|
4384
|
+
if (!contentType.startsWith("text/event-stream")) {
|
|
4385
|
+
this.#failConnection('Invalid content type, expected "text/event-stream"', status);
|
|
4386
|
+
return;
|
|
4387
|
+
}
|
|
4388
|
+
if (this.#readyState === this.CLOSED) {
|
|
4389
|
+
return;
|
|
4390
|
+
}
|
|
4391
|
+
this.#readyState = this.OPEN;
|
|
4392
|
+
const openEvent = new Event("open");
|
|
4393
|
+
this.dispatchEvent(openEvent);
|
|
4394
|
+
if (typeof body !== "object" || !body || !("getReader" in body)) {
|
|
4395
|
+
this.#failConnection("Invalid response body, expected a web ReadableStream", status);
|
|
4396
|
+
this.close();
|
|
4397
|
+
return;
|
|
4398
|
+
}
|
|
4399
|
+
const decoder = new TextDecoder;
|
|
4400
|
+
const reader = body.getReader();
|
|
4401
|
+
let open = true;
|
|
4402
|
+
do {
|
|
4403
|
+
const { done, value } = await reader.read();
|
|
4404
|
+
if (this.#readyState === this.CLOSED) {
|
|
4405
|
+
open = false;
|
|
4406
|
+
break;
|
|
3048
4407
|
}
|
|
3049
|
-
|
|
4408
|
+
if (value) {
|
|
4409
|
+
this.#parser.feed(decoder.decode(value, { stream: !done }));
|
|
4410
|
+
}
|
|
4411
|
+
if (!done) {
|
|
4412
|
+
continue;
|
|
4413
|
+
}
|
|
4414
|
+
open = false;
|
|
4415
|
+
this.#parser.reset();
|
|
4416
|
+
this.#scheduleReconnect();
|
|
4417
|
+
} while (open);
|
|
4418
|
+
};
|
|
4419
|
+
#onFetchError = (err) => {
|
|
4420
|
+
this.#controller = undefined;
|
|
4421
|
+
if (err.name === "AbortError" || err.type === "aborted") {
|
|
4422
|
+
return;
|
|
3050
4423
|
}
|
|
3051
|
-
this
|
|
3052
|
-
|
|
3053
|
-
|
|
3054
|
-
|
|
3055
|
-
|
|
3056
|
-
|
|
3057
|
-
|
|
3058
|
-
|
|
3059
|
-
|
|
3060
|
-
|
|
3061
|
-
|
|
3062
|
-
|
|
4424
|
+
this.#scheduleReconnect(flattenError(err));
|
|
4425
|
+
};
|
|
4426
|
+
#getRequestOptions() {
|
|
4427
|
+
const lastEvent = this.#lastEventId ? { "Last-Event-ID": this.#lastEventId } : undefined;
|
|
4428
|
+
const init = {
|
|
4429
|
+
mode: "cors",
|
|
4430
|
+
redirect: "follow",
|
|
4431
|
+
headers: { Accept: "text/event-stream", ...lastEvent },
|
|
4432
|
+
cache: "no-store",
|
|
4433
|
+
signal: this.#controller?.signal
|
|
4434
|
+
};
|
|
4435
|
+
if ("window" in globalThis) {
|
|
4436
|
+
init.credentials = this.withCredentials ? "include" : "same-origin";
|
|
4437
|
+
}
|
|
4438
|
+
return init;
|
|
3063
4439
|
}
|
|
3064
|
-
|
|
3065
|
-
|
|
3066
|
-
}, AsyncGenerator.prototype.next = function(e) {
|
|
3067
|
-
return this._invoke("next", e);
|
|
3068
|
-
}, AsyncGenerator.prototype["throw"] = function(e) {
|
|
3069
|
-
return this._invoke("throw", e);
|
|
3070
|
-
}, AsyncGenerator.prototype["return"] = function(e) {
|
|
3071
|
-
return this._invoke("return", e);
|
|
4440
|
+
#onIdChange = (value) => {
|
|
4441
|
+
this.#lastEventId = value;
|
|
3072
4442
|
};
|
|
3073
|
-
|
|
3074
|
-
|
|
3075
|
-
|
|
3076
|
-
|
|
3077
|
-
|
|
3078
|
-
|
|
3079
|
-
|
|
4443
|
+
#onEvent = (event) => {
|
|
4444
|
+
const origin = this.#redirectUrl ? this.#redirectUrl.origin : this.#url.origin;
|
|
4445
|
+
const lastEventId = this.#lastEventId ?? "";
|
|
4446
|
+
const messageEvent = new MessageEvent(event.event || "message", {
|
|
4447
|
+
data: event.data,
|
|
4448
|
+
origin,
|
|
4449
|
+
lastEventId
|
|
4450
|
+
});
|
|
4451
|
+
if (messageEvent.origin !== origin) {
|
|
4452
|
+
defineEventProperty(messageEvent, "origin", origin);
|
|
4453
|
+
}
|
|
4454
|
+
if (messageEvent.lastEventId !== lastEventId) {
|
|
4455
|
+
defineEventProperty(messageEvent, "lastEventId", lastEventId);
|
|
4456
|
+
}
|
|
4457
|
+
this.dispatchEvent(messageEvent);
|
|
4458
|
+
};
|
|
4459
|
+
#onRetryChange = (value) => {
|
|
4460
|
+
this.#reconnectInterval = value;
|
|
4461
|
+
};
|
|
4462
|
+
#onParseError = (error) => {
|
|
4463
|
+
if (error.type !== "max-buffer-size-exceeded") {
|
|
4464
|
+
return;
|
|
4465
|
+
}
|
|
4466
|
+
this.close();
|
|
4467
|
+
this.#failConnection(error.message);
|
|
4468
|
+
};
|
|
4469
|
+
#failConnection(message, code) {
|
|
4470
|
+
if (this.#readyState !== this.CLOSED) {
|
|
4471
|
+
this.#readyState = this.CLOSED;
|
|
4472
|
+
}
|
|
4473
|
+
const errorEvent = new ErrorEvent("error", { code, message });
|
|
4474
|
+
this.dispatchEvent(errorEvent);
|
|
4475
|
+
}
|
|
4476
|
+
#scheduleReconnect(message, code) {
|
|
4477
|
+
if (this.#readyState === this.CLOSED) {
|
|
4478
|
+
return;
|
|
4479
|
+
}
|
|
4480
|
+
this.#readyState = this.CONNECTING;
|
|
4481
|
+
const errorEvent = new ErrorEvent("error", { code, message });
|
|
4482
|
+
this.dispatchEvent(errorEvent);
|
|
4483
|
+
const timer = setTimeout(this.#reconnect, this.#reconnectInterval);
|
|
4484
|
+
if (typeof timer === "object" && timer !== null && "unref" in timer) {
|
|
4485
|
+
timer.unref();
|
|
4486
|
+
}
|
|
4487
|
+
this.#reconnectTimer = timer;
|
|
4488
|
+
}
|
|
4489
|
+
#reconnect = () => {
|
|
4490
|
+
this.#reconnectTimer = undefined;
|
|
4491
|
+
if (this.#readyState !== this.CONNECTING) {
|
|
4492
|
+
return;
|
|
4493
|
+
}
|
|
4494
|
+
this.#connect();
|
|
4495
|
+
};
|
|
4496
|
+
}
|
|
4497
|
+
Object.defineProperty(EventSourceImpl, "name", { value: "EventSource" });
|
|
4498
|
+
Object.defineProperty(EventSourceImpl, Symbol.for("eventsource.supports-fetch-override"), {
|
|
4499
|
+
value: true,
|
|
4500
|
+
writable: false,
|
|
4501
|
+
configurable: false,
|
|
4502
|
+
enumerable: false
|
|
4503
|
+
});
|
|
4504
|
+
var EventSource = EventSourceImpl;
|
|
4505
|
+
function getBaseURL() {
|
|
4506
|
+
const doc = "document" in globalThis ? globalThis.document : undefined;
|
|
4507
|
+
return doc && typeof doc === "object" && "baseURI" in doc && typeof doc.baseURI === "string" ? doc.baseURI : undefined;
|
|
4508
|
+
}
|
|
4509
|
+
function defineEventProperty(event, property, value) {
|
|
4510
|
+
Object.defineProperty(event, property, {
|
|
4511
|
+
value,
|
|
4512
|
+
enumerable: true,
|
|
4513
|
+
configurable: true
|
|
4514
|
+
});
|
|
4515
|
+
}
|
|
3080
4516
|
// ../sdk/dist/index.js
|
|
3081
4517
|
import { mkdir, readFile, unlink, writeFile } from "node:fs/promises";
|
|
3082
4518
|
import { readFileSync } from "node:fs";
|
|
@@ -3117,6 +4553,13 @@ async function deleteConfig(configPath) {
|
|
|
3117
4553
|
await unlink(getConfigPath(configPath));
|
|
3118
4554
|
} catch {}
|
|
3119
4555
|
}
|
|
4556
|
+
var WORKSPACE_LIFECYCLE_ERROR_CODES = [
|
|
4557
|
+
"WORKSPACE_NOT_RUNNING",
|
|
4558
|
+
"WORKSPACE_TERMINATED",
|
|
4559
|
+
"WORKSPACE_NON_RECOVERABLE",
|
|
4560
|
+
"WORKSPACE_START_TIMEOUT",
|
|
4561
|
+
"WORKSPACE_RESTART_FAILED"
|
|
4562
|
+
];
|
|
3120
4563
|
|
|
3121
4564
|
class GittermError extends Error {
|
|
3122
4565
|
code;
|
|
@@ -3135,6 +4578,15 @@ class WorkspaceLifecycleError extends GittermError {
|
|
|
3135
4578
|
this.name = "WorkspaceLifecycleError";
|
|
3136
4579
|
}
|
|
3137
4580
|
}
|
|
4581
|
+
|
|
4582
|
+
class AgentRunError extends GittermError {
|
|
4583
|
+
run;
|
|
4584
|
+
constructor(run, code) {
|
|
4585
|
+
super(code, run.error ?? (code === "INPUT_REQUIRED" ? "The agent needs input; supply a handler or use runs.respond()" : `Agent run ${run.status}`));
|
|
4586
|
+
this.run = run;
|
|
4587
|
+
this.name = "AgentRunError";
|
|
4588
|
+
}
|
|
4589
|
+
}
|
|
3138
4590
|
var LOOPBACK_HOSTS = new Set(["localhost", "127.0.0.1", "[::1]", "::1"]);
|
|
3139
4591
|
function normalizeServerUrl(value) {
|
|
3140
4592
|
let url;
|
|
@@ -3163,6 +4615,139 @@ function createNoRedirectFetch(fetchImpl = fetch) {
|
|
|
3163
4615
|
return response;
|
|
3164
4616
|
};
|
|
3165
4617
|
}
|
|
4618
|
+
function terminal(status) {
|
|
4619
|
+
return status === "completed" || status === "failed" || status === "cancelled";
|
|
4620
|
+
}
|
|
4621
|
+
function aborted(signal) {
|
|
4622
|
+
if (signal?.aborted)
|
|
4623
|
+
throw new GittermError("ABORTED", "Run observation was aborted; the agent was not cancelled");
|
|
4624
|
+
}
|
|
4625
|
+
async function abortable(operation, signal) {
|
|
4626
|
+
if (signal.aborted)
|
|
4627
|
+
operation.catch(() => {});
|
|
4628
|
+
aborted(signal);
|
|
4629
|
+
let onAbort;
|
|
4630
|
+
try {
|
|
4631
|
+
return await Promise.race([
|
|
4632
|
+
operation,
|
|
4633
|
+
new Promise((_, reject) => {
|
|
4634
|
+
onAbort = () => reject(new GittermError("ABORTED", "Run observation was aborted; the agent was not cancelled"));
|
|
4635
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
4636
|
+
})
|
|
4637
|
+
]);
|
|
4638
|
+
} finally {
|
|
4639
|
+
if (onAbort)
|
|
4640
|
+
signal.removeEventListener("abort", onAbort);
|
|
4641
|
+
}
|
|
4642
|
+
}
|
|
4643
|
+
async function deadline(options, operation) {
|
|
4644
|
+
aborted(options?.signal);
|
|
4645
|
+
const timeoutMs = options?.timeoutMs ?? 30 * 60000;
|
|
4646
|
+
if (!Number.isFinite(timeoutMs) || timeoutMs < 0)
|
|
4647
|
+
throw new GittermError("BAD_REQUEST", "timeoutMs must be finite and non-negative");
|
|
4648
|
+
const controller = new AbortController;
|
|
4649
|
+
const onAbort = () => controller.abort();
|
|
4650
|
+
options?.signal?.addEventListener("abort", onAbort, { once: true });
|
|
4651
|
+
let timedOut = false;
|
|
4652
|
+
const timer = setTimeout(() => {
|
|
4653
|
+
timedOut = true;
|
|
4654
|
+
controller.abort();
|
|
4655
|
+
}, timeoutMs);
|
|
4656
|
+
try {
|
|
4657
|
+
return await operation(controller.signal);
|
|
4658
|
+
} catch (error) {
|
|
4659
|
+
if (timedOut)
|
|
4660
|
+
throw new GittermError("TIMEOUT", "Run observation timed out; the agent was not cancelled", {
|
|
4661
|
+
cause: error
|
|
4662
|
+
});
|
|
4663
|
+
aborted(options?.signal);
|
|
4664
|
+
throw error;
|
|
4665
|
+
} finally {
|
|
4666
|
+
clearTimeout(timer);
|
|
4667
|
+
options?.signal?.removeEventListener("abort", onAbort);
|
|
4668
|
+
controller.abort();
|
|
4669
|
+
}
|
|
4670
|
+
}
|
|
4671
|
+
async function* runEvents(states) {
|
|
4672
|
+
const seen = new Set;
|
|
4673
|
+
let pending = new Set;
|
|
4674
|
+
let status;
|
|
4675
|
+
for await (const run of states) {
|
|
4676
|
+
if (run.status !== status) {
|
|
4677
|
+
status = run.status;
|
|
4678
|
+
yield { type: "run.status", run };
|
|
4679
|
+
}
|
|
4680
|
+
const current = new Set(run.pendingInputs.map((request) => request.id));
|
|
4681
|
+
for (const requestId of pending) {
|
|
4682
|
+
if (!current.has(requestId))
|
|
4683
|
+
yield { type: "input.resolved", run, requestId };
|
|
4684
|
+
}
|
|
4685
|
+
pending = current;
|
|
4686
|
+
for (const request of run.pendingInputs) {
|
|
4687
|
+
if (seen.has(request.id))
|
|
4688
|
+
continue;
|
|
4689
|
+
seen.add(request.id);
|
|
4690
|
+
yield { type: "input.required", run, request };
|
|
4691
|
+
}
|
|
4692
|
+
if (run.status === "completed" || run.status === "failed" || run.status === "cancelled") {
|
|
4693
|
+
yield { type: `run.${run.status}`, run };
|
|
4694
|
+
return;
|
|
4695
|
+
}
|
|
4696
|
+
}
|
|
4697
|
+
}
|
|
4698
|
+
function runHelpers(operations) {
|
|
4699
|
+
return {
|
|
4700
|
+
events: (ref, options) => runEvents(operations.watch(ref, options)),
|
|
4701
|
+
wait: (ref, options) => deadline(options, async (signal) => {
|
|
4702
|
+
for await (const run of operations.watch(ref, { signal })) {
|
|
4703
|
+
if (terminal(run.status) || run.status === "awaiting_input" && options?.until !== "terminal")
|
|
4704
|
+
return run;
|
|
4705
|
+
}
|
|
4706
|
+
throw new GittermError("NETWORK", "Run stream ended before a terminal state");
|
|
4707
|
+
}),
|
|
4708
|
+
result: (ref, options) => deadline(options, async (signal) => {
|
|
4709
|
+
for await (const event of runEvents(operations.watch(ref, { signal }))) {
|
|
4710
|
+
aborted(signal);
|
|
4711
|
+
if (event.type === "run.completed")
|
|
4712
|
+
return event.run;
|
|
4713
|
+
if (event.type === "run.failed")
|
|
4714
|
+
throw new AgentRunError(event.run, "RUN_FAILED");
|
|
4715
|
+
if (event.type === "run.cancelled")
|
|
4716
|
+
throw new AgentRunError(event.run, "RUN_CANCELLED");
|
|
4717
|
+
if (event.type !== "input.required")
|
|
4718
|
+
continue;
|
|
4719
|
+
const { request } = event;
|
|
4720
|
+
let reply;
|
|
4721
|
+
if (request.kind === "permission") {
|
|
4722
|
+
if (!options?.onPermission)
|
|
4723
|
+
throw new AgentRunError(event.run, "INPUT_REQUIRED");
|
|
4724
|
+
reply = {
|
|
4725
|
+
type: "permission",
|
|
4726
|
+
response: await abortable(Promise.resolve(options.onPermission(request, { signal })), signal)
|
|
4727
|
+
};
|
|
4728
|
+
} else {
|
|
4729
|
+
if (!options?.onQuestion)
|
|
4730
|
+
throw new AgentRunError(event.run, "INPUT_REQUIRED");
|
|
4731
|
+
reply = {
|
|
4732
|
+
type: "question",
|
|
4733
|
+
...await abortable(Promise.resolve(options.onQuestion(request, { signal })), signal)
|
|
4734
|
+
};
|
|
4735
|
+
}
|
|
4736
|
+
aborted(signal);
|
|
4737
|
+
try {
|
|
4738
|
+
await abortable(operations.respond(ref, { requestId: request.id, reply }), signal);
|
|
4739
|
+
} catch (error) {
|
|
4740
|
+
if (!(error instanceof GittermError) || error.code !== "INPUT_NOT_PENDING")
|
|
4741
|
+
throw error;
|
|
4742
|
+
}
|
|
4743
|
+
}
|
|
4744
|
+
throw new GittermError("NETWORK", "Run stream ended before a terminal state");
|
|
4745
|
+
})
|
|
4746
|
+
};
|
|
4747
|
+
}
|
|
4748
|
+
function toConnection(connection) {
|
|
4749
|
+
return { ...connection, connectedAt: toIso(connection.connectedAt) };
|
|
4750
|
+
}
|
|
3166
4751
|
function envValue(name) {
|
|
3167
4752
|
const value = typeof process !== "undefined" ? process.env[name] : undefined;
|
|
3168
4753
|
return value && value.trim() ? value : undefined;
|
|
@@ -3192,6 +4777,29 @@ function normalizeBaseCommit(value) {
|
|
|
3192
4777
|
return null;
|
|
3193
4778
|
return /^[0-9a-f]{40}([0-9a-f]{24})?$/i.test(trimmed) ? trimmed.toLowerCase() : trimmed;
|
|
3194
4779
|
}
|
|
4780
|
+
function workspaceIdOf(ref) {
|
|
4781
|
+
return typeof ref === "string" ? ref : ref.id;
|
|
4782
|
+
}
|
|
4783
|
+
function runTargetOf(ref) {
|
|
4784
|
+
return { workspaceId: ref.workspaceId, runId: ref.id };
|
|
4785
|
+
}
|
|
4786
|
+
function throwIfAborted2(signal, what) {
|
|
4787
|
+
if (signal?.aborted)
|
|
4788
|
+
throw new GittermError("ABORTED", `Aborted while ${what}`);
|
|
4789
|
+
}
|
|
4790
|
+
function sleep2(ms, signal, what) {
|
|
4791
|
+
return new Promise((resolve, reject) => {
|
|
4792
|
+
const timer = setTimeout(() => {
|
|
4793
|
+
signal?.removeEventListener("abort", onAbort);
|
|
4794
|
+
resolve();
|
|
4795
|
+
}, ms);
|
|
4796
|
+
const onAbort = () => {
|
|
4797
|
+
clearTimeout(timer);
|
|
4798
|
+
reject(new GittermError("ABORTED", `Aborted while ${what}`));
|
|
4799
|
+
};
|
|
4800
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
4801
|
+
});
|
|
4802
|
+
}
|
|
3195
4803
|
function normalizeWorkspace(workspace) {
|
|
3196
4804
|
if (!workspace)
|
|
3197
4805
|
return null;
|
|
@@ -3220,6 +4828,9 @@ function normalizeWorkspace(workspace) {
|
|
|
3220
4828
|
name: workspace.image.name,
|
|
3221
4829
|
imageId: workspace.image.imageId
|
|
3222
4830
|
} : null,
|
|
4831
|
+
metadata: workspace.metadata ?? {},
|
|
4832
|
+
autoTerminateAt: toIso(workspace.autoTerminateAt),
|
|
4833
|
+
customImage: workspace.customImage ?? null,
|
|
3223
4834
|
startedAt: toIso(workspace.startedAt),
|
|
3224
4835
|
pausedAt: toIso(workspace.pausedAt),
|
|
3225
4836
|
terminatedAt: toIso(workspace.terminatedAt),
|
|
@@ -3256,59 +4867,123 @@ function mapTrpcCode(code) {
|
|
|
3256
4867
|
return "BAD_REQUEST";
|
|
3257
4868
|
case "CONFLICT":
|
|
3258
4869
|
return "CONFLICT";
|
|
4870
|
+
case "TIMEOUT":
|
|
4871
|
+
return "TIMEOUT";
|
|
3259
4872
|
default:
|
|
3260
4873
|
return "SERVER_ERROR";
|
|
3261
4874
|
}
|
|
3262
4875
|
}
|
|
4876
|
+
function credentialErrorCode(message) {
|
|
4877
|
+
const match = /^(MODEL_CREDENTIAL_(?:UNAVAILABLE|DUPLICATE_PROVIDER|INVALID|REQUIRED)):\s*/.exec(message);
|
|
4878
|
+
return match?.[1];
|
|
4879
|
+
}
|
|
4880
|
+
function toGittermError(serverUrl, error) {
|
|
4881
|
+
if (error instanceof GittermError)
|
|
4882
|
+
return error;
|
|
4883
|
+
if (error instanceof TRPCClientError) {
|
|
4884
|
+
const data = error.data;
|
|
4885
|
+
const trpcCode = data?.code;
|
|
4886
|
+
if (!error.data) {
|
|
4887
|
+
return new GittermError("NETWORK", `Could not reach the GitTerm server at ${serverUrl}`, {
|
|
4888
|
+
cause: error
|
|
4889
|
+
});
|
|
4890
|
+
}
|
|
4891
|
+
const code = mapTrpcCode(trpcCode);
|
|
4892
|
+
const structuredLifecycleCode = WORKSPACE_LIFECYCLE_ERROR_CODES.find((candidate) => candidate === data?.workspaceLifecycleCode);
|
|
4893
|
+
if (structuredLifecycleCode) {
|
|
4894
|
+
return new WorkspaceLifecycleError(structuredLifecycleCode, error.message, { cause: error });
|
|
4895
|
+
}
|
|
4896
|
+
if (error.message.startsWith("INPUT_NOT_PENDING:"))
|
|
4897
|
+
return new GittermError("INPUT_NOT_PENDING", error.message, { cause: error });
|
|
4898
|
+
const credentialCode = credentialErrorCode(error.message);
|
|
4899
|
+
if (credentialCode)
|
|
4900
|
+
return new GittermError(credentialCode, error.message, { cause: error });
|
|
4901
|
+
const lifecycleCode = WORKSPACE_LIFECYCLE_ERROR_CODES.find((candidate) => error.message.startsWith(`${candidate}:`));
|
|
4902
|
+
if (lifecycleCode) {
|
|
4903
|
+
return new WorkspaceLifecycleError(lifecycleCode, error.message, { cause: error });
|
|
4904
|
+
}
|
|
4905
|
+
return new GittermError(code, code === "UNAUTHORIZED" ? `Authentication failed: ${error.message}. Check that the API token is valid and has not expired.` : error.message, { cause: error });
|
|
4906
|
+
}
|
|
4907
|
+
return new GittermError("NETWORK", error instanceof Error ? error.message : "Network request failed", { cause: error });
|
|
4908
|
+
}
|
|
3263
4909
|
async function runWithServer(serverUrl, operation) {
|
|
3264
4910
|
try {
|
|
3265
4911
|
return await operation();
|
|
3266
4912
|
} catch (error) {
|
|
3267
|
-
|
|
3268
|
-
|
|
3269
|
-
|
|
3270
|
-
|
|
3271
|
-
|
|
3272
|
-
|
|
3273
|
-
|
|
3274
|
-
|
|
3275
|
-
|
|
3276
|
-
|
|
3277
|
-
|
|
3278
|
-
|
|
3279
|
-
|
|
3280
|
-
|
|
3281
|
-
|
|
3282
|
-
|
|
3283
|
-
|
|
3284
|
-
|
|
3285
|
-
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
}
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
4913
|
+
throw toGittermError(serverUrl, error);
|
|
4914
|
+
}
|
|
4915
|
+
}
|
|
4916
|
+
function isTerminalRun(status) {
|
|
4917
|
+
return status === "completed" || status === "failed" || status === "cancelled";
|
|
4918
|
+
}
|
|
4919
|
+
async function* watchRun(trpc, serverUrl, target, options) {
|
|
4920
|
+
const what = `watching run ${target.runId}`;
|
|
4921
|
+
throwIfAborted2(options?.signal, what);
|
|
4922
|
+
const queue = [];
|
|
4923
|
+
let wake;
|
|
4924
|
+
const push = (item) => {
|
|
4925
|
+
queue.push(item);
|
|
4926
|
+
wake?.();
|
|
4927
|
+
wake = undefined;
|
|
4928
|
+
};
|
|
4929
|
+
const onAbort = () => push({ error: new GittermError("ABORTED", `Aborted while ${what}`) });
|
|
4930
|
+
options?.signal?.addEventListener("abort", onAbort, { once: true });
|
|
4931
|
+
let last;
|
|
4932
|
+
const subscription = trpc.run.lifecycle.subscribe(target, {
|
|
4933
|
+
onData: (event) => {
|
|
4934
|
+
last = event.run;
|
|
4935
|
+
push({ run: last });
|
|
4936
|
+
},
|
|
4937
|
+
onError: (error) => push({ error }),
|
|
4938
|
+
onComplete: () => push(last && isTerminalRun(last.status) ? { done: true } : {
|
|
4939
|
+
error: new GittermError("NETWORK", `Run ${target.runId} event stream ended unexpectedly`)
|
|
4940
|
+
})
|
|
4941
|
+
});
|
|
4942
|
+
try {
|
|
4943
|
+
while (true) {
|
|
4944
|
+
throwIfAborted2(options?.signal, what);
|
|
4945
|
+
if (queue.length === 0)
|
|
4946
|
+
await new Promise((resolve) => wake = resolve);
|
|
4947
|
+
const item = queue.shift();
|
|
4948
|
+
if ("done" in item)
|
|
4949
|
+
return;
|
|
4950
|
+
if ("error" in item)
|
|
4951
|
+
throw toGittermError(serverUrl, item.error);
|
|
4952
|
+
yield item.run;
|
|
4953
|
+
if (isTerminalRun(item.run.status))
|
|
4954
|
+
return;
|
|
3296
4955
|
}
|
|
3297
|
-
|
|
4956
|
+
} finally {
|
|
4957
|
+
options?.signal?.removeEventListener("abort", onAbort);
|
|
4958
|
+
subscription.unsubscribe();
|
|
3298
4959
|
}
|
|
3299
4960
|
}
|
|
3300
4961
|
function createGittermClient(options = {}) {
|
|
3301
4962
|
const credentials = resolveCredentials(options);
|
|
4963
|
+
const fetchImpl = createNoRedirectFetch(options.fetch);
|
|
4964
|
+
const authorization = `Bearer ${credentials.token}`;
|
|
3302
4965
|
const trpc = createTRPCClient({
|
|
3303
4966
|
links: [
|
|
3304
|
-
|
|
3305
|
-
|
|
3306
|
-
|
|
3307
|
-
|
|
4967
|
+
splitLink({
|
|
4968
|
+
condition: (operation) => operation.type === "subscription",
|
|
4969
|
+
true: httpSubscriptionLink({
|
|
4970
|
+
url: toTrpcUrl(credentials.serverUrl),
|
|
4971
|
+
EventSource,
|
|
4972
|
+
eventSourceOptions: {
|
|
4973
|
+
fetch: (url, init) => fetchImpl(url, { ...init, headers: { ...init.headers, authorization } })
|
|
4974
|
+
}
|
|
4975
|
+
}),
|
|
4976
|
+
false: httpBatchLink({
|
|
4977
|
+
url: toTrpcUrl(credentials.serverUrl),
|
|
4978
|
+
fetch: fetchImpl,
|
|
4979
|
+
headers: () => ({ authorization })
|
|
4980
|
+
})
|
|
3308
4981
|
})
|
|
3309
4982
|
]
|
|
3310
4983
|
});
|
|
3311
|
-
const
|
|
4984
|
+
const run = (operation) => runWithServer(credentials.serverUrl, operation);
|
|
4985
|
+
const watch = (ref, watchOptions) => watchRun(trpc, credentials.serverUrl, runTargetOf(ref), watchOptions);
|
|
4986
|
+
const respond = (ref, input) => run(async () => trpc.run.respond.mutate({ ...runTargetOf(ref), ...input }));
|
|
3312
4987
|
const normalizeCreateResult = (result) => {
|
|
3313
4988
|
const workspace = normalizeWorkspace(result.workspace);
|
|
3314
4989
|
if (!workspace)
|
|
@@ -3328,16 +5003,18 @@ function createGittermClient(options = {}) {
|
|
|
3328
5003
|
};
|
|
3329
5004
|
return { workspace, runtime };
|
|
3330
5005
|
};
|
|
3331
|
-
const createWorkspace = (input) =>
|
|
5006
|
+
const createWorkspace = (input) => run(async () => {
|
|
3332
5007
|
const result = await trpc.workspace.createWorkspace.mutate(input);
|
|
3333
5008
|
return normalizeCreateResult(result);
|
|
3334
5009
|
});
|
|
3335
5010
|
const waitForWorkspaceSetup = async (workspaceId, waitOptions) => {
|
|
3336
5011
|
const timeoutMs = waitOptions?.timeoutMs ?? 10 * 60000;
|
|
3337
5012
|
const pollIntervalMs = waitOptions?.pollIntervalMs ?? 2000;
|
|
5013
|
+
const signal = waitOptions?.signal;
|
|
3338
5014
|
const deadline = Date.now() + timeoutMs;
|
|
3339
5015
|
while (true) {
|
|
3340
|
-
|
|
5016
|
+
throwIfAborted2(signal, "waiting for workspace setup");
|
|
5017
|
+
const result = await trpc.workspace.getSetupStatus.query({ workspaceId }, { signal });
|
|
3341
5018
|
if (result.status === "not_requested" || result.status === "succeeded")
|
|
3342
5019
|
return result;
|
|
3343
5020
|
if (result.status === "failed") {
|
|
@@ -3346,15 +5023,17 @@ function createGittermClient(options = {}) {
|
|
|
3346
5023
|
${log}` : ""}`);
|
|
3347
5024
|
}
|
|
3348
5025
|
if (Date.now() >= deadline) {
|
|
3349
|
-
|
|
5026
|
+
const log = result.log?.trim();
|
|
5027
|
+
throw new GittermError("TIMEOUT", `Timed out waiting for workspace ${workspaceId} setup (last status: ${result.status})${log ? `
|
|
5028
|
+
${log}` : ""}`);
|
|
3350
5029
|
}
|
|
3351
|
-
await
|
|
5030
|
+
await sleep2(pollIntervalMs, signal, "waiting for workspace setup");
|
|
3352
5031
|
}
|
|
3353
5032
|
};
|
|
3354
5033
|
return {
|
|
3355
5034
|
serverUrl: credentials.serverUrl,
|
|
3356
5035
|
auth: {
|
|
3357
|
-
status: () =>
|
|
5036
|
+
status: () => run(async () => {
|
|
3358
5037
|
const me = await trpc.agent.me.query();
|
|
3359
5038
|
return {
|
|
3360
5039
|
loggedIn: true,
|
|
@@ -3367,30 +5046,35 @@ ${log}` : ""}`);
|
|
|
3367
5046
|
})
|
|
3368
5047
|
},
|
|
3369
5048
|
workspaces: {
|
|
3370
|
-
list: (input) =>
|
|
5049
|
+
list: (input) => run(async () => {
|
|
3371
5050
|
const result = await trpc.workspace.listWorkspaces.query(input);
|
|
3372
5051
|
return {
|
|
3373
|
-
workspaces: result.workspaces.map((workspace) =>
|
|
5052
|
+
workspaces: result.workspaces.map(normalizeWorkspace).filter((workspace) => workspace !== null),
|
|
3374
5053
|
pagination: result.pagination
|
|
3375
5054
|
};
|
|
3376
5055
|
}),
|
|
3377
|
-
get: (
|
|
3378
|
-
const result = await trpc.workspace.getWorkspace.query({
|
|
5056
|
+
get: (ref) => run(async () => {
|
|
5057
|
+
const result = await trpc.workspace.getWorkspace.query({
|
|
5058
|
+
workspaceId: workspaceIdOf(ref)
|
|
5059
|
+
});
|
|
3379
5060
|
const workspace = normalizeWorkspace(result.workspace);
|
|
3380
5061
|
if (!workspace)
|
|
3381
5062
|
throw new GittermError("NOT_FOUND", "Workspace not found");
|
|
3382
5063
|
return workspace;
|
|
3383
5064
|
}),
|
|
3384
|
-
getRuntimeAccess: (
|
|
3385
|
-
const result = await trpc.workspace.getRuntimeAccess.query({
|
|
5065
|
+
getRuntimeAccess: (ref) => run(async () => {
|
|
5066
|
+
const result = await trpc.workspace.getRuntimeAccess.query({
|
|
5067
|
+
workspaceId: workspaceIdOf(ref)
|
|
5068
|
+
});
|
|
3386
5069
|
return normalizeRuntime(result);
|
|
3387
5070
|
}),
|
|
3388
|
-
ensureRunning: (
|
|
5071
|
+
ensureRunning: (ref, waitOptions) => run(async () => {
|
|
5072
|
+
throwIfAborted2(waitOptions?.signal, "ensuring the workspace is running");
|
|
3389
5073
|
const result = await trpc.workspace.ensureRunning.mutate({
|
|
3390
|
-
workspaceId,
|
|
3391
|
-
timeoutMs:
|
|
3392
|
-
pollIntervalMs:
|
|
3393
|
-
});
|
|
5074
|
+
workspaceId: workspaceIdOf(ref),
|
|
5075
|
+
timeoutMs: waitOptions?.timeoutMs,
|
|
5076
|
+
pollIntervalMs: waitOptions?.pollIntervalMs
|
|
5077
|
+
}, { signal: waitOptions?.signal });
|
|
3394
5078
|
const workspace = normalizeWorkspace(result.workspace);
|
|
3395
5079
|
if (!workspace)
|
|
3396
5080
|
throw new GittermError("SERVER_ERROR", "ensureRunning failed");
|
|
@@ -3399,59 +5083,139 @@ ${log}` : ""}`);
|
|
|
3399
5083
|
runtime: normalizeRuntime(result.runtime)
|
|
3400
5084
|
};
|
|
3401
5085
|
}),
|
|
3402
|
-
pause: (
|
|
3403
|
-
const result = await trpc.workspace.pauseWorkspace.mutate({
|
|
5086
|
+
pause: (ref) => run(async () => {
|
|
5087
|
+
const result = await trpc.workspace.pauseWorkspace.mutate({
|
|
5088
|
+
workspaceId: workspaceIdOf(ref)
|
|
5089
|
+
});
|
|
3404
5090
|
return { durationMinutes: result.durationMinutes };
|
|
3405
5091
|
}),
|
|
3406
|
-
restart: (
|
|
3407
|
-
const result = await trpc.workspace.restartWorkspace.mutate({
|
|
5092
|
+
restart: (ref) => run(async () => {
|
|
5093
|
+
const result = await trpc.workspace.restartWorkspace.mutate({
|
|
5094
|
+
workspaceId: workspaceIdOf(ref)
|
|
5095
|
+
});
|
|
3408
5096
|
return { status: result.status };
|
|
3409
5097
|
}),
|
|
3410
|
-
terminate: (
|
|
3411
|
-
const result = await trpc.workspace.deleteWorkspace.mutate({
|
|
5098
|
+
terminate: (ref) => run(async () => {
|
|
5099
|
+
const result = await trpc.workspace.deleteWorkspace.mutate({
|
|
5100
|
+
workspaceId: workspaceIdOf(ref)
|
|
5101
|
+
});
|
|
3412
5102
|
return {
|
|
3413
5103
|
workspace: normalizeWorkspace(result.workspace),
|
|
3414
5104
|
cleanupInBackground: result.cleanupInBackground
|
|
3415
5105
|
};
|
|
3416
5106
|
}),
|
|
3417
5107
|
create: createWorkspace,
|
|
3418
|
-
|
|
3419
|
-
|
|
5108
|
+
models: (ref) => run(() => trpc.workspace.getModelAccess.query({ workspaceId: workspaceIdOf(ref) })),
|
|
5109
|
+
setupStatus: (ref) => run(async () => trpc.workspace.getSetupStatus.query({ workspaceId: workspaceIdOf(ref) })),
|
|
5110
|
+
waitForSetup: (ref, waitOptions) => run(() => waitForWorkspaceSetup(workspaceIdOf(ref), waitOptions))
|
|
3420
5111
|
},
|
|
3421
5112
|
runs: {
|
|
3422
|
-
create: (input) =>
|
|
3423
|
-
|
|
3424
|
-
|
|
3425
|
-
|
|
3426
|
-
|
|
3427
|
-
|
|
3428
|
-
|
|
3429
|
-
|
|
3430
|
-
|
|
3431
|
-
|
|
3432
|
-
|
|
3433
|
-
|
|
3434
|
-
if (Date.now() >= deadline) {
|
|
3435
|
-
throw new GittermError("NETWORK", `Timed out waiting for run ${runId}`);
|
|
3436
|
-
}
|
|
3437
|
-
await new Promise((resolve) => setTimeout(resolve, pollIntervalMs));
|
|
5113
|
+
create: (input) => run(async () => {
|
|
5114
|
+
const { signal, workspace, ...rest } = input;
|
|
5115
|
+
const request = {
|
|
5116
|
+
...rest,
|
|
5117
|
+
workspaceId: workspaceIdOf(workspace),
|
|
5118
|
+
context: rest.context?.type === "continue" ? { type: "continue", runId: rest.context.run.id } : rest.context
|
|
5119
|
+
};
|
|
5120
|
+
if (request.waitForSetup) {
|
|
5121
|
+
await waitForWorkspaceSetup(request.workspaceId, {
|
|
5122
|
+
timeoutMs: request.setupTimeoutMs,
|
|
5123
|
+
signal
|
|
5124
|
+
});
|
|
3438
5125
|
}
|
|
3439
|
-
|
|
5126
|
+
throwIfAborted2(signal, "creating the run");
|
|
5127
|
+
return trpc.run.create.mutate({ ...request, idempotencyKey: request.idempotencyKey ?? crypto.randomUUID() }, { signal });
|
|
5128
|
+
}),
|
|
5129
|
+
list: (ref, listOptions) => run(async () => trpc.run.list.query({
|
|
5130
|
+
workspaceId: workspaceIdOf(ref),
|
|
5131
|
+
...listOptions
|
|
5132
|
+
})),
|
|
5133
|
+
get: (ref) => run(async () => trpc.run.get.query(runTargetOf(ref))),
|
|
5134
|
+
messages: (ref) => run(async () => {
|
|
5135
|
+
const messages = await trpc.run.messages.query(runTargetOf(ref));
|
|
5136
|
+
return messages.map((message) => ({ ...message, parts: message.parts ?? [] }));
|
|
5137
|
+
}),
|
|
5138
|
+
cancel: (ref) => run(async () => trpc.run.cancel.mutate(runTargetOf(ref))),
|
|
5139
|
+
respond,
|
|
5140
|
+
watch,
|
|
5141
|
+
...runHelpers({ watch, respond })
|
|
3440
5142
|
},
|
|
3441
5143
|
catalog: {
|
|
3442
|
-
agentTypes: (input) =>
|
|
5144
|
+
agentTypes: (input) => run(async () => {
|
|
3443
5145
|
const result = await trpc.workspace.listAgentTypes.query(input);
|
|
3444
5146
|
return result.agentTypes;
|
|
3445
5147
|
}),
|
|
3446
|
-
cloudProviders: (input) =>
|
|
5148
|
+
cloudProviders: (input) => run(async () => {
|
|
3447
5149
|
const result = await trpc.workspace.listCloudProviders.query(input);
|
|
3448
5150
|
return result.cloudProviders;
|
|
3449
5151
|
}),
|
|
3450
|
-
workspaceOptions: () =>
|
|
5152
|
+
workspaceOptions: () => run(async () => trpc.workspace.getWorkspaceCatalog.query())
|
|
5153
|
+
},
|
|
5154
|
+
integrations: {
|
|
5155
|
+
catalog: () => run(async () => trpc.integrations.catalog.query()),
|
|
5156
|
+
connections: {
|
|
5157
|
+
list: (filter) => run(async () => {
|
|
5158
|
+
const result = await trpc.integrations.connections.list.query(filter);
|
|
5159
|
+
return result.map(toConnection);
|
|
5160
|
+
}),
|
|
5161
|
+
get: (id) => run(async () => toConnection(await trpc.integrations.connections.get.query({ id }))),
|
|
5162
|
+
create: (input) => run(async () => {
|
|
5163
|
+
const result = await trpc.integrations.connections.create.mutate(input);
|
|
5164
|
+
return result.status === "connected" ? { ...result, connection: toConnection(result.connection) } : result;
|
|
5165
|
+
}),
|
|
5166
|
+
remove: (id) => run(async () => {
|
|
5167
|
+
await trpc.integrations.connections.remove.mutate({ id });
|
|
5168
|
+
}),
|
|
5169
|
+
waitFor: ({ integration, since, timeoutMs = 5 * 60000, intervalMs = 3000 }) => run(async () => {
|
|
5170
|
+
const sinceMs = since ? new Date(since).getTime() : 0;
|
|
5171
|
+
const deadline = Date.now() + timeoutMs;
|
|
5172
|
+
while (Date.now() < deadline) {
|
|
5173
|
+
const result = await trpc.integrations.connections.list.query({
|
|
5174
|
+
integration,
|
|
5175
|
+
kind: "personal"
|
|
5176
|
+
});
|
|
5177
|
+
const match = result.map(toConnection).filter((c) => c.status === "connected" && new Date(c.connectedAt).getTime() >= sinceMs).sort((a, b) => b.connectedAt.localeCompare(a.connectedAt))[0];
|
|
5178
|
+
if (match)
|
|
5179
|
+
return match;
|
|
5180
|
+
await new Promise((resolve) => setTimeout(resolve, intervalMs));
|
|
5181
|
+
}
|
|
5182
|
+
throw new Error(`Timed out waiting for a ${integration} connection`);
|
|
5183
|
+
})
|
|
5184
|
+
},
|
|
5185
|
+
github: {
|
|
5186
|
+
repositories: (connectionId) => run(async () => trpc.integrations.github.repositories.query({ connectionId })),
|
|
5187
|
+
branches: (connectionId, owner, repo) => run(async () => trpc.integrations.github.branches.query({ connectionId, owner, repo }))
|
|
5188
|
+
},
|
|
5189
|
+
google: {
|
|
5190
|
+
setup: () => run(async () => trpc.integrations.google.setup.query())
|
|
5191
|
+
}
|
|
5192
|
+
},
|
|
5193
|
+
credentials: {
|
|
5194
|
+
list: () => run(async () => {
|
|
5195
|
+
const result = await trpc.modelCredentials.listMyCredentials.query();
|
|
5196
|
+
return result.credentials.map((credential) => ({
|
|
5197
|
+
...credential,
|
|
5198
|
+
lastUsedAt: toIso(credential.lastUsedAt),
|
|
5199
|
+
oauthExpiresAt: toIso(credential.oauthExpiresAt),
|
|
5200
|
+
createdAt: toIso(credential.createdAt),
|
|
5201
|
+
updatedAt: toIso(credential.updatedAt)
|
|
5202
|
+
}));
|
|
5203
|
+
}),
|
|
5204
|
+
listProviders: () => run(async () => {
|
|
5205
|
+
const result = await trpc.modelCredentials.listProviders.query();
|
|
5206
|
+
return result.providers.map((provider) => ({
|
|
5207
|
+
id: provider.id,
|
|
5208
|
+
name: provider.name,
|
|
5209
|
+
logicalProviderKey: provider.logicalProviderKey,
|
|
5210
|
+
displayName: provider.displayName,
|
|
5211
|
+
authType: provider.authType,
|
|
5212
|
+
isRecommended: provider.isRecommended
|
|
5213
|
+
}));
|
|
5214
|
+
})
|
|
3451
5215
|
}
|
|
3452
5216
|
};
|
|
3453
5217
|
}
|
|
3454
|
-
function
|
|
5218
|
+
function sleep22(ms) {
|
|
3455
5219
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
3456
5220
|
}
|
|
3457
5221
|
async function loginWithDeviceCode(serverUrl, options = {}) {
|
|
@@ -3486,7 +5250,7 @@ async function loginWithDeviceCode(serverUrl, options = {}) {
|
|
|
3486
5250
|
const errText = await tokenRes.text().catch(() => "");
|
|
3487
5251
|
throw new Error(`Login failed: ${tokenRes.status} ${errText}`);
|
|
3488
5252
|
}
|
|
3489
|
-
await
|
|
5253
|
+
await sleep22(Math.max(1, codeJson.intervalSeconds) * 1000);
|
|
3490
5254
|
}
|
|
3491
5255
|
throw new Error("Device code expired; try again.");
|
|
3492
5256
|
}
|
|
@@ -3510,6 +5274,10 @@ function errorCode(code) {
|
|
|
3510
5274
|
return code;
|
|
3511
5275
|
return "SERVER_ERROR";
|
|
3512
5276
|
}
|
|
5277
|
+
function toWorkspaceTrpcUrl(serverUrl) {
|
|
5278
|
+
const url = new URL(serverUrl);
|
|
5279
|
+
return url.pathname.endsWith("/trpc") ? serverUrl : new URL("/trpc", url).toString();
|
|
5280
|
+
}
|
|
3513
5281
|
function createGittermWorkspaceClient(options = {}) {
|
|
3514
5282
|
const detected = options.serverUrl && options.token && options.workspaceId ? null : getWorkspaceEnvironment();
|
|
3515
5283
|
const rawServerUrl = options.serverUrl ?? detected?.serverUrl;
|
|
@@ -3522,13 +5290,13 @@ function createGittermWorkspaceClient(options = {}) {
|
|
|
3522
5290
|
const trpc = createTRPCClient({
|
|
3523
5291
|
links: [
|
|
3524
5292
|
httpBatchLink({
|
|
3525
|
-
url:
|
|
5293
|
+
url: toWorkspaceTrpcUrl(serverUrl),
|
|
3526
5294
|
fetch: createNoRedirectFetch(options.fetch),
|
|
3527
5295
|
headers: () => ({ authorization: `Bearer ${token}` })
|
|
3528
5296
|
})
|
|
3529
5297
|
]
|
|
3530
5298
|
});
|
|
3531
|
-
async function
|
|
5299
|
+
async function run(operation) {
|
|
3532
5300
|
try {
|
|
3533
5301
|
return await operation();
|
|
3534
5302
|
} catch (error) {
|
|
@@ -3541,11 +5309,12 @@ function createGittermWorkspaceClient(options = {}) {
|
|
|
3541
5309
|
return {
|
|
3542
5310
|
workspaceId,
|
|
3543
5311
|
serverUrl,
|
|
3544
|
-
self: { get: () =>
|
|
5312
|
+
self: { get: () => run(() => trpc.workspaceOps.getSelf.query()) },
|
|
3545
5313
|
ports: {
|
|
3546
|
-
list: () =>
|
|
3547
|
-
open: (port, input) =>
|
|
3548
|
-
|
|
5314
|
+
list: () => run(() => trpc.workspaceOps.listPorts.query()),
|
|
5315
|
+
open: (port, input) => run(() => trpc.workspaceOps.openPort.mutate({ port, ...input })),
|
|
5316
|
+
setVisibility: (port, visibility) => run(() => trpc.workspaceOps.setPortVisibility.mutate({ port, visibility })),
|
|
5317
|
+
close: (port) => run(() => trpc.workspaceOps.closePort.mutate({ port }))
|
|
3549
5318
|
}
|
|
3550
5319
|
};
|
|
3551
5320
|
}
|
|
@@ -4207,8 +5976,8 @@ var exec = (string, columns, options = {}) => {
|
|
|
4207
5976
|
if (ESCAPES.has(character)) {
|
|
4208
5977
|
const { groups } = new RegExp(`(?:\\${ANSI_CSI}(?<code>\\d+)m|\\${ANSI_ESCAPE_LINK}(?<uri>.*)${ANSI_ESCAPE_BELL})`).exec(preString.slice(preStringIndex)) || { groups: {} };
|
|
4209
5978
|
if (groups.code !== undefined) {
|
|
4210
|
-
const
|
|
4211
|
-
escapeCode =
|
|
5979
|
+
const code = Number.parseFloat(groups.code);
|
|
5980
|
+
escapeCode = code === END_CODE ? undefined : code;
|
|
4212
5981
|
} else if (groups.uri !== undefined) {
|
|
4213
5982
|
escapeUrl = groups.uri.length === 0 ? undefined : groups.uri;
|
|
4214
5983
|
}
|
|
@@ -4367,11 +6136,11 @@ function tokenizeArgString(argString) {
|
|
|
4367
6136
|
|
|
4368
6137
|
// ../../node_modules/.bun/yargs-parser@22.0.0/node_modules/yargs-parser/build/lib/yargs-parser-types.js
|
|
4369
6138
|
var DefaultValuesForTypeKey;
|
|
4370
|
-
(function(
|
|
4371
|
-
|
|
4372
|
-
|
|
4373
|
-
|
|
4374
|
-
|
|
6139
|
+
(function(DefaultValuesForTypeKey) {
|
|
6140
|
+
DefaultValuesForTypeKey["BOOLEAN"] = "boolean";
|
|
6141
|
+
DefaultValuesForTypeKey["STRING"] = "string";
|
|
6142
|
+
DefaultValuesForTypeKey["NUMBER"] = "number";
|
|
6143
|
+
DefaultValuesForTypeKey["ARRAY"] = "array";
|
|
4375
6144
|
})(DefaultValuesForTypeKey || (DefaultValuesForTypeKey = {}));
|
|
4376
6145
|
|
|
4377
6146
|
// ../../node_modules/.bun/yargs-parser@22.0.0/node_modules/yargs-parser/build/lib/yargs-parser.js
|
|
@@ -4448,13 +6217,13 @@ class YargsParser {
|
|
|
4448
6217
|
const negatedBoolean = new RegExp("^--" + configuration["negation-prefix"] + "(.+)");
|
|
4449
6218
|
[].concat(opts.array || []).filter(Boolean).forEach(function(opt) {
|
|
4450
6219
|
const key = typeof opt === "object" ? opt.key : opt;
|
|
4451
|
-
const assignment = Object.keys(opt).map(function(
|
|
6220
|
+
const assignment = Object.keys(opt).map(function(key) {
|
|
4452
6221
|
const arrayFlagKeys = {
|
|
4453
6222
|
boolean: "bools",
|
|
4454
6223
|
string: "strings",
|
|
4455
6224
|
number: "numbers"
|
|
4456
6225
|
};
|
|
4457
|
-
return arrayFlagKeys[
|
|
6226
|
+
return arrayFlagKeys[key];
|
|
4458
6227
|
}).filter(Boolean).pop();
|
|
4459
6228
|
if (assignment) {
|
|
4460
6229
|
flags[assignment][key] = true;
|
|
@@ -4694,7 +6463,7 @@ class YargsParser {
|
|
|
4694
6463
|
argv._.push(maybeCoercedNumber);
|
|
4695
6464
|
}
|
|
4696
6465
|
}
|
|
4697
|
-
function eatNargs(i, key,
|
|
6466
|
+
function eatNargs(i, key, args, argAfterEqualSign) {
|
|
4698
6467
|
let ii;
|
|
4699
6468
|
let toEat = checkAllAliases(key, flags.nargs);
|
|
4700
6469
|
toEat = typeof toEat !== "number" || isNaN(toEat) ? 1 : toEat;
|
|
@@ -4707,13 +6476,13 @@ class YargsParser {
|
|
|
4707
6476
|
}
|
|
4708
6477
|
let available = isUndefined(argAfterEqualSign) ? 0 : 1;
|
|
4709
6478
|
if (configuration["nargs-eats-options"]) {
|
|
4710
|
-
if (
|
|
6479
|
+
if (args.length - (i + 1) + available < toEat) {
|
|
4711
6480
|
error = Error(__("Not enough arguments following: %s", key));
|
|
4712
6481
|
}
|
|
4713
6482
|
available = toEat;
|
|
4714
6483
|
} else {
|
|
4715
|
-
for (ii = i + 1;ii <
|
|
4716
|
-
if (!
|
|
6484
|
+
for (ii = i + 1;ii < args.length; ii++) {
|
|
6485
|
+
if (!args[ii].match(/^-[^0-9]/) || args[ii].match(negative) || isUnknownOptionAsArg(args[ii]))
|
|
4717
6486
|
available++;
|
|
4718
6487
|
else
|
|
4719
6488
|
break;
|
|
@@ -4727,13 +6496,13 @@ class YargsParser {
|
|
|
4727
6496
|
consumed--;
|
|
4728
6497
|
}
|
|
4729
6498
|
for (ii = i + 1;ii < consumed + i + 1; ii++) {
|
|
4730
|
-
setArg(key,
|
|
6499
|
+
setArg(key, args[ii]);
|
|
4731
6500
|
}
|
|
4732
6501
|
return i + consumed;
|
|
4733
6502
|
}
|
|
4734
|
-
function eatArray(i, key,
|
|
6503
|
+
function eatArray(i, key, args, argAfterEqualSign) {
|
|
4735
6504
|
let argsToSet = [];
|
|
4736
|
-
let next = argAfterEqualSign ||
|
|
6505
|
+
let next = argAfterEqualSign || args[i + 1];
|
|
4737
6506
|
const nargsCount = checkAllAliases(key, flags.nargs);
|
|
4738
6507
|
if (checkAllAliases(key, flags.bools) && !/^(true|false)$/.test(next)) {
|
|
4739
6508
|
argsToSet.push(true);
|
|
@@ -4746,10 +6515,10 @@ class YargsParser {
|
|
|
4746
6515
|
if (!isUndefined(argAfterEqualSign)) {
|
|
4747
6516
|
argsToSet.push(processValue(key, argAfterEqualSign, true));
|
|
4748
6517
|
}
|
|
4749
|
-
for (let ii = i + 1;ii <
|
|
6518
|
+
for (let ii = i + 1;ii < args.length; ii++) {
|
|
4750
6519
|
if (!configuration["greedy-arrays"] && argsToSet.length > 0 || nargsCount && typeof nargsCount === "number" && argsToSet.length >= nargsCount)
|
|
4751
6520
|
break;
|
|
4752
|
-
next =
|
|
6521
|
+
next = args[ii];
|
|
4753
6522
|
if (/^-/.test(next) && !negative.test(next) && !isUnknownOptionAsArg(next))
|
|
4754
6523
|
break;
|
|
4755
6524
|
i = ii;
|
|
@@ -4791,14 +6560,14 @@ class YargsParser {
|
|
|
4791
6560
|
}
|
|
4792
6561
|
if (checkAllAliases(key, flags.normalize) && !checkAllAliases(key, flags.arrays)) {
|
|
4793
6562
|
const keys = [key].concat(flags.aliases[key] || []);
|
|
4794
|
-
keys.forEach(function(
|
|
4795
|
-
Object.defineProperty(argvReturn,
|
|
6563
|
+
keys.forEach(function(key) {
|
|
6564
|
+
Object.defineProperty(argvReturn, key, {
|
|
4796
6565
|
enumerable: true,
|
|
4797
6566
|
get() {
|
|
4798
6567
|
return val;
|
|
4799
6568
|
},
|
|
4800
|
-
set(
|
|
4801
|
-
val = typeof
|
|
6569
|
+
set(value) {
|
|
6570
|
+
val = typeof value === "string" ? mixin2.normalize(value) : value;
|
|
4802
6571
|
}
|
|
4803
6572
|
});
|
|
4804
6573
|
});
|
|
@@ -4829,8 +6598,8 @@ class YargsParser {
|
|
|
4829
6598
|
}
|
|
4830
6599
|
if (checkAllAliases(key, flags.normalize) && checkAllAliases(key, flags.arrays)) {
|
|
4831
6600
|
if (Array.isArray(val))
|
|
4832
|
-
value = val.map((
|
|
4833
|
-
return mixin2.normalize(
|
|
6601
|
+
value = val.map((val) => {
|
|
6602
|
+
return mixin2.normalize(val);
|
|
4834
6603
|
});
|
|
4835
6604
|
else
|
|
4836
6605
|
value = mixin2.normalize(val);
|
|
@@ -4848,11 +6617,11 @@ class YargsParser {
|
|
|
4848
6617
|
}
|
|
4849
6618
|
return value;
|
|
4850
6619
|
}
|
|
4851
|
-
function setConfig(
|
|
6620
|
+
function setConfig(argv) {
|
|
4852
6621
|
const configLookup = Object.create(null);
|
|
4853
6622
|
applyDefaultsAndAliases(configLookup, flags.aliases, defaults);
|
|
4854
6623
|
Object.keys(flags.configs).forEach(function(configKey) {
|
|
4855
|
-
const configPath =
|
|
6624
|
+
const configPath = argv[configKey] || configLookup[configKey];
|
|
4856
6625
|
if (configPath) {
|
|
4857
6626
|
try {
|
|
4858
6627
|
let config = null;
|
|
@@ -4875,7 +6644,7 @@ class YargsParser {
|
|
|
4875
6644
|
} catch (ex) {
|
|
4876
6645
|
if (ex.name === "PermissionDenied")
|
|
4877
6646
|
error = ex;
|
|
4878
|
-
else if (
|
|
6647
|
+
else if (argv[configKey])
|
|
4879
6648
|
error = Error(__("Invalid JSON config file: %s", configPath));
|
|
4880
6649
|
}
|
|
4881
6650
|
}
|
|
@@ -4901,7 +6670,7 @@ class YargsParser {
|
|
|
4901
6670
|
});
|
|
4902
6671
|
}
|
|
4903
6672
|
}
|
|
4904
|
-
function applyEnvVars(
|
|
6673
|
+
function applyEnvVars(argv, configOnly) {
|
|
4905
6674
|
if (typeof envPrefix === "undefined")
|
|
4906
6675
|
return;
|
|
4907
6676
|
const prefix = typeof envPrefix === "string" ? envPrefix : "";
|
|
@@ -4914,24 +6683,24 @@ class YargsParser {
|
|
|
4914
6683
|
}
|
|
4915
6684
|
return camelCase(key);
|
|
4916
6685
|
});
|
|
4917
|
-
if ((configOnly && flags.configs[keys.join(".")] || !configOnly) && !hasKey(
|
|
6686
|
+
if ((configOnly && flags.configs[keys.join(".")] || !configOnly) && !hasKey(argv, keys)) {
|
|
4918
6687
|
setArg(keys.join("."), env[envVar]);
|
|
4919
6688
|
}
|
|
4920
6689
|
}
|
|
4921
6690
|
});
|
|
4922
6691
|
}
|
|
4923
|
-
function applyCoercions(
|
|
6692
|
+
function applyCoercions(argv) {
|
|
4924
6693
|
let coerce;
|
|
4925
6694
|
const applied = new Set;
|
|
4926
|
-
Object.keys(
|
|
6695
|
+
Object.keys(argv).forEach(function(key) {
|
|
4927
6696
|
if (!applied.has(key)) {
|
|
4928
6697
|
coerce = checkAllAliases(key, flags.coercions);
|
|
4929
6698
|
if (typeof coerce === "function") {
|
|
4930
6699
|
try {
|
|
4931
|
-
const value = maybeCoerceNumber(key, coerce(
|
|
6700
|
+
const value = maybeCoerceNumber(key, coerce(argv[key]));
|
|
4932
6701
|
[].concat(flags.aliases[key] || [], key).forEach((ali) => {
|
|
4933
6702
|
applied.add(ali);
|
|
4934
|
-
|
|
6703
|
+
argv[ali] = value;
|
|
4935
6704
|
});
|
|
4936
6705
|
} catch (err) {
|
|
4937
6706
|
error = err;
|
|
@@ -4940,25 +6709,25 @@ class YargsParser {
|
|
|
4940
6709
|
}
|
|
4941
6710
|
});
|
|
4942
6711
|
}
|
|
4943
|
-
function setPlaceholderKeys(
|
|
6712
|
+
function setPlaceholderKeys(argv) {
|
|
4944
6713
|
flags.keys.forEach((key) => {
|
|
4945
6714
|
if (~key.indexOf("."))
|
|
4946
6715
|
return;
|
|
4947
|
-
if (typeof
|
|
4948
|
-
|
|
6716
|
+
if (typeof argv[key] === "undefined")
|
|
6717
|
+
argv[key] = undefined;
|
|
4949
6718
|
});
|
|
4950
|
-
return
|
|
6719
|
+
return argv;
|
|
4951
6720
|
}
|
|
4952
|
-
function applyDefaultsAndAliases(obj,
|
|
4953
|
-
Object.keys(
|
|
6721
|
+
function applyDefaultsAndAliases(obj, aliases, defaults, canLog = false) {
|
|
6722
|
+
Object.keys(defaults).forEach(function(key) {
|
|
4954
6723
|
if (!hasKey(obj, key.split("."))) {
|
|
4955
|
-
setKey(obj, key.split("."),
|
|
6724
|
+
setKey(obj, key.split("."), defaults[key]);
|
|
4956
6725
|
if (canLog)
|
|
4957
6726
|
defaulted[key] = true;
|
|
4958
|
-
(
|
|
6727
|
+
(aliases[key] || []).forEach(function(x) {
|
|
4959
6728
|
if (hasKey(obj, x.split(".")))
|
|
4960
6729
|
return;
|
|
4961
|
-
setKey(obj, x.split("."),
|
|
6730
|
+
setKey(obj, x.split("."), defaults[key]);
|
|
4962
6731
|
});
|
|
4963
6732
|
}
|
|
4964
6733
|
});
|
|
@@ -4967,8 +6736,8 @@ class YargsParser {
|
|
|
4967
6736
|
let o = obj;
|
|
4968
6737
|
if (!configuration["dot-notation"])
|
|
4969
6738
|
keys = [keys.join(".")];
|
|
4970
|
-
keys.slice(0, -1).forEach(function(
|
|
4971
|
-
o = o[
|
|
6739
|
+
keys.slice(0, -1).forEach(function(key) {
|
|
6740
|
+
o = o[key] || {};
|
|
4972
6741
|
});
|
|
4973
6742
|
const key = keys[keys.length - 1];
|
|
4974
6743
|
if (typeof o !== "object")
|
|
@@ -4980,20 +6749,20 @@ class YargsParser {
|
|
|
4980
6749
|
let o = obj;
|
|
4981
6750
|
if (!configuration["dot-notation"])
|
|
4982
6751
|
keys = [keys.join(".")];
|
|
4983
|
-
keys.slice(0, -1).forEach(function(
|
|
4984
|
-
|
|
4985
|
-
if (typeof o === "object" && o[
|
|
4986
|
-
o[
|
|
6752
|
+
keys.slice(0, -1).forEach(function(key) {
|
|
6753
|
+
key = sanitizeKey(key);
|
|
6754
|
+
if (typeof o === "object" && o[key] === undefined) {
|
|
6755
|
+
o[key] = {};
|
|
4987
6756
|
}
|
|
4988
|
-
if (typeof o[
|
|
4989
|
-
if (Array.isArray(o[
|
|
4990
|
-
o[
|
|
6757
|
+
if (typeof o[key] !== "object" || Array.isArray(o[key])) {
|
|
6758
|
+
if (Array.isArray(o[key])) {
|
|
6759
|
+
o[key].push({});
|
|
4991
6760
|
} else {
|
|
4992
|
-
o[
|
|
6761
|
+
o[key] = [o[key], {}];
|
|
4993
6762
|
}
|
|
4994
|
-
o = o[
|
|
6763
|
+
o = o[key][o[key].length - 1];
|
|
4995
6764
|
} else {
|
|
4996
|
-
o = o[
|
|
6765
|
+
o = o[key];
|
|
4997
6766
|
}
|
|
4998
6767
|
});
|
|
4999
6768
|
const key = sanitizeKey(keys[keys.length - 1]);
|
|
@@ -5024,8 +6793,8 @@ class YargsParser {
|
|
|
5024
6793
|
o[key] = value;
|
|
5025
6794
|
}
|
|
5026
6795
|
}
|
|
5027
|
-
function extendAliases(...
|
|
5028
|
-
|
|
6796
|
+
function extendAliases(...args) {
|
|
6797
|
+
args.forEach(function(obj) {
|
|
5029
6798
|
Object.keys(obj || {}).forEach(function(key) {
|
|
5030
6799
|
if (flags.aliases[key])
|
|
5031
6800
|
return;
|
|
@@ -5059,7 +6828,7 @@ class YargsParser {
|
|
|
5059
6828
|
function checkAllAliases(key, flag) {
|
|
5060
6829
|
const toCheck = [].concat(flags.aliases[key] || [], key);
|
|
5061
6830
|
const keys = Object.keys(flag);
|
|
5062
|
-
const setAlias = toCheck.find((
|
|
6831
|
+
const setAlias = toCheck.find((key) => keys.includes(key));
|
|
5063
6832
|
return setAlias ? flag[setAlias] : false;
|
|
5064
6833
|
}
|
|
5065
6834
|
function hasAnyFlag(key) {
|
|
@@ -5448,14 +7217,14 @@ class Y18N {
|
|
|
5448
7217
|
}
|
|
5449
7218
|
function y18n(opts, _shim) {
|
|
5450
7219
|
shim = _shim;
|
|
5451
|
-
const
|
|
7220
|
+
const y18n = new Y18N(opts);
|
|
5452
7221
|
return {
|
|
5453
|
-
__:
|
|
5454
|
-
__n:
|
|
5455
|
-
setLocale:
|
|
5456
|
-
getLocale:
|
|
5457
|
-
updateLocale:
|
|
5458
|
-
locale:
|
|
7222
|
+
__: y18n.__.bind(y18n),
|
|
7223
|
+
__n: y18n.__n.bind(y18n),
|
|
7224
|
+
setLocale: y18n.setLocale.bind(y18n),
|
|
7225
|
+
getLocale: y18n.getLocale.bind(y18n),
|
|
7226
|
+
updateLocale: y18n.updateLocale.bind(y18n),
|
|
7227
|
+
locale: y18n.locale
|
|
5459
7228
|
};
|
|
5460
7229
|
}
|
|
5461
7230
|
|
|
@@ -5520,18 +7289,18 @@ var esm_default = {
|
|
|
5520
7289
|
};
|
|
5521
7290
|
|
|
5522
7291
|
// ../../node_modules/.bun/yargs@18.0.0/node_modules/yargs/build/lib/typings/common-types.js
|
|
5523
|
-
function assertNotStrictEqual(actual, expected,
|
|
5524
|
-
|
|
7292
|
+
function assertNotStrictEqual(actual, expected, shim, message) {
|
|
7293
|
+
shim.assert.notStrictEqual(actual, expected, message);
|
|
5525
7294
|
}
|
|
5526
|
-
function assertSingleKey(actual,
|
|
5527
|
-
|
|
7295
|
+
function assertSingleKey(actual, shim) {
|
|
7296
|
+
shim.assert.strictEqual(typeof actual, "string");
|
|
5528
7297
|
}
|
|
5529
7298
|
function objectKeys(object) {
|
|
5530
7299
|
return Object.keys(object);
|
|
5531
7300
|
}
|
|
5532
7301
|
|
|
5533
7302
|
// ../../node_modules/.bun/yargs@18.0.0/node_modules/yargs/build/lib/utils/is-promise.js
|
|
5534
|
-
function
|
|
7303
|
+
function isPromise2(maybePromise) {
|
|
5535
7304
|
return !!maybePromise && !!maybePromise.then && typeof maybePromise.then === "function";
|
|
5536
7305
|
}
|
|
5537
7306
|
|
|
@@ -5559,19 +7328,19 @@ function parseCommand(cmd) {
|
|
|
5559
7328
|
demanded: [],
|
|
5560
7329
|
optional: []
|
|
5561
7330
|
};
|
|
5562
|
-
splitCommand.forEach((
|
|
7331
|
+
splitCommand.forEach((cmd, i) => {
|
|
5563
7332
|
let variadic = false;
|
|
5564
|
-
|
|
5565
|
-
if (/\.+[\]>]/.test(
|
|
7333
|
+
cmd = cmd.replace(/\s/g, "");
|
|
7334
|
+
if (/\.+[\]>]/.test(cmd) && i === splitCommand.length - 1)
|
|
5566
7335
|
variadic = true;
|
|
5567
|
-
if (/^\[/.test(
|
|
7336
|
+
if (/^\[/.test(cmd)) {
|
|
5568
7337
|
parsedCommand.optional.push({
|
|
5569
|
-
cmd:
|
|
7338
|
+
cmd: cmd.replace(bregex, "").split("|"),
|
|
5570
7339
|
variadic
|
|
5571
7340
|
});
|
|
5572
7341
|
} else {
|
|
5573
7342
|
parsedCommand.demanded.push({
|
|
5574
|
-
cmd:
|
|
7343
|
+
cmd: cmd.replace(bregex, "").split("|"),
|
|
5575
7344
|
variadic
|
|
5576
7345
|
});
|
|
5577
7346
|
}
|
|
@@ -5710,11 +7479,11 @@ function applyMiddleware(argv, yargs, middlewares, beforeValidation) {
|
|
|
5710
7479
|
return acc;
|
|
5711
7480
|
middleware.applied = true;
|
|
5712
7481
|
}
|
|
5713
|
-
if (
|
|
7482
|
+
if (isPromise2(acc)) {
|
|
5714
7483
|
return acc.then((initialObj) => Promise.all([initialObj, middleware(initialObj, yargs)])).then(([initialObj, middlewareObj]) => Object.assign(initialObj, middlewareObj));
|
|
5715
7484
|
} else {
|
|
5716
7485
|
const result = middleware(acc, yargs);
|
|
5717
|
-
return
|
|
7486
|
+
return isPromise2(result) ? result.then((middlewareObj) => Object.assign(acc, middlewareObj)) : Object.assign(acc, result);
|
|
5718
7487
|
}
|
|
5719
7488
|
}, argv);
|
|
5720
7489
|
}
|
|
@@ -5725,7 +7494,7 @@ function maybeAsyncResult(getResult, resultHandler, errorHandler = (err) => {
|
|
|
5725
7494
|
}) {
|
|
5726
7495
|
try {
|
|
5727
7496
|
const result = isFunction3(getResult) ? getResult() : getResult;
|
|
5728
|
-
return
|
|
7497
|
+
return isPromise2(result) ? result.then((result) => resultHandler(result)) : resultHandler(result);
|
|
5729
7498
|
} catch (err) {
|
|
5730
7499
|
return errorHandler(err);
|
|
5731
7500
|
}
|
|
@@ -5738,12 +7507,12 @@ function isFunction3(arg) {
|
|
|
5738
7507
|
var DEFAULT_MARKER = /(^\*)|(^\$0)/;
|
|
5739
7508
|
|
|
5740
7509
|
class CommandInstance {
|
|
5741
|
-
constructor(usage, validation, globalMiddleware,
|
|
7510
|
+
constructor(usage, validation, globalMiddleware, shim) {
|
|
5742
7511
|
this.requireCache = new Set;
|
|
5743
7512
|
this.handlers = {};
|
|
5744
7513
|
this.aliasMap = {};
|
|
5745
7514
|
this.frozens = [];
|
|
5746
|
-
this.shim =
|
|
7515
|
+
this.shim = shim;
|
|
5747
7516
|
this.usage = usage;
|
|
5748
7517
|
this.globalMiddleware = globalMiddleware;
|
|
5749
7518
|
this.validation = validation;
|
|
@@ -5885,7 +7654,7 @@ class CommandInstance {
|
|
|
5885
7654
|
currentContext.fullCommands.push(commandHandler.original);
|
|
5886
7655
|
}
|
|
5887
7656
|
const builderResult = this.applyBuilderUpdateUsageAndParse(isDefaultCommand, commandHandler, yargs, parsed.aliases, parentCommands, commandIndex, helpOnly, helpOrVersionSet);
|
|
5888
|
-
return
|
|
7657
|
+
return isPromise2(builderResult) ? builderResult.then((result) => this.applyMiddlewareAndGetResult(isDefaultCommand, commandHandler, result.innerArgv, currentContext, helpOnly, result.aliases, yargs)) : this.applyMiddlewareAndGetResult(isDefaultCommand, commandHandler, builderResult.innerArgv, currentContext, helpOnly, builderResult.aliases, yargs);
|
|
5889
7658
|
}
|
|
5890
7659
|
applyBuilderUpdateUsageAndParse(isDefaultCommand, commandHandler, yargs, aliases, parentCommands, commandIndex, helpOnly, helpOrVersionSet) {
|
|
5891
7660
|
const builder = commandHandler.builder;
|
|
@@ -5893,7 +7662,7 @@ class CommandInstance {
|
|
|
5893
7662
|
if (isCommandBuilderCallback(builder)) {
|
|
5894
7663
|
yargs.getInternalMethods().getUsageInstance().freeze();
|
|
5895
7664
|
const builderOutput = builder(yargs.getInternalMethods().reset(aliases), helpOrVersionSet);
|
|
5896
|
-
if (
|
|
7665
|
+
if (isPromise2(builderOutput)) {
|
|
5897
7666
|
return builderOutput.then((output) => {
|
|
5898
7667
|
innerYargs = isYargsInstance(output) ? output : yargs;
|
|
5899
7668
|
return this.parseAndUpdateUsage(isDefaultCommand, commandHandler, innerYargs, parentCommands, commandIndex, helpOnly);
|
|
@@ -5915,7 +7684,7 @@ class CommandInstance {
|
|
|
5915
7684
|
innerYargs.getInternalMethods().getUsageInstance().usage(this.usageFromParentCommandsCommandHandler(parentCommands, commandHandler), commandHandler.description);
|
|
5916
7685
|
}
|
|
5917
7686
|
const innerArgv = innerYargs.getInternalMethods().runYargsParserAndExecuteCommands(null, undefined, true, commandIndex, helpOnly);
|
|
5918
|
-
return
|
|
7687
|
+
return isPromise2(innerArgv) ? innerArgv.then((argv) => ({
|
|
5919
7688
|
aliases: innerYargs.parsed.aliases,
|
|
5920
7689
|
innerArgv: argv
|
|
5921
7690
|
})) : {
|
|
@@ -5928,8 +7697,8 @@ class CommandInstance {
|
|
|
5928
7697
|
}
|
|
5929
7698
|
usageFromParentCommandsCommandHandler(parentCommands, commandHandler) {
|
|
5930
7699
|
const c = DEFAULT_MARKER.test(commandHandler.original) ? commandHandler.original.replace(DEFAULT_MARKER, "").trim() : commandHandler.original;
|
|
5931
|
-
const pc = parentCommands.filter((
|
|
5932
|
-
return !DEFAULT_MARKER.test(
|
|
7700
|
+
const pc = parentCommands.filter((c) => {
|
|
7701
|
+
return !DEFAULT_MARKER.test(c);
|
|
5933
7702
|
});
|
|
5934
7703
|
pc.push(c);
|
|
5935
7704
|
return `$0 ${pc.join(" ")}`;
|
|
@@ -5949,12 +7718,12 @@ class CommandInstance {
|
|
|
5949
7718
|
innerArgv = applyMiddleware(innerArgv, yargs, middlewares, false);
|
|
5950
7719
|
innerArgv = maybeAsyncResult(innerArgv, (result) => {
|
|
5951
7720
|
const handlerResult = commandHandler.handler(result);
|
|
5952
|
-
return
|
|
7721
|
+
return isPromise2(handlerResult) ? handlerResult.then(() => result) : result;
|
|
5953
7722
|
});
|
|
5954
7723
|
if (!isDefaultCommand) {
|
|
5955
7724
|
yargs.getInternalMethods().getUsageInstance().cacheHelpMessage();
|
|
5956
7725
|
}
|
|
5957
|
-
if (
|
|
7726
|
+
if (isPromise2(innerArgv) && !yargs.getInternalMethods().hasParseCallback()) {
|
|
5958
7727
|
innerArgv.catch((error) => {
|
|
5959
7728
|
try {
|
|
5960
7729
|
yargs.getInternalMethods().getUsageInstance().fail(null, error);
|
|
@@ -5977,7 +7746,7 @@ class CommandInstance {
|
|
|
5977
7746
|
}
|
|
5978
7747
|
const middlewares = this.globalMiddleware.getMiddleware().slice(0).concat(commandHandler.middlewares);
|
|
5979
7748
|
const maybePromiseArgv = applyMiddleware(innerArgv, yargs, middlewares, true);
|
|
5980
|
-
return
|
|
7749
|
+
return isPromise2(maybePromiseArgv) ? maybePromiseArgv.then((resolvedInnerArgv) => this.handleValidationAndGetResult(isDefaultCommand, commandHandler, resolvedInnerArgv, currentContext, aliases, yargs, middlewares, positionalMap)) : this.handleValidationAndGetResult(isDefaultCommand, commandHandler, maybePromiseArgv, currentContext, aliases, yargs, middlewares, positionalMap);
|
|
5981
7750
|
}
|
|
5982
7751
|
populatePositionals(commandHandler, argv, context, yargs) {
|
|
5983
7752
|
argv._ = argv._.slice(context.commands.length);
|
|
@@ -6135,8 +7904,8 @@ class CommandInstance {
|
|
|
6135
7904
|
return this;
|
|
6136
7905
|
}
|
|
6137
7906
|
}
|
|
6138
|
-
function command(usage, validation, globalMiddleware,
|
|
6139
|
-
return new CommandInstance(usage, validation, globalMiddleware,
|
|
7907
|
+
function command(usage, validation, globalMiddleware, shim) {
|
|
7908
|
+
return new CommandInstance(usage, validation, globalMiddleware, shim);
|
|
6140
7909
|
}
|
|
6141
7910
|
function isCommandBuilderDefinition(builder) {
|
|
6142
7911
|
return typeof builder === "object" && !!builder.builder && typeof builder.handler === "function";
|
|
@@ -6181,8 +7950,8 @@ function setBlocking(blocking) {
|
|
|
6181
7950
|
function isBoolean(fail) {
|
|
6182
7951
|
return typeof fail === "boolean";
|
|
6183
7952
|
}
|
|
6184
|
-
function usage(yargs,
|
|
6185
|
-
const __ =
|
|
7953
|
+
function usage(yargs, shim) {
|
|
7954
|
+
const __ = shim.y18n.__;
|
|
6186
7955
|
const self = {};
|
|
6187
7956
|
const fails = [];
|
|
6188
7957
|
self.failFn = function failFn(f) {
|
|
@@ -6205,14 +7974,14 @@ function usage(yargs, shim2) {
|
|
|
6205
7974
|
const logger = yargs.getInternalMethods().getLoggerInstance();
|
|
6206
7975
|
if (fails.length) {
|
|
6207
7976
|
for (let i = fails.length - 1;i >= 0; --i) {
|
|
6208
|
-
const
|
|
6209
|
-
if (isBoolean(
|
|
7977
|
+
const fail = fails[i];
|
|
7978
|
+
if (isBoolean(fail)) {
|
|
6210
7979
|
if (err)
|
|
6211
7980
|
throw err;
|
|
6212
7981
|
else if (msg)
|
|
6213
7982
|
throw Error(msg);
|
|
6214
7983
|
} else {
|
|
6215
|
-
|
|
7984
|
+
fail(msg, err, self);
|
|
6216
7985
|
}
|
|
6217
7986
|
}
|
|
6218
7987
|
} else {
|
|
@@ -6269,7 +8038,7 @@ function usage(yargs, shim2) {
|
|
|
6269
8038
|
examples.push([cmd, description || ""]);
|
|
6270
8039
|
};
|
|
6271
8040
|
let commands = [];
|
|
6272
|
-
self.command = function
|
|
8041
|
+
self.command = function command(cmd, description, isDefault, aliases, deprecated = false) {
|
|
6273
8042
|
if (isDefault) {
|
|
6274
8043
|
commands = commands.map((cmdArray) => {
|
|
6275
8044
|
cmdArray[2] = false;
|
|
@@ -6305,7 +8074,7 @@ function usage(yargs, shim2) {
|
|
|
6305
8074
|
wrap = cols;
|
|
6306
8075
|
};
|
|
6307
8076
|
self.getWrap = () => {
|
|
6308
|
-
if (
|
|
8077
|
+
if (shim.getEnv("YARGS_DISABLE_WRAP")) {
|
|
6309
8078
|
return null;
|
|
6310
8079
|
}
|
|
6311
8080
|
if (!wrapSet) {
|
|
@@ -6320,7 +8089,7 @@ function usage(yargs, shim2) {
|
|
|
6320
8089
|
if (cachedHelpMessage)
|
|
6321
8090
|
return cachedHelpMessage;
|
|
6322
8091
|
normalizeAliases();
|
|
6323
|
-
const base$0 = yargs.customScriptName ? yargs.$0 :
|
|
8092
|
+
const base$0 = yargs.customScriptName ? yargs.$0 : shim.path.basename(yargs.$0);
|
|
6324
8093
|
const demandedOptions = yargs.getDemandedOptions();
|
|
6325
8094
|
const demandedCommands = yargs.getDemandedCommands();
|
|
6326
8095
|
const deprecatedOptions = yargs.getDeprecatedOptions();
|
|
@@ -6338,19 +8107,19 @@ function usage(yargs, shim2) {
|
|
|
6338
8107
|
return acc;
|
|
6339
8108
|
}, {}));
|
|
6340
8109
|
const theWrap = self.getWrap();
|
|
6341
|
-
const
|
|
8110
|
+
const ui = shim.cliui({
|
|
6342
8111
|
width: theWrap,
|
|
6343
8112
|
wrap: !!theWrap
|
|
6344
8113
|
});
|
|
6345
8114
|
if (!usageDisabled) {
|
|
6346
8115
|
if (usages.length) {
|
|
6347
|
-
usages.forEach((
|
|
6348
|
-
|
|
6349
|
-
if (
|
|
6350
|
-
|
|
8116
|
+
usages.forEach((usage) => {
|
|
8117
|
+
ui.div({ text: `${usage[0].replace(/\$0/g, base$0)}` });
|
|
8118
|
+
if (usage[1]) {
|
|
8119
|
+
ui.div({ text: `${usage[1]}`, padding: [1, 0, 0, 0] });
|
|
6351
8120
|
}
|
|
6352
8121
|
});
|
|
6353
|
-
|
|
8122
|
+
ui.div();
|
|
6354
8123
|
} else if (commands.length) {
|
|
6355
8124
|
let u = null;
|
|
6356
8125
|
if (demandedCommands._) {
|
|
@@ -6360,48 +8129,48 @@ function usage(yargs, shim2) {
|
|
|
6360
8129
|
u = `${base$0} [${__("command")}]
|
|
6361
8130
|
`;
|
|
6362
8131
|
}
|
|
6363
|
-
|
|
8132
|
+
ui.div(`${u}`);
|
|
6364
8133
|
}
|
|
6365
8134
|
}
|
|
6366
8135
|
if (commands.length > 1 || commands.length === 1 && !commands[0][2]) {
|
|
6367
|
-
|
|
8136
|
+
ui.div(__("Commands:"));
|
|
6368
8137
|
const context = yargs.getInternalMethods().getContext();
|
|
6369
8138
|
const parentCommands = context.commands.length ? `${context.commands.join(" ")} ` : "";
|
|
6370
8139
|
if (yargs.getInternalMethods().getParserConfiguration()["sort-commands"] === true) {
|
|
6371
8140
|
commands = commands.sort((a, b) => a[0].localeCompare(b[0]));
|
|
6372
8141
|
}
|
|
6373
8142
|
const prefix = base$0 ? `${base$0} ` : "";
|
|
6374
|
-
commands.forEach((
|
|
6375
|
-
const commandString = `${prefix}${parentCommands}${
|
|
6376
|
-
|
|
8143
|
+
commands.forEach((command) => {
|
|
8144
|
+
const commandString = `${prefix}${parentCommands}${command[0].replace(/^\$0 ?/, "")}`;
|
|
8145
|
+
ui.span({
|
|
6377
8146
|
text: commandString,
|
|
6378
8147
|
padding: [0, 2, 0, 2],
|
|
6379
8148
|
width: maxWidth(commands, theWrap, `${base$0}${parentCommands}`) + 4
|
|
6380
|
-
}, { text:
|
|
8149
|
+
}, { text: command[1] });
|
|
6381
8150
|
const hints = [];
|
|
6382
|
-
if (
|
|
8151
|
+
if (command[2])
|
|
6383
8152
|
hints.push(`[${__("default")}]`);
|
|
6384
|
-
if (
|
|
6385
|
-
hints.push(`[${__("aliases:")} ${
|
|
8153
|
+
if (command[3] && command[3].length) {
|
|
8154
|
+
hints.push(`[${__("aliases:")} ${command[3].join(", ")}]`);
|
|
6386
8155
|
}
|
|
6387
|
-
if (
|
|
6388
|
-
if (typeof
|
|
6389
|
-
hints.push(`[${__("deprecated: %s",
|
|
8156
|
+
if (command[4]) {
|
|
8157
|
+
if (typeof command[4] === "string") {
|
|
8158
|
+
hints.push(`[${__("deprecated: %s", command[4])}]`);
|
|
6390
8159
|
} else {
|
|
6391
8160
|
hints.push(`[${__("deprecated")}]`);
|
|
6392
8161
|
}
|
|
6393
8162
|
}
|
|
6394
8163
|
if (hints.length) {
|
|
6395
|
-
|
|
8164
|
+
ui.div({
|
|
6396
8165
|
text: hints.join(" "),
|
|
6397
8166
|
padding: [0, 0, 0, 2],
|
|
6398
8167
|
align: "right"
|
|
6399
8168
|
});
|
|
6400
8169
|
} else {
|
|
6401
|
-
|
|
8170
|
+
ui.div();
|
|
6402
8171
|
}
|
|
6403
8172
|
});
|
|
6404
|
-
|
|
8173
|
+
ui.div();
|
|
6405
8174
|
}
|
|
6406
8175
|
const aliasKeys = (Object.keys(options.alias) || []).concat(Object.keys(yargs.parsed.newAliases) || []);
|
|
6407
8176
|
keys = keys.filter((key) => !yargs.parsed.newAliases[key] && aliasKeys.every((alias) => (options.alias[alias] || []).indexOf(key) === -1));
|
|
@@ -6445,7 +8214,7 @@ function usage(yargs, shim2) {
|
|
|
6445
8214
|
});
|
|
6446
8215
|
}
|
|
6447
8216
|
displayedGroups.forEach(({ groupName, normalizedKeys, switches }) => {
|
|
6448
|
-
|
|
8217
|
+
ui.div(groupName);
|
|
6449
8218
|
normalizedKeys.forEach((key) => {
|
|
6450
8219
|
const kswitch = switches[key];
|
|
6451
8220
|
let desc = descriptions[key] || "";
|
|
@@ -6472,32 +8241,32 @@ function usage(yargs, shim2) {
|
|
|
6472
8241
|
options.choices && options.choices[key] ? `[${__("choices:")} ${self.stringifiedValues(options.choices[key])}]` : null,
|
|
6473
8242
|
defaultString(options.default[key], options.defaultDescription[key])
|
|
6474
8243
|
].filter(Boolean).join(" ");
|
|
6475
|
-
|
|
8244
|
+
ui.span({
|
|
6476
8245
|
text: getText(kswitch),
|
|
6477
8246
|
padding: [0, 2, 0, 2 + getIndentation(kswitch)],
|
|
6478
8247
|
width: maxWidth(switches, theWrap) + 4
|
|
6479
8248
|
}, desc);
|
|
6480
8249
|
const shouldHideOptionExtras = yargs.getInternalMethods().getUsageConfiguration()["hide-types"] === true;
|
|
6481
8250
|
if (extra && !shouldHideOptionExtras)
|
|
6482
|
-
|
|
8251
|
+
ui.div({ text: extra, padding: [0, 0, 0, 2], align: "right" });
|
|
6483
8252
|
else
|
|
6484
|
-
|
|
8253
|
+
ui.div();
|
|
6485
8254
|
});
|
|
6486
|
-
|
|
8255
|
+
ui.div();
|
|
6487
8256
|
});
|
|
6488
8257
|
if (examples.length) {
|
|
6489
|
-
|
|
8258
|
+
ui.div(__("Examples:"));
|
|
6490
8259
|
examples.forEach((example) => {
|
|
6491
8260
|
example[0] = example[0].replace(/\$0/g, base$0);
|
|
6492
8261
|
});
|
|
6493
8262
|
examples.forEach((example) => {
|
|
6494
8263
|
if (example[1] === "") {
|
|
6495
|
-
|
|
8264
|
+
ui.div({
|
|
6496
8265
|
text: example[0],
|
|
6497
8266
|
padding: [0, 2, 0, 2]
|
|
6498
8267
|
});
|
|
6499
8268
|
} else {
|
|
6500
|
-
|
|
8269
|
+
ui.div({
|
|
6501
8270
|
text: example[0],
|
|
6502
8271
|
padding: [0, 2, 0, 2],
|
|
6503
8272
|
width: maxWidth(examples, theWrap) + 4
|
|
@@ -6506,15 +8275,15 @@ function usage(yargs, shim2) {
|
|
|
6506
8275
|
});
|
|
6507
8276
|
}
|
|
6508
8277
|
});
|
|
6509
|
-
|
|
8278
|
+
ui.div();
|
|
6510
8279
|
}
|
|
6511
8280
|
if (epilogs.length > 0) {
|
|
6512
8281
|
const e = epilogs.map((epilog) => epilog.replace(/\$0/g, base$0)).join(`
|
|
6513
8282
|
`);
|
|
6514
|
-
|
|
8283
|
+
ui.div(`${e}
|
|
6515
8284
|
`);
|
|
6516
8285
|
}
|
|
6517
|
-
return
|
|
8286
|
+
return ui.toString().replace(/\s*$/, "");
|
|
6518
8287
|
};
|
|
6519
8288
|
function maxWidth(table, theWrap, modifier) {
|
|
6520
8289
|
let width = 0;
|
|
@@ -6522,7 +8291,7 @@ function usage(yargs, shim2) {
|
|
|
6522
8291
|
table = Object.values(table).map((v) => [v]);
|
|
6523
8292
|
}
|
|
6524
8293
|
table.forEach((v) => {
|
|
6525
|
-
width = Math.max(
|
|
8294
|
+
width = Math.max(shim.stringWidth(modifier ? `${modifier} ${getText(v[0])}` : getText(v[0])) + getIndentation(v[0]), width);
|
|
6526
8295
|
});
|
|
6527
8296
|
if (theWrap)
|
|
6528
8297
|
width = Math.min(width, parseInt((theWrap * 0.5).toString(), 10));
|
|
@@ -6587,7 +8356,7 @@ function usage(yargs, shim2) {
|
|
|
6587
8356
|
emit(self.help());
|
|
6588
8357
|
};
|
|
6589
8358
|
self.functionDescription = (fn) => {
|
|
6590
|
-
const description = fn.name ?
|
|
8359
|
+
const description = fn.name ? shim.Parser.decamelize(fn.name, "-") : __("generated-value");
|
|
6591
8360
|
return ["(", description, ")"].join("");
|
|
6592
8361
|
};
|
|
6593
8362
|
self.stringifiedValues = function stringifiedValues(values, separator) {
|
|
@@ -6624,11 +8393,11 @@ function usage(yargs, shim2) {
|
|
|
6624
8393
|
return `${string}]`;
|
|
6625
8394
|
}
|
|
6626
8395
|
function windowWidth() {
|
|
6627
|
-
const
|
|
6628
|
-
if (
|
|
6629
|
-
return Math.min(
|
|
8396
|
+
const maxWidth = 80;
|
|
8397
|
+
if (shim.process.stdColumns) {
|
|
8398
|
+
return Math.min(maxWidth, shim.process.stdColumns);
|
|
6630
8399
|
} else {
|
|
6631
|
-
return
|
|
8400
|
+
return maxWidth;
|
|
6632
8401
|
}
|
|
6633
8402
|
}
|
|
6634
8403
|
let version = null;
|
|
@@ -6766,17 +8535,17 @@ fi
|
|
|
6766
8535
|
|
|
6767
8536
|
// ../../node_modules/.bun/yargs@18.0.0/node_modules/yargs/build/lib/completion.js
|
|
6768
8537
|
class Completion {
|
|
6769
|
-
constructor(yargs,
|
|
6770
|
-
var
|
|
8538
|
+
constructor(yargs, usage, command, shim) {
|
|
8539
|
+
var _a, _b, _c;
|
|
6771
8540
|
this.yargs = yargs;
|
|
6772
|
-
this.usage =
|
|
6773
|
-
this.command =
|
|
6774
|
-
this.shim =
|
|
8541
|
+
this.usage = usage;
|
|
8542
|
+
this.command = command;
|
|
8543
|
+
this.shim = shim;
|
|
6775
8544
|
this.completionKey = "get-yargs-completions";
|
|
6776
8545
|
this.aliases = null;
|
|
6777
8546
|
this.customCompletionFunction = null;
|
|
6778
8547
|
this.indexAfterLastReset = 0;
|
|
6779
|
-
this.zshShell = (
|
|
8548
|
+
this.zshShell = (_c = ((_a = this.shim.getEnv("SHELL")) === null || _a === undefined ? undefined : _a.includes("zsh")) || ((_b = this.shim.getEnv("ZSH_NAME")) === null || _b === undefined ? undefined : _b.includes("zsh"))) !== null && _c !== undefined ? _c : false;
|
|
6780
8549
|
}
|
|
6781
8550
|
defaultCompletion(args, argv, current, done) {
|
|
6782
8551
|
const handlers = this.command.getCommandHandlers();
|
|
@@ -6899,16 +8668,16 @@ class Completion {
|
|
|
6899
8668
|
return false;
|
|
6900
8669
|
}
|
|
6901
8670
|
completeOptionKey(key, completions, current, negable) {
|
|
6902
|
-
var
|
|
8671
|
+
var _a, _b, _c, _d;
|
|
6903
8672
|
let keyWithDesc = key;
|
|
6904
8673
|
if (this.zshShell) {
|
|
6905
8674
|
const descs = this.usage.getDescriptions();
|
|
6906
|
-
const aliasKey = (
|
|
6907
|
-
const
|
|
6908
|
-
return typeof
|
|
8675
|
+
const aliasKey = (_b = (_a = this === null || this === undefined ? undefined : this.aliases) === null || _a === undefined ? undefined : _a[key]) === null || _b === undefined ? undefined : _b.find((alias) => {
|
|
8676
|
+
const desc = descs[alias];
|
|
8677
|
+
return typeof desc === "string" && desc.length > 0;
|
|
6909
8678
|
});
|
|
6910
8679
|
const descFromAlias = aliasKey ? descs[aliasKey] : undefined;
|
|
6911
|
-
const desc = (_d = (
|
|
8680
|
+
const desc = (_d = (_c = descs[key]) !== null && _c !== undefined ? _c : descFromAlias) !== null && _d !== undefined ? _d : "";
|
|
6912
8681
|
keyWithDesc = `${key.replace(/:/g, "\\:")}:${desc.replace("__yargsString__:", "").replace(/(\r\n|\n|\r)/gm, " ")}`;
|
|
6913
8682
|
}
|
|
6914
8683
|
const startsByTwoDashes = (s) => /^--/.test(s);
|
|
@@ -6923,7 +8692,7 @@ class Completion {
|
|
|
6923
8692
|
assertNotStrictEqual(this.customCompletionFunction, null, this.shim);
|
|
6924
8693
|
if (isSyncCompletionFunction(this.customCompletionFunction)) {
|
|
6925
8694
|
const result = this.customCompletionFunction(current, argv);
|
|
6926
|
-
if (
|
|
8695
|
+
if (isPromise2(result)) {
|
|
6927
8696
|
return result.then((list) => {
|
|
6928
8697
|
this.shim.process.nextTick(() => {
|
|
6929
8698
|
done(null, list);
|
|
@@ -6948,8 +8717,8 @@ class Completion {
|
|
|
6948
8717
|
getCompletion(args, done) {
|
|
6949
8718
|
const current = args.length ? args[args.length - 1] : "";
|
|
6950
8719
|
const argv = this.yargs.parse(args, true);
|
|
6951
|
-
const completionFunction = this.customCompletionFunction ? (
|
|
6952
|
-
return
|
|
8720
|
+
const completionFunction = this.customCompletionFunction ? (argv) => this.customCompletion(args, argv, current, done) : (argv) => this.defaultCompletion(args, argv, current, done);
|
|
8721
|
+
return isPromise2(argv) ? argv.then(completionFunction) : completionFunction(argv);
|
|
6953
8722
|
}
|
|
6954
8723
|
generateCompletionScript($0, cmd) {
|
|
6955
8724
|
let script = this.zshShell ? completionZshTemplate : completionShTemplate;
|
|
@@ -6967,8 +8736,8 @@ class Completion {
|
|
|
6967
8736
|
this.aliases = parsed.aliases;
|
|
6968
8737
|
}
|
|
6969
8738
|
}
|
|
6970
|
-
function completion(yargs,
|
|
6971
|
-
return new Completion(yargs,
|
|
8739
|
+
function completion(yargs, usage, command, shim) {
|
|
8740
|
+
return new Completion(yargs, usage, command, shim);
|
|
6972
8741
|
}
|
|
6973
8742
|
function isSyncCompletionFunction(completionFunction) {
|
|
6974
8743
|
return completionFunction.length < 3;
|
|
@@ -7010,9 +8779,9 @@ function levenshtein(a, b) {
|
|
|
7010
8779
|
|
|
7011
8780
|
// ../../node_modules/.bun/yargs@18.0.0/node_modules/yargs/build/lib/validation.js
|
|
7012
8781
|
var specialKeys = ["$0", "--", "_"];
|
|
7013
|
-
function validation(yargs,
|
|
7014
|
-
const __ =
|
|
7015
|
-
const __n =
|
|
8782
|
+
function validation(yargs, usage, shim) {
|
|
8783
|
+
const __ = shim.y18n.__;
|
|
8784
|
+
const __n = shim.y18n.__n;
|
|
7016
8785
|
const self = {};
|
|
7017
8786
|
self.nonOptionCount = function nonOptionCount(argv) {
|
|
7018
8787
|
const demandedCommands = yargs.getDemandedCommands();
|
|
@@ -7021,22 +8790,22 @@ function validation(yargs, usage2, shim2) {
|
|
|
7021
8790
|
if (demandedCommands._ && (_s < demandedCommands._.min || _s > demandedCommands._.max)) {
|
|
7022
8791
|
if (_s < demandedCommands._.min) {
|
|
7023
8792
|
if (demandedCommands._.minMsg !== undefined) {
|
|
7024
|
-
|
|
8793
|
+
usage.fail(demandedCommands._.minMsg ? demandedCommands._.minMsg.replace(/\$0/g, _s.toString()).replace(/\$1/, demandedCommands._.min.toString()) : null);
|
|
7025
8794
|
} else {
|
|
7026
|
-
|
|
8795
|
+
usage.fail(__n("Not enough non-option arguments: got %s, need at least %s", "Not enough non-option arguments: got %s, need at least %s", _s, _s.toString(), demandedCommands._.min.toString()));
|
|
7027
8796
|
}
|
|
7028
8797
|
} else if (_s > demandedCommands._.max) {
|
|
7029
8798
|
if (demandedCommands._.maxMsg !== undefined) {
|
|
7030
|
-
|
|
8799
|
+
usage.fail(demandedCommands._.maxMsg ? demandedCommands._.maxMsg.replace(/\$0/g, _s.toString()).replace(/\$1/, demandedCommands._.max.toString()) : null);
|
|
7031
8800
|
} else {
|
|
7032
|
-
|
|
8801
|
+
usage.fail(__n("Too many non-option arguments: got %s, maximum of %s", "Too many non-option arguments: got %s, maximum of %s", _s, _s.toString(), demandedCommands._.max.toString()));
|
|
7033
8802
|
}
|
|
7034
8803
|
}
|
|
7035
8804
|
}
|
|
7036
8805
|
};
|
|
7037
8806
|
self.positionalCount = function positionalCount(required, observed) {
|
|
7038
8807
|
if (observed < required) {
|
|
7039
|
-
|
|
8808
|
+
usage.fail(__n("Not enough non-option arguments: got %s, need at least %s", "Not enough non-option arguments: got %s, need at least %s", observed, observed + "", required + ""));
|
|
7040
8809
|
}
|
|
7041
8810
|
};
|
|
7042
8811
|
self.requiredArguments = function requiredArguments(argv, demandedOptions) {
|
|
@@ -7058,11 +8827,11 @@ function validation(yargs, usage2, shim2) {
|
|
|
7058
8827
|
const customMsg = customMsgs.length ? `
|
|
7059
8828
|
${customMsgs.join(`
|
|
7060
8829
|
`)}` : "";
|
|
7061
|
-
|
|
8830
|
+
usage.fail(__n("Missing required argument: %s", "Missing required arguments: %s", Object.keys(missing).length, Object.keys(missing).join(", ") + customMsg));
|
|
7062
8831
|
}
|
|
7063
8832
|
};
|
|
7064
8833
|
self.unknownArguments = function unknownArguments(argv, aliases, positionalMap, isDefaultCommand, checkPositionals = true) {
|
|
7065
|
-
var
|
|
8834
|
+
var _a;
|
|
7066
8835
|
const commandKeys = yargs.getInternalMethods().getCommandInstance().getCommands();
|
|
7067
8836
|
const unknown = [];
|
|
7068
8837
|
const currentContext = yargs.getInternalMethods().getContext();
|
|
@@ -7080,7 +8849,7 @@ ${customMsgs.join(`
|
|
|
7080
8849
|
}
|
|
7081
8850
|
if (checkPositionals) {
|
|
7082
8851
|
const demandedCommands = yargs.getDemandedCommands();
|
|
7083
|
-
const maxNonOptDemanded = ((
|
|
8852
|
+
const maxNonOptDemanded = ((_a = demandedCommands._) === null || _a === undefined ? undefined : _a.max) || 0;
|
|
7084
8853
|
const expected = currentContext.commands.length + maxNonOptDemanded;
|
|
7085
8854
|
if (expected < argv._.length) {
|
|
7086
8855
|
argv._.slice(expected).forEach((key) => {
|
|
@@ -7092,7 +8861,7 @@ ${customMsgs.join(`
|
|
|
7092
8861
|
}
|
|
7093
8862
|
}
|
|
7094
8863
|
if (unknown.length) {
|
|
7095
|
-
|
|
8864
|
+
usage.fail(__n("Unknown argument: %s", "Unknown arguments: %s", unknown.length, unknown.map((s) => s.trim() ? s : `"${s}"`).join(", ")));
|
|
7096
8865
|
}
|
|
7097
8866
|
};
|
|
7098
8867
|
self.unknownCommands = function unknownCommands(argv) {
|
|
@@ -7107,7 +8876,7 @@ ${customMsgs.join(`
|
|
|
7107
8876
|
});
|
|
7108
8877
|
}
|
|
7109
8878
|
if (unknown.length > 0) {
|
|
7110
|
-
|
|
8879
|
+
usage.fail(__n("Unknown command: %s", "Unknown commands: %s", unknown.length, unknown.join(", ")));
|
|
7111
8880
|
return true;
|
|
7112
8881
|
} else {
|
|
7113
8882
|
return false;
|
|
@@ -7140,9 +8909,9 @@ ${customMsgs.join(`
|
|
|
7140
8909
|
let msg = __("Invalid values:");
|
|
7141
8910
|
invalidKeys.forEach((key) => {
|
|
7142
8911
|
msg += `
|
|
7143
|
-
${__("Argument: %s, Given: %s, Choices: %s", key,
|
|
8912
|
+
${__("Argument: %s, Given: %s, Choices: %s", key, usage.stringifiedValues(invalid[key]), usage.stringifiedValues(options.choices[key]))}`;
|
|
7144
8913
|
});
|
|
7145
|
-
|
|
8914
|
+
usage.fail(msg);
|
|
7146
8915
|
};
|
|
7147
8916
|
let implied = {};
|
|
7148
8917
|
self.implies = function implies(key, value) {
|
|
@@ -7159,7 +8928,7 @@ ${customMsgs.join(`
|
|
|
7159
8928
|
if (Array.isArray(value)) {
|
|
7160
8929
|
value.forEach((i) => self.implies(key, i));
|
|
7161
8930
|
} else {
|
|
7162
|
-
assertNotStrictEqual(value, undefined,
|
|
8931
|
+
assertNotStrictEqual(value, undefined, shim);
|
|
7163
8932
|
implied[key].push(value);
|
|
7164
8933
|
}
|
|
7165
8934
|
}
|
|
@@ -7185,11 +8954,11 @@ ${customMsgs.join(`
|
|
|
7185
8954
|
Object.keys(implied).forEach((key) => {
|
|
7186
8955
|
const origKey = key;
|
|
7187
8956
|
(implied[key] || []).forEach((value) => {
|
|
7188
|
-
let
|
|
8957
|
+
let key = origKey;
|
|
7189
8958
|
const origValue = value;
|
|
7190
|
-
|
|
8959
|
+
key = keyExists(argv, key);
|
|
7191
8960
|
value = keyExists(argv, value);
|
|
7192
|
-
if (
|
|
8961
|
+
if (key && !value) {
|
|
7193
8962
|
implyFail.push(` ${origKey} -> ${origValue}`);
|
|
7194
8963
|
}
|
|
7195
8964
|
});
|
|
@@ -7200,7 +8969,7 @@ ${customMsgs.join(`
|
|
|
7200
8969
|
implyFail.forEach((value) => {
|
|
7201
8970
|
msg += value;
|
|
7202
8971
|
});
|
|
7203
|
-
|
|
8972
|
+
usage.fail(msg);
|
|
7204
8973
|
}
|
|
7205
8974
|
};
|
|
7206
8975
|
let conflicting = {};
|
|
@@ -7228,7 +8997,7 @@ ${customMsgs.join(`
|
|
|
7228
8997
|
if (conflicting[key]) {
|
|
7229
8998
|
conflicting[key].forEach((value) => {
|
|
7230
8999
|
if (value && argv[key] !== undefined && argv[value] !== undefined) {
|
|
7231
|
-
|
|
9000
|
+
usage.fail(__("Arguments %s and %s are mutually exclusive", key, value));
|
|
7232
9001
|
}
|
|
7233
9002
|
});
|
|
7234
9003
|
}
|
|
@@ -7236,8 +9005,8 @@ ${customMsgs.join(`
|
|
|
7236
9005
|
if (yargs.getInternalMethods().getParserConfiguration()["strip-dashed"]) {
|
|
7237
9006
|
Object.keys(conflicting).forEach((key) => {
|
|
7238
9007
|
conflicting[key].forEach((value) => {
|
|
7239
|
-
if (value && argv[
|
|
7240
|
-
|
|
9008
|
+
if (value && argv[shim.Parser.camelCase(key)] !== undefined && argv[shim.Parser.camelCase(value)] !== undefined) {
|
|
9009
|
+
usage.fail(__("Arguments %s and %s are mutually exclusive", key, value));
|
|
7241
9010
|
}
|
|
7242
9011
|
});
|
|
7243
9012
|
});
|
|
@@ -7256,7 +9025,7 @@ ${customMsgs.join(`
|
|
|
7256
9025
|
}
|
|
7257
9026
|
}
|
|
7258
9027
|
if (recommended)
|
|
7259
|
-
|
|
9028
|
+
usage.fail(__("Did you mean %s?", recommended));
|
|
7260
9029
|
};
|
|
7261
9030
|
self.reset = function reset(localLookup) {
|
|
7262
9031
|
implied = objFilter(implied, (k) => !localLookup[k]);
|
|
@@ -7272,7 +9041,7 @@ ${customMsgs.join(`
|
|
|
7272
9041
|
};
|
|
7273
9042
|
self.unfreeze = function unfreeze() {
|
|
7274
9043
|
const frozen = frozens.pop();
|
|
7275
|
-
assertNotStrictEqual(frozen, undefined,
|
|
9044
|
+
assertNotStrictEqual(frozen, undefined, shim);
|
|
7276
9045
|
({ implied, conflicting } = frozen);
|
|
7277
9046
|
};
|
|
7278
9047
|
return self;
|
|
@@ -7317,12 +9086,12 @@ function getPathToDefaultConfig(cwd, pathToExtend) {
|
|
|
7317
9086
|
}
|
|
7318
9087
|
function mergeDeep(config1, config2) {
|
|
7319
9088
|
const target = {};
|
|
7320
|
-
function
|
|
9089
|
+
function isObject(obj) {
|
|
7321
9090
|
return obj && typeof obj === "object" && !Array.isArray(obj);
|
|
7322
9091
|
}
|
|
7323
9092
|
Object.assign(target, config1);
|
|
7324
9093
|
for (const key of Object.keys(config2)) {
|
|
7325
|
-
if (
|
|
9094
|
+
if (isObject(config2[key]) && isObject(target[key])) {
|
|
7326
9095
|
target[key] = mergeDeep(config1[key], config2[key]);
|
|
7327
9096
|
} else {
|
|
7328
9097
|
target[key] = config2[key];
|
|
@@ -7436,7 +9205,7 @@ var kTrackManuallySetKeys = Symbol("kTrackManuallySetKeys");
|
|
|
7436
9205
|
var DEFAULT_LOCALE = "en_US";
|
|
7437
9206
|
|
|
7438
9207
|
class YargsInstance {
|
|
7439
|
-
constructor(processArgs = [], cwd, parentRequire,
|
|
9208
|
+
constructor(processArgs = [], cwd, parentRequire, shim) {
|
|
7440
9209
|
this.customScriptName = false;
|
|
7441
9210
|
this.parsed = false;
|
|
7442
9211
|
_YargsInstance_command.set(this, undefined);
|
|
@@ -7474,7 +9243,7 @@ class YargsInstance {
|
|
|
7474
9243
|
_YargsInstance_usageConfig.set(this, {});
|
|
7475
9244
|
_YargsInstance_versionOpt.set(this, null);
|
|
7476
9245
|
_YargsInstance_validation.set(this, undefined);
|
|
7477
|
-
__classPrivateFieldSet(this, _YargsInstance_shim,
|
|
9246
|
+
__classPrivateFieldSet(this, _YargsInstance_shim, shim, "f");
|
|
7478
9247
|
__classPrivateFieldSet(this, _YargsInstance_processArgs, processArgs, "f");
|
|
7479
9248
|
__classPrivateFieldSet(this, _YargsInstance_cwd, cwd, "f");
|
|
7480
9249
|
__classPrivateFieldSet(this, _YargsInstance_parentRequire, parentRequire, "f");
|
|
@@ -7582,8 +9351,8 @@ class YargsInstance {
|
|
|
7582
9351
|
const coerceKey = keys;
|
|
7583
9352
|
__classPrivateFieldGet(this, _YargsInstance_options, "f").key[coerceKey] = true;
|
|
7584
9353
|
__classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").addCoerceMiddleware((argv, yargs) => {
|
|
7585
|
-
var
|
|
7586
|
-
const coerceKeyAliases = (
|
|
9354
|
+
var _a;
|
|
9355
|
+
const coerceKeyAliases = (_a = yargs.getAliases()[coerceKey]) !== null && _a !== undefined ? _a : [];
|
|
7587
9356
|
const argvKeys = [coerceKey, ...coerceKeyAliases].filter((key) => Object.prototype.hasOwnProperty.call(argv, key));
|
|
7588
9357
|
if (argvKeys.length === 0) {
|
|
7589
9358
|
return argv;
|
|
@@ -7790,12 +9559,12 @@ class YargsInstance {
|
|
|
7790
9559
|
async getCompletion(args, done) {
|
|
7791
9560
|
argsert("<array> [function]", [args, done], arguments.length);
|
|
7792
9561
|
if (!done) {
|
|
7793
|
-
return new Promise((
|
|
9562
|
+
return new Promise((resolve, reject) => {
|
|
7794
9563
|
__classPrivateFieldGet(this, _YargsInstance_completion, "f").getCompletion(args, (err, completions) => {
|
|
7795
9564
|
if (err)
|
|
7796
9565
|
reject(err);
|
|
7797
9566
|
else
|
|
7798
|
-
|
|
9567
|
+
resolve(completions);
|
|
7799
9568
|
});
|
|
7800
9569
|
});
|
|
7801
9570
|
} else {
|
|
@@ -7828,14 +9597,14 @@ class YargsInstance {
|
|
|
7828
9597
|
if (!__classPrivateFieldGet(this, _YargsInstance_usage, "f").hasCachedHelpMessage()) {
|
|
7829
9598
|
if (!this.parsed) {
|
|
7830
9599
|
const parse = this[kRunYargsParserAndExecuteCommands](__classPrivateFieldGet(this, _YargsInstance_processArgs, "f"), undefined, undefined, 0, true);
|
|
7831
|
-
if (
|
|
9600
|
+
if (isPromise2(parse)) {
|
|
7832
9601
|
return parse.then(() => {
|
|
7833
9602
|
return __classPrivateFieldGet(this, _YargsInstance_usage, "f").help();
|
|
7834
9603
|
});
|
|
7835
9604
|
}
|
|
7836
9605
|
}
|
|
7837
9606
|
const builderResponse = __classPrivateFieldGet(this, _YargsInstance_command, "f").runDefaultBuilderOn(this);
|
|
7838
|
-
if (
|
|
9607
|
+
if (isPromise2(builderResponse)) {
|
|
7839
9608
|
return builderResponse.then(() => {
|
|
7840
9609
|
return __classPrivateFieldGet(this, _YargsInstance_usage, "f").help();
|
|
7841
9610
|
});
|
|
@@ -8054,7 +9823,7 @@ class YargsInstance {
|
|
|
8054
9823
|
const parsed = this[kRunYargsParserAndExecuteCommands](args, !!shortCircuit);
|
|
8055
9824
|
const tmpParsed = this.parsed;
|
|
8056
9825
|
__classPrivateFieldGet(this, _YargsInstance_completion, "f").setParsed(this.parsed);
|
|
8057
|
-
if (
|
|
9826
|
+
if (isPromise2(parsed)) {
|
|
8058
9827
|
return parsed.then((argv) => {
|
|
8059
9828
|
if (__classPrivateFieldGet(this, _YargsInstance_parseFn, "f"))
|
|
8060
9829
|
__classPrivateFieldGet(this, _YargsInstance_parseFn, "f").call(this, __classPrivateFieldGet(this, _YargsInstance_exitError, "f"), argv, __classPrivateFieldGet(this, _YargsInstance_output, "f"));
|
|
@@ -8078,11 +9847,11 @@ class YargsInstance {
|
|
|
8078
9847
|
}
|
|
8079
9848
|
parseAsync(args, shortCircuit, _parseFn) {
|
|
8080
9849
|
const maybePromise = this.parse(args, shortCircuit, _parseFn);
|
|
8081
|
-
return !
|
|
9850
|
+
return !isPromise2(maybePromise) ? Promise.resolve(maybePromise) : maybePromise;
|
|
8082
9851
|
}
|
|
8083
9852
|
parseSync(args, shortCircuit, _parseFn) {
|
|
8084
9853
|
const maybePromise = this.parse(args, shortCircuit, _parseFn);
|
|
8085
|
-
if (
|
|
9854
|
+
if (isPromise2(maybePromise)) {
|
|
8086
9855
|
throw new YError(".parseSync() must not be used with asynchronous builders, handlers, or middleware");
|
|
8087
9856
|
}
|
|
8088
9857
|
return maybePromise;
|
|
@@ -8175,7 +9944,7 @@ class YargsInstance {
|
|
|
8175
9944
|
if (!__classPrivateFieldGet(this, _YargsInstance_usage, "f").hasCachedHelpMessage()) {
|
|
8176
9945
|
if (!this.parsed) {
|
|
8177
9946
|
const parse = this[kRunYargsParserAndExecuteCommands](__classPrivateFieldGet(this, _YargsInstance_processArgs, "f"), undefined, undefined, 0, true);
|
|
8178
|
-
if (
|
|
9947
|
+
if (isPromise2(parse)) {
|
|
8179
9948
|
parse.then(() => {
|
|
8180
9949
|
__classPrivateFieldGet(this, _YargsInstance_usage, "f").showHelp(level);
|
|
8181
9950
|
});
|
|
@@ -8183,7 +9952,7 @@ class YargsInstance {
|
|
|
8183
9952
|
}
|
|
8184
9953
|
}
|
|
8185
9954
|
const builderResponse = __classPrivateFieldGet(this, _YargsInstance_command, "f").runDefaultBuilderOn(this);
|
|
8186
|
-
if (
|
|
9955
|
+
if (isPromise2(builderResponse)) {
|
|
8187
9956
|
builderResponse.then(() => {
|
|
8188
9957
|
__classPrivateFieldGet(this, _YargsInstance_usage, "f").showHelp(level);
|
|
8189
9958
|
});
|
|
@@ -8445,13 +10214,13 @@ class YargsInstance {
|
|
|
8445
10214
|
});
|
|
8446
10215
|
}
|
|
8447
10216
|
[kPopulateParserHintSingleValueDictionary](builder, type, key, value) {
|
|
8448
|
-
this[kPopulateParserHintDictionary](builder, type, key, value, (
|
|
8449
|
-
__classPrivateFieldGet(this, _YargsInstance_options, "f")[
|
|
10217
|
+
this[kPopulateParserHintDictionary](builder, type, key, value, (type, key, value) => {
|
|
10218
|
+
__classPrivateFieldGet(this, _YargsInstance_options, "f")[type][key] = value;
|
|
8450
10219
|
});
|
|
8451
10220
|
}
|
|
8452
10221
|
[kPopulateParserHintArrayDictionary](builder, type, key, value) {
|
|
8453
|
-
this[kPopulateParserHintDictionary](builder, type, key, value, (
|
|
8454
|
-
__classPrivateFieldGet(this, _YargsInstance_options, "f")[
|
|
10222
|
+
this[kPopulateParserHintDictionary](builder, type, key, value, (type, key, value) => {
|
|
10223
|
+
__classPrivateFieldGet(this, _YargsInstance_options, "f")[type][key] = (__classPrivateFieldGet(this, _YargsInstance_options, "f")[type][key] || []).concat(value);
|
|
8455
10224
|
});
|
|
8456
10225
|
}
|
|
8457
10226
|
[kPopulateParserHintDictionary](builder, type, key, value, singleKeyHandler) {
|
|
@@ -8459,7 +10228,7 @@ class YargsInstance {
|
|
|
8459
10228
|
key.forEach((k) => {
|
|
8460
10229
|
builder(k, value);
|
|
8461
10230
|
});
|
|
8462
|
-
} else if (((
|
|
10231
|
+
} else if (((key) => typeof key === "object")(key)) {
|
|
8463
10232
|
for (const k of objectKeys(key)) {
|
|
8464
10233
|
builder(k, key[k]);
|
|
8465
10234
|
}
|
|
@@ -8477,20 +10246,20 @@ class YargsInstance {
|
|
|
8477
10246
|
return this;
|
|
8478
10247
|
}
|
|
8479
10248
|
[kUnfreeze]() {
|
|
8480
|
-
var
|
|
10249
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
8481
10250
|
const frozen = __classPrivateFieldGet(this, _YargsInstance_frozens, "f").pop();
|
|
8482
10251
|
assertNotStrictEqual(frozen, undefined, __classPrivateFieldGet(this, _YargsInstance_shim, "f"));
|
|
8483
10252
|
let configObjects;
|
|
8484
|
-
|
|
10253
|
+
_a = this, _b = this, _c = this, _d = this, _e = this, _f = this, _g = this, _h = this, _j = this, _k = this, _l = this, _m = this, {
|
|
8485
10254
|
options: { set value(_o) {
|
|
8486
|
-
__classPrivateFieldSet(
|
|
10255
|
+
__classPrivateFieldSet(_a, _YargsInstance_options, _o, "f");
|
|
8487
10256
|
} }.value,
|
|
8488
10257
|
configObjects,
|
|
8489
10258
|
exitProcess: { set value(_o) {
|
|
8490
|
-
__classPrivateFieldSet(
|
|
10259
|
+
__classPrivateFieldSet(_b, _YargsInstance_exitProcess, _o, "f");
|
|
8491
10260
|
} }.value,
|
|
8492
10261
|
groups: { set value(_o) {
|
|
8493
|
-
__classPrivateFieldSet(
|
|
10262
|
+
__classPrivateFieldSet(_c, _YargsInstance_groups, _o, "f");
|
|
8494
10263
|
} }.value,
|
|
8495
10264
|
output: { set value(_o) {
|
|
8496
10265
|
__classPrivateFieldSet(_d, _YargsInstance_output, _o, "f");
|
|
@@ -8527,9 +10296,9 @@ class YargsInstance {
|
|
|
8527
10296
|
__classPrivateFieldGet(this, _YargsInstance_command, "f").unfreeze();
|
|
8528
10297
|
__classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").unfreeze();
|
|
8529
10298
|
}
|
|
8530
|
-
[kValidateAsync](
|
|
10299
|
+
[kValidateAsync](validation, argv) {
|
|
8531
10300
|
return maybeAsyncResult(argv, (result) => {
|
|
8532
|
-
|
|
10301
|
+
validation(result);
|
|
8533
10302
|
return result;
|
|
8534
10303
|
});
|
|
8535
10304
|
}
|
|
@@ -8583,7 +10352,7 @@ class YargsInstance {
|
|
|
8583
10352
|
[kPostProcess](argv, populateDoubleDash, calledFromCommand, runGlobalMiddleware) {
|
|
8584
10353
|
if (calledFromCommand)
|
|
8585
10354
|
return argv;
|
|
8586
|
-
if (
|
|
10355
|
+
if (isPromise2(argv))
|
|
8587
10356
|
return argv;
|
|
8588
10357
|
if (!populateDoubleDash) {
|
|
8589
10358
|
argv = this[kCopyDoubleDash](argv);
|
|
@@ -8640,10 +10409,10 @@ class YargsInstance {
|
|
|
8640
10409
|
"deprecatedOptions"
|
|
8641
10410
|
];
|
|
8642
10411
|
arrayOptions.forEach((k) => {
|
|
8643
|
-
tmpOptions[k] = (__classPrivateFieldGet(this, _YargsInstance_options, "f")[k] || []).filter((
|
|
10412
|
+
tmpOptions[k] = (__classPrivateFieldGet(this, _YargsInstance_options, "f")[k] || []).filter((k) => !localLookup[k]);
|
|
8644
10413
|
});
|
|
8645
10414
|
objectOptions.forEach((k) => {
|
|
8646
|
-
tmpOptions[k] = objFilter(__classPrivateFieldGet(this, _YargsInstance_options, "f")[k], (
|
|
10415
|
+
tmpOptions[k] = objFilter(__classPrivateFieldGet(this, _YargsInstance_options, "f")[k], (k) => !localLookup[k]);
|
|
8647
10416
|
});
|
|
8648
10417
|
tmpOptions.envPrefix = __classPrivateFieldGet(this, _YargsInstance_options, "f").envPrefix;
|
|
8649
10418
|
__classPrivateFieldSet(this, _YargsInstance_options, tmpOptions, "f");
|
|
@@ -8664,7 +10433,7 @@ class YargsInstance {
|
|
|
8664
10433
|
return __classPrivateFieldGet(this, _YargsInstance_shim, "f").path.relative(base, dir);
|
|
8665
10434
|
}
|
|
8666
10435
|
[kRunYargsParserAndExecuteCommands](args, shortCircuit, calledFromCommand, commandIndex = 0, helpOnly = false) {
|
|
8667
|
-
var
|
|
10436
|
+
var _a, _b, _c, _d;
|
|
8668
10437
|
let skipValidation = !!calledFromCommand || helpOnly;
|
|
8669
10438
|
args = args || __classPrivateFieldGet(this, _YargsInstance_processArgs, "f");
|
|
8670
10439
|
__classPrivateFieldGet(this, _YargsInstance_options, "f").__ = __classPrivateFieldGet(this, _YargsInstance_shim, "f").y18n.__;
|
|
@@ -8707,9 +10476,9 @@ class YargsInstance {
|
|
|
8707
10476
|
}
|
|
8708
10477
|
__classPrivateFieldSet(this, _YargsInstance_isGlobalContext, false, "f");
|
|
8709
10478
|
const handlerKeys = __classPrivateFieldGet(this, _YargsInstance_command, "f").getCommands();
|
|
8710
|
-
const requestCompletions = ((
|
|
8711
|
-
(
|
|
8712
|
-
...(_d = this.getAliases()[(
|
|
10479
|
+
const requestCompletions = ((_a = __classPrivateFieldGet(this, _YargsInstance_completion, "f")) === null || _a === undefined ? undefined : _a.completionKey) ? [
|
|
10480
|
+
(_b = __classPrivateFieldGet(this, _YargsInstance_completion, "f")) === null || _b === undefined ? undefined : _b.completionKey,
|
|
10481
|
+
...(_d = this.getAliases()[(_c = __classPrivateFieldGet(this, _YargsInstance_completion, "f")) === null || _c === undefined ? undefined : _c.completionKey]) !== null && _d !== undefined ? _d : []
|
|
8713
10482
|
].some((key) => Object.prototype.hasOwnProperty.call(argv, key)) : false;
|
|
8714
10483
|
const skipRecommendation = helpOptSet || requestCompletions || helpOnly;
|
|
8715
10484
|
if (argv._.length) {
|
|
@@ -8748,8 +10517,8 @@ class YargsInstance {
|
|
|
8748
10517
|
__classPrivateFieldGet(this, _YargsInstance_completion, "f").getCompletion(completionArgs, (err, completions) => {
|
|
8749
10518
|
if (err)
|
|
8750
10519
|
throw new YError(err.message);
|
|
8751
|
-
(completions || []).forEach((
|
|
8752
|
-
__classPrivateFieldGet(this, _YargsInstance_logger, "f").log(
|
|
10520
|
+
(completions || []).forEach((completion) => {
|
|
10521
|
+
__classPrivateFieldGet(this, _YargsInstance_logger, "f").log(completion);
|
|
8753
10522
|
});
|
|
8754
10523
|
this.exit(0);
|
|
8755
10524
|
});
|
|
@@ -8779,12 +10548,12 @@ class YargsInstance {
|
|
|
8779
10548
|
if (parsed.error)
|
|
8780
10549
|
throw new YError(parsed.error.message);
|
|
8781
10550
|
if (!requestCompletions) {
|
|
8782
|
-
const
|
|
10551
|
+
const validation = this[kRunValidation](aliases, {}, parsed.error);
|
|
8783
10552
|
if (!calledFromCommand) {
|
|
8784
10553
|
argvPromise = applyMiddleware(argv, this, __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").getMiddleware(), true);
|
|
8785
10554
|
}
|
|
8786
|
-
argvPromise = this[kValidateAsync](
|
|
8787
|
-
if (
|
|
10555
|
+
argvPromise = this[kValidateAsync](validation, argvPromise !== null && argvPromise !== undefined ? argvPromise : argv);
|
|
10556
|
+
if (isPromise2(argvPromise) && !calledFromCommand) {
|
|
8788
10557
|
argvPromise = argvPromise.then(() => {
|
|
8789
10558
|
return applyMiddleware(argv, this, __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").getMiddleware(), false);
|
|
8790
10559
|
});
|
|
@@ -8843,7 +10612,7 @@ var yargs_default = Yargs;
|
|
|
8843
10612
|
// package.json
|
|
8844
10613
|
var package_default = {
|
|
8845
10614
|
name: "@gitterm/cli",
|
|
8846
|
-
version: "0.0
|
|
10615
|
+
version: "0.1.0",
|
|
8847
10616
|
description: "Complete suit of gitterm tools in one CLI",
|
|
8848
10617
|
keywords: [
|
|
8849
10618
|
"gitterm",
|
|
@@ -9443,8 +11212,8 @@ var onetime = (function_, options = {}) => {
|
|
|
9443
11212
|
let returnValue;
|
|
9444
11213
|
let callCount = 0;
|
|
9445
11214
|
const functionName = function_.displayName || function_.name || "<anonymous>";
|
|
9446
|
-
const
|
|
9447
|
-
calledFunctions.set(
|
|
11215
|
+
const onetime = function(...arguments_) {
|
|
11216
|
+
calledFunctions.set(onetime, ++callCount);
|
|
9448
11217
|
if (callCount === 1) {
|
|
9449
11218
|
returnValue = function_.apply(this, arguments_);
|
|
9450
11219
|
function_ = undefined;
|
|
@@ -9453,9 +11222,9 @@ var onetime = (function_, options = {}) => {
|
|
|
9453
11222
|
}
|
|
9454
11223
|
return returnValue;
|
|
9455
11224
|
};
|
|
9456
|
-
mimicFunction(
|
|
9457
|
-
calledFunctions.set(
|
|
9458
|
-
return
|
|
11225
|
+
mimicFunction(onetime, function_);
|
|
11226
|
+
calledFunctions.set(onetime, callCount);
|
|
11227
|
+
return onetime;
|
|
9459
11228
|
};
|
|
9460
11229
|
onetime.callCount = (function_) => {
|
|
9461
11230
|
if (!calledFunctions.has(function_)) {
|
|
@@ -9476,7 +11245,7 @@ if (process.platform === "linux") {
|
|
|
9476
11245
|
}
|
|
9477
11246
|
|
|
9478
11247
|
// ../../node_modules/.bun/signal-exit@4.1.0/node_modules/signal-exit/dist/mjs/index.js
|
|
9479
|
-
var processOk = (
|
|
11248
|
+
var processOk = (process2) => !!process2 && typeof process2 === "object" && typeof process2.removeListener === "function" && typeof process2.emit === "function" && typeof process2.reallyExit === "function" && typeof process2.listeners === "function" && typeof process2.kill === "function" && typeof process2.pid === "number" && typeof process2.on === "function";
|
|
9480
11249
|
var kExitEmitter = Symbol.for("signal-exit emitter");
|
|
9481
11250
|
var global = globalThis;
|
|
9482
11251
|
var ObjectDefineProperty = Object.defineProperty.bind(Object);
|
|
@@ -9566,15 +11335,15 @@ class SignalExit extends SignalExitBase {
|
|
|
9566
11335
|
#originalProcessReallyExit;
|
|
9567
11336
|
#sigListeners = {};
|
|
9568
11337
|
#loaded = false;
|
|
9569
|
-
constructor(
|
|
11338
|
+
constructor(process2) {
|
|
9570
11339
|
super();
|
|
9571
|
-
this.#process =
|
|
11340
|
+
this.#process = process2;
|
|
9572
11341
|
this.#sigListeners = {};
|
|
9573
11342
|
for (const sig of signals) {
|
|
9574
11343
|
this.#sigListeners[sig] = () => {
|
|
9575
11344
|
const listeners = this.#process.listeners(sig);
|
|
9576
11345
|
let { count } = this.#emitter;
|
|
9577
|
-
const p =
|
|
11346
|
+
const p = process2;
|
|
9578
11347
|
if (typeof p.__signal_exit_emitter__ === "object" && typeof p.__signal_exit_emitter__.count === "number") {
|
|
9579
11348
|
count += p.__signal_exit_emitter__.count;
|
|
9580
11349
|
}
|
|
@@ -9583,12 +11352,12 @@ class SignalExit extends SignalExitBase {
|
|
|
9583
11352
|
const ret = this.#emitter.emit("exit", null, sig);
|
|
9584
11353
|
const s = sig === "SIGHUP" ? this.#hupSig : sig;
|
|
9585
11354
|
if (!ret)
|
|
9586
|
-
|
|
11355
|
+
process2.kill(process2.pid, s);
|
|
9587
11356
|
}
|
|
9588
11357
|
};
|
|
9589
11358
|
}
|
|
9590
|
-
this.#originalProcessReallyExit =
|
|
9591
|
-
this.#originalProcessEmit =
|
|
11359
|
+
this.#originalProcessReallyExit = process2.reallyExit;
|
|
11360
|
+
this.#originalProcessEmit = process2.emit;
|
|
9592
11361
|
}
|
|
9593
11362
|
onExit(cb, opts) {
|
|
9594
11363
|
if (!processOk(this.#process)) {
|
|
@@ -9674,10 +11443,10 @@ var {
|
|
|
9674
11443
|
} = signalExitWrap(processOk(process3) ? new SignalExit(process3) : new SignalExitFallback);
|
|
9675
11444
|
|
|
9676
11445
|
// ../../node_modules/.bun/restore-cursor@5.1.0/node_modules/restore-cursor/index.js
|
|
9677
|
-
var
|
|
9678
|
-
var restoreCursor =
|
|
11446
|
+
var terminal2 = process4.stderr.isTTY ? process4.stderr : process4.stdout.isTTY ? process4.stdout : undefined;
|
|
11447
|
+
var restoreCursor = terminal2 ? onetime_default(() => {
|
|
9679
11448
|
onExit(() => {
|
|
9680
|
-
|
|
11449
|
+
terminal2.write("\x1B[?25h");
|
|
9681
11450
|
}, { alwaysLast: true });
|
|
9682
11451
|
}) : () => {};
|
|
9683
11452
|
var restore_cursor_default = restoreCursor;
|
|
@@ -9748,12 +11517,12 @@ function isInteractive({ stream = process.stdout } = {}) {
|
|
|
9748
11517
|
// ../../node_modules/.bun/is-unicode-supported@2.1.0/node_modules/is-unicode-supported/index.js
|
|
9749
11518
|
import process7 from "node:process";
|
|
9750
11519
|
function isUnicodeSupported2() {
|
|
9751
|
-
const { env
|
|
9752
|
-
const { TERM, TERM_PROGRAM } =
|
|
11520
|
+
const { env } = process7;
|
|
11521
|
+
const { TERM, TERM_PROGRAM } = env;
|
|
9753
11522
|
if (process7.platform !== "win32") {
|
|
9754
11523
|
return TERM !== "linux";
|
|
9755
11524
|
}
|
|
9756
|
-
return Boolean(
|
|
11525
|
+
return Boolean(env.WT_SESSION) || Boolean(env.TERMINUS_SUBLIME) || env.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
9757
11526
|
}
|
|
9758
11527
|
|
|
9759
11528
|
// ../../node_modules/.bun/stdin-discarder@0.2.2/node_modules/stdin-discarder/index.js
|
|
@@ -10371,8 +12140,9 @@ async function runPortList(args) {
|
|
|
10371
12140
|
console.log("No ports are open.");
|
|
10372
12141
|
return;
|
|
10373
12142
|
}
|
|
10374
|
-
for (const port of ports)
|
|
10375
|
-
console.log(`${port.port} ${port.name ?? ""} ${port.url ?? ""}`);
|
|
12143
|
+
for (const port of ports) {
|
|
12144
|
+
console.log(`${port.port} ${port.visibility} ${port.name ?? ""} ${port.url ?? ""}`);
|
|
12145
|
+
}
|
|
10376
12146
|
} catch (error) {
|
|
10377
12147
|
handleError(error, args.json);
|
|
10378
12148
|
}
|
|
@@ -10380,11 +12150,27 @@ async function runPortList(args) {
|
|
|
10380
12150
|
async function runPortOpen(args) {
|
|
10381
12151
|
const spin = startSpinner(`Opening port ${args.port}...`, args.json);
|
|
10382
12152
|
try {
|
|
10383
|
-
const port = await createGittermWorkspaceClient().ports.open(args.port, {
|
|
12153
|
+
const port = await createGittermWorkspaceClient().ports.open(args.port, {
|
|
12154
|
+
name: args.name,
|
|
12155
|
+
visibility: args.visibility
|
|
12156
|
+
});
|
|
12157
|
+
spin?.stop();
|
|
12158
|
+
if (args.json)
|
|
12159
|
+
return printJson(port);
|
|
12160
|
+
success(`Port ${port.port} opened (${port.visibility})${port.url ? `: ${port.url}` : "."}`);
|
|
12161
|
+
} catch (error) {
|
|
12162
|
+
spin?.stop();
|
|
12163
|
+
handleError(error, args.json);
|
|
12164
|
+
}
|
|
12165
|
+
}
|
|
12166
|
+
async function runPortVisibility(args) {
|
|
12167
|
+
const spin = startSpinner(`Making port ${args.port} ${args.visibility}...`, args.json);
|
|
12168
|
+
try {
|
|
12169
|
+
const port = await createGittermWorkspaceClient().ports.setVisibility(args.port, args.visibility);
|
|
10384
12170
|
spin?.stop();
|
|
10385
12171
|
if (args.json)
|
|
10386
12172
|
return printJson(port);
|
|
10387
|
-
success(`Port ${port.port}
|
|
12173
|
+
success(`Port ${port.port} is now ${port.visibility}.`);
|
|
10388
12174
|
} catch (error) {
|
|
10389
12175
|
spin?.stop();
|
|
10390
12176
|
handleError(error, args.json);
|
|
@@ -10420,7 +12206,18 @@ try {
|
|
|
10420
12206
|
handleError(error);
|
|
10421
12207
|
}
|
|
10422
12208
|
if (workspaceEnvironment) {
|
|
10423
|
-
cli.command("workspace", "Inspect this workspace", (workspace) => workspace.command("info", "Show this workspace", (builder) => builder.options(jsonOption), (argv) => runCurrentWorkspaceInfo({ json: argv.json })).demandCommand(1, "Please specify a workspace command").strict()).command(["ports", "port"], "Manage ports for this workspace", (ports) => ports.command("list", "List open ports", (builder) => builder.options(jsonOption), (argv) => runPortList({ json: argv.json })).command("open <port>", "Open a port", (builder) => builder.positional("port", { type: "number", demandOption: true }).option("name", { type: "string", description: "Display name" }).
|
|
12209
|
+
cli.command("workspace", "Inspect this workspace", (workspace) => workspace.command("info", "Show this workspace", (builder) => builder.options(jsonOption), (argv) => runCurrentWorkspaceInfo({ json: argv.json })).demandCommand(1, "Please specify a workspace command").strict()).command(["ports", "port"], "Manage ports for this workspace", (ports) => ports.command("list", "List open ports", (builder) => builder.options(jsonOption), (argv) => runPortList({ json: argv.json })).command("open <port>", "Open a port", (builder) => builder.positional("port", { type: "number", demandOption: true }).option("name", { type: "string", description: "Display name" }).option("public", {
|
|
12210
|
+
type: "boolean",
|
|
12211
|
+
description: "Allow anyone with the URL to reach the port (default: private)"
|
|
12212
|
+
}).options(jsonOption), (argv) => runPortOpen({
|
|
12213
|
+
port: argv.port,
|
|
12214
|
+
name: argv.name,
|
|
12215
|
+
visibility: argv.public === undefined ? undefined : argv.public ? "public" : "private",
|
|
12216
|
+
json: argv.json
|
|
12217
|
+
})).command("visibility <port> <visibility>", "Make a port private (owner only) or public (anyone with the URL)", (builder) => builder.positional("port", { type: "number", demandOption: true }).positional("visibility", {
|
|
12218
|
+
choices: ["private", "public"],
|
|
12219
|
+
demandOption: true
|
|
12220
|
+
}).options(jsonOption), (argv) => runPortVisibility({ port: argv.port, visibility: argv.visibility, json: argv.json })).command("close <port>", "Close a port", (builder) => builder.positional("port", { type: "number", demandOption: true }).options(jsonOption), (argv) => runPortClose({ port: argv.port, json: argv.json })).demandCommand(1, "Please specify a port command").strict());
|
|
10424
12221
|
} else {
|
|
10425
12222
|
cli.command("login", "Sign in via device-code flow", (builder) => builder.option("server", {
|
|
10426
12223
|
alias: "s",
|