@wirecat/zoom-cli 0.60.1 → 0.62.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/answers.d.ts +16 -0
- package/dist/answers.d.ts.map +1 -1
- package/dist/bin/zm.js +2 -2
- package/dist/bundle/{chunk-3R437ICM.js → all-profiles-CGGNBINU.js} +11 -7
- package/dist/bundle/answer-policy-D46SGQ35.js +96 -0
- package/dist/bundle/{anthropic-CSLAACWX.js → anthropic-KVWPIHFG.js} +4 -4
- package/dist/bundle/{app-server-RYYXX6QV.js → app-server-NKKFBTQN.js} +50 -50
- package/dist/bundle/{bun-JVDJVDHL.js → bun-XRO6XJHQ.js} +2 -2
- package/dist/bundle/{bun-sqlite-B5CZHAV4.js → bun-sqlite-FWNCLOAR.js} +3 -3
- package/dist/bundle/{chunk-HAUAEGGI.js → chunk-2DPMYUWQ.js} +10 -10
- package/dist/bundle/{chunk-HBYE4EP2.js → chunk-2LLNPNMB.js} +1 -1
- package/dist/bundle/{chunk-WB7MQHUI.js → chunk-2NAM2XQG.js} +2 -2
- package/dist/bundle/{chunk-PAEBFJUC.js → chunk-2T7MUSDB.js} +118 -95
- package/dist/bundle/{chunk-LPY2ISJK.js → chunk-3YBDRVOG.js} +6 -6
- package/dist/bundle/{chunk-WEUXLXOZ.js → chunk-4OQVRDTG.js} +31 -21
- package/dist/bundle/{chunk-Q7U627RY.js → chunk-4OTXE6CF.js} +79 -59
- package/dist/bundle/{chunk-LPDYI5GR.js → chunk-4UUQEQ5D.js} +1 -1
- package/dist/bundle/{chunk-FWJ3Q7NO.js → chunk-5LMQTEU5.js} +5 -5
- package/dist/bundle/{chunk-6BJQBVMN.js → chunk-5MYLM6SU.js} +45 -27
- package/dist/bundle/{chunk-Z5H47R4G.js → chunk-5NLFQ644.js} +1034 -870
- package/dist/bundle/{chunk-XS72YFPV.js → chunk-6R3GMSLR.js} +2 -2
- package/dist/bundle/{chunk-AZZPMHP2.js → chunk-6SK5SHCR.js} +2 -2
- package/dist/bundle/{chunk-TY5PBEH2.js → chunk-6SPWQCJF.js} +11 -11
- package/dist/bundle/{chunk-EUHQ5D4K.js → chunk-6URISMGR.js} +26 -26
- package/dist/bundle/{chunk-43BX56ZI.js → chunk-72S5TXFN.js} +9 -9
- package/dist/bundle/{chunk-OBUKZ2ZM.js → chunk-73BAQ7PH.js} +31 -211
- package/dist/bundle/{chunk-3LBA63D5.js → chunk-7AY3ADNV.js} +22 -5
- package/dist/bundle/{chunk-RACSKYNX.js → chunk-7CNRZSAV.js} +7 -5
- package/dist/bundle/{chunk-IQENQXUJ.js → chunk-7LQLJ7LW.js} +2 -2
- package/dist/bundle/{chunk-EN5DBDKW.js → chunk-AMIIU3UZ.js} +4 -4
- package/dist/bundle/{chunk-RUEPZTNA.js → chunk-BJPFWPKH.js} +2 -2
- package/dist/bundle/{chunk-KNAS4VEA.js → chunk-BNTAQADF.js} +2 -2
- package/dist/bundle/{chunk-PEMLI3T7.js → chunk-BPMKLWHV.js} +6 -4
- package/dist/bundle/chunk-CXPHUOJR.js +380 -0
- package/dist/bundle/{chunk-LVHZQCP4.js → chunk-D6FTCPXA.js} +14 -10
- package/dist/bundle/{chunk-IRX2YVAH.js → chunk-DIXC56OU.js} +4 -4
- package/dist/bundle/{chunk-WFT2GGFH.js → chunk-ECXRRW7J.js} +25 -22
- package/dist/bundle/{chunk-KXEC5FVT.js → chunk-EG7HC4EC.js} +2 -2
- package/dist/bundle/{chunk-GEVHI226.js → chunk-EJFSS65P.js} +6 -6
- package/dist/bundle/{chunk-HIAO4MPA.js → chunk-EOEDICIE.js} +1 -1
- package/dist/bundle/{chunk-BO7J5Z3T.js → chunk-FAOLCUKV.js} +17 -17
- package/dist/bundle/{chunk-ZK7Y5K63.js → chunk-FDCGTODC.js} +1 -1
- package/dist/bundle/{chunk-IQSBMAYB.js → chunk-GOESXUJQ.js} +3 -3
- package/dist/bundle/{chunk-AOZGGGUK.js → chunk-HIZQYFY3.js} +3 -3
- package/dist/bundle/{chunk-YLATWUE7.js → chunk-IK2OSV5C.js} +6 -6
- package/dist/bundle/{chunk-46R2JTGO.js → chunk-IOCS5FXW.js} +2 -2
- package/dist/bundle/{chunk-Y3YURIZF.js → chunk-IOUPXUFH.js} +52 -38
- package/dist/bundle/{chunk-ZXQCA3ZW.js → chunk-IR73ZZY6.js} +8 -8
- package/dist/bundle/{chunk-EF2RCQ3L.js → chunk-JBBZCTTF.js} +1 -1
- package/dist/bundle/{chunk-OEEMCNAO.js → chunk-JDJDVYGS.js} +6 -6
- package/dist/bundle/{chunk-PATM7JGR.js → chunk-JYVFFUIX.js} +1 -1
- package/dist/bundle/{chunk-W5EUHV3J.js → chunk-KM7Q67Z3.js} +1 -1
- package/dist/bundle/{chunk-FZMRHNOP.js → chunk-KMQUZ4YM.js} +3 -3
- package/dist/bundle/{chunk-VLE3FWE3.js → chunk-LXYC75D3.js} +120 -32
- package/dist/bundle/{chunk-V53IB5AU.js → chunk-M2WQWF3I.js} +47 -47
- package/dist/bundle/{chunk-X7YPTYM4.js → chunk-M6FCCVYZ.js} +16 -3
- package/dist/bundle/{chunk-4TCQT57W.js → chunk-M7YNOK4D.js} +408 -420
- package/dist/bundle/chunk-MI3JK6MW.js +335 -0
- package/dist/bundle/{chunk-ES6UWVTM.js → chunk-MIUPH3WA.js} +6 -6
- package/dist/bundle/{chunk-VJBVNDFR.js → chunk-MLNC5N7H.js} +3 -3
- package/dist/bundle/{chunk-UWVNY5CA.js → chunk-N3KQ7XND.js} +2 -2
- package/dist/bundle/{chunk-VKUS2V4L.js → chunk-NQCFUYC2.js} +8 -8
- package/dist/bundle/{chunk-KYUIU5UR.js → chunk-Q4ZE2LXE.js} +2 -2
- package/dist/bundle/{chunk-VVKHF6VJ.js → chunk-QLQ7VVLK.js} +49 -24
- package/dist/bundle/{chunk-K6NPOZUP.js → chunk-QUWMFBMS.js} +7 -7
- package/dist/bundle/{chunk-WWNZS7ZY.js → chunk-RWG44LQD.js} +16 -4
- package/dist/bundle/{chunk-R4SRXI7M.js → chunk-SB47UAW2.js} +187 -113
- package/dist/bundle/{chunk-N27LOY3D.js → chunk-SEH7DBAM.js} +7 -7
- package/dist/bundle/{chunk-YEZQ7SD7.js → chunk-SPJJCD2A.js} +13 -13
- package/dist/bundle/{chunk-CGCJ6P3A.js → chunk-TILW3EJY.js} +696 -418
- package/dist/bundle/{chunk-XLJV3ZOH.js → chunk-TQFCPUIM.js} +1 -1
- package/dist/bundle/{chunk-ZDRDCANC.js → chunk-TZE6WXID.js} +693 -336
- package/dist/bundle/{chunk-XX7KVQIG.js → chunk-UD4FKICZ.js} +4 -4
- package/dist/bundle/{chunk-MFS52LTZ.js → chunk-UIPT6IAU.js} +1 -1
- package/dist/bundle/{chunk-QKSCDALS.js → chunk-URJZK4GX.js} +1 -1
- package/dist/bundle/{decode-CTQJQYNU.js → chunk-VFJ3MOIR.js} +21 -18
- package/dist/bundle/{chunk-REC3AZP6.js → chunk-XAXXEZZ5.js} +2 -2
- package/dist/bundle/{chunk-Z4D6M62I.js → chunk-YBMOFCY5.js} +2 -2
- package/dist/bundle/{chunk-PPHUBORC.js → chunk-YF2PT5KA.js} +32 -34
- package/dist/bundle/chunk-YFIUXE25.js +217 -0
- package/dist/bundle/{chunk-7IDNHVJS.js → chunk-YI6ZNDPC.js} +22 -12
- package/dist/bundle/{chunk-HYZ545ON.js → chunk-YJN4XYNA.js} +2 -2
- package/dist/bundle/{cli-CYKEKT5P.js → cli-AHPIESAC.js} +70 -54
- package/dist/bundle/command-contract-HVLI3OKU.js +38 -0
- package/dist/bundle/config-UW6W34I2.js +78 -0
- package/dist/bundle/decode-ZU7WLMMV.js +20 -0
- package/dist/bundle/{dist-YLSQKPPY.js → dist-LTS7VI3S.js} +14 -14
- package/dist/bundle/{echarts-4OQHS575.js → echarts-YNGCOYHW.js} +2 -2
- package/dist/bundle/{embed-P2BKRRJD.js → embed-VWWOW7PP.js} +4 -4
- package/dist/bundle/{embedder-HC6ZARP5.js → embedder-T5GJC7M2.js} +7 -7
- package/dist/bundle/{first-run-UERFFXBV.js → first-run-PX3SHPUU.js} +8 -8
- package/dist/bundle/first-screen-RAPEZG57.js +36 -0
- package/dist/bundle/{folders-RSLPTZLJ.js → folders-VXMDFC2D.js} +2 -2
- package/dist/bundle/{instructions-3QZBKKPF.js → instructions-GJHHFV64.js} +1 -1
- package/dist/bundle/{main-2T6D77JC.js → main-IYCD6MBH.js} +16 -16
- package/dist/bundle/{mcp-OQBZXELQ.js → mcp-EMNFFY4N.js} +2 -2
- package/dist/bundle/{meetings-ZIDSQZBJ.js → meetings-GHYNIOHG.js} +4 -4
- package/dist/bundle/{node-R2BLYUSB.js → node-GFOH6FKP.js} +2 -2
- package/dist/bundle/{node-sqlite-7CGHAHIS.js → node-sqlite-QXKSPHTP.js} +3 -3
- package/dist/bundle/{oauth-UBCYXTWV.js → oauth-A6I2OMDD.js} +5 -5
- package/dist/bundle/{open-AWUB4Q7Z.js → open-TQKCU447.js} +2 -2
- package/dist/bundle/openai-XE3BJXOI.js +22 -0
- package/dist/bundle/{output-file-SN22HAVL.js → output-file-FQNFCUKE.js} +3 -3
- package/dist/bundle/{process-IX5YWGDP.js → process-XVDX4SPD.js} +1 -1
- package/dist/bundle/{program-STYPTNT3.js → program-UYK4AD2W.js} +415 -428
- package/dist/bundle/{prompt-MAYUHEGN.js → prompt-ISYG5RWM.js} +3 -3
- package/dist/bundle/{recognize-FVTNXRTF.js → recognize-KENPECLZ.js} +4 -2
- package/dist/bundle/{remote-WCPRU73L.js → remote-ZP5XTDCC.js} +5 -5
- package/dist/bundle/{rerank-6CBLZBCV.js → rerank-SG653RHT.js} +5 -5
- package/dist/bundle/{run-log-G4WZTOBW.js → run-log-HYKGQ42E.js} +53 -53
- package/dist/bundle/{chunk-XNUFDYR6.js → serve-6UJCZD7Z.js} +8 -6
- package/dist/bundle/server-AXE37E6Q.js +66 -0
- package/dist/bundle/{chunk-INARC5O7.js → server-ZAYEDPFR.js} +43 -10
- package/dist/bundle/{services-326Z3TNE.js → services-KMH7XZPY.js} +37 -26
- package/dist/bundle/{speech-KSZ7RKM3.js → speech-LINBLG5E.js} +28 -5
- package/dist/bundle/{state-EPB3L2JM.js → state-4RKZNHE7.js} +4 -4
- package/dist/bundle/{store-7WX7SW2R.js → store-253N7NUC.js} +15 -15
- package/dist/bundle/{store-KO242JBK.js → store-JTBHRQZK.js} +13 -13
- package/dist/bundle/store-connection-PWLUMCP7.js +76 -0
- package/dist/bundle/store-maintenance-command-XRNECVDU.js +55 -0
- package/dist/bundle/{streaming-M6VDKBBH.js → streaming-YW64OKKQ.js} +4 -4
- package/dist/bundle/{tokens-BTNXHR7T.js → tokens-DPBC2P3I.js} +4 -4
- package/dist/bundle/zm.js +1 -1
- package/dist/commands.d.ts +1 -2
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +3 -16
- package/dist/commands.js.map +1 -1
- package/dist/contract-overrides.d.ts +0 -2
- package/dist/contract-overrides.d.ts.map +1 -1
- package/dist/contract-overrides.js +0 -158
- package/dist/contract-overrides.js.map +1 -1
- package/dist/program-bindings.d.ts +1 -1
- package/dist/program-bindings.d.ts.map +1 -1
- package/dist/program-bindings.js +16 -18
- package/dist/program-bindings.js.map +1 -1
- package/dist/program.d.ts +2 -4
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js.map +1 -1
- package/dist/read-only.d.ts.map +1 -1
- package/dist/read-only.js +3 -0
- package/dist/read-only.js.map +1 -1
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +82 -32
- package/dist/run.js.map +1 -1
- package/dist/setup-commands.d.ts.map +1 -1
- package/dist/setup-commands.js +8 -46
- package/dist/setup-commands.js.map +1 -1
- package/dist/store-commands.d.ts.map +1 -1
- package/dist/store-commands.js +4 -1
- package/dist/store-commands.js.map +1 -1
- package/dist/tokens.d.ts +6 -1
- package/dist/tokens.d.ts.map +1 -1
- package/dist/tokens.js +21 -10
- package/dist/tokens.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -3
- package/dist/bundle/all-profiles-E6KXASLY.js +0 -25
- package/dist/bundle/answer-policy-YWCC55NB.js +0 -96
- package/dist/bundle/chunk-DBSWVZES.js +0 -48
- package/dist/bundle/chunk-WYRYLBST.js +0 -390
- package/dist/bundle/chunk-YLBNPI7H.js +0 -2
- package/dist/bundle/command-contract-P45QCCXM.js +0 -38
- package/dist/bundle/config-JYKTLEA3.js +0 -79
- package/dist/bundle/first-screen-VFIS7FX3.js +0 -36
- package/dist/bundle/mcp-4VHVUMCR.js +0 -92
- package/dist/bundle/mcp-6CLW2IZM.js +0 -189
- package/dist/bundle/serve-3IDUVTZL.js +0 -19
- package/dist/bundle/server-7GU36TER.js +0 -66
- package/dist/bundle/server-VHRS5UAL.js +0 -53
- package/dist/bundle/store-connection-K3MNDCQQ.js +0 -76
- package/dist/bundle/store-maintenance-command-GJDJYI2U.js +0 -54
- package/dist/mcp-command.d.ts +0 -33
- package/dist/mcp-command.d.ts.map +0 -1
- package/dist/mcp-command.js +0 -143
- package/dist/mcp-command.js.map +0 -1
- package/dist/mcp.d.ts +0 -30
- package/dist/mcp.d.ts.map +0 -1
- package/dist/mcp.js +0 -110
- package/dist/mcp.js.map +0 -1
- /package/dist/bundle/{chunk-O5EHUB2V.js → chunk-NPGVOZVK.js} +0 -0
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
import { createRequire as __bundleRequire } from "node:module";
|
|
2
|
+
const require = __bundleRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
CliError
|
|
5
|
+
} from "./chunk-SB47UAW2.js";
|
|
6
|
+
import {
|
|
7
|
+
__name
|
|
8
|
+
} from "./chunk-ZVVMGPBJ.js";
|
|
9
|
+
|
|
10
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/atomic-write.js
|
|
11
|
+
import { randomUUID } from "node:crypto";
|
|
12
|
+
import { constants } from "node:fs";
|
|
13
|
+
import { link, open, realpath, rename, unlink } from "node:fs/promises";
|
|
14
|
+
import { basename, dirname, join } from "node:path";
|
|
15
|
+
var openFolder = /* @__PURE__ */ __name((folder) => process.platform === "win32" ? Promise.resolve(void 0) : open(folder, constants.O_RDONLY | (constants.O_DIRECTORY ?? 0) | (constants.O_NOFOLLOW ?? 0)), "openFolder");
|
|
16
|
+
var writeFileAtomic = /* @__PURE__ */ __name(async (path, content, { mode = 384, overwrite = true, signal, beforePublish } = {}) => {
|
|
17
|
+
signal?.throwIfAborted();
|
|
18
|
+
const folder = await realpath(dirname(path));
|
|
19
|
+
const target = join(folder, basename(path));
|
|
20
|
+
const directory = await openFolder(folder);
|
|
21
|
+
try {
|
|
22
|
+
const temporary = join(folder, `.${basename(path)}.${randomUUID()}.tmp`);
|
|
23
|
+
let handle = await open(temporary, "wx", mode);
|
|
24
|
+
let published = false;
|
|
25
|
+
try {
|
|
26
|
+
await handle.writeFile(content);
|
|
27
|
+
await handle.sync();
|
|
28
|
+
await handle.close();
|
|
29
|
+
handle = void 0;
|
|
30
|
+
signal?.throwIfAborted();
|
|
31
|
+
await beforePublish?.();
|
|
32
|
+
if (overwrite)
|
|
33
|
+
await rename(temporary, target);
|
|
34
|
+
else
|
|
35
|
+
await link(temporary, target);
|
|
36
|
+
published = overwrite;
|
|
37
|
+
await directory?.sync();
|
|
38
|
+
} finally {
|
|
39
|
+
await handle?.close().catch(() => void 0);
|
|
40
|
+
if (!published)
|
|
41
|
+
await unlink(temporary).catch(() => void 0);
|
|
42
|
+
}
|
|
43
|
+
} finally {
|
|
44
|
+
await directory?.close().catch(() => void 0);
|
|
45
|
+
}
|
|
46
|
+
}, "writeFileAtomic");
|
|
47
|
+
|
|
48
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/ordinary-file.js
|
|
49
|
+
import { constants as constants2 } from "node:fs";
|
|
50
|
+
import { lstat, open as open2 } from "node:fs/promises";
|
|
51
|
+
var deviceOf = /* @__PURE__ */ __name((dev) => process.platform === "win32" ? BigInt.asUintN(32, dev) : dev, "deviceOf");
|
|
52
|
+
var sameIdentity = /* @__PURE__ */ __name((left, right) => left.ino === right.ino && deviceOf(left.dev) === deviceOf(right.dev), "sameIdentity");
|
|
53
|
+
var openOrdinaryFile = /* @__PURE__ */ __name(async (path, options = {}) => {
|
|
54
|
+
const before = await lstat(path, { bigint: true });
|
|
55
|
+
if (before.isSymbolicLink())
|
|
56
|
+
throw new CliError("validation_error", "archive path must be an ordinary file without a symlink");
|
|
57
|
+
if (!before.isFile())
|
|
58
|
+
throw new CliError("validation_error", "archive path must be an ordinary file");
|
|
59
|
+
const access = options.writable ? constants2.O_RDWR : constants2.O_RDONLY;
|
|
60
|
+
const flags = process.platform === "win32" ? access : access | (constants2.O_NOFOLLOW ?? 0) | (constants2.O_NONBLOCK ?? 0);
|
|
61
|
+
const file = await open2(path, flags);
|
|
62
|
+
try {
|
|
63
|
+
const opened = await file.stat({ bigint: true });
|
|
64
|
+
const after = await lstat(path, { bigint: true });
|
|
65
|
+
if (!opened.isFile() || !after.isFile() || before.ino !== opened.ino || before.ino !== after.ino)
|
|
66
|
+
throw new CliError("validation_error", "archive file changed while opening");
|
|
67
|
+
if (process.platform === "win32" && before.dev === 0n && after.dev === 0n) {
|
|
68
|
+
const witness = await open2(path, flags);
|
|
69
|
+
try {
|
|
70
|
+
const identified = await witness.stat({ bigint: true });
|
|
71
|
+
const final = await lstat(path, { bigint: true });
|
|
72
|
+
if (opened.dev === 0n || !identified.isFile() || !final.isFile() || !sameIdentity(identified, opened) || final.ino !== before.ino || final.dev !== 0n && deviceOf(final.dev) !== deviceOf(opened.dev))
|
|
73
|
+
throw new CliError("validation_error", "archive file changed while opening");
|
|
74
|
+
} finally {
|
|
75
|
+
await witness.close();
|
|
76
|
+
}
|
|
77
|
+
} else if (deviceOf(before.dev) !== deviceOf(opened.dev) || deviceOf(before.dev) !== deviceOf(after.dev)) {
|
|
78
|
+
throw new CliError("validation_error", "archive file changed while opening");
|
|
79
|
+
}
|
|
80
|
+
return file;
|
|
81
|
+
} catch (error) {
|
|
82
|
+
await file.close();
|
|
83
|
+
throw error;
|
|
84
|
+
}
|
|
85
|
+
}, "openOrdinaryFile");
|
|
86
|
+
var sameOrdinaryFile = /* @__PURE__ */ __name(async (path, created) => {
|
|
87
|
+
let file;
|
|
88
|
+
try {
|
|
89
|
+
file = await openOrdinaryFile(path);
|
|
90
|
+
} catch (error) {
|
|
91
|
+
if (error instanceof CliError || typeof error === "object" && error !== null && "code" in error && error.code === "ENOENT")
|
|
92
|
+
return false;
|
|
93
|
+
throw error;
|
|
94
|
+
}
|
|
95
|
+
try {
|
|
96
|
+
return sameIdentity(created, await file.stat({ bigint: true }));
|
|
97
|
+
} finally {
|
|
98
|
+
await file.close();
|
|
99
|
+
}
|
|
100
|
+
}, "sameOrdinaryFile");
|
|
101
|
+
var syncDirectory = /* @__PURE__ */ __name(async (path) => {
|
|
102
|
+
if (process.platform === "win32")
|
|
103
|
+
return;
|
|
104
|
+
const directory = await open2(path, constants2.O_RDONLY | (constants2.O_DIRECTORY ?? 0) | (constants2.O_NOFOLLOW ?? 0));
|
|
105
|
+
try {
|
|
106
|
+
if (!(await directory.stat()).isDirectory())
|
|
107
|
+
throw new CliError("validation_error", "archive publication directory must be ordinary");
|
|
108
|
+
await directory.sync();
|
|
109
|
+
} finally {
|
|
110
|
+
await directory.close();
|
|
111
|
+
}
|
|
112
|
+
}, "syncDirectory");
|
|
113
|
+
|
|
114
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/bounded-utf8.js
|
|
115
|
+
var readBoundedUtf8File = /* @__PURE__ */ __name(async (path, { maxBytes }) => {
|
|
116
|
+
if (!Number.isSafeInteger(maxBytes) || maxBytes < 1 || maxBytes > 16 * 1024 * 1024)
|
|
117
|
+
throw new CliError("validation_error", "file maxBytes takes 1\u201316777216 bytes");
|
|
118
|
+
const file = await openOrdinaryFile(path);
|
|
119
|
+
try {
|
|
120
|
+
if ((await file.stat()).size > maxBytes)
|
|
121
|
+
throw new CliError("validation_error", "input file exceeds its byte budget");
|
|
122
|
+
const chunks = [], buffer = Buffer.alloc(Math.min(65536, maxBytes + 1));
|
|
123
|
+
let bytes = 0;
|
|
124
|
+
for (; ; ) {
|
|
125
|
+
const { bytesRead } = await file.read(buffer, 0, Math.min(buffer.length, maxBytes - bytes + 1), null);
|
|
126
|
+
if (bytesRead === 0)
|
|
127
|
+
break;
|
|
128
|
+
bytes += bytesRead;
|
|
129
|
+
if (bytes > maxBytes)
|
|
130
|
+
throw new CliError("validation_error", "input file exceeds its byte budget");
|
|
131
|
+
chunks.push(Buffer.from(buffer.subarray(0, bytesRead)));
|
|
132
|
+
}
|
|
133
|
+
try {
|
|
134
|
+
return new TextDecoder("utf-8", { fatal: true }).decode(Buffer.concat(chunks, bytes));
|
|
135
|
+
} catch {
|
|
136
|
+
throw new CliError("validation_error", "input file must contain valid UTF-8");
|
|
137
|
+
}
|
|
138
|
+
} finally {
|
|
139
|
+
await file.close();
|
|
140
|
+
}
|
|
141
|
+
}, "readBoundedUtf8File");
|
|
142
|
+
|
|
143
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/lock.js
|
|
144
|
+
import { mkdir as mkdir2 } from "node:fs/promises";
|
|
145
|
+
import { basename as basename2, dirname as dirname2 } from "node:path";
|
|
146
|
+
|
|
147
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/native-writer-lease.js
|
|
148
|
+
import { randomUUID as randomUUID2 } from "node:crypto";
|
|
149
|
+
import { lstat as lstat3, mkdir, open as open3, realpath as realpath3, rmdir as rmdir2, unlink as unlink4 } from "node:fs/promises";
|
|
150
|
+
import { hostname as hostname2 } from "node:os";
|
|
151
|
+
import { join as join3 } from "node:path";
|
|
152
|
+
|
|
153
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/native-lease-inspection.js
|
|
154
|
+
import { lstat as lstat2, readdir, realpath as realpath2, unlink as unlink2 } from "node:fs/promises";
|
|
155
|
+
import { join as join2 } from "node:path";
|
|
156
|
+
|
|
157
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/native-lease-owner.js
|
|
158
|
+
import { hostname } from "node:os";
|
|
159
|
+
var missingLeaseFile = /* @__PURE__ */ __name((error) => typeof error === "object" && error !== null && "code" in error && error.code === "ENOENT", "missingLeaseFile");
|
|
160
|
+
var readLeaseOwner = /* @__PURE__ */ __name(async (path, name, signal) => {
|
|
161
|
+
signal?.throwIfAborted();
|
|
162
|
+
try {
|
|
163
|
+
const file = await openOrdinaryFile(path);
|
|
164
|
+
try {
|
|
165
|
+
if ((await file.stat()).size > 4096)
|
|
166
|
+
return null;
|
|
167
|
+
const buffer = Buffer.alloc(4097);
|
|
168
|
+
let size = 0;
|
|
169
|
+
while (size < buffer.length) {
|
|
170
|
+
signal?.throwIfAborted();
|
|
171
|
+
const { bytesRead } = await file.read(buffer, size, buffer.length - size, size);
|
|
172
|
+
if (bytesRead === 0)
|
|
173
|
+
break;
|
|
174
|
+
size += bytesRead;
|
|
175
|
+
}
|
|
176
|
+
signal?.throwIfAborted();
|
|
177
|
+
if (size > 4096)
|
|
178
|
+
return null;
|
|
179
|
+
const owner = JSON.parse(buffer.subarray(0, size).toString("utf8"));
|
|
180
|
+
if (owner?.version !== 1 || !Number.isSafeInteger(owner.pid) || owner.pid <= 0 || typeof owner.host !== "string" || !owner.host.trim() || !/^[a-f0-9-]{36}$/.test(owner.nonce) || name !== `${owner.pid}-${owner.nonce}.json`)
|
|
181
|
+
return null;
|
|
182
|
+
return owner;
|
|
183
|
+
} finally {
|
|
184
|
+
await file.close();
|
|
185
|
+
}
|
|
186
|
+
} catch {
|
|
187
|
+
signal?.throwIfAborted();
|
|
188
|
+
return null;
|
|
189
|
+
}
|
|
190
|
+
}, "readLeaseOwner");
|
|
191
|
+
var leaseOwnerStatus = /* @__PURE__ */ __name((owner) => {
|
|
192
|
+
if (owner.host !== hostname())
|
|
193
|
+
return "foreign";
|
|
194
|
+
try {
|
|
195
|
+
process.kill(owner.pid, 0);
|
|
196
|
+
return "active";
|
|
197
|
+
} catch (error) {
|
|
198
|
+
return typeof error === "object" && error !== null && "code" in error && error.code === "ESRCH" ? "stale" : "active";
|
|
199
|
+
}
|
|
200
|
+
}, "leaseOwnerStatus");
|
|
201
|
+
|
|
202
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/native-lease-inspection.js
|
|
203
|
+
var leaseInspection = /* @__PURE__ */ __name((markerDirectory) => {
|
|
204
|
+
const inspect = /* @__PURE__ */ __name(async (destination, options = {}) => {
|
|
205
|
+
options.signal?.throwIfAborted();
|
|
206
|
+
const root = await realpath2(destination);
|
|
207
|
+
options.signal?.throwIfAborted();
|
|
208
|
+
const folder = join2(root, markerDirectory);
|
|
209
|
+
let names;
|
|
210
|
+
try {
|
|
211
|
+
if ((await lstat2(folder)).isSymbolicLink())
|
|
212
|
+
throw new Error("symlink");
|
|
213
|
+
names = await readdir(folder);
|
|
214
|
+
} catch (error) {
|
|
215
|
+
options.signal?.throwIfAborted();
|
|
216
|
+
if (missingLeaseFile(error))
|
|
217
|
+
return [];
|
|
218
|
+
throw new CliError("configuration_error", "archive lock directory could not be read");
|
|
219
|
+
}
|
|
220
|
+
options.signal?.throwIfAborted();
|
|
221
|
+
const result = [];
|
|
222
|
+
for (const name of names.sort()) {
|
|
223
|
+
options.signal?.throwIfAborted();
|
|
224
|
+
const owner = await readLeaseOwner(join2(folder, name), name, options.signal);
|
|
225
|
+
result.push({
|
|
226
|
+
name,
|
|
227
|
+
status: owner ? leaseOwnerStatus(owner) : "unrecognized",
|
|
228
|
+
pid: owner?.pid ?? null,
|
|
229
|
+
host: owner?.host ?? null
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
return result;
|
|
233
|
+
}, "inspect");
|
|
234
|
+
const recover = /* @__PURE__ */ __name(async (destination, options = {}) => {
|
|
235
|
+
options.signal?.throwIfAborted();
|
|
236
|
+
const root = await realpath2(destination);
|
|
237
|
+
const locks = await inspect(root, options);
|
|
238
|
+
const removed = [];
|
|
239
|
+
if (options.apply)
|
|
240
|
+
for (const lock of locks) {
|
|
241
|
+
options.signal?.throwIfAborted();
|
|
242
|
+
if (lock.status !== "stale")
|
|
243
|
+
continue;
|
|
244
|
+
const path = join2(root, markerDirectory, lock.name);
|
|
245
|
+
const owner = await readLeaseOwner(path, lock.name, options.signal);
|
|
246
|
+
if (!owner || leaseOwnerStatus(owner) !== "stale")
|
|
247
|
+
continue;
|
|
248
|
+
try {
|
|
249
|
+
await unlink2(path);
|
|
250
|
+
removed.push(lock.name);
|
|
251
|
+
} catch (error) {
|
|
252
|
+
if (!missingLeaseFile(error))
|
|
253
|
+
throw new CliError("configuration_error", "stale archive lock could not be removed");
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
return { locks, removed };
|
|
257
|
+
}, "recover");
|
|
258
|
+
return { inspect, recover };
|
|
259
|
+
}, "leaseInspection");
|
|
260
|
+
|
|
261
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/native-lease-release.js
|
|
262
|
+
import { rmdir, unlink as unlink3 } from "node:fs/promises";
|
|
263
|
+
var ownedNativeLease = /* @__PURE__ */ __name((path, name, owner, folder, identity) => {
|
|
264
|
+
let releasing;
|
|
265
|
+
const held = /* @__PURE__ */ __name(async () => {
|
|
266
|
+
if (!await sameOrdinaryFile(path, identity))
|
|
267
|
+
return false;
|
|
268
|
+
const current = await readLeaseOwner(path, name);
|
|
269
|
+
return current?.host === owner.host && current.pid === owner.pid && current.nonce === owner.nonce;
|
|
270
|
+
}, "held");
|
|
271
|
+
const release = /* @__PURE__ */ __name(async () => {
|
|
272
|
+
if (!await held())
|
|
273
|
+
throw new CliError("configuration_error", "owned archive lock changed before release");
|
|
274
|
+
await unlink3(path);
|
|
275
|
+
await rmdir(folder).catch(() => void 0);
|
|
276
|
+
}, "release");
|
|
277
|
+
return {
|
|
278
|
+
held,
|
|
279
|
+
release: /* @__PURE__ */ __name(() => releasing ??= release().catch((error) => {
|
|
280
|
+
releasing = void 0;
|
|
281
|
+
throw error;
|
|
282
|
+
}), "release")
|
|
283
|
+
};
|
|
284
|
+
}, "ownedNativeLease");
|
|
285
|
+
|
|
286
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/native-writer-lease.js
|
|
287
|
+
var validName = /* @__PURE__ */ __name((value) => typeof value === "string" && value.length > 0 && value !== "." && value !== ".." && !/[\\/\0:]/.test(value), "validName");
|
|
288
|
+
var nativeWriterLeaseStore = /* @__PURE__ */ __name((layout) => {
|
|
289
|
+
const { markerDirectory, legacyMarker } = layout;
|
|
290
|
+
if (!validName(markerDirectory) || legacyMarker !== void 0 && (!validName(legacyMarker) || legacyMarker === markerDirectory))
|
|
291
|
+
throw new CliError("validation_error", "archive lock layout requires distinct ordinary entry names");
|
|
292
|
+
const inspection = leaseInspection(markerDirectory);
|
|
293
|
+
return {
|
|
294
|
+
...inspection,
|
|
295
|
+
acquire: /* @__PURE__ */ __name(async (destination, { signal } = {}) => {
|
|
296
|
+
signal?.throwIfAborted();
|
|
297
|
+
const root = await realpath3(destination);
|
|
298
|
+
signal?.throwIfAborted();
|
|
299
|
+
const folder = join3(root, markerDirectory);
|
|
300
|
+
const owner = { version: 1, pid: process.pid, host: hostname2(), nonce: randomUUID2() };
|
|
301
|
+
const name = `${owner.pid}-${owner.nonce}.json`;
|
|
302
|
+
const path = join3(folder, name);
|
|
303
|
+
const marker = /* @__PURE__ */ __name(async (attempt = 1) => {
|
|
304
|
+
await mkdir(folder, { recursive: true });
|
|
305
|
+
try {
|
|
306
|
+
if ((await lstat3(folder)).isSymbolicLink())
|
|
307
|
+
throw new CliError("validation_error", "archive lock directory must not be a symlink");
|
|
308
|
+
await inspection.recover(root, { apply: true, signal });
|
|
309
|
+
signal?.throwIfAborted();
|
|
310
|
+
return await open3(path, "wx", 384);
|
|
311
|
+
} catch (error) {
|
|
312
|
+
if (attempt < 5 && missingLeaseFile(error))
|
|
313
|
+
return marker(attempt + 1);
|
|
314
|
+
throw error;
|
|
315
|
+
}
|
|
316
|
+
}, "marker");
|
|
317
|
+
const file = await marker();
|
|
318
|
+
let retained = false;
|
|
319
|
+
let identity;
|
|
320
|
+
try {
|
|
321
|
+
identity = await file.stat({ bigint: true });
|
|
322
|
+
await file.writeFile(JSON.stringify(owner));
|
|
323
|
+
await file.sync();
|
|
324
|
+
await file.close();
|
|
325
|
+
signal?.throwIfAborted();
|
|
326
|
+
const inspected = await inspection.inspect(root, { signal });
|
|
327
|
+
const own = inspected.find((lock) => lock.name === name);
|
|
328
|
+
if (own?.status !== "active" || own.pid !== owner.pid || own.host !== owner.host)
|
|
329
|
+
throw new CliError("configuration_error", "archive writer lost its lock before acquisition");
|
|
330
|
+
const locks = inspected.filter((lock) => lock.name !== name);
|
|
331
|
+
if (locks.length)
|
|
332
|
+
return { status: "busy", locks };
|
|
333
|
+
if (legacyMarker) {
|
|
334
|
+
try {
|
|
335
|
+
await lstat3(join3(root, legacyMarker));
|
|
336
|
+
return { status: "legacy" };
|
|
337
|
+
} catch (error) {
|
|
338
|
+
if (!missingLeaseFile(error))
|
|
339
|
+
throw error;
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
signal?.throwIfAborted();
|
|
343
|
+
retained = true;
|
|
344
|
+
return { status: "acquired", lease: ownedNativeLease(path, name, owner, folder, identity) };
|
|
345
|
+
} finally {
|
|
346
|
+
await file.close().catch(() => void 0);
|
|
347
|
+
if (!retained) {
|
|
348
|
+
if (identity && await sameOrdinaryFile(path, identity))
|
|
349
|
+
await unlink4(path).catch(() => void 0);
|
|
350
|
+
await rmdir2(folder).catch(() => void 0);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
}, "acquire")
|
|
354
|
+
};
|
|
355
|
+
}, "nativeWriterLeaseStore");
|
|
356
|
+
|
|
357
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/files/lock.js
|
|
358
|
+
var acquireLock = /* @__PURE__ */ __name(async (path, { signal } = {}) => {
|
|
359
|
+
const folder = dirname2(path);
|
|
360
|
+
await mkdir2(folder, { recursive: true, mode: 448 });
|
|
361
|
+
const acquired = await nativeWriterLeaseStore({ markerDirectory: basename2(path) }).acquire(folder, {
|
|
362
|
+
...signal ? { signal } : {}
|
|
363
|
+
});
|
|
364
|
+
if (acquired.status === "acquired")
|
|
365
|
+
return acquired.lease;
|
|
366
|
+
throw new CliError("validation_error", `${basename2(path)} is locked by another process`, {
|
|
367
|
+
reason: "file.locked",
|
|
368
|
+
...acquired.status === "busy" ? { holders: acquired.locks } : {}
|
|
369
|
+
});
|
|
370
|
+
}, "acquireLock");
|
|
371
|
+
|
|
372
|
+
export {
|
|
373
|
+
writeFileAtomic,
|
|
374
|
+
openOrdinaryFile,
|
|
375
|
+
sameOrdinaryFile,
|
|
376
|
+
syncDirectory,
|
|
377
|
+
readBoundedUtf8File,
|
|
378
|
+
nativeWriterLeaseStore,
|
|
379
|
+
acquireLock
|
|
380
|
+
};
|
|
@@ -21,12 +21,12 @@ import {
|
|
|
21
21
|
reference,
|
|
22
22
|
string,
|
|
23
23
|
variant
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-SB47UAW2.js";
|
|
25
25
|
import {
|
|
26
26
|
__name
|
|
27
27
|
} from "./chunk-ZVVMGPBJ.js";
|
|
28
28
|
|
|
29
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
29
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/types.js
|
|
30
30
|
var QUERY_LIMITS = {
|
|
31
31
|
bytes: 8192,
|
|
32
32
|
depth: 32,
|
|
@@ -70,7 +70,7 @@ function queryError(reason, span, alternative, context = {}, details = {}) {
|
|
|
70
70
|
__name(queryError, "queryError");
|
|
71
71
|
var walkQuery = /* @__PURE__ */ __name((node) => node.kind === "predicate" ? [node] : node.clauses.flatMap(({ node: node2 }) => walkQuery(node2)), "walkQuery");
|
|
72
72
|
|
|
73
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
73
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/dates.js
|
|
74
74
|
var timezoneOf = /* @__PURE__ */ __name((given) => {
|
|
75
75
|
const zone = given ?? Intl.DateTimeFormat().resolvedOptions().timeZone ?? "UTC";
|
|
76
76
|
try {
|
|
@@ -215,7 +215,7 @@ var dateRange = /* @__PURE__ */ __name((lower, upper, lowerInclusive, upperInclu
|
|
|
215
215
|
};
|
|
216
216
|
}, "dateRange");
|
|
217
217
|
|
|
218
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
218
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/fields.js
|
|
219
219
|
var FIELD_TYPES = ["kw", "txt", "enum", "num", "time", "bool", "ref"];
|
|
220
220
|
var OPERATORS_BY_TYPE = {
|
|
221
221
|
kw: ["term", "phrase", "wildcard"],
|
|
@@ -292,7 +292,7 @@ var queryFieldsOf = /* @__PURE__ */ __name((schema, annotations = {}) => {
|
|
|
292
292
|
return [...own, ...relations, ...states];
|
|
293
293
|
}, "queryFieldsOf");
|
|
294
294
|
|
|
295
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
295
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/help.js
|
|
296
296
|
var QUERY_SYNTAX = 'field:value \xB7 "a phrase" \xB7 word* \xB7 AND OR NOT \xB7 ( ) \xB7 [a TO b] \xB7 > >= < <=';
|
|
297
297
|
var kindOf = /* @__PURE__ */ __name((field) => field.values ? `${field.type}: ${field.values.join("|")}` : `${field.type}: ${field.operators.join(", ")}`, "kindOf");
|
|
298
298
|
var fieldsHelp = /* @__PURE__ */ __name((registry, guide) => {
|
|
@@ -308,7 +308,7 @@ var fieldsHelp = /* @__PURE__ */ __name((registry, guide) => {
|
|
|
308
308
|
].join("\n");
|
|
309
309
|
}, "fieldsHelp");
|
|
310
310
|
|
|
311
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
311
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/parser.js
|
|
312
312
|
var whitespace = /* @__PURE__ */ __name((c) => /[ \t\n\r\u3000]/u.test(c), "whitespace");
|
|
313
313
|
var reserved = /* @__PURE__ */ new Set([
|
|
314
314
|
"+",
|
|
@@ -610,10 +610,10 @@ var implicitTextTerms = /* @__PURE__ */ __name((text) => {
|
|
|
610
610
|
const tokens = tokensOf(text);
|
|
611
611
|
if (tokens.some(({ kind }) => ["AND", "OR", "NOT", "+", "-", "!", "(", ")"].includes(kind)))
|
|
612
612
|
return /* @__PURE__ */ new Set();
|
|
613
|
-
return new Set(tokens.flatMap((token, index) => token.kind === "term" && ![":", "=", "<", ">", "<=", ">="].includes(tokens[index - 1]?.kind ?? "") && ![":", "=", "<", ">", "<=", ">="].includes(tokens[index + 1]?.kind ?? "") ? [token.span.start] : []));
|
|
613
|
+
return new Set(tokens.flatMap((token, index) => (token.kind === "term" || token.kind === "number") && ![":", "=", "<", ">", "<=", ">="].includes(tokens[index - 1]?.kind ?? "") && ![":", "=", "<", ">", "<=", ">="].includes(tokens[index + 1]?.kind ?? "") ? [token.span.start] : []));
|
|
614
614
|
}, "implicitTextTerms");
|
|
615
615
|
|
|
616
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
616
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/validate.js
|
|
617
617
|
var inContext = /* @__PURE__ */ __name((context, run) => {
|
|
618
618
|
try {
|
|
619
619
|
run();
|
|
@@ -688,7 +688,7 @@ var validateQuery = /* @__PURE__ */ __name((ast, registry, options = {}) => {
|
|
|
688
688
|
}, "validateQuery");
|
|
689
689
|
var fieldsNamed = /* @__PURE__ */ __name((ast) => new Set(walkQuery(ast.root).map((node) => node.field)), "fieldsNamed");
|
|
690
690
|
|
|
691
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
691
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/registry.js
|
|
692
692
|
var describeQuery = /* @__PURE__ */ __name((registry) => ({
|
|
693
693
|
entity: registry.entity,
|
|
694
694
|
backend: registry.backend,
|
|
@@ -716,7 +716,10 @@ var exampleProblems = /* @__PURE__ */ __name((registry) => {
|
|
|
716
716
|
...defaults
|
|
717
717
|
].filter((entry) => entry.problem !== void 0);
|
|
718
718
|
}, "exampleProblems");
|
|
719
|
+
var checked = /* @__PURE__ */ new WeakSet();
|
|
719
720
|
var defineQuery = /* @__PURE__ */ __name((registry) => {
|
|
721
|
+
if (checked.has(registry))
|
|
722
|
+
return registry;
|
|
720
723
|
const names = registry.fields.map((field) => field.name);
|
|
721
724
|
const problems = [
|
|
722
725
|
...duplicates(names).map((name) => `"${name}" is listed twice`),
|
|
@@ -725,6 +728,7 @@ var defineQuery = /* @__PURE__ */ __name((registry) => {
|
|
|
725
728
|
];
|
|
726
729
|
if (problems.length > 0)
|
|
727
730
|
throw new RegistryError(`${registry.entity} query`, problems);
|
|
731
|
+
checked.add(registry);
|
|
728
732
|
return registry;
|
|
729
733
|
}, "defineQuery");
|
|
730
734
|
var SPAN = ["span", "alternative", "guide"];
|
|
@@ -755,7 +759,7 @@ var QUERY_REASONS = defineReasons([
|
|
|
755
759
|
details: [...SPAN, ...details]
|
|
756
760
|
})));
|
|
757
761
|
|
|
758
|
-
// node_modules/.pnpm/@wirecat+cli-base@0.
|
|
762
|
+
// node_modules/.pnpm/@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/query/evaluate.js
|
|
759
763
|
var wordsOf = /* @__PURE__ */ __name((text) => text.toLowerCase().match(/[\p{L}\p{N}]+/gu) ?? [], "wordsOf");
|
|
760
764
|
var pattern = /* @__PURE__ */ __name((value) => new RegExp(`^${[...value].map((char) => char === "*" ? ".*" : char === "?" ? "." : char.replace(/[.+^${}()|[\]\\]/, "\\$&")).join("")}$`, "iu"), "pattern");
|
|
761
765
|
var present = /* @__PURE__ */ __name((value) => value !== void 0 && value !== null && value !== "", "present");
|
|
@@ -4,18 +4,18 @@ import {
|
|
|
4
4
|
readSharedSection,
|
|
5
5
|
sharedConfigPath,
|
|
6
6
|
writeSharedSection
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-5LMQTEU5.js";
|
|
8
8
|
import {
|
|
9
9
|
storePath
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-EG7HC4EC.js";
|
|
11
11
|
import {
|
|
12
12
|
CliError
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-SB47UAW2.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.507.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_d5beb0101c7a90701cc33879a5be8d28/node_modules/@wirecat/cli-core/dist/cli/setup-answers.js
|
|
19
19
|
var PERMISSION_ANSWERS = ["readonly", "allow"];
|
|
20
20
|
var QUESTIONS = ["languages", "tools", "permissions"];
|
|
21
21
|
var SECTION = "setup";
|