@nightintelligence/cloudflare-workers-utils 0.35.0-patch2 → 0.35.0-patch4
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/browser.mjs +2 -2
- package/dist/{chunk-NXPJWJ2B.mjs → chunk-47QFQIPP.mjs} +7 -7
- package/dist/{chunk-NXPJWJ2B.mjs.map → chunk-47QFQIPP.mjs.map} +1 -1
- package/dist/{chunk-OPAKTV2K.mjs → chunk-555CCIJE.mjs} +4 -4
- package/dist/{chunk-OPAKTV2K.mjs.map → chunk-555CCIJE.mjs.map} +1 -1
- package/dist/chunk-CGILA3WO.mjs +12 -0
- package/dist/{chunk-6LYDFTTF.mjs.map → chunk-CGILA3WO.mjs.map} +1 -1
- package/dist/{chunk-3D4BXUZX.mjs → chunk-FEHWZI5W.mjs} +3 -3
- package/dist/{chunk-3D4BXUZX.mjs.map → chunk-FEHWZI5W.mjs.map} +1 -1
- package/dist/{chunk-CPLEE7LH.mjs → chunk-KAEJMITB.mjs} +3 -3
- package/dist/{chunk-CPLEE7LH.mjs.map → chunk-KAEJMITB.mjs.map} +1 -1
- package/dist/{chunk-VKFVZ67V.mjs → chunk-T6I7NOR4.mjs} +3 -3
- package/dist/{chunk-VKFVZ67V.mjs.map → chunk-T6I7NOR4.mjs.map} +1 -1
- package/dist/{chunk-W7DIL5J2.mjs → chunk-VTOON473.mjs} +4 -34
- package/dist/chunk-VTOON473.mjs.map +1 -0
- package/dist/chunk-W4SU7D4X.mjs +575 -0
- package/dist/chunk-W4SU7D4X.mjs.map +1 -0
- package/dist/{chunk-IGC3TZGH.mjs → chunk-YTEYGQOX.mjs} +4 -4
- package/dist/{chunk-IGC3TZGH.mjs.map → chunk-YTEYGQOX.mjs.map} +1 -1
- package/dist/{chunk-ZQ2EZEOC.mjs → chunk-Z7Q743IF.mjs} +3 -3
- package/dist/{chunk-ZQ2EZEOC.mjs.map → chunk-Z7Q743IF.mjs.map} +1 -1
- package/dist/{chunk-ZLUHKBEC.mjs → chunk-ZZBYXY7A.mjs} +3 -3
- package/dist/{chunk-ZLUHKBEC.mjs.map → chunk-ZZBYXY7A.mjs.map} +1 -1
- package/dist/compatibility-date.mjs +2 -2
- package/dist/compliance.mjs +6 -7
- package/dist/docker-path.mjs +3 -3
- package/dist/errors.mjs +2 -2
- package/dist/fs-helpers.mjs +2 -2
- package/dist/global-wrangler-config-path.mjs +3 -3
- package/dist/index.mjs +402 -17128
- package/dist/index.mjs.map +1 -1
- package/dist/local-env.mjs +3 -78
- package/dist/local-env.mjs.map +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/prometheus-metrics.mjs +2 -2
- package/dist/test-helpers/index.mjs +4 -5
- package/dist/test-helpers/index.mjs.map +1 -1
- package/dist/zod-format.mjs +2 -2
- package/package.json +1 -1
- package/dist/chunk-4RE36JUD.mjs +0 -3160
- package/dist/chunk-4RE36JUD.mjs.map +0 -1
- package/dist/chunk-6LYDFTTF.mjs +0 -40
- package/dist/chunk-G5FCNCLK.mjs +0 -47
- package/dist/chunk-G5FCNCLK.mjs.map +0 -1
- package/dist/chunk-W7DIL5J2.mjs.map +0 -1
- package/dist/open-OYMIZX6T.mjs +0 -609
- package/dist/open-OYMIZX6T.mjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../node_modules/.pnpm/is-docker@3.0.0/node_modules/is-docker/index.js","../../../node_modules/.pnpm/is-inside-container@1.0.0/node_modules/is-inside-container/index.js","../../../node_modules/.pnpm/is-wsl@3.1.0/node_modules/is-wsl/index.js","../../../node_modules/.pnpm/powershell-utils@0.1.0/node_modules/powershell-utils/index.js","../../../node_modules/.pnpm/wsl-utils@0.3.1/node_modules/wsl-utils/utilities.js","../../../node_modules/.pnpm/wsl-utils@0.3.1/node_modules/wsl-utils/index.js","../../../node_modules/.pnpm/define-lazy-prop@3.0.0/node_modules/define-lazy-prop/index.js","../../../node_modules/.pnpm/default-browser-id@5.0.1/node_modules/default-browser-id/index.js","../../../node_modules/.pnpm/run-applescript@7.1.0/node_modules/run-applescript/index.js","../../../node_modules/.pnpm/bundle-name@4.1.0/node_modules/bundle-name/index.js","../../../node_modules/.pnpm/default-browser@5.4.0/node_modules/default-browser/windows.js","../../../node_modules/.pnpm/default-browser@5.4.0/node_modules/default-browser/index.js","../../../node_modules/.pnpm/is-in-ssh@1.0.0/node_modules/is-in-ssh/index.js","../../../node_modules/.pnpm/open@11.0.0/node_modules/open/index.js"],"names":["fs","process","execFile","promisify","childProcess","fsConstants","powerShellPath","path","execFileAsync","defaultBrowser","__dirname","apps"],"mappings":";;;;;;;;;;;AAEA,IAAI,cAAA;AAEJ,SAAS,YAAA,GAAe;AACvB,EAAA,IAAI;AACH,IAAA,EAAA,CAAG,SAAS,aAAa,CAAA;AACzB,IAAA,OAAO,IAAA;AAAA,EACR,CAAA,CAAA,MAAQ;AACP,IAAA,OAAO,KAAA;AAAA,EACR;AACD;AAPS,MAAA,CAAA,YAAA,EAAA,cAAA,CAAA;AAST,SAAS,eAAA,GAAkB;AAC1B,EAAA,IAAI;AACH,IAAA,OAAO,GAAG,YAAA,CAAa,mBAAA,EAAqB,MAAM,CAAA,CAAE,SAAS,QAAQ,CAAA;AAAA,EACtE,CAAA,CAAA,MAAQ;AACP,IAAA,OAAO,KAAA;AAAA,EACR;AACD;AANS,MAAA,CAAA,eAAA,EAAA,iBAAA,CAAA;AAQM,SAAR,QAAA,GAA4B;AAElC,EAAA,IAAI,mBAAmB,MAAA,EAAW;AACjC,IAAA,cAAA,GAAiB,YAAA,MAAkB,eAAA,EAAgB;AAAA,EACpD;AAEA,EAAA,OAAO,cAAA;AACR;AAPwB,MAAA,CAAA,QAAA,EAAA,UAAA,CAAA;;;AClBxB,IAAI,YAAA;AAGJ,IAAM,kCAAkB,MAAA,CAAA,MAAM;AAC7B,EAAA,IAAI;AACH,IAAAA,EAAAA,CAAG,SAAS,oBAAoB,CAAA;AAChC,IAAA,OAAO,IAAA;AAAA,EACR,CAAA,CAAA,MAAQ;AACP,IAAA,OAAO,KAAA;AAAA,EACR;AACD,CAAA,EAPwB,iBAAA,CAAA;AAST,SAAR,iBAAA,GAAqC;AAE3C,EAAA,IAAI,iBAAiB,MAAA,EAAW;AAC/B,IAAA,YAAA,GAAe,eAAA,MAAqB,QAAA,EAAS;AAAA,EAC9C;AAEA,EAAA,OAAO,YAAA;AACR;AAPwB,MAAA,CAAA,iBAAA,EAAA,mBAAA,CAAA;;;ACVxB,IAAM,wBAAQ,MAAA,CAAA,MAAM;AACnB,EAAA,IAAIC,QAAA,CAAQ,aAAa,OAAA,EAAS;AACjC,IAAA,OAAO,KAAA;AAAA,EACR;AAEA,EAAA,IAAI,GAAG,OAAA,EAAQ,CAAE,aAAY,CAAE,QAAA,CAAS,WAAW,CAAA,EAAG;AACrD,IAAA,IAAI,mBAAkB,EAAG;AACxB,MAAA,OAAO,KAAA;AAAA,IACR;AAEA,IAAA,OAAO,IAAA;AAAA,EACR;AAEA,EAAA,IAAI;AACH,IAAA,OAAOD,EAAAA,CAAG,YAAA,CAAa,eAAA,EAAiB,MAAM,CAAA,CAAE,WAAA,EAAY,CAAE,QAAA,CAAS,WAAW,CAAA,GAC/E,CAAC,iBAAA,EAAkB,GAAI,KAAA;AAAA,EAC3B,CAAA,CAAA,MAAQ;AACP,IAAA,OAAO,KAAA;AAAA,EACR;AACD,CAAA,EAnBc,OAAA,CAAA;AAqBd,IAAO,cAAA,GAAQC,QAAA,CAAQ,GAAA,CAAI,eAAA,GAAkB,QAAQ,KAAA,EAAM;ACpB3D,IAAM,QAAA,GAAW,SAAA,CAAU,YAAA,CAAa,QAAQ,CAAA;AAEzC,IAAM,cAAA,mBAAiB,MAAA,CAAA,MAAM,CAAA,EAAGA,QAAAA,CAAQ,GAAA,CAAI,UAAA,IAAcA,QAAAA,CAAQ,GAAA,CAAI,MAAA,IAAU,MAAA,CAAO,GAAA,CAAA,UAAA,CAAe,CAAA,mDAAA,CAAA,EAA/E,gBAAA,CAAA;AAkBvB,IAAM,iBAAA,mBAAoB,MAAA,CAAA,OAAO,OAAA,EAAS,OAAA,GAAU,EAAC,KAAM;AACjE,EAAA,MAAM;AAAA,IACL,cAAA,EAAgB,MAAA;AAAA,IAChB,GAAG;AAAA,GACJ,GAAI,OAAA;AAEJ,EAAA,MAAM,cAAA,GAAiB,iBAAA,CAAkB,aAAA,CAAc,OAAO,CAAA;AAE9D,EAAA,OAAO,QAAA;AAAA,IACN,UAAU,cAAA,EAAe;AAAA,IACzB;AAAA,MACC,GAAG,iBAAA,CAAkB,eAAA;AAAA,MACrB;AAAA,KACD;AAAA,IACA;AAAA,MACC,QAAA,EAAU,MAAA;AAAA,MACV,GAAG;AAAA;AACJ,GACD;AACD,CAAA,EAnBiC,mBAAA,CAAA;AAqBjC,iBAAA,CAAkB,eAAA,GAAkB;AAAA,EACnC,YAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,QAAA;AAAA,EACA;AACD,CAAA;AAEA,iBAAA,CAAkB,aAAA,GAAgB,aAAW,MAAA,CAAO,IAAA,CAAK,SAAS,SAAS,CAAA,CAAE,SAAS,QAAQ,CAAA;AAE9F,iBAAA,CAAkB,cAAA,GAAiB,WAAS,CAAA,CAAA,EAAI,MAAA,CAAO,KAAK,CAAA,CAAE,UAAA,CAAW,GAAA,EAAM,IAAM,CAAC,CAAA,CAAA,CAAA;;;ACzD/E,SAAS,0BAA0B,OAAA,EAAS;AAClD,EAAA,KAAA,MAAW,IAAA,IAAQ,OAAA,CAAQ,KAAA,CAAM,IAAI,CAAA,EAAG;AAEvC,IAAA,IAAI,OAAA,CAAQ,IAAA,CAAK,IAAI,CAAA,EAAG;AACvB,MAAA;AAAA,IACD;AAGA,IAAA,MAAM,KAAA,GAAQ,qDAAA,CAAsD,IAAA,CAAK,IAAI,CAAA;AAC7E,IAAA,IAAI,CAAC,KAAA,EAAO;AACX,MAAA;AAAA,IACD;AAEA,IAAA,OAAO,MAAM,MAAA,CAAO,UAAA,CAClB,MAAK,CAEL,UAAA,CAAW,gBAAgB,EAAE,CAAA;AAAA,EAChC;AACD;AAlBgB,MAAA,CAAA,yBAAA,EAAA,2BAAA,CAAA;;;ACOhB,IAAMC,SAAAA,GAAWC,SAAAA,CAAUC,YAAAA,CAAa,QAAQ,CAAA;AAEzC,IAAM,sCAAuB,CAAA,MAAM;AAGzC,EAAA,MAAM,iBAAA,GAAoB,OAAA;AAE1B,EAAA,IAAI,UAAA;AAEJ,EAAA,OAAO,iBAAkB;AACxB,IAAA,IAAI,UAAA,EAAY;AAEf,MAAA,OAAO,UAAA;AAAA,IACR;AAEA,IAAA,MAAM,cAAA,GAAiB,eAAA;AAEvB,IAAA,IAAI,kBAAA,GAAqB,KAAA;AACzB,IAAA,IAAI;AACH,MAAA,MAAMJ,GAAAA,CAAG,MAAA,CAAO,cAAA,EAAgBK,SAAA,CAAY,IAAI,CAAA;AAChD,MAAA,kBAAA,GAAqB,IAAA;AAAA,IACtB,CAAA,CAAA,MAAQ;AAAA,IAAC;AAET,IAAA,IAAI,CAAC,kBAAA,EAAoB;AACxB,MAAA,OAAO,iBAAA;AAAA,IACR;AAEA,IAAA,MAAM,aAAA,GAAgB,MAAML,GAAAA,CAAG,QAAA,CAAS,gBAAgB,EAAC,QAAA,EAAU,QAAO,CAAA;AAC1E,IAAA,MAAM,gBAAA,GAAmB,0BAA0B,aAAa,CAAA;AAEhE,IAAA,IAAI,qBAAqB,MAAA,EAAW;AACnC,MAAA,OAAO,iBAAA;AAAA,IACR;AAEA,IAAA,UAAA,GAAa,gBAAA;AACb,IAAA,UAAA,GAAa,WAAW,QAAA,CAAS,GAAG,CAAA,GAAI,UAAA,GAAa,GAAG,UAAU,CAAA,CAAA,CAAA;AAElE,IAAA,OAAO,UAAA;AAAA,EACR,CAAA;AACD,CAAA,GAAG;AAEI,IAAM,wCAAwB,MAAA,CAAA,YAAY;AAChD,EAAA,MAAM,UAAA,GAAa,MAAM,mBAAA,EAAoB;AAC7C,EAAA,OAAO,GAAG,UAAU,CAAA,wDAAA,CAAA;AACrB,CAAA,EAHqC,uBAAA,CAAA;AAK9B,IAAMM,eAAAA,GAAiB,iBAAQ,qBAAA,GAAwB,cAAA;AAG9D,IAAI,0BAAA;AAEG,IAAM,sCAAsB,MAAA,CAAA,YAAY;AAC9C,EAAA,0BAAA,KAAA,CAAgC,YAAY;AAC3C,IAAA,IAAI;AACH,MAAA,MAAM,MAAA,GAAS,MAAMA,eAAAA,EAAe;AACpC,MAAA,MAAMN,GAAAA,CAAG,MAAA,CAAO,MAAA,EAAQK,SAAA,CAAY,IAAI,CAAA;AACxC,MAAA,OAAO,IAAA;AAAA,IACR,CAAA,CAAA,MAAQ;AAEP,MAAA,OAAO,KAAA;AAAA,IACR;AAAA,EACD,CAAA,GAAG;AAEH,EAAA,OAAO,0BAAA;AACR,CAAA,EAbmC,qBAAA,CAAA;AAe5B,IAAM,oCAAoB,MAAA,CAAA,YAAY;AAC5C,EAAA,MAAM,MAAA,GAAS,MAAMC,eAAAA,EAAe;AACpC,EAAA,MAAM,UAAU,MAAA,CAAO,GAAA,CAAA,qHAAA,CAAA;AAEvB,EAAA,MAAM,EAAC,QAAM,GAAI,MAAM,kBAAkB,OAAA,EAAS,EAAC,cAAA,EAAgB,MAAA,EAAO,CAAA;AAE1E,EAAA,OAAO,OAAO,IAAA,EAAK;AACpB,CAAA,EAPiC,mBAAA,CAAA;AAS1B,IAAM,uBAAA,iCAAgCC,KAAAA,KAAQ;AAEpD,EAAA,IAAI,eAAA,CAAgB,IAAA,CAAKA,KAAI,CAAA,EAAG;AAC/B,IAAA,OAAOA,KAAAA;AAAA,EACR;AAEA,EAAA,IAAI;AACH,IAAA,MAAM,EAAC,MAAA,EAAM,GAAI,MAAML,SAAAA,CAAS,SAAA,EAAW,CAAC,KAAA,EAAOK,KAAI,CAAA,EAAG,EAAC,QAAA,EAAU,QAAO,CAAA;AAC5E,IAAA,OAAO,OAAO,IAAA,EAAK;AAAA,EACpB,CAAA,CAAA,MAAQ;AAEP,IAAA,OAAOA,KAAAA;AAAA,EACR;AACD,CAAA,EAbuC,yBAAA,CAAA;;;AClFxB,SAAR,kBAAA,CAAoC,MAAA,EAAQ,YAAA,EAAc,WAAA,EAAa;AAC7E,EAAA,MAAM,MAAA,mBAAS,MAAA,CAAA,CAAA,KAAA,KAAS,MAAA,CAAO,cAAA,CAAe,MAAA,EAAQ,YAAA,EAAc,EAAC,KAAA,EAAO,UAAA,EAAY,IAAA,EAAM,QAAA,EAAU,IAAA,EAAK,CAAA,EAA9F,QAAA,CAAA;AAEf,EAAA,MAAA,CAAO,cAAA,CAAe,QAAQ,YAAA,EAAc;AAAA,IAC3C,YAAA,EAAc,IAAA;AAAA,IACd,UAAA,EAAY,IAAA;AAAA,IACZ,GAAA,GAAM;AACL,MAAA,MAAM,SAAS,WAAA,EAAY;AAC3B,MAAA,MAAA,CAAO,MAAM,CAAA;AACb,MAAA,OAAO,MAAA;AAAA,IACR,CAAA;AAAA,IACA,IAAI,KAAA,EAAO;AACV,MAAA,MAAA,CAAO,KAAK,CAAA;AAAA,IACb;AAAA,GACA,CAAA;AAED,EAAA,OAAO,MAAA;AACR;AAjBwB,MAAA,CAAA,kBAAA,EAAA,oBAAA,CAAA;ACIxB,IAAM,aAAA,GAAgBJ,UAAUD,UAAQ,CAAA;AAExC,eAAO,gBAAA,GAA0C;AAChD,EAAA,IAAID,QAAAA,CAAQ,aAAa,QAAA,EAAU;AAClC,IAAA,MAAM,IAAI,MAAM,YAAY,CAAA;AAAA,EAC7B;AAEA,EAAA,MAAM,EAAC,MAAA,EAAM,GAAI,MAAM,aAAA,CAAc,YAAY,CAAC,MAAA,EAAQ,0DAAA,EAA4D,YAAY,CAAC,CAAA;AAGnI,EAAA,MAAM,KAAA,GAAQ,kFAAA,CAAmF,IAAA,CAAK,MAAM,CAAA;AAE5G,EAAA,MAAM,SAAA,GAAY,KAAA,EAAO,MAAA,CAAO,EAAA,IAAM,kBAAA;AAGtC,EAAA,IAAI,cAAc,kBAAA,EAAoB;AACrC,IAAA,OAAO,kBAAA;AAAA,EACR;AAEA,EAAA,OAAO,SAAA;AACR;AAlB8B,MAAA,CAAA,gBAAA,EAAA,kBAAA,CAAA;ACF9B,IAAMO,cAAAA,GAAgBL,UAAUD,UAAQ,CAAA;AAExC,eAAsB,cAAA,CAAe,QAAQ,EAAC,mBAAA,GAAsB,MAAM,MAAA,EAAM,GAAI,EAAC,EAAG;AACvF,EAAA,IAAID,QAAAA,CAAQ,aAAa,QAAA,EAAU;AAClC,IAAA,MAAM,IAAI,MAAM,YAAY,CAAA;AAAA,EAC7B;AAEA,EAAA,MAAM,eAAA,GAAkB,mBAAA,GAAsB,EAAC,GAAI,CAAC,KAAK,CAAA;AAEzD,EAAA,MAAM,cAAc,EAAC;AACrB,EAAA,IAAI,MAAA,EAAQ;AACX,IAAA,WAAA,CAAY,MAAA,GAAS,MAAA;AAAA,EACtB;AAEA,EAAA,MAAM,EAAC,MAAA,EAAM,GAAI,MAAMO,cAAAA,CAAc,WAAA,EAAa,CAAC,IAAA,EAAM,MAAA,EAAQ,eAAe,CAAA,EAAG,WAAW,CAAA;AAC9F,EAAA,OAAO,OAAO,IAAA,EAAK;AACpB;AAdsB,MAAA,CAAA,cAAA,EAAA,gBAAA,CAAA;;;ACJtB,eAAO,WAAkC,QAAA,EAAU;AAClD,EAAA,OAAO,cAAA,CAAe,qEAAqE,QAAQ,CAAA;AAAA,4IAAA,CAA2J,CAAA;AAC/P;AAF8B,MAAA,CAAA,UAAA,EAAA,YAAA,CAAA;ACC9B,IAAMA,cAAAA,GAAgBL,UAAUD,UAAQ,CAAA;AAMxC,IAAM,qBAAA,GAAwB;AAAA,EAC7B,SAAA,EAAW,EAAC,IAAA,EAAM,MAAA,EAAQ,IAAI,oBAAA,EAAoB;AAAA;AAAA,EAClD,WAAA,EAAa,EAAC,IAAA,EAAM,WAAA,EAAa,IAAI,yBAAA,EAAyB;AAAA,EAC9D,WAAA,EAAa,EAAC,IAAA,EAAM,UAAA,EAAY,IAAI,wBAAA,EAAwB;AAAA,EAC5D,oCAAA,EAAsC,EAAC,IAAA,EAAM,MAAA,EAAQ,IAAI,wBAAA,EAAwB;AAAA,EACjF,UAAA,EAAY,EAAC,IAAA,EAAM,QAAA,EAAU,IAAI,mBAAA,EAAmB;AAAA,EACpD,WAAA,EAAa,EAAC,IAAA,EAAM,aAAA,EAAe,IAAI,wBAAA,EAAwB;AAAA,EAC/D,WAAA,EAAa,EAAC,IAAA,EAAM,YAAA,EAAc,IAAI,uBAAA,EAAuB;AAAA,EAC7D,WAAA,EAAa,EAAC,IAAA,EAAM,UAAA,EAAY,IAAI,uBAAA,EAAuB;AAAA,EAC3D,SAAA,EAAW,EAAC,IAAA,EAAM,OAAA,EAAS,IAAI,mBAAA,EAAmB;AAAA,EAClD,UAAA,EAAY,EAAC,IAAA,EAAM,YAAA,EAAc,IAAI,wBAAA,EAAwB;AAAA,EAC7D,UAAA,EAAY,EAAC,IAAA,EAAM,WAAA,EAAa,IAAI,uBAAA,EAAuB;AAAA,EAC3D,UAAA,EAAY,EAAC,IAAA,EAAM,eAAA,EAAiB,IAAI,2BAAA,EAA2B;AAAA,EACnE,UAAA,EAAY,EAAC,IAAA,EAAM,SAAA,EAAW,IAAI,qBAAA,EAAqB;AAAA,EACvD,WAAA,EAAa,EAAC,IAAA,EAAM,OAAA,EAAS,IAAI,yBAAA,EAAyB;AAAA,EAC1D,UAAA,EAAY,EAAC,IAAA,EAAM,SAAA,EAAW,IAAI,qBAAA,EAAqB;AAAA,EACvD,SAAA,EAAW,EAAC,IAAA,EAAM,mBAAA,EAAqB,IAAI,kBAAA;AAC5C,CAAA;AAEO,IAAM,2BAA2B,IAAI,GAAA,CAAI,MAAA,CAAO,OAAA,CAAQ,qBAAqB,CAAC,CAAA;AAE9E,IAAM,mBAAA,GAAN,cAAkC,KAAA,CAAM;AAAA,EA9B/C;AA8B+C,IAAA,MAAA,CAAA,IAAA,EAAA,qBAAA,CAAA;AAAA;AAAC,CAAA;AAEhD,eAAO,cAAA,CAAsC,iBAAiBM,cAAAA,EAAe;AAC5E,EAAA,MAAM,EAAC,MAAA,EAAM,GAAI,MAAM,eAAe,KAAA,EAAO;AAAA,IAC5C,OAAA;AAAA,IACA,0GAAA;AAAA,IACA,IAAA;AAAA,IACA;AAAA,GACA,CAAA;AAED,EAAA,MAAM,KAAA,GAAQ,8BAAA,CAA+B,IAAA,CAAK,MAAM,CAAA;AACxD,EAAA,IAAI,CAAC,KAAA,EAAO;AACX,IAAA,MAAM,IAAI,mBAAA,CAAoB,CAAA,uCAAA,EAA0C,KAAK,SAAA,CAAU,MAAM,CAAC,CAAA,CAAE,CAAA;AAAA,EACjG;AAEA,EAAA,MAAM,EAAC,EAAA,EAAE,GAAI,KAAA,CAAM,MAAA;AAEnB,EAAA,MAAM,OAAA,GAAU,sBAAsB,EAAE,CAAA;AACxC,EAAA,IAAI,CAAC,OAAA,EAAS;AACb,IAAA,MAAM,IAAI,mBAAA,CAAoB,CAAA,oBAAA,EAAuB,EAAE,CAAA,CAAE,CAAA;AAAA,EAC1D;AAEA,EAAA,OAAO,OAAA;AACR;AArB8B,MAAA,CAAA,cAAA,EAAA,gBAAA,CAAA;;;ACvB9B,IAAMA,cAAAA,GAAgBL,UAAUD,UAAQ,CAAA;AAGxC,IAAM,QAAA,mBAAW,MAAA,CAAA,CAAA,MAAA,KAAU,MAAA,CAAO,WAAA,EAAY,CAAE,UAAA,CAAW,eAAA,EAAiB,CAAA,CAAA,KAAK,CAAA,CAAE,WAAA,EAAa,CAAA,EAA/E,UAAA,CAAA;AAEjB,eAAOO,eAAAA,GAAwC;AAC9C,EAAA,IAAIR,QAAAA,CAAQ,aAAa,QAAA,EAAU;AAClC,IAAA,MAAM,EAAA,GAAK,MAAM,gBAAA,EAAiB;AAClC,IAAA,MAAM,IAAA,GAAO,MAAM,UAAA,CAAW,EAAE,CAAA;AAChC,IAAA,OAAO,EAAC,MAAM,EAAA,EAAE;AAAA,EACjB;AAEA,EAAA,IAAIA,QAAAA,CAAQ,aAAa,OAAA,EAAS;AACjC,IAAA,MAAM,EAAC,MAAA,EAAM,GAAI,MAAMO,cAAAA,CAAc,YAAY,CAAC,OAAA,EAAS,SAAA,EAAW,uBAAuB,CAAC,CAAA;AAC9F,IAAA,MAAM,EAAA,GAAK,OAAO,IAAA,EAAK;AACvB,IAAA,MAAM,IAAA,GAAO,QAAA,CAAS,EAAA,CAAG,OAAA,CAAQ,WAAA,EAAa,EAAE,CAAA,CAAE,OAAA,CAAQ,GAAA,EAAK,GAAG,CAAC,CAAA;AACnE,IAAA,OAAO,EAAC,MAAM,EAAA,EAAE;AAAA,EACjB;AAEA,EAAA,IAAIP,QAAAA,CAAQ,aAAa,OAAA,EAAS;AACjC,IAAA,OAAO,cAAA,EAAQ;AAAA,EAChB;AAEA,EAAA,MAAM,IAAI,MAAM,8CAA8C,CAAA;AAC/D;AAnB8B,MAAA,CAAAQ,eAAAA,EAAA,gBAAA,CAAA;ACZ9B,IAAM,OAAA,GAAU,OAAA,CAAQR,QAAAA,CAAQ,GAAA,CAAI,cAAA,IAChCA,SAAQ,GAAA,CAAI,UAAA,IACZA,QAAAA,CAAQ,GAAA,CAAI,OAAO,CAAA;AAEvB,IAAO,iBAAA,GAAQ,OAAA;;;ACYf,IAAM,qBAAA,GAAwB,OAAO,iBAAiB,CAAA;AAGtD,IAAMS,WAAA,GAAY,YAAY,GAAA,GAAM,IAAA,CAAK,QAAQ,aAAA,CAAc,MAAA,CAAA,IAAA,CAAY,GAAG,CAAC,CAAA,GAAI,EAAA;AACnF,IAAM,gBAAA,GAAmB,IAAA,CAAK,IAAA,CAAKA,WAAA,EAAW,UAAU,CAAA;AAExD,IAAM,EAAC,QAAA,EAAU,IAAA,EAAI,GAAIT,QAAAA;AAEzB,IAAM,UAAA,mBAAa,MAAA,CAAA,OAAOU,KAAAA,EAAM,MAAA,KAAW;AAC1C,EAAA,IAAIA,KAAAA,CAAK,WAAW,CAAA,EAAG;AAEtB,IAAA;AAAA,EACD;AAEA,EAAA,MAAM,SAAS,EAAC;AAEhB,EAAA,KAAA,MAAW,OAAOA,KAAAA,EAAM;AACvB,IAAA,IAAI;AACH,MAAA,OAAO,MAAM,OAAO,GAAG,CAAA;AAAA,IACxB,SAAS,KAAA,EAAO;AACf,MAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,IAClB;AAAA,EACD;AAEA,EAAA,MAAM,IAAI,cAAA,CAAe,MAAA,EAAQ,sCAAsC,CAAA;AACxE,CAAA,EAjBmB,YAAA,CAAA;AAoBnB,IAAM,QAAA,iCAAiB,OAAA,KAAW;AACjC,EAAA,OAAA,GAAU;AAAA,IACT,IAAA,EAAM,KAAA;AAAA,IACN,UAAA,EAAY,KAAA;AAAA,IACZ,WAAA,EAAa,KAAA;AAAA,IACb,oBAAA,EAAsB,KAAA;AAAA,IACtB,GAAG;AAAA,GACJ;AAEA,EAAA,MAAM,iBAAA,GAAoB,OAAA,CAAQ,qBAAqB,CAAA,KAAM,IAAA;AAC7D,EAAA,OAAO,QAAQ,qBAAqB,CAAA;AAEpC,EAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,OAAA,CAAQ,GAAG,CAAA,EAAG;AAC/B,IAAA,OAAO,UAAA,CAAW,OAAA,CAAQ,GAAA,EAAK,CAAA,SAAA,KAAa,QAAA,CAAS;AAAA,MACpD,GAAG,OAAA;AAAA,MACH,GAAA,EAAK,SAAA;AAAA,MACL,CAAC,qBAAqB,GAAG;AAAA,KACzB,CAAC,CAAA;AAAA,EACH;AAEA,EAAA,IAAI,EAAC,IAAA,EAAM,GAAA,EAAK,SAAA,EAAW,YAAA,GAAe,EAAC,EAAC,GAAI,OAAA,CAAQ,GAAA,IAAO,EAAC;AAChE,EAAA,YAAA,GAAe,CAAC,GAAG,YAAY,CAAA;AAE/B,EAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,GAAG,CAAA,EAAG;AACvB,IAAA,OAAO,UAAA,CAAW,GAAA,EAAK,CAAA,OAAA,KAAW,QAAA,CAAS;AAAA,MAC1C,GAAG,OAAA;AAAA,MACH,GAAA,EAAK;AAAA,QACJ,IAAA,EAAM,OAAA;AAAA,QACN,SAAA,EAAW;AAAA,OACZ;AAAA,MACA,CAAC,qBAAqB,GAAG;AAAA,KACzB,CAAC,CAAA;AAAA,EACH;AAEA,EAAA,IAAI,GAAA,KAAQ,SAAA,IAAa,GAAA,KAAQ,gBAAA,EAAkB;AAGlD,IAAA,MAAM,GAAA,GAAM;AAAA,MACX,mBAAA,EAAqB,QAAA;AAAA,MACrB,uBAAA,EAAyB,QAAA;AAAA,MACzB,mBAAA,EAAqB,OAAA;AAAA,MACrB,qBAAA,EAAuB,SAAA;AAAA,MACvB,iBAAA,EAAmB,SAAA;AAAA,MACnB,sBAAA,EAAwB,MAAA;AAAA,MACxB,oBAAA,EAAsB,MAAA;AAAA,MACtB,uBAAA,EAAyB,MAAA;AAAA,MACzB,wBAAA,EAA0B,MAAA;AAAA,MAC1B,kBAAA,EAAoB;AAAA,KACrB;AAGA,IAAA,MAAM,KAAA,GAAQ;AAAA,MACb,MAAA,EAAQ,aAAA;AAAA,MACR,KAAA,EAAO,aAAA;AAAA,MACP,OAAA,EAAS,kBAAA;AAAA,MACT,IAAA,EAAM;AAAA;AAAA,KAEP;AAEA,IAAA,IAAI,OAAA;AACJ,IAAA,IAAI,cAAA,EAAO;AACV,MAAA,MAAM,MAAA,GAAS,MAAM,iBAAA,EAAkB;AACvC,MAAA,MAAM,WAAA,GAAc,wBAAA,CAAyB,GAAA,CAAI,MAAM,CAAA;AACvD,MAAA,OAAA,GAAU,eAAe,EAAC;AAAA,IAC3B,CAAA,MAAO;AACN,MAAA,OAAA,GAAU,MAAMF,eAAAA,EAAe;AAAA,IAChC;AAEA,IAAA,IAAI,OAAA,CAAQ,MAAM,GAAA,EAAK;AACtB,MAAA,MAAM,WAAA,GAAc,GAAA,CAAI,OAAA,CAAQ,EAAA,CAAG,aAAa,CAAA;AAEhD,MAAA,IAAI,QAAQ,gBAAA,EAAkB;AAE7B,QAAA,IAAI,gBAAgB,QAAA,EAAU;AAC7B,UAAA,MAAM,IAAI,MAAM,iEAAkE,CAAA;AAAA,QACnF;AAEA,QAAA,YAAA,CAAa,IAAA,CAAK,KAAA,CAAM,WAAW,CAAC,CAAA;AAAA,MACrC;AAEA,MAAA,OAAO,QAAA,CAAS;AAAA,QACf,GAAG,OAAA;AAAA,QACH,GAAA,EAAK;AAAA,UACJ,IAAA,EAAM,KAAK,WAAW,CAAA;AAAA,UACtB,SAAA,EAAW;AAAA;AACZ,OACA,CAAA;AAAA,IACF;AAEA,IAAA,MAAM,IAAI,KAAA,CAAM,CAAA,EAAG,OAAA,CAAQ,IAAI,CAAA,sCAAA,CAAwC,CAAA;AAAA,EACxE;AAEA,EAAA,IAAI,OAAA;AACJ,EAAA,MAAM,eAAe,EAAC;AACtB,EAAA,MAAM,sBAAsB,EAAC;AAK7B,EAAA,IAAI,qBAAA,GAAwB,KAAA;AAC5B,EAAA,IAAI,kBAAS,CAAC,iBAAA,MAAuB,CAAC,iBAAA,IAAW,CAAC,GAAA,EAAK;AACtD,IAAA,qBAAA,GAAwB,MAAM,mBAAA,EAAoB;AAAA,EACnD;AAEA,EAAA,IAAI,aAAa,QAAA,EAAU;AAC1B,IAAA,OAAA,GAAU,MAAA;AAEV,IAAA,IAAI,QAAQ,IAAA,EAAM;AACjB,MAAA,YAAA,CAAa,KAAK,aAAa,CAAA;AAAA,IAChC;AAEA,IAAA,IAAI,QAAQ,UAAA,EAAY;AACvB,MAAA,YAAA,CAAa,KAAK,cAAc,CAAA;AAAA,IACjC;AAEA,IAAA,IAAI,QAAQ,WAAA,EAAa;AACxB,MAAA,YAAA,CAAa,KAAK,OAAO,CAAA;AAAA,IAC1B;AAEA,IAAA,IAAI,GAAA,EAAK;AACR,MAAA,YAAA,CAAa,IAAA,CAAK,MAAM,GAAG,CAAA;AAAA,IAC5B;AAAA,EACD,CAAA,MAAA,IAAW,QAAA,KAAa,OAAA,IAAW,qBAAA,EAAuB;AACzD,IAAA,OAAA,GAAU,MAAMH,eAAAA,EAAe;AAE/B,IAAA,YAAA,CAAa,IAAA,CAAK,GAAG,iBAAA,CAAkB,eAAe,CAAA;AAEtD,IAAA,IAAI,CAAC,cAAA,EAAO;AACX,MAAA,mBAAA,CAAoB,wBAAA,GAA2B,IAAA;AAAA,IAChD;AAGA,IAAA,IAAI,cAAA,IAAS,QAAQ,MAAA,EAAQ;AAC5B,MAAA,OAAA,CAAQ,MAAA,GAAS,MAAM,uBAAA,CAAwB,OAAA,CAAQ,MAAM,CAAA;AAAA,IAC9D;AAGA,IAAA,MAAM,gBAAA,GAAmB,CAAC,2CAAA,EAA+C,OAAO,CAAA;AAEhF,IAAA,IAAI,QAAQ,IAAA,EAAM;AACjB,MAAA,gBAAA,CAAiB,KAAK,OAAO,CAAA;AAAA,IAC9B;AAEA,IAAA,IAAI,GAAA,EAAK;AACR,MAAA,gBAAA,CAAiB,IAAA,CAAK,iBAAA,CAAkB,cAAA,CAAe,GAAG,CAAC,CAAA;AAC3D,MAAA,IAAI,QAAQ,MAAA,EAAQ;AACnB,QAAA,YAAA,CAAa,IAAA,CAAK,QAAQ,MAAM,CAAA;AAAA,MACjC;AAAA,IACD,CAAA,MAAA,IAAW,QAAQ,MAAA,EAAQ;AAC1B,MAAA,gBAAA,CAAiB,IAAA,CAAK,iBAAA,CAAkB,cAAA,CAAe,OAAA,CAAQ,MAAM,CAAC,CAAA;AAAA,IACvE;AAEA,IAAA,IAAI,YAAA,CAAa,SAAS,CAAA,EAAG;AAC5B,MAAA,YAAA,GAAe,aAAa,GAAA,CAAI,CAAA,QAAA,KAAY,iBAAA,CAAkB,cAAA,CAAe,QAAQ,CAAC,CAAA;AACtF,MAAA,gBAAA,CAAiB,IAAA,CAAK,eAAA,EAAiB,YAAA,CAAa,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA,IAC9D;AAGA,IAAA,OAAA,CAAQ,SAAS,iBAAA,CAAkB,aAAA,CAAc,gBAAA,CAAiB,IAAA,CAAK,GAAG,CAAC,CAAA;AAE3E,IAAA,IAAI,CAAC,QAAQ,IAAA,EAAM;AAElB,MAAA,mBAAA,CAAoB,KAAA,GAAQ,QAAA;AAAA,IAC7B;AAAA,EACD,CAAA,MAAO;AACN,IAAA,IAAI,GAAA,EAAK;AACR,MAAA,OAAA,GAAU,GAAA;AAAA,IACX,CAAA,MAAO;AAEN,MAAA,MAAM,SAAA,GAAY,CAACI,WAAA,IAAaA,WAAA,KAAc,GAAA;AAG9C,MAAA,IAAI,eAAA,GAAkB,KAAA;AACtB,MAAA,IAAI;AACH,QAAA,MAAMV,GAAAA,CAAG,MAAA,CAAO,gBAAA,EAAkBK,SAAAA,CAAY,IAAI,CAAA;AAClD,QAAA,eAAA,GAAkB,IAAA;AAAA,MACnB,CAAA,CAAA,MAAQ;AAAA,MAAC;AAET,MAAA,MAAM,mBAAmBJ,QAAAA,CAAQ,QAAA,CAAS,aACrC,QAAA,KAAa,SAAA,IAAa,aAAa,CAAC,eAAA,CAAA;AAC7C,MAAA,OAAA,GAAU,mBAAmB,UAAA,GAAa,gBAAA;AAAA,IAC3C;AAEA,IAAA,IAAI,YAAA,CAAa,SAAS,CAAA,EAAG;AAC5B,MAAA,YAAA,CAAa,IAAA,CAAK,GAAG,YAAY,CAAA;AAAA,IAClC;AAEA,IAAA,IAAI,CAAC,QAAQ,IAAA,EAAM;AAGlB,MAAA,mBAAA,CAAoB,KAAA,GAAQ,QAAA;AAC5B,MAAA,mBAAA,CAAoB,QAAA,GAAW,IAAA;AAAA,IAChC;AAAA,EACD;AAEA,EAAA,IAAI,QAAA,KAAa,QAAA,IAAY,YAAA,CAAa,MAAA,GAAS,CAAA,EAAG;AACrD,IAAA,YAAA,CAAa,IAAA,CAAK,QAAA,EAAU,GAAG,YAAY,CAAA;AAAA,EAC5C;AAOA,EAAA,IAAI,QAAQ,MAAA,EAAQ;AACnB,IAAA,YAAA,CAAa,IAAA,CAAK,QAAQ,MAAM,CAAA;AAAA,EACjC;AAEA,EAAA,MAAM,UAAA,GAAaG,YAAAA,CAAa,KAAA,CAAM,OAAA,EAAS,cAAc,mBAAmB,CAAA;AAEhF,EAAA,IAAI,QAAQ,IAAA,EAAM;AACjB,IAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACvC,MAAA,UAAA,CAAW,IAAA,CAAK,SAAS,MAAM,CAAA;AAE/B,MAAA,UAAA,CAAW,IAAA,CAAK,SAAS,CAAA,QAAA,KAAY;AACpC,QAAA,IAAI,CAAC,OAAA,CAAQ,oBAAA,IAAwB,QAAA,KAAa,CAAA,EAAG;AACpD,UAAA,MAAA,CAAO,IAAI,KAAA,CAAM,CAAA,iBAAA,EAAoB,QAAQ,EAAE,CAAC,CAAA;AAChD,UAAA;AAAA,QACD;AAEA,QAAA,OAAA,CAAQ,UAAU,CAAA;AAAA,MACnB,CAAC,CAAA;AAAA,IACF,CAAC,CAAA;AAAA,EACF;AAKA,EAAA,IAAI,iBAAA,EAAmB;AACtB,IAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACvC,MAAA,UAAA,CAAW,IAAA,CAAK,SAAS,MAAM,CAAA;AAE/B,MAAA,UAAA,CAAW,IAAA,CAAK,SAAS,MAAM;AAE9B,QAAA,UAAA,CAAW,IAAA,CAAK,SAAS,CAAA,QAAA,KAAY;AACpC,UAAA,UAAA,CAAW,GAAA,CAAI,SAAS,MAAM,CAAA;AAE9B,UAAA,IAAI,aAAa,CAAA,EAAG;AACnB,YAAA,MAAA,CAAO,IAAI,KAAA,CAAM,CAAA,iBAAA,EAAoB,QAAQ,EAAE,CAAC,CAAA;AAChD,YAAA;AAAA,UACD;AAEA,UAAA,UAAA,CAAW,KAAA,EAAM;AACjB,UAAA,OAAA,CAAQ,UAAU,CAAA;AAAA,QACnB,CAAC,CAAA;AAAA,MACF,CAAC,CAAA;AAAA,IACF,CAAC,CAAA;AAAA,EACF;AAEA,EAAA,UAAA,CAAW,KAAA,EAAM;AAIjB,EAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AACvC,IAAA,UAAA,CAAW,IAAA,CAAK,SAAS,MAAM,CAAA;AAK/B,IAAA,UAAA,CAAW,IAAA,CAAK,SAAS,MAAM;AAC9B,MAAA,UAAA,CAAW,GAAA,CAAI,SAAS,MAAM,CAAA;AAC9B,MAAA,OAAA,CAAQ,UAAU,CAAA;AAAA,IACnB,CAAC,CAAA;AAAA,EACF,CAAC,CAAA;AACF,CAAA,EAxQiB,UAAA,CAAA;AA0QjB,IAAM,IAAA,mBAAO,MAAA,CAAA,CAAC,MAAA,EAAQ,OAAA,KAAY;AACjC,EAAA,IAAI,OAAO,WAAW,QAAA,EAAU;AAC/B,IAAA,MAAM,IAAI,UAAU,qBAAqB,CAAA;AAAA,EAC1C;AAEA,EAAA,OAAO,QAAA,CAAS;AAAA,IACf,GAAG,OAAA;AAAA,IACH;AAAA,GACA,CAAA;AACF,CAAA,EATa,MAAA,CAAA;AAWN,IAAM,OAAA,mBAAU,MAAA,CAAA,CAAC,IAAA,EAAM,OAAA,KAAY;AACzC,EAAA,IAAI,OAAO,IAAA,KAAS,QAAA,IAAY,CAAC,KAAA,CAAM,OAAA,CAAQ,IAAI,CAAA,EAAG;AACrD,IAAA,MAAM,IAAI,UAAU,yBAAyB,CAAA;AAAA,EAC9C;AAEA,EAAA,MAAM,EAAC,SAAA,EAAW,YAAA,GAAe,EAAC,EAAC,GAAI,WAAW,EAAC;AACnD,EAAA,IAAI,YAAA,KAAiB,UAAa,YAAA,KAAiB,IAAA,IAAQ,CAAC,KAAA,CAAM,OAAA,CAAQ,YAAY,CAAA,EAAG;AACxF,IAAA,MAAM,IAAI,UAAU,uCAAuC,CAAA;AAAA,EAC5D;AAEA,EAAA,OAAO,QAAA,CAAS;AAAA,IACf,GAAG,OAAA;AAAA,IACH,GAAA,EAAK;AAAA,MACJ,IAAA;AAAA,MACA,SAAA,EAAW;AAAA;AACZ,GACA,CAAA;AACF,CAAA,EAjBuB,SAAA;AAmBvB,SAAS,iBAAiB,MAAA,EAAQ;AACjC,EAAA,IAAI,OAAO,MAAA,KAAW,QAAA,IAAY,KAAA,CAAM,OAAA,CAAQ,MAAM,CAAA,EAAG;AACxD,IAAA,OAAO,MAAA;AAAA,EACR;AAEA,EAAA,MAAM,EAAC,CAAC,IAAI,GAAG,YAAU,GAAI,MAAA;AAE7B,EAAA,IAAI,CAAC,UAAA,EAAY;AAChB,IAAA,MAAM,IAAI,KAAA,CAAM,CAAA,EAAG,IAAI,CAAA,iBAAA,CAAmB,CAAA;AAAA,EAC3C;AAEA,EAAA,OAAO,UAAA;AACR;AAZS,MAAA,CAAA,gBAAA,EAAA,kBAAA,CAAA;AAcT,SAAS,oBAAA,CAAqB,EAAC,CAAC,QAAQ,GAAG,cAAA,EAAc,EAAG,EAAC,GAAA,EAAG,GAAI,EAAC,EAAG;AACvE,EAAA,IAAI,OAAO,cAAA,EAAO;AACjB,IAAA,OAAO,iBAAiB,GAAG,CAAA;AAAA,EAC5B;AAEA,EAAA,IAAI,CAAC,cAAA,EAAgB;AACpB,IAAA,MAAM,IAAI,KAAA,CAAM,CAAA,EAAG,QAAQ,CAAA,iBAAA,CAAmB,CAAA;AAAA,EAC/C;AAEA,EAAA,OAAO,iBAAiB,cAAc,CAAA;AACvC;AAVS,MAAA,CAAA,oBAAA,EAAA,sBAAA,CAAA;AAYF,IAAM,IAAA,GAAO;AAAA,EACnB,OAAA,EAAS,SAAA;AAAA,EACT,cAAA,EAAgB;AACjB;AAEA,kBAAA,CAAmB,IAAA,EAAM,QAAA,EAAU,MAAM,oBAAA,CAAqB;AAAA,EAC7D,MAAA,EAAQ,eAAA;AAAA,EACR,KAAA,EAAO,QAAA;AAAA;AAAA,EAEP,KAAA,EAAO,CAAC,eAAA,EAAiB,sBAAA,EAAwB,YAAY,kBAAkB;AAChF,CAAA,EAAG;AAAA,EACF,GAAA,EAAK;AAAA,IACJ,IAAA,EAAM,iEAAA;AAAA,IACN,GAAA,EAAK,CAAC,2DAAA,EAA6D,iEAAiE;AAAA;AAEtI,CAAC,CAAC,CAAA;AAEF,kBAAA,CAAmB,IAAA,EAAM,OAAA,EAAS,MAAM,oBAAA,CAAqB;AAAA,EAC5D,MAAA,EAAQ,eAAA;AAAA,EACR,KAAA,EAAO,OAAA;AAAA,EACP,KAAA,EAAO,CAAC,eAAA,EAAiB,OAAO;AACjC,CAAA,EAAG;AAAA,EACF,GAAA,EAAK;AAAA,IACJ,IAAA,EAAM,8EAAA;AAAA,IACN,GAAA,EAAK,CAAC,wEAAA,EAA0E,8EAA8E;AAAA;AAEhK,CAAC,CAAC,CAAA;AAEF,kBAAA,CAAmB,IAAA,EAAM,SAAA,EAAW,MAAM,oBAAA,CAAqB;AAAA,EAC9D,MAAA,EAAQ,SAAA;AAAA,EACR,OAAO,MAAA,CAAO,GAAA,CAAA,4CAAA,CAAA;AAAA,EACd,KAAA,EAAO;AACR,CAAA,EAAG;AAAA,EACF,GAAA,EAAK;AACN,CAAC,CAAC,CAAA;AAEF,kBAAA,CAAmB,IAAA,EAAM,MAAA,EAAQ,MAAM,oBAAA,CAAqB;AAAA,EAC3D,MAAA,EAAQ,gBAAA;AAAA,EACR,KAAA,EAAO,QAAA;AAAA,EACP,KAAA,EAAO,CAAC,gBAAA,EAAkB,oBAAoB;AAC/C,CAAA,EAAG;AAAA,EACF,GAAA,EAAK;AACN,CAAC,CAAC,CAAA;AAEF,kBAAA,CAAmB,IAAA,EAAM,QAAA,EAAU,MAAM,oBAAA,CAAqB;AAAA,EAC7D,MAAA,EAAQ;AACT,CAAC,CAAC,CAAA;AAEF,IAAO,YAAA,GAAQ","file":"open-OYMIZX6T.mjs","sourcesContent":["import fs from 'node:fs';\n\nlet isDockerCached;\n\nfunction hasDockerEnv() {\n\ttry {\n\t\tfs.statSync('/.dockerenv');\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction hasDockerCGroup() {\n\ttry {\n\t\treturn fs.readFileSync('/proc/self/cgroup', 'utf8').includes('docker');\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nexport default function isDocker() {\n\t// TODO: Use `??=` when targeting Node.js 16.\n\tif (isDockerCached === undefined) {\n\t\tisDockerCached = hasDockerEnv() || hasDockerCGroup();\n\t}\n\n\treturn isDockerCached;\n}\n","import fs from 'node:fs';\nimport isDocker from 'is-docker';\n\nlet cachedResult;\n\n// Podman detection\nconst hasContainerEnv = () => {\n\ttry {\n\t\tfs.statSync('/run/.containerenv');\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n};\n\nexport default function isInsideContainer() {\n\t// TODO: Use `??=` when targeting Node.js 16.\n\tif (cachedResult === undefined) {\n\t\tcachedResult = hasContainerEnv() || isDocker();\n\t}\n\n\treturn cachedResult;\n}\n","import process from 'node:process';\nimport os from 'node:os';\nimport fs from 'node:fs';\nimport isInsideContainer from 'is-inside-container';\n\nconst isWsl = () => {\n\tif (process.platform !== 'linux') {\n\t\treturn false;\n\t}\n\n\tif (os.release().toLowerCase().includes('microsoft')) {\n\t\tif (isInsideContainer()) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\ttry {\n\t\treturn fs.readFileSync('/proc/version', 'utf8').toLowerCase().includes('microsoft')\n\t\t\t? !isInsideContainer() : false;\n\t} catch {\n\t\treturn false;\n\t}\n};\n\nexport default process.env.__IS_WSL_TEST__ ? isWsl : isWsl();\n","import process from 'node:process';\nimport {Buffer} from 'node:buffer';\nimport {promisify} from 'node:util';\nimport childProcess from 'node:child_process';\nimport fs, {constants as fsConstants} from 'node:fs/promises';\n\nconst execFile = promisify(childProcess.execFile);\n\nexport const powerShellPath = () => `${process.env.SYSTEMROOT || process.env.windir || String.raw`C:\\Windows`}\\\\System32\\\\WindowsPowerShell\\\\v1.0\\\\powershell.exe`;\n\n// Cache for PowerShell accessibility check\nlet canAccessCache;\n\nexport const canAccessPowerShell = async () => {\n\tcanAccessCache ??= (async () => {\n\t\ttry {\n\t\t\tawait fs.access(powerShellPath(), fsConstants.X_OK);\n\t\t\treturn true;\n\t\t} catch {\n\t\t\treturn false;\n\t\t}\n\t})();\n\n\treturn canAccessCache;\n};\n\nexport const executePowerShell = async (command, options = {}) => {\n\tconst {\n\t\tpowerShellPath: psPath,\n\t\t...execFileOptions\n\t} = options;\n\n\tconst encodedCommand = executePowerShell.encodeCommand(command);\n\n\treturn execFile(\n\t\tpsPath ?? powerShellPath(),\n\t\t[\n\t\t\t...executePowerShell.argumentsPrefix,\n\t\t\tencodedCommand,\n\t\t],\n\t\t{\n\t\t\tencoding: 'utf8',\n\t\t\t...execFileOptions,\n\t\t},\n\t);\n};\n\nexecutePowerShell.argumentsPrefix = [\n\t'-NoProfile',\n\t'-NonInteractive',\n\t'-ExecutionPolicy',\n\t'Bypass',\n\t'-EncodedCommand',\n];\n\nexecutePowerShell.encodeCommand = command => Buffer.from(command, 'utf16le').toString('base64');\n\nexecutePowerShell.escapeArgument = value => `'${String(value).replaceAll('\\'', '\\'\\'')}'`;\n","export function parseMountPointFromConfig(content) {\n\tfor (const line of content.split('\\n')) {\n\t\t// Skip comment lines\n\t\tif (/^\\s*#/.test(line)) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Match root at start of line (after optional whitespace)\n\t\tconst match = /^\\s*root\\s*=\\s*(?<mountPoint>\"[^\"]*\"|'[^']*'|[^#]*)/.exec(line);\n\t\tif (!match) {\n\t\t\tcontinue;\n\t\t}\n\n\t\treturn match.groups.mountPoint\n\t\t\t.trim()\n\t\t\t// Strip surrounding quotes\n\t\t\t.replaceAll(/^[\"']|[\"']$/g, '');\n\t}\n}\n","import {promisify} from 'node:util';\nimport childProcess from 'node:child_process';\nimport fs, {constants as fsConstants} from 'node:fs/promises';\nimport isWsl from 'is-wsl';\nimport {powerShellPath as windowsPowerShellPath, executePowerShell} from 'powershell-utils';\nimport {parseMountPointFromConfig} from './utilities.js';\n\nconst execFile = promisify(childProcess.execFile);\n\nexport const wslDrivesMountPoint = (() => {\n\t// Default value for \"root\" param\n\t// according to https://docs.microsoft.com/en-us/windows/wsl/wsl-config\n\tconst defaultMountPoint = '/mnt/';\n\n\tlet mountPoint;\n\n\treturn async function () {\n\t\tif (mountPoint) {\n\t\t\t// Return memoized mount point value\n\t\t\treturn mountPoint;\n\t\t}\n\n\t\tconst configFilePath = '/etc/wsl.conf';\n\n\t\tlet isConfigFileExists = false;\n\t\ttry {\n\t\t\tawait fs.access(configFilePath, fsConstants.F_OK);\n\t\t\tisConfigFileExists = true;\n\t\t} catch {}\n\n\t\tif (!isConfigFileExists) {\n\t\t\treturn defaultMountPoint;\n\t\t}\n\n\t\tconst configContent = await fs.readFile(configFilePath, {encoding: 'utf8'});\n\t\tconst parsedMountPoint = parseMountPointFromConfig(configContent);\n\n\t\tif (parsedMountPoint === undefined) {\n\t\t\treturn defaultMountPoint;\n\t\t}\n\n\t\tmountPoint = parsedMountPoint;\n\t\tmountPoint = mountPoint.endsWith('/') ? mountPoint : `${mountPoint}/`;\n\n\t\treturn mountPoint;\n\t};\n})();\n\nexport const powerShellPathFromWsl = async () => {\n\tconst mountPoint = await wslDrivesMountPoint();\n\treturn `${mountPoint}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`;\n};\n\nexport const powerShellPath = isWsl ? powerShellPathFromWsl : windowsPowerShellPath;\n\n// Cache for PowerShell accessibility check\nlet canAccessPowerShellPromise;\n\nexport const canAccessPowerShell = async () => {\n\tcanAccessPowerShellPromise ??= (async () => {\n\t\ttry {\n\t\t\tconst psPath = await powerShellPath();\n\t\t\tawait fs.access(psPath, fsConstants.X_OK);\n\t\t\treturn true;\n\t\t} catch {\n\t\t\t// PowerShell is not accessible (either doesn't exist, no execute permission, or other error)\n\t\t\treturn false;\n\t\t}\n\t})();\n\n\treturn canAccessPowerShellPromise;\n};\n\nexport const wslDefaultBrowser = async () => {\n\tconst psPath = await powerShellPath();\n\tconst command = String.raw`(Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice\").ProgId`;\n\n\tconst {stdout} = await executePowerShell(command, {powerShellPath: psPath});\n\n\treturn stdout.trim();\n};\n\nexport const convertWslPathToWindows = async path => {\n\t// Don't convert URLs\n\tif (/^[a-z]+:\\/\\//i.test(path)) {\n\t\treturn path;\n\t}\n\n\ttry {\n\t\tconst {stdout} = await execFile('wslpath', ['-aw', path], {encoding: 'utf8'});\n\t\treturn stdout.trim();\n\t} catch {\n\t\t// If wslpath fails, return the original path\n\t\treturn path;\n\t}\n};\n\nexport {default as isWsl} from 'is-wsl';\n","export default function defineLazyProperty(object, propertyName, valueGetter) {\n\tconst define = value => Object.defineProperty(object, propertyName, {value, enumerable: true, writable: true});\n\n\tObject.defineProperty(object, propertyName, {\n\t\tconfigurable: true,\n\t\tenumerable: true,\n\t\tget() {\n\t\t\tconst result = valueGetter();\n\t\t\tdefine(result);\n\t\t\treturn result;\n\t\t},\n\t\tset(value) {\n\t\t\tdefine(value);\n\t\t}\n\t});\n\n\treturn object;\n}\n","import {promisify} from 'node:util';\nimport process from 'node:process';\nimport {execFile} from 'node:child_process';\n\nconst execFileAsync = promisify(execFile);\n\nexport default async function defaultBrowserId() {\n\tif (process.platform !== 'darwin') {\n\t\tthrow new Error('macOS only');\n\t}\n\n\tconst {stdout} = await execFileAsync('defaults', ['read', 'com.apple.LaunchServices/com.apple.launchservices.secure', 'LSHandlers']);\n\n\t// `(?!-)` is to prevent matching `LSHandlerRoleAll = \"-\";`.\n\tconst match = /LSHandlerRoleAll = \"(?!-)(?<id>[^\"]+?)\";\\s+?LSHandlerURLScheme = (?:http|https);/.exec(stdout);\n\n\tconst browserId = match?.groups.id ?? 'com.apple.Safari';\n\n\t// Correct the case for Safari's bundle identifier\n\tif (browserId === 'com.apple.safari') {\n\t\treturn 'com.apple.Safari';\n\t}\n\n\treturn browserId;\n}\n","import process from 'node:process';\nimport {promisify} from 'node:util';\nimport {execFile, execFileSync} from 'node:child_process';\n\nconst execFileAsync = promisify(execFile);\n\nexport async function runAppleScript(script, {humanReadableOutput = true, signal} = {}) {\n\tif (process.platform !== 'darwin') {\n\t\tthrow new Error('macOS only');\n\t}\n\n\tconst outputArguments = humanReadableOutput ? [] : ['-ss'];\n\n\tconst execOptions = {};\n\tif (signal) {\n\t\texecOptions.signal = signal;\n\t}\n\n\tconst {stdout} = await execFileAsync('osascript', ['-e', script, outputArguments], execOptions);\n\treturn stdout.trim();\n}\n\nexport function runAppleScriptSync(script, {humanReadableOutput = true} = {}) {\n\tif (process.platform !== 'darwin') {\n\t\tthrow new Error('macOS only');\n\t}\n\n\tconst outputArguments = humanReadableOutput ? [] : ['-ss'];\n\n\tconst stdout = execFileSync('osascript', ['-e', script, ...outputArguments], {\n\t\tencoding: 'utf8',\n\t\tstdio: ['ignore', 'pipe', 'ignore'],\n\t\ttimeout: 500,\n\t});\n\n\treturn stdout.trim();\n}\n","import {runAppleScript} from 'run-applescript';\n\nexport default async function bundleName(bundleId) {\n\treturn runAppleScript(`tell application \"Finder\" to set app_path to application file id \"${bundleId}\" as string\\ntell application \"System Events\" to get value of property list item \"CFBundleName\" of property list file (app_path & \":Contents:Info.plist\")`);\n}\n","import {promisify} from 'node:util';\nimport {execFile} from 'node:child_process';\n\nconst execFileAsync = promisify(execFile);\n\n// TODO: Fix the casing of bundle identifiers in the next major version.\n\n// Windows doesn't have browser IDs in the same way macOS/Linux does so we give fake\n// ones that look real and match the macOS/Linux versions for cross-platform apps.\nconst windowsBrowserProgIds = {\n\tMSEdgeHTM: {name: 'Edge', id: 'com.microsoft.edge'}, // The missing `L` is correct.\n\tMSEdgeBHTML: {name: 'Edge Beta', id: 'com.microsoft.edge.beta'},\n\tMSEdgeDHTML: {name: 'Edge Dev', id: 'com.microsoft.edge.dev'},\n\tAppXq0fevzme2pys62n3e0fbqa7peapykr8v: {name: 'Edge', id: 'com.microsoft.edge.old'},\n\tChromeHTML: {name: 'Chrome', id: 'com.google.chrome'},\n\tChromeBHTML: {name: 'Chrome Beta', id: 'com.google.chrome.beta'},\n\tChromeDHTML: {name: 'Chrome Dev', id: 'com.google.chrome.dev'},\n\tChromiumHTM: {name: 'Chromium', id: 'org.chromium.Chromium'},\n\tBraveHTML: {name: 'Brave', id: 'com.brave.Browser'},\n\tBraveBHTML: {name: 'Brave Beta', id: 'com.brave.Browser.beta'},\n\tBraveDHTML: {name: 'Brave Dev', id: 'com.brave.Browser.dev'},\n\tBraveSSHTM: {name: 'Brave Nightly', id: 'com.brave.Browser.nightly'},\n\tFirefoxURL: {name: 'Firefox', id: 'org.mozilla.firefox'},\n\tOperaStable: {name: 'Opera', id: 'com.operasoftware.Opera'},\n\tVivaldiHTM: {name: 'Vivaldi', id: 'com.vivaldi.Vivaldi'},\n\t'IE.HTTP': {name: 'Internet Explorer', id: 'com.microsoft.ie'},\n};\n\nexport const _windowsBrowserProgIdMap = new Map(Object.entries(windowsBrowserProgIds));\n\nexport class UnknownBrowserError extends Error {}\n\nexport default async function defaultBrowser(_execFileAsync = execFileAsync) {\n\tconst {stdout} = await _execFileAsync('reg', [\n\t\t'QUERY',\n\t\t' HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\Windows\\\\Shell\\\\Associations\\\\UrlAssociations\\\\http\\\\UserChoice',\n\t\t'/v',\n\t\t'ProgId',\n\t]);\n\n\tconst match = /ProgId\\s*REG_SZ\\s*(?<id>\\S+)/.exec(stdout);\n\tif (!match) {\n\t\tthrow new UnknownBrowserError(`Cannot find Windows browser in stdout: ${JSON.stringify(stdout)}`);\n\t}\n\n\tconst {id} = match.groups;\n\n\tconst browser = windowsBrowserProgIds[id];\n\tif (!browser) {\n\t\tthrow new UnknownBrowserError(`Unknown browser ID: ${id}`);\n\t}\n\n\treturn browser;\n}\n","import {promisify} from 'node:util';\nimport process from 'node:process';\nimport {execFile} from 'node:child_process';\nimport defaultBrowserId from 'default-browser-id';\nimport bundleName from 'bundle-name';\nimport windows from './windows.js';\n\nexport {_windowsBrowserProgIdMap} from './windows.js';\n\nconst execFileAsync = promisify(execFile);\n\n// Inlined: https://github.com/sindresorhus/titleize/blob/main/index.js\nconst titleize = string => string.toLowerCase().replaceAll(/(?:^|\\s|-)\\S/g, x => x.toUpperCase());\n\nexport default async function defaultBrowser() {\n\tif (process.platform === 'darwin') {\n\t\tconst id = await defaultBrowserId();\n\t\tconst name = await bundleName(id);\n\t\treturn {name, id};\n\t}\n\n\tif (process.platform === 'linux') {\n\t\tconst {stdout} = await execFileAsync('xdg-mime', ['query', 'default', 'x-scheme-handler/http']);\n\t\tconst id = stdout.trim();\n\t\tconst name = titleize(id.replace(/.desktop$/, '').replace('-', ' '));\n\t\treturn {name, id};\n\t}\n\n\tif (process.platform === 'win32') {\n\t\treturn windows();\n\t}\n\n\tthrow new Error('Only macOS, Linux, and Windows are supported');\n}\n","import process from 'node:process';\n\nconst isInSsh = Boolean(process.env.SSH_CONNECTION\n\t|| process.env.SSH_CLIENT\n\t|| process.env.SSH_TTY);\n\nexport default isInSsh;\n","import process from 'node:process';\nimport path from 'node:path';\nimport {fileURLToPath} from 'node:url';\nimport childProcess from 'node:child_process';\nimport fs, {constants as fsConstants} from 'node:fs/promises';\nimport {\n\tisWsl,\n\tpowerShellPath,\n\tconvertWslPathToWindows,\n\tcanAccessPowerShell,\n\twslDefaultBrowser,\n} from 'wsl-utils';\nimport {executePowerShell} from 'powershell-utils';\nimport defineLazyProperty from 'define-lazy-prop';\nimport defaultBrowser, {_windowsBrowserProgIdMap} from 'default-browser';\nimport isInsideContainer from 'is-inside-container';\nimport isInSsh from 'is-in-ssh';\n\nconst fallbackAttemptSymbol = Symbol('fallbackAttempt');\n\n// Path to included `xdg-open`.\nconst __dirname = import.meta.url ? path.dirname(fileURLToPath(import.meta.url)) : '';\nconst localXdgOpenPath = path.join(__dirname, 'xdg-open');\n\nconst {platform, arch} = process;\n\nconst tryEachApp = async (apps, opener) => {\n\tif (apps.length === 0) {\n\t\t// No app was provided\n\t\treturn;\n\t}\n\n\tconst errors = [];\n\n\tfor (const app of apps) {\n\t\ttry {\n\t\t\treturn await opener(app); // eslint-disable-line no-await-in-loop\n\t\t} catch (error) {\n\t\t\terrors.push(error);\n\t\t}\n\t}\n\n\tthrow new AggregateError(errors, 'Failed to open in all supported apps');\n};\n\n// eslint-disable-next-line complexity\nconst baseOpen = async options => {\n\toptions = {\n\t\twait: false,\n\t\tbackground: false,\n\t\tnewInstance: false,\n\t\tallowNonzeroExitCode: false,\n\t\t...options,\n\t};\n\n\tconst isFallbackAttempt = options[fallbackAttemptSymbol] === true;\n\tdelete options[fallbackAttemptSymbol];\n\n\tif (Array.isArray(options.app)) {\n\t\treturn tryEachApp(options.app, singleApp => baseOpen({\n\t\t\t...options,\n\t\t\tapp: singleApp,\n\t\t\t[fallbackAttemptSymbol]: true,\n\t\t}));\n\t}\n\n\tlet {name: app, arguments: appArguments = []} = options.app ?? {};\n\tappArguments = [...appArguments];\n\n\tif (Array.isArray(app)) {\n\t\treturn tryEachApp(app, appName => baseOpen({\n\t\t\t...options,\n\t\t\tapp: {\n\t\t\t\tname: appName,\n\t\t\t\targuments: appArguments,\n\t\t\t},\n\t\t\t[fallbackAttemptSymbol]: true,\n\t\t}));\n\t}\n\n\tif (app === 'browser' || app === 'browserPrivate') {\n\t\t// IDs from default-browser for macOS and windows are the same.\n\t\t// IDs are lowercased to increase chances of a match.\n\t\tconst ids = {\n\t\t\t'com.google.chrome': 'chrome',\n\t\t\t'google-chrome.desktop': 'chrome',\n\t\t\t'com.brave.browser': 'brave',\n\t\t\t'org.mozilla.firefox': 'firefox',\n\t\t\t'firefox.desktop': 'firefox',\n\t\t\t'com.microsoft.msedge': 'edge',\n\t\t\t'com.microsoft.edge': 'edge',\n\t\t\t'com.microsoft.edgemac': 'edge',\n\t\t\t'microsoft-edge.desktop': 'edge',\n\t\t\t'com.apple.safari': 'safari',\n\t\t};\n\n\t\t// Incognito flags for each browser in `apps`.\n\t\tconst flags = {\n\t\t\tchrome: '--incognito',\n\t\t\tbrave: '--incognito',\n\t\t\tfirefox: '--private-window',\n\t\t\tedge: '--inPrivate',\n\t\t\t// Safari doesn't support private mode via command line\n\t\t};\n\n\t\tlet browser;\n\t\tif (isWsl) {\n\t\t\tconst progId = await wslDefaultBrowser();\n\t\t\tconst browserInfo = _windowsBrowserProgIdMap.get(progId);\n\t\t\tbrowser = browserInfo ?? {};\n\t\t} else {\n\t\t\tbrowser = await defaultBrowser();\n\t\t}\n\n\t\tif (browser.id in ids) {\n\t\t\tconst browserName = ids[browser.id.toLowerCase()];\n\n\t\t\tif (app === 'browserPrivate') {\n\t\t\t\t// Safari doesn't support private mode via command line\n\t\t\t\tif (browserName === 'safari') {\n\t\t\t\t\tthrow new Error('Safari doesn\\'t support opening in private mode via command line');\n\t\t\t\t}\n\n\t\t\t\tappArguments.push(flags[browserName]);\n\t\t\t}\n\n\t\t\treturn baseOpen({\n\t\t\t\t...options,\n\t\t\t\tapp: {\n\t\t\t\t\tname: apps[browserName],\n\t\t\t\t\targuments: appArguments,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\n\t\tthrow new Error(`${browser.name} is not supported as a default browser`);\n\t}\n\n\tlet command;\n\tconst cliArguments = [];\n\tconst childProcessOptions = {};\n\n\t// Determine if we should use Windows/PowerShell behavior in WSL.\n\t// We only use Windows integration if PowerShell is actually accessible.\n\t// This allows the package to work in sandboxed WSL environments where Windows access is restricted.\n\tlet shouldUseWindowsInWsl = false;\n\tif (isWsl && !isInsideContainer() && !isInSsh && !app) {\n\t\tshouldUseWindowsInWsl = await canAccessPowerShell();\n\t}\n\n\tif (platform === 'darwin') {\n\t\tcommand = 'open';\n\n\t\tif (options.wait) {\n\t\t\tcliArguments.push('--wait-apps');\n\t\t}\n\n\t\tif (options.background) {\n\t\t\tcliArguments.push('--background');\n\t\t}\n\n\t\tif (options.newInstance) {\n\t\t\tcliArguments.push('--new');\n\t\t}\n\n\t\tif (app) {\n\t\t\tcliArguments.push('-a', app);\n\t\t}\n\t} else if (platform === 'win32' || shouldUseWindowsInWsl) {\n\t\tcommand = await powerShellPath();\n\n\t\tcliArguments.push(...executePowerShell.argumentsPrefix);\n\n\t\tif (!isWsl) {\n\t\t\tchildProcessOptions.windowsVerbatimArguments = true;\n\t\t}\n\n\t\t// Convert WSL Linux paths to Windows paths\n\t\tif (isWsl && options.target) {\n\t\t\toptions.target = await convertWslPathToWindows(options.target);\n\t\t}\n\n\t\t// Suppress PowerShell progress messages that are written to stderr\n\t\tconst encodedArguments = ['$ProgressPreference = \\'SilentlyContinue\\';', 'Start'];\n\n\t\tif (options.wait) {\n\t\t\tencodedArguments.push('-Wait');\n\t\t}\n\n\t\tif (app) {\n\t\t\tencodedArguments.push(executePowerShell.escapeArgument(app));\n\t\t\tif (options.target) {\n\t\t\t\tappArguments.push(options.target);\n\t\t\t}\n\t\t} else if (options.target) {\n\t\t\tencodedArguments.push(executePowerShell.escapeArgument(options.target));\n\t\t}\n\n\t\tif (appArguments.length > 0) {\n\t\t\tappArguments = appArguments.map(argument => executePowerShell.escapeArgument(argument));\n\t\t\tencodedArguments.push('-ArgumentList', appArguments.join(','));\n\t\t}\n\n\t\t// Using Base64-encoded command, accepted by PowerShell, to allow special characters.\n\t\toptions.target = executePowerShell.encodeCommand(encodedArguments.join(' '));\n\n\t\tif (!options.wait) {\n\t\t\t// PowerShell will keep the parent process alive unless stdio is ignored.\n\t\t\tchildProcessOptions.stdio = 'ignore';\n\t\t}\n\t} else {\n\t\tif (app) {\n\t\t\tcommand = app;\n\t\t} else {\n\t\t\t// When bundled by Webpack, there's no actual package file path and no local `xdg-open`.\n\t\t\tconst isBundled = !__dirname || __dirname === '/';\n\n\t\t\t// Check if local `xdg-open` exists and is executable.\n\t\t\tlet exeLocalXdgOpen = false;\n\t\t\ttry {\n\t\t\t\tawait fs.access(localXdgOpenPath, fsConstants.X_OK);\n\t\t\t\texeLocalXdgOpen = true;\n\t\t\t} catch {}\n\n\t\t\tconst useSystemXdgOpen = process.versions.electron\n\t\t\t\t?? (platform === 'android' || isBundled || !exeLocalXdgOpen);\n\t\t\tcommand = useSystemXdgOpen ? 'xdg-open' : localXdgOpenPath;\n\t\t}\n\n\t\tif (appArguments.length > 0) {\n\t\t\tcliArguments.push(...appArguments);\n\t\t}\n\n\t\tif (!options.wait) {\n\t\t\t// `xdg-open` will block the process unless stdio is ignored\n\t\t\t// and it's detached from the parent even if it's unref'd.\n\t\t\tchildProcessOptions.stdio = 'ignore';\n\t\t\tchildProcessOptions.detached = true;\n\t\t}\n\t}\n\n\tif (platform === 'darwin' && appArguments.length > 0) {\n\t\tcliArguments.push('--args', ...appArguments);\n\t}\n\n\t// IMPORTANT: On macOS, the target MUST come AFTER '--args'.\n\t// When using --args, ALL following arguments are passed to the app.\n\t// Example: open -a \"chrome\" --args --incognito https://site.com\n\t// This passes BOTH --incognito AND https://site.com to Chrome.\n\t// Without this order, Chrome won't open in incognito. See #332.\n\tif (options.target) {\n\t\tcliArguments.push(options.target);\n\t}\n\n\tconst subprocess = childProcess.spawn(command, cliArguments, childProcessOptions);\n\n\tif (options.wait) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tsubprocess.once('error', reject);\n\n\t\t\tsubprocess.once('close', exitCode => {\n\t\t\t\tif (!options.allowNonzeroExitCode && exitCode !== 0) {\n\t\t\t\t\treject(new Error(`Exited with code ${exitCode}`));\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tresolve(subprocess);\n\t\t\t});\n\t\t});\n\t}\n\n\t// When we're in a fallback attempt, we need to detect launch failures before trying the next app.\n\t// Wait for the close event to check the exit code before unreffing.\n\t// The launcher (open/xdg-open/PowerShell) exits quickly (~10-30ms) even on success.\n\tif (isFallbackAttempt) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tsubprocess.once('error', reject);\n\n\t\t\tsubprocess.once('spawn', () => {\n\t\t\t\t// Keep error handler active for post-spawn errors\n\t\t\t\tsubprocess.once('close', exitCode => {\n\t\t\t\t\tsubprocess.off('error', reject);\n\n\t\t\t\t\tif (exitCode !== 0) {\n\t\t\t\t\t\treject(new Error(`Exited with code ${exitCode}`));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tsubprocess.unref();\n\t\t\t\t\tresolve(subprocess);\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\tsubprocess.unref();\n\n\t// Handle spawn errors before the caller can attach listeners.\n\t// This prevents unhandled error events from crashing the process.\n\treturn new Promise((resolve, reject) => {\n\t\tsubprocess.once('error', reject);\n\n\t\t// Wait for the subprocess to spawn before resolving.\n\t\t// This ensures the process is established before the caller continues,\n\t\t// preventing issues when process.exit() is called immediately after.\n\t\tsubprocess.once('spawn', () => {\n\t\t\tsubprocess.off('error', reject);\n\t\t\tresolve(subprocess);\n\t\t});\n\t});\n};\n\nconst open = (target, options) => {\n\tif (typeof target !== 'string') {\n\t\tthrow new TypeError('Expected a `target`');\n\t}\n\n\treturn baseOpen({\n\t\t...options,\n\t\ttarget,\n\t});\n};\n\nexport const openApp = (name, options) => {\n\tif (typeof name !== 'string' && !Array.isArray(name)) {\n\t\tthrow new TypeError('Expected a valid `name`');\n\t}\n\n\tconst {arguments: appArguments = []} = options ?? {};\n\tif (appArguments !== undefined && appArguments !== null && !Array.isArray(appArguments)) {\n\t\tthrow new TypeError('Expected `appArguments` as Array type');\n\t}\n\n\treturn baseOpen({\n\t\t...options,\n\t\tapp: {\n\t\t\tname,\n\t\t\targuments: appArguments,\n\t\t},\n\t});\n};\n\nfunction detectArchBinary(binary) {\n\tif (typeof binary === 'string' || Array.isArray(binary)) {\n\t\treturn binary;\n\t}\n\n\tconst {[arch]: archBinary} = binary;\n\n\tif (!archBinary) {\n\t\tthrow new Error(`${arch} is not supported`);\n\t}\n\n\treturn archBinary;\n}\n\nfunction detectPlatformBinary({[platform]: platformBinary}, {wsl} = {}) {\n\tif (wsl && isWsl) {\n\t\treturn detectArchBinary(wsl);\n\t}\n\n\tif (!platformBinary) {\n\t\tthrow new Error(`${platform} is not supported`);\n\t}\n\n\treturn detectArchBinary(platformBinary);\n}\n\nexport const apps = {\n\tbrowser: 'browser',\n\tbrowserPrivate: 'browserPrivate',\n};\n\ndefineLazyProperty(apps, 'chrome', () => detectPlatformBinary({\n\tdarwin: 'google chrome',\n\twin32: 'chrome',\n\t// `chromium-browser` is the older deb package name used by Ubuntu/Debian before snap.\n\tlinux: ['google-chrome', 'google-chrome-stable', 'chromium', 'chromium-browser'],\n}, {\n\twsl: {\n\t\tia32: '/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe',\n\t\tx64: ['/mnt/c/Program Files/Google/Chrome/Application/chrome.exe', '/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe'],\n\t},\n}));\n\ndefineLazyProperty(apps, 'brave', () => detectPlatformBinary({\n\tdarwin: 'brave browser',\n\twin32: 'brave',\n\tlinux: ['brave-browser', 'brave'],\n}, {\n\twsl: {\n\t\tia32: '/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe',\n\t\tx64: ['/mnt/c/Program Files/BraveSoftware/Brave-Browser/Application/brave.exe', '/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe'],\n\t},\n}));\n\ndefineLazyProperty(apps, 'firefox', () => detectPlatformBinary({\n\tdarwin: 'firefox',\n\twin32: String.raw`C:\\Program Files\\Mozilla Firefox\\firefox.exe`,\n\tlinux: 'firefox',\n}, {\n\twsl: '/mnt/c/Program Files/Mozilla Firefox/firefox.exe',\n}));\n\ndefineLazyProperty(apps, 'edge', () => detectPlatformBinary({\n\tdarwin: 'microsoft edge',\n\twin32: 'msedge',\n\tlinux: ['microsoft-edge', 'microsoft-edge-dev'],\n}, {\n\twsl: '/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe',\n}));\n\ndefineLazyProperty(apps, 'safari', () => detectPlatformBinary({\n\tdarwin: 'Safari',\n}));\n\nexport default open;\n"]}
|