@wirecat/zoom-cli 0.59.1 → 0.60.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -3
- package/dist/bin/main.js +1 -0
- package/dist/bin/main.js.map +1 -1
- package/dist/bin/zm.js +2 -2
- package/dist/bundle/{all-profiles-RS5IWIGR.js → all-profiles-E6KXASLY.js} +6 -6
- package/dist/bundle/answer-policy-YWCC55NB.js +96 -0
- package/dist/bundle/{anthropic-5QHQR4WF.js → anthropic-CSLAACWX.js} +4 -4
- package/dist/bundle/{app-server-7LANSZGE.js → app-server-RYYXX6QV.js} +48 -48
- package/dist/bundle/{bun-O6RL6LRQ.js → bun-JVDJVDHL.js} +2 -2
- package/dist/bundle/{bun-sqlite-PEJM6CS4.js → bun-sqlite-B5CZHAV4.js} +3 -3
- package/dist/bundle/{chunk-BXZ6WSVF.js → chunk-3LBA63D5.js} +4 -4
- package/dist/bundle/{chunk-UXM7I35J.js → chunk-3R437ICM.js} +4 -4
- package/dist/bundle/{chunk-MBT7GP7K.js → chunk-43BX56ZI.js} +9 -9
- package/dist/bundle/{chunk-VYUSEJE4.js → chunk-46R2JTGO.js} +2 -2
- package/dist/bundle/{chunk-2EYP23NY.js → chunk-4TCQT57W.js} +10 -10
- package/dist/bundle/{chunk-3SCTDFNO.js → chunk-6BJQBVMN.js} +16 -16
- package/dist/bundle/{chunk-AQDWGJZT.js → chunk-7IDNHVJS.js} +39 -2
- package/dist/bundle/{chunk-PF25S7L4.js → chunk-AOZGGGUK.js} +2 -2
- package/dist/bundle/{chunk-G27MRA24.js → chunk-AZZPMHP2.js} +2 -2
- package/dist/bundle/{chunk-T6AAM7UT.js → chunk-BO7J5Z3T.js} +20 -17
- package/dist/bundle/{chunk-PNBEREOU.js → chunk-CGCJ6P3A.js} +1906 -1529
- package/dist/bundle/{chunk-PKTFZAXG.js → chunk-DBSWVZES.js} +2 -2
- package/dist/bundle/{chunk-CVIKKIGE.js → chunk-EF2RCQ3L.js} +1 -1
- package/dist/bundle/{chunk-K76WFW4I.js → chunk-EN5DBDKW.js} +4 -4
- package/dist/bundle/{chunk-NDXAZB5Z.js → chunk-ES6UWVTM.js} +6 -6
- package/dist/bundle/{chunk-BAQLQIMI.js → chunk-EUHQ5D4K.js} +31 -27
- package/dist/bundle/{chunk-KVHRHBLY.js → chunk-FWJ3Q7NO.js} +5 -5
- package/dist/bundle/{chunk-ZTOAAYFV.js → chunk-FZMRHNOP.js} +3 -3
- package/dist/bundle/{chunk-NOKFJJPA.js → chunk-GEVHI226.js} +6 -6
- package/dist/bundle/{chunk-YJRMMZI5.js → chunk-HAUAEGGI.js} +10 -10
- package/dist/bundle/{chunk-4NGLRHWO.js → chunk-HBYE4EP2.js} +1 -1
- package/dist/bundle/{chunk-NW7IMGRR.js → chunk-HIAO4MPA.js} +1 -1
- package/dist/bundle/{chunk-VSUY7PDW.js → chunk-HYZ545ON.js} +7 -4
- package/dist/bundle/{chunk-OBZWUNO4.js → chunk-INARC5O7.js} +9 -9
- package/dist/bundle/{chunk-A6323R5P.js → chunk-IQENQXUJ.js} +2 -2
- package/dist/bundle/{chunk-UYJUTZTT.js → chunk-IQSBMAYB.js} +3 -3
- package/dist/bundle/{chunk-4AURKUDZ.js → chunk-IRX2YVAH.js} +4 -4
- package/dist/bundle/{chunk-CTGI4ES2.js → chunk-K6NPOZUP.js} +6 -6
- package/dist/bundle/{chunk-7H3ZRDLW.js → chunk-KNAS4VEA.js} +2 -2
- package/dist/bundle/{chunk-B32SF7J3.js → chunk-KXEC5FVT.js} +2 -2
- package/dist/bundle/{chunk-XFCSPOLZ.js → chunk-KYUIU5UR.js} +2 -2
- package/dist/bundle/{chunk-KDYPY6IL.js → chunk-LPDYI5GR.js} +1 -1
- package/dist/bundle/{chunk-L3VS3H34.js → chunk-LPY2ISJK.js} +6 -6
- package/dist/bundle/{chunk-UOFOMU3T.js → chunk-LVHZQCP4.js} +1 -1
- package/dist/bundle/{chunk-QFGBMS67.js → chunk-N27LOY3D.js} +14 -7
- package/dist/bundle/{chunk-JUS4H7Z5.js → chunk-OBUKZ2ZM.js} +25 -25
- package/dist/bundle/{chunk-RXDIG23Z.js → chunk-OEEMCNAO.js} +6 -6
- package/dist/bundle/{chunk-URO44C5T.js → chunk-PAEBFJUC.js} +157 -145
- package/dist/bundle/{chunk-EUQ7XFPK.js → chunk-PATM7JGR.js} +1 -1
- package/dist/bundle/{chunk-6FL25KC5.js → chunk-PEMLI3T7.js} +4 -4
- package/dist/bundle/{chunk-5DVW77VC.js → chunk-PPHUBORC.js} +32 -32
- package/dist/bundle/{chunk-PP3JGQQE.js → chunk-Q7U627RY.js} +110 -54
- package/dist/bundle/{chunk-7GVNQOV6.js → chunk-QKSCDALS.js} +1 -1
- package/dist/bundle/{chunk-YIMI6O7R.js → chunk-R4SRXI7M.js} +111 -111
- package/dist/bundle/{chunk-DP5DX45H.js → chunk-RACSKYNX.js} +1 -1
- package/dist/bundle/{chunk-L2UIJDWB.js → chunk-REC3AZP6.js} +2 -2
- package/dist/bundle/{chunk-24DLFGES.js → chunk-RUEPZTNA.js} +2 -2
- package/dist/bundle/{chunk-ZC5UXEIH.js → chunk-TY5PBEH2.js} +11 -11
- package/dist/bundle/{chunk-UKR7KH3H.js → chunk-UWVNY5CA.js} +2 -2
- package/dist/bundle/{chunk-SIA7HJE2.js → chunk-V53IB5AU.js} +56 -49
- package/dist/bundle/{chunk-N7GAQ27N.js → chunk-VJBVNDFR.js} +3 -3
- package/dist/bundle/{chunk-IYAGQXED.js → chunk-VKUS2V4L.js} +8 -8
- package/dist/bundle/{chunk-27P22POE.js → chunk-VLE3FWE3.js} +30 -26
- package/dist/bundle/{recognize-EMHQX4XF.js → chunk-VVKHF6VJ.js} +7 -6
- package/dist/bundle/{chunk-AIXLOMH4.js → chunk-W5EUHV3J.js} +1 -1
- package/dist/bundle/{chunk-QCFHL4ES.js → chunk-WB7MQHUI.js} +2 -2
- package/dist/bundle/{chunk-7Z4ANTAK.js → chunk-WEUXLXOZ.js} +28 -20
- package/dist/bundle/{chunk-VOAVOK4I.js → chunk-WFT2GGFH.js} +57 -18
- package/dist/bundle/{chunk-DXZTLB24.js → chunk-WWNZS7ZY.js} +4 -4
- package/dist/bundle/{chunk-MIGIKHER.js → chunk-WYRYLBST.js} +4 -4
- package/dist/bundle/{chunk-PACC5N6T.js → chunk-X7YPTYM4.js} +10 -3
- package/dist/bundle/{chunk-DXKVEOSS.js → chunk-XLJV3ZOH.js} +1 -1
- package/dist/bundle/{chunk-7D2CD3E3.js → chunk-XNUFDYR6.js} +5 -5
- package/dist/bundle/{chunk-YIFIY7ZE.js → chunk-XS72YFPV.js} +2 -2
- package/dist/bundle/{chunk-ZHXIXDH5.js → chunk-XX7KVQIG.js} +4 -4
- package/dist/bundle/{chunk-MNUTWGSA.js → chunk-Y3YURIZF.js} +32 -32
- package/dist/bundle/{chunk-XT7XVPEM.js → chunk-YEZQ7SD7.js} +11 -11
- package/dist/bundle/{chunk-SL3SXQZ5.js → chunk-YLATWUE7.js} +6 -6
- package/dist/bundle/{chunk-MMT46EN4.js → chunk-Z4D6M62I.js} +2 -2
- package/dist/bundle/{chunk-3SERIWJD.js → chunk-Z5H47R4G.js} +7856 -7818
- package/dist/bundle/{chunk-U6QW67SU.js → chunk-ZDRDCANC.js} +374 -317
- package/dist/bundle/{chunk-DDYR6DYL.js → chunk-ZK7Y5K63.js} +1 -1
- package/dist/bundle/{chunk-YSHSCBPM.js → chunk-ZXQCA3ZW.js} +8 -8
- package/dist/bundle/{cli-IQTASP44.js → cli-CYKEKT5P.js} +54 -54
- package/dist/bundle/command-contract-P45QCCXM.js +38 -0
- package/dist/bundle/config-JYKTLEA3.js +79 -0
- package/dist/bundle/decode-CTQJQYNU.js +158 -0
- package/dist/bundle/{dist-WT73DF46.js → dist-YLSQKPPY.js} +13 -13
- package/dist/bundle/{echarts-LD3AI55P.js → echarts-4OQHS575.js} +2 -2
- package/dist/bundle/{embed-XEMH4LNX.js → embed-P2BKRRJD.js} +4 -4
- package/dist/bundle/{embedder-ZCYKSKAE.js → embedder-HC6ZARP5.js} +7 -7
- package/dist/bundle/{first-run-LGYDLIUM.js → first-run-UERFFXBV.js} +7 -7
- package/dist/bundle/first-screen-VFIS7FX3.js +36 -0
- package/dist/bundle/{folders-5ZBUQHAM.js → folders-RSLPTZLJ.js} +2 -2
- package/dist/bundle/{instructions-RZMSW3OC.js → instructions-3QZBKKPF.js} +1 -1
- package/dist/bundle/{main-LDCSYBV3.js → main-2T6D77JC.js} +17 -16
- package/dist/bundle/mcp-4VHVUMCR.js +92 -0
- package/dist/bundle/{mcp-M7MW5EGT.js → mcp-6CLW2IZM.js} +62 -62
- package/dist/bundle/{meetings-XPBHVZAU.js → meetings-ZIDSQZBJ.js} +7 -3
- package/dist/bundle/{node-ZRLYQL7J.js → node-R2BLYUSB.js} +2 -2
- package/dist/bundle/node-sqlite-7CGHAHIS.js +61 -0
- package/dist/bundle/{oauth-UHVRGKZU.js → oauth-UBCYXTWV.js} +5 -5
- package/dist/bundle/{open-J4FCAUAJ.js → open-AWUB4Q7Z.js} +2 -2
- package/dist/bundle/{output-file-SXV2ANW7.js → output-file-SN22HAVL.js} +3 -3
- package/dist/bundle/{process-LL77573L.js → process-IX5YWGDP.js} +1 -1
- package/dist/bundle/{program-4S5BJVSW.js → program-STYPTNT3.js} +74 -70
- package/dist/bundle/{prompt-LUUMQTMY.js → prompt-MAYUHEGN.js} +3 -3
- package/dist/bundle/recognize-FVTNXRTF.js +21 -0
- package/dist/bundle/{remote-ZXS6D7VB.js → remote-WCPRU73L.js} +5 -5
- package/dist/bundle/{rerank-WP7RKZNB.js → rerank-6CBLZBCV.js} +5 -5
- package/dist/bundle/{run-log-GS2L66G6.js → run-log-G4WZTOBW.js} +51 -51
- package/dist/bundle/{serve-L6KLLXK2.js → serve-3IDUVTZL.js} +7 -7
- package/dist/bundle/server-7GU36TER.js +66 -0
- package/dist/bundle/server-VHRS5UAL.js +53 -0
- package/dist/bundle/{services-SPOEWVK3.js → services-326Z3TNE.js} +24 -24
- package/dist/bundle/{speech-6OBAKMND.js → speech-KSZ7RKM3.js} +4 -4
- package/dist/bundle/{state-HN5EJKXQ.js → state-EPB3L2JM.js} +4 -4
- package/dist/bundle/{store-ZP2URKET.js → store-7WX7SW2R.js} +14 -14
- package/dist/bundle/{store-LEU3M6IN.js → store-KO242JBK.js} +12 -12
- package/dist/bundle/store-connection-K3MNDCQQ.js +76 -0
- package/dist/bundle/store-maintenance-command-GJDJYI2U.js +54 -0
- package/dist/bundle/{streaming-AK6Q2ZGQ.js → streaming-M6VDKBBH.js} +4 -4
- package/dist/bundle/{tokens-CCM3D4ZT.js → tokens-BTNXHR7T.js} +4 -4
- package/dist/bundle/zm.js +1 -1
- package/dist/login.d.ts +1 -0
- package/dist/login.d.ts.map +1 -1
- package/dist/login.js +1 -1
- package/dist/login.js.map +1 -1
- package/dist/recording-schedule-setup.d.ts.map +1 -1
- package/dist/recording-schedule-setup.js +1 -0
- package/dist/recording-schedule-setup.js.map +1 -1
- package/dist/setup-commands.d.ts.map +1 -1
- package/dist/setup-commands.js +6 -1
- package/dist/setup-commands.js.map +1 -1
- package/dist/tokens.d.ts +15 -0
- package/dist/tokens.d.ts.map +1 -1
- package/dist/tokens.js +40 -1
- package/dist/tokens.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/skills/zoom-cli/SKILL.md +1 -0
- package/dist/bundle/answer-policy-7BYG6XWZ.js +0 -96
- package/dist/bundle/command-contract-WHZPF7NA.js +0 -38
- package/dist/bundle/config-AXMQ2PXT.js +0 -79
- package/dist/bundle/first-screen-LYQKPNF4.js +0 -36
- package/dist/bundle/mcp-VISEXTVC.js +0 -92
- package/dist/bundle/node-sqlite-BBEDYBWO.js +0 -45
- package/dist/bundle/server-NOFYENP5.js +0 -53
- package/dist/bundle/server-P5TXAPBY.js +0 -66
- package/dist/bundle/store-connection-3UZBORXK.js +0 -76
- package/dist/bundle/store-maintenance-command-PSCHEHHY.js +0 -54
- /package/dist/bundle/{chunk-Q2Z3VCM4.js → chunk-YLBNPI7H.js} +0 -0
|
@@ -4531,6 +4531,115 @@ var systemKeyring = {
|
|
|
4531
4531
|
delete: /* @__PURE__ */ __name((service, account) => entry(service, account).deletePassword(), "delete")
|
|
4532
4532
|
};
|
|
4533
4533
|
|
|
4534
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/credentials.js
|
|
4535
|
+
import { readFileSync as readFileSync2 } from "node:fs";
|
|
4536
|
+
import { join as join2 } from "node:path";
|
|
4537
|
+
var keyringService = /* @__PURE__ */ __name((service, configDir, isolated = false) => isolated ? `${service}:${configDir}` : service, "keyringService");
|
|
4538
|
+
var Credentials = class {
|
|
4539
|
+
static {
|
|
4540
|
+
__name(this, "Credentials");
|
|
4541
|
+
}
|
|
4542
|
+
#configDir;
|
|
4543
|
+
#storage;
|
|
4544
|
+
#keyring;
|
|
4545
|
+
#env;
|
|
4546
|
+
#service;
|
|
4547
|
+
#envVar;
|
|
4548
|
+
#fileName;
|
|
4549
|
+
#warn;
|
|
4550
|
+
#warned = false;
|
|
4551
|
+
constructor(options) {
|
|
4552
|
+
this.#configDir = options.configDir;
|
|
4553
|
+
this.#storage = options.storage ?? "auto";
|
|
4554
|
+
this.#keyring = options.keyring ?? systemKeyring;
|
|
4555
|
+
this.#env = options.env ?? process.env;
|
|
4556
|
+
this.#envVar = options.envVar;
|
|
4557
|
+
this.#fileName = options.fileName ?? "credentials.json";
|
|
4558
|
+
this.#warn = options.warn ?? ((message) => process.stderr.write(`${message}
|
|
4559
|
+
`));
|
|
4560
|
+
this.#service = keyringService(options.service, options.configDir, options.isolated);
|
|
4561
|
+
}
|
|
4562
|
+
read(account) {
|
|
4563
|
+
const fromEnv = this.#envVar ? this.#env[this.#envVar]?.trim() : void 0;
|
|
4564
|
+
if (fromEnv)
|
|
4565
|
+
return { secret: fromEnv, source: "environment" };
|
|
4566
|
+
if (this.#storage !== "file") {
|
|
4567
|
+
const fromKeyring = this.#tryKeyring(() => this.#keyring.get(this.#service, account));
|
|
4568
|
+
if (fromKeyring)
|
|
4569
|
+
return { secret: fromKeyring, source: "keyring" };
|
|
4570
|
+
}
|
|
4571
|
+
const fromFile = this.#readFile()?.[account]?.secret;
|
|
4572
|
+
return fromFile ? { secret: fromFile, source: "file" } : void 0;
|
|
4573
|
+
}
|
|
4574
|
+
write(account, secret) {
|
|
4575
|
+
if (this.#storage !== "file") {
|
|
4576
|
+
const stored = this.#tryKeyring(() => {
|
|
4577
|
+
this.#keyring.set(this.#service, account, secret);
|
|
4578
|
+
return true;
|
|
4579
|
+
});
|
|
4580
|
+
if (stored)
|
|
4581
|
+
return "keyring";
|
|
4582
|
+
}
|
|
4583
|
+
const store2 = this.#readFile();
|
|
4584
|
+
if (!store2) {
|
|
4585
|
+
throw new CliError("configuration_error", `${this.#path()} cannot be read as a credentials file; storing now would replace every secret in it. Fix the file or move it aside, then try again.`);
|
|
4586
|
+
}
|
|
4587
|
+
store2[account] = { secret };
|
|
4588
|
+
this.#writeFile(store2);
|
|
4589
|
+
return "file";
|
|
4590
|
+
}
|
|
4591
|
+
remove(account) {
|
|
4592
|
+
const removed = [];
|
|
4593
|
+
if (this.#storage !== "file" && this.#tryKeyring(() => this.#keyring.delete(this.#service, account))) {
|
|
4594
|
+
removed.push("keyring");
|
|
4595
|
+
}
|
|
4596
|
+
const store2 = this.#readFile();
|
|
4597
|
+
if (store2?.[account] !== void 0) {
|
|
4598
|
+
delete store2[account];
|
|
4599
|
+
this.#writeFile(store2);
|
|
4600
|
+
removed.push("file");
|
|
4601
|
+
}
|
|
4602
|
+
return removed;
|
|
4603
|
+
}
|
|
4604
|
+
#path() {
|
|
4605
|
+
return join2(this.#configDir, this.#fileName);
|
|
4606
|
+
}
|
|
4607
|
+
/** `undefined` when the file exists but is not a store: writing would replace what it holds. */
|
|
4608
|
+
#readFile() {
|
|
4609
|
+
let text2;
|
|
4610
|
+
try {
|
|
4611
|
+
text2 = readFileSync2(this.#path(), "utf8");
|
|
4612
|
+
} catch (error) {
|
|
4613
|
+
if (error.code === "ENOENT")
|
|
4614
|
+
return {};
|
|
4615
|
+
return void 0;
|
|
4616
|
+
}
|
|
4617
|
+
try {
|
|
4618
|
+
const parsed = JSON.parse(text2);
|
|
4619
|
+
return typeof parsed === "object" && parsed !== null && !Array.isArray(parsed) ? parsed : void 0;
|
|
4620
|
+
} catch {
|
|
4621
|
+
return void 0;
|
|
4622
|
+
}
|
|
4623
|
+
}
|
|
4624
|
+
#writeFile(store2) {
|
|
4625
|
+
writeSecurely(this.#path(), `${JSON.stringify(store2, null, 2)}
|
|
4626
|
+
`, 384);
|
|
4627
|
+
}
|
|
4628
|
+
#tryKeyring(operation) {
|
|
4629
|
+
if (this.#storage === "keyring")
|
|
4630
|
+
return operation();
|
|
4631
|
+
try {
|
|
4632
|
+
return operation();
|
|
4633
|
+
} catch (error) {
|
|
4634
|
+
if (!this.#warned) {
|
|
4635
|
+
this.#warned = true;
|
|
4636
|
+
this.#warn(`could not reach the OS keyring \u2014 it may be locked, or no keyring service is running (${error instanceof Error ? error.message : String(error)}); using ${this.#path()} instead, readable only by you`);
|
|
4637
|
+
}
|
|
4638
|
+
return void 0;
|
|
4639
|
+
}
|
|
4640
|
+
}
|
|
4641
|
+
};
|
|
4642
|
+
|
|
4534
4643
|
// node_modules/.pnpm/@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/logging.js
|
|
4535
4644
|
import { appendFileSync } from "node:fs";
|
|
4536
4645
|
|
|
@@ -4769,7 +4878,7 @@ var createOutputBuffer = /* @__PURE__ */ __name(({ maxOutputBytes = 4 * 1024 * 1
|
|
|
4769
4878
|
|
|
4770
4879
|
// node_modules/.pnpm/@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/paths.js
|
|
4771
4880
|
import { homedir } from "node:os";
|
|
4772
|
-
import { join as
|
|
4881
|
+
import { join as join3, posix, win32 } from "node:path";
|
|
4773
4882
|
var PATH_KINDS = ["config", "state", "cache"];
|
|
4774
4883
|
var OVERRIDES = { config: "CONFIG_DIR", state: "STATE_DIR", cache: "CACHE_DIR" };
|
|
4775
4884
|
var overrideName = /* @__PURE__ */ __name((appName, prefix, kind) => `${prefix ?? appName.toUpperCase().replace(/[^A-Z0-9]/g, "_")}_${OVERRIDES[kind]}`, "overrideName");
|
|
@@ -4801,116 +4910,7 @@ var resolvePaths = /* @__PURE__ */ __name((options) => {
|
|
|
4801
4910
|
};
|
|
4802
4911
|
}, "resolvePaths");
|
|
4803
4912
|
var pathsAreOverridden = /* @__PURE__ */ __name(({ appName, prefix, env = process.env }) => PATH_KINDS.some((kind) => env[overrideName(appName, prefix, kind)] !== void 0), "pathsAreOverridden");
|
|
4804
|
-
var configFilePath = /* @__PURE__ */ __name((configDir, fileName = "config.json") =>
|
|
4805
|
-
|
|
4806
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/credentials.js
|
|
4807
|
-
import { readFileSync as readFileSync2 } from "node:fs";
|
|
4808
|
-
import { join as join3 } from "node:path";
|
|
4809
|
-
var keyringService = /* @__PURE__ */ __name((service, configDir, isolated = false) => isolated ? `${service}:${configDir}` : service, "keyringService");
|
|
4810
|
-
var Credentials = class {
|
|
4811
|
-
static {
|
|
4812
|
-
__name(this, "Credentials");
|
|
4813
|
-
}
|
|
4814
|
-
#configDir;
|
|
4815
|
-
#storage;
|
|
4816
|
-
#keyring;
|
|
4817
|
-
#env;
|
|
4818
|
-
#service;
|
|
4819
|
-
#envVar;
|
|
4820
|
-
#fileName;
|
|
4821
|
-
#warn;
|
|
4822
|
-
#warned = false;
|
|
4823
|
-
constructor(options) {
|
|
4824
|
-
this.#configDir = options.configDir;
|
|
4825
|
-
this.#storage = options.storage ?? "auto";
|
|
4826
|
-
this.#keyring = options.keyring ?? systemKeyring;
|
|
4827
|
-
this.#env = options.env ?? process.env;
|
|
4828
|
-
this.#envVar = options.envVar;
|
|
4829
|
-
this.#fileName = options.fileName ?? "credentials.json";
|
|
4830
|
-
this.#warn = options.warn ?? ((message) => process.stderr.write(`${message}
|
|
4831
|
-
`));
|
|
4832
|
-
this.#service = keyringService(options.service, options.configDir, options.isolated);
|
|
4833
|
-
}
|
|
4834
|
-
read(account) {
|
|
4835
|
-
const fromEnv = this.#envVar ? this.#env[this.#envVar]?.trim() : void 0;
|
|
4836
|
-
if (fromEnv)
|
|
4837
|
-
return { secret: fromEnv, source: "environment" };
|
|
4838
|
-
if (this.#storage !== "file") {
|
|
4839
|
-
const fromKeyring = this.#tryKeyring(() => this.#keyring.get(this.#service, account));
|
|
4840
|
-
if (fromKeyring)
|
|
4841
|
-
return { secret: fromKeyring, source: "keyring" };
|
|
4842
|
-
}
|
|
4843
|
-
const fromFile = this.#readFile()?.[account]?.secret;
|
|
4844
|
-
return fromFile ? { secret: fromFile, source: "file" } : void 0;
|
|
4845
|
-
}
|
|
4846
|
-
write(account, secret) {
|
|
4847
|
-
if (this.#storage !== "file") {
|
|
4848
|
-
const stored = this.#tryKeyring(() => {
|
|
4849
|
-
this.#keyring.set(this.#service, account, secret);
|
|
4850
|
-
return true;
|
|
4851
|
-
});
|
|
4852
|
-
if (stored)
|
|
4853
|
-
return "keyring";
|
|
4854
|
-
}
|
|
4855
|
-
const store2 = this.#readFile();
|
|
4856
|
-
if (!store2) {
|
|
4857
|
-
throw new CliError("configuration_error", `${this.#path()} cannot be read as a credentials file; storing now would replace every secret in it. Fix the file or move it aside, then try again.`);
|
|
4858
|
-
}
|
|
4859
|
-
store2[account] = { secret };
|
|
4860
|
-
this.#writeFile(store2);
|
|
4861
|
-
return "file";
|
|
4862
|
-
}
|
|
4863
|
-
remove(account) {
|
|
4864
|
-
const removed = [];
|
|
4865
|
-
if (this.#storage !== "file" && this.#tryKeyring(() => this.#keyring.delete(this.#service, account))) {
|
|
4866
|
-
removed.push("keyring");
|
|
4867
|
-
}
|
|
4868
|
-
const store2 = this.#readFile();
|
|
4869
|
-
if (store2?.[account] !== void 0) {
|
|
4870
|
-
delete store2[account];
|
|
4871
|
-
this.#writeFile(store2);
|
|
4872
|
-
removed.push("file");
|
|
4873
|
-
}
|
|
4874
|
-
return removed;
|
|
4875
|
-
}
|
|
4876
|
-
#path() {
|
|
4877
|
-
return join3(this.#configDir, this.#fileName);
|
|
4878
|
-
}
|
|
4879
|
-
/** `undefined` when the file exists but is not a store: writing would replace what it holds. */
|
|
4880
|
-
#readFile() {
|
|
4881
|
-
let text2;
|
|
4882
|
-
try {
|
|
4883
|
-
text2 = readFileSync2(this.#path(), "utf8");
|
|
4884
|
-
} catch (error) {
|
|
4885
|
-
if (error.code === "ENOENT")
|
|
4886
|
-
return {};
|
|
4887
|
-
return void 0;
|
|
4888
|
-
}
|
|
4889
|
-
try {
|
|
4890
|
-
const parsed = JSON.parse(text2);
|
|
4891
|
-
return typeof parsed === "object" && parsed !== null && !Array.isArray(parsed) ? parsed : void 0;
|
|
4892
|
-
} catch {
|
|
4893
|
-
return void 0;
|
|
4894
|
-
}
|
|
4895
|
-
}
|
|
4896
|
-
#writeFile(store2) {
|
|
4897
|
-
writeSecurely(this.#path(), `${JSON.stringify(store2, null, 2)}
|
|
4898
|
-
`, 384);
|
|
4899
|
-
}
|
|
4900
|
-
#tryKeyring(operation) {
|
|
4901
|
-
if (this.#storage === "keyring")
|
|
4902
|
-
return operation();
|
|
4903
|
-
try {
|
|
4904
|
-
return operation();
|
|
4905
|
-
} catch (error) {
|
|
4906
|
-
if (!this.#warned) {
|
|
4907
|
-
this.#warned = true;
|
|
4908
|
-
this.#warn(`could not reach the OS keyring \u2014 it may be locked, or no keyring service is running (${error instanceof Error ? error.message : String(error)}); using ${this.#path()} instead, readable only by you`);
|
|
4909
|
-
}
|
|
4910
|
-
return void 0;
|
|
4911
|
-
}
|
|
4912
|
-
}
|
|
4913
|
-
};
|
|
4913
|
+
var configFilePath = /* @__PURE__ */ __name((configDir, fileName = "config.json") => join3(configDir, fileName), "configFilePath");
|
|
4914
4914
|
|
|
4915
4915
|
// node_modules/.pnpm/@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/time.js
|
|
4916
4916
|
var abortError = /* @__PURE__ */ __name(() => new DOMException("The operation was aborted.", "AbortError"), "abortError");
|
|
@@ -10,12 +10,12 @@ import {
|
|
|
10
10
|
optional,
|
|
11
11
|
pipe,
|
|
12
12
|
safeParse
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-R4SRXI7M.js";
|
|
14
14
|
import {
|
|
15
15
|
__name
|
|
16
16
|
} from "./chunk-ZVVMGPBJ.js";
|
|
17
17
|
|
|
18
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
18
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.491.0_@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_type_1193098e908042dfe6f4070222ac0245/node_modules/@wirecat/cli-core/dist/models/options.js
|
|
19
19
|
var checkedOptions = /* @__PURE__ */ __name((provider, schema, options) => {
|
|
20
20
|
const parsed = safeParse(schema, options);
|
|
21
21
|
if (!parsed.success) {
|
|
@@ -2,11 +2,11 @@ import { createRequire as __bundleRequire } from "node:module";
|
|
|
2
2
|
const require = __bundleRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
checkCancelled
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-46R2JTGO.js";
|
|
6
6
|
import {
|
|
7
7
|
CliError,
|
|
8
8
|
createOutputBuffer
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-R4SRXI7M.js";
|
|
10
10
|
import {
|
|
11
11
|
__name
|
|
12
12
|
} from "./chunk-ZVVMGPBJ.js";
|
|
@@ -3,28 +3,28 @@ const require = __bundleRequire(import.meta.url);
|
|
|
3
3
|
import {
|
|
4
4
|
installerOf,
|
|
5
5
|
updateCommand
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-RACSKYNX.js";
|
|
7
7
|
import {
|
|
8
8
|
QUESTIONS,
|
|
9
9
|
readSetupAnswers,
|
|
10
10
|
unanswered,
|
|
11
11
|
writeSetupAnswers
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-IRX2YVAH.js";
|
|
13
13
|
import {
|
|
14
14
|
DEFAULT_STEMMERS,
|
|
15
15
|
LANGUAGES
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-ZXQCA3ZW.js";
|
|
17
17
|
import {
|
|
18
18
|
sharedConfigPath
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-FWJ3Q7NO.js";
|
|
20
20
|
import {
|
|
21
21
|
storePath
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-KXEC5FVT.js";
|
|
23
23
|
import {
|
|
24
24
|
__name
|
|
25
25
|
} from "./chunk-ZVVMGPBJ.js";
|
|
26
26
|
|
|
27
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
27
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.491.0_@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_type_1193098e908042dfe6f4070222ac0245/node_modules/@wirecat/cli-core/dist/cli/first-run.js
|
|
28
28
|
import { spawnSync } from "node:child_process";
|
|
29
29
|
import { accessSync, constants, realpathSync } from "node:fs";
|
|
30
30
|
import { delimiter, join } from "node:path";
|
|
@@ -82,7 +82,7 @@ var suggested = /* @__PURE__ */ __name((env, contentLanguages) => {
|
|
|
82
82
|
return (own.length ? own : LANGUAGES.filter(({ code }) => code === "en" || code === system)).map(({ name }) => name);
|
|
83
83
|
}, "suggested");
|
|
84
84
|
var askLanguages = /* @__PURE__ */ __name(async ({ command, env, io, contentLanguages }) => {
|
|
85
|
-
const { openStore } = await import("./store-
|
|
85
|
+
const { openStore } = await import("./store-KO242JBK.js");
|
|
86
86
|
const store = await openStore({ env });
|
|
87
87
|
let rebuild = false;
|
|
88
88
|
try {
|
|
@@ -111,8 +111,8 @@ var askLanguages = /* @__PURE__ */ __name(async ({ command, env, io, contentLang
|
|
|
111
111
|
if (!rebuild)
|
|
112
112
|
return;
|
|
113
113
|
const [{ openCache }, { buildStems }] = await Promise.all([
|
|
114
|
-
import("./open-
|
|
115
|
-
import("./store-maintenance-command-
|
|
114
|
+
import("./open-AWUB4Q7Z.js"),
|
|
115
|
+
import("./store-maintenance-command-GJDJYI2U.js")
|
|
116
116
|
]);
|
|
117
117
|
const database = await openCache(storePath(env));
|
|
118
118
|
try {
|
|
@@ -124,7 +124,7 @@ var askLanguages = /* @__PURE__ */ __name(async ({ command, env, io, contentLang
|
|
|
124
124
|
var askTools = /* @__PURE__ */ __name(async (run) => {
|
|
125
125
|
const { command, env, io } = run;
|
|
126
126
|
const installed = run.installed ?? ((name) => onPath(name, env));
|
|
127
|
-
const { WIRECAT_TOOLS } = await import("./first-screen-
|
|
127
|
+
const { WIRECAT_TOOLS } = await import("./first-screen-VFIS7FX3.js");
|
|
128
128
|
const others = WIRECAT_TOOLS.filter((tool) => tool.command !== command);
|
|
129
129
|
const missing = others.filter((tool) => !installed(tool.command));
|
|
130
130
|
io.say("Other WireCat tools \u2014 they share this store, so one search finds everything:");
|
|
@@ -197,7 +197,7 @@ var setupAtStart = /* @__PURE__ */ __name(async (start) => {
|
|
|
197
197
|
contentLanguages: start.contentLanguages,
|
|
198
198
|
all: start.path[0] === "setup",
|
|
199
199
|
io: {
|
|
200
|
-
ask: /* @__PURE__ */ __name(async (prompt) => (await import("./prompt-
|
|
200
|
+
ask: /* @__PURE__ */ __name(async (prompt) => (await import("./prompt-MAYUHEGN.js")).readSecret(prompt, { input, echo: true }), "ask"),
|
|
201
201
|
say: /* @__PURE__ */ __name((text) => process.stderr.write(`${text}
|
|
202
202
|
`), "say")
|
|
203
203
|
}
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
ACCESS_SECONDS,
|
|
5
5
|
REFRESH_SECONDS,
|
|
6
6
|
readStored
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-XX7KVQIG.js";
|
|
8
8
|
import {
|
|
9
9
|
OAuthError,
|
|
10
10
|
OAuthErrorCode
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
__name
|
|
14
14
|
} from "./chunk-ZVVMGPBJ.js";
|
|
15
15
|
|
|
16
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
16
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.491.0_@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_type_1193098e908042dfe6f4070222ac0245/node_modules/@wirecat/cli-core/dist/mcp/http/oauth.js
|
|
17
17
|
import { createHash, randomBytes, randomInt, timingSafeEqual } from "node:crypto";
|
|
18
18
|
import { chmodSync, mkdirSync, renameSync, rmSync, writeFileSync } from "node:fs";
|
|
19
19
|
import { dirname } from "node:path";
|