@wirecat/mail-cli 0.4.0 → 0.6.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/CHANGELOG.md +115 -0
- package/README.md +41 -10
- package/dist/bin/mail.js +2 -2
- package/dist/bundle/{all-profiles-55XPXQHY.js → all-profiles-GBFTKUHA.js} +9 -9
- package/dist/bundle/{anthropic-K5B6I4LB.js → anthropic-PTSCWUG6.js} +6 -6
- package/dist/bundle/{app-server-VWWLQLTZ.js → app-server-5VJ2WCKJ.js} +46 -46
- package/dist/bundle/{bun-EO7AI6YP.js → bun-2KRUBPIN.js} +2 -2
- package/dist/bundle/{bun-sqlite-F24A4IOP.js → bun-sqlite-ELSRSJBM.js} +5 -5
- package/dist/bundle/{chunk-X7AXH2IC.js → chunk-3KY7DA5A.js} +428 -434
- package/dist/bundle/{chunk-ANRI6EZY.js → chunk-4PKHZQIM.js} +8 -8
- package/dist/bundle/{chunk-CADRRSQK.js → chunk-56PI2BRH.js} +1 -1
- package/dist/bundle/{chunk-2ADB5DSG.js → chunk-5AQKM47C.js} +3 -3
- package/dist/bundle/{chunk-VP5GCMHM.js → chunk-5KHJUYHQ.js} +8 -8
- package/dist/bundle/{chunk-HUB42T2Z.js → chunk-6MV2TBDB.js} +57 -54
- package/dist/bundle/{chunk-4KLJN3LK.js → chunk-AGX7NR3S.js} +26 -13
- package/dist/bundle/{chunk-ZD3WUGR2.js → chunk-B337KHJ5.js} +4 -4
- package/dist/bundle/{chunk-5BVIWP3S.js → chunk-BM445GYF.js} +2 -2
- package/dist/bundle/{chunk-H7K2DN3R.js → chunk-BVIHT7KR.js} +9 -9
- package/dist/bundle/{chunk-EDKV6D6T.js → chunk-DA46WQEA.js} +1 -1
- package/dist/bundle/{chunk-UO7X2VW4.js → chunk-DV4RSEAH.js} +6 -6
- package/dist/bundle/{chunk-JZFIHVRB.js → chunk-ES4PWHBJ.js} +28 -28
- package/dist/bundle/{chunk-7X64JS6S.js → chunk-FIQOBLHS.js} +1 -1
- package/dist/bundle/{chunk-TI6VBZKJ.js → chunk-FUB3X25H.js} +4 -4
- package/dist/bundle/{chunk-VWXCEEUH.js → chunk-H4VFIH5W.js} +3 -3
- package/dist/bundle/{chunk-JKHI3PH7.js → chunk-J4C32YKH.js} +1 -1
- package/dist/bundle/{chunk-F6JTOQIK.js → chunk-J5MYH4L5.js} +12 -6
- package/dist/bundle/{chunk-QYWDC7NP.js → chunk-JFJTDL22.js} +47 -46
- package/dist/bundle/{chunk-UZDHK26H.js → chunk-JIQAFFPV.js} +2 -2
- package/dist/bundle/{chunk-BHKI5OCD.js → chunk-JKA2AICL.js} +2 -2
- package/dist/bundle/{dist-FMN7UZ7R.js → chunk-JKLQHPED.js} +16 -116
- package/dist/bundle/{chunk-J3QXTBD2.js → chunk-JLRMSNPX.js} +18 -18
- package/dist/bundle/{chunk-HORM6VRV.js → chunk-K5JUROGN.js} +1 -1
- package/dist/bundle/{chunk-SY3SP7EI.js → chunk-KUQYWIVR.js} +6 -6
- package/dist/bundle/{chunk-7QQ4EMYF.js → chunk-LWTG5UOF.js} +2 -2
- package/dist/bundle/{chunk-YSSMDVT3.js → chunk-M7V3GSJQ.js} +1 -1
- package/dist/bundle/chunk-MD2J3POF.js +52 -0
- package/dist/bundle/{chunk-SWRNMYDL.js → chunk-NCWO2FNC.js} +2 -2
- package/dist/bundle/{chunk-LKDK5YMI.js → chunk-NOU6MWEM.js} +2 -2
- package/dist/bundle/{chunk-LQ37ALDJ.js → chunk-NXJLC2WK.js} +8 -8
- package/dist/bundle/{chunk-ZAR67WKR.js → chunk-NZB4WGQS.js} +6 -6
- package/dist/bundle/{chunk-5RUTHKXZ.js → chunk-O555ZEQR.js} +4 -4
- package/dist/bundle/{chunk-MGBGE2Y4.js → chunk-O7VK7CJX.js} +2 -2
- package/dist/bundle/{chunk-WFBTPZK3.js → chunk-OHV5RDFE.js} +4 -4
- package/dist/bundle/{chunk-HJEMHZRU.js → chunk-P5B7IFOG.js} +2 -2
- package/dist/bundle/{chunk-VWHRIGYJ.js → chunk-PBYDT3CG.js} +13 -3
- package/dist/bundle/{chunk-7IYDIU4P.js → chunk-PHPC72DP.js} +7 -7
- package/dist/bundle/{chunk-ID24SLH3.js → chunk-PKU6V4EQ.js} +17 -17
- package/dist/bundle/{chunk-P7P5MNAU.js → chunk-QZBT6BOU.js} +1 -1
- package/dist/bundle/{chunk-NL5LNYGX.js → chunk-RAZOSYEO.js} +23 -23
- package/dist/bundle/{chunk-CCNHVZ3G.js → chunk-RDSAI6DC.js} +398 -293
- package/dist/bundle/{chunk-CSI73XJ5.js → chunk-SAZJDKEI.js} +8 -8
- package/dist/bundle/{chunk-QX7RCLRS.js → chunk-SQLCCKEL.js} +1 -1
- package/dist/bundle/{chunk-ORYYYM5Y.js → chunk-TKJDGAHT.js} +23 -23
- package/dist/bundle/{chunk-RLSGMMGC.js → chunk-TPNC5VCJ.js} +4 -4
- package/dist/bundle/{chunk-IIO6NXCA.js → chunk-UAXBLHZK.js} +2 -2
- package/dist/bundle/{chunk-2NZGUKYK.js → chunk-VEAP5RVI.js} +10 -8
- package/dist/bundle/{chunk-6BNMEOVS.js → chunk-VF24ZAPX.js} +4 -4
- package/dist/bundle/{chunk-FFKNUVVD.js → chunk-WCL3WBH5.js} +3 -3
- package/dist/bundle/{chunk-M4NTQ247.js → chunk-WGK4AIRL.js} +12 -12
- package/dist/bundle/{chunk-OM4ZBLT7.js → chunk-XERTHQ6D.js} +88 -34
- package/dist/bundle/{chunk-6BR6JMCR.js → chunk-XZGLY2LU.js} +14 -14
- package/dist/bundle/{chunk-2LP46EUH.js → chunk-Y7JKWQC2.js} +96 -94
- package/dist/bundle/{chunk-F7KAJNNK.js → chunk-YBJMBPL7.js} +6 -6
- package/dist/bundle/{chunk-YYTWV5GU.js → chunk-ZMMIIBTM.js} +73 -57
- package/dist/bundle/{chunk-EOEYP7CJ.js → chunk-ZPGLWMNH.js} +3 -3
- package/dist/bundle/{chunk-UJYCKCFR.js → chunk-ZRYFEEXZ.js} +3 -3
- package/dist/bundle/command-contract-NZF4B5OR.js +34 -0
- package/dist/bundle/{decode-ON4KBMEX.js → decode-HVXDCQ63.js} +5 -5
- package/dist/bundle/{dispatch-EUKKT3PD.js → dispatch-GDAH4JHS.js} +8 -8
- package/dist/bundle/dist-43DZXMBL.js +134 -0
- package/dist/bundle/{echarts-XPA226QR.js → echarts-LZ74IXHG.js} +2 -2
- package/dist/bundle/{embed-QERDAB73.js → embed-OQF5U2C6.js} +6 -6
- package/dist/bundle/{embedder-I76YT3E5.js → embedder-OCWQAWKO.js} +9 -9
- package/dist/bundle/{failure-OAIC5VAP.js → failure-6COJAO7T.js} +2 -2
- package/dist/bundle/{first-run-KZJFR55N.js → first-run-MTZPUPGA.js} +11 -11
- package/dist/bundle/first-screen-4PBS6QK5.js +32 -0
- package/dist/bundle/{instructions-NN3BCFIM.js → instructions-M6F4FP7U.js} +1 -1
- package/dist/bundle/mail.js +12 -11
- package/dist/bundle/{mcp-L7SRVDRN.js → mcp-GAPDLFWA.js} +2 -2
- package/dist/bundle/{node-2S75QJ6B.js → node-NYBBFHGN.js} +2 -2
- package/dist/bundle/{node-sqlite-RC7WM3EG.js → node-sqlite-CWCNWO75.js} +5 -5
- package/dist/bundle/{oauth-FUHLZCKV.js → oauth-DVX45EME.js} +7 -7
- package/dist/bundle/{open-JOKT7LKY.js → open-M7EQWWHL.js} +4 -4
- package/dist/bundle/{openai-U3IMQ6UI.js → openai-63KRU5H2.js} +14 -14
- package/dist/bundle/{process-LKODK722.js → process-DV5GQIGM.js} +1 -1
- package/dist/bundle/{program-RMLIQXCA.js → program-EPR3QCMX.js} +20570 -7622
- package/dist/bundle/{prompt-23VYMNNB.js → prompt-EPWPWTB3.js} +5 -5
- package/dist/bundle/{recognize-TXO3462R.js → recognize-R46KDXK4.js} +4 -4
- package/dist/bundle/{remote-5F4ZOASM.js → remote-RENCYB5X.js} +7 -7
- package/dist/bundle/{rerank-TXSDPEFE.js → rerank-VHPC5O73.js} +7 -7
- package/dist/bundle/{serve-TWYECYWM.js → serve-KCH3ORYO.js} +9 -9
- package/dist/bundle/server-FMCPE2ZK.js +63 -0
- package/dist/bundle/{server-3S3BKE6D.js → server-HZVXSK7B.js} +38 -38
- package/dist/bundle/{sqlite-runtime-BEOBGC6K.js → sqlite-runtime-XP7ZJCKJ.js} +5 -5
- package/dist/bundle/{state-ERWIUTQQ.js → state-GQ4MEQJ5.js} +6 -6
- package/dist/bundle/{store-2JO4JGQL.js → store-CQNLNINW.js} +13 -13
- package/dist/bundle/{store-4RY5UMOP.js → store-WT7YTR3Y.js} +15 -15
- package/dist/bundle/store-maintenance-command-YYR42IT4.js +52 -0
- package/dist/commands/attachments.d.ts +3 -0
- package/dist/commands/attachments.d.ts.map +1 -0
- package/dist/commands/attachments.js +97 -0
- package/dist/commands/attachments.js.map +1 -0
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +11 -1
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/drafts-send.d.ts +7 -0
- package/dist/commands/drafts-send.d.ts.map +1 -0
- package/dist/commands/drafts-send.js +58 -0
- package/dist/commands/drafts-send.js.map +1 -0
- package/dist/commands/drafts.d.ts +3 -0
- package/dist/commands/drafts.d.ts.map +1 -0
- package/dist/commands/drafts.js +239 -0
- package/dist/commands/drafts.js.map +1 -0
- package/dist/commands/export.d.ts +3 -0
- package/dist/commands/export.d.ts.map +1 -0
- package/dist/commands/export.js +275 -0
- package/dist/commands/export.js.map +1 -0
- package/dist/commands/folders.d.ts.map +1 -1
- package/dist/commands/folders.js +120 -2
- package/dist/commands/folders.js.map +1 -1
- package/dist/commands/messages.d.ts +25 -0
- package/dist/commands/messages.d.ts.map +1 -0
- package/dist/commands/messages.js +502 -0
- package/dist/commands/messages.js.map +1 -0
- package/dist/commands/read.d.ts +4 -1
- package/dist/commands/read.d.ts.map +1 -1
- package/dist/commands/read.js +12 -2
- package/dist/commands/read.js.map +1 -1
- package/dist/commands/rules.d.ts +3 -0
- package/dist/commands/rules.d.ts.map +1 -0
- package/dist/commands/rules.js +292 -0
- package/dist/commands/rules.js.map +1 -0
- package/dist/commands/send.d.ts +39 -0
- package/dist/commands/send.d.ts.map +1 -0
- package/dist/commands/send.js +309 -0
- package/dist/commands/send.js.map +1 -0
- package/dist/commands/server-search.d.ts +8 -0
- package/dist/commands/server-search.d.ts.map +1 -0
- package/dist/commands/server-search.js +38 -0
- package/dist/commands/server-search.js.map +1 -0
- package/dist/commands/stats.d.ts +3 -0
- package/dist/commands/stats.d.ts.map +1 -0
- package/dist/commands/stats.js +90 -0
- package/dist/commands/stats.js.map +1 -0
- package/dist/commands/sync.d.ts +7 -0
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +22 -7
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/tags.d.ts +3 -0
- package/dist/commands/tags.d.ts.map +1 -0
- package/dist/commands/tags.js +144 -0
- package/dist/commands/tags.js.map +1 -0
- package/dist/config.d.ts +13 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +47 -1
- package/dist/config.js.map +1 -1
- package/dist/export/format.d.ts +19 -0
- package/dist/export/format.d.ts.map +1 -0
- package/dist/export/format.js +40 -0
- package/dist/export/format.js.map +1 -0
- package/dist/export/journal.d.ts +32 -0
- package/dist/export/journal.d.ts.map +1 -0
- package/dist/export/journal.js +84 -0
- package/dist/export/journal.js.map +1 -0
- package/dist/export/write.d.ts +14 -0
- package/dist/export/write.d.ts.map +1 -0
- package/dist/export/write.js +42 -0
- package/dist/export/write.js.map +1 -0
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +3 -0
- package/dist/identity.js.map +1 -1
- package/dist/mail/backend.d.ts +81 -1
- package/dist/mail/backend.d.ts.map +1 -1
- package/dist/mail/changes.d.ts +91 -0
- package/dist/mail/changes.d.ts.map +1 -0
- package/dist/mail/changes.js +198 -0
- package/dist/mail/changes.js.map +1 -0
- package/dist/mail/cleanup.d.ts +41 -0
- package/dist/mail/cleanup.d.ts.map +1 -0
- package/dist/mail/cleanup.js +119 -0
- package/dist/mail/cleanup.js.map +1 -0
- package/dist/mail/compose.d.ts +73 -0
- package/dist/mail/compose.d.ts.map +1 -0
- package/dist/mail/compose.js +122 -0
- package/dist/mail/compose.js.map +1 -0
- package/dist/mail/doctor.d.ts +25 -0
- package/dist/mail/doctor.d.ts.map +1 -0
- package/dist/mail/doctor.js +39 -0
- package/dist/mail/doctor.js.map +1 -0
- package/dist/mail/drafts.d.ts +54 -0
- package/dist/mail/drafts.d.ts.map +1 -0
- package/dist/mail/drafts.js +104 -0
- package/dist/mail/drafts.js.map +1 -0
- package/dist/mail/imap/connection.d.ts +7 -0
- package/dist/mail/imap/connection.d.ts.map +1 -1
- package/dist/mail/imap/connection.js +24 -2
- package/dist/mail/imap/connection.js.map +1 -1
- package/dist/mail/imap/index.d.ts +1 -1
- package/dist/mail/imap/index.d.ts.map +1 -1
- package/dist/mail/imap/index.js +12 -2
- package/dist/mail/imap/index.js.map +1 -1
- package/dist/mail/imap/messages.d.ts +5 -6
- package/dist/mail/imap/messages.d.ts.map +1 -1
- package/dist/mail/imap/messages.js +14 -28
- package/dist/mail/imap/messages.js.map +1 -1
- package/dist/mail/imap/read.d.ts.map +1 -1
- package/dist/mail/imap/read.js +27 -13
- package/dist/mail/imap/read.js.map +1 -1
- package/dist/mail/imap/search.d.ts +14 -0
- package/dist/mail/imap/search.d.ts.map +1 -0
- package/dist/mail/imap/search.js +49 -0
- package/dist/mail/imap/search.js.map +1 -0
- package/dist/mail/imap/write.d.ts +5 -0
- package/dist/mail/imap/write.d.ts.map +1 -0
- package/dist/mail/imap/write.js +93 -0
- package/dist/mail/imap/write.js.map +1 -0
- package/dist/mail/organise.d.ts +116 -0
- package/dist/mail/organise.d.ts.map +1 -0
- package/dist/mail/organise.js +531 -0
- package/dist/mail/organise.js.map +1 -0
- package/dist/mail/rethread.d.ts +1 -2
- package/dist/mail/rethread.d.ts.map +1 -1
- package/dist/mail/rethread.js +8 -3
- package/dist/mail/rethread.js.map +1 -1
- package/dist/mail/rules/apply.d.ts +40 -0
- package/dist/mail/rules/apply.d.ts.map +1 -0
- package/dist/mail/rules/apply.js +114 -0
- package/dist/mail/rules/apply.js.map +1 -0
- package/dist/mail/rules/file.d.ts +9 -0
- package/dist/mail/rules/file.d.ts.map +1 -0
- package/dist/mail/rules/file.js +51 -0
- package/dist/mail/rules/file.js.map +1 -0
- package/dist/mail/rules/filters.d.ts +11 -0
- package/dist/mail/rules/filters.d.ts.map +1 -0
- package/dist/mail/rules/filters.js +150 -0
- package/dist/mail/rules/filters.js.map +1 -0
- package/dist/mail/rules/folders.d.ts +11 -0
- package/dist/mail/rules/folders.d.ts.map +1 -0
- package/dist/mail/rules/folders.js +17 -0
- package/dist/mail/rules/folders.js.map +1 -0
- package/dist/mail/rules/query.d.ts +15 -0
- package/dist/mail/rules/query.d.ts.map +1 -0
- package/dist/mail/rules/query.js +103 -0
- package/dist/mail/rules/query.js.map +1 -0
- package/dist/mail/rules/store.d.ts +9 -0
- package/dist/mail/rules/store.d.ts.map +1 -0
- package/dist/mail/rules/store.js +17 -0
- package/dist/mail/rules/store.js.map +1 -0
- package/dist/mail/save.d.ts +12 -0
- package/dist/mail/save.d.ts.map +1 -0
- package/dist/mail/save.js +71 -0
- package/dist/mail/save.js.map +1 -0
- package/dist/mail/send.d.ts +67 -0
- package/dist/mail/send.d.ts.map +1 -0
- package/dist/mail/send.js +172 -0
- package/dist/mail/send.js.map +1 -0
- package/dist/mail/smtp.d.ts +4 -0
- package/dist/mail/smtp.d.ts.map +1 -0
- package/dist/mail/smtp.js +97 -0
- package/dist/mail/smtp.js.map +1 -0
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +28 -6
- package/dist/program.js.map +1 -1
- package/dist/providers.d.ts +71 -6
- package/dist/providers.d.ts.map +1 -1
- package/dist/providers.js +38 -9
- package/dist/providers.js.map +1 -1
- package/dist/reasons.d.ts +9 -0
- package/dist/reasons.d.ts.map +1 -0
- package/dist/reasons.js +21 -0
- package/dist/reasons.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +8 -5
- package/skills/mail-cli/SKILL.md +30 -3
- package/dist/bundle/chunk-XJ5TBPCK.js +0 -27
- package/dist/bundle/command-contract-L65UZ7AF.js +0 -34
- package/dist/bundle/first-screen-EORANEAK.js +0 -32
- package/dist/bundle/server-2GEAXKX2.js +0 -63
- package/dist/bundle/store-maintenance-command-T7D4OTN7.js +0 -52
- /package/dist/bundle/{chunk-NPGVOZVK.js → chunk-WJWLHLQ7.js} +0 -0
|
@@ -2,12 +2,12 @@ import { createRequire as __bundleRequire } from "node:module";
|
|
|
2
2
|
const require = __bundleRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
readSecret
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-5AQKM47C.js";
|
|
6
|
+
import "./chunk-P5B7IFOG.js";
|
|
7
|
+
import "./chunk-JLRMSNPX.js";
|
|
8
|
+
import "./chunk-NXJLC2WK.js";
|
|
9
9
|
import "./chunk-Y5E2WNWB.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-BM445GYF.js";
|
|
11
11
|
import "./chunk-ZVVMGPBJ.js";
|
|
12
12
|
export {
|
|
13
13
|
readSecret
|
|
@@ -8,11 +8,11 @@ import {
|
|
|
8
8
|
openRecognizer,
|
|
9
9
|
openSpeechCutter,
|
|
10
10
|
toModelRate
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-VF24ZAPX.js";
|
|
12
|
+
import "./chunk-JLRMSNPX.js";
|
|
13
|
+
import "./chunk-NXJLC2WK.js";
|
|
14
14
|
import "./chunk-Y5E2WNWB.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-BM445GYF.js";
|
|
16
16
|
import "./chunk-ZVVMGPBJ.js";
|
|
17
17
|
export {
|
|
18
18
|
SAMPLE_RATE,
|
|
@@ -8,14 +8,14 @@ import {
|
|
|
8
8
|
openRemote,
|
|
9
9
|
remoteKey,
|
|
10
10
|
remoteModel
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-ZRYFEEXZ.js";
|
|
12
|
+
import "./chunk-NZB4WGQS.js";
|
|
13
|
+
import "./chunk-OHV5RDFE.js";
|
|
14
|
+
import "./chunk-JIQAFFPV.js";
|
|
15
|
+
import "./chunk-JLRMSNPX.js";
|
|
16
|
+
import "./chunk-NXJLC2WK.js";
|
|
17
17
|
import "./chunk-Y5E2WNWB.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-BM445GYF.js";
|
|
19
19
|
import "./chunk-ZVVMGPBJ.js";
|
|
20
20
|
export {
|
|
21
21
|
DEFAULT_OPENAI_MODEL,
|
|
@@ -4,18 +4,18 @@ import {
|
|
|
4
4
|
defaultThreads,
|
|
5
5
|
loadModel,
|
|
6
6
|
truncated
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-NZB4WGQS.js";
|
|
8
|
+
import "./chunk-OHV5RDFE.js";
|
|
9
|
+
import "./chunk-JIQAFFPV.js";
|
|
10
|
+
import "./chunk-JLRMSNPX.js";
|
|
11
|
+
import "./chunk-NXJLC2WK.js";
|
|
12
12
|
import "./chunk-Y5E2WNWB.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-BM445GYF.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.530.0_@wirecat+cli-base@0.71.0_commander@15.0.0_esbuild@0.28.2_type_f01b7e2db7d22734373a522c868220f7/node_modules/@wirecat/cli-core/dist/embeddings/rerank.js
|
|
19
19
|
var openReranker = /* @__PURE__ */ __name(async (model, directory, { threads = defaultThreads() } = {}) => {
|
|
20
20
|
const { ort, tokenizer, session } = await loadModel(model, directory, threads);
|
|
21
21
|
const typeIds = session.inputNames.includes("token_type_ids");
|
|
@@ -2,10 +2,10 @@ import { createRequire as __bundleRequire } from "node:module";
|
|
|
2
2
|
const require = __bundleRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
listen
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-K5JUROGN.js";
|
|
6
6
|
import {
|
|
7
7
|
ownerLogin
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-UAXBLHZK.js";
|
|
9
9
|
import {
|
|
10
10
|
WebStandardStreamableHTTPServerTransport,
|
|
11
11
|
createMcpHandler,
|
|
@@ -20,20 +20,20 @@ import {
|
|
|
20
20
|
calledTools,
|
|
21
21
|
httpActivityFile,
|
|
22
22
|
httpLock
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
23
|
+
} from "./chunk-TPNC5VCJ.js";
|
|
24
|
+
import "./chunk-ZPGLWMNH.js";
|
|
25
|
+
import "./chunk-56PI2BRH.js";
|
|
26
|
+
import "./chunk-JLRMSNPX.js";
|
|
27
|
+
import "./chunk-NXJLC2WK.js";
|
|
28
28
|
import "./chunk-Y5E2WNWB.js";
|
|
29
29
|
import {
|
|
30
30
|
CliError
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-BM445GYF.js";
|
|
32
32
|
import {
|
|
33
33
|
__name
|
|
34
34
|
} from "./chunk-ZVVMGPBJ.js";
|
|
35
35
|
|
|
36
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
36
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.530.0_@wirecat+cli-base@0.71.0_commander@15.0.0_esbuild@0.28.2_type_f01b7e2db7d22734373a522c868220f7/node_modules/@wirecat/cli-core/dist/mcp/http/serve.js
|
|
37
37
|
import { randomUUID } from "node:crypto";
|
|
38
38
|
var MCP_PATH = "/mcp";
|
|
39
39
|
var AS_METADATA = "/.well-known/oauth-authorization-server";
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { createRequire as __bundleRequire } from "node:module";
|
|
2
|
+
const require = __bundleRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
PER_RUN,
|
|
5
|
+
createServer,
|
|
6
|
+
envelope,
|
|
7
|
+
serveOverHttpUntilStopped,
|
|
8
|
+
serveOverStdio
|
|
9
|
+
} from "./chunk-ES4PWHBJ.js";
|
|
10
|
+
import "./chunk-XERTHQ6D.js";
|
|
11
|
+
import "./chunk-TKJDGAHT.js";
|
|
12
|
+
import "./chunk-XZGLY2LU.js";
|
|
13
|
+
import "./chunk-PBYDT3CG.js";
|
|
14
|
+
import "./chunk-DA46WQEA.js";
|
|
15
|
+
import "./chunk-J4C32YKH.js";
|
|
16
|
+
import "./chunk-O7VK7CJX.js";
|
|
17
|
+
import "./chunk-5D4AEUVA.js";
|
|
18
|
+
import "./chunk-RAZOSYEO.js";
|
|
19
|
+
import "./chunk-3KY7DA5A.js";
|
|
20
|
+
import "./chunk-AGX7NR3S.js";
|
|
21
|
+
import "./chunk-5KHJUYHQ.js";
|
|
22
|
+
import "./chunk-JKA2AICL.js";
|
|
23
|
+
import "./chunk-P5B7IFOG.js";
|
|
24
|
+
import "./chunk-PHPC72DP.js";
|
|
25
|
+
import "./chunk-Y7JKWQC2.js";
|
|
26
|
+
import "./chunk-6MV2TBDB.js";
|
|
27
|
+
import "./chunk-J5MYH4L5.js";
|
|
28
|
+
import "./chunk-BVIHT7KR.js";
|
|
29
|
+
import "./chunk-B337KHJ5.js";
|
|
30
|
+
import "./chunk-QZBT6BOU.js";
|
|
31
|
+
import "./chunk-H4VFIH5W.js";
|
|
32
|
+
import "./chunk-TPNC5VCJ.js";
|
|
33
|
+
import "./chunk-ZPGLWMNH.js";
|
|
34
|
+
import "./chunk-56PI2BRH.js";
|
|
35
|
+
import "./chunk-ZRYFEEXZ.js";
|
|
36
|
+
import "./chunk-PKU6V4EQ.js";
|
|
37
|
+
import "./chunk-O555ZEQR.js";
|
|
38
|
+
import "./chunk-RDSAI6DC.js";
|
|
39
|
+
import "./chunk-KUQYWIVR.js";
|
|
40
|
+
import "./chunk-VEAP5RVI.js";
|
|
41
|
+
import "./chunk-ZMMIIBTM.js";
|
|
42
|
+
import "./chunk-4PKHZQIM.js";
|
|
43
|
+
import "./chunk-YBJMBPL7.js";
|
|
44
|
+
import "./chunk-DV4RSEAH.js";
|
|
45
|
+
import "./chunk-FIQOBLHS.js";
|
|
46
|
+
import "./chunk-SQLCCKEL.js";
|
|
47
|
+
import "./chunk-WJWLHLQ7.js";
|
|
48
|
+
import "./chunk-D72URWJE.js";
|
|
49
|
+
import "./chunk-NZB4WGQS.js";
|
|
50
|
+
import "./chunk-OHV5RDFE.js";
|
|
51
|
+
import "./chunk-JIQAFFPV.js";
|
|
52
|
+
import "./chunk-JLRMSNPX.js";
|
|
53
|
+
import "./chunk-NXJLC2WK.js";
|
|
54
|
+
import "./chunk-Y5E2WNWB.js";
|
|
55
|
+
import "./chunk-BM445GYF.js";
|
|
56
|
+
import "./chunk-ZVVMGPBJ.js";
|
|
57
|
+
export {
|
|
58
|
+
PER_RUN,
|
|
59
|
+
createServer,
|
|
60
|
+
envelope,
|
|
61
|
+
serveOverHttpUntilStopped,
|
|
62
|
+
serveOverStdio
|
|
63
|
+
};
|
|
@@ -2,34 +2,34 @@ import { createRequire as __bundleRequire } from "node:module";
|
|
|
2
2
|
const require = __bundleRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
botInstructions
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-M7V3GSJQ.js";
|
|
6
6
|
import {
|
|
7
7
|
answered,
|
|
8
8
|
normal,
|
|
9
9
|
registerCommands,
|
|
10
10
|
runCommandForAgent,
|
|
11
11
|
toolsFromCommands
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-XERTHQ6D.js";
|
|
13
13
|
import {
|
|
14
14
|
agentJson,
|
|
15
15
|
skillResource
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-
|
|
16
|
+
} from "./chunk-XZGLY2LU.js";
|
|
17
|
+
import "./chunk-PBYDT3CG.js";
|
|
18
18
|
import {
|
|
19
19
|
callerOf,
|
|
20
20
|
serveStdio
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-O7VK7CJX.js";
|
|
22
22
|
import {
|
|
23
23
|
McpServer
|
|
24
24
|
} from "./chunk-5D4AEUVA.js";
|
|
25
25
|
import {
|
|
26
26
|
wholeList
|
|
27
|
-
} from "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
27
|
+
} from "./chunk-3KY7DA5A.js";
|
|
28
|
+
import "./chunk-AGX7NR3S.js";
|
|
29
|
+
import "./chunk-5KHJUYHQ.js";
|
|
30
|
+
import "./chunk-JKA2AICL.js";
|
|
31
|
+
import "./chunk-P5B7IFOG.js";
|
|
32
|
+
import "./chunk-Y7JKWQC2.js";
|
|
33
33
|
import {
|
|
34
34
|
MESSENGER_CHANGE_REFUSAL,
|
|
35
35
|
changesMessenger,
|
|
@@ -37,42 +37,42 @@ import {
|
|
|
37
37
|
itemOf,
|
|
38
38
|
readOnlyLockOf,
|
|
39
39
|
readOnlyRefusal
|
|
40
|
-
} from "./chunk-
|
|
41
|
-
import "./chunk-
|
|
42
|
-
import "./chunk-
|
|
43
|
-
import "./chunk-
|
|
44
|
-
import "./chunk-
|
|
45
|
-
import "./chunk-
|
|
46
|
-
import "./chunk-
|
|
47
|
-
import "./chunk-
|
|
48
|
-
import "./chunk-
|
|
49
|
-
import "./chunk-
|
|
50
|
-
import "./chunk-
|
|
51
|
-
import "./chunk-
|
|
52
|
-
import "./chunk-
|
|
53
|
-
import "./chunk-
|
|
54
|
-
import "./chunk-
|
|
55
|
-
import "./chunk-
|
|
56
|
-
import "./chunk-
|
|
57
|
-
import "./chunk-
|
|
58
|
-
import "./chunk-
|
|
59
|
-
import "./chunk-
|
|
40
|
+
} from "./chunk-6MV2TBDB.js";
|
|
41
|
+
import "./chunk-J5MYH4L5.js";
|
|
42
|
+
import "./chunk-BVIHT7KR.js";
|
|
43
|
+
import "./chunk-B337KHJ5.js";
|
|
44
|
+
import "./chunk-QZBT6BOU.js";
|
|
45
|
+
import "./chunk-H4VFIH5W.js";
|
|
46
|
+
import "./chunk-56PI2BRH.js";
|
|
47
|
+
import "./chunk-ZRYFEEXZ.js";
|
|
48
|
+
import "./chunk-PKU6V4EQ.js";
|
|
49
|
+
import "./chunk-O555ZEQR.js";
|
|
50
|
+
import "./chunk-RDSAI6DC.js";
|
|
51
|
+
import "./chunk-KUQYWIVR.js";
|
|
52
|
+
import "./chunk-VEAP5RVI.js";
|
|
53
|
+
import "./chunk-ZMMIIBTM.js";
|
|
54
|
+
import "./chunk-4PKHZQIM.js";
|
|
55
|
+
import "./chunk-YBJMBPL7.js";
|
|
56
|
+
import "./chunk-DV4RSEAH.js";
|
|
57
|
+
import "./chunk-FIQOBLHS.js";
|
|
58
|
+
import "./chunk-SQLCCKEL.js";
|
|
59
|
+
import "./chunk-WJWLHLQ7.js";
|
|
60
60
|
import "./chunk-D72URWJE.js";
|
|
61
|
-
import "./chunk-
|
|
62
|
-
import "./chunk-
|
|
63
|
-
import "./chunk-
|
|
64
|
-
import "./chunk-
|
|
61
|
+
import "./chunk-NZB4WGQS.js";
|
|
62
|
+
import "./chunk-OHV5RDFE.js";
|
|
63
|
+
import "./chunk-JIQAFFPV.js";
|
|
64
|
+
import "./chunk-JLRMSNPX.js";
|
|
65
65
|
import {
|
|
66
66
|
mcpErrorResult,
|
|
67
67
|
object
|
|
68
|
-
} from "./chunk-
|
|
68
|
+
} from "./chunk-NXJLC2WK.js";
|
|
69
69
|
import "./chunk-Y5E2WNWB.js";
|
|
70
|
-
import "./chunk-
|
|
70
|
+
import "./chunk-BM445GYF.js";
|
|
71
71
|
import {
|
|
72
72
|
__name
|
|
73
73
|
} from "./chunk-ZVVMGPBJ.js";
|
|
74
74
|
|
|
75
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
75
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.530.0_@wirecat+cli-base@0.71.0_commander@15.0.0_esbuild@0.28.2_type_f01b7e2db7d22734373a522c868220f7/node_modules/@wirecat/cli-core/dist/mcp/bot/server.js
|
|
76
76
|
import { randomUUID } from "node:crypto";
|
|
77
77
|
var body = /* @__PURE__ */ __name((command, value) => Array.isArray(value) ? wholeList(`bot ${command}`, value) : value !== null && typeof value === "object" && ("item" in value || "items" in value) ? value : itemOf(value !== null && typeof value === "object" ? value : { value }), "body");
|
|
78
78
|
var createBotServer = /* @__PURE__ */ __name((options) => {
|
|
@@ -4,12 +4,12 @@ import {
|
|
|
4
4
|
ensureSqlite,
|
|
5
5
|
nodeRuntime,
|
|
6
6
|
relay
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-LWTG5UOF.js";
|
|
8
|
+
import "./chunk-DV4RSEAH.js";
|
|
9
|
+
import "./chunk-JLRMSNPX.js";
|
|
10
|
+
import "./chunk-NXJLC2WK.js";
|
|
11
11
|
import "./chunk-Y5E2WNWB.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-BM445GYF.js";
|
|
13
13
|
import "./chunk-ZVVMGPBJ.js";
|
|
14
14
|
export {
|
|
15
15
|
ensureSqlite,
|
|
@@ -12,13 +12,13 @@ import {
|
|
|
12
12
|
readHttpLock,
|
|
13
13
|
readStored,
|
|
14
14
|
signedInClients
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-TPNC5VCJ.js";
|
|
16
|
+
import "./chunk-ZPGLWMNH.js";
|
|
17
|
+
import "./chunk-56PI2BRH.js";
|
|
18
|
+
import "./chunk-JLRMSNPX.js";
|
|
19
|
+
import "./chunk-NXJLC2WK.js";
|
|
20
20
|
import "./chunk-Y5E2WNWB.js";
|
|
21
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-BM445GYF.js";
|
|
22
22
|
import "./chunk-ZVVMGPBJ.js";
|
|
23
23
|
export {
|
|
24
24
|
ACCESS_SECONDS,
|
|
@@ -54,20 +54,20 @@ import {
|
|
|
54
54
|
threadConversation,
|
|
55
55
|
titlePart,
|
|
56
56
|
vectorIndexCounts
|
|
57
|
-
} from "./chunk-
|
|
58
|
-
import "./chunk-
|
|
59
|
-
import "./chunk-
|
|
60
|
-
import "./chunk-
|
|
61
|
-
import "./chunk-
|
|
62
|
-
import "./chunk-
|
|
63
|
-
import "./chunk-
|
|
64
|
-
import "./chunk-
|
|
65
|
-
import "./chunk-
|
|
66
|
-
import "./chunk-
|
|
67
|
-
import "./chunk-
|
|
68
|
-
import "./chunk-
|
|
57
|
+
} from "./chunk-RDSAI6DC.js";
|
|
58
|
+
import "./chunk-KUQYWIVR.js";
|
|
59
|
+
import "./chunk-VEAP5RVI.js";
|
|
60
|
+
import "./chunk-ZMMIIBTM.js";
|
|
61
|
+
import "./chunk-4PKHZQIM.js";
|
|
62
|
+
import "./chunk-YBJMBPL7.js";
|
|
63
|
+
import "./chunk-DV4RSEAH.js";
|
|
64
|
+
import "./chunk-FIQOBLHS.js";
|
|
65
|
+
import "./chunk-WJWLHLQ7.js";
|
|
66
|
+
import "./chunk-JIQAFFPV.js";
|
|
67
|
+
import "./chunk-JLRMSNPX.js";
|
|
68
|
+
import "./chunk-NXJLC2WK.js";
|
|
69
69
|
import "./chunk-Y5E2WNWB.js";
|
|
70
|
-
import "./chunk-
|
|
70
|
+
import "./chunk-BM445GYF.js";
|
|
71
71
|
import "./chunk-ZVVMGPBJ.js";
|
|
72
72
|
export {
|
|
73
73
|
AGENDA_COLUMNS,
|
|
@@ -8,13 +8,13 @@ import {
|
|
|
8
8
|
previewDocumentTransfer,
|
|
9
9
|
previewProjectAnnotationSnapshot,
|
|
10
10
|
snapshotProjectAnnotations
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-PKU6V4EQ.js";
|
|
12
12
|
import {
|
|
13
13
|
note,
|
|
14
14
|
organization,
|
|
15
15
|
project,
|
|
16
16
|
reminder
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-O555ZEQR.js";
|
|
18
18
|
import {
|
|
19
19
|
CATALOG_QUERY,
|
|
20
20
|
EVENT_FIELDS,
|
|
@@ -54,8 +54,8 @@ import {
|
|
|
54
54
|
resetSearchIndex,
|
|
55
55
|
searchIndexState,
|
|
56
56
|
validateEvidenceFindings
|
|
57
|
-
} from "./chunk-
|
|
58
|
-
import "./chunk-
|
|
57
|
+
} from "./chunk-RDSAI6DC.js";
|
|
58
|
+
import "./chunk-KUQYWIVR.js";
|
|
59
59
|
import {
|
|
60
60
|
CLOSED_STATES,
|
|
61
61
|
FACT_STATUSES,
|
|
@@ -71,23 +71,23 @@ import {
|
|
|
71
71
|
priorityLabel,
|
|
72
72
|
priorityOf,
|
|
73
73
|
priorityOption
|
|
74
|
-
} from "./chunk-
|
|
75
|
-
import "./chunk-
|
|
76
|
-
import "./chunk-
|
|
77
|
-
import "./chunk-
|
|
78
|
-
import "./chunk-F7KAJNNK.js";
|
|
74
|
+
} from "./chunk-VEAP5RVI.js";
|
|
75
|
+
import "./chunk-ZMMIIBTM.js";
|
|
76
|
+
import "./chunk-4PKHZQIM.js";
|
|
77
|
+
import "./chunk-YBJMBPL7.js";
|
|
79
78
|
import {
|
|
80
79
|
PRAGMAS,
|
|
81
80
|
openCache
|
|
82
|
-
} from "./chunk-
|
|
83
|
-
import "./chunk-
|
|
81
|
+
} from "./chunk-DV4RSEAH.js";
|
|
82
|
+
import "./chunk-FIQOBLHS.js";
|
|
83
|
+
import "./chunk-WJWLHLQ7.js";
|
|
84
84
|
import {
|
|
85
85
|
storePath
|
|
86
|
-
} from "./chunk-
|
|
87
|
-
import "./chunk-
|
|
88
|
-
import "./chunk-
|
|
86
|
+
} from "./chunk-JIQAFFPV.js";
|
|
87
|
+
import "./chunk-JLRMSNPX.js";
|
|
88
|
+
import "./chunk-NXJLC2WK.js";
|
|
89
89
|
import "./chunk-Y5E2WNWB.js";
|
|
90
|
-
import "./chunk-
|
|
90
|
+
import "./chunk-BM445GYF.js";
|
|
91
91
|
import "./chunk-ZVVMGPBJ.js";
|
|
92
92
|
export {
|
|
93
93
|
CATALOG_QUERY,
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { createRequire as __bundleRequire } from "node:module";
|
|
2
|
+
const require = __bundleRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
buildStems,
|
|
5
|
+
storeMaintenanceCommands,
|
|
6
|
+
storeSummary
|
|
7
|
+
} from "./chunk-JFJTDL22.js";
|
|
8
|
+
import "./chunk-NOU6MWEM.js";
|
|
9
|
+
import "./chunk-RAZOSYEO.js";
|
|
10
|
+
import "./chunk-3KY7DA5A.js";
|
|
11
|
+
import "./chunk-AGX7NR3S.js";
|
|
12
|
+
import "./chunk-5KHJUYHQ.js";
|
|
13
|
+
import "./chunk-WCL3WBH5.js";
|
|
14
|
+
import "./chunk-JKA2AICL.js";
|
|
15
|
+
import "./chunk-5AQKM47C.js";
|
|
16
|
+
import "./chunk-P5B7IFOG.js";
|
|
17
|
+
import "./chunk-HTQTIKWP.js";
|
|
18
|
+
import "./chunk-6MV2TBDB.js";
|
|
19
|
+
import "./chunk-J5MYH4L5.js";
|
|
20
|
+
import "./chunk-BVIHT7KR.js";
|
|
21
|
+
import "./chunk-B337KHJ5.js";
|
|
22
|
+
import "./chunk-QZBT6BOU.js";
|
|
23
|
+
import "./chunk-H4VFIH5W.js";
|
|
24
|
+
import "./chunk-ZPGLWMNH.js";
|
|
25
|
+
import "./chunk-56PI2BRH.js";
|
|
26
|
+
import "./chunk-ZRYFEEXZ.js";
|
|
27
|
+
import "./chunk-PKU6V4EQ.js";
|
|
28
|
+
import "./chunk-O555ZEQR.js";
|
|
29
|
+
import "./chunk-RDSAI6DC.js";
|
|
30
|
+
import "./chunk-KUQYWIVR.js";
|
|
31
|
+
import "./chunk-VEAP5RVI.js";
|
|
32
|
+
import "./chunk-ZMMIIBTM.js";
|
|
33
|
+
import "./chunk-4PKHZQIM.js";
|
|
34
|
+
import "./chunk-YBJMBPL7.js";
|
|
35
|
+
import "./chunk-DV4RSEAH.js";
|
|
36
|
+
import "./chunk-FIQOBLHS.js";
|
|
37
|
+
import "./chunk-SQLCCKEL.js";
|
|
38
|
+
import "./chunk-WJWLHLQ7.js";
|
|
39
|
+
import "./chunk-D72URWJE.js";
|
|
40
|
+
import "./chunk-NZB4WGQS.js";
|
|
41
|
+
import "./chunk-OHV5RDFE.js";
|
|
42
|
+
import "./chunk-JIQAFFPV.js";
|
|
43
|
+
import "./chunk-JLRMSNPX.js";
|
|
44
|
+
import "./chunk-NXJLC2WK.js";
|
|
45
|
+
import "./chunk-Y5E2WNWB.js";
|
|
46
|
+
import "./chunk-BM445GYF.js";
|
|
47
|
+
import "./chunk-ZVVMGPBJ.js";
|
|
48
|
+
export {
|
|
49
|
+
buildStems,
|
|
50
|
+
storeMaintenanceCommands,
|
|
51
|
+
storeSummary
|
|
52
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../src/commands/attachments.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA+HnC,eAAO,MAAM,kBAAkB,QAAO,OAIJ,CAAA"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { resolve } from "node:path";
|
|
2
|
+
import { CliError } from "@wirecat/cli-base";
|
|
3
|
+
import { annotate } from "@wirecat/cli-base/commands";
|
|
4
|
+
import { answerEntity, FETCH, itemOf, listOf, outputFor, REMOTE_READ, renderAnswer } from "@wirecat/cli-core/cli";
|
|
5
|
+
import { parseMail } from "@wirecat/cli-core/mail";
|
|
6
|
+
import { refusedPlace } from "@wirecat/cli-core/sends";
|
|
7
|
+
import { Command } from "commander";
|
|
8
|
+
import * as v from "valibot";
|
|
9
|
+
import { IDENTITY } from "../identity.js";
|
|
10
|
+
import { distinctNames, refuseExisting, safeName, savePrivately } from "../mail/save.js";
|
|
11
|
+
import { fetchOriginal } from "../mail/send.js";
|
|
12
|
+
import { contextOf } from "./context.js";
|
|
13
|
+
import { organising } from "./messages.js";
|
|
14
|
+
const REF_EXAMPLE = "'msg:email/me%40example.com/thread-1/1001'";
|
|
15
|
+
const attachment = v.strictObject({
|
|
16
|
+
number: v.number(),
|
|
17
|
+
name: v.string(),
|
|
18
|
+
mime: v.nullable(v.string()),
|
|
19
|
+
bytes: v.number(),
|
|
20
|
+
});
|
|
21
|
+
const saved = v.looseObject({
|
|
22
|
+
folder: v.string(),
|
|
23
|
+
files: v.array(v.strictObject({ number: v.number(), name: v.string(), path: v.string(), bytes: v.number() })),
|
|
24
|
+
});
|
|
25
|
+
/** The message's attachments as the store numbered them at sync: the same parser, so the same order and names. */
|
|
26
|
+
const attachmentsOf = async (opened, reference) => {
|
|
27
|
+
const { raw } = await fetchOriginal(opened.mailbox, opened.backend, reference, opened.profile);
|
|
28
|
+
const parsed = await parseMail(raw);
|
|
29
|
+
const names = distinctNames(parsed.attachments.map(({ id, name }) => safeName(name, `attachment-${id + 1}`)));
|
|
30
|
+
return parsed.attachments.map((one, at) => ({
|
|
31
|
+
number: one.id + 1,
|
|
32
|
+
name: names[at],
|
|
33
|
+
mime: one.mime,
|
|
34
|
+
bytes: one.bytes?.byteLength ?? 0,
|
|
35
|
+
content: one.bytes ?? new Uint8Array(),
|
|
36
|
+
}));
|
|
37
|
+
};
|
|
38
|
+
const listCommand = () => answerEntity(annotate(new Command("list"), {
|
|
39
|
+
effects: REMOTE_READ,
|
|
40
|
+
examples: [`${IDENTITY.command} ya attachments list ${REF_EXAMPLE}`],
|
|
41
|
+
}), "mail_attachment", attachment)
|
|
42
|
+
.summary("the files attached to one email, read from the server")
|
|
43
|
+
.description("the attachments of one stored email, numbered as attachments download takes them; reads the message from the server")
|
|
44
|
+
.argument("<message>", "the msg:email/… reference search messages shows")
|
|
45
|
+
.action(async function (reference) {
|
|
46
|
+
const found = await organising(this, (opened) => attachmentsOf(opened, reference));
|
|
47
|
+
const items = found.map(({ content: _, ...one }) => one);
|
|
48
|
+
renderAnswer(this, outputFor(this), listOf("attachments list", { items, limit: Math.max(1, items.length), has_more: false }), () => items.length
|
|
49
|
+
? items.map(({ number, name, bytes }) => `${number} ${name} ${bytes} bytes\n`).join("")
|
|
50
|
+
: "no attachments\n");
|
|
51
|
+
});
|
|
52
|
+
const numbersOf = (given) => given.map((value) => {
|
|
53
|
+
if (!/^\d+$/.test(value.trim()) || Number(value) < 1)
|
|
54
|
+
throw new CliError("validation_error", "a number is an attachment's number from attachments list", {
|
|
55
|
+
param: "number",
|
|
56
|
+
});
|
|
57
|
+
return Number(value);
|
|
58
|
+
});
|
|
59
|
+
const downloadCommand = () => answerEntity(annotate(new Command("download"), {
|
|
60
|
+
effects: FETCH,
|
|
61
|
+
examples: [
|
|
62
|
+
`${IDENTITY.command} ya attachments download ${REF_EXAMPLE} --output-dir ./invoices`,
|
|
63
|
+
`${IDENTITY.command} ya attachments download ${REF_EXAMPLE} 2 --output-dir ./invoices`,
|
|
64
|
+
],
|
|
65
|
+
}), "mail_attachments_saved", saved)
|
|
66
|
+
.summary("save the files attached to one email")
|
|
67
|
+
.description("save the attachments of one stored email into a folder, readable only by you; the bytes come from the server " +
|
|
68
|
+
"and never go into the store. An existing file is left alone unless --replace")
|
|
69
|
+
.argument("<message>", "the msg:email/… reference search messages shows")
|
|
70
|
+
.argument("[number...]", "only these attachments, by their number in attachments list (default: all)")
|
|
71
|
+
.requiredOption("--output-dir <dir>", "the folder to save into, made if missing")
|
|
72
|
+
.option("--replace", "overwrite a file of the same name in the folder")
|
|
73
|
+
.action(async function (reference, given, flags) {
|
|
74
|
+
const numbers = numbersOf(given);
|
|
75
|
+
const folder = resolve(flags.outputDir);
|
|
76
|
+
if (refusedPlace(folder, IDENTITY, contextOf(this).env))
|
|
77
|
+
throw new CliError("validation_error", `will not save into ${flags.outputDir}: credential folders and the WireCat apps' folders are not written to`, { param: "output-dir" });
|
|
78
|
+
const found = await organising(this, (opened) => attachmentsOf(opened, reference));
|
|
79
|
+
const wanted = numbers.length ? found.filter(({ number }) => numbers.includes(number)) : found;
|
|
80
|
+
const missing = numbers.filter((number) => !found.some((one) => one.number === number));
|
|
81
|
+
if (missing.length)
|
|
82
|
+
throw new CliError("not_found", `the message has no attachment ${missing.join(", ")}; it has ${found.length}`, {
|
|
83
|
+
param: "number",
|
|
84
|
+
});
|
|
85
|
+
const files = wanted.map((one) => ({ ...one, path: resolve(folder, one.name) }));
|
|
86
|
+
if (!flags.replace)
|
|
87
|
+
for (const { path } of files)
|
|
88
|
+
refuseExisting(path);
|
|
89
|
+
for (const { path, content } of files)
|
|
90
|
+
savePrivately(path, content, flags.replace === true);
|
|
91
|
+
renderAnswer(this, outputFor(this), itemOf({ folder, files: files.map(({ number, name, path, bytes }) => ({ number, name, path, bytes })) }), () => files.length ? files.map(({ path, bytes }) => `${path} ${bytes} bytes\n`).join("") : "no attachments\n");
|
|
92
|
+
});
|
|
93
|
+
export const attachmentsCommand = () => new Command("attachments")
|
|
94
|
+
.summary("list and save the files attached to an email")
|
|
95
|
+
.addCommand(listCommand())
|
|
96
|
+
.addCommand(downloadCommand());
|
|
97
|
+
//# sourceMappingURL=attachments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../src/commands/attachments.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,KAAK,eAAe,EAAiB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAC7F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEpD,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAa,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,KAAK,eAAe,EAAiB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAC7F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEpD,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAa,MAAM,oBAAoB,CAAA;AAG9E,OAAO,EAAE,KAAK,cAAc,EAAiB,MAAM,cAAc,CAAA;AAEjE,wFAAwF;AACxF,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB,kFAAkF;IAClF,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB;AAED,eAAO,MAAM,SAAS,YAAa,OAAO;;;;;;;;CAMzC,CAAA;AAED,eAAO,MAAM,aAAa,UAAW,WAAW,SAE/C,CAAA;AAED,eAAO,MAAM,UAAU,aAAc,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,UAAU,CAAC,KAAG,YAS/E,CAAA;AAWD,eAAO,MAAM,WAAW,YAAa,UAAU,CAAC,OAAO,SAAS,CAAC;;;;;;;;CAM7D,CAAA;AAKJ,MAAM,WAAW,eAAe;IAC9B,yFAAyF;IACzF,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAA;CACzB;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,YAAmB,UAAU,CAAC,OAAO,SAAS,CAAC,YAAW,eAAe;;;;EAsB7F,CAAA;AAED,eAAO,MAAM,OAAO,UAAW,MAAM,aAAY,MAAM,EAAE,KAAQ,MAAM,EAA0B,CAAA"}
|