slack-term 1.13.0 → 1.14.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/dist/cli.js CHANGED
@@ -1,21 +1,21 @@
1
1
  #!/usr/bin/env bun
2
2
  // @bun
3
- import{createRequire as k8}from"node:module";var v8=Object.create;var{getPrototypeOf:p8,defineProperty:u0,getOwnPropertyNames:m8}=Object;var c8=Object.prototype.hasOwnProperty;function y8(D){return this[D]}var i8,n8,F0=(D,u,F)=>{var E=D!=null&&typeof D==="object";if(E){var C=u?i8??=new WeakMap:n8??=new WeakMap,B=C.get(D);if(B)return B}F=D!=null?v8(p8(D)):{};let $=u||!D||!D.__esModule?u0(F,"default",{value:D,enumerable:!0}):F;for(let z of m8(D))if(!c8.call($,z))u0($,z,{get:y8.bind(D,z),enumerable:!0});if(E)C.set(D,$);return $};var E0=(D,u)=>()=>(u||D((u={exports:{}}).exports,u),u.exports);var zu=k8(import.meta.url);var _0=E0((S6,U0)=>{U0.exports=()=>{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}});var t0=E0((H7,g0)=>{g0.exports=function(u){if(u===void 0)u=2;if(u>=Error.stackTraceLimit)throw TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+u+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");var F=Error.prepareStackTrace;Error.prepareStackTrace=function(C,B){return B};var E=Error().stack;if(Error.prepareStackTrace=F,E!==null&&typeof E==="object")return E[u]?E[u].getFileName():void 0}});import{createHash as b3}from"crypto";import{existsSync as f8,readFileSync as h3,mkdirSync as v3,writeFileSync as p3}from"fs";import{homedir as I8}from"os";import{join as Eu}from"path";import{notStrictEqual as S1,strictEqual as P1}from"assert";var d8={right:l8,center:o8};class B0{constructor(D){var u;this.width=D.width,this.wrap=(u=D.wrap)!==null&&u!==void 0?u:!0,this.rows=[]}span(...D){let u=this.div(...D);u.span=!0}resetOutput(){this.rows=[]}div(...D){if(D.length===0)this.div("");if(this.wrap&&this.shouldApplyLayoutDSL(...D)&&typeof D[0]==="string")return this.applyLayoutDSL(D[0]);let u=D.map((F)=>{if(typeof F==="string")return this.colFromString(F);return F});return this.rows.push(u),u}shouldApplyLayoutDSL(...D){return D.length===1&&typeof D[0]==="string"&&/[\t\n]/.test(D[0])}applyLayoutDSL(D){let u=D.split(`
3
+ import{createRequire as o8}from"node:module";var i8=Object.create;var{getPrototypeOf:k8,defineProperty:B0,getOwnPropertyNames:d8}=Object;var n8=Object.prototype.hasOwnProperty;function g8(D){return this[D]}var t8,l8,$0=(D,u,F)=>{var E=D!=null&&typeof D==="object";if(E){var C=u?t8??=new WeakMap:l8??=new WeakMap,B=C.get(D);if(B)return B}F=D!=null?i8(k8(D)):{};let $=u||!D||!D.__esModule?B0(F,"default",{value:D,enumerable:!0}):F;for(let z of d8(D))if(!n8.call($,z))B0($,z,{get:g8.bind(D,z),enumerable:!0});if(E)C.set(D,$);return $};var z0=(D,u)=>()=>(u||D((u={exports:{}}).exports,u),u.exports);var Gu=o8(import.meta.url);var T0=z0((m6,N0)=>{N0.exports=()=>{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}});var r0=z0((L7,s0)=>{s0.exports=function(u){if(u===void 0)u=2;if(u>=Error.stackTraceLimit)throw TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+u+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");var F=Error.prepareStackTrace;Error.prepareStackTrace=function(C,B){return B};var E=Error().stack;if(Error.prepareStackTrace=F,E!==null&&typeof E==="object")return E[u]?E[u].getFileName():void 0}});import{createHash as n1}from"crypto";import{existsSync as p8,readFileSync as g1,mkdirSync as t1,writeFileSync as l1}from"fs";import{homedir as v8}from"os";import{join as Cu}from"path";import{notStrictEqual as f3,strictEqual as b3}from"assert";var s8={right:e8,center:D3};class Z0{constructor(D){var u;this.width=D.width,this.wrap=(u=D.wrap)!==null&&u!==void 0?u:!0,this.rows=[]}span(...D){let u=this.div(...D);u.span=!0}resetOutput(){this.rows=[]}div(...D){if(D.length===0)this.div("");if(this.wrap&&this.shouldApplyLayoutDSL(...D)&&typeof D[0]==="string")return this.applyLayoutDSL(D[0]);let u=D.map((F)=>{if(typeof F==="string")return this.colFromString(F);return F});return this.rows.push(u),u}shouldApplyLayoutDSL(...D){return D.length===1&&typeof D[0]==="string"&&/[\t\n]/.test(D[0])}applyLayoutDSL(D){let u=D.split(`
4
4
  `).map((E)=>E.split("\t")),F=0;return u.forEach((E)=>{if(E.length>1&&WD.stringWidth(E[0])>F)F=Math.min(Math.floor(this.width*0.5),WD.stringWidth(E[0]))}),u.forEach((E)=>{this.div(...E.map((C,B)=>{return{text:C.trim(),padding:this.measurePadding(C),width:B===0&&E.length>1?F:void 0}}))}),this.rows[this.rows.length-1]}colFromString(D){return{text:D,padding:this.measurePadding(D)}}measurePadding(D){let u=WD.stripAnsi(D);return[0,u.match(/\s*$/)[0].length,0,u.match(/^\s*/)[0].length]}toString(){let D=[];return this.rows.forEach((u)=>{this.rowToString(u,D)}),D.filter((u)=>!u.hidden).map((u)=>u.text).join(`
5
- `)}rowToString(D,u){return this.rasterize(D).forEach((F,E)=>{let C="";F.forEach((B,$)=>{let{width:z}=D[$],Z=this.negatePadding(D[$]),J=B;if(Z>WD.stringWidth(B))J+=" ".repeat(Z-WD.stringWidth(B));if(D[$].align&&D[$].align!=="left"&&this.wrap){let X=d8[D[$].align];if(J=X(J,Z),WD.stringWidth(J)<Z)J+=" ".repeat((z||0)-WD.stringWidth(J)-1)}let O=D[$].padding||[0,0,0,0];if(O[3])C+=" ".repeat(O[3]);if(C+=C0(D[$],J,"| "),C+=J,C+=C0(D[$],J," |"),O[1])C+=" ".repeat(O[1]);if(E===0&&u.length>0)C=this.renderInline(C,u[u.length-1])}),u.push({text:C.replace(/ +$/,""),span:D.span})}),u}renderInline(D,u){let F=D.match(/^ */),E=F?F[0].length:0,C=u.text,B=WD.stringWidth(C.trimRight());if(!u.span)return D;if(!this.wrap)return u.hidden=!0,C+D;if(E<B)return D;return u.hidden=!0,C.trimRight()+" ".repeat(E-B)+D.trimLeft()}rasterize(D){let u=[],F=this.columnWidths(D),E;return D.forEach((C,B)=>{if(C.width=F[B],this.wrap)E=WD.wrap(C.text,this.negatePadding(C),{hard:!0}).split(`
5
+ `)}rowToString(D,u){return this.rasterize(D).forEach((F,E)=>{let C="";F.forEach((B,$)=>{let{width:z}=D[$],Z=this.negatePadding(D[$]),X=B;if(Z>WD.stringWidth(B))X+=" ".repeat(Z-WD.stringWidth(B));if(D[$].align&&D[$].align!=="left"&&this.wrap){let J=s8[D[$].align];if(X=J(X,Z),WD.stringWidth(X)<Z)X+=" ".repeat((z||0)-WD.stringWidth(X)-1)}let O=D[$].padding||[0,0,0,0];if(O[3])C+=" ".repeat(O[3]);if(C+=G0(D[$],X,"| "),C+=X,C+=G0(D[$],X," |"),O[1])C+=" ".repeat(O[1]);if(E===0&&u.length>0)C=this.renderInline(C,u[u.length-1])}),u.push({text:C.replace(/ +$/,""),span:D.span})}),u}renderInline(D,u){let F=D.match(/^ */),E=F?F[0].length:0,C=u.text,B=WD.stringWidth(C.trimRight());if(!u.span)return D;if(!this.wrap)return u.hidden=!0,C+D;if(E<B)return D;return u.hidden=!0,C.trimRight()+" ".repeat(E-B)+D.trimLeft()}rasterize(D){let u=[],F=this.columnWidths(D),E;return D.forEach((C,B)=>{if(C.width=F[B],this.wrap)E=WD.wrap(C.text,this.negatePadding(C),{hard:!0}).split(`
6
6
  `);else E=C.text.split(`
7
- `);if(C.border)E.unshift("."+"-".repeat(this.negatePadding(C)+2)+"."),E.push("'"+"-".repeat(this.negatePadding(C)+2)+"'");if(C.padding)E.unshift(...Array(C.padding[0]||0).fill("")),E.push(...Array(C.padding[2]||0).fill(""));E.forEach(($,z)=>{if(!u[z])u.push([]);let Z=u[z];for(let J=0;J<B;J++)if(Z[J]===void 0)Z.push("");Z.push($)})}),u}negatePadding(D){let u=D.width||0;if(D.padding)u-=(D.padding[3]||0)+(D.padding[1]||0);if(D.border)u-=4;return u}columnWidths(D){if(!this.wrap)return D.map((B)=>{return B.width||WD.stringWidth(B.text)});let u=D.length,F=this.width,E=D.map((B)=>{if(B.width)return u--,F-=B.width,B.width;return}),C=u?Math.floor(F/u):0;return E.map((B,$)=>{if(B===void 0)return Math.max(C,g8(D[$]));return B})}}function C0(D,u,F){if(D.border){if(/[.']-+[.']/.test(u))return"";if(u.trim().length!==0)return F;return" "}return""}function g8(D){let u=D.padding||[],F=1+(u[3]||0)+(u[1]||0);if(D.border)return F+4;return F}function t8(){if(typeof process==="object"&&process.stdout&&process.stdout.columns)return process.stdout.columns;return 80}function l8(D,u){D=D.trim();let F=WD.stringWidth(D);if(F<u)return" ".repeat(u-F)+D;return D}function o8(D,u){D=D.trim();let F=WD.stringWidth(D);if(F>=u)return D;return" ".repeat(u-F>>1)+D}var WD;function $0(D,u){return WD=u,new B0({width:(D===null||D===void 0?void 0:D.width)||t8(),wrap:D===null||D===void 0?void 0:D.wrap})}function XF({onlyFirst:D=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",D?void 0:"g")}var s8=XF();function mD(D){if(typeof D!=="string")throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);if(!D.includes("\x1B")&&!D.includes("›"))return D;return D.replace(s8,"")}var z0=161,G0=1114109,Z0=[161,161,164,164,167,168,170,170,173,174,176,180,182,186,188,191,198,198,208,208,215,216,222,225,230,230,232,234,236,237,240,240,242,243,247,250,252,252,254,254,257,257,273,273,275,275,283,283,294,295,299,299,305,307,312,312,319,322,324,324,328,331,333,333,338,339,358,359,363,363,462,462,464,464,466,466,468,468,470,470,472,472,474,474,476,476,593,593,609,609,708,708,711,711,713,715,717,717,720,720,728,731,733,733,735,735,768,879,913,929,931,937,945,961,963,969,1025,1025,1040,1103,1105,1105,8208,8208,8211,8214,8216,8217,8220,8221,8224,8226,8228,8231,8240,8240,8242,8243,8245,8245,8251,8251,8254,8254,8308,8308,8319,8319,8321,8324,8364,8364,8451,8451,8453,8453,8457,8457,8467,8467,8470,8470,8481,8482,8486,8486,8491,8491,8531,8532,8539,8542,8544,8555,8560,8569,8585,8585,8592,8601,8632,8633,8658,8658,8660,8660,8679,8679,8704,8704,8706,8707,8711,8712,8715,8715,8719,8719,8721,8721,8725,8725,8730,8730,8733,8736,8739,8739,8741,8741,8743,8748,8750,8750,8756,8759,8764,8765,8776,8776,8780,8780,8786,8786,8800,8801,8804,8807,8810,8811,8814,8815,8834,8835,8838,8839,8853,8853,8857,8857,8869,8869,8895,8895,8978,8978,9312,9449,9451,9547,9552,9587,9600,9615,9618,9621,9632,9633,9635,9641,9650,9651,9654,9655,9660,9661,9664,9665,9670,9672,9675,9675,9678,9681,9698,9701,9711,9711,9733,9734,9737,9737,9742,9743,9756,9756,9758,9758,9792,9792,9794,9794,9824,9825,9827,9829,9831,9834,9836,9837,9839,9839,9886,9887,9919,9919,9926,9933,9935,9939,9941,9953,9955,9955,9960,9961,9963,9969,9972,9972,9974,9977,9979,9980,9982,9983,10045,10045,10102,10111,11094,11097,12872,12879,57344,63743,65024,65039,65533,65533,127232,127242,127248,127277,127280,127337,127344,127373,127375,127376,127387,127404,917760,917999,983040,1048573,1048576,1114109],X0=12288,J0=65510,Q0=[12288,12288,65281,65376,65504,65510];var O0=4352,Y0=262141,JF=[4352,4447,8986,8987,9001,9002,9193,9196,9200,9200,9203,9203,9725,9726,9748,9749,9776,9783,9800,9811,9855,9855,9866,9871,9875,9875,9889,9889,9898,9899,9917,9918,9924,9925,9934,9934,9940,9940,9962,9962,9970,9971,9973,9973,9978,9978,9981,9981,9989,9989,9994,9995,10024,10024,10060,10060,10062,10062,10067,10069,10071,10071,10133,10135,10160,10160,10175,10175,11035,11036,11088,11088,11093,11093,11904,11929,11931,12019,12032,12245,12272,12287,12289,12350,12353,12438,12441,12543,12549,12591,12593,12686,12688,12773,12783,12830,12832,12871,12880,42124,42128,42182,43360,43388,44032,55203,63744,64255,65040,65049,65072,65106,65108,65126,65128,65131,94176,94180,94192,94198,94208,101589,101631,101662,101760,101874,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,119552,119638,119648,119670,126980,126980,127183,127183,127374,127374,127377,127386,127488,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,127776,127789,127797,127799,127868,127870,127891,127904,127946,127951,127955,127968,127984,127988,127988,127992,128062,128064,128064,128066,128252,128255,128317,128331,128334,128336,128359,128378,128378,128405,128406,128420,128420,128507,128591,128640,128709,128716,128716,128720,128722,128725,128728,128732,128735,128747,128748,128756,128764,128992,129003,129008,129008,129292,129338,129340,129349,129351,129535,129648,129660,129664,129674,129678,129734,129736,129736,129741,129756,129759,129770,129775,129784,131072,196605,196608,262141];var fu=(D,u)=>{let F=0,E=Math.floor(D.length/2)-1;while(F<=E){let C=Math.floor((F+E)/2),B=C*2;if(u<D[B])E=C-1;else if(u>D[B+1])F=C+1;else return!0}return!1};var W0=19968,[r8,a8]=e8(JF);function e8(D){let u=D[0],F=D[1];for(let E=0;E<D.length;E+=2){let C=D[E],B=D[E+1];if(W0>=C&&W0<=B)return[C,B];if(B-C>F-u)u=C,F=B}return[u,F]}var M0=(D)=>{if(D<z0||D>G0)return!1;return fu(Z0,D)},H0=(D)=>{if(D<X0||D>J0)return!1;return fu(Q0,D)};var V0=(D)=>{if(D>=r8&&D<=a8)return!0;if(D<O0||D>Y0)return!1;return fu(JF,D)};function D1(D){if(!Number.isSafeInteger(D))throw TypeError(`Expected a code point, got \`${typeof D}\`.`)}function q0(D,{ambiguousAsWide:u=!1}={}){if(D1(D),H0(D)||V0(D)||u&&M0(D))return 2;return 1}var j0=F0(_0(),1),u1=new Intl.Segmenter,F1=/^\p{Default_Ignorable_Code_Point}$/u;function KD(D,u={}){if(typeof D!=="string"||D.length===0)return 0;let{ambiguousIsNarrow:F=!0,countAnsiEscapeCodes:E=!1}=u;if(!E)D=mD(D);if(D.length===0)return 0;let C=0,B={ambiguousAsWide:!F};for(let{segment:$}of u1.segment(D)){let z=$.codePointAt(0);if(z<=31||z>=127&&z<=159)continue;if(z>=8203&&z<=8207||z===65279)continue;if(z>=768&&z<=879||z>=6832&&z<=6911||z>=7616&&z<=7679||z>=8400&&z<=8447||z>=65056&&z<=65071)continue;if(z>=55296&&z<=57343)continue;if(z>=65024&&z<=65039)continue;if(F1.test($))continue;if(j0.default().test($)){C+=2;continue}C+=q0(z,B)}return C}var K0=(D=0)=>(u)=>`\x1B[${u+D}m`,T0=(D=0)=>(u)=>`\x1B[${38+D};5;${u}m`,N0=(D=0)=>(u,F,E)=>`\x1B[${38+D};2;${u};${F};${E}m`,s={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},f6=Object.keys(s.modifier),E1=Object.keys(s.color),C1=Object.keys(s.bgColor),x6=[...E1,...C1];function B1(){let D=new Map;for(let[u,F]of Object.entries(s)){for(let[E,C]of Object.entries(F))s[E]={open:`\x1B[${C[0]}m`,close:`\x1B[${C[1]}m`},F[E]=s[E],D.set(C[0],C[1]);Object.defineProperty(s,u,{value:F,enumerable:!1})}return Object.defineProperty(s,"codes",{value:D,enumerable:!1}),s.color.close="\x1B[39m",s.bgColor.close="\x1B[49m",s.color.ansi=K0(),s.color.ansi256=T0(),s.color.ansi16m=N0(),s.bgColor.ansi=K0(10),s.bgColor.ansi256=T0(10),s.bgColor.ansi16m=N0(10),Object.defineProperties(s,{rgbToAnsi256:{value(u,F,E){if(u===F&&F===E){if(u<8)return 16;if(u>248)return 231;return Math.round((u-8)/247*24)+232}return 16+36*Math.round(u/255*5)+6*Math.round(F/255*5)+Math.round(E/255*5)},enumerable:!1},hexToRgb:{value(u){let F=/[a-f\d]{6}|[a-f\d]{3}/i.exec(u.toString(16));if(!F)return[0,0,0];let[E]=F;if(E.length===3)E=[...E].map((B)=>B+B).join("");let C=Number.parseInt(E,16);return[C>>16&255,C>>8&255,C&255]},enumerable:!1},hexToAnsi256:{value:(u)=>s.rgbToAnsi256(...s.hexToRgb(u)),enumerable:!1},ansi256ToAnsi:{value(u){if(u<8)return 30+u;if(u<16)return 90+(u-8);let F,E,C;if(u>=232)F=((u-232)*10+8)/255,E=F,C=F;else{u-=16;let z=u%36;F=Math.floor(u/36)/5,E=Math.floor(z/6)/5,C=z%6/5}let B=Math.max(F,E,C)*2;if(B===0)return 30;let $=30+(Math.round(C)<<2|Math.round(E)<<1|Math.round(F));if(B===2)$+=60;return $},enumerable:!1},rgbToAnsi:{value:(u,F,E)=>s.ansi256ToAnsi(s.rgbToAnsi256(u,F,E)),enumerable:!1},hexToAnsi:{value:(u)=>s.ansi256ToAnsi(s.hexToAnsi256(u)),enumerable:!1}}),s}var $1=B1(),R0=$1;var bu=new Set(["\x1B","›"]),z1=39,OF="\x07",S0="[",G1="]",P0="m",xu=`${G1}8;;`,A0=(D)=>`${bu.values().next().value}${S0}${D}${P0}`,L0=(D)=>`${bu.values().next().value}${xu}${D}${OF}`,Z1=(D)=>D.split(" ").map((u)=>KD(u)),QF=(D,u,F)=>{let E=[...u],C=!1,B=!1,$=KD(mD(D.at(-1)));for(let[z,Z]of E.entries()){let J=KD(Z);if($+J<=F)D[D.length-1]+=Z;else D.push(Z),$=0;if(bu.has(Z))C=!0,B=E.slice(z+1,z+1+xu.length).join("")===xu;if(C){if(B){if(Z===OF)C=!1,B=!1}else if(Z===P0)C=!1;continue}if($+=J,$===F&&z<E.length-1)D.push(""),$=0}if(!$&&D.at(-1).length>0&&D.length>1)D[D.length-2]+=D.pop()},X1=(D)=>{let u=D.split(" "),F=u.length;while(F>0){if(KD(u[F-1])>0)break;F--}if(F===u.length)return D;return u.slice(0,F).join(" ")+u.slice(F).join("")},J1=(D,u,F={})=>{if(F.trim!==!1&&D.trim()==="")return"";let E="",C,B,$=Z1(D),z=[""];for(let[X,Q]of D.split(" ").entries()){if(F.trim!==!1)z[z.length-1]=z.at(-1).trimStart();let Y=KD(z.at(-1));if(X!==0){if(Y>=u&&(F.wordWrap===!1||F.trim===!1))z.push(""),Y=0;if(Y>0||F.trim===!1)z[z.length-1]+=" ",Y++}if(F.hard&&$[X]>u){let M=u-Y,H=1+Math.floor(($[X]-M-1)/u);if(Math.floor(($[X]-1)/u)<H)z.push("");QF(z,Q,u);continue}if(Y+$[X]>u&&Y>0&&$[X]>0){if(F.wordWrap===!1&&Y<u){QF(z,Q,u);continue}z.push("")}if(Y+$[X]>u&&F.wordWrap===!1){QF(z,Q,u);continue}z[z.length-1]+=Q}if(F.trim!==!1)z=z.map((X)=>X1(X));let Z=z.join(`
8
- `),J=[...Z],O=0;for(let[X,Q]of J.entries()){if(E+=Q,bu.has(Q)){let{groups:M}=new RegExp(`(?:\\${S0}(?<code>\\d+)m|\\${xu}(?<uri>.*)${OF})`).exec(Z.slice(O))||{groups:{}};if(M.code!==void 0){let H=Number.parseFloat(M.code);C=H===z1?void 0:H}else if(M.uri!==void 0)B=M.uri.length===0?void 0:M.uri}let Y=R0.codes.get(Number(C));if(J[X+1]===`
9
- `){if(B)E+=L0("");if(C&&Y)E+=A0(Y)}else if(Q===`
10
- `){if(C&&Y)E+=A0(C);if(B)E+=L0(B)}O+=Q.length}return E};function YF(D,u,F){return String(D).normalize().replaceAll(`\r
7
+ `);if(C.border)E.unshift("."+"-".repeat(this.negatePadding(C)+2)+"."),E.push("'"+"-".repeat(this.negatePadding(C)+2)+"'");if(C.padding)E.unshift(...Array(C.padding[0]||0).fill("")),E.push(...Array(C.padding[2]||0).fill(""));E.forEach(($,z)=>{if(!u[z])u.push([]);let Z=u[z];for(let X=0;X<B;X++)if(Z[X]===void 0)Z.push("");Z.push($)})}),u}negatePadding(D){let u=D.width||0;if(D.padding)u-=(D.padding[3]||0)+(D.padding[1]||0);if(D.border)u-=4;return u}columnWidths(D){if(!this.wrap)return D.map((B)=>{return B.width||WD.stringWidth(B.text)});let u=D.length,F=this.width,E=D.map((B)=>{if(B.width)return u--,F-=B.width,B.width;return}),C=u?Math.floor(F/u):0;return E.map((B,$)=>{if(B===void 0)return Math.max(C,r8(D[$]));return B})}}function G0(D,u,F){if(D.border){if(/[.']-+[.']/.test(u))return"";if(u.trim().length!==0)return F;return" "}return""}function r8(D){let u=D.padding||[],F=1+(u[3]||0)+(u[1]||0);if(D.border)return F+4;return F}function a8(){if(typeof process==="object"&&process.stdout&&process.stdout.columns)return process.stdout.columns;return 80}function e8(D,u){D=D.trim();let F=WD.stringWidth(D);if(F<u)return" ".repeat(u-F)+D;return D}function D3(D,u){D=D.trim();let F=WD.stringWidth(D);if(F>=u)return D;return" ".repeat(u-F>>1)+D}var WD;function J0(D,u){return WD=u,new Z0({width:(D===null||D===void 0?void 0:D.width)||a8(),wrap:D===null||D===void 0?void 0:D.wrap})}function WF({onlyFirst:D=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",D?void 0:"g")}var u3=WF();function cD(D){if(typeof D!=="string")throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);if(!D.includes("\x1B")&&!D.includes("›"))return D;return D.replace(u3,"")}var X0=161,Q0=1114109,O0=[161,161,164,164,167,168,170,170,173,174,176,180,182,186,188,191,198,198,208,208,215,216,222,225,230,230,232,234,236,237,240,240,242,243,247,250,252,252,254,254,257,257,273,273,275,275,283,283,294,295,299,299,305,307,312,312,319,322,324,324,328,331,333,333,338,339,358,359,363,363,462,462,464,464,466,466,468,468,470,470,472,472,474,474,476,476,593,593,609,609,708,708,711,711,713,715,717,717,720,720,728,731,733,733,735,735,768,879,913,929,931,937,945,961,963,969,1025,1025,1040,1103,1105,1105,8208,8208,8211,8214,8216,8217,8220,8221,8224,8226,8228,8231,8240,8240,8242,8243,8245,8245,8251,8251,8254,8254,8308,8308,8319,8319,8321,8324,8364,8364,8451,8451,8453,8453,8457,8457,8467,8467,8470,8470,8481,8482,8486,8486,8491,8491,8531,8532,8539,8542,8544,8555,8560,8569,8585,8585,8592,8601,8632,8633,8658,8658,8660,8660,8679,8679,8704,8704,8706,8707,8711,8712,8715,8715,8719,8719,8721,8721,8725,8725,8730,8730,8733,8736,8739,8739,8741,8741,8743,8748,8750,8750,8756,8759,8764,8765,8776,8776,8780,8780,8786,8786,8800,8801,8804,8807,8810,8811,8814,8815,8834,8835,8838,8839,8853,8853,8857,8857,8869,8869,8895,8895,8978,8978,9312,9449,9451,9547,9552,9587,9600,9615,9618,9621,9632,9633,9635,9641,9650,9651,9654,9655,9660,9661,9664,9665,9670,9672,9675,9675,9678,9681,9698,9701,9711,9711,9733,9734,9737,9737,9742,9743,9756,9756,9758,9758,9792,9792,9794,9794,9824,9825,9827,9829,9831,9834,9836,9837,9839,9839,9886,9887,9919,9919,9926,9933,9935,9939,9941,9953,9955,9955,9960,9961,9963,9969,9972,9972,9974,9977,9979,9980,9982,9983,10045,10045,10102,10111,11094,11097,12872,12879,57344,63743,65024,65039,65533,65533,127232,127242,127248,127277,127280,127337,127344,127373,127375,127376,127387,127404,917760,917999,983040,1048573,1048576,1114109],Y0=12288,W0=65510,M0=[12288,12288,65281,65376,65504,65510];var H0=4352,V0=262141,MF=[4352,4447,8986,8987,9001,9002,9193,9196,9200,9200,9203,9203,9725,9726,9748,9749,9776,9783,9800,9811,9855,9855,9866,9871,9875,9875,9889,9889,9898,9899,9917,9918,9924,9925,9934,9934,9940,9940,9962,9962,9970,9971,9973,9973,9978,9978,9981,9981,9989,9989,9994,9995,10024,10024,10060,10060,10062,10062,10067,10069,10071,10071,10133,10135,10160,10160,10175,10175,11035,11036,11088,11088,11093,11093,11904,11929,11931,12019,12032,12245,12272,12287,12289,12350,12353,12438,12441,12543,12549,12591,12593,12686,12688,12773,12783,12830,12832,12871,12880,42124,42128,42182,43360,43388,44032,55203,63744,64255,65040,65049,65072,65106,65108,65126,65128,65131,94176,94180,94192,94198,94208,101589,101631,101662,101760,101874,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,119552,119638,119648,119670,126980,126980,127183,127183,127374,127374,127377,127386,127488,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,127776,127789,127797,127799,127868,127870,127891,127904,127946,127951,127955,127968,127984,127988,127988,127992,128062,128064,128064,128066,128252,128255,128317,128331,128334,128336,128359,128378,128378,128405,128406,128420,128420,128507,128591,128640,128709,128716,128716,128720,128722,128725,128728,128732,128735,128747,128748,128756,128764,128992,129003,129008,129008,129292,129338,129340,129349,129351,129535,129648,129660,129664,129674,129678,129734,129736,129736,129741,129756,129759,129770,129775,129784,131072,196605,196608,262141];var fu=(D,u)=>{let F=0,E=Math.floor(D.length/2)-1;while(F<=E){let C=Math.floor((F+E)/2),B=C*2;if(u<D[B])E=C-1;else if(u>D[B+1])F=C+1;else return!0}return!1};var q0=19968,[F3,E3]=C3(MF);function C3(D){let u=D[0],F=D[1];for(let E=0;E<D.length;E+=2){let C=D[E],B=D[E+1];if(q0>=C&&q0<=B)return[C,B];if(B-C>F-u)u=C,F=B}return[u,F]}var U0=(D)=>{if(D<X0||D>Q0)return!1;return fu(O0,D)},j0=(D)=>{if(D<Y0||D>W0)return!1;return fu(M0,D)};var _0=(D)=>{if(D>=F3&&D<=E3)return!0;if(D<H0||D>V0)return!1;return fu(MF,D)};function B3(D){if(!Number.isSafeInteger(D))throw TypeError(`Expected a code point, got \`${typeof D}\`.`)}function K0(D,{ambiguousAsWide:u=!1}={}){if(B3(D),j0(D)||_0(D)||u&&U0(D))return 2;return 1}var A0=$0(T0(),1),$3=new Intl.Segmenter,z3=/^\p{Default_Ignorable_Code_Point}$/u;function KD(D,u={}){if(typeof D!=="string"||D.length===0)return 0;let{ambiguousIsNarrow:F=!0,countAnsiEscapeCodes:E=!1}=u;if(!E)D=cD(D);if(D.length===0)return 0;let C=0,B={ambiguousAsWide:!F};for(let{segment:$}of $3.segment(D)){let z=$.codePointAt(0);if(z<=31||z>=127&&z<=159)continue;if(z>=8203&&z<=8207||z===65279)continue;if(z>=768&&z<=879||z>=6832&&z<=6911||z>=7616&&z<=7679||z>=8400&&z<=8447||z>=65056&&z<=65071)continue;if(z>=55296&&z<=57343)continue;if(z>=65024&&z<=65039)continue;if(z3.test($))continue;if(A0.default().test($)){C+=2;continue}C+=K0(z,B)}return C}var L0=(D=0)=>(u)=>`\x1B[${u+D}m`,R0=(D=0)=>(u)=>`\x1B[${38+D};5;${u}m`,S0=(D=0)=>(u,F,E)=>`\x1B[${38+D};2;${u};${F};${E}m`,s={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},k6=Object.keys(s.modifier),G3=Object.keys(s.color),Z3=Object.keys(s.bgColor),d6=[...G3,...Z3];function J3(){let D=new Map;for(let[u,F]of Object.entries(s)){for(let[E,C]of Object.entries(F))s[E]={open:`\x1B[${C[0]}m`,close:`\x1B[${C[1]}m`},F[E]=s[E],D.set(C[0],C[1]);Object.defineProperty(s,u,{value:F,enumerable:!1})}return Object.defineProperty(s,"codes",{value:D,enumerable:!1}),s.color.close="\x1B[39m",s.bgColor.close="\x1B[49m",s.color.ansi=L0(),s.color.ansi256=R0(),s.color.ansi16m=S0(),s.bgColor.ansi=L0(10),s.bgColor.ansi256=R0(10),s.bgColor.ansi16m=S0(10),Object.defineProperties(s,{rgbToAnsi256:{value(u,F,E){if(u===F&&F===E){if(u<8)return 16;if(u>248)return 231;return Math.round((u-8)/247*24)+232}return 16+36*Math.round(u/255*5)+6*Math.round(F/255*5)+Math.round(E/255*5)},enumerable:!1},hexToRgb:{value(u){let F=/[a-f\d]{6}|[a-f\d]{3}/i.exec(u.toString(16));if(!F)return[0,0,0];let[E]=F;if(E.length===3)E=[...E].map((B)=>B+B).join("");let C=Number.parseInt(E,16);return[C>>16&255,C>>8&255,C&255]},enumerable:!1},hexToAnsi256:{value:(u)=>s.rgbToAnsi256(...s.hexToRgb(u)),enumerable:!1},ansi256ToAnsi:{value(u){if(u<8)return 30+u;if(u<16)return 90+(u-8);let F,E,C;if(u>=232)F=((u-232)*10+8)/255,E=F,C=F;else{u-=16;let z=u%36;F=Math.floor(u/36)/5,E=Math.floor(z/6)/5,C=z%6/5}let B=Math.max(F,E,C)*2;if(B===0)return 30;let $=30+(Math.round(C)<<2|Math.round(E)<<1|Math.round(F));if(B===2)$+=60;return $},enumerable:!1},rgbToAnsi:{value:(u,F,E)=>s.ansi256ToAnsi(s.rgbToAnsi256(u,F,E)),enumerable:!1},hexToAnsi:{value:(u)=>s.ansi256ToAnsi(s.hexToAnsi256(u)),enumerable:!1}}),s}var X3=J3(),P0=X3;var hu=new Set(["\x1B","›"]),Q3=39,VF="\x07",x0="[",O3="]",f0="m",bu=`${O3}8;;`,w0=(D)=>`${hu.values().next().value}${x0}${D}${f0}`,I0=(D)=>`${hu.values().next().value}${bu}${D}${VF}`,Y3=(D)=>D.split(" ").map((u)=>KD(u)),HF=(D,u,F)=>{let E=[...u],C=!1,B=!1,$=KD(cD(D.at(-1)));for(let[z,Z]of E.entries()){let X=KD(Z);if($+X<=F)D[D.length-1]+=Z;else D.push(Z),$=0;if(hu.has(Z))C=!0,B=E.slice(z+1,z+1+bu.length).join("")===bu;if(C){if(B){if(Z===VF)C=!1,B=!1}else if(Z===f0)C=!1;continue}if($+=X,$===F&&z<E.length-1)D.push(""),$=0}if(!$&&D.at(-1).length>0&&D.length>1)D[D.length-2]+=D.pop()},W3=(D)=>{let u=D.split(" "),F=u.length;while(F>0){if(KD(u[F-1])>0)break;F--}if(F===u.length)return D;return u.slice(0,F).join(" ")+u.slice(F).join("")},M3=(D,u,F={})=>{if(F.trim!==!1&&D.trim()==="")return"";let E="",C,B,$=Y3(D),z=[""];for(let[J,Q]of D.split(" ").entries()){if(F.trim!==!1)z[z.length-1]=z.at(-1).trimStart();let Y=KD(z.at(-1));if(J!==0){if(Y>=u&&(F.wordWrap===!1||F.trim===!1))z.push(""),Y=0;if(Y>0||F.trim===!1)z[z.length-1]+=" ",Y++}if(F.hard&&$[J]>u){let M=u-Y,H=1+Math.floor(($[J]-M-1)/u);if(Math.floor(($[J]-1)/u)<H)z.push("");HF(z,Q,u);continue}if(Y+$[J]>u&&Y>0&&$[J]>0){if(F.wordWrap===!1&&Y<u){HF(z,Q,u);continue}z.push("")}if(Y+$[J]>u&&F.wordWrap===!1){HF(z,Q,u);continue}z[z.length-1]+=Q}if(F.trim!==!1)z=z.map((J)=>W3(J));let Z=z.join(`
8
+ `),X=[...Z],O=0;for(let[J,Q]of X.entries()){if(E+=Q,hu.has(Q)){let{groups:M}=new RegExp(`(?:\\${x0}(?<code>\\d+)m|\\${bu}(?<uri>.*)${VF})`).exec(Z.slice(O))||{groups:{}};if(M.code!==void 0){let H=Number.parseFloat(M.code);C=H===Q3?void 0:H}else if(M.uri!==void 0)B=M.uri.length===0?void 0:M.uri}let Y=P0.codes.get(Number(C));if(X[J+1]===`
9
+ `){if(B)E+=I0("");if(C&&Y)E+=w0(Y)}else if(Q===`
10
+ `){if(C&&Y)E+=w0(C);if(B)E+=I0(B)}O+=Q.length}return E};function qF(D,u,F){return String(D).normalize().replaceAll(`\r
11
11
  `,`
12
12
  `).split(`
13
- `).map((E)=>J1(E,u,F)).join(`
14
- `)}function WF(D){return $0(D,{stringWidth:KD,stripAnsi:mD,wrap:YF})}import{dirname as w0,resolve as I0}from"path";import{readdirSync as Q1,statSync as O1}from"fs";function MF(D,u){let F=I0(".",D),E;if(!O1(F).isDirectory())F=w0(F);while(!0){if(E=u(F,Q1(F)),E)return I0(F,E);if(F=w0(E=F),E===F)break}}import{inspect as w1}from"util";import{fileURLToPath as o0}from"url";import{format as M1}from"util";import{normalize as H1,resolve as V1}from"path";function cD(D){if(!(D!==D.toLowerCase()&&D!==D.toUpperCase()))D=D.toLowerCase();if(D.indexOf("-")===-1&&D.indexOf("_")===-1)return D;else{let F="",E=!1,C=D.match(/^-+/);for(let B=C?C[0].length:0;B<D.length;B++){let $=D.charAt(B);if(E)E=!1,$=$.toUpperCase();if(B!==0&&($==="-"||$==="_"))E=!0;else if($!=="-"&&$!=="_")F+=$}return F}}function hu(D,u){let F=D.toLowerCase();u=u||"-";let E="";for(let C=0;C<D.length;C++){let B=F.charAt(C),$=D.charAt(C);if(B!==$&&C>0)E+=`${u}${F.charAt(C)}`;else E+=$}return E}function vu(D){if(D===null||D===void 0)return!1;if(typeof D==="number")return!0;if(/^0x[0-9a-f]+$/i.test(D))return!0;if(/^0[^.]/.test(D))return!1;return/^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(D)}function f0(D){if(Array.isArray(D))return D.map(($)=>typeof $!=="string"?$+"":$);D=D.trim();let u=0,F=null,E=null,C=null,B=[];for(let $=0;$<D.length;$++){if(F=E,E=D.charAt($),E===" "&&!C){if(F!==" ")u++;continue}if(E===C)C=null;else if((E==="'"||E==='"')&&!C)C=E;if(!B[u])B[u]="";B[u]+=E}return B}var qD;(function(D){D.BOOLEAN="boolean",D.STRING="string",D.NUMBER="number",D.ARRAY="array"})(qD||(qD={}));var PD;class VF{constructor(D){PD=D}parse(D,u){let F=Object.assign({alias:void 0,array:void 0,boolean:void 0,config:void 0,configObjects:void 0,configuration:void 0,coerce:void 0,count:void 0,default:void 0,envPrefix:void 0,narg:void 0,normalize:void 0,string:void 0,number:void 0,__:void 0,key:void 0},u),E=f0(D),C=typeof D==="string",B=Y1(Object.assign(Object.create(null),F.alias)),$=Object.assign({"boolean-negation":!0,"camel-case-expansion":!0,"combine-arrays":!1,"dot-notation":!0,"duplicate-arguments-array":!0,"flatten-duplicate-arrays":!0,"greedy-arrays":!0,"halt-at-non-option":!1,"nargs-eats-options":!1,"negation-prefix":"no-","parse-numbers":!0,"parse-positional-numbers":!0,"populate--":!1,"set-placeholder-key":!1,"short-option-groups":!0,"strip-aliased":!1,"strip-dashed":!1,"unknown-options-as-args":!1},F.configuration),z=Object.assign(Object.create(null),F.default),Z=F.configObjects||[],J=F.envPrefix,O=$["populate--"],X=O?"--":"_",Q=Object.create(null),Y=Object.create(null),M=F.__||PD.format,H={aliases:Object.create(null),arrays:Object.create(null),bools:Object.create(null),strings:Object.create(null),numbers:Object.create(null),counts:Object.create(null),normalize:Object.create(null),configs:Object.create(null),nargs:Object.create(null),coercions:Object.create(null),keys:[]},_=/^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/,S=new RegExp("^--"+$["negation-prefix"]+"(.+)");if([].concat(F.array||[]).filter(Boolean).forEach(function(W){let q=typeof W==="object"?W.key:W,j=Object.keys(W).map(function(U){return{boolean:"bools",string:"strings",number:"numbers"}[U]}).filter(Boolean).pop();if(j)H[j][q]=!0;H.arrays[q]=!0,H.keys.push(q)}),[].concat(F.boolean||[]).filter(Boolean).forEach(function(W){H.bools[W]=!0,H.keys.push(W)}),[].concat(F.string||[]).filter(Boolean).forEach(function(W){H.strings[W]=!0,H.keys.push(W)}),[].concat(F.number||[]).filter(Boolean).forEach(function(W){H.numbers[W]=!0,H.keys.push(W)}),[].concat(F.count||[]).filter(Boolean).forEach(function(W){H.counts[W]=!0,H.keys.push(W)}),[].concat(F.normalize||[]).filter(Boolean).forEach(function(W){H.normalize[W]=!0,H.keys.push(W)}),typeof F.narg==="object")Object.entries(F.narg).forEach(([W,q])=>{if(typeof q==="number")H.nargs[W]=q,H.keys.push(W)});if(typeof F.coerce==="object")Object.entries(F.coerce).forEach(([W,q])=>{if(typeof q==="function")H.coercions[W]=q,H.keys.push(W)});if(typeof F.config<"u"){if(Array.isArray(F.config)||typeof F.config==="string")[].concat(F.config).filter(Boolean).forEach(function(W){H.configs[W]=!0});else if(typeof F.config==="object")Object.entries(F.config).forEach(([W,q])=>{if(typeof q==="boolean"||typeof q==="function")H.configs[W]=q})}Hu(F.key,B,F.default,H.arrays),Object.keys(z).forEach(function(W){(H.aliases[W]||[]).forEach(function(q){z[q]=z[W]})});let f=null;ZF();let d=[],x=Object.assign(Object.create(null),{_:[]}),i={};for(let W=0;W<E.length;W++){let q=E[W],j=q.replace(/^-{3,}/,"---"),U,V,A,T,I,GD;if(q!=="--"&&/^-/.test(q)&&t(q))a(q);else if(j.match(/^---+(=|$)/)){a(q);continue}else if(q.match(/^--.+=/)||!$["short-option-groups"]&&q.match(/^-.+=/)){if(T=q.match(/^--?([^=]+)=([\s\S]*)$/),T!==null&&Array.isArray(T)&&T.length>=3)if(b(T[1],H.arrays))W=RD(W,T[1],E,T[2]);else if(b(T[1],H.nargs)!==!1)W=e(W,T[1],E,T[2]);else g(T[1],T[2],!0)}else if(q.match(S)&&$["boolean-negation"]){if(T=q.match(S),T!==null&&Array.isArray(T)&&T.length>=2)V=T[1],g(V,b(V,H.arrays)?[!1]:!1)}else if(q.match(/^--.+/)||!$["short-option-groups"]&&q.match(/^-[^-]+/)){if(T=q.match(/^--?(.+)/),T!==null&&Array.isArray(T)&&T.length>=2)if(V=T[1],b(V,H.arrays))W=RD(W,V,E);else if(b(V,H.nargs)!==!1)W=e(W,V,E);else if(I=E[W+1],I!==void 0&&(!I.match(/^-/)||I.match(_))&&!b(V,H.bools)&&!b(V,H.counts))g(V,I),W++;else if(/^(true|false)$/.test(I))g(V,I),W++;else g(V,c(V))}else if(q.match(/^-.\..+=/)){if(T=q.match(/^-([^=]+)=([\s\S]*)$/),T!==null&&Array.isArray(T)&&T.length>=3)g(T[1],T[2])}else if(q.match(/^-.\..+/)&&!q.match(_)){if(I=E[W+1],T=q.match(/^-(.\..+)/),T!==null&&Array.isArray(T)&&T.length>=2)if(V=T[1],I!==void 0&&!I.match(/^-/)&&!b(V,H.bools)&&!b(V,H.counts))g(V,I),W++;else g(V,c(V))}else if(q.match(/^-[^-]+/)&&!q.match(_)){A=q.slice(1,-1).split(""),U=!1;for(let JD=0;JD<A.length;JD++){if(I=q.slice(JD+2),A[JD+1]&&A[JD+1]==="="){if(GD=q.slice(JD+3),V=A[JD],b(V,H.arrays))W=RD(W,V,E,GD);else if(b(V,H.nargs)!==!1)W=e(W,V,E,GD);else g(V,GD);U=!0;break}if(I==="-"){g(A[JD],I);continue}if(/[A-Za-z]/.test(A[JD])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(I)&&b(I,H.bools)===!1){g(A[JD],I),U=!0;break}if(A[JD+1]&&A[JD+1].match(/\W/)){g(A[JD],I),U=!0;break}else g(A[JD],c(A[JD]))}if(V=q.slice(-1)[0],!U&&V!=="-")if(b(V,H.arrays))W=RD(W,V,E);else if(b(V,H.nargs)!==!1)W=e(W,V,E);else if(I=E[W+1],I!==void 0&&(!/^(-|--)[^-]/.test(I)||I.match(_))&&!b(V,H.bools)&&!b(V,H.counts))g(V,I),W++;else if(/^(true|false)$/.test(I))g(V,I),W++;else g(V,c(V))}else if(q.match(/^-[0-9]$/)&&q.match(_)&&b(q.slice(1),H.bools))V=q.slice(1),g(V,c(V));else if(q==="--"){d=E.slice(W+1);break}else if($["halt-at-non-option"]){d=E.slice(W);break}else a(q)}if(ED(x,!0),ED(x,!1),P(x),k(),wD(x,H.aliases,z,!0),n(x),$["set-placeholder-key"])CD(x);if(Object.keys(H.counts).forEach(function(W){if(!l(x,W.split(".")))g(W,0)}),O&&d.length)x[X]=[];if(d.forEach(function(W){x[X].push(W)}),$["camel-case-expansion"]&&$["strip-dashed"])Object.keys(x).filter((W)=>W!=="--"&&W.includes("-")).forEach((W)=>{delete x[W]});if($["strip-aliased"])[].concat(...Object.keys(B).map((W)=>B[W])).forEach((W)=>{if($["camel-case-expansion"]&&W.includes("-"))delete x[W.split(".").map((q)=>cD(q)).join(".")];delete x[W]});function a(W){let q=K("_",W);if(typeof q==="string"||typeof q==="number")x._.push(q)}function e(W,q,j,U){let V,A=b(q,H.nargs);if(A=typeof A!=="number"||isNaN(A)?1:A,A===0){if(!$D(U))f=Error(M("Argument unexpected for: %s",q));return g(q,c(q)),W}let T=$D(U)?0:1;if($["nargs-eats-options"]){if(j.length-(W+1)+T<A)f=Error(M("Not enough arguments following: %s",q));T=A}else{for(V=W+1;V<j.length;V++)if(!j[V].match(/^-[^0-9]/)||j[V].match(_)||t(j[V]))T++;else break;if(T<A)f=Error(M("Not enough arguments following: %s",q))}let I=Math.min(T,A);if(!$D(U)&&I>0)g(q,U),I--;for(V=W+1;V<I+W+1;V++)g(q,j[V]);return W+I}function RD(W,q,j,U){let V=[],A=U||j[W+1],T=b(q,H.nargs);if(b(q,H.bools)&&!/^(true|false)$/.test(A))V.push(!0);else if($D(A)||$D(U)&&/^-/.test(A)&&!_.test(A)&&!t(A)){if(z[q]!==void 0){let I=z[q];V=Array.isArray(I)?I:[I]}}else{if(!$D(U))V.push(L(q,U,!0));for(let I=W+1;I<j.length;I++){if(!$["greedy-arrays"]&&V.length>0||T&&typeof T==="number"&&V.length>=T)break;if(A=j[I],/^-/.test(A)&&!_.test(A)&&!t(A))break;W=I,V.push(L(q,A,C))}}if(typeof T==="number"&&(T&&V.length<T||isNaN(T)&&V.length===0))f=Error(M("Not enough arguments following: %s",q));return g(q,V),W}function g(W,q,j=C){if(/-/.test(W)&&$["camel-case-expansion"]){let A=W.split(".").map(function(T){return cD(T)}).join(".");Mu(W,A)}let U=L(W,q,j),V=W.split(".");if(SD(x,V,U),H.aliases[W])H.aliases[W].forEach(function(A){let T=A.split(".");SD(x,T,U)});if(V.length>1&&$["dot-notation"])(H.aliases[V[0]]||[]).forEach(function(A){let T=A.split("."),I=[].concat(V);if(I.shift(),T=T.concat(I),!(H.aliases[W]||[]).includes(T.join(".")))SD(x,T,U)});if(b(W,H.normalize)&&!b(W,H.arrays))[W].concat(H.aliases[W]||[]).forEach(function(T){Object.defineProperty(i,T,{enumerable:!0,get(){return q},set(I){q=typeof I==="string"?PD.normalize(I):I}})})}function Mu(W,q){if(!(H.aliases[W]&&H.aliases[W].length))H.aliases[W]=[q],Q[q]=!0;if(!(H.aliases[q]&&H.aliases[q].length))Mu(q,W)}function L(W,q,j){if(j)q=W1(q);if(b(W,H.bools)||b(W,H.counts)){if(typeof q==="string")q=q==="true"}let U=Array.isArray(q)?q.map(function(V){return K(W,V)}):K(W,q);if(b(W,H.counts)&&($D(U)||typeof U==="boolean"))U=HF();if(b(W,H.normalize)&&b(W,H.arrays))if(Array.isArray(q))U=q.map((V)=>{return PD.normalize(V)});else U=PD.normalize(q);return U}function K(W,q){if(!$["parse-positional-numbers"]&&W==="_")return q;if(!b(W,H.strings)&&!b(W,H.bools)&&!Array.isArray(q)){if(vu(q)&&$["parse-numbers"]&&Number.isSafeInteger(Math.floor(parseFloat(`${q}`)))||!$D(q)&&b(W,H.numbers))q=Number(q)}return q}function P(W){let q=Object.create(null);wD(q,H.aliases,z),Object.keys(H.configs).forEach(function(j){let U=W[j]||q[j];if(U)try{let V=null,A=PD.resolve(PD.cwd(),U),T=H.configs[j];if(typeof T==="function"){try{V=T(A)}catch(I){V=I}if(V instanceof Error){f=V;return}}else V=PD.require(A);p(V)}catch(V){if(V.name==="PermissionDenied")f=V;else if(W[j])f=Error(M("Invalid JSON config file: %s",U))}})}function p(W,q){Object.keys(W).forEach(function(j){let U=W[j],V=q?q+"."+j:j;if(typeof U==="object"&&U!==null&&!Array.isArray(U)&&$["dot-notation"])p(U,V);else if(!l(x,V.split("."))||b(V,H.arrays)&&$["combine-arrays"])g(V,U)})}function k(){if(typeof Z<"u")Z.forEach(function(W){p(W)})}function ED(W,q){if(typeof J>"u")return;let j=typeof J==="string"?J:"",U=PD.env();Object.keys(U).forEach(function(V){if(j===""||V.lastIndexOf(j,0)===0){let A=V.split("__").map(function(T,I){if(I===0)T=T.substring(j.length);return cD(T)});if((q&&H.configs[A.join(".")]||!q)&&!l(W,A))g(A.join("."),U[V])}})}function n(W){let q,j=new Set;Object.keys(W).forEach(function(U){if(!j.has(U)){if(q=b(U,H.coercions),typeof q==="function")try{let V=K(U,q(W[U]));[].concat(H.aliases[U]||[],U).forEach((A)=>{j.add(A),W[A]=V})}catch(V){f=V}}})}function CD(W){return H.keys.forEach((q)=>{if(~q.indexOf("."))return;if(typeof W[q]>"u")W[q]=void 0}),W}function wD(W,q,j,U=!1){Object.keys(j).forEach(function(V){if(!l(W,V.split("."))){if(SD(W,V.split("."),j[V]),U)Y[V]=!0;(q[V]||[]).forEach(function(A){if(l(W,A.split(".")))return;SD(W,A.split("."),j[V])})}})}function l(W,q){let j=W;if(!$["dot-notation"])q=[q.join(".")];q.slice(0,-1).forEach(function(V){j=j[V]||{}});let U=q[q.length-1];if(typeof j!=="object")return!1;else return U in j}function SD(W,q,j){let U=W;if(!$["dot-notation"])q=[q.join(".")];q.slice(0,-1).forEach(function(GD){if(GD=x0(GD),typeof U==="object"&&U[GD]===void 0)U[GD]={};if(typeof U[GD]!=="object"||Array.isArray(U[GD])){if(Array.isArray(U[GD]))U[GD].push({});else U[GD]=[U[GD],{}];U=U[GD][U[GD].length-1]}else U=U[GD]});let V=x0(q[q.length-1]),A=b(q.join("."),H.arrays),T=Array.isArray(j),I=$["duplicate-arguments-array"];if(!I&&b(V,H.nargs)){if(I=!0,!$D(U[V])&&H.nargs[V]===1||Array.isArray(U[V])&&U[V].length===H.nargs[V])U[V]=void 0}if(j===HF())U[V]=HF(U[V]);else if(Array.isArray(U[V]))if(I&&A&&T)U[V]=$["flatten-duplicate-arrays"]?U[V].concat(j):(Array.isArray(U[V][0])?U[V]:[U[V]]).concat([j]);else if(!I&&Boolean(A)===Boolean(T))U[V]=j;else U[V]=U[V].concat([j]);else if(U[V]===void 0&&A)U[V]=T?j:[j];else if(I&&!(U[V]===void 0||b(V,H.counts)||b(V,H.bools)))U[V]=[U[V],j];else U[V]=j}function Hu(...W){W.forEach(function(q){Object.keys(q||{}).forEach(function(j){if(H.aliases[j])return;H.aliases[j]=[].concat(B[j]||[]),H.aliases[j].concat(j).forEach(function(U){if(/-/.test(U)&&$["camel-case-expansion"]){let V=cD(U);if(V!==j&&H.aliases[j].indexOf(V)===-1)H.aliases[j].push(V),Q[V]=!0}}),H.aliases[j].concat(j).forEach(function(U){if(U.length>1&&/[A-Z]/.test(U)&&$["camel-case-expansion"]){let V=hu(U,"-");if(V!==j&&H.aliases[j].indexOf(V)===-1)H.aliases[j].push(V),Q[V]=!0}}),H.aliases[j].forEach(function(U){H.aliases[U]=[j].concat(H.aliases[j].filter(function(V){return U!==V}))})})})}function b(W,q){let j=[].concat(H.aliases[W]||[],W),U=Object.keys(q),V=j.find((A)=>U.includes(A));return V?q[V]:!1}function $u(W){let q=Object.keys(H);return[].concat(q.map((U)=>H[U])).some(function(U){return Array.isArray(U)?U.includes(W):U[W]})}function D0(W,...q){return[].concat(...q).some(function(U){let V=W.match(U);return V&&$u(V[1])})}function h(W){if(W.match(_)||!W.match(/^-[^-]+/))return!1;let q=!0,j,U=W.slice(1).split("");for(let V=0;V<U.length;V++){if(j=W.slice(V+2),!$u(U[V])){q=!1;break}if(U[V+1]&&U[V+1]==="="||j==="-"||/[A-Za-z]/.test(U[V])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(j)||U[V+1]&&U[V+1].match(/\W/))break}return q}function t(W){return $["unknown-options-as-args"]&&BD(W)}function BD(W){if(W=W.replace(/^-{3,}/,"--"),W.match(_))return!1;if(h(W))return!1;return!D0(W,/^-+([^=]+?)=[\s\S]*$/,S,/^-+([^=]+?)$/,/^-+([^=]+?)-$/,/^-+([^=]+?\d+)$/,/^-+([^=]+?)\W+.*$/)}function c(W){if(!b(W,H.bools)&&!b(W,H.counts)&&`${W}`in z)return z[W];else return XD(DD(W))}function XD(W){return{[qD.BOOLEAN]:!0,[qD.STRING]:"",[qD.NUMBER]:void 0,[qD.ARRAY]:[]}[W]}function DD(W){let q=qD.BOOLEAN;if(b(W,H.strings))q=qD.STRING;else if(b(W,H.numbers))q=qD.NUMBER;else if(b(W,H.bools))q=qD.BOOLEAN;else if(b(W,H.arrays))q=qD.ARRAY;return q}function $D(W){return W===void 0}function ZF(){Object.keys(H.counts).find((W)=>{if(b(W,H.arrays))return f=Error(M("Invalid configuration: %s, opts.count excludes opts.array.",W)),!0;else if(b(W,H.nargs))return f=Error(M("Invalid configuration: %s, opts.count excludes opts.narg.",W)),!0;return!1})}return{aliases:Object.assign({},H.aliases),argv:Object.assign(i,x),configuration:$,defaulted:Object.assign({},Y),error:f,newAliases:Object.assign({},Q)}}}function Y1(D){let u=[],F=Object.create(null),E=!0;Object.keys(D).forEach(function(C){u.push([].concat(D[C],C))});while(E){E=!1;for(let C=0;C<u.length;C++)for(let B=C+1;B<u.length;B++)if(u[C].filter(function(z){return u[B].indexOf(z)!==-1}).length){u[C]=u[C].concat(u[B]),u.splice(B,1),E=!0;break}}return u.forEach(function(C){C=C.filter(function($,z,Z){return Z.indexOf($)===z});let B=C.pop();if(B!==void 0&&typeof B==="string")F[B]=C}),F}function HF(D){return D!==void 0?D+1:1}function x0(D){if(D==="__proto__")return"___proto___";return D}function W1(D){return typeof D==="string"&&(D[0]==="'"||D[0]==='"')&&D[D.length-1]===D[0]?D.substring(1,D.length-1):D}import{readFileSync as q1}from"fs";import{createRequire as b0}from"node:module";var qF,UF,_F,h0=process&&process.env&&process.env.YARGS_MIN_NODE_VERSION?Number(process.env.YARGS_MIN_NODE_VERSION):20,v0=(UF=(qF=process===null||process===void 0?void 0:process.versions)===null||qF===void 0?void 0:qF.node)!==null&&UF!==void 0?UF:(_F=process===null||process===void 0?void 0:process.version)===null||_F===void 0?void 0:_F.slice(1);if(v0){if(Number(v0.match(/^([^.]+)/)[1])<h0)throw Error(`yargs parser supports a minimum Node.js version of ${h0}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`)}var U1=process?process.env:{},p0=b0?b0(import.meta.url):void 0,m0=new VF({cwd:process.cwd,env:()=>{return U1},format:M1,normalize:H1,resolve:V1,require:(D)=>{if(typeof p0<"u")return p0(D);else if(D.match(/\.json$/))return JSON.parse(q1(D,"utf8"));else throw Error("only .json config files are supported in ESM")}}),Vu=function(u,F){return m0.parse(u.slice(),F).argv};Vu.detailed=function(D,u){return m0.parse(D.slice(),u)};Vu.camelCase=cD;Vu.decamelize=hu;Vu.looksLikeNumber=vu;var jF=Vu;import{basename as I1,dirname as f1,extname as x1,relative as b1,resolve as l0,join as h1}from"path";function c0(){if(_1())return 0;return 1}function _1(){return j1()&&!process.defaultApp}function j1(){return!!process.versions.electron}function KF(D){return D.slice(c0()+1)}function y0(){return process.argv[c0()]}import{readFileSync as K1,statSync as T1,writeFile as N1}from"fs";import{format as R1}from"util";import{resolve as A1}from"path";var i0={fs:{readFileSync:K1,writeFile:N1},format:R1,resolve:A1,exists:(D)=>{try{return T1(D).isFile()}catch(u){return!1}}};var TD;class n0{constructor(D){D=D||{},this.directory=D.directory||"./locales",this.updateFiles=typeof D.updateFiles==="boolean"?D.updateFiles:!0,this.locale=D.locale||"en",this.fallbackToLanguage=typeof D.fallbackToLanguage==="boolean"?D.fallbackToLanguage:!0,this.cache=Object.create(null),this.writeQueue=[]}__(...D){if(typeof arguments[0]!=="string")return this._taggedLiteral(arguments[0],...arguments);let u=D.shift(),F=function(){};if(typeof D[D.length-1]==="function")F=D.pop();if(F=F||function(){},!this.cache[this.locale])this._readLocaleFile();if(!this.cache[this.locale][u]&&this.updateFiles)this.cache[this.locale][u]=u,this._enqueueWrite({directory:this.directory,locale:this.locale,cb:F});else F();return TD.format.apply(TD.format,[this.cache[this.locale][u]||u].concat(D))}__n(){let D=Array.prototype.slice.call(arguments),u=D.shift(),F=D.shift(),E=D.shift(),C=function(){};if(typeof D[D.length-1]==="function")C=D.pop();if(!this.cache[this.locale])this._readLocaleFile();let B=E===1?u:F;if(this.cache[this.locale][u])B=this.cache[this.locale][u][E===1?"one":"other"];if(!this.cache[this.locale][u]&&this.updateFiles)this.cache[this.locale][u]={one:u,other:F},this._enqueueWrite({directory:this.directory,locale:this.locale,cb:C});else C();let $=[B];if(~B.indexOf("%d"))$.push(E);return TD.format.apply(TD.format,$.concat(D))}setLocale(D){this.locale=D}getLocale(){return this.locale}updateLocale(D){if(!this.cache[this.locale])this._readLocaleFile();for(let u in D)if(Object.prototype.hasOwnProperty.call(D,u))this.cache[this.locale][u]=D[u]}_taggedLiteral(D,...u){let F="";return D.forEach(function(E,C){let B=u[C+1];if(F+=E,typeof B<"u")F+="%s"}),this.__.apply(this,[F].concat([].slice.call(u,1)))}_enqueueWrite(D){if(this.writeQueue.push(D),this.writeQueue.length===1)this._processWriteQueue()}_processWriteQueue(){let D=this,u=this.writeQueue[0],F=u.directory,E=u.locale,C=u.cb,B=this._resolveLocaleFile(F,E),$=JSON.stringify(this.cache[E],null,2);TD.fs.writeFile(B,$,"utf-8",function(z){if(D.writeQueue.shift(),D.writeQueue.length>0)D._processWriteQueue();C(z)})}_readLocaleFile(){let D={},u=this._resolveLocaleFile(this.directory,this.locale);try{if(TD.fs.readFileSync)D=JSON.parse(TD.fs.readFileSync(u,"utf-8"))}catch(F){if(F instanceof SyntaxError)F.message="syntax error in "+u;if(F.code==="ENOENT")D={};else throw F}this.cache[this.locale]=D}_resolveLocaleFile(D,u){let F=TD.resolve(D,"./",u+".json");if(this.fallbackToLanguage&&!this._fileExistsSync(F)&&~u.lastIndexOf("_")){let E=TD.resolve(D,"./",u.split("_")[0]+".json");if(this._fileExistsSync(E))F=E}return F}_fileExistsSync(D){return TD.exists(D)}}function k0(D,u){TD=u;let F=new n0(D);return{__:F.__.bind(F),__n:F.__n.bind(F),setLocale:F.setLocale.bind(F),getLocale:F.getLocale.bind(F),updateLocale:F.updateLocale.bind(F),locale:F.locale}}var L1=(D)=>{return k0(D,i0)},d0=L1;var s0=F0(t0(),1);import{createRequire as v1}from"node:module";import{readFileSync as p1,readdirSync as m1}from"node:fs";var TF=o0(import.meta.url),c1=TF.substring(0,TF.lastIndexOf("node_modules")),y1=v1(import.meta.url),NF={assert:{notStrictEqual:S1,strictEqual:P1},cliui:WF,findUp:MF,getEnv:(D)=>{return process.env[D]},inspect:w1,getProcessArgvBin:y0,mainFilename:c1||process.cwd(),Parser:jF,path:{basename:I1,dirname:f1,extname:x1,relative:b1,resolve:l0,join:h1},process:{argv:()=>process.argv,cwd:process.cwd,emitWarning:(D,u)=>process.emitWarning(D,u),execPath:()=>process.execPath,exit:(D)=>{process.exit(D)},nextTick:process.nextTick,stdColumns:typeof process.stdout.columns<"u"?process.stdout.columns:null},readFileSync:p1,readdirSync:m1,require:y1,getCallerFile:()=>{let D=s0.default(3);return D.match(/^file:\/\//)?o0(D):D},stringWidth:KD,y18n:d0({directory:l0(TF,"../../../locales"),updateFiles:!1})};function QD(D,u,F,E){F.assert.notStrictEqual(D,u,E)}function RF(D,u){u.assert.strictEqual(typeof D,"string")}function Gu(D){return Object.keys(D)}function o(D){return!!D&&!!D.then&&typeof D.then==="function"}class uD extends Error{constructor(D){super(D||"yargs error");if(this.name="YError",Error.captureStackTrace)Error.captureStackTrace(this,uD)}}function ID(D){let F=D.replace(/\s{2,}/g," ").split(/\s+(?![^[]*]|[^<]*>)/),E=/\.*[\][<>]/g,C=F.shift();if(!C)throw Error(`No command found in: ${D}`);let B={cmd:C.replace(E,""),demanded:[],optional:[]};return F.forEach(($,z)=>{let Z=!1;if($=$.replace(/\s/g,""),/\.+[\]>]/.test($)&&z===F.length-1)Z=!0;if(/^\[/.test($))B.optional.push({cmd:$.replace(E,"").split("|"),variadic:Z});else B.demanded.push({cmd:$.replace(E,"").split("|"),variadic:Z})}),B}var i1=["first","second","third","fourth","fifth","sixth"];function N(D,u,F){function E(){return typeof D==="object"?[{demanded:[],optional:[]},D,u]:[ID(`cmd ${D}`),u,F]}try{let C=0,[B,$,z]=E(),Z=[].slice.call($);while(Z.length&&Z[Z.length-1]===void 0)Z.pop();let J=z||Z.length;if(J<B.demanded.length)throw new uD(`Not enough arguments provided. Expected ${B.demanded.length} but received ${Z.length}.`);let O=B.demanded.length+B.optional.length;if(J>O)throw new uD(`Too many arguments provided. Expected max ${O} but received ${J}.`);B.demanded.forEach((X)=>{let Q=Z.shift(),Y=r0(Q);if(X.cmd.filter((H)=>H===Y||H==="*").length===0)a0(Y,X.cmd,C);C+=1}),B.optional.forEach((X)=>{if(Z.length===0)return;let Q=Z.shift(),Y=r0(Q);if(X.cmd.filter((H)=>H===Y||H==="*").length===0)a0(Y,X.cmd,C);C+=1})}catch(C){console.warn(C.stack)}}function r0(D){if(Array.isArray(D))return"array";else if(D===null)return"null";return typeof D}function a0(D,u,F){throw new uD(`Invalid ${i1[F]||"manyith"} argument. Expected ${u.join(" or ")} but received ${D}.`)}class AF{constructor(D){this.globalMiddleware=[],this.frozens=[],this.yargs=D}addMiddleware(D,u,F=!0,E=!1){if(N("<array|function> [boolean] [boolean] [boolean]",[D,u,F],arguments.length),Array.isArray(D)){for(let C=0;C<D.length;C++){if(typeof D[C]!=="function")throw Error("middleware must be a function");let B=D[C];B.applyBeforeValidation=u,B.global=F}Array.prototype.push.apply(this.globalMiddleware,D)}else if(typeof D==="function"){let C=D;C.applyBeforeValidation=u,C.global=F,C.mutates=E,this.globalMiddleware.push(D)}return this.yargs}addCoerceMiddleware(D,u){let F=this.yargs.getAliases();return this.globalMiddleware=this.globalMiddleware.filter((E)=>{let C=[...F[u]||[],u];if(!E.option)return!0;else return!C.includes(E.option)}),D.option=u,this.addMiddleware(D,!0,!0,!0)}getMiddleware(){return this.globalMiddleware}freeze(){this.frozens.push([...this.globalMiddleware])}unfreeze(){let D=this.frozens.pop();if(D!==void 0)this.globalMiddleware=D}reset(){this.globalMiddleware=this.globalMiddleware.filter((D)=>D.global)}}function e0(D){if(!D)return[];return D.map((u)=>{return u.applyBeforeValidation=!1,u})}function yD(D,u,F,E){return F.reduce((C,B)=>{if(B.applyBeforeValidation!==E)return C;if(B.mutates){if(B.applied)return C;B.applied=!0}if(o(C))return C.then(($)=>Promise.all([$,B($,u)])).then(([$,z])=>Object.assign($,z));else{let $=B(C,u);return o($)?$.then((z)=>Object.assign(C,z)):Object.assign(C,$)}},D)}function iD(D,u,F=(E)=>{throw E}){try{let E=n1(D)?D():D;return o(E)?E.then((C)=>u(C)):u(E)}catch(E){return F(E)}}function n1(D){return typeof D==="function"}var Zu=/(^\*)|(^\$0)/;class u2{constructor(D,u,F,E){this.requireCache=new Set,this.handlers={},this.aliasMap={},this.frozens=[],this.shim=E,this.usage=D,this.globalMiddleware=F,this.validation=u}addDirectory(D,u,F,E){E=E||{},this.requireCache.add(F);let C=this.shim.path.resolve(this.shim.path.dirname(F),D),B=this.shim.readdirSync(C,{recursive:E.recurse?!0:!1});if(!Array.isArray(E.extensions))E.extensions=["js"];let $=typeof E.visit==="function"?E.visit:(z)=>z;for(let z of B){let Z=z.toString();if(E.exclude){let O=!1;if(typeof E.exclude==="function")O=E.exclude(Z);else O=E.exclude.test(Z);if(O)continue}if(E.include){let O=!1;if(typeof E.include==="function")O=E.include(Z);else O=E.include.test(Z);if(!O)continue}let J=!1;for(let O of E.extensions)if(Z.endsWith(O))J=!0;if(J){let O=this.shim.path.join(C,Z),X=u(O),Q=Object.create(null,Object.getOwnPropertyDescriptors({...X}));if($(Q,O,Z)){if(this.requireCache.has(O))continue;else this.requireCache.add(O);if(!Q.command)Q.command=this.shim.path.basename(O,this.shim.path.extname(O));this.addHandler(Q)}}}}addHandler(D,u,F,E,C,B){let $=[],z=e0(C);if(E=E||(()=>{}),Array.isArray(D))if(k1(D))[D,...$]=D;else for(let Z of D)this.addHandler(Z);else if(g1(D)){let Z=Array.isArray(D.command)||typeof D.command==="string"?D.command:null;if(Z===null)throw Error(`No command name given for module: ${this.shim.inspect(D)}`);if(D.aliases)Z=[].concat(Z).concat(D.aliases);this.addHandler(Z,this.extractDesc(D),D.builder,D.handler,D.middlewares,D.deprecated);return}else if(D2(F)){this.addHandler([D].concat($),u,F.builder,F.handler,F.middlewares,F.deprecated);return}if(typeof D==="string"){let Z=ID(D);$=$.map((X)=>ID(X).cmd);let J=!1,O=[Z.cmd].concat($).filter((X)=>{if(Zu.test(X))return J=!0,!1;return!0});if(O.length===0&&J)O.push("$0");if(J)Z.cmd=O[0],$=O.slice(1),D=D.replace(Zu,Z.cmd);if($.forEach((X)=>{this.aliasMap[X]=Z.cmd}),u!==!1)this.usage.command(D,u,J,$,B);if(this.handlers[Z.cmd]={original:D,description:u,handler:E,builder:F||{},middlewares:z,deprecated:B,demanded:Z.demanded,optional:Z.optional},J)this.defaultCommand=this.handlers[Z.cmd]}}getCommandHandlers(){return this.handlers}getCommands(){return Object.keys(this.handlers).concat(Object.keys(this.aliasMap))}hasDefaultCommand(){return!!this.defaultCommand}runCommand(D,u,F,E,C,B){let $=this.handlers[D]||this.handlers[this.aliasMap[D]]||this.defaultCommand,z=u.getInternalMethods().getContext(),Z=z.commands.slice(),J=!D;if(D)z.commands.push(D),z.fullCommands.push($.original);let O=this.applyBuilderUpdateUsageAndParse(J,$,u,F.aliases,Z,E,C,B);return o(O)?O.then((X)=>this.applyMiddlewareAndGetResult(J,$,X.innerArgv,z,C,X.aliases,u)):this.applyMiddlewareAndGetResult(J,$,O.innerArgv,z,C,O.aliases,u)}applyBuilderUpdateUsageAndParse(D,u,F,E,C,B,$,z){let Z=u.builder,J=F;if(pu(Z)){F.getInternalMethods().getUsageInstance().freeze();let O=Z(F.getInternalMethods().reset(E),z);if(o(O))return O.then((X)=>{return J=E2(X)?X:F,this.parseAndUpdateUsage(D,u,J,C,B,$)})}else if(d1(Z))F.getInternalMethods().getUsageInstance().freeze(),J=F.getInternalMethods().reset(E),Object.keys(u.builder).forEach((O)=>{J.option(O,Z[O])});return this.parseAndUpdateUsage(D,u,J,C,B,$)}parseAndUpdateUsage(D,u,F,E,C,B){if(D)F.getInternalMethods().getUsageInstance().unfreeze(!0);if(this.shouldUpdateUsage(F))F.getInternalMethods().getUsageInstance().usage(this.usageFromParentCommandsCommandHandler(E,u),u.description);let $=F.getInternalMethods().runYargsParserAndExecuteCommands(null,void 0,!0,C,B);return o($)?$.then((z)=>({aliases:F.parsed.aliases,innerArgv:z})):{aliases:F.parsed.aliases,innerArgv:$}}shouldUpdateUsage(D){return!D.getInternalMethods().getUsageInstance().getUsageDisabled()&&D.getInternalMethods().getUsageInstance().getUsage().length===0}usageFromParentCommandsCommandHandler(D,u){let F=Zu.test(u.original)?u.original.replace(Zu,"").trim():u.original,E=D.filter((C)=>{return!Zu.test(C)});return E.push(F),`$0 ${E.join(" ")}`}handleValidationAndGetResult(D,u,F,E,C,B,$,z){if(!B.getInternalMethods().getHasOutput()){let Z=B.getInternalMethods().runValidation(C,z,B.parsed.error,D);F=iD(F,(J)=>{return Z(J),J})}if(u.handler&&!B.getInternalMethods().getHasOutput()){B.getInternalMethods().setHasOutput();let Z=!!B.getOptions().configuration["populate--"];if(B.getInternalMethods().postProcess(F,Z,!1,!1),F=yD(F,B,$,!1),F=iD(F,(J)=>{let O=u.handler(J);return o(O)?O.then(()=>J):J}),!D)B.getInternalMethods().getUsageInstance().cacheHelpMessage();if(o(F)&&!B.getInternalMethods().hasParseCallback())F.catch((J)=>{try{B.getInternalMethods().getUsageInstance().fail(null,J)}catch(O){}})}if(!D)E.commands.pop(),E.fullCommands.pop();return F}applyMiddlewareAndGetResult(D,u,F,E,C,B,$){let z={};if(C)return F;if(!$.getInternalMethods().getHasOutput())z=this.populatePositionals(u,F,E,$);let Z=this.globalMiddleware.getMiddleware().slice(0).concat(u.middlewares),J=yD(F,$,Z,!0);return o(J)?J.then((O)=>this.handleValidationAndGetResult(D,u,O,E,B,$,Z,z)):this.handleValidationAndGetResult(D,u,J,E,B,$,Z,z)}populatePositionals(D,u,F,E){u._=u._.slice(F.commands.length);let C=D.demanded.slice(0),B=D.optional.slice(0),$={};this.validation.positionalCount(C.length,u._.length);while(C.length){let z=C.shift();this.populatePositional(z,u,$)}while(B.length){let z=B.shift();this.populatePositional(z,u,$)}return u._=F.commands.concat(u._.map((z)=>""+z)),this.postProcessPositionals(u,$,this.cmdToParseOptions(D.original),E),$}populatePositional(D,u,F){let E=D.cmd[0];if(D.variadic)F[E]=u._.splice(0).map(String);else if(u._.length)F[E]=[String(u._.shift())]}cmdToParseOptions(D){let u={array:[],default:{},alias:{},demand:{}},F=ID(D);return F.demanded.forEach((E)=>{let[C,...B]=E.cmd;if(E.variadic)u.array.push(C),u.default[C]=[];u.alias[C]=B,u.demand[C]=!0}),F.optional.forEach((E)=>{let[C,...B]=E.cmd;if(E.variadic)u.array.push(C),u.default[C]=[];u.alias[C]=B}),u}postProcessPositionals(D,u,F,E){let C=Object.assign({},E.getOptions());C.default=Object.assign(F.default,C.default);for(let Z of Object.keys(F.alias))C.alias[Z]=(C.alias[Z]||[]).concat(F.alias[Z]);C.array=C.array.concat(F.array),C.config={};let B=[];if(Object.keys(u).forEach((Z)=>{u[Z].map((J)=>{if(C.configuration["unknown-options-as-args"])C.key[Z]=!0;B.push(`--${Z}`),B.push(J)})}),!B.length)return;let $=Object.assign({},C.configuration,{"populate--":!1}),z=this.shim.Parser.detailed(B,Object.assign({},C,{configuration:$}));if(z.error)E.getInternalMethods().getUsageInstance().fail(z.error.message,z.error);else{let Z=Object.keys(u);Object.keys(u).forEach((J)=>{Z.push(...z.aliases[J])}),Object.keys(z.argv).forEach((J)=>{if(Z.includes(J)){if(!u[J])u[J]=z.argv[J];if(!this.isInConfigs(E,J)&&!this.isDefaulted(E,J)&&Object.prototype.hasOwnProperty.call(D,J)&&Object.prototype.hasOwnProperty.call(z.argv,J)&&(Array.isArray(D[J])||Array.isArray(z.argv[J])))D[J]=[].concat(D[J],z.argv[J]);else D[J]=z.argv[J]}})}}isDefaulted(D,u){let{default:F}=D.getOptions();return Object.prototype.hasOwnProperty.call(F,u)||Object.prototype.hasOwnProperty.call(F,this.shim.Parser.camelCase(u))}isInConfigs(D,u){let{configObjects:F}=D.getOptions();return F.some((E)=>Object.prototype.hasOwnProperty.call(E,u))||F.some((E)=>Object.prototype.hasOwnProperty.call(E,this.shim.Parser.camelCase(u)))}runDefaultBuilderOn(D){if(!this.defaultCommand)return;if(this.shouldUpdateUsage(D)){let F=Zu.test(this.defaultCommand.original)?this.defaultCommand.original:this.defaultCommand.original.replace(/^[^[\]<>]*/,"$0 ");D.getInternalMethods().getUsageInstance().usage(F,this.defaultCommand.description)}let u=this.defaultCommand.builder;if(pu(u))return u(D,!0);else if(!D2(u))Object.keys(u).forEach((F)=>{D.option(F,u[F])});return}extractDesc({describe:D,description:u,desc:F}){for(let E of[D,u,F]){if(typeof E==="string"||E===!1)return E;QD(E,!0,this.shim)}return!1}freeze(){this.frozens.push({handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand})}unfreeze(){let D=this.frozens.pop();QD(D,void 0,this.shim),{handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand}=D}reset(){return this.handlers={},this.aliasMap={},this.defaultCommand=void 0,this.requireCache=new Set,this}}function F2(D,u,F,E){return new u2(D,u,F,E)}function D2(D){return typeof D==="object"&&!!D.builder&&typeof D.handler==="function"}function k1(D){return D.every((u)=>typeof u==="string")}function pu(D){return typeof D==="function"}function d1(D){return typeof D==="object"}function g1(D){return typeof D==="object"&&!Array.isArray(D)}function fD(D={},u=()=>!0){let F={};return Gu(D).forEach((E)=>{if(u(E,D[E]))F[E]=D[E]}),F}function xD(D){if(typeof process>"u")return;[process.stdout,process.stderr].forEach((u)=>{let F=u;if(F._handle&&F.isTTY&&typeof F._handle.setBlocking==="function")F._handle.setBlocking(D)})}function t1(D){return typeof D==="boolean"}function B2(D,u){let F=u.y18n.__,E={},C=[];E.failFn=function(K){C.push(K)};let B=null,$=null,z=!0;E.showHelpOnFail=function(K=!0,P){let[p,k]=typeof K==="string"?[!0,K]:[K,P];if(D.getInternalMethods().isGlobalContext())$=k;return B=k,z=p,E};let Z=!1;E.fail=function(K,P){let p=D.getInternalMethods().getLoggerInstance();if(C.length)for(let k=C.length-1;k>=0;--k){let ED=C[k];if(t1(ED)){if(P)throw P;else if(K)throw Error(K)}else ED(K,P,E)}else{if(D.getExitProcess())xD(!0);if(!Z){if(Z=!0,z)D.showHelp("error"),p.error();if(K||P)p.error(K||P);let k=B||$;if(k){if(K||P)p.error("");p.error(k)}}if(P=P||new uD(K),D.getExitProcess())return D.exit(1);else if(D.getInternalMethods().hasParseCallback())return D.exit(1,P);else throw P}};let J=[],O=!1;E.usage=(L,K)=>{if(L===null)return O=!0,J=[],E;return O=!1,J.push([L,K||""]),E},E.getUsage=()=>{return J},E.getUsageDisabled=()=>{return O},E.getPositionalGroupName=()=>{return F("Positionals:")};let X=[];E.example=(L,K)=>{X.push([L,K||""])};let Q=[];E.command=function(K,P,p,k,ED=!1){if(p)Q=Q.map((n)=>{return n[2]=!1,n});Q.push([K,P||"",p,k,ED])},E.getCommands=()=>Q;let Y={};E.describe=function(K,P){if(Array.isArray(K))K.forEach((p)=>{E.describe(p,P)});else if(typeof K==="object")Object.keys(K).forEach((p)=>{E.describe(p,K[p])});else Y[K]=P},E.getDescriptions=()=>Y;let M=[];E.epilog=(L)=>{M.push(L)};let H=!1,_;E.wrap=(L)=>{H=!0,_=L},E.getWrap=()=>{if(u.getEnv("YARGS_DISABLE_WRAP"))return null;if(!H)_=RD(),H=!0;return _};let S="__yargsString__:";E.deferY18nLookup=(L)=>S+L,E.help=function(){if(x)return x;d();let K=D.customScriptName?D.$0:u.path.basename(D.$0),P=D.getDemandedOptions(),p=D.getDemandedCommands(),k=D.getDeprecatedOptions(),ED=D.getGroups(),n=D.getOptions(),CD=[];CD=CD.concat(Object.keys(Y)),CD=CD.concat(Object.keys(P)),CD=CD.concat(Object.keys(p)),CD=CD.concat(Object.keys(n.default)),CD=CD.filter(a),CD=Object.keys(CD.reduce((h,t)=>{if(t!=="_")h[t]=!0;return h},{}));let wD=E.getWrap(),l=u.cliui({width:wD,wrap:!!wD});if(!O){if(J.length)J.forEach((h)=>{if(l.div({text:`${h[0].replace(/\$0/g,K)}`}),h[1])l.div({text:`${h[1]}`,padding:[1,0,0,0]})}),l.div();else if(Q.length){let h=null;if(p._)h=`${K} <${F("command")}>
13
+ `).map((E)=>M3(E,u,F)).join(`
14
+ `)}function UF(D){return J0(D,{stringWidth:KD,stripAnsi:cD,wrap:qF})}import{dirname as b0,resolve as h0}from"path";import{readdirSync as H3,statSync as V3}from"fs";function jF(D,u){let F=h0(".",D),E;if(!V3(F).isDirectory())F=b0(F);while(!0){if(E=u(F,H3(F)),E)return h0(F,E);if(F=b0(E=F),E===F)break}}import{inspect as h3}from"util";import{fileURLToPath as e0}from"url";import{format as j3}from"util";import{normalize as _3,resolve as K3}from"path";function yD(D){if(!(D!==D.toLowerCase()&&D!==D.toUpperCase()))D=D.toLowerCase();if(D.indexOf("-")===-1&&D.indexOf("_")===-1)return D;else{let F="",E=!1,C=D.match(/^-+/);for(let B=C?C[0].length:0;B<D.length;B++){let $=D.charAt(B);if(E)E=!1,$=$.toUpperCase();if(B!==0&&($==="-"||$==="_"))E=!0;else if($!=="-"&&$!=="_")F+=$}return F}}function vu(D,u){let F=D.toLowerCase();u=u||"-";let E="";for(let C=0;C<D.length;C++){let B=F.charAt(C),$=D.charAt(C);if(B!==$&&C>0)E+=`${u}${F.charAt(C)}`;else E+=$}return E}function pu(D){if(D===null||D===void 0)return!1;if(typeof D==="number")return!0;if(/^0x[0-9a-f]+$/i.test(D))return!0;if(/^0[^.]/.test(D))return!1;return/^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(D)}function v0(D){if(Array.isArray(D))return D.map(($)=>typeof $!=="string"?$+"":$);D=D.trim();let u=0,F=null,E=null,C=null,B=[];for(let $=0;$<D.length;$++){if(F=E,E=D.charAt($),E===" "&&!C){if(F!==" ")u++;continue}if(E===C)C=null;else if((E==="'"||E==='"')&&!C)C=E;if(!B[u])B[u]="";B[u]+=E}return B}var qD;(function(D){D.BOOLEAN="boolean",D.STRING="string",D.NUMBER="number",D.ARRAY="array"})(qD||(qD={}));var PD;class KF{constructor(D){PD=D}parse(D,u){let F=Object.assign({alias:void 0,array:void 0,boolean:void 0,config:void 0,configObjects:void 0,configuration:void 0,coerce:void 0,count:void 0,default:void 0,envPrefix:void 0,narg:void 0,normalize:void 0,string:void 0,number:void 0,__:void 0,key:void 0},u),E=v0(D),C=typeof D==="string",B=q3(Object.assign(Object.create(null),F.alias)),$=Object.assign({"boolean-negation":!0,"camel-case-expansion":!0,"combine-arrays":!1,"dot-notation":!0,"duplicate-arguments-array":!0,"flatten-duplicate-arrays":!0,"greedy-arrays":!0,"halt-at-non-option":!1,"nargs-eats-options":!1,"negation-prefix":"no-","parse-numbers":!0,"parse-positional-numbers":!0,"populate--":!1,"set-placeholder-key":!1,"short-option-groups":!0,"strip-aliased":!1,"strip-dashed":!1,"unknown-options-as-args":!1},F.configuration),z=Object.assign(Object.create(null),F.default),Z=F.configObjects||[],X=F.envPrefix,O=$["populate--"],J=O?"--":"_",Q=Object.create(null),Y=Object.create(null),M=F.__||PD.format,H={aliases:Object.create(null),arrays:Object.create(null),bools:Object.create(null),strings:Object.create(null),numbers:Object.create(null),counts:Object.create(null),normalize:Object.create(null),configs:Object.create(null),nargs:Object.create(null),coercions:Object.create(null),keys:[]},j=/^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/,A=new RegExp("^--"+$["negation-prefix"]+"(.+)");if([].concat(F.array||[]).filter(Boolean).forEach(function(W){let q=typeof W==="object"?W.key:W,_=Object.keys(W).map(function(U){return{boolean:"bools",string:"strings",number:"numbers"}[U]}).filter(Boolean).pop();if(_)H[_][q]=!0;H.arrays[q]=!0,H.keys.push(q)}),[].concat(F.boolean||[]).filter(Boolean).forEach(function(W){H.bools[W]=!0,H.keys.push(W)}),[].concat(F.string||[]).filter(Boolean).forEach(function(W){H.strings[W]=!0,H.keys.push(W)}),[].concat(F.number||[]).filter(Boolean).forEach(function(W){H.numbers[W]=!0,H.keys.push(W)}),[].concat(F.count||[]).filter(Boolean).forEach(function(W){H.counts[W]=!0,H.keys.push(W)}),[].concat(F.normalize||[]).filter(Boolean).forEach(function(W){H.normalize[W]=!0,H.keys.push(W)}),typeof F.narg==="object")Object.entries(F.narg).forEach(([W,q])=>{if(typeof q==="number")H.nargs[W]=q,H.keys.push(W)});if(typeof F.coerce==="object")Object.entries(F.coerce).forEach(([W,q])=>{if(typeof q==="function")H.coercions[W]=q,H.keys.push(W)});if(typeof F.config<"u"){if(Array.isArray(F.config)||typeof F.config==="string")[].concat(F.config).filter(Boolean).forEach(function(W){H.configs[W]=!0});else if(typeof F.config==="object")Object.entries(F.config).forEach(([W,q])=>{if(typeof q==="boolean"||typeof q==="function")H.configs[W]=q})}Vu(F.key,B,F.default,H.arrays),Object.keys(z).forEach(function(W){(H.aliases[W]||[]).forEach(function(q){z[q]=z[W]})});let x=null;YF();let n=[],f=Object.assign(Object.create(null),{_:[]}),i={};for(let W=0;W<E.length;W++){let q=E[W],_=q.replace(/^-{3,}/,"---"),U,V,R,N,I,GD;if(q!=="--"&&/^-/.test(q)&&t(q))a(q);else if(_.match(/^---+(=|$)/)){a(q);continue}else if(q.match(/^--.+=/)||!$["short-option-groups"]&&q.match(/^-.+=/)){if(N=q.match(/^--?([^=]+)=([\s\S]*)$/),N!==null&&Array.isArray(N)&&N.length>=3)if(b(N[1],H.arrays))W=AD(W,N[1],E,N[2]);else if(b(N[1],H.nargs)!==!1)W=e(W,N[1],E,N[2]);else g(N[1],N[2],!0)}else if(q.match(A)&&$["boolean-negation"]){if(N=q.match(A),N!==null&&Array.isArray(N)&&N.length>=2)V=N[1],g(V,b(V,H.arrays)?[!1]:!1)}else if(q.match(/^--.+/)||!$["short-option-groups"]&&q.match(/^-[^-]+/)){if(N=q.match(/^--?(.+)/),N!==null&&Array.isArray(N)&&N.length>=2)if(V=N[1],b(V,H.arrays))W=AD(W,V,E);else if(b(V,H.nargs)!==!1)W=e(W,V,E);else if(I=E[W+1],I!==void 0&&(!I.match(/^-/)||I.match(j))&&!b(V,H.bools)&&!b(V,H.counts))g(V,I),W++;else if(/^(true|false)$/.test(I))g(V,I),W++;else g(V,c(V))}else if(q.match(/^-.\..+=/)){if(N=q.match(/^-([^=]+)=([\s\S]*)$/),N!==null&&Array.isArray(N)&&N.length>=3)g(N[1],N[2])}else if(q.match(/^-.\..+/)&&!q.match(j)){if(I=E[W+1],N=q.match(/^-(.\..+)/),N!==null&&Array.isArray(N)&&N.length>=2)if(V=N[1],I!==void 0&&!I.match(/^-/)&&!b(V,H.bools)&&!b(V,H.counts))g(V,I),W++;else g(V,c(V))}else if(q.match(/^-[^-]+/)&&!q.match(j)){R=q.slice(1,-1).split(""),U=!1;for(let XD=0;XD<R.length;XD++){if(I=q.slice(XD+2),R[XD+1]&&R[XD+1]==="="){if(GD=q.slice(XD+3),V=R[XD],b(V,H.arrays))W=AD(W,V,E,GD);else if(b(V,H.nargs)!==!1)W=e(W,V,E,GD);else g(V,GD);U=!0;break}if(I==="-"){g(R[XD],I);continue}if(/[A-Za-z]/.test(R[XD])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(I)&&b(I,H.bools)===!1){g(R[XD],I),U=!0;break}if(R[XD+1]&&R[XD+1].match(/\W/)){g(R[XD],I),U=!0;break}else g(R[XD],c(R[XD]))}if(V=q.slice(-1)[0],!U&&V!=="-")if(b(V,H.arrays))W=AD(W,V,E);else if(b(V,H.nargs)!==!1)W=e(W,V,E);else if(I=E[W+1],I!==void 0&&(!/^(-|--)[^-]/.test(I)||I.match(j))&&!b(V,H.bools)&&!b(V,H.counts))g(V,I),W++;else if(/^(true|false)$/.test(I))g(V,I),W++;else g(V,c(V))}else if(q.match(/^-[0-9]$/)&&q.match(j)&&b(q.slice(1),H.bools))V=q.slice(1),g(V,c(V));else if(q==="--"){n=E.slice(W+1);break}else if($["halt-at-non-option"]){n=E.slice(W);break}else a(q)}if(ED(f,!0),ED(f,!1),P(f),d(),wD(f,H.aliases,z,!0),k(f),$["set-placeholder-key"])BD(f);if(Object.keys(H.counts).forEach(function(W){if(!l(f,W.split(".")))g(W,0)}),O&&n.length)f[J]=[];if(n.forEach(function(W){f[J].push(W)}),$["camel-case-expansion"]&&$["strip-dashed"])Object.keys(f).filter((W)=>W!=="--"&&W.includes("-")).forEach((W)=>{delete f[W]});if($["strip-aliased"])[].concat(...Object.keys(B).map((W)=>B[W])).forEach((W)=>{if($["camel-case-expansion"]&&W.includes("-"))delete f[W.split(".").map((q)=>yD(q)).join(".")];delete f[W]});function a(W){let q=K("_",W);if(typeof q==="string"||typeof q==="number")f._.push(q)}function e(W,q,_,U){let V,R=b(q,H.nargs);if(R=typeof R!=="number"||isNaN(R)?1:R,R===0){if(!zD(U))x=Error(M("Argument unexpected for: %s",q));return g(q,c(q)),W}let N=zD(U)?0:1;if($["nargs-eats-options"]){if(_.length-(W+1)+N<R)x=Error(M("Not enough arguments following: %s",q));N=R}else{for(V=W+1;V<_.length;V++)if(!_[V].match(/^-[^0-9]/)||_[V].match(j)||t(_[V]))N++;else break;if(N<R)x=Error(M("Not enough arguments following: %s",q))}let I=Math.min(N,R);if(!zD(U)&&I>0)g(q,U),I--;for(V=W+1;V<I+W+1;V++)g(q,_[V]);return W+I}function AD(W,q,_,U){let V=[],R=U||_[W+1],N=b(q,H.nargs);if(b(q,H.bools)&&!/^(true|false)$/.test(R))V.push(!0);else if(zD(R)||zD(U)&&/^-/.test(R)&&!j.test(R)&&!t(R)){if(z[q]!==void 0){let I=z[q];V=Array.isArray(I)?I:[I]}}else{if(!zD(U))V.push(S(q,U,!0));for(let I=W+1;I<_.length;I++){if(!$["greedy-arrays"]&&V.length>0||N&&typeof N==="number"&&V.length>=N)break;if(R=_[I],/^-/.test(R)&&!j.test(R)&&!t(R))break;W=I,V.push(S(q,R,C))}}if(typeof N==="number"&&(N&&V.length<N||isNaN(N)&&V.length===0))x=Error(M("Not enough arguments following: %s",q));return g(q,V),W}function g(W,q,_=C){if(/-/.test(W)&&$["camel-case-expansion"]){let R=W.split(".").map(function(N){return yD(N)}).join(".");Hu(W,R)}let U=S(W,q,_),V=W.split(".");if(SD(f,V,U),H.aliases[W])H.aliases[W].forEach(function(R){let N=R.split(".");SD(f,N,U)});if(V.length>1&&$["dot-notation"])(H.aliases[V[0]]||[]).forEach(function(R){let N=R.split("."),I=[].concat(V);if(I.shift(),N=N.concat(I),!(H.aliases[W]||[]).includes(N.join(".")))SD(f,N,U)});if(b(W,H.normalize)&&!b(W,H.arrays))[W].concat(H.aliases[W]||[]).forEach(function(N){Object.defineProperty(i,N,{enumerable:!0,get(){return q},set(I){q=typeof I==="string"?PD.normalize(I):I}})})}function Hu(W,q){if(!(H.aliases[W]&&H.aliases[W].length))H.aliases[W]=[q],Q[q]=!0;if(!(H.aliases[q]&&H.aliases[q].length))Hu(q,W)}function S(W,q,_){if(_)q=U3(q);if(b(W,H.bools)||b(W,H.counts)){if(typeof q==="string")q=q==="true"}let U=Array.isArray(q)?q.map(function(V){return K(W,V)}):K(W,q);if(b(W,H.counts)&&(zD(U)||typeof U==="boolean"))U=_F();if(b(W,H.normalize)&&b(W,H.arrays))if(Array.isArray(q))U=q.map((V)=>{return PD.normalize(V)});else U=PD.normalize(q);return U}function K(W,q){if(!$["parse-positional-numbers"]&&W==="_")return q;if(!b(W,H.strings)&&!b(W,H.bools)&&!Array.isArray(q)){if(pu(q)&&$["parse-numbers"]&&Number.isSafeInteger(Math.floor(parseFloat(`${q}`)))||!zD(q)&&b(W,H.numbers))q=Number(q)}return q}function P(W){let q=Object.create(null);wD(q,H.aliases,z),Object.keys(H.configs).forEach(function(_){let U=W[_]||q[_];if(U)try{let V=null,R=PD.resolve(PD.cwd(),U),N=H.configs[_];if(typeof N==="function"){try{V=N(R)}catch(I){V=I}if(V instanceof Error){x=V;return}}else V=PD.require(R);p(V)}catch(V){if(V.name==="PermissionDenied")x=V;else if(W[_])x=Error(M("Invalid JSON config file: %s",U))}})}function p(W,q){Object.keys(W).forEach(function(_){let U=W[_],V=q?q+"."+_:_;if(typeof U==="object"&&U!==null&&!Array.isArray(U)&&$["dot-notation"])p(U,V);else if(!l(f,V.split("."))||b(V,H.arrays)&&$["combine-arrays"])g(V,U)})}function d(){if(typeof Z<"u")Z.forEach(function(W){p(W)})}function ED(W,q){if(typeof X>"u")return;let _=typeof X==="string"?X:"",U=PD.env();Object.keys(U).forEach(function(V){if(_===""||V.lastIndexOf(_,0)===0){let R=V.split("__").map(function(N,I){if(I===0)N=N.substring(_.length);return yD(N)});if((q&&H.configs[R.join(".")]||!q)&&!l(W,R))g(R.join("."),U[V])}})}function k(W){let q,_=new Set;Object.keys(W).forEach(function(U){if(!_.has(U)){if(q=b(U,H.coercions),typeof q==="function")try{let V=K(U,q(W[U]));[].concat(H.aliases[U]||[],U).forEach((R)=>{_.add(R),W[R]=V})}catch(V){x=V}}})}function BD(W){return H.keys.forEach((q)=>{if(~q.indexOf("."))return;if(typeof W[q]>"u")W[q]=void 0}),W}function wD(W,q,_,U=!1){Object.keys(_).forEach(function(V){if(!l(W,V.split("."))){if(SD(W,V.split("."),_[V]),U)Y[V]=!0;(q[V]||[]).forEach(function(R){if(l(W,R.split(".")))return;SD(W,R.split("."),_[V])})}})}function l(W,q){let _=W;if(!$["dot-notation"])q=[q.join(".")];q.slice(0,-1).forEach(function(V){_=_[V]||{}});let U=q[q.length-1];if(typeof _!=="object")return!1;else return U in _}function SD(W,q,_){let U=W;if(!$["dot-notation"])q=[q.join(".")];q.slice(0,-1).forEach(function(GD){if(GD=p0(GD),typeof U==="object"&&U[GD]===void 0)U[GD]={};if(typeof U[GD]!=="object"||Array.isArray(U[GD])){if(Array.isArray(U[GD]))U[GD].push({});else U[GD]=[U[GD],{}];U=U[GD][U[GD].length-1]}else U=U[GD]});let V=p0(q[q.length-1]),R=b(q.join("."),H.arrays),N=Array.isArray(_),I=$["duplicate-arguments-array"];if(!I&&b(V,H.nargs)){if(I=!0,!zD(U[V])&&H.nargs[V]===1||Array.isArray(U[V])&&U[V].length===H.nargs[V])U[V]=void 0}if(_===_F())U[V]=_F(U[V]);else if(Array.isArray(U[V]))if(I&&R&&N)U[V]=$["flatten-duplicate-arrays"]?U[V].concat(_):(Array.isArray(U[V][0])?U[V]:[U[V]]).concat([_]);else if(!I&&Boolean(R)===Boolean(N))U[V]=_;else U[V]=U[V].concat([_]);else if(U[V]===void 0&&R)U[V]=N?_:[_];else if(I&&!(U[V]===void 0||b(V,H.counts)||b(V,H.bools)))U[V]=[U[V],_];else U[V]=_}function Vu(...W){W.forEach(function(q){Object.keys(q||{}).forEach(function(_){if(H.aliases[_])return;H.aliases[_]=[].concat(B[_]||[]),H.aliases[_].concat(_).forEach(function(U){if(/-/.test(U)&&$["camel-case-expansion"]){let V=yD(U);if(V!==_&&H.aliases[_].indexOf(V)===-1)H.aliases[_].push(V),Q[V]=!0}}),H.aliases[_].concat(_).forEach(function(U){if(U.length>1&&/[A-Z]/.test(U)&&$["camel-case-expansion"]){let V=vu(U,"-");if(V!==_&&H.aliases[_].indexOf(V)===-1)H.aliases[_].push(V),Q[V]=!0}}),H.aliases[_].forEach(function(U){H.aliases[U]=[_].concat(H.aliases[_].filter(function(V){return U!==V}))})})})}function b(W,q){let _=[].concat(H.aliases[W]||[],W),U=Object.keys(q),V=_.find((R)=>U.includes(R));return V?q[V]:!1}function zu(W){let q=Object.keys(H);return[].concat(q.map((U)=>H[U])).some(function(U){return Array.isArray(U)?U.includes(W):U[W]})}function C0(W,...q){return[].concat(...q).some(function(U){let V=W.match(U);return V&&zu(V[1])})}function h(W){if(W.match(j)||!W.match(/^-[^-]+/))return!1;let q=!0,_,U=W.slice(1).split("");for(let V=0;V<U.length;V++){if(_=W.slice(V+2),!zu(U[V])){q=!1;break}if(U[V+1]&&U[V+1]==="="||_==="-"||/[A-Za-z]/.test(U[V])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(_)||U[V+1]&&U[V+1].match(/\W/))break}return q}function t(W){return $["unknown-options-as-args"]&&$D(W)}function $D(W){if(W=W.replace(/^-{3,}/,"--"),W.match(j))return!1;if(h(W))return!1;return!C0(W,/^-+([^=]+?)=[\s\S]*$/,A,/^-+([^=]+?)$/,/^-+([^=]+?)-$/,/^-+([^=]+?\d+)$/,/^-+([^=]+?)\W+.*$/)}function c(W){if(!b(W,H.bools)&&!b(W,H.counts)&&`${W}`in z)return z[W];else return JD(DD(W))}function JD(W){return{[qD.BOOLEAN]:!0,[qD.STRING]:"",[qD.NUMBER]:void 0,[qD.ARRAY]:[]}[W]}function DD(W){let q=qD.BOOLEAN;if(b(W,H.strings))q=qD.STRING;else if(b(W,H.numbers))q=qD.NUMBER;else if(b(W,H.bools))q=qD.BOOLEAN;else if(b(W,H.arrays))q=qD.ARRAY;return q}function zD(W){return W===void 0}function YF(){Object.keys(H.counts).find((W)=>{if(b(W,H.arrays))return x=Error(M("Invalid configuration: %s, opts.count excludes opts.array.",W)),!0;else if(b(W,H.nargs))return x=Error(M("Invalid configuration: %s, opts.count excludes opts.narg.",W)),!0;return!1})}return{aliases:Object.assign({},H.aliases),argv:Object.assign(i,f),configuration:$,defaulted:Object.assign({},Y),error:x,newAliases:Object.assign({},Q)}}}function q3(D){let u=[],F=Object.create(null),E=!0;Object.keys(D).forEach(function(C){u.push([].concat(D[C],C))});while(E){E=!1;for(let C=0;C<u.length;C++)for(let B=C+1;B<u.length;B++)if(u[C].filter(function(z){return u[B].indexOf(z)!==-1}).length){u[C]=u[C].concat(u[B]),u.splice(B,1),E=!0;break}}return u.forEach(function(C){C=C.filter(function($,z,Z){return Z.indexOf($)===z});let B=C.pop();if(B!==void 0&&typeof B==="string")F[B]=C}),F}function _F(D){return D!==void 0?D+1:1}function p0(D){if(D==="__proto__")return"___proto___";return D}function U3(D){return typeof D==="string"&&(D[0]==="'"||D[0]==='"')&&D[D.length-1]===D[0]?D.substring(1,D.length-1):D}import{readFileSync as N3}from"fs";import{createRequire as m0}from"node:module";var NF,TF,AF,c0=process&&process.env&&process.env.YARGS_MIN_NODE_VERSION?Number(process.env.YARGS_MIN_NODE_VERSION):20,y0=(TF=(NF=process===null||process===void 0?void 0:process.versions)===null||NF===void 0?void 0:NF.node)!==null&&TF!==void 0?TF:(AF=process===null||process===void 0?void 0:process.version)===null||AF===void 0?void 0:AF.slice(1);if(y0){if(Number(y0.match(/^([^.]+)/)[1])<c0)throw Error(`yargs parser supports a minimum Node.js version of ${c0}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`)}var T3=process?process.env:{},i0=m0?m0(import.meta.url):void 0,k0=new KF({cwd:process.cwd,env:()=>{return T3},format:j3,normalize:_3,resolve:K3,require:(D)=>{if(typeof i0<"u")return i0(D);else if(D.match(/\.json$/))return JSON.parse(N3(D,"utf8"));else throw Error("only .json config files are supported in ESM")}}),qu=function(u,F){return k0.parse(u.slice(),F).argv};qu.detailed=function(D,u){return k0.parse(D.slice(),u)};qu.camelCase=yD;qu.decamelize=vu;qu.looksLikeNumber=pu;var LF=qu;import{basename as v3,dirname as p3,extname as m3,relative as c3,resolve as a0,join as y3}from"path";function d0(){if(A3())return 0;return 1}function A3(){return L3()&&!process.defaultApp}function L3(){return!!process.versions.electron}function RF(D){return D.slice(d0()+1)}function n0(){return process.argv[d0()]}import{readFileSync as R3,statSync as S3,writeFile as P3}from"fs";import{format as w3}from"util";import{resolve as I3}from"path";var g0={fs:{readFileSync:R3,writeFile:P3},format:w3,resolve:I3,exists:(D)=>{try{return S3(D).isFile()}catch(u){return!1}}};var ND;class t0{constructor(D){D=D||{},this.directory=D.directory||"./locales",this.updateFiles=typeof D.updateFiles==="boolean"?D.updateFiles:!0,this.locale=D.locale||"en",this.fallbackToLanguage=typeof D.fallbackToLanguage==="boolean"?D.fallbackToLanguage:!0,this.cache=Object.create(null),this.writeQueue=[]}__(...D){if(typeof arguments[0]!=="string")return this._taggedLiteral(arguments[0],...arguments);let u=D.shift(),F=function(){};if(typeof D[D.length-1]==="function")F=D.pop();if(F=F||function(){},!this.cache[this.locale])this._readLocaleFile();if(!this.cache[this.locale][u]&&this.updateFiles)this.cache[this.locale][u]=u,this._enqueueWrite({directory:this.directory,locale:this.locale,cb:F});else F();return ND.format.apply(ND.format,[this.cache[this.locale][u]||u].concat(D))}__n(){let D=Array.prototype.slice.call(arguments),u=D.shift(),F=D.shift(),E=D.shift(),C=function(){};if(typeof D[D.length-1]==="function")C=D.pop();if(!this.cache[this.locale])this._readLocaleFile();let B=E===1?u:F;if(this.cache[this.locale][u])B=this.cache[this.locale][u][E===1?"one":"other"];if(!this.cache[this.locale][u]&&this.updateFiles)this.cache[this.locale][u]={one:u,other:F},this._enqueueWrite({directory:this.directory,locale:this.locale,cb:C});else C();let $=[B];if(~B.indexOf("%d"))$.push(E);return ND.format.apply(ND.format,$.concat(D))}setLocale(D){this.locale=D}getLocale(){return this.locale}updateLocale(D){if(!this.cache[this.locale])this._readLocaleFile();for(let u in D)if(Object.prototype.hasOwnProperty.call(D,u))this.cache[this.locale][u]=D[u]}_taggedLiteral(D,...u){let F="";return D.forEach(function(E,C){let B=u[C+1];if(F+=E,typeof B<"u")F+="%s"}),this.__.apply(this,[F].concat([].slice.call(u,1)))}_enqueueWrite(D){if(this.writeQueue.push(D),this.writeQueue.length===1)this._processWriteQueue()}_processWriteQueue(){let D=this,u=this.writeQueue[0],F=u.directory,E=u.locale,C=u.cb,B=this._resolveLocaleFile(F,E),$=JSON.stringify(this.cache[E],null,2);ND.fs.writeFile(B,$,"utf-8",function(z){if(D.writeQueue.shift(),D.writeQueue.length>0)D._processWriteQueue();C(z)})}_readLocaleFile(){let D={},u=this._resolveLocaleFile(this.directory,this.locale);try{if(ND.fs.readFileSync)D=JSON.parse(ND.fs.readFileSync(u,"utf-8"))}catch(F){if(F instanceof SyntaxError)F.message="syntax error in "+u;if(F.code==="ENOENT")D={};else throw F}this.cache[this.locale]=D}_resolveLocaleFile(D,u){let F=ND.resolve(D,"./",u+".json");if(this.fallbackToLanguage&&!this._fileExistsSync(F)&&~u.lastIndexOf("_")){let E=ND.resolve(D,"./",u.split("_")[0]+".json");if(this._fileExistsSync(E))F=E}return F}_fileExistsSync(D){return ND.exists(D)}}function l0(D,u){ND=u;let F=new t0(D);return{__:F.__.bind(F),__n:F.__n.bind(F),setLocale:F.setLocale.bind(F),getLocale:F.getLocale.bind(F),updateLocale:F.updateLocale.bind(F),locale:F.locale}}var x3=(D)=>{return l0(D,g0)},o0=x3;var D2=$0(r0(),1);import{createRequire as i3}from"node:module";import{readFileSync as k3,readdirSync as d3}from"node:fs";var SF=e0(import.meta.url),n3=SF.substring(0,SF.lastIndexOf("node_modules")),g3=i3(import.meta.url),PF={assert:{notStrictEqual:f3,strictEqual:b3},cliui:UF,findUp:jF,getEnv:(D)=>{return process.env[D]},inspect:h3,getProcessArgvBin:n0,mainFilename:n3||process.cwd(),Parser:LF,path:{basename:v3,dirname:p3,extname:m3,relative:c3,resolve:a0,join:y3},process:{argv:()=>process.argv,cwd:process.cwd,emitWarning:(D,u)=>process.emitWarning(D,u),execPath:()=>process.execPath,exit:(D)=>{process.exit(D)},nextTick:process.nextTick,stdColumns:typeof process.stdout.columns<"u"?process.stdout.columns:null},readFileSync:k3,readdirSync:d3,require:g3,getCallerFile:()=>{let D=D2.default(3);return D.match(/^file:\/\//)?e0(D):D},stringWidth:KD,y18n:o0({directory:a0(SF,"../../../locales"),updateFiles:!1})};function QD(D,u,F,E){F.assert.notStrictEqual(D,u,E)}function wF(D,u){u.assert.strictEqual(typeof D,"string")}function Zu(D){return Object.keys(D)}function o(D){return!!D&&!!D.then&&typeof D.then==="function"}class uD extends Error{constructor(D){super(D||"yargs error");if(this.name="YError",Error.captureStackTrace)Error.captureStackTrace(this,uD)}}function ID(D){let F=D.replace(/\s{2,}/g," ").split(/\s+(?![^[]*]|[^<]*>)/),E=/\.*[\][<>]/g,C=F.shift();if(!C)throw Error(`No command found in: ${D}`);let B={cmd:C.replace(E,""),demanded:[],optional:[]};return F.forEach(($,z)=>{let Z=!1;if($=$.replace(/\s/g,""),/\.+[\]>]/.test($)&&z===F.length-1)Z=!0;if(/^\[/.test($))B.optional.push({cmd:$.replace(E,"").split("|"),variadic:Z});else B.demanded.push({cmd:$.replace(E,"").split("|"),variadic:Z})}),B}var t3=["first","second","third","fourth","fifth","sixth"];function T(D,u,F){function E(){return typeof D==="object"?[{demanded:[],optional:[]},D,u]:[ID(`cmd ${D}`),u,F]}try{let C=0,[B,$,z]=E(),Z=[].slice.call($);while(Z.length&&Z[Z.length-1]===void 0)Z.pop();let X=z||Z.length;if(X<B.demanded.length)throw new uD(`Not enough arguments provided. Expected ${B.demanded.length} but received ${Z.length}.`);let O=B.demanded.length+B.optional.length;if(X>O)throw new uD(`Too many arguments provided. Expected max ${O} but received ${X}.`);B.demanded.forEach((J)=>{let Q=Z.shift(),Y=u2(Q);if(J.cmd.filter((H)=>H===Y||H==="*").length===0)F2(Y,J.cmd,C);C+=1}),B.optional.forEach((J)=>{if(Z.length===0)return;let Q=Z.shift(),Y=u2(Q);if(J.cmd.filter((H)=>H===Y||H==="*").length===0)F2(Y,J.cmd,C);C+=1})}catch(C){console.warn(C.stack)}}function u2(D){if(Array.isArray(D))return"array";else if(D===null)return"null";return typeof D}function F2(D,u,F){throw new uD(`Invalid ${t3[F]||"manyith"} argument. Expected ${u.join(" or ")} but received ${D}.`)}class IF{constructor(D){this.globalMiddleware=[],this.frozens=[],this.yargs=D}addMiddleware(D,u,F=!0,E=!1){if(T("<array|function> [boolean] [boolean] [boolean]",[D,u,F],arguments.length),Array.isArray(D)){for(let C=0;C<D.length;C++){if(typeof D[C]!=="function")throw Error("middleware must be a function");let B=D[C];B.applyBeforeValidation=u,B.global=F}Array.prototype.push.apply(this.globalMiddleware,D)}else if(typeof D==="function"){let C=D;C.applyBeforeValidation=u,C.global=F,C.mutates=E,this.globalMiddleware.push(D)}return this.yargs}addCoerceMiddleware(D,u){let F=this.yargs.getAliases();return this.globalMiddleware=this.globalMiddleware.filter((E)=>{let C=[...F[u]||[],u];if(!E.option)return!0;else return!C.includes(E.option)}),D.option=u,this.addMiddleware(D,!0,!0,!0)}getMiddleware(){return this.globalMiddleware}freeze(){this.frozens.push([...this.globalMiddleware])}unfreeze(){let D=this.frozens.pop();if(D!==void 0)this.globalMiddleware=D}reset(){this.globalMiddleware=this.globalMiddleware.filter((D)=>D.global)}}function E2(D){if(!D)return[];return D.map((u)=>{return u.applyBeforeValidation=!1,u})}function iD(D,u,F,E){return F.reduce((C,B)=>{if(B.applyBeforeValidation!==E)return C;if(B.mutates){if(B.applied)return C;B.applied=!0}if(o(C))return C.then(($)=>Promise.all([$,B($,u)])).then(([$,z])=>Object.assign($,z));else{let $=B(C,u);return o($)?$.then((z)=>Object.assign(C,z)):Object.assign(C,$)}},D)}function kD(D,u,F=(E)=>{throw E}){try{let E=l3(D)?D():D;return o(E)?E.then((C)=>u(C)):u(E)}catch(E){return F(E)}}function l3(D){return typeof D==="function"}var Ju=/(^\*)|(^\$0)/;class B2{constructor(D,u,F,E){this.requireCache=new Set,this.handlers={},this.aliasMap={},this.frozens=[],this.shim=E,this.usage=D,this.globalMiddleware=F,this.validation=u}addDirectory(D,u,F,E){E=E||{},this.requireCache.add(F);let C=this.shim.path.resolve(this.shim.path.dirname(F),D),B=this.shim.readdirSync(C,{recursive:E.recurse?!0:!1});if(!Array.isArray(E.extensions))E.extensions=["js"];let $=typeof E.visit==="function"?E.visit:(z)=>z;for(let z of B){let Z=z.toString();if(E.exclude){let O=!1;if(typeof E.exclude==="function")O=E.exclude(Z);else O=E.exclude.test(Z);if(O)continue}if(E.include){let O=!1;if(typeof E.include==="function")O=E.include(Z);else O=E.include.test(Z);if(!O)continue}let X=!1;for(let O of E.extensions)if(Z.endsWith(O))X=!0;if(X){let O=this.shim.path.join(C,Z),J=u(O),Q=Object.create(null,Object.getOwnPropertyDescriptors({...J}));if($(Q,O,Z)){if(this.requireCache.has(O))continue;else this.requireCache.add(O);if(!Q.command)Q.command=this.shim.path.basename(O,this.shim.path.extname(O));this.addHandler(Q)}}}}addHandler(D,u,F,E,C,B){let $=[],z=E2(C);if(E=E||(()=>{}),Array.isArray(D))if(o3(D))[D,...$]=D;else for(let Z of D)this.addHandler(Z);else if(r3(D)){let Z=Array.isArray(D.command)||typeof D.command==="string"?D.command:null;if(Z===null)throw Error(`No command name given for module: ${this.shim.inspect(D)}`);if(D.aliases)Z=[].concat(Z).concat(D.aliases);this.addHandler(Z,this.extractDesc(D),D.builder,D.handler,D.middlewares,D.deprecated);return}else if(C2(F)){this.addHandler([D].concat($),u,F.builder,F.handler,F.middlewares,F.deprecated);return}if(typeof D==="string"){let Z=ID(D);$=$.map((J)=>ID(J).cmd);let X=!1,O=[Z.cmd].concat($).filter((J)=>{if(Ju.test(J))return X=!0,!1;return!0});if(O.length===0&&X)O.push("$0");if(X)Z.cmd=O[0],$=O.slice(1),D=D.replace(Ju,Z.cmd);if($.forEach((J)=>{this.aliasMap[J]=Z.cmd}),u!==!1)this.usage.command(D,u,X,$,B);if(this.handlers[Z.cmd]={original:D,description:u,handler:E,builder:F||{},middlewares:z,deprecated:B,demanded:Z.demanded,optional:Z.optional},X)this.defaultCommand=this.handlers[Z.cmd]}}getCommandHandlers(){return this.handlers}getCommands(){return Object.keys(this.handlers).concat(Object.keys(this.aliasMap))}hasDefaultCommand(){return!!this.defaultCommand}runCommand(D,u,F,E,C,B){let $=this.handlers[D]||this.handlers[this.aliasMap[D]]||this.defaultCommand,z=u.getInternalMethods().getContext(),Z=z.commands.slice(),X=!D;if(D)z.commands.push(D),z.fullCommands.push($.original);let O=this.applyBuilderUpdateUsageAndParse(X,$,u,F.aliases,Z,E,C,B);return o(O)?O.then((J)=>this.applyMiddlewareAndGetResult(X,$,J.innerArgv,z,C,J.aliases,u)):this.applyMiddlewareAndGetResult(X,$,O.innerArgv,z,C,O.aliases,u)}applyBuilderUpdateUsageAndParse(D,u,F,E,C,B,$,z){let Z=u.builder,X=F;if(mu(Z)){F.getInternalMethods().getUsageInstance().freeze();let O=Z(F.getInternalMethods().reset(E),z);if(o(O))return O.then((J)=>{return X=z2(J)?J:F,this.parseAndUpdateUsage(D,u,X,C,B,$)})}else if(s3(Z))F.getInternalMethods().getUsageInstance().freeze(),X=F.getInternalMethods().reset(E),Object.keys(u.builder).forEach((O)=>{X.option(O,Z[O])});return this.parseAndUpdateUsage(D,u,X,C,B,$)}parseAndUpdateUsage(D,u,F,E,C,B){if(D)F.getInternalMethods().getUsageInstance().unfreeze(!0);if(this.shouldUpdateUsage(F))F.getInternalMethods().getUsageInstance().usage(this.usageFromParentCommandsCommandHandler(E,u),u.description);let $=F.getInternalMethods().runYargsParserAndExecuteCommands(null,void 0,!0,C,B);return o($)?$.then((z)=>({aliases:F.parsed.aliases,innerArgv:z})):{aliases:F.parsed.aliases,innerArgv:$}}shouldUpdateUsage(D){return!D.getInternalMethods().getUsageInstance().getUsageDisabled()&&D.getInternalMethods().getUsageInstance().getUsage().length===0}usageFromParentCommandsCommandHandler(D,u){let F=Ju.test(u.original)?u.original.replace(Ju,"").trim():u.original,E=D.filter((C)=>{return!Ju.test(C)});return E.push(F),`$0 ${E.join(" ")}`}handleValidationAndGetResult(D,u,F,E,C,B,$,z){if(!B.getInternalMethods().getHasOutput()){let Z=B.getInternalMethods().runValidation(C,z,B.parsed.error,D);F=kD(F,(X)=>{return Z(X),X})}if(u.handler&&!B.getInternalMethods().getHasOutput()){B.getInternalMethods().setHasOutput();let Z=!!B.getOptions().configuration["populate--"];if(B.getInternalMethods().postProcess(F,Z,!1,!1),F=iD(F,B,$,!1),F=kD(F,(X)=>{let O=u.handler(X);return o(O)?O.then(()=>X):X}),!D)B.getInternalMethods().getUsageInstance().cacheHelpMessage();if(o(F)&&!B.getInternalMethods().hasParseCallback())F.catch((X)=>{try{B.getInternalMethods().getUsageInstance().fail(null,X)}catch(O){}})}if(!D)E.commands.pop(),E.fullCommands.pop();return F}applyMiddlewareAndGetResult(D,u,F,E,C,B,$){let z={};if(C)return F;if(!$.getInternalMethods().getHasOutput())z=this.populatePositionals(u,F,E,$);let Z=this.globalMiddleware.getMiddleware().slice(0).concat(u.middlewares),X=iD(F,$,Z,!0);return o(X)?X.then((O)=>this.handleValidationAndGetResult(D,u,O,E,B,$,Z,z)):this.handleValidationAndGetResult(D,u,X,E,B,$,Z,z)}populatePositionals(D,u,F,E){u._=u._.slice(F.commands.length);let C=D.demanded.slice(0),B=D.optional.slice(0),$={};this.validation.positionalCount(C.length,u._.length);while(C.length){let z=C.shift();this.populatePositional(z,u,$)}while(B.length){let z=B.shift();this.populatePositional(z,u,$)}return u._=F.commands.concat(u._.map((z)=>""+z)),this.postProcessPositionals(u,$,this.cmdToParseOptions(D.original),E),$}populatePositional(D,u,F){let E=D.cmd[0];if(D.variadic)F[E]=u._.splice(0).map(String);else if(u._.length)F[E]=[String(u._.shift())]}cmdToParseOptions(D){let u={array:[],default:{},alias:{},demand:{}},F=ID(D);return F.demanded.forEach((E)=>{let[C,...B]=E.cmd;if(E.variadic)u.array.push(C),u.default[C]=[];u.alias[C]=B,u.demand[C]=!0}),F.optional.forEach((E)=>{let[C,...B]=E.cmd;if(E.variadic)u.array.push(C),u.default[C]=[];u.alias[C]=B}),u}postProcessPositionals(D,u,F,E){let C=Object.assign({},E.getOptions());C.default=Object.assign(F.default,C.default);for(let Z of Object.keys(F.alias))C.alias[Z]=(C.alias[Z]||[]).concat(F.alias[Z]);C.array=C.array.concat(F.array),C.config={};let B=[];if(Object.keys(u).forEach((Z)=>{u[Z].map((X)=>{if(C.configuration["unknown-options-as-args"])C.key[Z]=!0;B.push(`--${Z}`),B.push(X)})}),!B.length)return;let $=Object.assign({},C.configuration,{"populate--":!1}),z=this.shim.Parser.detailed(B,Object.assign({},C,{configuration:$}));if(z.error)E.getInternalMethods().getUsageInstance().fail(z.error.message,z.error);else{let Z=Object.keys(u);Object.keys(u).forEach((X)=>{Z.push(...z.aliases[X])}),Object.keys(z.argv).forEach((X)=>{if(Z.includes(X)){if(!u[X])u[X]=z.argv[X];if(!this.isInConfigs(E,X)&&!this.isDefaulted(E,X)&&Object.prototype.hasOwnProperty.call(D,X)&&Object.prototype.hasOwnProperty.call(z.argv,X)&&(Array.isArray(D[X])||Array.isArray(z.argv[X])))D[X]=[].concat(D[X],z.argv[X]);else D[X]=z.argv[X]}})}}isDefaulted(D,u){let{default:F}=D.getOptions();return Object.prototype.hasOwnProperty.call(F,u)||Object.prototype.hasOwnProperty.call(F,this.shim.Parser.camelCase(u))}isInConfigs(D,u){let{configObjects:F}=D.getOptions();return F.some((E)=>Object.prototype.hasOwnProperty.call(E,u))||F.some((E)=>Object.prototype.hasOwnProperty.call(E,this.shim.Parser.camelCase(u)))}runDefaultBuilderOn(D){if(!this.defaultCommand)return;if(this.shouldUpdateUsage(D)){let F=Ju.test(this.defaultCommand.original)?this.defaultCommand.original:this.defaultCommand.original.replace(/^[^[\]<>]*/,"$0 ");D.getInternalMethods().getUsageInstance().usage(F,this.defaultCommand.description)}let u=this.defaultCommand.builder;if(mu(u))return u(D,!0);else if(!C2(u))Object.keys(u).forEach((F)=>{D.option(F,u[F])});return}extractDesc({describe:D,description:u,desc:F}){for(let E of[D,u,F]){if(typeof E==="string"||E===!1)return E;QD(E,!0,this.shim)}return!1}freeze(){this.frozens.push({handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand})}unfreeze(){let D=this.frozens.pop();QD(D,void 0,this.shim),{handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand}=D}reset(){return this.handlers={},this.aliasMap={},this.defaultCommand=void 0,this.requireCache=new Set,this}}function $2(D,u,F,E){return new B2(D,u,F,E)}function C2(D){return typeof D==="object"&&!!D.builder&&typeof D.handler==="function"}function o3(D){return D.every((u)=>typeof u==="string")}function mu(D){return typeof D==="function"}function s3(D){return typeof D==="object"}function r3(D){return typeof D==="object"&&!Array.isArray(D)}function xD(D={},u=()=>!0){let F={};return Zu(D).forEach((E)=>{if(u(E,D[E]))F[E]=D[E]}),F}function fD(D){if(typeof process>"u")return;[process.stdout,process.stderr].forEach((u)=>{let F=u;if(F._handle&&F.isTTY&&typeof F._handle.setBlocking==="function")F._handle.setBlocking(D)})}function a3(D){return typeof D==="boolean"}function Z2(D,u){let F=u.y18n.__,E={},C=[];E.failFn=function(K){C.push(K)};let B=null,$=null,z=!0;E.showHelpOnFail=function(K=!0,P){let[p,d]=typeof K==="string"?[!0,K]:[K,P];if(D.getInternalMethods().isGlobalContext())$=d;return B=d,z=p,E};let Z=!1;E.fail=function(K,P){let p=D.getInternalMethods().getLoggerInstance();if(C.length)for(let d=C.length-1;d>=0;--d){let ED=C[d];if(a3(ED)){if(P)throw P;else if(K)throw Error(K)}else ED(K,P,E)}else{if(D.getExitProcess())fD(!0);if(!Z){if(Z=!0,z)D.showHelp("error"),p.error();if(K||P)p.error(K||P);let d=B||$;if(d){if(K||P)p.error("");p.error(d)}}if(P=P||new uD(K),D.getExitProcess())return D.exit(1);else if(D.getInternalMethods().hasParseCallback())return D.exit(1,P);else throw P}};let X=[],O=!1;E.usage=(S,K)=>{if(S===null)return O=!0,X=[],E;return O=!1,X.push([S,K||""]),E},E.getUsage=()=>{return X},E.getUsageDisabled=()=>{return O},E.getPositionalGroupName=()=>{return F("Positionals:")};let J=[];E.example=(S,K)=>{J.push([S,K||""])};let Q=[];E.command=function(K,P,p,d,ED=!1){if(p)Q=Q.map((k)=>{return k[2]=!1,k});Q.push([K,P||"",p,d,ED])},E.getCommands=()=>Q;let Y={};E.describe=function(K,P){if(Array.isArray(K))K.forEach((p)=>{E.describe(p,P)});else if(typeof K==="object")Object.keys(K).forEach((p)=>{E.describe(p,K[p])});else Y[K]=P},E.getDescriptions=()=>Y;let M=[];E.epilog=(S)=>{M.push(S)};let H=!1,j;E.wrap=(S)=>{H=!0,j=S},E.getWrap=()=>{if(u.getEnv("YARGS_DISABLE_WRAP"))return null;if(!H)j=AD(),H=!0;return j};let A="__yargsString__:";E.deferY18nLookup=(S)=>A+S,E.help=function(){if(f)return f;n();let K=D.customScriptName?D.$0:u.path.basename(D.$0),P=D.getDemandedOptions(),p=D.getDemandedCommands(),d=D.getDeprecatedOptions(),ED=D.getGroups(),k=D.getOptions(),BD=[];BD=BD.concat(Object.keys(Y)),BD=BD.concat(Object.keys(P)),BD=BD.concat(Object.keys(p)),BD=BD.concat(Object.keys(k.default)),BD=BD.filter(a),BD=Object.keys(BD.reduce((h,t)=>{if(t!=="_")h[t]=!0;return h},{}));let wD=E.getWrap(),l=u.cliui({width:wD,wrap:!!wD});if(!O){if(X.length)X.forEach((h)=>{if(l.div({text:`${h[0].replace(/\$0/g,K)}`}),h[1])l.div({text:`${h[1]}`,padding:[1,0,0,0]})}),l.div();else if(Q.length){let h=null;if(p._)h=`${K} <${F("command")}>
15
15
  `;else h=`${K} [${F("command")}]
16
- `;l.div(`${h}`)}}if(Q.length>1||Q.length===1&&!Q[0][2]){l.div(F("Commands:"));let h=D.getInternalMethods().getContext(),t=h.commands.length?`${h.commands.join(" ")} `:"";if(D.getInternalMethods().getParserConfiguration()["sort-commands"]===!0)Q=Q.sort((c,XD)=>c[0].localeCompare(XD[0]));let BD=K?`${K} `:"";Q.forEach((c)=>{let XD=`${BD}${t}${c[0].replace(/^\$0 ?/,"")}`;l.span({text:XD,padding:[0,2,0,2],width:f(Q,wD,`${K}${t}`)+4},{text:c[1]});let DD=[];if(c[2])DD.push(`[${F("default")}]`);if(c[3]&&c[3].length)DD.push(`[${F("aliases:")} ${c[3].join(", ")}]`);if(c[4])if(typeof c[4]==="string")DD.push(`[${F("deprecated: %s",c[4])}]`);else DD.push(`[${F("deprecated")}]`);if(DD.length)l.div({text:DD.join(" "),padding:[0,0,0,2],align:"right"});else l.div()}),l.div()}let SD=(Object.keys(n.alias)||[]).concat(Object.keys(D.parsed.newAliases)||[]);CD=CD.filter((h)=>!D.parsed.newAliases[h]&&SD.every((t)=>(n.alias[t]||[]).indexOf(h)===-1));let Hu=F("Options:");if(!ED[Hu])ED[Hu]=[];i(CD,n.alias,ED,Hu);let b=(h)=>/^--/.test(mu(h)),$u=Object.keys(ED).filter((h)=>ED[h].length>0).map((h)=>{let t=ED[h].filter(a).map((BD)=>{if(SD.includes(BD))return BD;for(let c=0,XD;(XD=SD[c])!==void 0;c++)if((n.alias[XD]||[]).includes(BD))return XD;return BD});return{groupName:h,normalizedKeys:t}}).filter(({normalizedKeys:h})=>h.length>0).map(({groupName:h,normalizedKeys:t})=>{let BD=t.reduce((c,XD)=>{return c[XD]=[XD].concat(n.alias[XD]||[]).map((DD)=>{if(h===E.getPositionalGroupName())return DD;else return(/^[0-9]$/.test(DD)?n.boolean.includes(XD)?"-":"--":DD.length>1?"--":"-")+DD}).sort((DD,$D)=>b(DD)===b($D)?0:b(DD)?1:-1).join(", "),c},{});return{groupName:h,normalizedKeys:t,switches:BD}});if($u.filter(({groupName:h})=>h!==E.getPositionalGroupName()).some(({normalizedKeys:h,switches:t})=>!h.every((BD)=>b(t[BD]))))$u.filter(({groupName:h})=>h!==E.getPositionalGroupName()).forEach(({normalizedKeys:h,switches:t})=>{h.forEach((BD)=>{if(b(t[BD]))t[BD]=l1(t[BD],4)})});if($u.forEach(({groupName:h,normalizedKeys:t,switches:BD})=>{l.div(h),t.forEach((c)=>{let XD=BD[c],DD=Y[c]||"",$D=null;if(DD.includes(S))DD=F(DD.substring(S.length));if(n.boolean.includes(c))$D=`[${F("boolean")}]`;if(n.count.includes(c))$D=`[${F("count")}]`;if(n.string.includes(c))$D=`[${F("string")}]`;if(n.normalize.includes(c))$D=`[${F("string")}]`;if(n.array.includes(c))$D=`[${F("array")}]`;if(n.number.includes(c))$D=`[${F("number")}]`;let ZF=(j)=>typeof j==="string"?`[${F("deprecated: %s",j)}]`:`[${F("deprecated")}]`,W=[c in k?ZF(k[c]):null,$D,c in P?`[${F("required")}]`:null,n.choices&&n.choices[c]?`[${F("choices:")} ${E.stringifiedValues(n.choices[c])}]`:null,e(n.default[c],n.defaultDescription[c])].filter(Boolean).join(" ");l.span({text:mu(XD),padding:[0,2,0,2+C2(XD)],width:f(BD,wD)+4},DD);let q=D.getInternalMethods().getUsageConfiguration()["hide-types"]===!0;if(W&&!q)l.div({text:W,padding:[0,0,0,2],align:"right"});else l.div()}),l.div()}),X.length)l.div(F("Examples:")),X.forEach((h)=>{h[0]=h[0].replace(/\$0/g,K)}),X.forEach((h)=>{if(h[1]==="")l.div({text:h[0],padding:[0,2,0,2]});else l.div({text:h[0],padding:[0,2,0,2],width:f(X,wD)+4},{text:h[1]})}),l.div();if(M.length>0){let h=M.map((t)=>t.replace(/\$0/g,K)).join(`
16
+ `;l.div(`${h}`)}}if(Q.length>1||Q.length===1&&!Q[0][2]){l.div(F("Commands:"));let h=D.getInternalMethods().getContext(),t=h.commands.length?`${h.commands.join(" ")} `:"";if(D.getInternalMethods().getParserConfiguration()["sort-commands"]===!0)Q=Q.sort((c,JD)=>c[0].localeCompare(JD[0]));let $D=K?`${K} `:"";Q.forEach((c)=>{let JD=`${$D}${t}${c[0].replace(/^\$0 ?/,"")}`;l.span({text:JD,padding:[0,2,0,2],width:x(Q,wD,`${K}${t}`)+4},{text:c[1]});let DD=[];if(c[2])DD.push(`[${F("default")}]`);if(c[3]&&c[3].length)DD.push(`[${F("aliases:")} ${c[3].join(", ")}]`);if(c[4])if(typeof c[4]==="string")DD.push(`[${F("deprecated: %s",c[4])}]`);else DD.push(`[${F("deprecated")}]`);if(DD.length)l.div({text:DD.join(" "),padding:[0,0,0,2],align:"right"});else l.div()}),l.div()}let SD=(Object.keys(k.alias)||[]).concat(Object.keys(D.parsed.newAliases)||[]);BD=BD.filter((h)=>!D.parsed.newAliases[h]&&SD.every((t)=>(k.alias[t]||[]).indexOf(h)===-1));let Vu=F("Options:");if(!ED[Vu])ED[Vu]=[];i(BD,k.alias,ED,Vu);let b=(h)=>/^--/.test(cu(h)),zu=Object.keys(ED).filter((h)=>ED[h].length>0).map((h)=>{let t=ED[h].filter(a).map(($D)=>{if(SD.includes($D))return $D;for(let c=0,JD;(JD=SD[c])!==void 0;c++)if((k.alias[JD]||[]).includes($D))return JD;return $D});return{groupName:h,normalizedKeys:t}}).filter(({normalizedKeys:h})=>h.length>0).map(({groupName:h,normalizedKeys:t})=>{let $D=t.reduce((c,JD)=>{return c[JD]=[JD].concat(k.alias[JD]||[]).map((DD)=>{if(h===E.getPositionalGroupName())return DD;else return(/^[0-9]$/.test(DD)?k.boolean.includes(JD)?"-":"--":DD.length>1?"--":"-")+DD}).sort((DD,zD)=>b(DD)===b(zD)?0:b(DD)?1:-1).join(", "),c},{});return{groupName:h,normalizedKeys:t,switches:$D}});if(zu.filter(({groupName:h})=>h!==E.getPositionalGroupName()).some(({normalizedKeys:h,switches:t})=>!h.every(($D)=>b(t[$D]))))zu.filter(({groupName:h})=>h!==E.getPositionalGroupName()).forEach(({normalizedKeys:h,switches:t})=>{h.forEach(($D)=>{if(b(t[$D]))t[$D]=e3(t[$D],4)})});if(zu.forEach(({groupName:h,normalizedKeys:t,switches:$D})=>{l.div(h),t.forEach((c)=>{let JD=$D[c],DD=Y[c]||"",zD=null;if(DD.includes(A))DD=F(DD.substring(A.length));if(k.boolean.includes(c))zD=`[${F("boolean")}]`;if(k.count.includes(c))zD=`[${F("count")}]`;if(k.string.includes(c))zD=`[${F("string")}]`;if(k.normalize.includes(c))zD=`[${F("string")}]`;if(k.array.includes(c))zD=`[${F("array")}]`;if(k.number.includes(c))zD=`[${F("number")}]`;let YF=(_)=>typeof _==="string"?`[${F("deprecated: %s",_)}]`:`[${F("deprecated")}]`,W=[c in d?YF(d[c]):null,zD,c in P?`[${F("required")}]`:null,k.choices&&k.choices[c]?`[${F("choices:")} ${E.stringifiedValues(k.choices[c])}]`:null,e(k.default[c],k.defaultDescription[c])].filter(Boolean).join(" ");l.span({text:cu(JD),padding:[0,2,0,2+G2(JD)],width:x($D,wD)+4},DD);let q=D.getInternalMethods().getUsageConfiguration()["hide-types"]===!0;if(W&&!q)l.div({text:W,padding:[0,0,0,2],align:"right"});else l.div()}),l.div()}),J.length)l.div(F("Examples:")),J.forEach((h)=>{h[0]=h[0].replace(/\$0/g,K)}),J.forEach((h)=>{if(h[1]==="")l.div({text:h[0],padding:[0,2,0,2]});else l.div({text:h[0],padding:[0,2,0,2],width:x(J,wD)+4},{text:h[1]})}),l.div();if(M.length>0){let h=M.map((t)=>t.replace(/\$0/g,K)).join(`
17
17
  `);l.div(`${h}
18
- `)}return l.toString().replace(/\s*$/,"")};function f(L,K,P){let p=0;if(!Array.isArray(L))L=Object.values(L).map((k)=>[k]);if(L.forEach((k)=>{p=Math.max(u.stringWidth(P?`${P} ${mu(k[0])}`:mu(k[0]))+C2(k[0]),p)}),K)p=Math.min(p,parseInt((K*0.5).toString(),10));return p}function d(){let L=D.getDemandedOptions(),K=D.getOptions();(Object.keys(K.alias)||[]).forEach((P)=>{K.alias[P].forEach((p)=>{if(Y[p])E.describe(P,Y[p]);if(p in L)D.demandOption(P,L[p]);if(K.boolean.includes(p))D.boolean(P);if(K.count.includes(p))D.count(P);if(K.string.includes(p))D.string(P);if(K.normalize.includes(p))D.normalize(P);if(K.array.includes(p))D.array(P);if(K.number.includes(p))D.number(P)})})}let x;E.cacheHelpMessage=function(){x=this.help()},E.clearCachedHelpMessage=function(){x=void 0},E.hasCachedHelpMessage=function(){return!!x};function i(L,K,P,p){let k=[],ED=null;return Object.keys(P).forEach((n)=>{k=k.concat(P[n])}),L.forEach((n)=>{if(ED=[n].concat(K[n]),!ED.some((CD)=>k.indexOf(CD)!==-1))P[p].push(n)}),k}function a(L){return D.getOptions().hiddenOptions.indexOf(L)<0||D.parsed.argv[D.getOptions().showHiddenOpt]}E.showHelp=(L)=>{let K=D.getInternalMethods().getLoggerInstance();if(!L)L="error";(typeof L==="function"?L:K[L])(E.help())},E.functionDescription=(L)=>{return["(",L.name?u.Parser.decamelize(L.name,"-"):F("generated-value"),")"].join("")},E.stringifiedValues=function(K,P){let p="",k=P||", ",ED=[].concat(K);if(!K||!ED.length)return p;return ED.forEach((n)=>{if(p.length)p+=k;p+=JSON.stringify(n)}),p};function e(L,K){let P=`[${F("default:")} `;if(L===void 0&&!K)return null;if(K)P+=K;else switch(typeof L){case"string":P+=`"${L}"`;break;case"object":P+=JSON.stringify(L);break;default:P+=L}return`${P}]`}function RD(){if(u.process.stdColumns)return Math.min(80,u.process.stdColumns);else return 80}let g=null;E.version=(L)=>{g=L},E.showVersion=(L)=>{let K=D.getInternalMethods().getLoggerInstance();if(!L)L="error";(typeof L==="function"?L:K[L])(g)},E.reset=function(K){return B=null,Z=!1,J=[],O=!1,M=[],X=[],Q=[],Y=fD(Y,(P)=>!K[P]),E};let Mu=[];return E.freeze=function(){Mu.push({failMessage:B,failureOutput:Z,usages:J,usageDisabled:O,epilogs:M,examples:X,commands:Q,descriptions:Y})},E.unfreeze=function(K=!1){let P=Mu.pop();if(!P)return;if(K)Y={...P.descriptions,...Y},Q=[...P.commands,...Q],J=[...P.usages,...J],X=[...P.examples,...X],M=[...P.epilogs,...M];else({failMessage:B,failureOutput:Z,usages:J,usageDisabled:O,epilogs:M,examples:X,commands:Q,descriptions:Y}=P)},E}function LF(D){return typeof D==="object"}function l1(D,u){return LF(D)?{text:D.text,indentation:D.indentation+u}:{text:D,indentation:u}}function C2(D){return LF(D)?D.indentation:0}function mu(D){return LF(D)?D.text:D}var $2=`###-begin-{{app_name}}-completions-###
18
+ `)}return l.toString().replace(/\s*$/,"")};function x(S,K,P){let p=0;if(!Array.isArray(S))S=Object.values(S).map((d)=>[d]);if(S.forEach((d)=>{p=Math.max(u.stringWidth(P?`${P} ${cu(d[0])}`:cu(d[0]))+G2(d[0]),p)}),K)p=Math.min(p,parseInt((K*0.5).toString(),10));return p}function n(){let S=D.getDemandedOptions(),K=D.getOptions();(Object.keys(K.alias)||[]).forEach((P)=>{K.alias[P].forEach((p)=>{if(Y[p])E.describe(P,Y[p]);if(p in S)D.demandOption(P,S[p]);if(K.boolean.includes(p))D.boolean(P);if(K.count.includes(p))D.count(P);if(K.string.includes(p))D.string(P);if(K.normalize.includes(p))D.normalize(P);if(K.array.includes(p))D.array(P);if(K.number.includes(p))D.number(P)})})}let f;E.cacheHelpMessage=function(){f=this.help()},E.clearCachedHelpMessage=function(){f=void 0},E.hasCachedHelpMessage=function(){return!!f};function i(S,K,P,p){let d=[],ED=null;return Object.keys(P).forEach((k)=>{d=d.concat(P[k])}),S.forEach((k)=>{if(ED=[k].concat(K[k]),!ED.some((BD)=>d.indexOf(BD)!==-1))P[p].push(k)}),d}function a(S){return D.getOptions().hiddenOptions.indexOf(S)<0||D.parsed.argv[D.getOptions().showHiddenOpt]}E.showHelp=(S)=>{let K=D.getInternalMethods().getLoggerInstance();if(!S)S="error";(typeof S==="function"?S:K[S])(E.help())},E.functionDescription=(S)=>{return["(",S.name?u.Parser.decamelize(S.name,"-"):F("generated-value"),")"].join("")},E.stringifiedValues=function(K,P){let p="",d=P||", ",ED=[].concat(K);if(!K||!ED.length)return p;return ED.forEach((k)=>{if(p.length)p+=d;p+=JSON.stringify(k)}),p};function e(S,K){let P=`[${F("default:")} `;if(S===void 0&&!K)return null;if(K)P+=K;else switch(typeof S){case"string":P+=`"${S}"`;break;case"object":P+=JSON.stringify(S);break;default:P+=S}return`${P}]`}function AD(){if(u.process.stdColumns)return Math.min(80,u.process.stdColumns);else return 80}let g=null;E.version=(S)=>{g=S},E.showVersion=(S)=>{let K=D.getInternalMethods().getLoggerInstance();if(!S)S="error";(typeof S==="function"?S:K[S])(g)},E.reset=function(K){return B=null,Z=!1,X=[],O=!1,M=[],J=[],Q=[],Y=xD(Y,(P)=>!K[P]),E};let Hu=[];return E.freeze=function(){Hu.push({failMessage:B,failureOutput:Z,usages:X,usageDisabled:O,epilogs:M,examples:J,commands:Q,descriptions:Y})},E.unfreeze=function(K=!1){let P=Hu.pop();if(!P)return;if(K)Y={...P.descriptions,...Y},Q=[...P.commands,...Q],X=[...P.usages,...X],J=[...P.examples,...J],M=[...P.epilogs,...M];else({failMessage:B,failureOutput:Z,usages:X,usageDisabled:O,epilogs:M,examples:J,commands:Q,descriptions:Y}=P)},E}function xF(D){return typeof D==="object"}function e3(D,u){return xF(D)?{text:D.text,indentation:D.indentation+u}:{text:D,indentation:u}}function G2(D){return xF(D)?D.indentation:0}function cu(D){return xF(D)?D.text:D}var J2=`###-begin-{{app_name}}-completions-###
19
19
  #
20
20
  # yargs command completion script
21
21
  #
@@ -44,7 +44,7 @@ _{{app_name}}_yargs_completions()
44
44
  }
45
45
  complete -o bashdefault -o default -F _{{app_name}}_yargs_completions {{app_name}}
46
46
  ###-end-{{app_name}}-completions-###
47
- `,z2=`#compdef {{app_name}}
47
+ `,X2=`#compdef {{app_name}}
48
48
  ###-begin-{{app_name}}-completions-###
49
49
  #
50
50
  # yargs command completion script
@@ -71,59 +71,68 @@ else
71
71
  compdef _{{app_name}}_yargs_completions {{app_name}}
72
72
  fi
73
73
  ###-end-{{app_name}}-completions-###
74
- `;class G2{constructor(D,u,F,E){var C,B,$;this.yargs=D,this.usage=u,this.command=F,this.shim=E,this.completionKey="get-yargs-completions",this.aliases=null,this.customCompletionFunction=null,this.indexAfterLastReset=0,this.zshShell=($=((C=this.shim.getEnv("SHELL"))===null||C===void 0?void 0:C.includes("zsh"))||((B=this.shim.getEnv("ZSH_NAME"))===null||B===void 0?void 0:B.includes("zsh")))!==null&&$!==void 0?$:!1}defaultCompletion(D,u,F,E){let C=this.command.getCommandHandlers();for(let $=0,z=D.length;$<z;++$)if(C[D[$]]&&C[D[$]].builder){let Z=C[D[$]].builder;if(pu(Z)){this.indexAfterLastReset=$+1;let J=this.yargs.getInternalMethods().reset();return Z(J,!0),J.argv}}let B=[];this.commandCompletions(B,D,F),this.optionCompletions(B,D,u,F),this.choicesFromOptionsCompletions(B,D,u,F),this.choicesFromPositionalsCompletions(B,D,u,F),E(null,B)}commandCompletions(D,u,F){let E=this.yargs.getInternalMethods().getContext().commands;if(!F.match(/^-/)&&E[E.length-1]!==F&&!this.previousArgHasChoices(u))this.usage.getCommands().forEach((C)=>{let B=ID(C[0]).cmd;if(u.indexOf(B)===-1)if(!this.zshShell)D.push(B);else{let $=C[1]||"";D.push(B.replace(/:/g,"\\:")+":"+$)}})}optionCompletions(D,u,F,E){if((E.match(/^-/)||E===""&&D.length===0)&&!this.previousArgHasChoices(u)){let C=this.yargs.getOptions(),B=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[];Object.keys(C.key).forEach(($)=>{let z=!!C.configuration["boolean-negation"]&&C.boolean.includes($);if(!B.includes($)&&!C.hiddenOptions.includes($)&&!this.argsContainKey(u,$,z))this.completeOptionKey($,D,E,z&&!!C.default[$])})}}choicesFromOptionsCompletions(D,u,F,E){if(this.previousArgHasChoices(u)){let C=this.getPreviousArgChoices(u);if(C&&C.length>0)D.push(...C.map((B)=>B.replace(/:/g,"\\:")))}}choicesFromPositionalsCompletions(D,u,F,E){if(E===""&&D.length>0&&this.previousArgHasChoices(u))return;let C=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[],B=Math.max(this.indexAfterLastReset,this.yargs.getInternalMethods().getContext().commands.length+1),$=C[F._.length-B-1];if(!$)return;let z=this.yargs.getOptions().choices[$]||[];for(let Z of z)if(Z.startsWith(E))D.push(Z.replace(/:/g,"\\:"))}getPreviousArgChoices(D){if(D.length<1)return;let u=D[D.length-1],F="";if(!u.startsWith("-")&&D.length>1)F=u,u=D[D.length-2];if(!u.startsWith("-"))return;let E=u.replace(/^-+/,""),C=this.yargs.getOptions(),B=[E,...this.yargs.getAliases()[E]||[]],$;for(let z of B)if(Object.prototype.hasOwnProperty.call(C.key,z)&&Array.isArray(C.choices[z])){$=C.choices[z];break}if($)return $.filter((z)=>!F||z.startsWith(F))}previousArgHasChoices(D){let u=this.getPreviousArgChoices(D);return u!==void 0&&u.length>0}argsContainKey(D,u,F){let E=(C)=>D.indexOf((/^[^0-9]$/.test(C)?"-":"--")+C)!==-1;if(E(u))return!0;if(F&&E(`no-${u}`))return!0;if(this.aliases){for(let C of this.aliases[u])if(E(C))return!0}return!1}completeOptionKey(D,u,F,E){var C,B,$,z;let Z=D;if(this.zshShell){let Q=this.usage.getDescriptions(),Y=(B=(C=this===null||this===void 0?void 0:this.aliases)===null||C===void 0?void 0:C[D])===null||B===void 0?void 0:B.find((_)=>{let S=Q[_];return typeof S==="string"&&S.length>0}),M=Y?Q[Y]:void 0,H=(z=($=Q[D])!==null&&$!==void 0?$:M)!==null&&z!==void 0?z:"";Z=`${D.replace(/:/g,"\\:")}:${H.replace("__yargsString__:","").replace(/(\r\n|\n|\r)/gm," ")}`}let J=(Q)=>/^--/.test(Q),O=(Q)=>/^[^0-9]$/.test(Q),X=!J(F)&&O(D)?"-":"--";if(u.push(X+Z),E)u.push(X+"no-"+Z)}customCompletion(D,u,F,E){if(QD(this.customCompletionFunction,null,this.shim),s1(this.customCompletionFunction)){let C=this.customCompletionFunction(F,u);if(o(C))return C.then((B)=>{this.shim.process.nextTick(()=>{E(null,B)})}).catch((B)=>{this.shim.process.nextTick(()=>{E(B,void 0)})});return E(null,C)}else if(r1(this.customCompletionFunction))return this.customCompletionFunction(F,u,(C=E)=>this.defaultCompletion(D,u,F,C),(C)=>{E(null,C)});else return this.customCompletionFunction(F,u,(C)=>{E(null,C)})}getCompletion(D,u){let F=D.length?D[D.length-1]:"",E=this.yargs.parse(D,!0),C=this.customCompletionFunction?(B)=>this.customCompletion(D,B,F,u):(B)=>this.defaultCompletion(D,B,F,u);return o(E)?E.then(C):C(E)}generateCompletionScript(D,u){let F=this.zshShell?z2:$2,E=this.shim.path.basename(D);if(D.match(/\.js$/))D=`./${D}`;return F=F.replace(/{{app_name}}/g,E),F=F.replace(/{{completion_command}}/g,u),F.replace(/{{app_path}}/g,D)}registerFunction(D){this.customCompletionFunction=D}setParsed(D){this.aliases=D.aliases}}function Z2(D,u,F,E){return new G2(D,u,F,E)}function s1(D){return D.length<3}function r1(D){return D.length>3}function X2(D,u){if(D.length===0)return u.length;if(u.length===0)return D.length;let F=[],E;for(E=0;E<=u.length;E++)F[E]=[E];let C;for(C=0;C<=D.length;C++)F[0][C]=C;for(E=1;E<=u.length;E++)for(C=1;C<=D.length;C++)if(u.charAt(E-1)===D.charAt(C-1))F[E][C]=F[E-1][C-1];else if(E>1&&C>1&&u.charAt(E-2)===D.charAt(C-1)&&u.charAt(E-1)===D.charAt(C-2))F[E][C]=F[E-2][C-2]+1;else F[E][C]=Math.min(F[E-1][C-1]+1,Math.min(F[E][C-1]+1,F[E-1][C]+1));return F[u.length][D.length]}var J2=["$0","--","_"];function Q2(D,u,F){let E=F.y18n.__,C=F.y18n.__n,B={};B.nonOptionCount=function(X){let Q=D.getDemandedCommands(),M=X._.length+(X["--"]?X["--"].length:0)-D.getInternalMethods().getContext().commands.length;if(Q._&&(M<Q._.min||M>Q._.max)){if(M<Q._.min)if(Q._.minMsg!==void 0)u.fail(Q._.minMsg?Q._.minMsg.replace(/\$0/g,M.toString()).replace(/\$1/,Q._.min.toString()):null);else u.fail(C("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",M,M.toString(),Q._.min.toString()));else if(M>Q._.max)if(Q._.maxMsg!==void 0)u.fail(Q._.maxMsg?Q._.maxMsg.replace(/\$0/g,M.toString()).replace(/\$1/,Q._.max.toString()):null);else u.fail(C("Too many non-option arguments: got %s, maximum of %s","Too many non-option arguments: got %s, maximum of %s",M,M.toString(),Q._.max.toString()))}},B.positionalCount=function(X,Q){if(Q<X)u.fail(C("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",Q,Q+"",X+""))},B.requiredArguments=function(X,Q){let Y=null;for(let M of Object.keys(Q))if(!Object.prototype.hasOwnProperty.call(X,M)||typeof X[M]>"u")Y=Y||{},Y[M]=Q[M];if(Y){let M=[];for(let _ of Object.keys(Y)){let S=Y[_];if(S&&M.indexOf(S)<0)M.push(S)}let H=M.length?`
74
+ `;class Q2{constructor(D,u,F,E){var C,B,$;this.yargs=D,this.usage=u,this.command=F,this.shim=E,this.completionKey="get-yargs-completions",this.aliases=null,this.customCompletionFunction=null,this.indexAfterLastReset=0,this.zshShell=($=((C=this.shim.getEnv("SHELL"))===null||C===void 0?void 0:C.includes("zsh"))||((B=this.shim.getEnv("ZSH_NAME"))===null||B===void 0?void 0:B.includes("zsh")))!==null&&$!==void 0?$:!1}defaultCompletion(D,u,F,E){let C=this.command.getCommandHandlers();for(let $=0,z=D.length;$<z;++$)if(C[D[$]]&&C[D[$]].builder){let Z=C[D[$]].builder;if(mu(Z)){this.indexAfterLastReset=$+1;let X=this.yargs.getInternalMethods().reset();return Z(X,!0),X.argv}}let B=[];this.commandCompletions(B,D,F),this.optionCompletions(B,D,u,F),this.choicesFromOptionsCompletions(B,D,u,F),this.choicesFromPositionalsCompletions(B,D,u,F),E(null,B)}commandCompletions(D,u,F){let E=this.yargs.getInternalMethods().getContext().commands;if(!F.match(/^-/)&&E[E.length-1]!==F&&!this.previousArgHasChoices(u))this.usage.getCommands().forEach((C)=>{let B=ID(C[0]).cmd;if(u.indexOf(B)===-1)if(!this.zshShell)D.push(B);else{let $=C[1]||"";D.push(B.replace(/:/g,"\\:")+":"+$)}})}optionCompletions(D,u,F,E){if((E.match(/^-/)||E===""&&D.length===0)&&!this.previousArgHasChoices(u)){let C=this.yargs.getOptions(),B=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[];Object.keys(C.key).forEach(($)=>{let z=!!C.configuration["boolean-negation"]&&C.boolean.includes($);if(!B.includes($)&&!C.hiddenOptions.includes($)&&!this.argsContainKey(u,$,z))this.completeOptionKey($,D,E,z&&!!C.default[$])})}}choicesFromOptionsCompletions(D,u,F,E){if(this.previousArgHasChoices(u)){let C=this.getPreviousArgChoices(u);if(C&&C.length>0)D.push(...C.map((B)=>B.replace(/:/g,"\\:")))}}choicesFromPositionalsCompletions(D,u,F,E){if(E===""&&D.length>0&&this.previousArgHasChoices(u))return;let C=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[],B=Math.max(this.indexAfterLastReset,this.yargs.getInternalMethods().getContext().commands.length+1),$=C[F._.length-B-1];if(!$)return;let z=this.yargs.getOptions().choices[$]||[];for(let Z of z)if(Z.startsWith(E))D.push(Z.replace(/:/g,"\\:"))}getPreviousArgChoices(D){if(D.length<1)return;let u=D[D.length-1],F="";if(!u.startsWith("-")&&D.length>1)F=u,u=D[D.length-2];if(!u.startsWith("-"))return;let E=u.replace(/^-+/,""),C=this.yargs.getOptions(),B=[E,...this.yargs.getAliases()[E]||[]],$;for(let z of B)if(Object.prototype.hasOwnProperty.call(C.key,z)&&Array.isArray(C.choices[z])){$=C.choices[z];break}if($)return $.filter((z)=>!F||z.startsWith(F))}previousArgHasChoices(D){let u=this.getPreviousArgChoices(D);return u!==void 0&&u.length>0}argsContainKey(D,u,F){let E=(C)=>D.indexOf((/^[^0-9]$/.test(C)?"-":"--")+C)!==-1;if(E(u))return!0;if(F&&E(`no-${u}`))return!0;if(this.aliases){for(let C of this.aliases[u])if(E(C))return!0}return!1}completeOptionKey(D,u,F,E){var C,B,$,z;let Z=D;if(this.zshShell){let Q=this.usage.getDescriptions(),Y=(B=(C=this===null||this===void 0?void 0:this.aliases)===null||C===void 0?void 0:C[D])===null||B===void 0?void 0:B.find((j)=>{let A=Q[j];return typeof A==="string"&&A.length>0}),M=Y?Q[Y]:void 0,H=(z=($=Q[D])!==null&&$!==void 0?$:M)!==null&&z!==void 0?z:"";Z=`${D.replace(/:/g,"\\:")}:${H.replace("__yargsString__:","").replace(/(\r\n|\n|\r)/gm," ")}`}let X=(Q)=>/^--/.test(Q),O=(Q)=>/^[^0-9]$/.test(Q),J=!X(F)&&O(D)?"-":"--";if(u.push(J+Z),E)u.push(J+"no-"+Z)}customCompletion(D,u,F,E){if(QD(this.customCompletionFunction,null,this.shim),u1(this.customCompletionFunction)){let C=this.customCompletionFunction(F,u);if(o(C))return C.then((B)=>{this.shim.process.nextTick(()=>{E(null,B)})}).catch((B)=>{this.shim.process.nextTick(()=>{E(B,void 0)})});return E(null,C)}else if(F1(this.customCompletionFunction))return this.customCompletionFunction(F,u,(C=E)=>this.defaultCompletion(D,u,F,C),(C)=>{E(null,C)});else return this.customCompletionFunction(F,u,(C)=>{E(null,C)})}getCompletion(D,u){let F=D.length?D[D.length-1]:"",E=this.yargs.parse(D,!0),C=this.customCompletionFunction?(B)=>this.customCompletion(D,B,F,u):(B)=>this.defaultCompletion(D,B,F,u);return o(E)?E.then(C):C(E)}generateCompletionScript(D,u){let F=this.zshShell?X2:J2,E=this.shim.path.basename(D);if(D.match(/\.js$/))D=`./${D}`;return F=F.replace(/{{app_name}}/g,E),F=F.replace(/{{completion_command}}/g,u),F.replace(/{{app_path}}/g,D)}registerFunction(D){this.customCompletionFunction=D}setParsed(D){this.aliases=D.aliases}}function O2(D,u,F,E){return new Q2(D,u,F,E)}function u1(D){return D.length<3}function F1(D){return D.length>3}function Y2(D,u){if(D.length===0)return u.length;if(u.length===0)return D.length;let F=[],E;for(E=0;E<=u.length;E++)F[E]=[E];let C;for(C=0;C<=D.length;C++)F[0][C]=C;for(E=1;E<=u.length;E++)for(C=1;C<=D.length;C++)if(u.charAt(E-1)===D.charAt(C-1))F[E][C]=F[E-1][C-1];else if(E>1&&C>1&&u.charAt(E-2)===D.charAt(C-1)&&u.charAt(E-1)===D.charAt(C-2))F[E][C]=F[E-2][C-2]+1;else F[E][C]=Math.min(F[E-1][C-1]+1,Math.min(F[E][C-1]+1,F[E-1][C]+1));return F[u.length][D.length]}var W2=["$0","--","_"];function M2(D,u,F){let E=F.y18n.__,C=F.y18n.__n,B={};B.nonOptionCount=function(J){let Q=D.getDemandedCommands(),M=J._.length+(J["--"]?J["--"].length:0)-D.getInternalMethods().getContext().commands.length;if(Q._&&(M<Q._.min||M>Q._.max)){if(M<Q._.min)if(Q._.minMsg!==void 0)u.fail(Q._.minMsg?Q._.minMsg.replace(/\$0/g,M.toString()).replace(/\$1/,Q._.min.toString()):null);else u.fail(C("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",M,M.toString(),Q._.min.toString()));else if(M>Q._.max)if(Q._.maxMsg!==void 0)u.fail(Q._.maxMsg?Q._.maxMsg.replace(/\$0/g,M.toString()).replace(/\$1/,Q._.max.toString()):null);else u.fail(C("Too many non-option arguments: got %s, maximum of %s","Too many non-option arguments: got %s, maximum of %s",M,M.toString(),Q._.max.toString()))}},B.positionalCount=function(J,Q){if(Q<J)u.fail(C("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",Q,Q+"",J+""))},B.requiredArguments=function(J,Q){let Y=null;for(let M of Object.keys(Q))if(!Object.prototype.hasOwnProperty.call(J,M)||typeof J[M]>"u")Y=Y||{},Y[M]=Q[M];if(Y){let M=[];for(let j of Object.keys(Y)){let A=Y[j];if(A&&M.indexOf(A)<0)M.push(A)}let H=M.length?`
75
75
  ${M.join(`
76
- `)}`:"";u.fail(C("Missing required argument: %s","Missing required arguments: %s",Object.keys(Y).length,Object.keys(Y).join(", ")+H))}},B.unknownArguments=function(X,Q,Y,M,H=!0){var _;let S=D.getInternalMethods().getCommandInstance().getCommands(),f=[],d=D.getInternalMethods().getContext();if(Object.keys(X).forEach((x)=>{if(!J2.includes(x)&&!Object.prototype.hasOwnProperty.call(Y,x)&&!Object.prototype.hasOwnProperty.call(D.getInternalMethods().getParseContext(),x)&&!B.isValidAndSomeAliasIsNotNew(x,Q))f.push(x)}),H&&(d.commands.length>0||S.length>0||M))X._.slice(d.commands.length).forEach((x)=>{if(!S.includes(""+x))f.push(""+x)});if(H){let i=((_=D.getDemandedCommands()._)===null||_===void 0?void 0:_.max)||0,a=d.commands.length+i;if(a<X._.length)X._.slice(a).forEach((e)=>{if(e=String(e),!d.commands.includes(e)&&!f.includes(e))f.push(e)})}if(f.length)u.fail(C("Unknown argument: %s","Unknown arguments: %s",f.length,f.map((x)=>x.trim()?x:`"${x}"`).join(", ")))},B.unknownCommands=function(X){let Q=D.getInternalMethods().getCommandInstance().getCommands(),Y=[],M=D.getInternalMethods().getContext();if(M.commands.length>0||Q.length>0)X._.slice(M.commands.length).forEach((H)=>{if(!Q.includes(""+H))Y.push(""+H)});if(Y.length>0)return u.fail(C("Unknown command: %s","Unknown commands: %s",Y.length,Y.join(", "))),!0;else return!1},B.isValidAndSomeAliasIsNotNew=function(X,Q){if(!Object.prototype.hasOwnProperty.call(Q,X))return!1;let Y=D.parsed.newAliases;return[X,...Q[X]].some((M)=>!Object.prototype.hasOwnProperty.call(Y,M)||!Y[X])},B.limitedChoices=function(X){let Q=D.getOptions(),Y={};if(!Object.keys(Q.choices).length)return;Object.keys(X).forEach((_)=>{if(J2.indexOf(_)===-1&&Object.prototype.hasOwnProperty.call(Q.choices,_))[].concat(X[_]).forEach((S)=>{if(Q.choices[_].indexOf(S)===-1&&S!==void 0)Y[_]=(Y[_]||[]).concat(S)})});let M=Object.keys(Y);if(!M.length)return;let H=E("Invalid values:");M.forEach((_)=>{H+=`
77
- ${E("Argument: %s, Given: %s, Choices: %s",_,u.stringifiedValues(Y[_]),u.stringifiedValues(Q.choices[_]))}`}),u.fail(H)};let $={};B.implies=function(X,Q){if(N("<string|object> [array|number|string]",[X,Q],arguments.length),typeof X==="object")Object.keys(X).forEach((Y)=>{B.implies(Y,X[Y])});else{if(D.global(X),!$[X])$[X]=[];if(Array.isArray(Q))Q.forEach((Y)=>B.implies(X,Y));else QD(Q,void 0,F),$[X].push(Q)}},B.getImplied=function(){return $};function z(O,X){let Q=Number(X);if(X=isNaN(Q)?X:Q,typeof X==="number")X=O._.length>=X;else if(X.match(/^--no-.+/))X=X.match(/^--no-(.+)/)[1],X=!Object.prototype.hasOwnProperty.call(O,X);else X=Object.prototype.hasOwnProperty.call(O,X);return X}B.implications=function(X){let Q=[];if(Object.keys($).forEach((Y)=>{let M=Y;($[Y]||[]).forEach((H)=>{let _=M,S=H;if(_=z(X,_),H=z(X,H),_&&!H)Q.push(` ${M} -> ${S}`)})}),Q.length){let Y=`${E("Implications failed:")}
78
- `;Q.forEach((M)=>{Y+=M}),u.fail(Y)}};let Z={};B.conflicts=function(X,Q){if(N("<string|object> [array|string]",[X,Q],arguments.length),typeof X==="object")Object.keys(X).forEach((Y)=>{B.conflicts(Y,X[Y])});else{if(D.global(X),!Z[X])Z[X]=[];if(Array.isArray(Q))Q.forEach((Y)=>B.conflicts(X,Y));else Z[X].push(Q)}},B.getConflicting=()=>Z,B.conflicting=function(X){if(Object.keys(X).forEach((Q)=>{if(Z[Q])Z[Q].forEach((Y)=>{if(Y&&X[Q]!==void 0&&X[Y]!==void 0)u.fail(E("Arguments %s and %s are mutually exclusive",Q,Y))})}),D.getInternalMethods().getParserConfiguration()["strip-dashed"])Object.keys(Z).forEach((Q)=>{Z[Q].forEach((Y)=>{if(Y&&X[F.Parser.camelCase(Q)]!==void 0&&X[F.Parser.camelCase(Y)]!==void 0)u.fail(E("Arguments %s and %s are mutually exclusive",Q,Y))})})},B.recommendCommands=function(X,Q){Q=Q.sort((_,S)=>S.length-_.length);let M=null,H=1/0;for(let _=0,S;(S=Q[_])!==void 0;_++){let f=X2(X,S);if(f<=3&&f<H)H=f,M=S}if(M)u.fail(E("Did you mean %s?",M))},B.reset=function(X){return $=fD($,(Q)=>!X[Q]),Z=fD(Z,(Q)=>!X[Q]),B};let J=[];return B.freeze=function(){J.push({implied:$,conflicting:Z})},B.unfreeze=function(){let X=J.pop();QD(X,void 0,F),{implied:$,conflicting:Z}=X},B}var SF=[],qu;function Uu(D,u,F,E){qu=E;let C={};if(Object.prototype.hasOwnProperty.call(D,"extends")){if(typeof D.extends!=="string")return C;let B=/\.json|\..*rc$/.test(D.extends),$=null;if(!B)try{$=import.meta.resolve(D.extends)}catch(z){return D}else $=e1(u,D.extends);a1($),SF.push($),C=B?JSON.parse(qu.readFileSync($,"utf8")):E.require(D.extends),delete D.extends,C=Uu(C,qu.path.dirname($),F,qu)}return SF=[],F?O2(C,D):Object.assign({},C,D)}function a1(D){if(SF.indexOf(D)>-1)throw new uD(`Circular extended configurations: '${D}'.`)}function e1(D,u){return qu.path.resolve(D,u)}function O2(D,u){let F={};function E(C){return C&&typeof C==="object"&&!Array.isArray(C)}Object.assign(F,D);for(let C of Object.keys(u))if(E(u[C])&&E(F[C]))F[C]=O2(D[C],u[C]);else F[C]=u[C];return F}var R=function(D,u,F,E,C){if(E==="m")throw TypeError("Private method is not writable");if(E==="a"&&!C)throw TypeError("Private accessor was defined without a setter");if(typeof u==="function"?D!==u||!C:!u.has(D))throw TypeError("Cannot write private member to an object whose class did not declare it");return E==="a"?C.call(D,F):C?C.value=F:u.set(D,F),F},G=function(D,u,F,E){if(F==="a"&&!E)throw TypeError("Private accessor was defined without a getter");if(typeof u==="function"?D!==u||!E:!u.has(D))throw TypeError("Cannot read private member from an object whose class did not declare it");return F==="m"?E:F==="a"?E.call(D):E?E.value:u.get(D)},FD,nD,_u,OD,MD,cu,bD,kD,yu,UD,iu,_D,AD,HD,jD,nu,dD,ZD,w,ku,du,VD,gD,Xu,tD,hD,gu,v,lD,oD,sD,m,tu,LD,r;function f2(D){return(u=[],F=D.process.cwd(),E)=>{let C=new x2(u,F,E,D);return Object.defineProperty(C,"argv",{get:()=>{return C.parse()},enumerable:!0}),C.help(),C.version(),C}}var Y2=Symbol("copyDoubleDash"),W2=Symbol("copyDoubleDash"),PF=Symbol("deleteFromParserHintObject"),M2=Symbol("emitWarning"),H2=Symbol("freeze"),V2=Symbol("getDollarZero"),rD=Symbol("getParserConfiguration"),q2=Symbol("getUsageConfiguration"),wF=Symbol("guessLocale"),U2=Symbol("guessVersion"),_2=Symbol("parsePositionalNumbers"),IF=Symbol("pkgUp"),vD=Symbol("populateParserHintArray"),Ju=Symbol("populateParserHintSingleValueDictionary"),fF=Symbol("populateParserHintArrayDictionary"),xF=Symbol("populateParserHintDictionary"),bF=Symbol("sanitizeKey"),hF=Symbol("setKey"),vF=Symbol("unfreeze"),j2=Symbol("validateAsync"),K2=Symbol("getCommandInstance"),T2=Symbol("getContext"),N2=Symbol("getHasOutput"),R2=Symbol("getLoggerInstance"),A2=Symbol("getParseContext"),L2=Symbol("getUsageInstance"),S2=Symbol("getValidationInstance"),lu=Symbol("hasParseCallback"),P2=Symbol("isGlobalContext"),aD=Symbol("postProcess"),w2=Symbol("rebase"),pF=Symbol("reset"),ju=Symbol("runYargsParserAndExecuteCommands"),mF=Symbol("runValidation"),I2=Symbol("setHasOutput"),eD=Symbol("kTrackManuallySetKeys"),D3="en_US";class x2{constructor(D=[],u,F,E){this.customScriptName=!1,this.parsed=!1,FD.set(this,void 0),nD.set(this,void 0),_u.set(this,{commands:[],fullCommands:[]}),OD.set(this,null),MD.set(this,null),cu.set(this,"show-hidden"),bD.set(this,null),kD.set(this,!0),yu.set(this,{}),UD.set(this,!0),iu.set(this,[]),_D.set(this,void 0),AD.set(this,{}),HD.set(this,!1),jD.set(this,null),nu.set(this,!0),dD.set(this,void 0),ZD.set(this,""),w.set(this,void 0),ku.set(this,void 0),du.set(this,{}),VD.set(this,null),gD.set(this,null),Xu.set(this,{}),tD.set(this,{}),hD.set(this,void 0),gu.set(this,!1),v.set(this,void 0),lD.set(this,!1),oD.set(this,!1),sD.set(this,!1),m.set(this,void 0),tu.set(this,{}),LD.set(this,null),r.set(this,void 0),R(this,v,E,"f"),R(this,hD,D,"f"),R(this,nD,u,"f"),R(this,ku,F,"f"),R(this,_D,new AF(this),"f"),this.$0=this[V2](),this[pF](),R(this,FD,G(this,FD,"f"),"f"),R(this,m,G(this,m,"f"),"f"),R(this,r,G(this,r,"f"),"f"),R(this,w,G(this,w,"f"),"f"),G(this,w,"f").showHiddenOpt=G(this,cu,"f"),R(this,dD,this[W2](),"f"),G(this,v,"f").y18n.setLocale(D3)}addHelpOpt(D,u){if(N("[string|boolean] [string]",[D,u],arguments.length),G(this,jD,"f"))this[PF](G(this,jD,"f")),R(this,jD,null,"f");if(D===!1&&u===void 0)return this;return R(this,jD,typeof D==="string"?D:"help","f"),this.boolean(G(this,jD,"f")),this.describe(G(this,jD,"f"),u||G(this,m,"f").deferY18nLookup("Show help")),this}help(D,u){return this.addHelpOpt(D,u)}addShowHiddenOpt(D,u){if(N("[string|boolean] [string]",[D,u],arguments.length),D===!1&&u===void 0)return this;let F=typeof D==="string"?D:G(this,cu,"f");return this.boolean(F),this.describe(F,u||G(this,m,"f").deferY18nLookup("Show hidden options")),G(this,w,"f").showHiddenOpt=F,this}showHidden(D,u){return this.addShowHiddenOpt(D,u)}alias(D,u){return N("<object|string|array> [string|array]",[D,u],arguments.length),this[fF](this.alias.bind(this),"alias",D,u),this}array(D){return N("<array|string>",[D],arguments.length),this[vD]("array",D),this[eD](D),this}boolean(D){return N("<array|string>",[D],arguments.length),this[vD]("boolean",D),this[eD](D),this}check(D,u){return N("<function> [boolean]",[D,u],arguments.length),this.middleware((F,E)=>{return iD(()=>{return D(F,E.getOptions())},(C)=>{if(!C)G(this,m,"f").fail(G(this,v,"f").y18n.__("Argument check failed: %s",D.toString()));else if(typeof C==="string"||C instanceof Error)G(this,m,"f").fail(C.toString(),C);return F},(C)=>{return G(this,m,"f").fail(C.message?C.message:C.toString(),C),F})},!1,u),this}choices(D,u){return N("<object|string|array> [string|array]",[D,u],arguments.length),this[fF](this.choices.bind(this),"choices",D,u),this}coerce(D,u){if(N("<object|string|array> [function]",[D,u],arguments.length),Array.isArray(D)){if(!u)throw new uD("coerce callback must be provided");for(let E of D)this.coerce(E,u);return this}else if(typeof D==="object"){for(let E of Object.keys(D))this.coerce(E,D[E]);return this}if(!u)throw new uD("coerce callback must be provided");let F=D;return G(this,w,"f").key[F]=!0,G(this,_D,"f").addCoerceMiddleware((E,C)=>{var B;let $=(B=C.getAliases()[F])!==null&&B!==void 0?B:[],z=[F,...$].filter((Z)=>Object.prototype.hasOwnProperty.call(E,Z));if(z.length===0)return E;return iD(()=>{return u(E[z[0]])},(Z)=>{return z.forEach((J)=>{E[J]=Z}),E},(Z)=>{throw new uD(Z.message)})},F),this}conflicts(D,u){return N("<string|object> [string|array]",[D,u],arguments.length),G(this,r,"f").conflicts(D,u),this}config(D="config",u,F){if(N("[object|string] [string|function] [function]",[D,u,F],arguments.length),typeof D==="object"&&!Array.isArray(D))return D=Uu(D,G(this,nD,"f"),this[rD]()["deep-merge-config"]||!1,G(this,v,"f")),G(this,w,"f").configObjects=(G(this,w,"f").configObjects||[]).concat(D),this;if(typeof u==="function")F=u,u=void 0;return this.describe(D,u||G(this,m,"f").deferY18nLookup("Path to JSON config file")),(Array.isArray(D)?D:[D]).forEach((E)=>{G(this,w,"f").config[E]=F||!0}),this}completion(D,u,F){if(N("[string] [string|boolean|function] [function]",[D,u,F],arguments.length),typeof u==="function")F=u,u=void 0;if(R(this,MD,D||G(this,MD,"f")||"completion","f"),!u&&u!==!1)u="generate completion script";if(this.command(G(this,MD,"f"),u),F)G(this,OD,"f").registerFunction(F);return this}command(D,u,F,E,C,B){return N("<string|array|object> [string|boolean] [function|object] [function] [array] [boolean|string]",[D,u,F,E,C,B],arguments.length),G(this,FD,"f").addHandler(D,u,F,E,C,B),this}commands(D,u,F,E,C,B){return this.command(D,u,F,E,C,B)}commandDir(D,u){N("<string> [object]",[D,u],arguments.length);let F=G(this,ku,"f")||G(this,v,"f").require;return G(this,FD,"f").addDirectory(D,F,G(this,v,"f").getCallerFile(),u),this}count(D){return N("<array|string>",[D],arguments.length),this[vD]("count",D),this[eD](D),this}default(D,u,F){if(N("<object|string|array> [*] [string]",[D,u,F],arguments.length),F)RF(D,G(this,v,"f")),G(this,w,"f").defaultDescription[D]=F;if(typeof u==="function"){if(RF(D,G(this,v,"f")),!G(this,w,"f").defaultDescription[D])G(this,w,"f").defaultDescription[D]=G(this,m,"f").functionDescription(u);u=u.call()}return this[Ju](this.default.bind(this),"default",D,u),this}defaults(D,u,F){return this.default(D,u,F)}demandCommand(D=1,u,F,E){if(N("[number] [number|string] [string|null|undefined] [string|null|undefined]",[D,u,F,E],arguments.length),typeof u!=="number")F=u,u=1/0;return this.global("_",!1),G(this,w,"f").demandedCommands._={min:D,max:u,minMsg:F,maxMsg:E},this}demand(D,u,F){if(Array.isArray(u))u.forEach((E)=>{QD(F,!0,G(this,v,"f")),this.demandOption(E,F)}),u=1/0;else if(typeof u!=="number")F=u,u=1/0;if(typeof D==="number")QD(F,!0,G(this,v,"f")),this.demandCommand(D,u,F,F);else if(Array.isArray(D))D.forEach((E)=>{QD(F,!0,G(this,v,"f")),this.demandOption(E,F)});else if(typeof F==="string")this.demandOption(D,F);else if(F===!0||typeof F>"u")this.demandOption(D);return this}demandOption(D,u){return N("<object|string|array> [string]",[D,u],arguments.length),this[Ju](this.demandOption.bind(this),"demandedOptions",D,u),this}deprecateOption(D,u){return N("<string> [string|boolean]",[D,u],arguments.length),G(this,w,"f").deprecatedOptions[D]=u,this}describe(D,u){return N("<object|string|array> [string]",[D,u],arguments.length),this[hF](D,!0),G(this,m,"f").describe(D,u),this}detectLocale(D){return N("<boolean>",[D],arguments.length),R(this,kD,D,"f"),this}env(D){if(N("[string|boolean]",[D],arguments.length),D===!1)delete G(this,w,"f").envPrefix;else G(this,w,"f").envPrefix=D||"";return this}epilogue(D){return N("<string>",[D],arguments.length),G(this,m,"f").epilog(D),this}epilog(D){return this.epilogue(D)}example(D,u){if(N("<string|array> [string]",[D,u],arguments.length),Array.isArray(D))D.forEach((F)=>this.example(...F));else G(this,m,"f").example(D,u);return this}exit(D,u){if(R(this,HD,!0,"f"),R(this,bD,u,"f"),G(this,UD,"f"))G(this,v,"f").process.exit(D)}exitProcess(D=!0){return N("[boolean]",[D],arguments.length),R(this,UD,D,"f"),this}fail(D){if(N("<function|boolean>",[D],arguments.length),typeof D==="boolean"&&D!==!1)throw new uD("Invalid first argument. Expected function or boolean 'false'");return G(this,m,"f").failFn(D),this}getAliases(){return this.parsed?this.parsed.aliases:{}}async getCompletion(D,u){if(N("<array> [function]",[D,u],arguments.length),!u)return new Promise((F,E)=>{G(this,OD,"f").getCompletion(D,(C,B)=>{if(C)E(C);else F(B)})});else return G(this,OD,"f").getCompletion(D,u)}getDemandedOptions(){return N([],0),G(this,w,"f").demandedOptions}getDemandedCommands(){return N([],0),G(this,w,"f").demandedCommands}getDeprecatedOptions(){return N([],0),G(this,w,"f").deprecatedOptions}getDetectLocale(){return G(this,kD,"f")}getExitProcess(){return G(this,UD,"f")}getGroups(){return Object.assign({},G(this,AD,"f"),G(this,tD,"f"))}getHelp(){if(R(this,HD,!0,"f"),!G(this,m,"f").hasCachedHelpMessage()){if(!this.parsed){let u=this[ju](G(this,hD,"f"),void 0,void 0,0,!0);if(o(u))return u.then(()=>{return G(this,m,"f").help()})}let D=G(this,FD,"f").runDefaultBuilderOn(this);if(o(D))return D.then(()=>{return G(this,m,"f").help()})}return Promise.resolve(G(this,m,"f").help())}getOptions(){return G(this,w,"f")}getStrict(){return G(this,lD,"f")}getStrictCommands(){return G(this,oD,"f")}getStrictOptions(){return G(this,sD,"f")}global(D,u){if(N("<string|array> [boolean]",[D,u],arguments.length),D=[].concat(D),u!==!1)G(this,w,"f").local=G(this,w,"f").local.filter((F)=>D.indexOf(F)===-1);else D.forEach((F)=>{if(!G(this,w,"f").local.includes(F))G(this,w,"f").local.push(F)});return this}group(D,u){N("<string|array> <string>",[D,u],arguments.length);let F=G(this,tD,"f")[u]||G(this,AD,"f")[u];if(G(this,tD,"f")[u])delete G(this,tD,"f")[u];let E={};return G(this,AD,"f")[u]=(F||[]).concat(D).filter((C)=>{if(E[C])return!1;return E[C]=!0}),this}hide(D){return N("<string>",[D],arguments.length),G(this,w,"f").hiddenOptions.push(D),this}implies(D,u){return N("<string|object> [number|string|array]",[D,u],arguments.length),G(this,r,"f").implies(D,u),this}locale(D){if(N("[string]",[D],arguments.length),D===void 0)return this[wF](),G(this,v,"f").y18n.getLocale();return R(this,kD,!1,"f"),G(this,v,"f").y18n.setLocale(D),this}middleware(D,u,F){return G(this,_D,"f").addMiddleware(D,!!u,F)}nargs(D,u){return N("<string|object|array> [number]",[D,u],arguments.length),this[Ju](this.nargs.bind(this),"narg",D,u),this}normalize(D){return N("<array|string>",[D],arguments.length),this[vD]("normalize",D),this}number(D){return N("<array|string>",[D],arguments.length),this[vD]("number",D),this[eD](D),this}option(D,u){if(N("<string|object> [object]",[D,u],arguments.length),typeof D==="object")Object.keys(D).forEach((F)=>{this.options(F,D[F])});else{if(typeof u!=="object")u={};if(this[eD](D),G(this,LD,"f")&&(D==="version"||(u===null||u===void 0?void 0:u.alias)==="version"))this[M2](['"version" is a reserved word.',"Please do one of the following:",'- Disable version with `yargs.version(false)` if using "version" as an option',"- Use the built-in `yargs.version` method instead (if applicable)","- Use a different option key","https://yargs.js.org/docs/#api-reference-version"].join(`
79
- `),void 0,"versionWarning");if(G(this,w,"f").key[D]=!0,u.alias)this.alias(D,u.alias);let F=u.deprecate||u.deprecated;if(F)this.deprecateOption(D,F);let E=u.demand||u.required||u.require;if(E)this.demand(D,E);if(u.demandOption)this.demandOption(D,typeof u.demandOption==="string"?u.demandOption:void 0);if(u.conflicts)this.conflicts(D,u.conflicts);if("default"in u)this.default(D,u.default);if(u.implies!==void 0)this.implies(D,u.implies);if(u.nargs!==void 0)this.nargs(D,u.nargs);if(u.config)this.config(D,u.configParser);if(u.normalize)this.normalize(D);if(u.choices)this.choices(D,u.choices);if(u.coerce)this.coerce(D,u.coerce);if(u.group)this.group(D,u.group);if(u.boolean||u.type==="boolean"){if(this.boolean(D),u.alias)this.boolean(u.alias)}if(u.array||u.type==="array"){if(this.array(D),u.alias)this.array(u.alias)}if(u.number||u.type==="number"){if(this.number(D),u.alias)this.number(u.alias)}if(u.string||u.type==="string"){if(this.string(D),u.alias)this.string(u.alias)}if(u.count||u.type==="count")this.count(D);if(typeof u.global==="boolean")this.global(D,u.global);if(u.defaultDescription)G(this,w,"f").defaultDescription[D]=u.defaultDescription;if(u.skipValidation)this.skipValidation(D);let C=u.describe||u.description||u.desc,B=G(this,m,"f").getDescriptions();if(!Object.prototype.hasOwnProperty.call(B,D)||typeof C==="string")this.describe(D,C);if(u.hidden)this.hide(D);if(u.requiresArg)this.requiresArg(D)}return this}options(D,u){return this.option(D,u)}parse(D,u,F){if(N("[string|array] [function|boolean|object] [function]",[D,u,F],arguments.length),this[H2](),typeof D>"u")D=G(this,hD,"f");if(typeof u==="object")R(this,gD,u,"f"),u=F;if(typeof u==="function")R(this,VD,u,"f"),u=!1;if(!u)R(this,hD,D,"f");if(G(this,VD,"f"))R(this,UD,!1,"f");let E=this[ju](D,!!u),C=this.parsed;if(G(this,OD,"f").setParsed(this.parsed),o(E))return E.then((B)=>{if(G(this,VD,"f"))G(this,VD,"f").call(this,G(this,bD,"f"),B,G(this,ZD,"f"));return B}).catch((B)=>{if(G(this,VD,"f"))G(this,VD,"f")(B,this.parsed.argv,G(this,ZD,"f"));throw B}).finally(()=>{this[vF](),this.parsed=C});else{if(G(this,VD,"f"))G(this,VD,"f").call(this,G(this,bD,"f"),E,G(this,ZD,"f"));this[vF](),this.parsed=C}return E}parseAsync(D,u,F){let E=this.parse(D,u,F);return!o(E)?Promise.resolve(E):E}parseSync(D,u,F){let E=this.parse(D,u,F);if(o(E))throw new uD(".parseSync() must not be used with asynchronous builders, handlers, or middleware");return E}parserConfiguration(D){return N("<object>",[D],arguments.length),R(this,du,D,"f"),this}pkgConf(D,u){N("<string> [string]",[D,u],arguments.length);let F=null,E=this[IF](u||G(this,nD,"f"));if(E[D]&&typeof E[D]==="object")F=Uu(E[D],u||G(this,nD,"f"),this[rD]()["deep-merge-config"]||!1,G(this,v,"f")),G(this,w,"f").configObjects=(G(this,w,"f").configObjects||[]).concat(F);return this}positional(D,u){N("<string> <object>",[D,u],arguments.length);let F=["default","defaultDescription","implies","normalize","choices","conflicts","coerce","type","describe","desc","description","alias"];u=fD(u,(B,$)=>{if(B==="type"&&!["string","number","boolean"].includes($))return!1;return F.includes(B)});let E=G(this,_u,"f").fullCommands[G(this,_u,"f").fullCommands.length-1],C=E?G(this,FD,"f").cmdToParseOptions(E):{array:[],alias:{},default:{},demand:{}};return Gu(C).forEach((B)=>{let $=C[B];if(Array.isArray($)){if($.indexOf(D)!==-1)u[B]=!0}else if($[D]&&!(B in u))u[B]=$[D]}),this.group(D,G(this,m,"f").getPositionalGroupName()),this.option(D,u)}recommendCommands(D=!0){return N("[boolean]",[D],arguments.length),R(this,gu,D,"f"),this}required(D,u,F){return this.demand(D,u,F)}require(D,u,F){return this.demand(D,u,F)}requiresArg(D){if(N("<array|string|object> [number]",[D],arguments.length),typeof D==="string"&&G(this,w,"f").narg[D])return this;else this[Ju](this.requiresArg.bind(this),"narg",D,NaN);return this}showCompletionScript(D,u){return N("[string] [string]",[D,u],arguments.length),D=D||this.$0,G(this,dD,"f").log(G(this,OD,"f").generateCompletionScript(D,u||G(this,MD,"f")||"completion")),this}showHelp(D){if(N("[string|function]",[D],arguments.length),R(this,HD,!0,"f"),!G(this,m,"f").hasCachedHelpMessage()){if(!this.parsed){let F=this[ju](G(this,hD,"f"),void 0,void 0,0,!0);if(o(F))return F.then(()=>{G(this,m,"f").showHelp(D)}),this}let u=G(this,FD,"f").runDefaultBuilderOn(this);if(o(u))return u.then(()=>{G(this,m,"f").showHelp(D)}),this}return G(this,m,"f").showHelp(D),this}scriptName(D){return this.customScriptName=!0,this.$0=D,this}showHelpOnFail(D,u){return N("[boolean|string] [string]",[D,u],arguments.length),G(this,m,"f").showHelpOnFail(D,u),this}showVersion(D){return N("[string|function]",[D],arguments.length),G(this,m,"f").showVersion(D),this}skipValidation(D){return N("<array|string>",[D],arguments.length),this[vD]("skipValidation",D),this}strict(D){return N("[boolean]",[D],arguments.length),R(this,lD,D!==!1,"f"),this}strictCommands(D){return N("[boolean]",[D],arguments.length),R(this,oD,D!==!1,"f"),this}strictOptions(D){return N("[boolean]",[D],arguments.length),R(this,sD,D!==!1,"f"),this}string(D){return N("<array|string>",[D],arguments.length),this[vD]("string",D),this[eD](D),this}terminalWidth(){return N([],0),G(this,v,"f").process.stdColumns}updateLocale(D){return this.updateStrings(D)}updateStrings(D){return N("<object>",[D],arguments.length),R(this,kD,!1,"f"),G(this,v,"f").y18n.updateLocale(D),this}usage(D,u,F,E){if(N("<string|null|undefined> [string|boolean] [function|object] [function]",[D,u,F,E],arguments.length),u!==void 0)if(QD(D,null,G(this,v,"f")),(D||"").match(/^\$0( |$)/))return this.command(D,u,F,E);else throw new uD(".usage() description must start with $0 if being used as alias for .command()");else return G(this,m,"f").usage(D),this}usageConfiguration(D){return N("<object>",[D],arguments.length),R(this,tu,D,"f"),this}version(D,u,F){if(N("[boolean|string] [string] [string]",[D,u,F],arguments.length),G(this,LD,"f"))this[PF](G(this,LD,"f")),G(this,m,"f").version(void 0),R(this,LD,null,"f");if(arguments.length===0)F=this[U2](),D="version";else if(arguments.length===1){if(D===!1)return this;F=D,D="version"}else if(arguments.length===2)F=u,u=void 0;return R(this,LD,typeof D==="string"?D:"version","f"),u=u||G(this,m,"f").deferY18nLookup("Show version number"),G(this,m,"f").version(F||void 0),this.boolean(G(this,LD,"f")),this.describe(G(this,LD,"f"),u),this}wrap(D){return N("<number|null|undefined>",[D],arguments.length),G(this,m,"f").wrap(D),this}[(FD=new WeakMap,nD=new WeakMap,_u=new WeakMap,OD=new WeakMap,MD=new WeakMap,cu=new WeakMap,bD=new WeakMap,kD=new WeakMap,yu=new WeakMap,UD=new WeakMap,iu=new WeakMap,_D=new WeakMap,AD=new WeakMap,HD=new WeakMap,jD=new WeakMap,nu=new WeakMap,dD=new WeakMap,ZD=new WeakMap,w=new WeakMap,ku=new WeakMap,du=new WeakMap,VD=new WeakMap,gD=new WeakMap,Xu=new WeakMap,tD=new WeakMap,hD=new WeakMap,gu=new WeakMap,v=new WeakMap,lD=new WeakMap,oD=new WeakMap,sD=new WeakMap,m=new WeakMap,tu=new WeakMap,LD=new WeakMap,r=new WeakMap,Y2)](D){if(!D._||!D["--"])return D;D._.push.apply(D._,D["--"]);try{delete D["--"]}catch(u){}return D}[W2](){return{log:(...D)=>{if(!this[lu]())console.log(...D);if(R(this,HD,!0,"f"),G(this,ZD,"f").length)R(this,ZD,G(this,ZD,"f")+`
80
- `,"f");R(this,ZD,G(this,ZD,"f")+D.join(" "),"f")},error:(...D)=>{if(!this[lu]())console.error(...D);if(R(this,HD,!0,"f"),G(this,ZD,"f").length)R(this,ZD,G(this,ZD,"f")+`
81
- `,"f");R(this,ZD,G(this,ZD,"f")+D.join(" "),"f")}}}[PF](D){Gu(G(this,w,"f")).forEach((u)=>{if(((E)=>E==="configObjects")(u))return;let F=G(this,w,"f")[u];if(Array.isArray(F)){if(F.includes(D))F.splice(F.indexOf(D),1)}else if(typeof F==="object")delete F[D]}),delete G(this,m,"f").getDescriptions()[D]}[M2](D,u,F){if(!G(this,yu,"f")[F])G(this,v,"f").process.emitWarning(D,u),G(this,yu,"f")[F]=!0}[H2](){G(this,iu,"f").push({options:G(this,w,"f"),configObjects:G(this,w,"f").configObjects.slice(0),exitProcess:G(this,UD,"f"),groups:G(this,AD,"f"),strict:G(this,lD,"f"),strictCommands:G(this,oD,"f"),strictOptions:G(this,sD,"f"),completionCommand:G(this,MD,"f"),output:G(this,ZD,"f"),exitError:G(this,bD,"f"),hasOutput:G(this,HD,"f"),parsed:this.parsed,parseFn:G(this,VD,"f"),parseContext:G(this,gD,"f")}),G(this,m,"f").freeze(),G(this,r,"f").freeze(),G(this,FD,"f").freeze(),G(this,_D,"f").freeze()}[V2](){let D="",u;if(/\b(node|iojs|electron)(\.exe)?$/.test(G(this,v,"f").process.argv()[0]))u=G(this,v,"f").process.argv().slice(1,2);else u=G(this,v,"f").process.argv().slice(0,1);if(D=u.map((F)=>{let E=this[w2](G(this,nD,"f"),F);return F.match(/^(\/|([a-zA-Z]:)?\\)/)&&E.length<F.length?E:F}).join(" ").trim(),G(this,v,"f").getEnv("_")&&G(this,v,"f").getProcessArgvBin()===G(this,v,"f").getEnv("_"))D=G(this,v,"f").getEnv("_").replace(`${G(this,v,"f").path.dirname(G(this,v,"f").process.execPath())}/`,"");return D}[rD](){return G(this,du,"f")}[q2](){return G(this,tu,"f")}[wF](){if(!G(this,kD,"f"))return;let D=G(this,v,"f").getEnv("LC_ALL")||G(this,v,"f").getEnv("LC_MESSAGES")||G(this,v,"f").getEnv("LANG")||G(this,v,"f").getEnv("LANGUAGE")||"en_US";this.locale(D.replace(/[.:].*/,""))}[U2](){return this[IF]().version||"unknown"}[_2](D){let u=D["--"]?D["--"]:D._;for(let F=0,E;(E=u[F])!==void 0;F++)if(G(this,v,"f").Parser.looksLikeNumber(E)&&Number.isSafeInteger(Math.floor(parseFloat(`${E}`))))u[F]=Number(E);return D}[IF](D){let u=D||"*";if(G(this,Xu,"f")[u])return G(this,Xu,"f")[u];let F={};try{let E=D||G(this,v,"f").mainFilename;if(G(this,v,"f").path.extname(E))E=G(this,v,"f").path.dirname(E);let C=G(this,v,"f").findUp(E,(B,$)=>{if($.includes("package.json"))return"package.json";else return});QD(C,void 0,G(this,v,"f")),F=JSON.parse(G(this,v,"f").readFileSync(C,"utf8"))}catch(E){}return G(this,Xu,"f")[u]=F||{},G(this,Xu,"f")[u]}[vD](D,u){u=[].concat(u),u.forEach((F)=>{F=this[bF](F),G(this,w,"f")[D].push(F)})}[Ju](D,u,F,E){this[xF](D,u,F,E,(C,B,$)=>{G(this,w,"f")[C][B]=$})}[fF](D,u,F,E){this[xF](D,u,F,E,(C,B,$)=>{G(this,w,"f")[C][B]=(G(this,w,"f")[C][B]||[]).concat($)})}[xF](D,u,F,E,C){if(Array.isArray(F))F.forEach((B)=>{D(B,E)});else if(((B)=>typeof B==="object")(F))for(let B of Gu(F))D(B,F[B]);else C(u,this[bF](F),E)}[bF](D){if(D==="__proto__")return"___proto___";return D}[hF](D,u){return this[Ju](this[hF].bind(this),"key",D,u),this}[vF](){var D,u,F,E,C,B,$,z,Z,J,O,X;let Q=G(this,iu,"f").pop();QD(Q,void 0,G(this,v,"f"));let Y;D=this,u=this,F=this,E=this,C=this,B=this,$=this,z=this,Z=this,J=this,O=this,X=this,{options:{set value(M){R(D,w,M,"f")}}.value,configObjects:Y,exitProcess:{set value(M){R(u,UD,M,"f")}}.value,groups:{set value(M){R(F,AD,M,"f")}}.value,output:{set value(M){R(E,ZD,M,"f")}}.value,exitError:{set value(M){R(C,bD,M,"f")}}.value,hasOutput:{set value(M){R(B,HD,M,"f")}}.value,parsed:this.parsed,strict:{set value(M){R($,lD,M,"f")}}.value,strictCommands:{set value(M){R(z,oD,M,"f")}}.value,strictOptions:{set value(M){R(Z,sD,M,"f")}}.value,completionCommand:{set value(M){R(J,MD,M,"f")}}.value,parseFn:{set value(M){R(O,VD,M,"f")}}.value,parseContext:{set value(M){R(X,gD,M,"f")}}.value}=Q,G(this,w,"f").configObjects=Y,G(this,m,"f").unfreeze(),G(this,r,"f").unfreeze(),G(this,FD,"f").unfreeze(),G(this,_D,"f").unfreeze()}[j2](D,u){return iD(u,(F)=>{return D(F),F})}getInternalMethods(){return{getCommandInstance:this[K2].bind(this),getContext:this[T2].bind(this),getHasOutput:this[N2].bind(this),getLoggerInstance:this[R2].bind(this),getParseContext:this[A2].bind(this),getParserConfiguration:this[rD].bind(this),getUsageConfiguration:this[q2].bind(this),getUsageInstance:this[L2].bind(this),getValidationInstance:this[S2].bind(this),hasParseCallback:this[lu].bind(this),isGlobalContext:this[P2].bind(this),postProcess:this[aD].bind(this),reset:this[pF].bind(this),runValidation:this[mF].bind(this),runYargsParserAndExecuteCommands:this[ju].bind(this),setHasOutput:this[I2].bind(this)}}[K2](){return G(this,FD,"f")}[T2](){return G(this,_u,"f")}[N2](){return G(this,HD,"f")}[R2](){return G(this,dD,"f")}[A2](){return G(this,gD,"f")||{}}[L2](){return G(this,m,"f")}[S2](){return G(this,r,"f")}[lu](){return!!G(this,VD,"f")}[P2](){return G(this,nu,"f")}[aD](D,u,F,E){if(F)return D;if(o(D))return D;if(!u)D=this[Y2](D);if(this[rD]()["parse-positional-numbers"]||this[rD]()["parse-positional-numbers"]===void 0)D=this[_2](D);if(E)D=yD(D,this,G(this,_D,"f").getMiddleware(),!1);return D}[pF](D={}){R(this,w,G(this,w,"f")||{},"f");let u={};u.local=G(this,w,"f").local||[],u.configObjects=G(this,w,"f").configObjects||[];let F={};u.local.forEach((B)=>{F[B]=!0,(D[B]||[]).forEach(($)=>{F[$]=!0})}),Object.assign(G(this,tD,"f"),Object.keys(G(this,AD,"f")).reduce((B,$)=>{let z=G(this,AD,"f")[$].filter((Z)=>!(Z in F));if(z.length>0)B[$]=z;return B},{})),R(this,AD,{},"f");let E=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],C=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];if(E.forEach((B)=>{u[B]=(G(this,w,"f")[B]||[]).filter(($)=>!F[$])}),C.forEach((B)=>{u[B]=fD(G(this,w,"f")[B],($)=>!F[$])}),u.envPrefix=G(this,w,"f").envPrefix,R(this,w,u,"f"),R(this,m,G(this,m,"f")?G(this,m,"f").reset(F):B2(this,G(this,v,"f")),"f"),R(this,r,G(this,r,"f")?G(this,r,"f").reset(F):Q2(this,G(this,m,"f"),G(this,v,"f")),"f"),R(this,FD,G(this,FD,"f")?G(this,FD,"f").reset():F2(G(this,m,"f"),G(this,r,"f"),G(this,_D,"f"),G(this,v,"f")),"f"),!G(this,OD,"f"))R(this,OD,Z2(this,G(this,m,"f"),G(this,FD,"f"),G(this,v,"f")),"f");return G(this,_D,"f").reset(),R(this,MD,null,"f"),R(this,ZD,"","f"),R(this,bD,null,"f"),R(this,HD,!1,"f"),this.parsed=!1,this}[w2](D,u){return G(this,v,"f").path.relative(D,u)}[ju](D,u,F,E=0,C=!1){var B,$,z,Z;let J=!!F||C;D=D||G(this,hD,"f"),G(this,w,"f").__=G(this,v,"f").y18n.__,G(this,w,"f").configuration=this[rD]();let O=!!G(this,w,"f").configuration["populate--"],X=Object.assign({},G(this,w,"f").configuration,{"populate--":!0}),Q=G(this,v,"f").Parser.detailed(D,Object.assign({},G(this,w,"f"),{configuration:{"parse-positional-numbers":!1,...X}})),Y=Object.assign(Q.argv,G(this,gD,"f")),M=void 0,H=Q.aliases,_=!1,S=!1;if(Object.keys(Y).forEach((f)=>{if(f===G(this,jD,"f")&&Y[f])_=!0;else if(f===G(this,LD,"f")&&Y[f])S=!0}),Y.$0=this.$0,this.parsed=Q,E===0)G(this,m,"f").clearCachedHelpMessage();try{if(this[wF](),u)return this[aD](Y,O,!!F,!1);if(G(this,jD,"f")){if([G(this,jD,"f")].concat(H[G(this,jD,"f")]||[]).filter((a)=>a.length>1).includes(""+Y._[Y._.length-1]))Y._.pop(),_=!0}R(this,nu,!1,"f");let f=G(this,FD,"f").getCommands(),d=((B=G(this,OD,"f"))===null||B===void 0?void 0:B.completionKey)?[($=G(this,OD,"f"))===null||$===void 0?void 0:$.completionKey,...(Z=this.getAliases()[(z=G(this,OD,"f"))===null||z===void 0?void 0:z.completionKey])!==null&&Z!==void 0?Z:[]].some((i)=>Object.prototype.hasOwnProperty.call(Y,i)):!1,x=_||d||C;if(Y._.length){if(f.length){let i;for(let a=E||0,e;Y._[a]!==void 0;a++)if(e=String(Y._[a]),f.includes(e)&&e!==G(this,MD,"f")){let RD=G(this,FD,"f").runCommand(e,this,Q,a+1,C,_||S||C);return this[aD](RD,O,!!F,!1)}else if(!i&&e!==G(this,MD,"f")){i=e;break}if(!G(this,FD,"f").hasDefaultCommand()&&G(this,gu,"f")&&i&&!x)G(this,r,"f").recommendCommands(i,f)}if(G(this,MD,"f")&&Y._.includes(G(this,MD,"f"))&&!d){if(G(this,UD,"f"))xD(!0);this.showCompletionScript(),this.exit(0)}}if(G(this,FD,"f").hasDefaultCommand()&&!x){let i=G(this,FD,"f").runCommand(null,this,Q,0,C,_||S||C);return this[aD](i,O,!!F,!1)}if(d){if(G(this,UD,"f"))xD(!0);D=[].concat(D);let i=D.slice(D.indexOf(`--${G(this,OD,"f").completionKey}`)+1);return G(this,OD,"f").getCompletion(i,(a,e)=>{if(a)throw new uD(a.message);(e||[]).forEach((RD)=>{G(this,dD,"f").log(RD)}),this.exit(0)}),this[aD](Y,!O,!!F,!1)}if(!G(this,HD,"f")){if(_){if(G(this,UD,"f"))xD(!0);J=!0,this.showHelp((i)=>{G(this,dD,"f").log(i),this.exit(0)})}else if(S){if(G(this,UD,"f"))xD(!0);J=!0,G(this,m,"f").showVersion("log"),this.exit(0)}}if(!J&&G(this,w,"f").skipValidation.length>0)J=Object.keys(Y).some((i)=>G(this,w,"f").skipValidation.indexOf(i)>=0&&Y[i]===!0);if(!J){if(Q.error)throw new uD(Q.error.message);if(!d){let i=this[mF](H,{},Q.error);if(!F)M=yD(Y,this,G(this,_D,"f").getMiddleware(),!0);if(M=this[j2](i,M!==null&&M!==void 0?M:Y),o(M)&&!F)M=M.then(()=>{return yD(Y,this,G(this,_D,"f").getMiddleware(),!1)})}}}catch(f){if(f instanceof uD)G(this,m,"f").fail(f.message,f);else throw f}return this[aD](M!==null&&M!==void 0?M:Y,O,!!F,!0)}[mF](D,u,F,E){let C={...this.getDemandedOptions()};return(B)=>{if(F)throw new uD(F.message);G(this,r,"f").nonOptionCount(B),G(this,r,"f").requiredArguments(B,C);let $=!1;if(G(this,oD,"f"))$=G(this,r,"f").unknownCommands(B);if(G(this,lD,"f")&&!$)G(this,r,"f").unknownArguments(B,D,u,!!E);else if(G(this,sD,"f"))G(this,r,"f").unknownArguments(B,D,{},!1,!1);G(this,r,"f").limitedChoices(B),G(this,r,"f").implications(B),G(this,r,"f").conflicting(B)}}[I2](){R(this,HD,!0,"f")}[eD](D){if(typeof D==="string")G(this,w,"f").key[D]=!0;else for(let u of D)G(this,w,"f").key[u]=!0}}function E2(D){return!!D&&typeof D.getInternalMethods==="function"}var u3=f2(NF),b2=u3;import{existsSync as yF,readFileSync as v2,writeFileSync as cF,mkdirSync as p2}from"node:fs";import{homedir as F3}from"node:os";import{join as ou,dirname as m2}from"node:path";function c2(){return process.env.HOME||F3()}function y2(){return ou(c2(),".config","slack-cli","profiles.json")}function su(){return ou(process.cwd(),".slack-cli","workspace")}function ru(){return ou(c2(),".slack-cli","workspace")}function Ku(){let D=y2();if(!yF(D))return{profiles:{}};return JSON.parse(v2(D,"utf8"))}function E3(D){let u=y2();p2(m2(u),{recursive:!0}),cF(u,JSON.stringify(D,null,2)+`
82
- `)}function Qu(D){if(!yF(D))return;return v2(D,"utf8").trim()||void 0}function h2(D,u){let F=m2(D);p2(F,{recursive:!0});let E=ou(F,".gitignore");if(!yF(E))cF(E,`*
83
- `);cF(D,u+`
84
- `)}function i2(){let D=Ku(),u=Qu(su()),F=Qu(ru()),E=u??F;return Object.entries(D.profiles).map(([C,B])=>({name:C,profile:B,current:C===E}))}function n2(D){let u=Ku();if(!(D in u.profiles))throw Error(`Profile not found: ${D}`);delete u.profiles[D],E3(u)}function k2(D,u=!1){let F=Ku();if(!(D in F.profiles))throw Error(`Profile not found: ${D}`);if(u)h2(ru(),D);else h2(su(),D)}function iF(D){let F=Ku().profiles,E=Object.keys(F),C=process.env.SLACK_MCP_XOXP_TOKEN;if(C&&E.length>0){if(!globalThis.__slackEnvWarnShown)globalThis.__slackEnvWarnShown=!0,console.error(`Warning: SLACK_MCP_XOXP_TOKEN is set but workspace profiles exist - using profiles.
85
- Run: unset SLACK_MCP_XOXP_TOKEN (and remove from ~/.zshrc or ~/.bashrc)`)}else if(C)return C;let B=D??process.env.SLACK_WORKSPACE;if(B){let Z=F[B];if(!Z)throw Error(`Workspace "${B}" not found. Available: ${E.join(", ")||"(none)"}`);return Z.token}let $=Qu(su());if($){let Z=F[$];if(!Z)throw Error(`Workspace "${$}" (from .slack-cli/workspace) not found in profiles.`);return Z.token}let z=Qu(ru());if(z){let Z=F[z];if(!Z)throw Error(`Workspace "${z}" (from ~/.slack-cli/workspace) not found in profiles.`);return Z.token}if(E.length===0)throw Error("No profiles configured. Run: slack auth login");throw Error(`Workspace not selected (${E.join(", ")} available).
76
+ `)}`:"";u.fail(C("Missing required argument: %s","Missing required arguments: %s",Object.keys(Y).length,Object.keys(Y).join(", ")+H))}},B.unknownArguments=function(J,Q,Y,M,H=!0){var j;let A=D.getInternalMethods().getCommandInstance().getCommands(),x=[],n=D.getInternalMethods().getContext();if(Object.keys(J).forEach((f)=>{if(!W2.includes(f)&&!Object.prototype.hasOwnProperty.call(Y,f)&&!Object.prototype.hasOwnProperty.call(D.getInternalMethods().getParseContext(),f)&&!B.isValidAndSomeAliasIsNotNew(f,Q))x.push(f)}),H&&(n.commands.length>0||A.length>0||M))J._.slice(n.commands.length).forEach((f)=>{if(!A.includes(""+f))x.push(""+f)});if(H){let i=((j=D.getDemandedCommands()._)===null||j===void 0?void 0:j.max)||0,a=n.commands.length+i;if(a<J._.length)J._.slice(a).forEach((e)=>{if(e=String(e),!n.commands.includes(e)&&!x.includes(e))x.push(e)})}if(x.length)u.fail(C("Unknown argument: %s","Unknown arguments: %s",x.length,x.map((f)=>f.trim()?f:`"${f}"`).join(", ")))},B.unknownCommands=function(J){let Q=D.getInternalMethods().getCommandInstance().getCommands(),Y=[],M=D.getInternalMethods().getContext();if(M.commands.length>0||Q.length>0)J._.slice(M.commands.length).forEach((H)=>{if(!Q.includes(""+H))Y.push(""+H)});if(Y.length>0)return u.fail(C("Unknown command: %s","Unknown commands: %s",Y.length,Y.join(", "))),!0;else return!1},B.isValidAndSomeAliasIsNotNew=function(J,Q){if(!Object.prototype.hasOwnProperty.call(Q,J))return!1;let Y=D.parsed.newAliases;return[J,...Q[J]].some((M)=>!Object.prototype.hasOwnProperty.call(Y,M)||!Y[J])},B.limitedChoices=function(J){let Q=D.getOptions(),Y={};if(!Object.keys(Q.choices).length)return;Object.keys(J).forEach((j)=>{if(W2.indexOf(j)===-1&&Object.prototype.hasOwnProperty.call(Q.choices,j))[].concat(J[j]).forEach((A)=>{if(Q.choices[j].indexOf(A)===-1&&A!==void 0)Y[j]=(Y[j]||[]).concat(A)})});let M=Object.keys(Y);if(!M.length)return;let H=E("Invalid values:");M.forEach((j)=>{H+=`
77
+ ${E("Argument: %s, Given: %s, Choices: %s",j,u.stringifiedValues(Y[j]),u.stringifiedValues(Q.choices[j]))}`}),u.fail(H)};let $={};B.implies=function(J,Q){if(T("<string|object> [array|number|string]",[J,Q],arguments.length),typeof J==="object")Object.keys(J).forEach((Y)=>{B.implies(Y,J[Y])});else{if(D.global(J),!$[J])$[J]=[];if(Array.isArray(Q))Q.forEach((Y)=>B.implies(J,Y));else QD(Q,void 0,F),$[J].push(Q)}},B.getImplied=function(){return $};function z(O,J){let Q=Number(J);if(J=isNaN(Q)?J:Q,typeof J==="number")J=O._.length>=J;else if(J.match(/^--no-.+/))J=J.match(/^--no-(.+)/)[1],J=!Object.prototype.hasOwnProperty.call(O,J);else J=Object.prototype.hasOwnProperty.call(O,J);return J}B.implications=function(J){let Q=[];if(Object.keys($).forEach((Y)=>{let M=Y;($[Y]||[]).forEach((H)=>{let j=M,A=H;if(j=z(J,j),H=z(J,H),j&&!H)Q.push(` ${M} -> ${A}`)})}),Q.length){let Y=`${E("Implications failed:")}
78
+ `;Q.forEach((M)=>{Y+=M}),u.fail(Y)}};let Z={};B.conflicts=function(J,Q){if(T("<string|object> [array|string]",[J,Q],arguments.length),typeof J==="object")Object.keys(J).forEach((Y)=>{B.conflicts(Y,J[Y])});else{if(D.global(J),!Z[J])Z[J]=[];if(Array.isArray(Q))Q.forEach((Y)=>B.conflicts(J,Y));else Z[J].push(Q)}},B.getConflicting=()=>Z,B.conflicting=function(J){if(Object.keys(J).forEach((Q)=>{if(Z[Q])Z[Q].forEach((Y)=>{if(Y&&J[Q]!==void 0&&J[Y]!==void 0)u.fail(E("Arguments %s and %s are mutually exclusive",Q,Y))})}),D.getInternalMethods().getParserConfiguration()["strip-dashed"])Object.keys(Z).forEach((Q)=>{Z[Q].forEach((Y)=>{if(Y&&J[F.Parser.camelCase(Q)]!==void 0&&J[F.Parser.camelCase(Y)]!==void 0)u.fail(E("Arguments %s and %s are mutually exclusive",Q,Y))})})},B.recommendCommands=function(J,Q){Q=Q.sort((j,A)=>A.length-j.length);let M=null,H=1/0;for(let j=0,A;(A=Q[j])!==void 0;j++){let x=Y2(J,A);if(x<=3&&x<H)H=x,M=A}if(M)u.fail(E("Did you mean %s?",M))},B.reset=function(J){return $=xD($,(Q)=>!J[Q]),Z=xD(Z,(Q)=>!J[Q]),B};let X=[];return B.freeze=function(){X.push({implied:$,conflicting:Z})},B.unfreeze=function(){let J=X.pop();QD(J,void 0,F),{implied:$,conflicting:Z}=J},B}var fF=[],Uu;function ju(D,u,F,E){Uu=E;let C={};if(Object.prototype.hasOwnProperty.call(D,"extends")){if(typeof D.extends!=="string")return C;let B=/\.json|\..*rc$/.test(D.extends),$=null;if(!B)try{$=import.meta.resolve(D.extends)}catch(z){return D}else $=C1(u,D.extends);E1($),fF.push($),C=B?JSON.parse(Uu.readFileSync($,"utf8")):E.require(D.extends),delete D.extends,C=ju(C,Uu.path.dirname($),F,Uu)}return fF=[],F?H2(C,D):Object.assign({},C,D)}function E1(D){if(fF.indexOf(D)>-1)throw new uD(`Circular extended configurations: '${D}'.`)}function C1(D,u){return Uu.path.resolve(D,u)}function H2(D,u){let F={};function E(C){return C&&typeof C==="object"&&!Array.isArray(C)}Object.assign(F,D);for(let C of Object.keys(u))if(E(u[C])&&E(F[C]))F[C]=H2(D[C],u[C]);else F[C]=u[C];return F}var L=function(D,u,F,E,C){if(E==="m")throw TypeError("Private method is not writable");if(E==="a"&&!C)throw TypeError("Private accessor was defined without a setter");if(typeof u==="function"?D!==u||!C:!u.has(D))throw TypeError("Cannot write private member to an object whose class did not declare it");return E==="a"?C.call(D,F):C?C.value=F:u.set(D,F),F},G=function(D,u,F,E){if(F==="a"&&!E)throw TypeError("Private accessor was defined without a getter");if(typeof u==="function"?D!==u||!E:!u.has(D))throw TypeError("Cannot read private member from an object whose class did not declare it");return F==="m"?E:F==="a"?E.call(D):E?E.value:u.get(D)},FD,dD,_u,OD,MD,yu,bD,nD,iu,UD,ku,jD,LD,HD,_D,du,gD,ZD,w,nu,gu,VD,tD,Xu,lD,hD,tu,v,oD,sD,rD,m,lu,RD,r;function v2(D){return(u=[],F=D.process.cwd(),E)=>{let C=new p2(u,F,E,D);return Object.defineProperty(C,"argv",{get:()=>{return C.parse()},enumerable:!0}),C.help(),C.version(),C}}var V2=Symbol("copyDoubleDash"),q2=Symbol("copyDoubleDash"),bF=Symbol("deleteFromParserHintObject"),U2=Symbol("emitWarning"),j2=Symbol("freeze"),_2=Symbol("getDollarZero"),aD=Symbol("getParserConfiguration"),K2=Symbol("getUsageConfiguration"),hF=Symbol("guessLocale"),N2=Symbol("guessVersion"),T2=Symbol("parsePositionalNumbers"),vF=Symbol("pkgUp"),vD=Symbol("populateParserHintArray"),Qu=Symbol("populateParserHintSingleValueDictionary"),pF=Symbol("populateParserHintArrayDictionary"),mF=Symbol("populateParserHintDictionary"),cF=Symbol("sanitizeKey"),yF=Symbol("setKey"),iF=Symbol("unfreeze"),A2=Symbol("validateAsync"),L2=Symbol("getCommandInstance"),R2=Symbol("getContext"),S2=Symbol("getHasOutput"),P2=Symbol("getLoggerInstance"),w2=Symbol("getParseContext"),I2=Symbol("getUsageInstance"),x2=Symbol("getValidationInstance"),ou=Symbol("hasParseCallback"),f2=Symbol("isGlobalContext"),eD=Symbol("postProcess"),b2=Symbol("rebase"),kF=Symbol("reset"),Ku=Symbol("runYargsParserAndExecuteCommands"),dF=Symbol("runValidation"),h2=Symbol("setHasOutput"),Du=Symbol("kTrackManuallySetKeys"),B1="en_US";class p2{constructor(D=[],u,F,E){this.customScriptName=!1,this.parsed=!1,FD.set(this,void 0),dD.set(this,void 0),_u.set(this,{commands:[],fullCommands:[]}),OD.set(this,null),MD.set(this,null),yu.set(this,"show-hidden"),bD.set(this,null),nD.set(this,!0),iu.set(this,{}),UD.set(this,!0),ku.set(this,[]),jD.set(this,void 0),LD.set(this,{}),HD.set(this,!1),_D.set(this,null),du.set(this,!0),gD.set(this,void 0),ZD.set(this,""),w.set(this,void 0),nu.set(this,void 0),gu.set(this,{}),VD.set(this,null),tD.set(this,null),Xu.set(this,{}),lD.set(this,{}),hD.set(this,void 0),tu.set(this,!1),v.set(this,void 0),oD.set(this,!1),sD.set(this,!1),rD.set(this,!1),m.set(this,void 0),lu.set(this,{}),RD.set(this,null),r.set(this,void 0),L(this,v,E,"f"),L(this,hD,D,"f"),L(this,dD,u,"f"),L(this,nu,F,"f"),L(this,jD,new IF(this),"f"),this.$0=this[_2](),this[kF](),L(this,FD,G(this,FD,"f"),"f"),L(this,m,G(this,m,"f"),"f"),L(this,r,G(this,r,"f"),"f"),L(this,w,G(this,w,"f"),"f"),G(this,w,"f").showHiddenOpt=G(this,yu,"f"),L(this,gD,this[q2](),"f"),G(this,v,"f").y18n.setLocale(B1)}addHelpOpt(D,u){if(T("[string|boolean] [string]",[D,u],arguments.length),G(this,_D,"f"))this[bF](G(this,_D,"f")),L(this,_D,null,"f");if(D===!1&&u===void 0)return this;return L(this,_D,typeof D==="string"?D:"help","f"),this.boolean(G(this,_D,"f")),this.describe(G(this,_D,"f"),u||G(this,m,"f").deferY18nLookup("Show help")),this}help(D,u){return this.addHelpOpt(D,u)}addShowHiddenOpt(D,u){if(T("[string|boolean] [string]",[D,u],arguments.length),D===!1&&u===void 0)return this;let F=typeof D==="string"?D:G(this,yu,"f");return this.boolean(F),this.describe(F,u||G(this,m,"f").deferY18nLookup("Show hidden options")),G(this,w,"f").showHiddenOpt=F,this}showHidden(D,u){return this.addShowHiddenOpt(D,u)}alias(D,u){return T("<object|string|array> [string|array]",[D,u],arguments.length),this[pF](this.alias.bind(this),"alias",D,u),this}array(D){return T("<array|string>",[D],arguments.length),this[vD]("array",D),this[Du](D),this}boolean(D){return T("<array|string>",[D],arguments.length),this[vD]("boolean",D),this[Du](D),this}check(D,u){return T("<function> [boolean]",[D,u],arguments.length),this.middleware((F,E)=>{return kD(()=>{return D(F,E.getOptions())},(C)=>{if(!C)G(this,m,"f").fail(G(this,v,"f").y18n.__("Argument check failed: %s",D.toString()));else if(typeof C==="string"||C instanceof Error)G(this,m,"f").fail(C.toString(),C);return F},(C)=>{return G(this,m,"f").fail(C.message?C.message:C.toString(),C),F})},!1,u),this}choices(D,u){return T("<object|string|array> [string|array]",[D,u],arguments.length),this[pF](this.choices.bind(this),"choices",D,u),this}coerce(D,u){if(T("<object|string|array> [function]",[D,u],arguments.length),Array.isArray(D)){if(!u)throw new uD("coerce callback must be provided");for(let E of D)this.coerce(E,u);return this}else if(typeof D==="object"){for(let E of Object.keys(D))this.coerce(E,D[E]);return this}if(!u)throw new uD("coerce callback must be provided");let F=D;return G(this,w,"f").key[F]=!0,G(this,jD,"f").addCoerceMiddleware((E,C)=>{var B;let $=(B=C.getAliases()[F])!==null&&B!==void 0?B:[],z=[F,...$].filter((Z)=>Object.prototype.hasOwnProperty.call(E,Z));if(z.length===0)return E;return kD(()=>{return u(E[z[0]])},(Z)=>{return z.forEach((X)=>{E[X]=Z}),E},(Z)=>{throw new uD(Z.message)})},F),this}conflicts(D,u){return T("<string|object> [string|array]",[D,u],arguments.length),G(this,r,"f").conflicts(D,u),this}config(D="config",u,F){if(T("[object|string] [string|function] [function]",[D,u,F],arguments.length),typeof D==="object"&&!Array.isArray(D))return D=ju(D,G(this,dD,"f"),this[aD]()["deep-merge-config"]||!1,G(this,v,"f")),G(this,w,"f").configObjects=(G(this,w,"f").configObjects||[]).concat(D),this;if(typeof u==="function")F=u,u=void 0;return this.describe(D,u||G(this,m,"f").deferY18nLookup("Path to JSON config file")),(Array.isArray(D)?D:[D]).forEach((E)=>{G(this,w,"f").config[E]=F||!0}),this}completion(D,u,F){if(T("[string] [string|boolean|function] [function]",[D,u,F],arguments.length),typeof u==="function")F=u,u=void 0;if(L(this,MD,D||G(this,MD,"f")||"completion","f"),!u&&u!==!1)u="generate completion script";if(this.command(G(this,MD,"f"),u),F)G(this,OD,"f").registerFunction(F);return this}command(D,u,F,E,C,B){return T("<string|array|object> [string|boolean] [function|object] [function] [array] [boolean|string]",[D,u,F,E,C,B],arguments.length),G(this,FD,"f").addHandler(D,u,F,E,C,B),this}commands(D,u,F,E,C,B){return this.command(D,u,F,E,C,B)}commandDir(D,u){T("<string> [object]",[D,u],arguments.length);let F=G(this,nu,"f")||G(this,v,"f").require;return G(this,FD,"f").addDirectory(D,F,G(this,v,"f").getCallerFile(),u),this}count(D){return T("<array|string>",[D],arguments.length),this[vD]("count",D),this[Du](D),this}default(D,u,F){if(T("<object|string|array> [*] [string]",[D,u,F],arguments.length),F)wF(D,G(this,v,"f")),G(this,w,"f").defaultDescription[D]=F;if(typeof u==="function"){if(wF(D,G(this,v,"f")),!G(this,w,"f").defaultDescription[D])G(this,w,"f").defaultDescription[D]=G(this,m,"f").functionDescription(u);u=u.call()}return this[Qu](this.default.bind(this),"default",D,u),this}defaults(D,u,F){return this.default(D,u,F)}demandCommand(D=1,u,F,E){if(T("[number] [number|string] [string|null|undefined] [string|null|undefined]",[D,u,F,E],arguments.length),typeof u!=="number")F=u,u=1/0;return this.global("_",!1),G(this,w,"f").demandedCommands._={min:D,max:u,minMsg:F,maxMsg:E},this}demand(D,u,F){if(Array.isArray(u))u.forEach((E)=>{QD(F,!0,G(this,v,"f")),this.demandOption(E,F)}),u=1/0;else if(typeof u!=="number")F=u,u=1/0;if(typeof D==="number")QD(F,!0,G(this,v,"f")),this.demandCommand(D,u,F,F);else if(Array.isArray(D))D.forEach((E)=>{QD(F,!0,G(this,v,"f")),this.demandOption(E,F)});else if(typeof F==="string")this.demandOption(D,F);else if(F===!0||typeof F>"u")this.demandOption(D);return this}demandOption(D,u){return T("<object|string|array> [string]",[D,u],arguments.length),this[Qu](this.demandOption.bind(this),"demandedOptions",D,u),this}deprecateOption(D,u){return T("<string> [string|boolean]",[D,u],arguments.length),G(this,w,"f").deprecatedOptions[D]=u,this}describe(D,u){return T("<object|string|array> [string]",[D,u],arguments.length),this[yF](D,!0),G(this,m,"f").describe(D,u),this}detectLocale(D){return T("<boolean>",[D],arguments.length),L(this,nD,D,"f"),this}env(D){if(T("[string|boolean]",[D],arguments.length),D===!1)delete G(this,w,"f").envPrefix;else G(this,w,"f").envPrefix=D||"";return this}epilogue(D){return T("<string>",[D],arguments.length),G(this,m,"f").epilog(D),this}epilog(D){return this.epilogue(D)}example(D,u){if(T("<string|array> [string]",[D,u],arguments.length),Array.isArray(D))D.forEach((F)=>this.example(...F));else G(this,m,"f").example(D,u);return this}exit(D,u){if(L(this,HD,!0,"f"),L(this,bD,u,"f"),G(this,UD,"f"))G(this,v,"f").process.exit(D)}exitProcess(D=!0){return T("[boolean]",[D],arguments.length),L(this,UD,D,"f"),this}fail(D){if(T("<function|boolean>",[D],arguments.length),typeof D==="boolean"&&D!==!1)throw new uD("Invalid first argument. Expected function or boolean 'false'");return G(this,m,"f").failFn(D),this}getAliases(){return this.parsed?this.parsed.aliases:{}}async getCompletion(D,u){if(T("<array> [function]",[D,u],arguments.length),!u)return new Promise((F,E)=>{G(this,OD,"f").getCompletion(D,(C,B)=>{if(C)E(C);else F(B)})});else return G(this,OD,"f").getCompletion(D,u)}getDemandedOptions(){return T([],0),G(this,w,"f").demandedOptions}getDemandedCommands(){return T([],0),G(this,w,"f").demandedCommands}getDeprecatedOptions(){return T([],0),G(this,w,"f").deprecatedOptions}getDetectLocale(){return G(this,nD,"f")}getExitProcess(){return G(this,UD,"f")}getGroups(){return Object.assign({},G(this,LD,"f"),G(this,lD,"f"))}getHelp(){if(L(this,HD,!0,"f"),!G(this,m,"f").hasCachedHelpMessage()){if(!this.parsed){let u=this[Ku](G(this,hD,"f"),void 0,void 0,0,!0);if(o(u))return u.then(()=>{return G(this,m,"f").help()})}let D=G(this,FD,"f").runDefaultBuilderOn(this);if(o(D))return D.then(()=>{return G(this,m,"f").help()})}return Promise.resolve(G(this,m,"f").help())}getOptions(){return G(this,w,"f")}getStrict(){return G(this,oD,"f")}getStrictCommands(){return G(this,sD,"f")}getStrictOptions(){return G(this,rD,"f")}global(D,u){if(T("<string|array> [boolean]",[D,u],arguments.length),D=[].concat(D),u!==!1)G(this,w,"f").local=G(this,w,"f").local.filter((F)=>D.indexOf(F)===-1);else D.forEach((F)=>{if(!G(this,w,"f").local.includes(F))G(this,w,"f").local.push(F)});return this}group(D,u){T("<string|array> <string>",[D,u],arguments.length);let F=G(this,lD,"f")[u]||G(this,LD,"f")[u];if(G(this,lD,"f")[u])delete G(this,lD,"f")[u];let E={};return G(this,LD,"f")[u]=(F||[]).concat(D).filter((C)=>{if(E[C])return!1;return E[C]=!0}),this}hide(D){return T("<string>",[D],arguments.length),G(this,w,"f").hiddenOptions.push(D),this}implies(D,u){return T("<string|object> [number|string|array]",[D,u],arguments.length),G(this,r,"f").implies(D,u),this}locale(D){if(T("[string]",[D],arguments.length),D===void 0)return this[hF](),G(this,v,"f").y18n.getLocale();return L(this,nD,!1,"f"),G(this,v,"f").y18n.setLocale(D),this}middleware(D,u,F){return G(this,jD,"f").addMiddleware(D,!!u,F)}nargs(D,u){return T("<string|object|array> [number]",[D,u],arguments.length),this[Qu](this.nargs.bind(this),"narg",D,u),this}normalize(D){return T("<array|string>",[D],arguments.length),this[vD]("normalize",D),this}number(D){return T("<array|string>",[D],arguments.length),this[vD]("number",D),this[Du](D),this}option(D,u){if(T("<string|object> [object]",[D,u],arguments.length),typeof D==="object")Object.keys(D).forEach((F)=>{this.options(F,D[F])});else{if(typeof u!=="object")u={};if(this[Du](D),G(this,RD,"f")&&(D==="version"||(u===null||u===void 0?void 0:u.alias)==="version"))this[U2](['"version" is a reserved word.',"Please do one of the following:",'- Disable version with `yargs.version(false)` if using "version" as an option',"- Use the built-in `yargs.version` method instead (if applicable)","- Use a different option key","https://yargs.js.org/docs/#api-reference-version"].join(`
79
+ `),void 0,"versionWarning");if(G(this,w,"f").key[D]=!0,u.alias)this.alias(D,u.alias);let F=u.deprecate||u.deprecated;if(F)this.deprecateOption(D,F);let E=u.demand||u.required||u.require;if(E)this.demand(D,E);if(u.demandOption)this.demandOption(D,typeof u.demandOption==="string"?u.demandOption:void 0);if(u.conflicts)this.conflicts(D,u.conflicts);if("default"in u)this.default(D,u.default);if(u.implies!==void 0)this.implies(D,u.implies);if(u.nargs!==void 0)this.nargs(D,u.nargs);if(u.config)this.config(D,u.configParser);if(u.normalize)this.normalize(D);if(u.choices)this.choices(D,u.choices);if(u.coerce)this.coerce(D,u.coerce);if(u.group)this.group(D,u.group);if(u.boolean||u.type==="boolean"){if(this.boolean(D),u.alias)this.boolean(u.alias)}if(u.array||u.type==="array"){if(this.array(D),u.alias)this.array(u.alias)}if(u.number||u.type==="number"){if(this.number(D),u.alias)this.number(u.alias)}if(u.string||u.type==="string"){if(this.string(D),u.alias)this.string(u.alias)}if(u.count||u.type==="count")this.count(D);if(typeof u.global==="boolean")this.global(D,u.global);if(u.defaultDescription)G(this,w,"f").defaultDescription[D]=u.defaultDescription;if(u.skipValidation)this.skipValidation(D);let C=u.describe||u.description||u.desc,B=G(this,m,"f").getDescriptions();if(!Object.prototype.hasOwnProperty.call(B,D)||typeof C==="string")this.describe(D,C);if(u.hidden)this.hide(D);if(u.requiresArg)this.requiresArg(D)}return this}options(D,u){return this.option(D,u)}parse(D,u,F){if(T("[string|array] [function|boolean|object] [function]",[D,u,F],arguments.length),this[j2](),typeof D>"u")D=G(this,hD,"f");if(typeof u==="object")L(this,tD,u,"f"),u=F;if(typeof u==="function")L(this,VD,u,"f"),u=!1;if(!u)L(this,hD,D,"f");if(G(this,VD,"f"))L(this,UD,!1,"f");let E=this[Ku](D,!!u),C=this.parsed;if(G(this,OD,"f").setParsed(this.parsed),o(E))return E.then((B)=>{if(G(this,VD,"f"))G(this,VD,"f").call(this,G(this,bD,"f"),B,G(this,ZD,"f"));return B}).catch((B)=>{if(G(this,VD,"f"))G(this,VD,"f")(B,this.parsed.argv,G(this,ZD,"f"));throw B}).finally(()=>{this[iF](),this.parsed=C});else{if(G(this,VD,"f"))G(this,VD,"f").call(this,G(this,bD,"f"),E,G(this,ZD,"f"));this[iF](),this.parsed=C}return E}parseAsync(D,u,F){let E=this.parse(D,u,F);return!o(E)?Promise.resolve(E):E}parseSync(D,u,F){let E=this.parse(D,u,F);if(o(E))throw new uD(".parseSync() must not be used with asynchronous builders, handlers, or middleware");return E}parserConfiguration(D){return T("<object>",[D],arguments.length),L(this,gu,D,"f"),this}pkgConf(D,u){T("<string> [string]",[D,u],arguments.length);let F=null,E=this[vF](u||G(this,dD,"f"));if(E[D]&&typeof E[D]==="object")F=ju(E[D],u||G(this,dD,"f"),this[aD]()["deep-merge-config"]||!1,G(this,v,"f")),G(this,w,"f").configObjects=(G(this,w,"f").configObjects||[]).concat(F);return this}positional(D,u){T("<string> <object>",[D,u],arguments.length);let F=["default","defaultDescription","implies","normalize","choices","conflicts","coerce","type","describe","desc","description","alias"];u=xD(u,(B,$)=>{if(B==="type"&&!["string","number","boolean"].includes($))return!1;return F.includes(B)});let E=G(this,_u,"f").fullCommands[G(this,_u,"f").fullCommands.length-1],C=E?G(this,FD,"f").cmdToParseOptions(E):{array:[],alias:{},default:{},demand:{}};return Zu(C).forEach((B)=>{let $=C[B];if(Array.isArray($)){if($.indexOf(D)!==-1)u[B]=!0}else if($[D]&&!(B in u))u[B]=$[D]}),this.group(D,G(this,m,"f").getPositionalGroupName()),this.option(D,u)}recommendCommands(D=!0){return T("[boolean]",[D],arguments.length),L(this,tu,D,"f"),this}required(D,u,F){return this.demand(D,u,F)}require(D,u,F){return this.demand(D,u,F)}requiresArg(D){if(T("<array|string|object> [number]",[D],arguments.length),typeof D==="string"&&G(this,w,"f").narg[D])return this;else this[Qu](this.requiresArg.bind(this),"narg",D,NaN);return this}showCompletionScript(D,u){return T("[string] [string]",[D,u],arguments.length),D=D||this.$0,G(this,gD,"f").log(G(this,OD,"f").generateCompletionScript(D,u||G(this,MD,"f")||"completion")),this}showHelp(D){if(T("[string|function]",[D],arguments.length),L(this,HD,!0,"f"),!G(this,m,"f").hasCachedHelpMessage()){if(!this.parsed){let F=this[Ku](G(this,hD,"f"),void 0,void 0,0,!0);if(o(F))return F.then(()=>{G(this,m,"f").showHelp(D)}),this}let u=G(this,FD,"f").runDefaultBuilderOn(this);if(o(u))return u.then(()=>{G(this,m,"f").showHelp(D)}),this}return G(this,m,"f").showHelp(D),this}scriptName(D){return this.customScriptName=!0,this.$0=D,this}showHelpOnFail(D,u){return T("[boolean|string] [string]",[D,u],arguments.length),G(this,m,"f").showHelpOnFail(D,u),this}showVersion(D){return T("[string|function]",[D],arguments.length),G(this,m,"f").showVersion(D),this}skipValidation(D){return T("<array|string>",[D],arguments.length),this[vD]("skipValidation",D),this}strict(D){return T("[boolean]",[D],arguments.length),L(this,oD,D!==!1,"f"),this}strictCommands(D){return T("[boolean]",[D],arguments.length),L(this,sD,D!==!1,"f"),this}strictOptions(D){return T("[boolean]",[D],arguments.length),L(this,rD,D!==!1,"f"),this}string(D){return T("<array|string>",[D],arguments.length),this[vD]("string",D),this[Du](D),this}terminalWidth(){return T([],0),G(this,v,"f").process.stdColumns}updateLocale(D){return this.updateStrings(D)}updateStrings(D){return T("<object>",[D],arguments.length),L(this,nD,!1,"f"),G(this,v,"f").y18n.updateLocale(D),this}usage(D,u,F,E){if(T("<string|null|undefined> [string|boolean] [function|object] [function]",[D,u,F,E],arguments.length),u!==void 0)if(QD(D,null,G(this,v,"f")),(D||"").match(/^\$0( |$)/))return this.command(D,u,F,E);else throw new uD(".usage() description must start with $0 if being used as alias for .command()");else return G(this,m,"f").usage(D),this}usageConfiguration(D){return T("<object>",[D],arguments.length),L(this,lu,D,"f"),this}version(D,u,F){if(T("[boolean|string] [string] [string]",[D,u,F],arguments.length),G(this,RD,"f"))this[bF](G(this,RD,"f")),G(this,m,"f").version(void 0),L(this,RD,null,"f");if(arguments.length===0)F=this[N2](),D="version";else if(arguments.length===1){if(D===!1)return this;F=D,D="version"}else if(arguments.length===2)F=u,u=void 0;return L(this,RD,typeof D==="string"?D:"version","f"),u=u||G(this,m,"f").deferY18nLookup("Show version number"),G(this,m,"f").version(F||void 0),this.boolean(G(this,RD,"f")),this.describe(G(this,RD,"f"),u),this}wrap(D){return T("<number|null|undefined>",[D],arguments.length),G(this,m,"f").wrap(D),this}[(FD=new WeakMap,dD=new WeakMap,_u=new WeakMap,OD=new WeakMap,MD=new WeakMap,yu=new WeakMap,bD=new WeakMap,nD=new WeakMap,iu=new WeakMap,UD=new WeakMap,ku=new WeakMap,jD=new WeakMap,LD=new WeakMap,HD=new WeakMap,_D=new WeakMap,du=new WeakMap,gD=new WeakMap,ZD=new WeakMap,w=new WeakMap,nu=new WeakMap,gu=new WeakMap,VD=new WeakMap,tD=new WeakMap,Xu=new WeakMap,lD=new WeakMap,hD=new WeakMap,tu=new WeakMap,v=new WeakMap,oD=new WeakMap,sD=new WeakMap,rD=new WeakMap,m=new WeakMap,lu=new WeakMap,RD=new WeakMap,r=new WeakMap,V2)](D){if(!D._||!D["--"])return D;D._.push.apply(D._,D["--"]);try{delete D["--"]}catch(u){}return D}[q2](){return{log:(...D)=>{if(!this[ou]())console.log(...D);if(L(this,HD,!0,"f"),G(this,ZD,"f").length)L(this,ZD,G(this,ZD,"f")+`
80
+ `,"f");L(this,ZD,G(this,ZD,"f")+D.join(" "),"f")},error:(...D)=>{if(!this[ou]())console.error(...D);if(L(this,HD,!0,"f"),G(this,ZD,"f").length)L(this,ZD,G(this,ZD,"f")+`
81
+ `,"f");L(this,ZD,G(this,ZD,"f")+D.join(" "),"f")}}}[bF](D){Zu(G(this,w,"f")).forEach((u)=>{if(((E)=>E==="configObjects")(u))return;let F=G(this,w,"f")[u];if(Array.isArray(F)){if(F.includes(D))F.splice(F.indexOf(D),1)}else if(typeof F==="object")delete F[D]}),delete G(this,m,"f").getDescriptions()[D]}[U2](D,u,F){if(!G(this,iu,"f")[F])G(this,v,"f").process.emitWarning(D,u),G(this,iu,"f")[F]=!0}[j2](){G(this,ku,"f").push({options:G(this,w,"f"),configObjects:G(this,w,"f").configObjects.slice(0),exitProcess:G(this,UD,"f"),groups:G(this,LD,"f"),strict:G(this,oD,"f"),strictCommands:G(this,sD,"f"),strictOptions:G(this,rD,"f"),completionCommand:G(this,MD,"f"),output:G(this,ZD,"f"),exitError:G(this,bD,"f"),hasOutput:G(this,HD,"f"),parsed:this.parsed,parseFn:G(this,VD,"f"),parseContext:G(this,tD,"f")}),G(this,m,"f").freeze(),G(this,r,"f").freeze(),G(this,FD,"f").freeze(),G(this,jD,"f").freeze()}[_2](){let D="",u;if(/\b(node|iojs|electron)(\.exe)?$/.test(G(this,v,"f").process.argv()[0]))u=G(this,v,"f").process.argv().slice(1,2);else u=G(this,v,"f").process.argv().slice(0,1);if(D=u.map((F)=>{let E=this[b2](G(this,dD,"f"),F);return F.match(/^(\/|([a-zA-Z]:)?\\)/)&&E.length<F.length?E:F}).join(" ").trim(),G(this,v,"f").getEnv("_")&&G(this,v,"f").getProcessArgvBin()===G(this,v,"f").getEnv("_"))D=G(this,v,"f").getEnv("_").replace(`${G(this,v,"f").path.dirname(G(this,v,"f").process.execPath())}/`,"");return D}[aD](){return G(this,gu,"f")}[K2](){return G(this,lu,"f")}[hF](){if(!G(this,nD,"f"))return;let D=G(this,v,"f").getEnv("LC_ALL")||G(this,v,"f").getEnv("LC_MESSAGES")||G(this,v,"f").getEnv("LANG")||G(this,v,"f").getEnv("LANGUAGE")||"en_US";this.locale(D.replace(/[.:].*/,""))}[N2](){return this[vF]().version||"unknown"}[T2](D){let u=D["--"]?D["--"]:D._;for(let F=0,E;(E=u[F])!==void 0;F++)if(G(this,v,"f").Parser.looksLikeNumber(E)&&Number.isSafeInteger(Math.floor(parseFloat(`${E}`))))u[F]=Number(E);return D}[vF](D){let u=D||"*";if(G(this,Xu,"f")[u])return G(this,Xu,"f")[u];let F={};try{let E=D||G(this,v,"f").mainFilename;if(G(this,v,"f").path.extname(E))E=G(this,v,"f").path.dirname(E);let C=G(this,v,"f").findUp(E,(B,$)=>{if($.includes("package.json"))return"package.json";else return});QD(C,void 0,G(this,v,"f")),F=JSON.parse(G(this,v,"f").readFileSync(C,"utf8"))}catch(E){}return G(this,Xu,"f")[u]=F||{},G(this,Xu,"f")[u]}[vD](D,u){u=[].concat(u),u.forEach((F)=>{F=this[cF](F),G(this,w,"f")[D].push(F)})}[Qu](D,u,F,E){this[mF](D,u,F,E,(C,B,$)=>{G(this,w,"f")[C][B]=$})}[pF](D,u,F,E){this[mF](D,u,F,E,(C,B,$)=>{G(this,w,"f")[C][B]=(G(this,w,"f")[C][B]||[]).concat($)})}[mF](D,u,F,E,C){if(Array.isArray(F))F.forEach((B)=>{D(B,E)});else if(((B)=>typeof B==="object")(F))for(let B of Zu(F))D(B,F[B]);else C(u,this[cF](F),E)}[cF](D){if(D==="__proto__")return"___proto___";return D}[yF](D,u){return this[Qu](this[yF].bind(this),"key",D,u),this}[iF](){var D,u,F,E,C,B,$,z,Z,X,O,J;let Q=G(this,ku,"f").pop();QD(Q,void 0,G(this,v,"f"));let Y;D=this,u=this,F=this,E=this,C=this,B=this,$=this,z=this,Z=this,X=this,O=this,J=this,{options:{set value(M){L(D,w,M,"f")}}.value,configObjects:Y,exitProcess:{set value(M){L(u,UD,M,"f")}}.value,groups:{set value(M){L(F,LD,M,"f")}}.value,output:{set value(M){L(E,ZD,M,"f")}}.value,exitError:{set value(M){L(C,bD,M,"f")}}.value,hasOutput:{set value(M){L(B,HD,M,"f")}}.value,parsed:this.parsed,strict:{set value(M){L($,oD,M,"f")}}.value,strictCommands:{set value(M){L(z,sD,M,"f")}}.value,strictOptions:{set value(M){L(Z,rD,M,"f")}}.value,completionCommand:{set value(M){L(X,MD,M,"f")}}.value,parseFn:{set value(M){L(O,VD,M,"f")}}.value,parseContext:{set value(M){L(J,tD,M,"f")}}.value}=Q,G(this,w,"f").configObjects=Y,G(this,m,"f").unfreeze(),G(this,r,"f").unfreeze(),G(this,FD,"f").unfreeze(),G(this,jD,"f").unfreeze()}[A2](D,u){return kD(u,(F)=>{return D(F),F})}getInternalMethods(){return{getCommandInstance:this[L2].bind(this),getContext:this[R2].bind(this),getHasOutput:this[S2].bind(this),getLoggerInstance:this[P2].bind(this),getParseContext:this[w2].bind(this),getParserConfiguration:this[aD].bind(this),getUsageConfiguration:this[K2].bind(this),getUsageInstance:this[I2].bind(this),getValidationInstance:this[x2].bind(this),hasParseCallback:this[ou].bind(this),isGlobalContext:this[f2].bind(this),postProcess:this[eD].bind(this),reset:this[kF].bind(this),runValidation:this[dF].bind(this),runYargsParserAndExecuteCommands:this[Ku].bind(this),setHasOutput:this[h2].bind(this)}}[L2](){return G(this,FD,"f")}[R2](){return G(this,_u,"f")}[S2](){return G(this,HD,"f")}[P2](){return G(this,gD,"f")}[w2](){return G(this,tD,"f")||{}}[I2](){return G(this,m,"f")}[x2](){return G(this,r,"f")}[ou](){return!!G(this,VD,"f")}[f2](){return G(this,du,"f")}[eD](D,u,F,E){if(F)return D;if(o(D))return D;if(!u)D=this[V2](D);if(this[aD]()["parse-positional-numbers"]||this[aD]()["parse-positional-numbers"]===void 0)D=this[T2](D);if(E)D=iD(D,this,G(this,jD,"f").getMiddleware(),!1);return D}[kF](D={}){L(this,w,G(this,w,"f")||{},"f");let u={};u.local=G(this,w,"f").local||[],u.configObjects=G(this,w,"f").configObjects||[];let F={};u.local.forEach((B)=>{F[B]=!0,(D[B]||[]).forEach(($)=>{F[$]=!0})}),Object.assign(G(this,lD,"f"),Object.keys(G(this,LD,"f")).reduce((B,$)=>{let z=G(this,LD,"f")[$].filter((Z)=>!(Z in F));if(z.length>0)B[$]=z;return B},{})),L(this,LD,{},"f");let E=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],C=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];if(E.forEach((B)=>{u[B]=(G(this,w,"f")[B]||[]).filter(($)=>!F[$])}),C.forEach((B)=>{u[B]=xD(G(this,w,"f")[B],($)=>!F[$])}),u.envPrefix=G(this,w,"f").envPrefix,L(this,w,u,"f"),L(this,m,G(this,m,"f")?G(this,m,"f").reset(F):Z2(this,G(this,v,"f")),"f"),L(this,r,G(this,r,"f")?G(this,r,"f").reset(F):M2(this,G(this,m,"f"),G(this,v,"f")),"f"),L(this,FD,G(this,FD,"f")?G(this,FD,"f").reset():$2(G(this,m,"f"),G(this,r,"f"),G(this,jD,"f"),G(this,v,"f")),"f"),!G(this,OD,"f"))L(this,OD,O2(this,G(this,m,"f"),G(this,FD,"f"),G(this,v,"f")),"f");return G(this,jD,"f").reset(),L(this,MD,null,"f"),L(this,ZD,"","f"),L(this,bD,null,"f"),L(this,HD,!1,"f"),this.parsed=!1,this}[b2](D,u){return G(this,v,"f").path.relative(D,u)}[Ku](D,u,F,E=0,C=!1){var B,$,z,Z;let X=!!F||C;D=D||G(this,hD,"f"),G(this,w,"f").__=G(this,v,"f").y18n.__,G(this,w,"f").configuration=this[aD]();let O=!!G(this,w,"f").configuration["populate--"],J=Object.assign({},G(this,w,"f").configuration,{"populate--":!0}),Q=G(this,v,"f").Parser.detailed(D,Object.assign({},G(this,w,"f"),{configuration:{"parse-positional-numbers":!1,...J}})),Y=Object.assign(Q.argv,G(this,tD,"f")),M=void 0,H=Q.aliases,j=!1,A=!1;if(Object.keys(Y).forEach((x)=>{if(x===G(this,_D,"f")&&Y[x])j=!0;else if(x===G(this,RD,"f")&&Y[x])A=!0}),Y.$0=this.$0,this.parsed=Q,E===0)G(this,m,"f").clearCachedHelpMessage();try{if(this[hF](),u)return this[eD](Y,O,!!F,!1);if(G(this,_D,"f")){if([G(this,_D,"f")].concat(H[G(this,_D,"f")]||[]).filter((a)=>a.length>1).includes(""+Y._[Y._.length-1]))Y._.pop(),j=!0}L(this,du,!1,"f");let x=G(this,FD,"f").getCommands(),n=((B=G(this,OD,"f"))===null||B===void 0?void 0:B.completionKey)?[($=G(this,OD,"f"))===null||$===void 0?void 0:$.completionKey,...(Z=this.getAliases()[(z=G(this,OD,"f"))===null||z===void 0?void 0:z.completionKey])!==null&&Z!==void 0?Z:[]].some((i)=>Object.prototype.hasOwnProperty.call(Y,i)):!1,f=j||n||C;if(Y._.length){if(x.length){let i;for(let a=E||0,e;Y._[a]!==void 0;a++)if(e=String(Y._[a]),x.includes(e)&&e!==G(this,MD,"f")){let AD=G(this,FD,"f").runCommand(e,this,Q,a+1,C,j||A||C);return this[eD](AD,O,!!F,!1)}else if(!i&&e!==G(this,MD,"f")){i=e;break}if(!G(this,FD,"f").hasDefaultCommand()&&G(this,tu,"f")&&i&&!f)G(this,r,"f").recommendCommands(i,x)}if(G(this,MD,"f")&&Y._.includes(G(this,MD,"f"))&&!n){if(G(this,UD,"f"))fD(!0);this.showCompletionScript(),this.exit(0)}}if(G(this,FD,"f").hasDefaultCommand()&&!f){let i=G(this,FD,"f").runCommand(null,this,Q,0,C,j||A||C);return this[eD](i,O,!!F,!1)}if(n){if(G(this,UD,"f"))fD(!0);D=[].concat(D);let i=D.slice(D.indexOf(`--${G(this,OD,"f").completionKey}`)+1);return G(this,OD,"f").getCompletion(i,(a,e)=>{if(a)throw new uD(a.message);(e||[]).forEach((AD)=>{G(this,gD,"f").log(AD)}),this.exit(0)}),this[eD](Y,!O,!!F,!1)}if(!G(this,HD,"f")){if(j){if(G(this,UD,"f"))fD(!0);X=!0,this.showHelp((i)=>{G(this,gD,"f").log(i),this.exit(0)})}else if(A){if(G(this,UD,"f"))fD(!0);X=!0,G(this,m,"f").showVersion("log"),this.exit(0)}}if(!X&&G(this,w,"f").skipValidation.length>0)X=Object.keys(Y).some((i)=>G(this,w,"f").skipValidation.indexOf(i)>=0&&Y[i]===!0);if(!X){if(Q.error)throw new uD(Q.error.message);if(!n){let i=this[dF](H,{},Q.error);if(!F)M=iD(Y,this,G(this,jD,"f").getMiddleware(),!0);if(M=this[A2](i,M!==null&&M!==void 0?M:Y),o(M)&&!F)M=M.then(()=>{return iD(Y,this,G(this,jD,"f").getMiddleware(),!1)})}}}catch(x){if(x instanceof uD)G(this,m,"f").fail(x.message,x);else throw x}return this[eD](M!==null&&M!==void 0?M:Y,O,!!F,!0)}[dF](D,u,F,E){let C={...this.getDemandedOptions()};return(B)=>{if(F)throw new uD(F.message);G(this,r,"f").nonOptionCount(B),G(this,r,"f").requiredArguments(B,C);let $=!1;if(G(this,sD,"f"))$=G(this,r,"f").unknownCommands(B);if(G(this,oD,"f")&&!$)G(this,r,"f").unknownArguments(B,D,u,!!E);else if(G(this,rD,"f"))G(this,r,"f").unknownArguments(B,D,{},!1,!1);G(this,r,"f").limitedChoices(B),G(this,r,"f").implications(B),G(this,r,"f").conflicting(B)}}[h2](){L(this,HD,!0,"f")}[Du](D){if(typeof D==="string")G(this,w,"f").key[D]=!0;else for(let u of D)G(this,w,"f").key[u]=!0}}function z2(D){return!!D&&typeof D.getInternalMethods==="function"}var $1=v2(PF),m2=$1;import{existsSync as gF,readFileSync as y2,writeFileSync as nF,mkdirSync as i2}from"node:fs";import{homedir as z1}from"node:os";import{join as su,dirname as k2}from"node:path";function d2(){return process.env.HOME||z1()}function n2(){return su(d2(),".config","slack-cli","profiles.json")}function ru(){return su(process.cwd(),".slack-cli","workspace")}function au(){return su(d2(),".slack-cli","workspace")}function Nu(){let D=n2();if(!gF(D))return{profiles:{}};return JSON.parse(y2(D,"utf8"))}function G1(D){let u=n2();i2(k2(u),{recursive:!0}),nF(u,JSON.stringify(D,null,2)+`
82
+ `)}function Ou(D){if(!gF(D))return;return y2(D,"utf8").trim()||void 0}function c2(D,u){let F=k2(D);i2(F,{recursive:!0});let E=su(F,".gitignore");if(!gF(E))nF(E,`*
83
+ `);nF(D,u+`
84
+ `)}function g2(){let D=Nu(),u=Ou(ru()),F=Ou(au()),E=u??F;return Object.entries(D.profiles).map(([C,B])=>({name:C,profile:B,current:C===E}))}function t2(D){let u=Nu();if(!(D in u.profiles))throw Error(`Profile not found: ${D}`);delete u.profiles[D],G1(u)}function l2(D,u=!1){let F=Nu();if(!(D in F.profiles))throw Error(`Profile not found: ${D}`);if(u)c2(au(),D);else c2(ru(),D)}function tF(D){let F=Nu().profiles,E=Object.keys(F),C=process.env.SLACK_MCP_XOXP_TOKEN;if(C&&E.length>0){if(!globalThis.__slackEnvWarnShown)globalThis.__slackEnvWarnShown=!0,console.error(`Warning: SLACK_MCP_XOXP_TOKEN is set but workspace profiles exist - using profiles.
85
+ Run: unset SLACK_MCP_XOXP_TOKEN (and remove from ~/.zshrc or ~/.bashrc)`)}else if(C)return C;let B=D??process.env.SLACK_WORKSPACE;if(B){let Z=F[B];if(!Z)throw Error(`Workspace "${B}" not found. Available: ${E.join(", ")||"(none)"}`);return Z.token}let $=Ou(ru());if($){let Z=F[$];if(!Z)throw Error(`Workspace "${$}" (from .slack-cli/workspace) not found in profiles.`);return Z.token}let z=Ou(au());if(z){let Z=F[z];if(!Z)throw Error(`Workspace "${z}" (from ~/.slack-cli/workspace) not found in profiles.`);return Z.token}if(E.length===0)throw Error("No profiles configured. Run: slack auth login");throw Error(`Workspace not selected (${E.join(", ")} available).
86
86
  Select locally: slack workspace use <name> (writes .slack-cli/workspace)
87
- Select globally: slack workspace use -g <name> (writes ~/.slack-cli/workspace)`)}function d2(D){let F=Ku().profiles;if(process.env.SLACK_MCP_XOXP_TOKEN)return process.env.SLACK_MCP_XOXD_COOKIE;let C=D??process.env.SLACK_WORKSPACE;if(C)return F[C]?.cookie;let B=Qu(su());if(B)return F[B]?.cookie;let $=Qu(ru());if($)return F[$]?.cookie;return}import{createInterface as j3}from"node:readline/promises";import{existsSync as t2,readFileSync as l2,writeFileSync as C3,mkdirSync as B3}from"node:fs";import{homedir as $3}from"node:os";import{join as nF,dirname as z3}from"node:path";function o2(){return process.env.HOME||$3()}function s2(){return nF(o2(),".config","slack-cli","profiles.json")}function G3(){return nF(process.cwd(),".slack-cli","workspace")}function Z3(){return nF(o2(),".slack-cli","workspace")}function r2(){let D=s2();if(!t2(D))return{profiles:{}};return JSON.parse(l2(D,"utf8"))}function X3(D){let u=s2();B3(z3(u),{recursive:!0}),C3(u,JSON.stringify(D,null,2)+`
88
- `)}function g2(D){if(!t2(D))return;return l2(D,"utf8").trim()||void 0}function a2(){let D=r2(),u=g2(G3()),F=g2(Z3()),E=u??F;return Object.entries(D.profiles).map(([C,B])=>({name:C,profile:B,current:C===E}))}function kF(D,u){let F=r2();F.profiles[D]=u,X3(F)}class Tu extends Error{retryAfter;constructor(D){super(`Slack rate limited — retry after ${D}s`);this.name="RateLimitError",this.retryAfter=D}}function J3(){return(process.env.SLACK_API_BASE??"https://slack.com/api").replace(/\/$/,"")}async function Q3(D,u,F,E){let C={};if(E)C.Cookie=`d=${E}`;let B=await fetch(`${J3()}/${u}`,{...F,headers:{...F.headers??{},Authorization:`Bearer ${D}`,...C}});if(B.status===429){let z=parseInt(B.headers.get("retry-after")??"60",10);throw new Tu(isNaN(z)?60:z)}let $=await B.json();if($.ok!==!0){let z=$.error??"unknown";if(z==="ratelimited")throw new Tu(60);if(z==="invalid_auth"&&D.startsWith("xoxc-")&&!E)throw Error(`Desktop app token (xoxc-) is not accepted by the public Slack API.
87
+ Select globally: slack workspace use -g <name> (writes ~/.slack-cli/workspace)`)}function o2(D){let F=Nu().profiles;if(process.env.SLACK_MCP_XOXP_TOKEN)return process.env.SLACK_MCP_XOXD_COOKIE;let C=D??process.env.SLACK_WORKSPACE;if(C)return F[C]?.cookie;let B=Ou(ru());if(B)return F[B]?.cookie;let $=Ou(au());if($)return F[$]?.cookie;return}import{createInterface as R1}from"node:readline/promises";import{existsSync as r2,readFileSync as a2,writeFileSync as Z1,mkdirSync as J1}from"node:fs";import{homedir as X1}from"node:os";import{join as lF,dirname as Q1}from"node:path";function e2(){return process.env.HOME||X1()}function D8(){return lF(e2(),".config","slack-cli","profiles.json")}function O1(){return lF(process.cwd(),".slack-cli","workspace")}function Y1(){return lF(e2(),".slack-cli","workspace")}function u8(){let D=D8();if(!r2(D))return{profiles:{}};return JSON.parse(a2(D,"utf8"))}function W1(D){let u=D8();J1(Q1(u),{recursive:!0}),Z1(u,JSON.stringify(D,null,2)+`
88
+ `)}function s2(D){if(!r2(D))return;return a2(D,"utf8").trim()||void 0}function F8(){let D=u8(),u=s2(O1()),F=s2(Y1()),E=u??F;return Object.entries(D.profiles).map(([C,B])=>({name:C,profile:B,current:C===E}))}function oF(D,u){let F=u8();F.profiles[D]=u,W1(F)}class uu extends Error{retryAfter;constructor(D){super(`Slack rate limited — retry after ${D}s`);this.name="RateLimitError",this.retryAfter=D}}function E8(){return(process.env.SLACK_API_BASE??"https://slack.com/api").replace(/\/$/,"")}async function M1(D,u,F,E){let C={};if(E)C.Cookie=`d=${E}`;let B=await fetch(`${E8()}/${u}`,{...F,headers:{...F.headers??{},Authorization:`Bearer ${D}`,...C}});if(B.status===429){let z=parseInt(B.headers.get("retry-after")??"60",10);throw new uu(isNaN(z)?60:z)}let $=await B.json();if($.ok!==!0){let z=$.error??"unknown";if(z==="ratelimited")throw new uu(60);if(z==="invalid_auth"&&D.startsWith("xoxc-")&&!E)throw Error(`Desktop app token (xoxc-) is not accepted by the public Slack API.
89
89
  Replace it with an xoxp- user token:
90
- slack workspace set-token <name> <xoxp-token>`);throw Error(`Slack error on ${u}: ${z}`)}return $}function pD(D,u,F,E){let C=new URLSearchParams(F).toString();return Q3(D,`${u}?${C}`,{method:"GET"},E)}async function eu(D){let u=await pD(D,"auth.test",{});return{team:u.team??"",teamId:u.team_id??"",url:u.url??"",user:u.user??"",userId:u.user_id??""}}async function dF(D,u,F=20,E,C){let B={channel:u,limit:String(F)};if(E!==void 0)B.oldest=E;if(C!==void 0)B.cursor=C;return pD(D,"conversations.history",B)}function au(D){return D.toLowerCase().replace(/[-_\s]/g,"")}function O3(D){let u=D.match(/(?:app\.slack\.com\/client\/T[A-Za-z0-9]+|[A-Za-z0-9-]+\.slack\.com\/archives)\/([A-Za-z0-9]+)(?:\/p(\d{10})(\d{6}))?/);if(!u)return;let F=u[1],E=u[2]&&u[3]?`${u[2]}.${u[3]}`:void 0;return E?{channel:F,ts:E}:{channel:F}}function Y3(D){return O3(D)?.channel}async function e2(D,u,F){let E=Y3(u);if(E)return E;if(!u.startsWith("@")&&!u.startsWith("#")){if(/^[A-Za-z0-9]{9,}$/.test(u))return u;throw Error(`Target must start with # or @ (or be a Slack URL/ID), got: ${u}`)}let C=u.startsWith("@"),B=u.slice(1),$=au(B);if(C){let J="",O="";while(!0){let Q={limit:"200"};if(O)Q.cursor=O;let Y=await pD(D,"users.list",Q,F);for(let M of Y.members??[]){let H=au(M.name??""),_=au(M.real_name??""),S=au(M.profile?.display_name??"");if(H===$||_===$||S&&S===$){J=M.id??"";break}}if(J)break;if(O=Y.response_metadata?.next_cursor??"",!O)break}if(!J)throw Error(`User not found: ${u}`);let X="";while(!0){let Q={types:"im",limit:"200"};if(X)Q.cursor=X;let Y=await pD(D,"conversations.list",Q,F);for(let M of Y.channels??[])if(M.user===J)return String(M.id??"");if(X=Y.response_metadata?.next_cursor??"",!X)break}throw Error(`No existing DM with ${u} (${J}). Open it once in Slack first.`)}let z=B.toLowerCase(),Z="";while(!0){let J={limit:"200",types:"public_channel,private_channel",exclude_archived:"true"};if(Z)J.cursor=Z;let O=await pD(D,"conversations.list",J,F);for(let X of O.channels??[])if(String(X.name??"").toLowerCase()===z)return String(X.id??"");if(Z=O.response_metadata?.next_cursor??"",!Z)break}throw Error(`channel not found: ${u}`)}async function D8(D,u){try{let F=await pD(D,"users.info",{user:u}),E=F.user?.profile?.display_name,C=E&&E.length>0?E:F.user?.real_name??F.user?.name??u,B=F.user?.name??u;return[C,B]}catch{return[u,u]}}async function DF(D,u){try{let F=await pD(D,"users.info",{user:u}),E=F.user?.profile?.display_name;if(E&&E.length>0)return E;return F.user?.real_name??F.user?.name??u}catch{return u}}async function u8(D,u){return pD(D,"conversations.info",{channel:u})}import{readdirSync as F8,readFileSync as E8,existsSync as C8}from"node:fs";import{homedir as B8}from"node:os";import{join as Du}from"node:path";import{pbkdf2Sync as W3,createDecipheriv as M3}from"node:crypto";import{execSync as H3}from"node:child_process";function V3(){let D=B8();if(process.platform==="darwin")return Du(D,"Library","Application Support","Slack","Local Storage","leveldb");if(process.platform==="linux")return Du(D,".config","Slack","Local Storage","leveldb");if(process.platform==="win32"){let u=process.env.APPDATA??Du(D,"AppData","Roaming");return Du(u,"Slack","Local Storage","leveldb")}throw Error(`Unsupported platform: ${process.platform}`)}function q3(){let D=B8();if(process.platform==="darwin")return Du(D,"Library","Application Support","Slack","Cookies");return""}function U3(D,u){if(D.length<35||D.slice(0,3).toString()!=="v10")throw Error("Not a v10 encrypted cookie");let F=D.slice(19,35),E=D.slice(35),C=M3("aes-128-cbc",u,F);return C.setAutoPadding(!0),Buffer.concat([C.update(E),C.final()]).toString("utf8")}function _3(){if(process.platform!=="darwin")return;let D=q3();if(!C8(D))return;let u;try{u=H3('security find-generic-password -w -s "Slack Safe Storage" -a "Slack Key"',{encoding:"utf8",stdio:["ignore","pipe","ignore"]}).trimEnd()}catch{return}let F=W3(u,"saltysalt",1003,16,"sha1");try{let{default:E}=zu("bun:sqlite"),C=new E(D,{readonly:!0}),B=C.prepare("SELECT encrypted_value FROM cookies WHERE name='d' AND host_key LIKE '%slack%'").get();if(C.close(),!B)return;return U3(Buffer.from(B.encrypted_value),F)}catch{return}}async function $8(){let D=V3();if(!C8(D))throw Error(`Slack desktop app LevelDB not found at:
90
+ slack workspace set-token <name> <xoxp-token>`);throw Error(`Slack error on ${u}: ${z}`)}return $}async function H1(D,u,F,E){let C={};if(E)C.Cookie=`d=${E}`;let B=await fetch(`${E8()}/${u}`,{...F,headers:{...F.headers??{},Authorization:`Bearer ${D}`,...C}});if(B.status===429){let z=parseInt(B.headers.get("retry-after")??"60",10);throw new uu(isNaN(z)?60:z)}let $=await B.json();if($.ok!==!0){let z=$.error??"unknown";if(z==="ratelimited")throw new uu(60);if((z==="invalid_auth"||z==="not_authed")&&!D.startsWith("xoxc-"))throw Error(`The draft API requires a desktop app session token (xoxc-).
91
+ Import from Slack desktop: slack workspace import`);if((z==="invalid_auth"||z==="not_authed")&&!E)throw Error(`drafts.list also requires the xoxd session cookie.
92
+ Set it with: slack workspace set-cookie <workspace-name> <xoxd-value>
93
+ `+"Get xoxd from browser: DevTools → Application → Cookies → slack.com → d");throw Error(`Slack error on ${u}: ${z}`)}return $}function V1(D,u,F={},E){let C=new URLSearchParams({token:D,...F});return H1(D,u,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:C.toString()},E)}function pD(D,u,F,E){let C=new URLSearchParams(F).toString();return M1(D,`${u}?${C}`,{method:"GET"},E)}async function DF(D){let u=await pD(D,"auth.test",{});return{team:u.team??"",teamId:u.team_id??"",url:u.url??"",user:u.user??"",userId:u.user_id??""}}async function sF(D,u,F=20,E,C){let B={channel:u,limit:String(F)};if(E!==void 0)B.oldest=E;if(C!==void 0)B.cursor=C;return pD(D,"conversations.history",B)}function eu(D){return D.toLowerCase().replace(/[-_\s]/g,"")}function q1(D){let u=D.match(/(?:app\.slack\.com\/client\/T[A-Za-z0-9]+|[A-Za-z0-9-]+\.slack\.com\/archives)\/([A-Za-z0-9]+)(?:\/p(\d{10})(\d{6}))?/);if(!u)return;let F=u[1],E=u[2]&&u[3]?`${u[2]}.${u[3]}`:void 0,C=D.indexOf("?"),B=C>=0?new URLSearchParams(D.slice(C)):void 0,$=B?.get("thread_ts")??void 0,X={channel:B?.get("cid")??void 0??F};if(E)X.ts=E;if($)X.threadTs=$;return X}function U1(D){return q1(D)?.channel}async function C8(D,u,F){let E=U1(u);if(E)return E;if(!u.startsWith("@")&&!u.startsWith("#")){if(/^[A-Za-z0-9]{9,}$/.test(u))return u;throw Error(`Target must start with # or @ (or be a Slack URL/ID), got: ${u}`)}let C=u.startsWith("@"),B=u.slice(1),$=eu(B);if(C){let X="",O="";while(!0){let Q={limit:"200"};if(O)Q.cursor=O;let Y=await pD(D,"users.list",Q,F);for(let M of Y.members??[]){let H=eu(M.name??""),j=eu(M.real_name??""),A=eu(M.profile?.display_name??"");if(H===$||j===$||A&&A===$){X=M.id??"";break}}if(X)break;if(O=Y.response_metadata?.next_cursor??"",!O)break}if(!X)throw Error(`User not found: ${u}`);let J="";while(!0){let Q={types:"im",limit:"200"};if(J)Q.cursor=J;let Y=await pD(D,"conversations.list",Q,F);for(let M of Y.channels??[])if(M.user===X)return String(M.id??"");if(J=Y.response_metadata?.next_cursor??"",!J)break}throw Error(`No existing DM with ${u} (${X}). Open it once in Slack first.`)}let z=B.toLowerCase(),Z="";while(!0){let X={limit:"200",types:"public_channel,private_channel",exclude_archived:"true"};if(Z)X.cursor=Z;let O=await pD(D,"conversations.list",X,F);for(let J of O.channels??[])if(String(J.name??"").toLowerCase()===z)return String(J.id??"");if(Z=O.response_metadata?.next_cursor??"",!Z)break}throw Error(`channel not found: ${u}`)}async function uF(D,u){try{let F=await pD(D,"users.info",{user:u}),E=F.user?.profile?.display_name,C=E&&E.length>0?E:F.user?.real_name??F.user?.name??u,B=F.user?.name??u;return[C,B]}catch{return[u,u]}}async function FF(D,u){try{let F=await pD(D,"users.info",{user:u}),E=F.user?.profile?.display_name;if(E&&E.length>0)return E;return F.user?.real_name??F.user?.name??u}catch{return u}}async function B8(D,u){return pD(D,"conversations.info",{channel:u})}async function $8(D,u){let F=await V1(D,"client.boot",{},u),E=typeof F.url==="string"?F.url:void 0;if(!E){let B=Object.keys(F).join(", ");throw Error(`client.boot did not return a WebSocket URL. Keys: ${B}`)}let C=F.self&&typeof F.self==="object"&&!Array.isArray(F.self)?F.self:{};return{wsUrl:E,selfId:typeof C.id==="string"?C.id:""}}import{readdirSync as z8,readFileSync as G8,existsSync as Z8}from"node:fs";import{homedir as J8}from"node:os";import{join as Fu}from"node:path";import{pbkdf2Sync as j1,createDecipheriv as _1}from"node:crypto";import{execSync as K1}from"node:child_process";function N1(){let D=J8();if(process.platform==="darwin")return Fu(D,"Library","Application Support","Slack","Local Storage","leveldb");if(process.platform==="linux")return Fu(D,".config","Slack","Local Storage","leveldb");if(process.platform==="win32"){let u=process.env.APPDATA??Fu(D,"AppData","Roaming");return Fu(u,"Slack","Local Storage","leveldb")}throw Error(`Unsupported platform: ${process.platform}`)}function T1(){let D=J8();if(process.platform==="darwin")return Fu(D,"Library","Application Support","Slack","Cookies");return""}function A1(D,u){if(D.length<35||D.slice(0,3).toString()!=="v10")throw Error("Not a v10 encrypted cookie");let F=D.slice(19,35),E=D.slice(35),C=_1("aes-128-cbc",u,F);return C.setAutoPadding(!0),Buffer.concat([C.update(E),C.final()]).toString("utf8")}function L1(){if(process.platform!=="darwin")return;let D=T1();if(!Z8(D))return;let u;try{u=K1('security find-generic-password -w -s "Slack Safe Storage" -a "Slack Key"',{encoding:"utf8",stdio:["ignore","pipe","ignore"]}).trimEnd()}catch{return}let F=j1(u,"saltysalt",1003,16,"sha1");try{let{default:E}=Gu("bun:sqlite"),C=new E(D,{readonly:!0}),B=C.prepare("SELECT encrypted_value FROM cookies WHERE name='d' AND host_key LIKE '%slack%'").get();if(C.close(),!B)return;return A1(Buffer.from(B.encrypted_value),F)}catch{return}}async function X8(){let D=N1();if(!Z8(D))throw Error(`Slack desktop app LevelDB not found at:
91
94
  ${D}
92
- Is Slack installed and opened at least once?`);let u=F8(D).filter((z)=>z.endsWith(".ldb")||z.endsWith(".log"));if(u.length===0)throw Error(`No LevelDB data files found in ${D}`);let F=new Map;for(let z of u){let Z;try{Z=E8(Du(D,z),"latin1")}catch{continue}if(z.endsWith(".log"))for(let J of Z.matchAll(/"token":"(xoxc-[^"]+)"/g)){let O=J[1],X=O.split("-")[1]??"";if(!X||O.length<40)continue;let Q=Math.max(0,J.index-2000),Y=Math.min(Z.length,J.index+2000),M=Z.slice(Q,Y),H=M.match(/"url":"(https:\/\/[a-z0-9-]+\.slack\.com\/)"/),_=M.match(/"(?:team_name|name)":"([^"]{2,60})"/),S=F.get(X);if(!S||O.length>S.token.length){let f={token:O,teamId:X},d=H?.[1]??S?.url,x=_?.[1]??S?.teamName;if(d)f.url=d;if(x)f.teamName=x;F.set(X,f)}}else for(let J of Z.matchAll(/xoxc-(\d+)-(\d+)-(\d+)/g)){let O=J[1];if(F.has(O))continue;let X=J.index+J[0].length,Q=Math.min(X+10,Z.length);while(X<Q&&(Z.charCodeAt(X)<48||Z.charCodeAt(X)>57))X++;let Y="";while(X<Z.length&&Z.charCodeAt(X)>=48&&Z.charCodeAt(X)<=57)Y+=Z[X++];if(Z[X]!=="-")continue;X++;let M="";while(X<Z.length){let _=Z.charCodeAt(X);if(_>=48&&_<=57||_>=97&&_<=102)M+=Z[X++];else break}if(M.length<20)continue;let H=`${J[0]}${Y}-${M}`;F.set(O,{token:H,teamId:O})}}let C=F8(D).filter((z)=>z.endsWith(".ldb")||z.endsWith(".log")).map((z)=>{try{return E8(Du(D,z),"latin1").replace(/[^\x20-\x7e]/g," ")}catch{return""}}).join(" ");for(let z of F.values()){if(z.teamName)continue;let Z=C.indexOf(z.teamId);if(Z!==-1){let J=Math.max(0,Z-500),O=Math.min(C.length,Z+500),Q=C.slice(J,O).match(/"(?:team_name|name)":"([^"]{2,60})"/);if(Q?.[1]){z.teamName=Q[1];continue}}if(!z.teamName&&z.url){let J=z.url.match(/https:\/\/([a-z0-9-]+)\.slack\.com\//)?.[1];if(J){let O=C.indexOf(J);if(O!==-1){let X=Math.max(0,O-500),Q=Math.min(C.length,O+500),M=C.slice(X,Q).match(/"(?:team_name|name)":"([^"]{2,60})"/);if(M?.[1]){z.teamName=M[1];continue}}z.teamName=J.split("-").map((X)=>X.charAt(0).toUpperCase()+X.slice(1)).join(" ")}}}let B=_3(),$=[...F.values()];if(B)for(let z of $)z.cookie=B;return $}var K3=["search:read","channels:history","groups:history","im:history","mpim:history","channels:read","groups:read","im:read","mpim:read","users:read","chat:write","files:write"],T3=["channels:history","groups:history","im:history","mpim:history","channels:read","groups:read","im:read","mpim:read","users:read","chat:write","files:write"];function gF(D){return D.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function N3(){return JSON.stringify({display_information:{name:"slack-term"},oauth_config:{scopes:{user:K3}},settings:{org_deploy_enabled:!1,socket_mode_enabled:!1,token_rotation_enabled:!1}},null,2)}function R3(){return JSON.stringify({display_information:{name:"slack-term"},features:{bot_user:{display_name:"slack-term",always_online:!1}},oauth_config:{scopes:{bot:T3}},settings:{org_deploy_enabled:!1,socket_mode_enabled:!1,token_rotation_enabled:!1}},null,2)}async function Nu(D,u){return(await D.question(u)).trim()}async function uF(D,u,F){console.error("Verifying token...");let E=await eu(u),C=gF(E.team),B;if(F)B=F;else if(D)B=await Nu(D,`Workspace name [${C}]: `)||C;else B=C;if(kF(B,{token:u,...E}),console.log(`Saved workspace "${B}": ${E.team} (${E.user})`),process.env.SLACK_MCP_XOXP_TOKEN)console.log(""),console.log("Warning: SLACK_MCP_XOXP_TOKEN is set in your environment - it conflicts with profiles."),console.log(" Unset it so your new profile is used:"),console.log(" unset SLACK_MCP_XOXP_TOKEN"),console.log(" Also remove it from your shell config (~/.zshrc, ~/.bashrc, etc.)");else console.log(` Run: slack auth use -g ${B}`);return B}async function A3(){console.error("Scanning Slack desktop app...");let D=await $8();if(D.length===0)console.error("No sessions found. Make sure Slack is installed and you have signed in at least once."),process.exit(1);for(let u of D){let F=u.teamName??u.teamId,E=gF(F);kF(E,{token:u.token,team:F,teamId:u.teamId,url:u.url??"",user:"",...u.cookie?{cookie:u.cookie}:{}}),console.log(`Added workspace "${E}": ${F}${u.cookie?" + xoxd cookie":""}`)}if(console.log(""),D.length===1){let u=gF(D[0].teamName??D[0].teamId);console.log(`Run: slack auth use -g ${u}`)}else console.log("Run: slack auth ls then: slack auth use -g <name>");console.log(""),console.log("Note: desktop app tokens (xoxc-) are internal Slack tokens."),console.log("If API calls fail, replace with an xoxp- user token by re-running: slack auth login")}async function L3(D){console.log("Which token type does your app use?"),console.log(""),console.log(" 1) User token (xoxp-) -full access including search [recommended]"),console.log(" 2) Bot token (xoxb-) -search and news unavailable"),console.log("");let F=await Nu(D,"Choice [1/2]: ")==="2"?"bot":"user",E=F==="user"?"xoxp-":"xoxb-",C=F==="user"?"User OAuth Token":"Bot User OAuth Token";console.log(""),console.log("Find your token here:"),console.log(" https://api.slack.com/apps"),console.log(" -> Select your app -> OAuth & Permissions"),console.log(` -> Copy the "${C}" (starts with ${E})`),console.log("");let B=await Nu(D,"Paste your token: ");if(!B)console.error("No token provided."),process.exit(1);if(!B.startsWith(E))console.error(`Expected a ${E} token, got: ${B.slice(0,10)}...`),process.exit(1);await uF(D,B)}async function z8(D,u){let F=u==="user"?N3():R3(),E=u==="user"?"User OAuth Token (xoxp-...)":"Bot User OAuth Token (xoxb-...)",C=u==="user"?"xoxp-":"xoxb-";if(u==="bot")console.log("Note: bot tokens cannot use search:read (user-only scope)."),console.log(" The news and search commands will not work with a bot token."),console.log("");console.log("Step 1 -Create your Slack app:"),console.log(" Open: https://api.slack.com/apps"),console.log(' Click "Create New App" -> "From a manifest" -> select your workspace'),console.log(" Paste this manifest (JSON tab):"),console.log(""),console.log("-------------------------------------------------------------"),console.log(F),console.log("-------------------------------------------------------------"),console.log(""),console.log('Step 2 -Install: "Install App" -> "Install to Workspace" -> Authorize'),console.log(""),console.log("Step 3 -Copy your token:"),console.log(` OAuth & Permissions -> ${E}`),console.log("");let B=await Nu(D,"Paste your token: ");if(!B)console.error("No token provided."),process.exit(1);if(!B.startsWith(C))console.error(`Expected a ${C} token, got: ${B.slice(0,10)}...`),process.exit(1);await uF(D,B)}async function FF(D={}){let u=a2();if(u.length>0){console.log("Currently logged in:");for(let{name:E,profile:C,current:B}of u)console.log(` ${B?"*":" "} ${E} ${C.team} (${C.user||"unknown"})`);console.log(""),console.log("Adding another workspace:"),console.log("")}if(D.token){await uF(null,D.token,D.name);return}if(!process.stdin.isTTY){let E=[];for await(let B of process.stdin)E.push(B);let C=Buffer.concat(E).toString("utf8").trim();if(!C)console.error("No token provided on stdin."),process.exit(1);await uF(null,C,D.name);return}console.log("How would you like to authenticate with Slack?"),console.log(""),console.log(" 1) Slack desktop app - import session token"),console.log(" Reads the xoxc- token directly from the installed app."),console.log(" Token: all platforms | xoxd cookie: macOS only"),console.log(""),console.log(" 2) Connect existing Slack app [recommended if you have one]"),console.log(" Paste a token from an app you already created."),console.log(""),console.log(" 3) Create new Slack app - user token (xoxp-)"),console.log(" Guided setup with manifest. Full access including search."),console.log(""),console.log(" 4) Create new Slack app - bot token (xoxb-)"),console.log(" Bot is invited to channels. Search and news unavailable."),console.log("");let F=j3({input:process.stdin,output:process.stdout});try{let E=await Nu(F,"Choice [1/2/3/4]: ");if(console.log(""),E==="1")await A3();else if(E==="2")await L3(F);else if(E==="3")await z8(F,"user");else if(E==="4")await z8(F,"bot");else console.error(`Invalid choice: "${E}". Enter 1, 2, 3, or 4.`),process.exit(1)}finally{F.close()}}async function G8(D,u,F){let E=u,C=[],B=E,$=0;while(!0){let z=B.indexOf("<@U",$);if(z===-1)break;let Z=B.slice(z+2),J=Z.search(/[>|]/),O=J===-1?Z:Z.slice(0,J);if(O.length>=9)C.push(O);$=z+1}for(let z of C){if(!F.has(z))F.set(z,await DF(D,z));let Z=F.get(z)??z;E=E.replaceAll(`<@${z}>`,`@${Z}`),E=E.replace(new RegExp(`<@${z}\\|[^>]*>`,"g"),`@${Z}`)}return E}function Z8(D){return D.replace(/<!date\^(\d+)\^[^|>]*(?:\|([^>]*))?>/g,(u,F,E)=>{let C=Number(F);if(!Number.isFinite(C))return E??"date";let B=new Date(C*1000);if(Number.isNaN(B.getTime()))return E??"date";let $=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Z=$[B.getUTCDay()]??"",J=z[B.getUTCMonth()]??"";return`${Z}, ${J} ${String(B.getUTCDate()).padStart(2,"0")}, ${B.getUTCFullYear()}`})}function S3(D){let u=D.match(/^(\d+(?:\.\d+)?)(s|m|h|d)$/);if(!u)throw Error(`Invalid --since format: "${D}" (expected e.g. 10m, 2h, 1d)`);let F=parseFloat(u[1]);switch(u[2]){case"s":return F;case"m":return F*60;case"h":return F*3600;case"d":return F*86400}}var uu={sleep:(D)=>new Promise((u)=>setTimeout(u,D)),now:()=>Date.now()};function Fu(D){return D&&typeof D==="object"&&!Array.isArray(D)?D:{}}function X8(D){return Array.isArray(D)?D:[]}function P3(D){let[u,F="000000"]=D.split("."),E=new Date(Number(u)*1000),C=E.getUTCFullYear(),B=String(E.getUTCMonth()+1).padStart(2,"0"),$=String(E.getUTCDate()).padStart(2,"0"),z=String(E.getUTCHours()).padStart(2,"0"),Z=String(E.getUTCMinutes()).padStart(2,"0"),J=String(E.getUTCSeconds()).padStart(2,"0"),O=F.padEnd(6,"0").slice(0,6);return`${C}-${B}-${$}T${z}:${Z}:${J}.${O}`}async function w3(D,u,F,E){let C=typeof u.ts==="string"?u.ts:"0.000000",B=P3(C),$="?";if(typeof u.user==="string"){let Q=u.user,Y="@"+Q;if(!F.has(Y)){let[,M]=await D8(D,Q);F.set(Y,M)}$=F.get(Y)??Q}else if(typeof u.username==="string")$=u.username;let z=typeof u.text==="string"?u.text:"",J=Z8(await G8(D,z,F)).split(`
93
- `),O=J[0]+(J.length>1?`
94
- `+J.slice(1).map((Q)=>` ${Q}`).join(`
95
- `):""),X=E?`${E} @${$}`:`@${$}`;return`${B} ${X}: ${O}`}async function I3(D,u,F,E,C,B,$){let z=Fu(await dF(D,u,20,$?void 0:F||void 0,$)),Z=X8(z.messages).map(Fu).reverse(),J=Fu(z.response_metadata),O=z.has_more===!0&&typeof J.next_cursor==="string"?J.next_cursor:void 0,X=[],Q=F;for(let Y of Z){let M=typeof Y.ts==="string"?Y.ts:"";if(!M||C.has(M))continue;let H=typeof Y.subtype==="string"?Y.subtype:"";if(H==="message_changed"||H==="message_deleted")continue;if(E.thread){if((typeof Y.thread_ts==="string"?Y.thread_ts:M)!==E.thread&&M!==E.thread)continue}if(E.me&&E.myUserId){if(!(typeof Y.text==="string"?Y.text:"").includes(`<@${E.myUserId}>`))continue}if(C.add(M),C.size>1000){let _=C.values().next().value;if(_!==void 0)C.delete(_)}X.push(await w3(D,Y,B)),Q=M}return{newCursor:Q,lines:X,hasMore:z.has_more===!0,nextPageCursor:O}}async function J8(D,u,F={},E){if(F.me&&!u)console.error(`slack tail --me requires a <target> channel.
95
+ Is Slack installed and opened at least once?`);let u=z8(D).filter((z)=>z.endsWith(".ldb")||z.endsWith(".log"));if(u.length===0)throw Error(`No LevelDB data files found in ${D}`);let F=new Map;for(let z of u){let Z;try{Z=G8(Fu(D,z),"latin1")}catch{continue}if(z.endsWith(".log"))for(let X of Z.matchAll(/"token":"(xoxc-[^"]+)"/g)){let O=X[1],J=O.split("-")[1]??"";if(!J||O.length<40)continue;let Q=Math.max(0,X.index-2000),Y=Math.min(Z.length,X.index+2000),M=Z.slice(Q,Y),H=M.match(/"url":"(https:\/\/[a-z0-9-]+\.slack\.com\/)"/),j=M.match(/"(?:team_name|name)":"([^"]{2,60})"/),A=F.get(J);if(!A||O.length>A.token.length){let x={token:O,teamId:J},n=H?.[1]??A?.url,f=j?.[1]??A?.teamName;if(n)x.url=n;if(f)x.teamName=f;F.set(J,x)}}else for(let X of Z.matchAll(/xoxc-(\d+)-(\d+)-(\d+)/g)){let O=X[1];if(F.has(O))continue;let J=X.index+X[0].length,Q=Math.min(J+10,Z.length);while(J<Q&&(Z.charCodeAt(J)<48||Z.charCodeAt(J)>57))J++;let Y="";while(J<Z.length&&Z.charCodeAt(J)>=48&&Z.charCodeAt(J)<=57)Y+=Z[J++];if(Z[J]!=="-")continue;J++;let M="";while(J<Z.length){let j=Z.charCodeAt(J);if(j>=48&&j<=57||j>=97&&j<=102)M+=Z[J++];else break}if(M.length<20)continue;let H=`${X[0]}${Y}-${M}`;F.set(O,{token:H,teamId:O})}}let C=z8(D).filter((z)=>z.endsWith(".ldb")||z.endsWith(".log")).map((z)=>{try{return G8(Fu(D,z),"latin1").replace(/[^\x20-\x7e]/g," ")}catch{return""}}).join(" ");for(let z of F.values()){if(z.teamName)continue;let Z=C.indexOf(z.teamId);if(Z!==-1){let X=Math.max(0,Z-500),O=Math.min(C.length,Z+500),Q=C.slice(X,O).match(/"(?:team_name|name)":"([^"]{2,60})"/);if(Q?.[1]){z.teamName=Q[1];continue}}if(!z.teamName&&z.url){let X=z.url.match(/https:\/\/([a-z0-9-]+)\.slack\.com\//)?.[1];if(X){let O=C.indexOf(X);if(O!==-1){let J=Math.max(0,O-500),Q=Math.min(C.length,O+500),M=C.slice(J,Q).match(/"(?:team_name|name)":"([^"]{2,60})"/);if(M?.[1]){z.teamName=M[1];continue}}z.teamName=X.split("-").map((J)=>J.charAt(0).toUpperCase()+J.slice(1)).join(" ")}}}let B=L1(),$=[...F.values()];if(B)for(let z of $)z.cookie=B;return $}var S1=["search:read","channels:history","groups:history","im:history","mpim:history","channels:read","groups:read","im:read","mpim:read","users:read","chat:write","files:write"],P1=["channels:history","groups:history","im:history","mpim:history","channels:read","groups:read","im:read","mpim:read","users:read","chat:write","files:write"];function rF(D){return D.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function w1(){return JSON.stringify({display_information:{name:"slack-term"},oauth_config:{scopes:{user:S1}},settings:{org_deploy_enabled:!1,socket_mode_enabled:!1,token_rotation_enabled:!1}},null,2)}function I1(){return JSON.stringify({display_information:{name:"slack-term"},features:{bot_user:{display_name:"slack-term",always_online:!1}},oauth_config:{scopes:{bot:P1}},settings:{org_deploy_enabled:!1,socket_mode_enabled:!1,token_rotation_enabled:!1}},null,2)}async function Tu(D,u){return(await D.question(u)).trim()}async function EF(D,u,F){console.error("Verifying token...");let E=await DF(u),C=rF(E.team),B;if(F)B=F;else if(D)B=await Tu(D,`Workspace name [${C}]: `)||C;else B=C;if(oF(B,{token:u,...E}),console.log(`Saved workspace "${B}": ${E.team} (${E.user})`),process.env.SLACK_MCP_XOXP_TOKEN)console.log(""),console.log("Warning: SLACK_MCP_XOXP_TOKEN is set in your environment - it conflicts with profiles."),console.log(" Unset it so your new profile is used:"),console.log(" unset SLACK_MCP_XOXP_TOKEN"),console.log(" Also remove it from your shell config (~/.zshrc, ~/.bashrc, etc.)");else console.log(` Run: slack auth use -g ${B}`);return B}async function x1(){console.error("Scanning Slack desktop app...");let D=await X8();if(D.length===0)console.error("No sessions found. Make sure Slack is installed and you have signed in at least once."),process.exit(1);for(let u of D){let F=u.teamName??u.teamId,E=rF(F);oF(E,{token:u.token,team:F,teamId:u.teamId,url:u.url??"",user:"",...u.cookie?{cookie:u.cookie}:{}}),console.log(`Added workspace "${E}": ${F}${u.cookie?" + xoxd cookie":""}`)}if(console.log(""),D.length===1){let u=rF(D[0].teamName??D[0].teamId);console.log(`Run: slack auth use -g ${u}`)}else console.log("Run: slack auth ls then: slack auth use -g <name>");console.log(""),console.log("Note: desktop app tokens (xoxc-) are internal Slack tokens."),console.log("If API calls fail, replace with an xoxp- user token by re-running: slack auth login")}async function f1(D){console.log("Which token type does your app use?"),console.log(""),console.log(" 1) User token (xoxp-) -full access including search [recommended]"),console.log(" 2) Bot token (xoxb-) -search and news unavailable"),console.log("");let F=await Tu(D,"Choice [1/2]: ")==="2"?"bot":"user",E=F==="user"?"xoxp-":"xoxb-",C=F==="user"?"User OAuth Token":"Bot User OAuth Token";console.log(""),console.log("Find your token here:"),console.log(" https://api.slack.com/apps"),console.log(" -> Select your app -> OAuth & Permissions"),console.log(` -> Copy the "${C}" (starts with ${E})`),console.log("");let B=await Tu(D,"Paste your token: ");if(!B)console.error("No token provided."),process.exit(1);if(!B.startsWith(E))console.error(`Expected a ${E} token, got: ${B.slice(0,10)}...`),process.exit(1);await EF(D,B)}async function Q8(D,u){let F=u==="user"?w1():I1(),E=u==="user"?"User OAuth Token (xoxp-...)":"Bot User OAuth Token (xoxb-...)",C=u==="user"?"xoxp-":"xoxb-";if(u==="bot")console.log("Note: bot tokens cannot use search:read (user-only scope)."),console.log(" The news and search commands will not work with a bot token."),console.log("");console.log("Step 1 -Create your Slack app:"),console.log(" Open: https://api.slack.com/apps"),console.log(' Click "Create New App" -> "From a manifest" -> select your workspace'),console.log(" Paste this manifest (JSON tab):"),console.log(""),console.log("-------------------------------------------------------------"),console.log(F),console.log("-------------------------------------------------------------"),console.log(""),console.log('Step 2 -Install: "Install App" -> "Install to Workspace" -> Authorize'),console.log(""),console.log("Step 3 -Copy your token:"),console.log(` OAuth & Permissions -> ${E}`),console.log("");let B=await Tu(D,"Paste your token: ");if(!B)console.error("No token provided."),process.exit(1);if(!B.startsWith(C))console.error(`Expected a ${C} token, got: ${B.slice(0,10)}...`),process.exit(1);await EF(D,B)}async function CF(D={}){let u=F8();if(u.length>0){console.log("Currently logged in:");for(let{name:E,profile:C,current:B}of u)console.log(` ${B?"*":" "} ${E} ${C.team} (${C.user||"unknown"})`);console.log(""),console.log("Adding another workspace:"),console.log("")}if(D.token){await EF(null,D.token,D.name);return}if(!process.stdin.isTTY){let E=[];for await(let B of process.stdin)E.push(B);let C=Buffer.concat(E).toString("utf8").trim();if(!C)console.error("No token provided on stdin."),process.exit(1);await EF(null,C,D.name);return}console.log("How would you like to authenticate with Slack?"),console.log(""),console.log(" 1) Slack desktop app - import session token"),console.log(" Reads the xoxc- token directly from the installed app."),console.log(" Token: all platforms | xoxd cookie: macOS only"),console.log(""),console.log(" 2) Connect existing Slack app [recommended if you have one]"),console.log(" Paste a token from an app you already created."),console.log(""),console.log(" 3) Create new Slack app - user token (xoxp-)"),console.log(" Guided setup with manifest. Full access including search."),console.log(""),console.log(" 4) Create new Slack app - bot token (xoxb-)"),console.log(" Bot is invited to channels. Search and news unavailable."),console.log("");let F=R1({input:process.stdin,output:process.stdout});try{let E=await Tu(F,"Choice [1/2/3/4]: ");if(console.log(""),E==="1")await x1();else if(E==="2")await f1(F);else if(E==="3")await Q8(F,"user");else if(E==="4")await Q8(F,"bot");else console.error(`Invalid choice: "${E}". Enter 1, 2, 3, or 4.`),process.exit(1)}finally{F.close()}}async function BF(D,u,F){let E=u,C=[],B=E,$=0;while(!0){let z=B.indexOf("<@U",$);if(z===-1)break;let Z=B.slice(z+2),X=Z.search(/[>|]/),O=X===-1?Z:Z.slice(0,X);if(O.length>=9)C.push(O);$=z+1}for(let z of C){if(!F.has(z))F.set(z,await FF(D,z));let Z=F.get(z)??z;E=E.replaceAll(`<@${z}>`,`@${Z}`),E=E.replace(new RegExp(`<@${z}\\|[^>]*>`,"g"),`@${Z}`)}return E}function $F(D){return D.replace(/<!date\^(\d+)\^[^|>]*(?:\|([^>]*))?>/g,(u,F,E)=>{let C=Number(F);if(!Number.isFinite(C))return E??"date";let B=new Date(C*1000);if(Number.isNaN(B.getTime()))return E??"date";let $=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Z=$[B.getUTCDay()]??"",X=z[B.getUTCMonth()]??"";return`${Z}, ${X} ${String(B.getUTCDate()).padStart(2,"0")}, ${B.getUTCFullYear()}`})}function b1(D){let[u,F="000000"]=D.split("."),E=new Date(Number(u)*1000),C=E.getUTCFullYear(),B=String(E.getUTCMonth()+1).padStart(2,"0"),$=String(E.getUTCDate()).padStart(2,"0"),z=String(E.getUTCHours()).padStart(2,"0"),Z=String(E.getUTCMinutes()).padStart(2,"0"),X=String(E.getUTCSeconds()).padStart(2,"0"),O=F.padEnd(6,"0").slice(0,6);return`${C}-${B}-${$}T${z}:${Z}:${X}.${O}`}async function h1(D,u,F){let E=typeof u.ts==="string"?u.ts:"0.000000",C=b1(E),B="?";if(typeof u.user==="string"){let O=u.user,J="@"+O;if(!F.has(J)){let[,Q]=await uF(D,O);F.set(J,Q)}B=F.get(J)??O}else if(typeof u.username==="string")B=u.username;let $=typeof u.text==="string"?u.text:"",Z=$F(await BF(D,$,F)).split(`
96
+ `),X=Z[0]+(Z.length>1?`
97
+ `+Z.slice(1).map((O)=>` ${O}`).join(`
98
+ `):"");return`${C} @${B}: ${X}`}async function v1(D,u,F,E,C,B,$,z){if(z?.aborted)return;return new Promise((Z)=>{let X=new D(F);z?.addEventListener("abort",()=>{X.close(),Z()},{once:!0}),X.addEventListener("open",()=>{process.stderr.write(`Connected via RTM (experimental).
99
+ `)}),X.addEventListener("close",()=>Z()),X.addEventListener("error",()=>Z()),X.addEventListener("message",(O)=>{(async()=>{try{let J;try{J=JSON.parse(String(O.data))}catch{return}let Q=typeof J.type==="string"?J.type:"";if(Q==="ping"){X.send(JSON.stringify({type:"pong",reply_to:J.id??0}));return}if(Q!=="message")return;if((typeof J.channel==="string"?J.channel:"")!==E)return;let M=typeof J.ts==="string"?J.ts:"";if(!M||B.has(M))return;let H=typeof J.subtype==="string"?J.subtype:"";if(H==="message_changed"||H==="message_deleted")return;if(C.thread){if((typeof J.thread_ts==="string"?J.thread_ts:M)!==C.thread&&M!==C.thread)return}if(C.me&&C.myUserId){if(!(typeof J.text==="string"?J.text:"").includes(`<@${C.myUserId}>`))return}if(B.add(M),B.size>1000){let A=B.values().next().value;if(A!==void 0)B.delete(A)}let j=await h1(u,J,$);process.stdout.write(j+`
100
+ `)}catch(J){process.stderr.write(`RTM message error: ${J instanceof Error?J.message:String(J)}
101
+ `)}})()})})}var O8=3,p1=2000,aF={sleep:(D)=>new Promise((u)=>setTimeout(u,D)),clientBoot:$8,getWebSocket:()=>{let D=globalThis.WebSocket;return typeof D==="function"?D:void 0}};async function Y8(D,u,F,E,C,B,$){let z=aF.getWebSocket();if(!z)return;for(let Z=0;Z<O8;Z++){if($?.aborted)return;try{let{wsUrl:X}=await aF.clientBoot(D,u);await v1(z,D,X,F,E,C,B,$)}catch{}if($?.aborted)return;if(Z<O8-1)await aF.sleep(p1)}}function m1(D){let u=D.match(/^(\d+(?:\.\d+)?)(s|m|h|d)$/);if(!u)throw Error(`Invalid --since format: "${D}" (expected e.g. 10m, 2h, 1d)`);let F=parseFloat(u[1]);switch(u[2]){case"s":return F;case"m":return F*60;case"h":return F*3600;case"d":return F*86400}}var mD={sleep:(D)=>new Promise((u)=>setTimeout(u,D)),now:()=>Date.now(),tailRTM:Y8};function Eu(D){return D&&typeof D==="object"&&!Array.isArray(D)?D:{}}function W8(D){return Array.isArray(D)?D:[]}function c1(D){let[u,F="000000"]=D.split("."),E=new Date(Number(u)*1000),C=E.getUTCFullYear(),B=String(E.getUTCMonth()+1).padStart(2,"0"),$=String(E.getUTCDate()).padStart(2,"0"),z=String(E.getUTCHours()).padStart(2,"0"),Z=String(E.getUTCMinutes()).padStart(2,"0"),X=String(E.getUTCSeconds()).padStart(2,"0"),O=F.padEnd(6,"0").slice(0,6);return`${C}-${B}-${$}T${z}:${Z}:${X}.${O}`}async function y1(D,u,F,E){let C=typeof u.ts==="string"?u.ts:"0.000000",B=c1(C),$="?";if(typeof u.user==="string"){let Q=u.user,Y="@"+Q;if(!F.has(Y)){let[,M]=await uF(D,Q);F.set(Y,M)}$=F.get(Y)??Q}else if(typeof u.username==="string")$=u.username;let z=typeof u.text==="string"?u.text:"",X=$F(await BF(D,z,F)).split(`
102
+ `),O=X[0]+(X.length>1?`
103
+ `+X.slice(1).map((Q)=>` ${Q}`).join(`
104
+ `):""),J=E?`${E} @${$}`:`@${$}`;return`${B} ${J}: ${O}`}async function i1(D,u,F,E,C,B,$){let z=Eu(await sF(D,u,20,$?void 0:F||void 0,$)),Z=W8(z.messages).map(Eu).reverse(),X=Eu(z.response_metadata),O=z.has_more===!0&&typeof X.next_cursor==="string"?X.next_cursor:void 0,J=[],Q=F;for(let Y of Z){let M=typeof Y.ts==="string"?Y.ts:"";if(!M||C.has(M))continue;let H=typeof Y.subtype==="string"?Y.subtype:"";if(H==="message_changed"||H==="message_deleted")continue;if(E.thread){if((typeof Y.thread_ts==="string"?Y.thread_ts:M)!==E.thread&&M!==E.thread)continue}if(E.me&&E.myUserId){if(!(typeof Y.text==="string"?Y.text:"").includes(`<@${E.myUserId}>`))continue}if(C.add(M),C.size>1000){let j=C.values().next().value;if(j!==void 0)C.delete(j)}J.push(await y1(D,Y,B)),Q=M}return{newCursor:Q,lines:J,hasMore:z.has_more===!0,nextPageCursor:O}}async function M8(D,u,F={},E){if(F.me&&!u)console.error(`slack tail --me requires a <target> channel.
96
105
  Cross-channel mention streaming is not yet supported.
97
- Use: slack tail "#channel" --me`),process.exit(1);if(!u)console.error("Usage: slack tail <#channel|@user>\n Run `slack tail --help` for details."),process.exit(1);let C=await e2(D,u),B=F.interval??60000,$=new Map,z=new Set;try{let Y=Fu(await u8(D,C));if(Fu(Y.channel).is_archived===!0)console.error("Warning: this channel is archived — no new messages will arrive.")}catch(Y){let M=Y instanceof Error?Y.message:String(Y);if(M.includes("not_in_channel"))console.error("Error: you are not a member of that channel. Join it in Slack first, then retry."),process.exit(1);if(M.includes("missing_scope"))console.error("Error: token lacks the required history scope. Check your token's channels:history (or groups:history) permission."),process.exit(1);if(M.includes("channel_not_found"))console.error("Error: channel not found — it may be a private channel inaccessible with your token."),process.exit(1);console.error(`Warning: preflight check failed: ${M}`)}let Z="";if(F.since){let Y=S3(F.since);Z=(uu.now()/1000-Y).toFixed(6)}else{let Y=Fu(await dF(D,C,1)),M=X8(Y.messages).map(Fu);if(M.length>0&&typeof M[0]?.ts==="string")Z=M[0].ts,z.add(Z);else Z=(uu.now()/1000).toFixed(6)}let J;if(F.me)J=(await eu(D)).userId||void 0;let O={...F.thread!==void 0?{thread:F.thread}:{},...F.me!==void 0?{me:F.me}:{},...J!==void 0?{myUserId:J}:{}},X=!0,Q=uu.now();while(!E?.aborted){try{let M=uu.now()-Q,H=B>0&&M>B*5,_,S=!0;do{let{newCursor:f,lines:d,nextPageCursor:x}=await I3(D,C,Z,O,z,$,_);if(Z=f,X&&S&&F.since&&d.length===0)process.stdout.write(`(no messages in the last ${F.since} — watching for new)
98
- `);S=!1;for(let i of d)process.stdout.write(i+`
99
- `);_=H?x:void 0}while(_);X=!1}catch(Y){if(Y instanceof Tu){console.error(`Warning: Slack rate limit hit — backing off for ${Y.retryAfter}s`),await uu.sleep(Y.retryAfter*1000);continue}throw Y}Q=uu.now(),await uu.sleep(B)}}class Ru extends Error{retryAfter;constructor(D){super(`Slack rate limited — retry after ${D}s`);this.name="RateLimitError",this.retryAfter=D}}function Q8(){return(process.env.SLACK_API_BASE??"https://slack.com/api").replace(/\/$/,"")}async function O8(D,u,F,E){let C={};if(E)C.Cookie=`d=${E}`;let B=await fetch(`${Q8()}/${u}`,{...F,headers:{...F.headers??{},Authorization:`Bearer ${D}`,...C}});if(B.status===429){let z=parseInt(B.headers.get("retry-after")??"60",10);throw new Ru(isNaN(z)?60:z)}let $=await B.json();if($.ok!==!0){let z=$.error??"unknown";if(z==="ratelimited")throw new Ru(60);if(z==="invalid_auth"&&D.startsWith("xoxc-")&&!E)throw Error(`Desktop app token (xoxc-) is not accepted by the public Slack API.
106
+ Use: slack tail "#channel" --me`),process.exit(1);if(!u)console.error("Usage: slack tail <#channel|@user>\n Run `slack tail --help` for details."),process.exit(1);let C=await C8(D,u),B=F.interval??60000,$=new Map,z=new Set;try{let Y=Eu(await B8(D,C));if(Eu(Y.channel).is_archived===!0)console.error("Warning: this channel is archived — no new messages will arrive.")}catch(Y){let M=Y instanceof Error?Y.message:String(Y);if(M.includes("not_in_channel"))console.error("Error: you are not a member of that channel. Join it in Slack first, then retry."),process.exit(1);if(M.includes("missing_scope"))console.error("Error: token lacks the required history scope. Check your token's channels:history (or groups:history) permission."),process.exit(1);if(M.includes("channel_not_found"))console.error("Error: channel not found — it may be a private channel inaccessible with your token."),process.exit(1);console.error(`Warning: preflight check failed: ${M}`)}let Z="";if(F.since){let Y=m1(F.since);Z=(mD.now()/1000-Y).toFixed(6)}else{let Y=Eu(await sF(D,C,1)),M=W8(Y.messages).map(Eu);if(M.length>0&&typeof M[0]?.ts==="string")Z=M[0].ts,z.add(Z);else Z=(mD.now()/1000).toFixed(6)}let X;if(F.me)X=(await DF(D)).userId||void 0;let O={...F.thread!==void 0?{thread:F.thread}:{},...F.me!==void 0?{me:F.me}:{},...X!==void 0?{myUserId:X}:{}};if(D.startsWith("xoxc-")&&F.cookie!==void 0&&F.noRtm!==!0&&F.since===void 0){if(await mD.tailRTM(D,F.cookie,C,O,z,$,E),E?.aborted)return;console.error("RTM unavailable — switching to polling.")}let J=!0,Q=mD.now();while(!E?.aborted){try{let M=mD.now()-Q,H=B>0&&M>B*5,j,A=!0;do{let{newCursor:x,lines:n,nextPageCursor:f}=await i1(D,C,Z,O,z,$,j);if(Z=x,J&&A&&F.since&&n.length===0)process.stdout.write(`(no messages in the last ${F.since} — watching for new)
107
+ `);A=!1;for(let i of n)process.stdout.write(i+`
108
+ `);j=H?f:void 0}while(j);J=!1}catch(Y){if(Y instanceof uu){console.error(`Warning: Slack rate limit hit — backing off for ${Y.retryAfter}s`),await mD.sleep(Y.retryAfter*1000);continue}throw Y}Q=mD.now(),await mD.sleep(B)}}class Au extends Error{retryAfter;constructor(D){super(`Slack rate limited — retry after ${D}s`);this.name="RateLimitError",this.retryAfter=D}}function H8(){return(process.env.SLACK_API_BASE??"https://slack.com/api").replace(/\/$/,"")}async function V8(D,u,F,E){let C={};if(E)C.Cookie=`d=${E}`;let B=await fetch(`${H8()}/${u}`,{...F,headers:{...F.headers??{},Authorization:`Bearer ${D}`,...C}});if(B.status===429){let z=parseInt(B.headers.get("retry-after")??"60",10);throw new Au(isNaN(z)?60:z)}let $=await B.json();if($.ok!==!0){let z=$.error??"unknown";if(z==="ratelimited")throw new Au(60);if(z==="invalid_auth"&&D.startsWith("xoxc-")&&!E)throw Error(`Desktop app token (xoxc-) is not accepted by the public Slack API.
100
109
  Replace it with an xoxp- user token:
101
- slack workspace set-token <name> <xoxp-token>`);throw Error(`Slack error on ${u}: ${z}`)}return $}async function f3(D,u,F,E){let C={};if(E)C.Cookie=`d=${E}`;let B=await fetch(`${Q8()}/${u}`,{...F,headers:{...F.headers??{},Authorization:`Bearer ${D}`,...C}});if(B.status===429){let z=parseInt(B.headers.get("retry-after")??"60",10);throw new Ru(isNaN(z)?60:z)}let $=await B.json();if($.ok!==!0){let z=$.error??"unknown";if(z==="ratelimited")throw new Ru(60);if((z==="invalid_auth"||z==="not_authed")&&!D.startsWith("xoxc-"))throw Error(`The draft API requires a desktop app session token (xoxc-).
110
+ slack workspace set-token <name> <xoxp-token>`);throw Error(`Slack error on ${u}: ${z}`)}return $}async function k1(D,u,F,E){let C={};if(E)C.Cookie=`d=${E}`;let B=await fetch(`${H8()}/${u}`,{...F,headers:{...F.headers??{},Authorization:`Bearer ${D}`,...C}});if(B.status===429){let z=parseInt(B.headers.get("retry-after")??"60",10);throw new Au(isNaN(z)?60:z)}let $=await B.json();if($.ok!==!0){let z=$.error??"unknown";if(z==="ratelimited")throw new Au(60);if((z==="invalid_auth"||z==="not_authed")&&!D.startsWith("xoxc-"))throw Error(`The draft API requires a desktop app session token (xoxc-).
102
111
  Import from Slack desktop: slack workspace import`);if((z==="invalid_auth"||z==="not_authed")&&!E)throw Error(`drafts.list also requires the xoxd session cookie.
103
112
  Set it with: slack workspace set-cookie <workspace-name> <xoxd-value>
104
- `+"Get xoxd from browser: DevTools → Application → Cookies → slack.com → d");throw Error(`Slack error on ${u}: ${z}`)}return $}function Ou(D,u,F={},E){let C=new URLSearchParams({token:D,...F});return f3(D,u,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:C.toString()},E)}function YD(D,u,F,E){let C=new URLSearchParams(F).toString();return O8(D,`${u}?${C}`,{method:"GET"},E)}function Yu(D,u,F){return O8(D,u,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(F)})}async function Lu(D,u,F=20,E,C){let B={channel:u,limit:String(F)};if(E!==void 0)B.oldest=E;if(C!==void 0)B.cursor=C;return YD(D,"conversations.history",B)}async function tF(D,u,F,E=50){return YD(D,"conversations.replies",{channel:u,ts:F,limit:String(E)})}async function Y8(D,u,F,E){return YD(D,"search.messages",{query:u,sort:"timestamp",sort_dir:"desc",count:String(Math.min(Math.max(F,1),100)),page:String(Math.max(E,1))})}async function W8(D,u){return Y8(D,u,100,1)}async function M8(D,u,F){let C=1,B=[],$={ok:!0,messages:{}};while(!0){let Z=await Y8(D,u,100,C),J=Au(Z,["messages","matches"]),O=Array.isArray(J)?J:[];B.push(...O);let X=Number(Au(Z,["messages","paging","pages"])??1);if($=Z,O.length===0||C>=X||B.length>=F)break;C+=1}let z=$;if(!z.messages)z.messages={};return z.messages.matches=B.slice(0,F),z}async function H8(D,u,F,E){let C={channel:u,text:F,blocks:[{type:"markdown",text:F}]};if(E!==void 0)C.thread_ts=E;return(await Yu(D,"chat.postMessage",C)).ts??""}async function V8(D,u,F,E,C){let B={channel:u,text:F,post_at:E,blocks:[{type:"markdown",text:F}]};if(C!==void 0)B.thread_ts=C;return(await Yu(D,"chat.scheduleMessage",B)).scheduled_message_id??""}async function q8(D,u){let F={};if(u)F.channel=u;return YD(D,"chat.scheduledMessages.list",F)}async function U8(D,u,F){await Yu(D,"chat.deleteScheduledMessage",{channel:u,scheduled_message_id:F})}async function _8(D,u,F,E){return(await Yu(D,"chat.update",{channel:u,ts:F,text:E,blocks:[{type:"markdown",text:E}]})).ts??F}async function CF(D){let u=[],F="";while(!0){let E={limit:"200",types:"public_channel,private_channel,im,mpim"};if(F)E.cursor=F;let C=await YD(D,"conversations.list",E);if(u.push(...C.channels??[]),F=C.response_metadata?.next_cursor??"",!F)break}return{channels:u}}async function BF(D,u){let E=(await Yu(D,"conversations.open",{users:u})).channel?.id;if(!E)throw Error(`Failed to open DM with user ${u}`);return E}function EF(D){return D.toLowerCase().replace(/[-_\s]/g,"")}function lF(D){let u=D.match(/(?:app\.slack\.com\/client\/T[A-Za-z0-9]+|[A-Za-z0-9-]+\.slack\.com\/archives)\/([A-Za-z0-9]+)(?:\/p(\d{10})(\d{6}))?/);if(!u)return;let F=u[1],E=u[2]&&u[3]?`${u[2]}.${u[3]}`:void 0;return E?{channel:F,ts:E}:{channel:F}}function x3(D){return lF(D)?.channel}async function ND(D,u,F){let E=x3(u);if(E)return E;if(!u.startsWith("@")&&!u.startsWith("#")){if(/^[A-Za-z0-9]{9,}$/.test(u))return u;throw Error(`Target must start with # or @ (or be a Slack URL/ID), got: ${u}`)}let C=u.startsWith("@"),B=u.slice(1),$=EF(B);if(C){let J="",O="";while(!0){let Q={limit:"200"};if(O)Q.cursor=O;let Y=await YD(D,"users.list",Q,F);for(let M of Y.members??[]){let H=EF(M.name??""),_=EF(M.real_name??""),S=EF(M.profile?.display_name??"");if(H===$||_===$||S&&S===$){J=M.id??"";break}}if(J)break;if(O=Y.response_metadata?.next_cursor??"",!O)break}if(!J)throw Error(`User not found: ${u}`);let X="";while(!0){let Q={types:"im",limit:"200"};if(X)Q.cursor=X;let Y=await YD(D,"conversations.list",Q,F);for(let M of Y.channels??[])if(M.user===J)return String(M.id??"");if(X=Y.response_metadata?.next_cursor??"",!X)break}throw Error(`No existing DM with ${u} (${J}). Open it once in Slack first.`)}let z=B.toLowerCase(),Z="";while(!0){let J={limit:"200",types:"public_channel,private_channel",exclude_archived:"true"};if(Z)J.cursor=Z;let O=await YD(D,"conversations.list",J,F);for(let X of O.channels??[])if(String(X.name??"").toLowerCase()===z)return String(X.id??"");if(Z=O.response_metadata?.next_cursor??"",!Z)break}throw Error(`channel not found: ${u}`)}async function Su(D,u){try{let F=await YD(D,"users.info",{user:u}),E=F.user?.profile?.display_name,C=E&&E.length>0?E:F.user?.real_name??F.user?.name??u,B=F.user?.name??u;return[C,B]}catch{return[u,u]}}async function j8(D,u){try{let F=await YD(D,"users.info",{user:u}),E=F.user?.profile?.display_name;if(E&&E.length>0)return E;return F.user?.real_name??F.user?.name??u}catch{return u}}async function oF(D){let u=[],F="";while(!0){let E={limit:"200"};if(F)E.cursor=F;let C=await YD(D,"users.list",E);if(u.push(...C.members??[]),F=C.response_metadata?.next_cursor??"",!F)break}return{members:u}}async function Pu(D,u){return Ou(D,"drafts.list",{},u)}async function K8(D,u,F,E){let{randomUUID:C}=await import("node:crypto"),B=JSON.stringify([{type:"rich_text",elements:[{type:"rich_text_section",elements:[{type:"text",text:F}]}]}]);return Ou(D,"drafts.create",{client_msg_id:C(),destinations:JSON.stringify([{channel_id:u}]),blocks:B,file_ids:JSON.stringify([]),is_from_composer:"true"},E)}async function T8(D,u,F,E,C){let B=JSON.stringify([{type:"rich_text",elements:[{type:"rich_text_section",elements:[{type:"text",text:E}]}]}]),$=(Date.now()/1000).toFixed(6);return Ou(D,"drafts.update",{draft_id:u,client_last_updated_ts:$,destinations:JSON.stringify([{channel_id:F}]),blocks:B,file_ids:JSON.stringify([])},C)}async function N8(D,u,F){return Ou(D,"conversations.info",{channel:u},F)}async function R8(D,u){return YD(D,"users.info",{user:u})}async function A8(D,u){return YD(D,"conversations.info",{channel:u})}async function L8(D,u,F){let E=(Date.now()/1000).toFixed(6);return Ou(D,"drafts.delete",{draft_id:u,client_last_updated_ts:E},F)}async function sF(D,u){let F=await Ou(D,"auth.test",{},u);return{userId:String(F.user_id??""),teamId:String(F.team_id??"")}}async function S8(D,u,F,E={}){let{statSync:C,readFileSync:B}=await import("node:fs"),{basename:$}=await import("node:path"),z=C(F),Z=$(F),J=await YD(D,"files.getUploadURLExternal",{filename:Z,length:String(z.size)}),O=J.upload_url,X=J.file_id;if(!O||!X)throw Error("files.getUploadURLExternal returned no upload_url/file_id");let Q=B(F),Y=await fetch(O,{method:"POST",headers:{"Content-Type":"application/octet-stream"},body:Q});if(!Y.ok)throw Error(`Upload PUT failed: ${Y.status} ${Y.statusText}`);let M={files:[{id:X,title:E.title??Z}],channel_id:u};if(E.threadTs)M.thread_ts=E.threadTs;if(E.initialComment)M.initial_comment=E.initialComment;let H=await Yu(D,"files.completeUploadExternal",M),_={fileId:X},S=H.files?.[0]?.permalink;if(S)_.permalink=S;return _}function Au(D,u){let F=D;for(let E of u){if(F===void 0||F===null)return;if(typeof E==="number"){if(!Array.isArray(F))return;F=F[E]??void 0}else{if(typeof F!=="object"||Array.isArray(F))return;F=F[E]}}return F}async function Wu(D,u,F){let E=u,C=[],B=E,$=0;while(!0){let z=B.indexOf("<@U",$);if(z===-1)break;let Z=B.slice(z+2),J=Z.search(/[>|]/),O=J===-1?Z:Z.slice(0,J);if(O.length>=9)C.push(O);$=z+1}for(let z of C){if(!F.has(z))F.set(z,await DF(D,z));let Z=F.get(z)??z;E=E.replaceAll(`<@${z}>`,`@${Z}`),E=E.replace(new RegExp(`<@${z}\\|[^>]*>`,"g"),`@${Z}`)}return E}function wu(D){return D.replace(/<!date\^(\d+)\^[^|>]*(?:\|([^>]*))?>/g,(u,F,E)=>{let C=Number(F);if(!Number.isFinite(C))return E??"date";let B=new Date(C*1000);if(Number.isNaN(B.getTime()))return E??"date";let $=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Z=$[B.getUTCDay()]??"",J=z[B.getUTCMonth()]??"";return`${Z}, ${J} ${String(B.getUTCDate()).padStart(2,"0")}, ${B.getUTCFullYear()}`})}function P8(D,u=new Date){let F=new Date(D*1000),E=rF(u),C=rF(new Date(u.getTime()-86400000)),B=rF(F);if(B===E)return"Today";if(B===C)return"Yesterday";let $=F.toLocaleDateString("en-US",{weekday:"long"}),z=F.toLocaleDateString("en-US",{month:"short"});return`${$}, ${z} ${String(F.getDate()).padStart(2,"0")}`}function rF(D){return`${D.getFullYear()}-${D.getMonth()}-${D.getDate()}`}function w8(D){let u=new Date(D*1000),F=u.getFullYear(),E=String(u.getMonth()+1).padStart(2,"0"),C=String(u.getDate()).padStart(2,"0"),B=String(u.getHours()).padStart(2,"0"),$=String(u.getMinutes()).padStart(2,"0");return`${F}-${E}-${C} ${B}:${$}`}function Iu(D){if(!f8(D))return;let u=h3(D,"utf8");for(let F of u.split(`
105
- `)){let E=F.trim();if(!E||E.startsWith("#"))continue;let C=E.indexOf("=");if(C===-1)continue;let B=E.slice(0,C).trim(),$=E.slice(C+1).trim();if($.startsWith('"')&&$.endsWith('"')||$.startsWith("'")&&$.endsWith("'"))$=$.slice(1,-1);if(!(B in process.env))process.env[B]=$}}function m3(D){v3(D,{recursive:!0});let u=Eu(D,".gitignore");if(!f8(u))p3(u,`*
106
- `)}function c3(){Iu(Eu(I8(),".slack-cli",".env.local")),Iu(Eu(I8(),".config/slack-cli",".env")),Iu(Eu(process.cwd(),".slack-cli",".env.local")),Iu(Eu(process.cwd(),".env.local")),Iu(Eu(process.cwd(),".env"))}function y3(D){return b3("sha256").update(D).digest("hex")}function y(D){return D&&typeof D==="object"&&!Array.isArray(D)?D:{}}function zD(D){return Array.isArray(D)?D:[]}function $F(D){return Number(D.ts??0)}async function x8(D,u,F){let E=u.user;if(typeof E==="string"){if(!F.has(E))F.set(E,await j8(D,E));return F.get(E)??E}return typeof u.username==="string"?u.username:"bot"}function aF(D){let u=new Date(D*1000),F=u.getUTCFullYear(),E=String(u.getUTCMonth()+1).padStart(2,"0"),C=String(u.getUTCDate()).padStart(2,"0"),B=String(u.getUTCHours()).padStart(2,"0"),$=String(u.getUTCMinutes()).padStart(2,"0"),z=String(u.getUTCSeconds()).padStart(2,"0");return`${F}-${E}-${C} ${B}:${$}:${z}`}function i3(D){let[u,F="000000"]=D.split("."),E=Number(u),C=new Date(E*1000),B=C.getUTCFullYear(),$=String(C.getUTCMonth()+1).padStart(2,"0"),z=String(C.getUTCDate()).padStart(2,"0"),Z=String(C.getUTCHours()).padStart(2,"0"),J=String(C.getUTCMinutes()).padStart(2,"0"),O=String(C.getUTCSeconds()).padStart(2,"0"),X=F.padEnd(6,"0").slice(0,6);return`${B}-${$}-${z}T${Z}:${J}:${O}.${X}`}function b8(D){let u=D.match(/^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2})\.(\d{6})$/);if(!u)throw Error(`Invalid message timestamp "${D}" \u2014 expected 2026-05-11T06:01:04.000100`);let F=Date.parse(u[1]+"Z");if(isNaN(F))throw Error(`Cannot parse date in "${D}"`);return`${Math.floor(F/1000)}.${u[2]}`}function n3(D){return/^\d{4}-\d{2}-\d{2}T/.test(D)?b8(D):D}async function GF(D,u,F,E){let C=typeof u.ts==="string"?u.ts:`${$F(u)}.000000`,B=i3(C),$="?";if(typeof u.user==="string"){let Q=u.user,Y="@"+Q;if(!F.has(Y)){let[,M]=await Su(D,Q);F.set(Y,M)}$=F.get(Y)??Q}else if(typeof u.username==="string")$=u.username;let z=typeof u.text==="string"?u.text:"",J=wu(await Wu(D,z,F)).split(`
107
- `),O=J[0]+(J.length>1?`
108
- `+J.slice(1).map((Q)=>` ${Q}`).join(`
109
- `):""),X=E?`${E} @${$}`:`@${$}`;return`${B} ${X}: ${O}`}async function k3(D,u,F){let E=await ND(D,u),C=await Lu(D,E,F),B=zD(C.messages).map(y),$=new Map;for(let z of B.reverse())console.log(await GF(D,z,$))}async function d3(D,u,F,E){let C=await ND(D,u),B=await tF(D,C,n3(F),E),$=zD(B.messages).map(y),z=new Map;for(let Z of $)console.log(await GF(D,Z,z))}async function g3(D){let u=await CF(D),F=zD(u.channels).map(y).filter((C)=>C.is_member===!0).sort((C,B)=>Number(B.updated??0)-Number(C.updated??0)).slice(0,10),E=new Map;for(let C of F){let B=String(C.id??""),$=typeof C.name==="string"?C.name:typeof C.user==="string"?C.user:B,z=await Lu(D,B,5),Z=zD(z.messages).map(y).filter((J)=>J.subtype===void 0||J.subtype===null).filter((J)=>{let O=typeof J.text==="string"?J.text:"";return O.length>0&&!O.startsWith("<@")}).slice(0,3).reverse();if(Z.length===0)continue;console.log(`-- #${$} --------------------------------`);for(let J of Z){let O=await x8(D,J,E),X=(typeof J.text==="string"?J.text:"").split(`
110
- `)[0]??"",Q=await Wu(D,X,E);console.log(` ${O}: ${Q}`)}}}async function t3(D,u){let F=await W8(D,"to:me"),E=zD(Au(F,["messages","matches"])).map(y).slice(0,u),C=new Map,B=[];for(let $ of E){let z=P8($F($)),Z=B[B.length-1];if(Z?.label===z)Z.msgs.push($);else B.push({label:z,msgs:[$]})}for(let $=0;$<B.length;$++){let{label:z,msgs:Z}=B[$];if($>0)console.log("");console.log(` ${z}`),console.log(" ----------------------------");for(let J of[...Z].reverse()){let O=y(J.channel),X=O.is_im===!0,Q=typeof O.name==="string"?O.name:"dm",Y;if(X&&Q.startsWith("U")){let M="@"+Q;if(!C.has(M)){let[,H]=await Su(D,Q);C.set(M,H)}Y=`@${C.get(M)??Q}`}else if(X)Y=`@${Q}`;else Y=`#${Q}`;console.log(await GF(D,J,C,Y))}}}async function l3(D,u,F,E,C="text"){let B=await CF(D),$=zD(B.channels).map(y).filter((z)=>E||z.is_member===!0).filter((z)=>{if(!F)return!0;return(typeof z.name==="string"?z.name:"").toLowerCase().includes(F.toLowerCase())}).sort((z,Z)=>Number(Z.updated??0)-Number(z.updated??0)).slice(0,u);if(C==="jsonl"){for(let z of $)console.log(JSON.stringify(z));return}for(let z of $){let Z=String(z.id??""),J=typeof z.name==="string"?z.name:typeof z.user==="string"?z.user:Z,O=z.is_im===!0,X=z.is_mpim===!0,Q=O||X?"@":"#",Y=z.is_member===!0?"":" (not joined)",M=typeof y(z.purpose).value==="string"?String(y(z.purpose).value):"",H=M?` ${M.split(`
111
- `)[0]?.slice(0,60)}`:"";console.log(`${Q}${J} ${Z}${Y}${H}`)}}async function o3(D,u,F,E){let C=await M8(D,u,F);if(E){console.log(JSON.stringify(C,null,2));return}let B=zD(Au(C,["messages","matches"])).map(y),$=new Map;for(let z of B){let Z=y(z.channel),J=Z.is_im===!0,O=typeof Z.name==="string"?Z.name:"dm",X;if(J&&O.startsWith("U")){let Q="@"+O;if(!$.has(Q)){let[,Y]=await Su(D,O);$.set(Q,Y)}X=`@${$.get(Q)??O}`}else if(J)X=`@${O}`;else X=`#${O}`;console.log(await GF(D,z,$,X))}}async function s3(D,u,F,E){let C=Math.floor(Date.now()/1000)-u*86400,B=await CF(D),$=zD(B.channels).map(y).filter((O)=>O.is_member===!0&&O.is_im!==!0&&O.is_mpim!==!0).filter((O)=>{if(!E)return!0;return(typeof O.name==="string"?O.name:"").toLowerCase().includes(E.toLowerCase())}).sort((O,X)=>Number(X.updated??0)-Number(O.updated??0)),z=new Map,Z=0,J=0;for(let O of $){let X=String(O.id??""),Q=typeof O.name==="string"?O.name:X,Y;try{Y=await Lu(D,X,F)}catch(H){console.error(` SKIP #${Q}: ${H.message}`);continue}let M=zD(Y.messages).map(y).filter((H)=>(H.subtype===void 0||H.subtype===null)&&$F(H)>=C);if(M.length===0)continue;J+=1,Z+=M.length,console.log(`## #${Q} (${M.length} msgs)
112
- `);for(let H of[...M].reverse()){let _=await x8(D,H,z),S=typeof H.text==="string"?H.text:"",d=wu(await Wu(D,S,z)).split(`
113
- `).join(" \u21B5 ");console.log(`[${w8($F(H))}] ${_}: ${d}`)}console.log("")}console.error(`Dumped ${Z} messages across ${J} channels (cutoff: ${u}d)`)}function r3(D){let u=[];function F(E){if(typeof E==="string"){u.push(E);return}if(Array.isArray(E)){for(let C of E)F(C);return}if(E&&typeof E==="object"){let C=E;if(typeof C.text==="string"){u.push(C.text);return}if(Array.isArray(C.elements))F(C.elements);else if(Array.isArray(C.content))F(C.content)}}for(let E of D)F(E);return u.join("").trim()}async function h8(D,u,F){let E=new Map;return async(C)=>{if(!C)return"(unknown)";if(E.has(C))return E.get(C);try{let B=await N8(D,C,u),$=y(B.channel),z;if($.is_im===!0){let Z=typeof $.user==="string"?$.user:"";if(!Z||Z===F)z="@self";else{let[J]=await Su(D,Z);z=`@${J}`}}else z=`#${typeof $.name==="string"?$.name:C}`;return E.set(C,z),z}catch{return C}}}function eF(D){let u=y(zD(D.destinations)[0]);return String(u.channel_id??D.channel_id??D.channel??"")}function zF(D){return r3(zD(D.blocks))||(typeof D.text==="string"?D.text:"(no text)")}async function a3(D,u,F=!1){let E=await Pu(D,u),C=zD(E.drafts??E.messages??[]).map(y).filter((J)=>J.is_deleted!==!0),B=F?C:C.filter((J)=>J.is_sent!==!0);if(B.length===0){console.log(F?"No drafts.":"No pending drafts. Run with --all to include sent.");return}let $="";try{({userId:$}=await sF(D,u))}catch{}let z=await h8(D,u,$),Z=new Map;for(let J of B){let O=eF(J),X=zF(J),Q=Number(J.date_created??J.date_create??0),Y=Q?aF(Q):"?",M=await z(O),H=typeof J.id==="string"?J.id:"",_=J.is_sent===!0?" [SENT]":"",S=wu(await Wu(D,X,Z));console.log(`-- ${H} ${M} [${Y}]${_}`);for(let f of S.split(`
114
- `))console.log(` ${f}`)}}async function e3(D,u,F){let E=await Pu(D,u),C=zD(E.drafts).map(y).find((M)=>String(M.id)===F);if(!C)console.error(`Draft not found: ${F}`),process.exit(1);let B="";try{({userId:B}=await sF(D,u))}catch{}let $=await h8(D,u,B),z=eF(C),Z=zF(C),J=Number(C.date_created??0),O=String(C.last_updated_ts??"?"),X=await $(z),Y=wu(await Wu(D,Z,new Map));console.log(`id: ${C.id}`),console.log(`channel: ${X} (${z})`),console.log(`created: ${J?aF(J):"?"}`),console.log(`updated: ${aF(Number(O.split(".")[0]))}`),console.log(`status: ${C.is_sent===!0?"sent":"pending"}`),console.log("---"),console.log(Y)}function Cu(...D){return y3(D.join(`
115
- `)).slice(0,4)}function Bu(D,u,F){for(let E of F)console.log(E);if(D!==void 0)console.error(`Code mismatch (got ${D}, expected ${u})`);console.error(`Rerun with --code=${u}`),process.exit(1)}function D6(D){let u=lF(D);if(u)return u.ts?{ref:u.channel,ts:u.ts}:{ref:u.channel};if(D.startsWith("#")||D.startsWith("@")){let F=D.indexOf(":");if(F>0){let E=D.slice(F+1);if(/^\d{10}\.\d{6}$/.test(E))return{ref:D.slice(0,F),ts:E};if(/^\d{4}-\d{2}-\d{2}T/.test(E))return{ref:D.slice(0,F),ts:b8(E)}}}return{ref:D}}async function u6(D,u){let{ref:F,ts:E}=D6(u.target);if(!E)console.error("Error: target must embed a message ts (e.g. #chan:2026-05-11T06:01:04.000100 or a Slack permalink URL)"),process.exit(2);let C;if(u.channelId)C=u.channelId;else C=await ND(D,F);let B=await tF(D,C,E,1),z=zD(B.messages).map(y).find((X)=>String(X.ts)===E);if(!z)console.error(`Message not found at ts=${E} in channel ${C}`),process.exit(1);let Z=typeof z.text==="string"?z.text:"",J=Cu(Z,u.newText);if(u.code!==J)Bu(u.code,J,["--- Original message -------------------------",...Z.split(`
116
- `).map((X)=>` ${X}`),"--- Replacing with ---------------------------",...u.newText.split(`
117
- `).map((X)=>` ${X}`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);let O=await _8(D,C,E,u.newText);console.log(`\u2713 Edited (ts: ${O})`)}async function F6(D,u){let F;if(u.channelId)F=u.channelId;else if(u.userId)F=await BF(D,u.userId);else if(u.target.startsWith("#")||u.target.startsWith("@"))F=await ND(D,u.target);else console.error(`Error: target must be #channel-name or @username (got: ${u.target})`),console.error("Use --channel-id=<ID> or --user-id=<ID> to send by raw ID."),process.exit(1);let E=await Lu(D,F,1),C=zD(E.messages).map(y).filter((J)=>J.subtype===void 0||J.subtype===null)[0],B=typeof C?.text==="string"?C.text:"",$=typeof C?.user==="string"?C.user:"?",z=Cu(B,u.message);if(u.code!==z)Bu(u.code,z,["--- Last message in channel ------------------",` ${$}: ${B.split(`
118
- `)[0]?.slice(0,100)??"(empty)"}`,"--- Sending ----------------------------------",` To: ${u.target}${u.thread?` (thread ${u.thread})`:""}`,` Message: ${u.message}`,"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);let Z=await H8(D,F,u.message,u.thread);console.log(`\u2713 Sent (ts: ${Z})`)}function E6(D){if(/^\d{10,}$/.test(D))return parseInt(D,10);let u=new Date(D.replace(" ","T"));if(isNaN(u.getTime()))throw Error(`Cannot parse time: ${D}`);return Math.floor(u.getTime()/1000)}async function C6(D,u){let F;if(u.channelId)F=u.channelId;else if(u.userId)F=await BF(D,u.userId);else if(u.target.startsWith("#")||u.target.startsWith("@"))F=await ND(D,u.target);else console.error(`Error: target must be #channel-name or @username (got: ${u.target})`),process.exit(1);let E=E6(u.at),C=new Date(E*1000).toISOString(),B=Cu(F,u.message,String(E));if(u.code!==B)Bu(u.code,B,["--- Scheduling message -----------------------",` To: ${u.target}${u.thread?` (thread ${u.thread})`:""}`,` At: ${C} (Unix: ${E})`,` Message: ${u.message}`,"---------------------------------------------"]);let $=await V8(D,F,u.message,E,u.thread);console.log(`\u2713 Scheduled (id: ${$}, at: ${C})`)}async function B6(D,u,F){let E;if(F)E=F;else if(u)E=await ND(D,u);let B=(await q8(D,E)).scheduled_messages??[];if(B.length===0){console.log("(no scheduled messages)");return}for(let $ of B){let z=new Date($.post_at*1000).toISOString();console.log(`${$.id} ${z} [${$.channel_id}] ${$.text.split(`
119
- `)[0]?.slice(0,80)??""}`)}}async function $6(D,u){let F;if(u.channelId)F=u.channelId;else F=await ND(D,u.target);let E=Cu(F,u.id);if(u.code!==E)Bu(u.code,E,["--- Deleting scheduled message ---------------",` Channel: ${u.target}`,` ID: ${u.id}`,"---------------------------------------------"]);await U8(D,F,u.id),console.log(`\u2713 Deleted scheduled message ${u.id}`)}async function z6(D,u){let{statSync:F,existsSync:E}=await import("fs"),{basename:C}=await import("path");for(let X of u.filePaths)if(!E(X))console.error(`Error: file not found: ${X}`),process.exit(1);let B;if(u.channelId)B=u.channelId;else if(u.userId)B=await BF(D,u.userId);else if(u.target.startsWith("#")||u.target.startsWith("@"))B=await ND(D,u.target);else console.error(`Error: target must be #channel-name or @username (got: ${u.target})`),process.exit(1);function $(X){return X<1024?`${X} B`:X<1048576?`${(X/1024).toFixed(1)} KB`:`${(X/1048576).toFixed(1)} MB`}let z=u.filePaths.length>1,Z=u.filePaths.map((X)=>{let Q=C(X),Y=z?Q:u.title??Q;return{fp:X,filename:Q,title:Y,sizeFmt:$(F(X).size)}}),J=Cu(B,...Z.flatMap((X)=>[X.fp,X.title]));if(u.code!==J){let X=` To: ${u.target}${u.thread?` (thread ${u.thread})`:""}`,Q=z?[`--- Uploading ${Z.length} files ------------------------`,X,...Z.map((Y)=>` ${Y.filename} (${Y.sizeFmt})`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]:["--- Uploading file ---------------------------",X,` File: ${Z[0].fp}`,` Title: ${Z[0].title}`,` Size: ${Z[0].sizeFmt}`,"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"];Bu(u.code,J,Q)}let O=Z.length;for(let X=0;X<O;X++){let Q=Z[X],Y={title:Q.title};if(u.thread!==void 0)Y.threadTs=u.thread;if(u.comment!==void 0&&X===0)Y.initialComment=u.comment;let{fileId:M,permalink:H}=await S8(D,B,Q.fp,Y),_=O>1?`[${X+1}/${O}] `:"";console.log(`${_}\u2713 Uploaded (file_id: ${M}${H?`, url: ${H}`:""})`)}}async function G6(){c3();let D=(F)=>iF(F.workspace),u=(F)=>d2(F.workspace);await b2(KF(process.argv)).scriptName("slack").option("workspace",{alias:"w",type:"string",describe:"Workspace name"}).middleware(async(F)=>{let E=String((F._??[])[0]??"");if(!E||E==="auth"||E==="login")return;try{iF(F.workspace)}catch(C){if((C instanceof Error?C.message:String(C)).startsWith("No profiles configured"))console.log(`No workspace configured. Let's set that up:
120
- `),await FF(),process.exit(0);throw C}},!0).command(["read [target]","msgs [target]"],"Browse messages",(F)=>F.positional("target",{type:"string",describe:"#channel, @user, or URL"}).option("limit",{alias:"n",type:"number",default:20,describe:"Number of messages"}),async(F)=>{let E=D(F);if(F.target)await k3(E,F.target,F.limit);else await g3(E)}).command("thread <target> <ts>","Show thread messages",(F)=>F.positional("target",{type:"string",demandOption:!0}).positional("ts",{type:"string",demandOption:!0}).option("limit",{alias:"n",type:"number",default:100}),async(F)=>{await d3(D(F),F.target,F.ts,F.limit)}).command(["channel","channels","ch"],"Channel commands",(F)=>F.command(["ls","list"],"List channels",(E)=>E.option("limit",{alias:"n",type:"number",default:200}).option("filter",{alias:"f",type:"string"}).option("all",{type:"boolean",default:!1}).option("format",{type:"string",choices:["text","jsonl"],default:"text"}).option("json",{type:"boolean",default:!1,describe:"Alias for --format=jsonl"}),async(E)=>{await l3(D(E),E.limit,E.filter,E.all,E.json?"jsonl":E.format)}).command("get <channel>","Show channel details",(E)=>E.positional("channel",{type:"string",demandOption:!0,describe:"#name or channel ID"}),async(E)=>{let C=D(E),B=E.channel,$=B.startsWith("#")||B.startsWith("@")||B.startsWith("C")||B.startsWith("G")||B.startsWith("D")?B:`#${B}`,z=await ND(C,$),Z=y(await A8(C,z)),J=y(Z.channel),O=typeof J.name==="string"?J.name:z,Q=J.is_im===!0?"@":"#",Y=String(y(J.purpose).value??""),M=String(y(J.topic).value??""),H=J.num_members??J.member_count??"";if(console.log(`${Q}${O} ${z}`),M)console.log(`topic: ${M}`);if(Y)console.log(`purpose: ${Y}`);if(H)console.log(`members: ${H}`);console.log(`private: ${J.is_private===!0}`)}).demandCommand(1,"").showHelpOnFail(!0)).command(["user","usr"],"User commands",(F)=>F.command(["ls","list"],"List workspace members",(E)=>E.option("limit",{alias:"n",type:"number",default:200}).option("filter",{alias:"f",type:"string"}).option("format",{type:"string",choices:["text","jsonl","yaml"],default:"text"}).option("json",{type:"boolean",default:!1,describe:"Alias for --format=jsonl"}),async(E)=>{let C=E.json?"jsonl":E.format,B=await oF(D(E)),$=E.filter?.toLowerCase(),z=zD(B.members).map(y).filter((J)=>J.deleted!==!0&&J.is_bot!==!0&&String(J.id)!=="USLACKBOT").filter((J)=>{if(!$)return!0;let O=String(J.name??"").toLowerCase(),X=String(y(J.profile).real_name??"").toLowerCase(),Q=String(y(J.profile).email??"").toLowerCase();return O.includes($)||X.includes($)||Q.includes($)}).slice(0,E.limit);if(C==="jsonl"){for(let J of z)console.log(JSON.stringify(J));return}if(C==="yaml"){for(let J of z){let O=function(X,Q=""){if(X===null)return"null";if(typeof X==="string")return X.includes(`
113
+ `+"Get xoxd from browser: DevTools → Application → Cookies → slack.com → d");throw Error(`Slack error on ${u}: ${z}`)}return $}function Yu(D,u,F={},E){let C=new URLSearchParams({token:D,...F});return k1(D,u,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:C.toString()},E)}function YD(D,u,F,E){let C=new URLSearchParams(F).toString();return V8(D,`${u}?${C}`,{method:"GET"},E)}function Wu(D,u,F){return V8(D,u,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(F)})}async function Ru(D,u,F=20,E,C){let B={channel:u,limit:String(F)};if(E!==void 0)B.oldest=E;if(C!==void 0)B.cursor=C;return YD(D,"conversations.history",B)}async function GF(D,u,F,E=50){return YD(D,"conversations.replies",{channel:u,ts:F,limit:String(E)})}async function q8(D,u,F,E){return YD(D,"search.messages",{query:u,sort:"timestamp",sort_dir:"desc",count:String(Math.min(Math.max(F,1),100)),page:String(Math.max(E,1))})}async function U8(D,u){return q8(D,u,100,1)}async function j8(D,u,F){let C=1,B=[],$={ok:!0,messages:{}};while(!0){let Z=await q8(D,u,100,C),X=Lu(Z,["messages","matches"]),O=Array.isArray(X)?X:[];B.push(...O);let J=Number(Lu(Z,["messages","paging","pages"])??1);if($=Z,O.length===0||C>=J||B.length>=F)break;C+=1}let z=$;if(!z.messages)z.messages={};return z.messages.matches=B.slice(0,F),z}async function _8(D,u,F,E){let C={channel:u,text:F,blocks:[{type:"markdown",text:F}]};if(E!==void 0)C.thread_ts=E;return(await Wu(D,"chat.postMessage",C)).ts??""}async function K8(D,u,F,E,C){let B={channel:u,text:F,post_at:E,blocks:[{type:"markdown",text:F}]};if(C!==void 0)B.thread_ts=C;return(await Wu(D,"chat.scheduleMessage",B)).scheduled_message_id??""}async function N8(D,u){let F={};if(u)F.channel=u;return YD(D,"chat.scheduledMessages.list",F)}async function T8(D,u,F){await Wu(D,"chat.deleteScheduledMessage",{channel:u,scheduled_message_id:F})}async function A8(D,u,F,E){return(await Wu(D,"chat.update",{channel:u,ts:F,text:E,blocks:[{type:"markdown",text:E}]})).ts??F}async function ZF(D){let u=[],F="";while(!0){let E={limit:"200",types:"public_channel,private_channel,im,mpim"};if(F)E.cursor=F;let C=await YD(D,"conversations.list",E);if(u.push(...C.channels??[]),F=C.response_metadata?.next_cursor??"",!F)break}return{channels:u}}async function JF(D,u){let E=(await Wu(D,"conversations.open",{users:u})).channel?.id;if(!E)throw Error(`Failed to open DM with user ${u}`);return E}function zF(D){return D.toLowerCase().replace(/[-_\s]/g,"")}function XF(D){let u=D.match(/(?:app\.slack\.com\/client\/T[A-Za-z0-9]+|[A-Za-z0-9-]+\.slack\.com\/archives)\/([A-Za-z0-9]+)(?:\/p(\d{10})(\d{6}))?/);if(!u)return;let F=u[1],E=u[2]&&u[3]?`${u[2]}.${u[3]}`:void 0,C=D.indexOf("?"),B=C>=0?new URLSearchParams(D.slice(C)):void 0,$=B?.get("thread_ts")??void 0,X={channel:B?.get("cid")??void 0??F};if(E)X.ts=E;if($)X.threadTs=$;return X}function d1(D){return XF(D)?.channel}async function TD(D,u,F){let E=d1(u);if(E)return E;if(!u.startsWith("@")&&!u.startsWith("#")){if(/^[A-Za-z0-9]{9,}$/.test(u))return u;throw Error(`Target must start with # or @ (or be a Slack URL/ID), got: ${u}`)}let C=u.startsWith("@"),B=u.slice(1),$=zF(B);if(C){let X="",O="";while(!0){let Q={limit:"200"};if(O)Q.cursor=O;let Y=await YD(D,"users.list",Q,F);for(let M of Y.members??[]){let H=zF(M.name??""),j=zF(M.real_name??""),A=zF(M.profile?.display_name??"");if(H===$||j===$||A&&A===$){X=M.id??"";break}}if(X)break;if(O=Y.response_metadata?.next_cursor??"",!O)break}if(!X)throw Error(`User not found: ${u}`);let J="";while(!0){let Q={types:"im",limit:"200"};if(J)Q.cursor=J;let Y=await YD(D,"conversations.list",Q,F);for(let M of Y.channels??[])if(M.user===X)return String(M.id??"");if(J=Y.response_metadata?.next_cursor??"",!J)break}throw Error(`No existing DM with ${u} (${X}). Open it once in Slack first.`)}let z=B.toLowerCase(),Z="";while(!0){let X={limit:"200",types:"public_channel,private_channel",exclude_archived:"true"};if(Z)X.cursor=Z;let O=await YD(D,"conversations.list",X,F);for(let J of O.channels??[])if(String(J.name??"").toLowerCase()===z)return String(J.id??"");if(Z=O.response_metadata?.next_cursor??"",!Z)break}throw Error(`channel not found: ${u}`)}async function Su(D,u){try{let F=await YD(D,"users.info",{user:u}),E=F.user?.profile?.display_name,C=E&&E.length>0?E:F.user?.real_name??F.user?.name??u,B=F.user?.name??u;return[C,B]}catch{return[u,u]}}async function L8(D,u){try{let F=await YD(D,"users.info",{user:u}),E=F.user?.profile?.display_name;if(E&&E.length>0)return E;return F.user?.real_name??F.user?.name??u}catch{return u}}async function eF(D){let u=[],F="";while(!0){let E={limit:"200"};if(F)E.cursor=F;let C=await YD(D,"users.list",E);if(u.push(...C.members??[]),F=C.response_metadata?.next_cursor??"",!F)break}return{members:u}}async function Pu(D,u){return Yu(D,"drafts.list",{},u)}async function R8(D,u,F,E){let{randomUUID:C}=await import("node:crypto"),B=JSON.stringify([{type:"rich_text",elements:[{type:"rich_text_section",elements:[{type:"text",text:F}]}]}]);return Yu(D,"drafts.create",{client_msg_id:C(),destinations:JSON.stringify([{channel_id:u}]),blocks:B,file_ids:JSON.stringify([]),is_from_composer:"true"},E)}async function S8(D,u,F,E,C){let B=JSON.stringify([{type:"rich_text",elements:[{type:"rich_text_section",elements:[{type:"text",text:E}]}]}]),$=(Date.now()/1000).toFixed(6);return Yu(D,"drafts.update",{draft_id:u,client_last_updated_ts:$,destinations:JSON.stringify([{channel_id:F}]),blocks:B,file_ids:JSON.stringify([])},C)}async function P8(D,u,F){return Yu(D,"conversations.info",{channel:u},F)}async function w8(D,u){return YD(D,"users.info",{user:u})}async function I8(D,u){return YD(D,"conversations.info",{channel:u})}async function x8(D,u,F){let E=(Date.now()/1000).toFixed(6);return Yu(D,"drafts.delete",{draft_id:u,client_last_updated_ts:E},F)}async function D0(D,u){let F=await Yu(D,"auth.test",{},u);return{userId:String(F.user_id??""),teamId:String(F.team_id??"")}}async function f8(D,u,F,E={}){let{statSync:C,readFileSync:B}=await import("node:fs"),{basename:$}=await import("node:path"),z=C(F),Z=$(F),X=await YD(D,"files.getUploadURLExternal",{filename:Z,length:String(z.size)}),O=X.upload_url,J=X.file_id;if(!O||!J)throw Error("files.getUploadURLExternal returned no upload_url/file_id");let Q=B(F),Y=await fetch(O,{method:"POST",headers:{"Content-Type":"application/octet-stream"},body:Q});if(!Y.ok)throw Error(`Upload PUT failed: ${Y.status} ${Y.statusText}`);let M={files:[{id:J,title:E.title??Z}],channel_id:u};if(E.threadTs)M.thread_ts=E.threadTs;if(E.initialComment)M.initial_comment=E.initialComment;let H=await Wu(D,"files.completeUploadExternal",M),j={fileId:J},A=H.files?.[0]?.permalink;if(A)j.permalink=A;return j}function Lu(D,u){let F=D;for(let E of u){if(F===void 0||F===null)return;if(typeof E==="number"){if(!Array.isArray(F))return;F=F[E]??void 0}else{if(typeof F!=="object"||Array.isArray(F))return;F=F[E]}}return F}async function Mu(D,u,F){let E=u,C=[],B=E,$=0;while(!0){let z=B.indexOf("<@U",$);if(z===-1)break;let Z=B.slice(z+2),X=Z.search(/[>|]/),O=X===-1?Z:Z.slice(0,X);if(O.length>=9)C.push(O);$=z+1}for(let z of C){if(!F.has(z))F.set(z,await FF(D,z));let Z=F.get(z)??z;E=E.replaceAll(`<@${z}>`,`@${Z}`),E=E.replace(new RegExp(`<@${z}\\|[^>]*>`,"g"),`@${Z}`)}return E}function wu(D){return D.replace(/<!date\^(\d+)\^[^|>]*(?:\|([^>]*))?>/g,(u,F,E)=>{let C=Number(F);if(!Number.isFinite(C))return E??"date";let B=new Date(C*1000);if(Number.isNaN(B.getTime()))return E??"date";let $=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Z=$[B.getUTCDay()]??"",X=z[B.getUTCMonth()]??"";return`${Z}, ${X} ${String(B.getUTCDate()).padStart(2,"0")}, ${B.getUTCFullYear()}`})}function b8(D,u=new Date){let F=new Date(D*1000),E=u0(u),C=u0(new Date(u.getTime()-86400000)),B=u0(F);if(B===E)return"Today";if(B===C)return"Yesterday";let $=F.toLocaleDateString("en-US",{weekday:"long"}),z=F.toLocaleDateString("en-US",{month:"short"});return`${$}, ${z} ${String(F.getDate()).padStart(2,"0")}`}function u0(D){return`${D.getFullYear()}-${D.getMonth()}-${D.getDate()}`}function h8(D){let u=new Date(D*1000),F=u.getFullYear(),E=String(u.getMonth()+1).padStart(2,"0"),C=String(u.getDate()).padStart(2,"0"),B=String(u.getHours()).padStart(2,"0"),$=String(u.getMinutes()).padStart(2,"0");return`${F}-${E}-${C} ${B}:${$}`}function Iu(D){if(!p8(D))return;let u=g1(D,"utf8");for(let F of u.split(`
114
+ `)){let E=F.trim();if(!E||E.startsWith("#"))continue;let C=E.indexOf("=");if(C===-1)continue;let B=E.slice(0,C).trim(),$=E.slice(C+1).trim();if($.startsWith('"')&&$.endsWith('"')||$.startsWith("'")&&$.endsWith("'"))$=$.slice(1,-1);if(!(B in process.env))process.env[B]=$}}function o1(D){t1(D,{recursive:!0});let u=Cu(D,".gitignore");if(!p8(u))l1(u,`*
115
+ `)}function s1(){Iu(Cu(v8(),".slack-cli",".env.local")),Iu(Cu(v8(),".config/slack-cli",".env")),Iu(Cu(process.cwd(),".slack-cli",".env.local")),Iu(Cu(process.cwd(),".env.local")),Iu(Cu(process.cwd(),".env"))}function r1(D){return n1("sha256").update(D).digest("hex")}function y(D){return D&&typeof D==="object"&&!Array.isArray(D)?D:{}}function CD(D){return Array.isArray(D)?D:[]}function QF(D){return Number(D.ts??0)}async function m8(D,u,F){let E=u.user;if(typeof E==="string"){if(!F.has(E))F.set(E,await L8(D,E));return F.get(E)??E}return typeof u.username==="string"?u.username:"bot"}function F0(D){let u=new Date(D*1000),F=u.getUTCFullYear(),E=String(u.getUTCMonth()+1).padStart(2,"0"),C=String(u.getUTCDate()).padStart(2,"0"),B=String(u.getUTCHours()).padStart(2,"0"),$=String(u.getUTCMinutes()).padStart(2,"0"),z=String(u.getUTCSeconds()).padStart(2,"0");return`${F}-${E}-${C} ${B}:${$}:${z}`}function a1(D){let[u,F="000000"]=D.split("."),E=Number(u),C=new Date(E*1000),B=C.getUTCFullYear(),$=String(C.getUTCMonth()+1).padStart(2,"0"),z=String(C.getUTCDate()).padStart(2,"0"),Z=String(C.getUTCHours()).padStart(2,"0"),X=String(C.getUTCMinutes()).padStart(2,"0"),O=String(C.getUTCSeconds()).padStart(2,"0"),J=F.padEnd(6,"0").slice(0,6);return`${B}-${$}-${z}T${Z}:${X}:${O}.${J}`}function c8(D){let u=D.match(/^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2})\.(\d{6})$/);if(!u)throw Error(`Invalid message timestamp "${D}" \u2014 expected 2026-05-11T06:01:04.000100`);let F=Date.parse(u[1]+"Z");if(isNaN(F))throw Error(`Cannot parse date in "${D}"`);return`${Math.floor(F/1000)}.${u[2]}`}function e1(D){return/^\d{4}-\d{2}-\d{2}T/.test(D)?c8(D):D}async function xu(D,u,F,E){let C=typeof u.ts==="string"?u.ts:`${QF(u)}.000000`,B=a1(C),$="?";if(typeof u.user==="string"){let Q=u.user,Y="@"+Q;if(!F.has(Y)){let[,M]=await Su(D,Q);F.set(Y,M)}$=F.get(Y)??Q}else if(typeof u.username==="string")$=u.username;let z=typeof u.text==="string"?u.text:"",X=wu(await Mu(D,z,F)).split(`
116
+ `),O=X[0]+(X.length>1?`
117
+ `+X.slice(1).map((Q)=>` ${Q}`).join(`
118
+ `):""),J=E?`${E} @${$}`:`@${$}`;return`${B} ${J}: ${O}`}async function D6(D,u,F){let E=XF(u),C=await TD(D,u),B=new Map;if(E?.threadTs){let $=await GF(D,C,E.threadTs,F),z=CD($.messages).map(y);for(let Z of z)console.log(await xu(D,Z,B))}else{let $=await Ru(D,C,F),z=CD($.messages).map(y);for(let Z of z.reverse())console.log(await xu(D,Z,B))}}async function u6(D,u,F,E){let C=await TD(D,u),B=await GF(D,C,e1(F),E),$=CD(B.messages).map(y),z=new Map;for(let Z of $)console.log(await xu(D,Z,z))}async function F6(D){let u=await ZF(D),F=CD(u.channels).map(y).filter((C)=>C.is_member===!0).sort((C,B)=>Number(B.updated??0)-Number(C.updated??0)).slice(0,10),E=new Map;for(let C of F){let B=String(C.id??""),$=typeof C.name==="string"?C.name:typeof C.user==="string"?C.user:B,z=await Ru(D,B,5),Z=CD(z.messages).map(y).filter((X)=>X.subtype===void 0||X.subtype===null).filter((X)=>{let O=typeof X.text==="string"?X.text:"";return O.length>0&&!O.startsWith("<@")}).slice(0,3).reverse();if(Z.length===0)continue;console.log(`-- #${$} --------------------------------`);for(let X of Z){let O=await m8(D,X,E),J=(typeof X.text==="string"?X.text:"").split(`
119
+ `)[0]??"",Q=await Mu(D,J,E);console.log(` ${O}: ${Q}`)}}}async function E6(D,u){let F=await U8(D,"to:me"),E=CD(Lu(F,["messages","matches"])).map(y).slice(0,u),C=new Map,B=[];for(let $ of E){let z=b8(QF($)),Z=B[B.length-1];if(Z?.label===z)Z.msgs.push($);else B.push({label:z,msgs:[$]})}for(let $=0;$<B.length;$++){let{label:z,msgs:Z}=B[$];if($>0)console.log("");console.log(` ${z}`),console.log(" ----------------------------");for(let X of[...Z].reverse()){let O=y(X.channel),J=O.is_im===!0,Q=typeof O.name==="string"?O.name:"dm",Y;if(J&&Q.startsWith("U")){let M="@"+Q;if(!C.has(M)){let[,H]=await Su(D,Q);C.set(M,H)}Y=`@${C.get(M)??Q}`}else if(J)Y=`@${Q}`;else Y=`#${Q}`;console.log(await xu(D,X,C,Y))}}}async function C6(D,u,F,E,C="text"){let B=await ZF(D),$=CD(B.channels).map(y).filter((z)=>E||z.is_member===!0).filter((z)=>{if(!F)return!0;return(typeof z.name==="string"?z.name:"").toLowerCase().includes(F.toLowerCase())}).sort((z,Z)=>Number(Z.updated??0)-Number(z.updated??0)).slice(0,u);if(C==="jsonl"){for(let z of $)console.log(JSON.stringify(z));return}for(let z of $){let Z=String(z.id??""),X=typeof z.name==="string"?z.name:typeof z.user==="string"?z.user:Z,O=z.is_im===!0,J=z.is_mpim===!0,Q=O||J?"@":"#",Y=z.is_member===!0?"":" (not joined)",M=typeof y(z.purpose).value==="string"?String(y(z.purpose).value):"",H=M?` ${M.split(`
120
+ `)[0]?.slice(0,60)}`:"";console.log(`${Q}${X} ${Z}${Y}${H}`)}}async function B6(D,u,F,E){let C=await j8(D,u,F);if(E){console.log(JSON.stringify(C,null,2));return}let B=CD(Lu(C,["messages","matches"])).map(y),$=new Map;for(let z of B){let Z=y(z.channel),X=Z.is_im===!0,O=typeof Z.name==="string"?Z.name:"dm",J;if(X&&O.startsWith("U")){let Q="@"+O;if(!$.has(Q)){let[,Y]=await Su(D,O);$.set(Q,Y)}J=`@${$.get(Q)??O}`}else if(X)J=`@${O}`;else J=`#${O}`;console.log(await xu(D,z,$,J))}}async function $6(D,u,F,E){let C=Math.floor(Date.now()/1000)-u*86400,B=await ZF(D),$=CD(B.channels).map(y).filter((O)=>O.is_member===!0&&O.is_im!==!0&&O.is_mpim!==!0).filter((O)=>{if(!E)return!0;return(typeof O.name==="string"?O.name:"").toLowerCase().includes(E.toLowerCase())}).sort((O,J)=>Number(J.updated??0)-Number(O.updated??0)),z=new Map,Z=0,X=0;for(let O of $){let J=String(O.id??""),Q=typeof O.name==="string"?O.name:J,Y;try{Y=await Ru(D,J,F)}catch(H){console.error(` SKIP #${Q}: ${H.message}`);continue}let M=CD(Y.messages).map(y).filter((H)=>(H.subtype===void 0||H.subtype===null)&&QF(H)>=C);if(M.length===0)continue;X+=1,Z+=M.length,console.log(`## #${Q} (${M.length} msgs)
121
+ `);for(let H of[...M].reverse()){let j=await m8(D,H,z),A=typeof H.text==="string"?H.text:"",n=wu(await Mu(D,A,z)).split(`
122
+ `).join(" \u21B5 ");console.log(`[${h8(QF(H))}] ${j}: ${n}`)}console.log("")}console.error(`Dumped ${Z} messages across ${X} channels (cutoff: ${u}d)`)}function z6(D){let u=[];function F(E){if(typeof E==="string"){u.push(E);return}if(Array.isArray(E)){for(let C of E)F(C);return}if(E&&typeof E==="object"){let C=E;if(typeof C.text==="string"){u.push(C.text);return}if(Array.isArray(C.elements))F(C.elements);else if(Array.isArray(C.content))F(C.content)}}for(let E of D)F(E);return u.join("").trim()}async function y8(D,u,F){let E=new Map;return async(C)=>{if(!C)return"(unknown)";if(E.has(C))return E.get(C);try{let B=await P8(D,C,u),$=y(B.channel),z;if($.is_im===!0){let Z=typeof $.user==="string"?$.user:"";if(!Z||Z===F)z="@self";else{let[X]=await Su(D,Z);z=`@${X}`}}else z=`#${typeof $.name==="string"?$.name:C}`;return E.set(C,z),z}catch{return C}}}function E0(D){let u=y(CD(D.destinations)[0]);return String(u.channel_id??D.channel_id??D.channel??"")}function OF(D){return z6(CD(D.blocks))||(typeof D.text==="string"?D.text:"(no text)")}async function G6(D,u,F=!1){let E=await Pu(D,u),C=CD(E.drafts??E.messages??[]).map(y).filter((X)=>X.is_deleted!==!0),B=F?C:C.filter((X)=>X.is_sent!==!0);if(B.length===0){console.log(F?"No drafts.":"No pending drafts. Run with --all to include sent.");return}let $="";try{({userId:$}=await D0(D,u))}catch{}let z=await y8(D,u,$),Z=new Map;for(let X of B){let O=E0(X),J=OF(X),Q=Number(X.date_created??X.date_create??0),Y=Q?F0(Q):"?",M=await z(O),H=typeof X.id==="string"?X.id:"",j=X.is_sent===!0?" [SENT]":"",A=wu(await Mu(D,J,Z));console.log(`-- ${H} ${M} [${Y}]${j}`);for(let x of A.split(`
123
+ `))console.log(` ${x}`)}}async function Z6(D,u,F){let E=await Pu(D,u),C=CD(E.drafts).map(y).find((M)=>String(M.id)===F);if(!C)console.error(`Draft not found: ${F}`),process.exit(1);let B="";try{({userId:B}=await D0(D,u))}catch{}let $=await y8(D,u,B),z=E0(C),Z=OF(C),X=Number(C.date_created??0),O=String(C.last_updated_ts??"?"),J=await $(z),Y=wu(await Mu(D,Z,new Map));console.log(`id: ${C.id}`),console.log(`channel: ${J} (${z})`),console.log(`created: ${X?F0(X):"?"}`),console.log(`updated: ${F0(Number(O.split(".")[0]))}`),console.log(`status: ${C.is_sent===!0?"sent":"pending"}`),console.log("---"),console.log(Y)}function Bu(...D){return r1(D.join(`
124
+ `)).slice(0,4)}function $u(D,u,F){for(let E of F)console.log(E);if(D!==void 0)console.error(`Code mismatch (got ${D}, expected ${u})`);console.error(`Rerun with --code=${u}`),process.exit(1)}function J6(D){let u=XF(D);if(u)return u.ts?{ref:u.channel,ts:u.ts}:{ref:u.channel};if(D.startsWith("#")||D.startsWith("@")){let F=D.indexOf(":");if(F>0){let E=D.slice(F+1);if(/^\d{10}\.\d{6}$/.test(E))return{ref:D.slice(0,F),ts:E};if(/^\d{4}-\d{2}-\d{2}T/.test(E))return{ref:D.slice(0,F),ts:c8(E)}}}return{ref:D}}async function X6(D,u){let{ref:F,ts:E}=J6(u.target);if(!E)console.error("Error: target must embed a message ts (e.g. #chan:2026-05-11T06:01:04.000100 or a Slack permalink URL)"),process.exit(2);let C;if(u.channelId)C=u.channelId;else C=await TD(D,F);let B=await GF(D,C,E,1),z=CD(B.messages).map(y).find((J)=>String(J.ts)===E);if(!z)console.error(`Message not found at ts=${E} in channel ${C}`),process.exit(1);let Z=typeof z.text==="string"?z.text:"",X=Bu(Z,u.newText);if(u.code!==X)$u(u.code,X,["--- Original message -------------------------",...Z.split(`
125
+ `).map((J)=>` ${J}`),"--- Replacing with ---------------------------",...u.newText.split(`
126
+ `).map((J)=>` ${J}`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);let O=await A8(D,C,E,u.newText);console.log(`\u2713 Edited (ts: ${O})`)}async function Q6(D,u){let F;if(u.channelId)F=u.channelId;else if(u.userId)F=await JF(D,u.userId);else if(u.target.startsWith("#")||u.target.startsWith("@"))F=await TD(D,u.target);else console.error(`Error: target must be #channel-name or @username (got: ${u.target})`),console.error("Use --channel-id=<ID> or --user-id=<ID> to send by raw ID."),process.exit(1);let E=await Ru(D,F,1),C=CD(E.messages).map(y).filter((X)=>X.subtype===void 0||X.subtype===null)[0],B=typeof C?.text==="string"?C.text:"",$=typeof C?.user==="string"?C.user:"?",z=Bu(B,u.message);if(u.code!==z)$u(u.code,z,["--- Last message in channel ------------------",` ${$}: ${B.split(`
127
+ `)[0]?.slice(0,100)??"(empty)"}`,"--- Sending ----------------------------------",` To: ${u.target}${u.thread?` (thread ${u.thread})`:""}`,` Message: ${u.message}`,"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);let Z=await _8(D,F,u.message,u.thread);console.log(`\u2713 Sent (ts: ${Z})`)}function O6(D){if(/^\d{10,}$/.test(D))return parseInt(D,10);let u=new Date(D.replace(" ","T"));if(isNaN(u.getTime()))throw Error(`Cannot parse time: ${D}`);return Math.floor(u.getTime()/1000)}async function Y6(D,u){let F;if(u.channelId)F=u.channelId;else if(u.userId)F=await JF(D,u.userId);else if(u.target.startsWith("#")||u.target.startsWith("@"))F=await TD(D,u.target);else console.error(`Error: target must be #channel-name or @username (got: ${u.target})`),process.exit(1);let E=O6(u.at),C=new Date(E*1000).toISOString(),B=Bu(F,u.message,String(E));if(u.code!==B)$u(u.code,B,["--- Scheduling message -----------------------",` To: ${u.target}${u.thread?` (thread ${u.thread})`:""}`,` At: ${C} (Unix: ${E})`,` Message: ${u.message}`,"---------------------------------------------"]);let $=await K8(D,F,u.message,E,u.thread);console.log(`\u2713 Scheduled (id: ${$}, at: ${C})`)}async function W6(D,u,F){let E;if(F)E=F;else if(u)E=await TD(D,u);let B=(await N8(D,E)).scheduled_messages??[];if(B.length===0){console.log("(no scheduled messages)");return}for(let $ of B){let z=new Date($.post_at*1000).toISOString();console.log(`${$.id} ${z} [${$.channel_id}] ${$.text.split(`
128
+ `)[0]?.slice(0,80)??""}`)}}async function M6(D,u){let F;if(u.channelId)F=u.channelId;else F=await TD(D,u.target);let E=Bu(F,u.id);if(u.code!==E)$u(u.code,E,["--- Deleting scheduled message ---------------",` Channel: ${u.target}`,` ID: ${u.id}`,"---------------------------------------------"]);await T8(D,F,u.id),console.log(`\u2713 Deleted scheduled message ${u.id}`)}async function H6(D,u){let{statSync:F,existsSync:E}=await import("fs"),{basename:C}=await import("path");for(let J of u.filePaths)if(!E(J))console.error(`Error: file not found: ${J}`),process.exit(1);let B;if(u.channelId)B=u.channelId;else if(u.userId)B=await JF(D,u.userId);else if(u.target.startsWith("#")||u.target.startsWith("@"))B=await TD(D,u.target);else console.error(`Error: target must be #channel-name or @username (got: ${u.target})`),process.exit(1);function $(J){return J<1024?`${J} B`:J<1048576?`${(J/1024).toFixed(1)} KB`:`${(J/1048576).toFixed(1)} MB`}let z=u.filePaths.length>1,Z=u.filePaths.map((J)=>{let Q=C(J),Y=z?Q:u.title??Q;return{fp:J,filename:Q,title:Y,sizeFmt:$(F(J).size)}}),X=Bu(B,...Z.flatMap((J)=>[J.fp,J.title]));if(u.code!==X){let J=` To: ${u.target}${u.thread?` (thread ${u.thread})`:""}`,Q=z?[`--- Uploading ${Z.length} files ------------------------`,J,...Z.map((Y)=>` ${Y.filename} (${Y.sizeFmt})`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]:["--- Uploading file ---------------------------",J,` File: ${Z[0].fp}`,` Title: ${Z[0].title}`,` Size: ${Z[0].sizeFmt}`,"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"];$u(u.code,X,Q)}let O=Z.length;for(let J=0;J<O;J++){let Q=Z[J],Y={title:Q.title};if(u.thread!==void 0)Y.threadTs=u.thread;if(u.comment!==void 0&&J===0)Y.initialComment=u.comment;let{fileId:M,permalink:H}=await f8(D,B,Q.fp,Y),j=O>1?`[${J+1}/${O}] `:"";console.log(`${j}\u2713 Uploaded (file_id: ${M}${H?`, url: ${H}`:""})`)}}async function V6(){s1();let D=(F)=>tF(F.workspace),u=(F)=>o2(F.workspace);await m2(RF(process.argv)).scriptName("slack").option("workspace",{alias:"w",type:"string",describe:"Workspace name"}).middleware(async(F)=>{let E=String((F._??[])[0]??"");if(!E||E==="auth"||E==="login")return;try{tF(F.workspace)}catch(C){if((C instanceof Error?C.message:String(C)).startsWith("No profiles configured"))console.log(`No workspace configured. Let's set that up:
129
+ `),await CF(),process.exit(0);throw C}},!0).command(["read [target]","msgs [target]"],"Browse messages",(F)=>F.positional("target",{type:"string",describe:"#channel, @user, or URL"}).option("limit",{alias:"n",type:"number",default:20,describe:"Number of messages"}),async(F)=>{let E=D(F);if(F.target)await D6(E,F.target,F.limit);else await F6(E)}).command("thread <target> <ts>","Show thread messages",(F)=>F.positional("target",{type:"string",demandOption:!0}).positional("ts",{type:"string",demandOption:!0}).option("limit",{alias:"n",type:"number",default:100}),async(F)=>{await u6(D(F),F.target,F.ts,F.limit)}).command(["channel","channels","ch"],"Channel commands",(F)=>F.command(["ls","list"],"List channels",(E)=>E.option("limit",{alias:"n",type:"number",default:200}).option("filter",{alias:"f",type:"string"}).option("all",{type:"boolean",default:!1}).option("format",{type:"string",choices:["text","jsonl"],default:"text"}).option("json",{type:"boolean",default:!1,describe:"Alias for --format=jsonl"}),async(E)=>{await C6(D(E),E.limit,E.filter,E.all,E.json?"jsonl":E.format)}).command("get <channel>","Show channel details",(E)=>E.positional("channel",{type:"string",demandOption:!0,describe:"#name or channel ID"}),async(E)=>{let C=D(E),B=E.channel,$=B.startsWith("#")||B.startsWith("@")||B.startsWith("C")||B.startsWith("G")||B.startsWith("D")?B:`#${B}`,z=await TD(C,$),Z=y(await I8(C,z)),X=y(Z.channel),O=typeof X.name==="string"?X.name:z,Q=X.is_im===!0?"@":"#",Y=String(y(X.purpose).value??""),M=String(y(X.topic).value??""),H=X.num_members??X.member_count??"";if(console.log(`${Q}${O} ${z}`),M)console.log(`topic: ${M}`);if(Y)console.log(`purpose: ${Y}`);if(H)console.log(`members: ${H}`);console.log(`private: ${X.is_private===!0}`)}).demandCommand(1,"").showHelpOnFail(!0)).command(["user","usr"],"User commands",(F)=>F.command(["ls","list"],"List workspace members",(E)=>E.option("limit",{alias:"n",type:"number",default:200}).option("filter",{alias:"f",type:"string"}).option("format",{type:"string",choices:["text","jsonl","yaml"],default:"text"}).option("json",{type:"boolean",default:!1,describe:"Alias for --format=jsonl"}),async(E)=>{let C=E.json?"jsonl":E.format,B=await eF(D(E)),$=E.filter?.toLowerCase(),z=CD(B.members).map(y).filter((X)=>X.deleted!==!0&&X.is_bot!==!0&&String(X.id)!=="USLACKBOT").filter((X)=>{if(!$)return!0;let O=String(X.name??"").toLowerCase(),J=String(y(X.profile).real_name??"").toLowerCase(),Q=String(y(X.profile).email??"").toLowerCase();return O.includes($)||J.includes($)||Q.includes($)}).slice(0,E.limit);if(C==="jsonl"){for(let X of z)console.log(JSON.stringify(X));return}if(C==="yaml"){for(let X of z){let O=function(J,Q=""){if(J===null)return"null";if(typeof J==="string")return J.includes(`
121
130
  `)?`|
122
- ${X.split(`
131
+ ${J.split(`
123
132
  `).join(`
124
- `)}`:X;if(typeof X!=="object")return String(X);if(Array.isArray(X))return X.map((Y)=>`
125
- ${Q} - ${O(Y,Q+" ")}`).join("");return Object.entries(X).map(([Y,M])=>`
126
- ${Q} ${Y}: ${O(M,Q+" ")}`).join("")};console.log("---");for(let[X,Q]of Object.entries(J))console.log(`${X}: ${O(Q)}`)}return}let Z=Intl.DateTimeFormat().resolvedOptions().timeZone;for(let J of z){let O=y(J.profile),X=String(J.name??J.id),Q=String(J.id??""),Y=String(O.display_name||""),M=String(O.real_name||""),H=String(O.email||""),_=String(J.tz??""),f=[...new Set([Y,M].filter((i)=>i&&i!==X))].join(" / "),x=[H,_&&_!==Z?_:""].filter(Boolean).join(" ");console.log(`@${X} ${Q} ${f}${x?" "+x:""}`)}}).command("get <user>","Show user details",(E)=>E.positional("user",{type:"string",demandOption:!0,describe:"@handle or user ID"}),async(E)=>{let C=D(E),B=E.user.startsWith("@")?E.user.slice(1):E.user,$=B;if(!/^U[A-Z0-9]+$/.test(B)){let x=await oF(C),i=zD(x.members).map(y).find((a)=>String(a.name??"")===B);if(!i)console.error(`User not found: @${B}`),process.exit(1);$=String(i.id)}let z=y(await R8(C,$)),Z=y(z.user),J=y(Z.profile),O=Intl.DateTimeFormat().resolvedOptions().timeZone,X=String(Z.name??$),Q=String(Z.id??$),Y=String(J.display_name||""),M=String(J.real_name||""),H=String(J.email||""),_=String(Z.tz??""),S=String(J.phone||""),f=String(J.title||"");console.log(`@${X} ${Q}`);let d=[...new Set([Y,M].filter((x)=>x&&x!==X))];if(d.length)console.log(`name: ${d.join(" / ")}`);if(H)console.log(`email: ${H}`);if(S)console.log(`phone: ${S}`);if(f)console.log(`title: ${f}`);if(_&&_!==O)console.log(`tz: ${_}`)}).demandCommand(1,"").showHelpOnFail(!0)).command("news","Activity feed (mentions to you)",(F)=>F.option("limit",{alias:"l",type:"number",default:20}),async(F)=>{await t3(D(F),F.limit)}).command("search <query>","Full-text search",(F)=>F.positional("query",{type:"string",demandOption:!0}).option("count",{alias:"n",type:"number",default:100}).option("json",{type:"boolean",default:!1,describe:"Output raw JSON"}),async(F)=>{await o3(D(F),F.query,F.count,F.json)}).command("send <target> <message>","Send a message (confirm-hash safety gate)",(F)=>F.positional("target",{type:"string",demandOption:!0}).positional("message",{type:"string",demandOption:!0}).option("thread",{type:"string",describe:"Thread timestamp"}).option("code",{type:"string",describe:"Safety hash to confirm send"}).option("channel-id",{type:"string",describe:"Raw channel ID"}).option("user-id",{type:"string",describe:"Raw user ID (opens DM)"}),async(F)=>{let E={target:F.target,message:F.message};if(F.thread)E.thread=F.thread;if(F.code)E.code=F.code;if(F["channel-id"])E.channelId=F["channel-id"];if(F["user-id"])E.userId=F["user-id"];await F6(D(F),E)}).command("schedule","Manage scheduled messages",(F)=>F.command("send <target> <message>","Schedule a message for later delivery",(E)=>E.positional("target",{type:"string",demandOption:!0}).positional("message",{type:"string",demandOption:!0}).option("at",{type:"string",demandOption:!0,describe:"Delivery time (ISO datetime or Unix ts)"}).option("thread",{type:"string",describe:"Thread timestamp"}).option("code",{type:"string",describe:"Safety hash to confirm"}).option("channel-id",{type:"string",describe:"Raw channel ID"}).option("user-id",{type:"string",describe:"Raw user ID (opens DM)"}),async(E)=>{let C={target:E.target,message:E.message,at:E.at};if(E.thread)C.thread=E.thread;if(E.code)C.code=E.code;if(E["channel-id"])C.channelId=E["channel-id"];if(E["user-id"])C.userId=E["user-id"];await C6(D(E),C)}).command(["ls","list"],"List pending scheduled messages",(E)=>E.positional("target",{type:"string",describe:"#channel to filter by"}).option("channel-id",{type:"string",describe:"Raw channel ID"}),async(E)=>{await B6(D(E),E.target,E["channel-id"])}).command("rm <target> <id>","Delete a scheduled message",(E)=>E.positional("target",{type:"string",demandOption:!0,describe:"#channel or @user"}).positional("id",{type:"string",demandOption:!0,describe:"Scheduled message ID"}).option("code",{type:"string",describe:"Safety hash to confirm"}).option("channel-id",{type:"string",describe:"Raw channel ID"}),async(E)=>{let C={target:E.target,id:E.id};if(E.code)C.code=E.code;if(E["channel-id"])C.channelId=E["channel-id"];await $6(D(E),C)}).demandCommand(1,"").showHelpOnFail(!0),()=>{}).command("edit <target> <newText>","Edit a sent message",(F)=>F.positional("target",{type:"string",demandOption:!0,describe:"#chan:ts, @user:ts, or permalink"}).positional("newText",{type:"string",demandOption:!0}).option("code",{type:"string",describe:"Safety hash to confirm edit"}).option("channel-id",{type:"string",describe:"Raw channel ID"}),async(F)=>{let E={target:F.target,newText:F.newText};if(F.code)E.code=F.code;if(F["channel-id"])E.channelId=F["channel-id"];await u6(D(F),E)}).command("upload <target> <file..>","Upload one or more files to a channel or DM",(F)=>F.positional("target",{type:"string",demandOption:!0}).positional("file",{type:"string",array:!0,demandOption:!0,describe:"Path(s) to file(s)"}).option("title",{type:"string",describe:"Title (single file only)"}).option("thread",{type:"string",describe:"Thread timestamp"}).option("comment",{type:"string",describe:"Initial comment (first file)"}).option("code",{type:"string",describe:"4-hex safety code to confirm upload"}).option("channel-id",{type:"string"}).option("user-id",{type:"string"}),async(F)=>{let E={target:F.target,filePaths:F.file};if(F.title)E.title=F.title;if(F.thread)E.thread=F.thread;if(F.comment)E.comment=F.comment;if(F.code)E.code=F.code;if(F["channel-id"])E.channelId=F["channel-id"];if(F["user-id"])E.userId=F["user-id"];await z6(D(F),E)}).command("dump","Bulk export channel history as markdown",(F)=>F.option("days",{alias:"d",type:"number",default:7,describe:"Days of history"}).option("limit",{alias:"l",type:"number",default:200}).option("filter",{alias:"f",type:"string",describe:"Filter channel names"}),async(F)=>{await s3(D(F),F.days,F.limit,F.filter)}).command("drafts","Manage message drafts (requires xoxc desktop token)",(F)=>F.command(["$0","ls","list"],"List pending drafts",(E)=>E.option("all",{alias:"a",type:"boolean",default:!1,describe:"Include sent drafts"}),async(E)=>{await a3(D(E),u(E),E.all)}).command(["new <channel> [text..]","save <channel> [text..]"],"Create a draft",(E)=>E.positional("channel",{type:"string",demandOption:!0}).positional("text",{type:"string",array:!0,default:[]}),async(E)=>{let C=D(E),B=u(E),$=E.text.join(" ");if(!$)console.error("Usage: slack drafts new <#channel|@user> <text>"),process.exit(2);let z=await ND(C,E.channel,B),Z=await K8(C,z,$,B);console.log(`\u2713 Draft created (id: ${y(Z.draft).id??"?"})`)}).command("get <id>","Show a draft",(E)=>E.positional("id",{type:"string",demandOption:!0}),async(E)=>{await e3(D(E),u(E),E.id)}).command(["edit <id> [text..]","update <id> [text..]"],"Edit a draft",(E)=>E.positional("id",{type:"string",demandOption:!0}).positional("text",{type:"string",array:!0,default:[]}).option("code",{type:"string"}),async(E)=>{let C=D(E),B=u(E),$=E.text.join(" ");if(!$)console.error("Usage: slack drafts edit <id> <new-text>"),process.exit(2);let z=await Pu(C,B),Z=zD(z.drafts).map(y).find((Q)=>String(Q.id)===E.id);if(!Z)console.error(`Draft not found: ${E.id}`),process.exit(1);let J=zF(Z),O=Cu(J,$);if(E.code!==O)Bu(E.code,O,["--- Current draft ----------------------------",...J.split(`
133
+ `)}`:J;if(typeof J!=="object")return String(J);if(Array.isArray(J))return J.map((Y)=>`
134
+ ${Q} - ${O(Y,Q+" ")}`).join("");return Object.entries(J).map(([Y,M])=>`
135
+ ${Q} ${Y}: ${O(M,Q+" ")}`).join("")};console.log("---");for(let[J,Q]of Object.entries(X))console.log(`${J}: ${O(Q)}`)}return}let Z=Intl.DateTimeFormat().resolvedOptions().timeZone;for(let X of z){let O=y(X.profile),J=String(X.name??X.id),Q=String(X.id??""),Y=String(O.display_name||""),M=String(O.real_name||""),H=String(O.email||""),j=String(X.tz??""),x=[...new Set([Y,M].filter((i)=>i&&i!==J))].join(" / "),f=[H,j&&j!==Z?j:""].filter(Boolean).join(" ");console.log(`@${J} ${Q} ${x}${f?" "+f:""}`)}}).command("get <user>","Show user details",(E)=>E.positional("user",{type:"string",demandOption:!0,describe:"@handle or user ID"}),async(E)=>{let C=D(E),B=E.user.startsWith("@")?E.user.slice(1):E.user,$=B;if(!/^U[A-Z0-9]+$/.test(B)){let f=await eF(C),i=CD(f.members).map(y).find((a)=>String(a.name??"")===B);if(!i)console.error(`User not found: @${B}`),process.exit(1);$=String(i.id)}let z=y(await w8(C,$)),Z=y(z.user),X=y(Z.profile),O=Intl.DateTimeFormat().resolvedOptions().timeZone,J=String(Z.name??$),Q=String(Z.id??$),Y=String(X.display_name||""),M=String(X.real_name||""),H=String(X.email||""),j=String(Z.tz??""),A=String(X.phone||""),x=String(X.title||"");console.log(`@${J} ${Q}`);let n=[...new Set([Y,M].filter((f)=>f&&f!==J))];if(n.length)console.log(`name: ${n.join(" / ")}`);if(H)console.log(`email: ${H}`);if(A)console.log(`phone: ${A}`);if(x)console.log(`title: ${x}`);if(j&&j!==O)console.log(`tz: ${j}`)}).demandCommand(1,"").showHelpOnFail(!0)).command("news","Activity feed (mentions to you)",(F)=>F.option("limit",{alias:"l",type:"number",default:20}),async(F)=>{await E6(D(F),F.limit)}).command("search <query>","Full-text search",(F)=>F.positional("query",{type:"string",demandOption:!0}).option("count",{alias:"n",type:"number",default:100}).option("json",{type:"boolean",default:!1,describe:"Output raw JSON"}),async(F)=>{await B6(D(F),F.query,F.count,F.json)}).command("send <target> <message>","Send a message (confirm-hash safety gate)",(F)=>F.positional("target",{type:"string",demandOption:!0}).positional("message",{type:"string",demandOption:!0}).option("thread",{type:"string",describe:"Thread timestamp"}).option("code",{type:"string",describe:"Safety hash to confirm send"}).option("channel-id",{type:"string",describe:"Raw channel ID"}).option("user-id",{type:"string",describe:"Raw user ID (opens DM)"}),async(F)=>{let E={target:F.target,message:F.message};if(F.thread)E.thread=F.thread;if(F.code)E.code=F.code;if(F["channel-id"])E.channelId=F["channel-id"];if(F["user-id"])E.userId=F["user-id"];await Q6(D(F),E)}).command("schedule","Manage scheduled messages",(F)=>F.command("send <target> <message>","Schedule a message for later delivery",(E)=>E.positional("target",{type:"string",demandOption:!0}).positional("message",{type:"string",demandOption:!0}).option("at",{type:"string",demandOption:!0,describe:"Delivery time (ISO datetime or Unix ts)"}).option("thread",{type:"string",describe:"Thread timestamp"}).option("code",{type:"string",describe:"Safety hash to confirm"}).option("channel-id",{type:"string",describe:"Raw channel ID"}).option("user-id",{type:"string",describe:"Raw user ID (opens DM)"}),async(E)=>{let C={target:E.target,message:E.message,at:E.at};if(E.thread)C.thread=E.thread;if(E.code)C.code=E.code;if(E["channel-id"])C.channelId=E["channel-id"];if(E["user-id"])C.userId=E["user-id"];await Y6(D(E),C)}).command(["ls","list"],"List pending scheduled messages",(E)=>E.positional("target",{type:"string",describe:"#channel to filter by"}).option("channel-id",{type:"string",describe:"Raw channel ID"}),async(E)=>{await W6(D(E),E.target,E["channel-id"])}).command("rm <target> <id>","Delete a scheduled message",(E)=>E.positional("target",{type:"string",demandOption:!0,describe:"#channel or @user"}).positional("id",{type:"string",demandOption:!0,describe:"Scheduled message ID"}).option("code",{type:"string",describe:"Safety hash to confirm"}).option("channel-id",{type:"string",describe:"Raw channel ID"}),async(E)=>{let C={target:E.target,id:E.id};if(E.code)C.code=E.code;if(E["channel-id"])C.channelId=E["channel-id"];await M6(D(E),C)}).demandCommand(1,"").showHelpOnFail(!0),()=>{}).command("edit <target> <newText>","Edit a sent message",(F)=>F.positional("target",{type:"string",demandOption:!0,describe:"#chan:ts, @user:ts, or permalink"}).positional("newText",{type:"string",demandOption:!0}).option("code",{type:"string",describe:"Safety hash to confirm edit"}).option("channel-id",{type:"string",describe:"Raw channel ID"}),async(F)=>{let E={target:F.target,newText:F.newText};if(F.code)E.code=F.code;if(F["channel-id"])E.channelId=F["channel-id"];await X6(D(F),E)}).command("upload <target> <file..>","Upload one or more files to a channel or DM",(F)=>F.positional("target",{type:"string",demandOption:!0}).positional("file",{type:"string",array:!0,demandOption:!0,describe:"Path(s) to file(s)"}).option("title",{type:"string",describe:"Title (single file only)"}).option("thread",{type:"string",describe:"Thread timestamp"}).option("comment",{type:"string",describe:"Initial comment (first file)"}).option("code",{type:"string",describe:"4-hex safety code to confirm upload"}).option("channel-id",{type:"string"}).option("user-id",{type:"string"}),async(F)=>{let E={target:F.target,filePaths:F.file};if(F.title)E.title=F.title;if(F.thread)E.thread=F.thread;if(F.comment)E.comment=F.comment;if(F.code)E.code=F.code;if(F["channel-id"])E.channelId=F["channel-id"];if(F["user-id"])E.userId=F["user-id"];await H6(D(F),E)}).command("dump","Bulk export channel history as markdown",(F)=>F.option("days",{alias:"d",type:"number",default:7,describe:"Days of history"}).option("limit",{alias:"l",type:"number",default:200}).option("filter",{alias:"f",type:"string",describe:"Filter channel names"}),async(F)=>{await $6(D(F),F.days,F.limit,F.filter)}).command("drafts","Manage message drafts (requires xoxc desktop token)",(F)=>F.command(["$0","ls","list"],"List pending drafts",(E)=>E.option("all",{alias:"a",type:"boolean",default:!1,describe:"Include sent drafts"}),async(E)=>{await G6(D(E),u(E),E.all)}).command(["new <channel> [text..]","save <channel> [text..]"],"Create a draft",(E)=>E.positional("channel",{type:"string",demandOption:!0}).positional("text",{type:"string",array:!0,default:[]}),async(E)=>{let C=D(E),B=u(E),$=E.text.join(" ");if(!$)console.error("Usage: slack drafts new <#channel|@user> <text>"),process.exit(2);let z=await TD(C,E.channel,B),Z=await R8(C,z,$,B);console.log(`\u2713 Draft created (id: ${y(Z.draft).id??"?"})`)}).command("get <id>","Show a draft",(E)=>E.positional("id",{type:"string",demandOption:!0}),async(E)=>{await Z6(D(E),u(E),E.id)}).command(["edit <id> [text..]","update <id> [text..]"],"Edit a draft",(E)=>E.positional("id",{type:"string",demandOption:!0}).positional("text",{type:"string",array:!0,default:[]}).option("code",{type:"string"}),async(E)=>{let C=D(E),B=u(E),$=E.text.join(" ");if(!$)console.error("Usage: slack drafts edit <id> <new-text>"),process.exit(2);let z=await Pu(C,B),Z=CD(z.drafts).map(y).find((Q)=>String(Q.id)===E.id);if(!Z)console.error(`Draft not found: ${E.id}`),process.exit(1);let X=OF(Z),O=Bu(X,$);if(E.code!==O)$u(E.code,O,["--- Current draft ----------------------------",...X.split(`
127
136
  `).map((Q)=>` ${Q}`),"--- Replacing with ---------------------------",...$.split(`
128
- `).map((Q)=>` ${Q}`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);let X=await T8(C,E.id,eF(Z),$,B);console.log(`\u2713 Draft updated (id: ${y(X.draft).id??"?"})`)}).command(["delete <id>","rm <id>"],"Delete a draft",(E)=>E.positional("id",{type:"string",demandOption:!0}).option("code",{type:"string"}),async(E)=>{let C=D(E),B=u(E),$=await Pu(C,B),z=zD($.drafts).map(y).find((O)=>String(O.id)===E.id);if(!z)console.error(`Draft not found: ${E.id}`),process.exit(1);let Z=zF(z),J=Cu(E.id,Z);if(E.code!==J)Bu(E.code,J,["\u2500-- Deleting draft \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",` id: ${E.id}`,...Z.split(`
129
- `).map((O)=>` ${O}`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);await L8(C,E.id,B),console.log(`\u2713 Draft deleted (id: ${E.id})`)})).command("auth","Authentication and workspace management",(F)=>F.command("login","Add a workspace (interactive or --token for non-interactive)",(E)=>E.option("token",{type:"string",describe:"Token to save directly (non-interactive)"}).option("name",{type:"string",describe:"Workspace name (used with --token)"}),async(E)=>{await FF({...E.token!==void 0?{token:E.token}:{},...E.name!==void 0?{name:E.name}:{}})}).command(["ls","status"],"Show auth status",()=>{},()=>{let E=i2();if(E.length===0){console.log("No workspaces configured. Run: slack auth login");return}for(let{name:C,profile:B,current:$}of E)console.log(`${$?"* ":" "}${C} ${B.team} (${B.user}) ${B.url??""}`)}).command("use <name>","Switch active workspace",(E)=>E.positional("name",{type:"string",demandOption:!0}).option("g",{type:"boolean",default:!1,describe:"Write global lockfile (~/.slack-cli/workspace)"}),(E)=>{if(!E.g)m3(Eu(process.cwd(),".slack-cli"));k2(E.name,E.g),console.log(`Switched to workspace "${E.name}" ${E.g?"globally":"locally"}`)}).command(["rm <name>","remove <name>"],"Remove a workspace",(E)=>E.positional("name",{type:"string",demandOption:!0}),(E)=>{n2(E.name),console.log(`Removed workspace "${E.name}"`)}).command("$0",!1,()=>{},()=>{F.showHelp(),process.exit(0)})).command("tail [target]","Stream new messages in real time (like tail -f)",(F)=>F.positional("target",{type:"string",describe:"#channel or @user to follow"}).option("since",{type:"string",describe:"Backfill from N ago (e.g. 10m, 2h, 1d)"}).option("thread",{type:"string",describe:"Follow a single thread by timestamp"}).option("me",{type:"boolean",default:!1,describe:"Filter to messages that mention you"}).option("interval",{type:"number",default:60000,describe:"Poll interval in ms (default 60s; use --interval=3000 for near-real-time)"}),async(F)=>{let E=D(F),C=new AbortController;process.on("SIGINT",()=>{C.abort(),process.exit(0)}),await J8(E,F.target,{...F.since!==void 0?{since:F.since}:{},...F.thread!==void 0?{thread:F.thread}:{},me:F.me,interval:F.interval},C.signal)}).command("login",!1,(F)=>F.option("token",{type:"string"}).option("name",{type:"string"}),async(F)=>{await FF({...F.token!==void 0?{token:F.token}:{},...F.name!==void 0?{name:F.name}:{}})}).demandCommand(1,"Specify a command. Run with --help for usage.").strict().help().alias("help","h").parseAsync()}G6().catch((D)=>{console.error(D instanceof Error?D.message:String(D)),process.exit(1)});
137
+ `).map((Q)=>` ${Q}`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);let J=await S8(C,E.id,E0(Z),$,B);console.log(`\u2713 Draft updated (id: ${y(J.draft).id??"?"})`)}).command(["delete <id>","rm <id>"],"Delete a draft",(E)=>E.positional("id",{type:"string",demandOption:!0}).option("code",{type:"string"}),async(E)=>{let C=D(E),B=u(E),$=await Pu(C,B),z=CD($.drafts).map(y).find((O)=>String(O.id)===E.id);if(!z)console.error(`Draft not found: ${E.id}`),process.exit(1);let Z=OF(z),X=Bu(E.id,Z);if(E.code!==X)$u(E.code,X,["\u2500-- Deleting draft \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",` id: ${E.id}`,...Z.split(`
138
+ `).map((O)=>` ${O}`),"--------------------------------\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"]);await x8(C,E.id,B),console.log(`\u2713 Draft deleted (id: ${E.id})`)})).command("auth","Authentication and workspace management",(F)=>F.command("login","Add a workspace (interactive or --token for non-interactive)",(E)=>E.option("token",{type:"string",describe:"Token to save directly (non-interactive)"}).option("name",{type:"string",describe:"Workspace name (used with --token)"}),async(E)=>{await CF({...E.token!==void 0?{token:E.token}:{},...E.name!==void 0?{name:E.name}:{}})}).command(["ls","status"],"Show auth status",()=>{},()=>{let E=g2();if(E.length===0){console.log("No workspaces configured. Run: slack auth login");return}for(let{name:C,profile:B,current:$}of E)console.log(`${$?"* ":" "}${C} ${B.team} (${B.user}) ${B.url??""}`)}).command("use <name>","Switch active workspace",(E)=>E.positional("name",{type:"string",demandOption:!0}).option("g",{type:"boolean",default:!1,describe:"Write global lockfile (~/.slack-cli/workspace)"}),(E)=>{if(!E.g)o1(Cu(process.cwd(),".slack-cli"));l2(E.name,E.g),console.log(`Switched to workspace "${E.name}" ${E.g?"globally":"locally"}`)}).command(["rm <name>","remove <name>"],"Remove a workspace",(E)=>E.positional("name",{type:"string",demandOption:!0}),(E)=>{t2(E.name),console.log(`Removed workspace "${E.name}"`)}).command("$0",!1,()=>{},()=>{F.showHelp(),process.exit(0)})).command("tail [target]","Stream new messages in real time (like tail -f)",(F)=>F.positional("target",{type:"string",describe:"#channel or @user to follow"}).option("since",{type:"string",describe:"Backfill from N ago (e.g. 10m, 2h, 1d)"}).option("thread",{type:"string",describe:"Follow a single thread by timestamp"}).option("me",{type:"boolean",default:!1,describe:"Filter to messages that mention you"}).option("interval",{type:"number",default:60000,describe:"Poll interval in ms (default 60s; use --interval=3000 for near-real-time)"}).option("rtm",{type:"boolean",default:!0,describe:"Use RTM WebSocket when available (xoxc + cookie); pass --no-rtm to force polling"}),async(F)=>{let E=D(F),C=u(F),B=new AbortController;process.on("SIGINT",()=>{B.abort(),process.exit(0)}),await M8(E,F.target,{...F.since!==void 0?{since:F.since}:{},...F.thread!==void 0?{thread:F.thread}:{},me:F.me,interval:F.interval,...C!==void 0?{cookie:C}:{},...F.rtm===!1?{noRtm:!0}:{}},B.signal)}).command("login",!1,(F)=>F.option("token",{type:"string"}).option("name",{type:"string"}),async(F)=>{await CF({...F.token!==void 0?{token:F.token}:{},...F.name!==void 0?{name:F.name}:{}})}).demandCommand(1,"Specify a command. Run with --help for usage.").strict().help().alias("help","h").parseAsync()}V6().catch((D)=>{console.error(D instanceof Error?D.message:String(D)),process.exit(1)});