@leemour/cli-messaging 0.160.0 → 0.162.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/attachments/directory.d.ts +3 -0
- package/dist/attachments/directory.d.ts.map +1 -0
- package/dist/attachments/directory.js +74 -0
- package/dist/attachments/directory.js.map +1 -0
- package/dist/cli/command-contract.d.ts.map +1 -1
- package/dist/cli/command-contract.js +1 -1
- package/dist/cli/command-contract.js.map +1 -1
- package/dist/cli/execution.d.ts.map +1 -1
- package/dist/cli/execution.js +3 -1
- package/dist/cli/execution.js.map +1 -1
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/messenger/archive-commands.d.ts.map +1 -1
- package/dist/cli/messenger/archive-commands.js +2 -0
- package/dist/cli/messenger/archive-commands.js.map +1 -1
- package/dist/cli/messenger/attachments-command.d.ts.map +1 -1
- package/dist/cli/messenger/attachments-command.js +8 -2
- package/dist/cli/messenger/attachments-command.js.map +1 -1
- package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
- package/dist/cli/messenger/backfill-command.js +31 -3
- package/dist/cli/messenger/backfill-command.js.map +1 -1
- package/dist/cli/messenger/backfill-jobs.d.ts +1 -39
- package/dist/cli/messenger/backfill-jobs.d.ts.map +1 -1
- package/dist/cli/messenger/backfill-jobs.js +1 -61
- package/dist/cli/messenger/backfill-jobs.js.map +1 -1
- package/dist/cli/messenger/context.d.ts +3 -0
- package/dist/cli/messenger/context.d.ts.map +1 -1
- package/dist/cli/messenger/context.js +5 -0
- package/dist/cli/messenger/context.js.map +1 -1
- package/dist/cli/messenger/download-command.d.ts +1 -31
- package/dist/cli/messenger/download-command.d.ts.map +1 -1
- package/dist/cli/messenger/download-command.js +45 -119
- package/dist/cli/messenger/download-command.js.map +1 -1
- package/dist/cli/messenger/gaps-command.d.ts +4 -0
- package/dist/cli/messenger/gaps-command.d.ts.map +1 -0
- package/dist/cli/messenger/gaps-command.js +147 -0
- package/dist/cli/messenger/gaps-command.js.map +1 -0
- package/dist/cli/messenger/official-stats-command.d.ts +4 -0
- package/dist/cli/messenger/official-stats-command.d.ts.map +1 -0
- package/dist/cli/messenger/official-stats-command.js +44 -0
- package/dist/cli/messenger/official-stats-command.js.map +1 -0
- package/dist/cli/messenger/port.d.ts +11 -3
- package/dist/cli/messenger/port.d.ts.map +1 -1
- package/dist/cli/messenger/port.js.map +1 -1
- package/dist/cli/messenger/stats-command.d.ts.map +1 -1
- package/dist/cli/messenger/stats-command.js +5 -1
- package/dist/cli/messenger/stats-command.js.map +1 -1
- package/dist/cli/program.js +2 -2
- package/dist/cli/program.js.map +1 -1
- package/dist/cli/settings.d.ts +3 -0
- package/dist/cli/settings.d.ts.map +1 -1
- package/dist/cli/settings.js +4 -0
- package/dist/cli/settings.js.map +1 -1
- package/dist/conversations/chunks.d.ts +2 -2
- package/dist/conversations/chunks.d.ts.map +1 -1
- package/dist/conversations/chunks.js +5 -3
- package/dist/conversations/chunks.js.map +1 -1
- package/dist/conversations/link.d.ts +2 -1
- package/dist/conversations/link.d.ts.map +1 -1
- package/dist/conversations/link.js +2 -1
- package/dist/conversations/link.js.map +1 -1
- package/dist/domain/models.d.ts +82 -0
- package/dist/domain/models.d.ts.map +1 -1
- package/dist/mcp/server.d.ts +3 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +1 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tool.d.ts +2 -1
- package/dist/mcp/tool.d.ts.map +1 -1
- package/dist/mcp/tool.js.map +1 -1
- package/dist/mcp/tools/attachments.d.ts.map +1 -1
- package/dist/mcp/tools/attachments.js +50 -0
- package/dist/mcp/tools/attachments.js.map +1 -1
- package/dist/mcp/tools/store.d.ts +4 -0
- package/dist/mcp/tools/store.d.ts.map +1 -0
- package/dist/mcp/tools/store.js +152 -0
- package/dist/mcp/tools/store.js.map +1 -0
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +2 -0
- package/dist/mcp/tools.js.map +1 -1
- package/dist/sends/permissions.d.ts +1 -1
- package/dist/sends/permissions.d.ts.map +1 -1
- package/dist/sends/permissions.js +6 -0
- package/dist/sends/permissions.js.map +1 -1
- package/dist/services/archive-gaps.d.ts +64 -0
- package/dist/services/archive-gaps.d.ts.map +1 -0
- package/dist/services/archive-gaps.js +146 -0
- package/dist/services/archive-gaps.js.map +1 -0
- package/dist/services/archive.d.ts +12 -1
- package/dist/services/archive.d.ts.map +1 -1
- package/dist/services/archive.js +60 -14
- package/dist/services/archive.js.map +1 -1
- package/dist/services/attachments.d.ts +7 -1
- package/dist/services/attachments.d.ts.map +1 -1
- package/dist/services/attachments.js +47 -14
- package/dist/services/attachments.js.map +1 -1
- package/dist/services/backfill-jobs.d.ts +51 -0
- package/dist/services/backfill-jobs.d.ts.map +1 -0
- package/dist/services/backfill-jobs.js +90 -0
- package/dist/services/backfill-jobs.js.map +1 -0
- package/dist/services/chats.d.ts +1 -0
- package/dist/services/chats.d.ts.map +1 -1
- package/dist/services/chats.js +10 -5
- package/dist/services/chats.js.map +1 -1
- package/dist/services/conversations.d.ts +4 -1
- package/dist/services/conversations.d.ts.map +1 -1
- package/dist/services/conversations.js +9 -2
- package/dist/services/conversations.js.map +1 -1
- package/dist/services/deps.d.ts +1 -0
- package/dist/services/deps.d.ts.map +1 -1
- package/dist/services/deps.js.map +1 -1
- package/dist/services/embeddings.d.ts +2 -0
- package/dist/services/embeddings.d.ts.map +1 -1
- package/dist/services/embeddings.js +9 -4
- package/dist/services/embeddings.js.map +1 -1
- package/dist/services/file-download.d.ts +37 -0
- package/dist/services/file-download.d.ts.map +1 -0
- package/dist/services/file-download.js +111 -0
- package/dist/services/file-download.js.map +1 -0
- package/dist/services/index.d.ts +4 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +4 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/search-catchup.d.ts +22 -0
- package/dist/services/search-catchup.d.ts.map +1 -0
- package/dist/services/search-catchup.js +55 -0
- package/dist/services/search-catchup.js.map +1 -0
- package/dist/store/sqlite/attachment-texts.d.ts +3 -1
- package/dist/store/sqlite/attachment-texts.d.ts.map +1 -1
- package/dist/store/sqlite/attachment-texts.js +5 -4
- package/dist/store/sqlite/attachment-texts.js.map +1 -1
- package/dist/store/sqlite/conversations.d.ts +1 -1
- package/dist/store/sqlite/conversations.d.ts.map +1 -1
- package/dist/store/sqlite/conversations.js +10 -1
- package/dist/store/sqlite/conversations.js.map +1 -1
- package/dist/store/sqlite/messages.d.ts.map +1 -1
- package/dist/store/sqlite/messages.js +1 -0
- package/dist/store/sqlite/messages.js.map +1 -1
- package/dist/store/sqlite/vectors.d.ts +2 -1
- package/dist/store/sqlite/vectors.d.ts.map +1 -1
- package/dist/store/sqlite/vectors.js +35 -16
- package/dist/store/sqlite/vectors.js.map +1 -1
- package/dist/store/store.d.ts +2 -0
- package/dist/store/store.d.ts.map +1 -1
- package/dist/store/store.js.map +1 -1
- package/package.json +1 -1
- package/parity.json +236 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backfill-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAwB,aAAa,EAAE,MAAM,eAAe,CAAA;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAEL,OAAO,EACP,QAAQ,EACR,OAAO,EAEP,OAAO,EACP,aAAa,EACb,OAAO,EACP,SAAS,GACV,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAyC,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE5C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,SAAoB,EAAW,EAAE;IAC5D,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,IAAI,QAAQ,CAAA;IAC/C,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;SACxB,WAAW,CAAC,qFAAqF,CAAC;SAClG,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,YAAY,CAAC;SAC1C,MAAM,CACL,aAAa,EACb,2CAA2C,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,eAAe,EAC3F,WAAW,CACZ;SACA,MAAM,CAAC,iBAAiB,EAAE,2CAA2C,QAAQ,CAAC,IAAI,eAAe,EAAE,WAAW,CAAC;SAC/G,MAAM,CACL,oBAAoB,EACpB,QAAQ,CAAC,MAAM;QACb,CAAC,CAAC,8FAA8F;QAChG,CAAC,CAAC,0DAA0D,EAC9D,QAAQ,CAAC,KAAK,CACf;SACA,MAAM,CAAC,qBAAqB,EAAE,yEAAyE,CAAC;SACxG,MAAM,CAAC,YAAY,EAAE,0CAA0C,EAAE,WAAW,CAAC;SAC7E,MAAM,CAAC,cAAc,EAAE,uEAAuE,CAAC;SAC/F,MAAM,CACL,YAAY,EACZ,kHAAkH,CACnH;SACA,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,EACJ,KAAK,EACL,SAAS,EAAE,KAAK,EAChB,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,GAAG,KAAK,EACT,GAAG,IAAI,CAAC,IAAI,EAQT,CAAA;QACJ,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9C,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,oEAAoE,CAAC,CAAA;QAC9G,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAA;QAChD,4GAA4G;QAC5G,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,IAAI,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC1E,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,6BAA6B,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,8BAA8B,CAC5H,CAAA;QACH,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAA;QAC9D,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAC/C,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;QACjF,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QACjD,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9C,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,0EAA0E,CAC3E,CAAA;YACH,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrD,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAC9D,CAAA;YACD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAC/B,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC5B,OAAO,CAAC,QAAQ,CAAC,IAAI,CACnB,+CAA+C,SAAS,CAAC,GAAG,CAAC,OAAO,gBAAgB,IAAI,YAAY,QAAQ,0CAA0C,CACvJ,CAAA;YACH,CAAC;iBAAM,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC;gBAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAA;YAC3G,OAAM;QACR,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE;gBACjC,IAAI;gBACJ,KAAK;gBACL,QAAQ;gBACR,KAAK;gBACL,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBACvC,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;aAC7E,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;QAChD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAA;QACjE,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrD,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC3B,KAAK;gBACL,QAAQ;gBACR,OAAO;gBACP,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;gBAC7C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBACvC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAC3B,IAAI,EAAE,IAAI,CAAC,MAAM;gBACjB,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;oBACnB,IAAI,KAAK;wBAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;gBACjD,CAAC;aACF,CAAC,CACH,CAAA;YACD,IAAI,KAAK;gBAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;YACnF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAA;gBACjE,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBACtE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;YAC5F,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC;IACH,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,SAAoB,EAAW,EAAE;IAC3D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAA;IAExE,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,qCAAqC,CAAC;SAClD,MAAM,CAAC;QACN,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;QAC3G,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;QAC7D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;IAC3F,CAAC,CAAC,CAAA;IAEJ,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,+FAA+F,CAAC;SAC5G,QAAQ,CAAC,OAAO,EAAE,+CAA+C,CAAC;SAClE,MAAM,CAAC,KAAK,WAA0B,EAAsB;QAC3D,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QACjD,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;QAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAA;QACnC,MAAM,IAAI,GACR,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACpG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;IACrF,CAAC,CAAC,CAAA;IAEJ,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,8FAA8F,CAAC;SAC3G,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;SAC/B,MAAM,CAAC,UAAyB,EAAU;QACzC,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QACjD,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;QAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,OAAO,GAAG,CAAC,EAAE,2BAA2B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAChG,CAAC;QACD,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACvG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3D,CAAC,CAAC,CAAA;IAEJ,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,KAAK,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;IAC3B,GAAG,EAAE,GAAG,CAAC,EAAE;IACX,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC;IACnB,GAAG,EAAE,GAAG,CAAC,GAAG;IACZ,SAAS,EAAE,GAAG,CAAC,SAAS;IACxB,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,GAAG,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC;IAClE,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;IACxD,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IACrD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CAC3C,CAAC,CAAA;AAEF,MAAM,OAAO,GAAG,CAAC,SAAoB,EAAE,OAAyB,EAAE,EAAsB,EAAO,EAAE;IAC/F,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/C,MAAM,GAAG,GAAG,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAChH,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5C,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,gBAAgB,EAAE,mBAAmB,CACvG,CAAA;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CACf,OAAgB,EAChB,OAAyB,EACzB,SAAoB,EACpB,EACE,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,KAAK,EACL,IAAI,GAC4F,EAClG,EAAE;IACF,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,CAAA;IACzB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAChC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,CAC5F,CAAA;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,OAAO,OAAO,CAAC,EAAE,wBAAwB,IAAI,SAAS,OAAO,CAAC,GAAG,SAAS,GAAG,CAAC,OAAO,oBAAoB,OAAO,CAAC,EAAE,IAAI,CACxH,CAAA;IACH,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;IACtB,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAA;IACrG,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAChD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;IAClC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,eAAe,EAAwB,CAAA;IACnE,MAAM,IAAI,GAAG;QACX,OAAO;QACP,OAAO;QACP,IAAI;QACJ,SAAS;QACT,MAAM,CAAC,KAAK,CAAC;QACb,aAAa;QACb,MAAM,CAAC,QAAQ,CAAC;QAChB,SAAS;QACT,KAAK;QACL,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACvD,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACvD,QAAQ;QACR,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3C,CAAA;IACD,yFAAyF;IACzF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,CAAA;IACzE,MAAM,GAAG,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,CAAA;IAC5G,MAAM,GAAG,GAAQ;QACf,EAAE;QACF,IAAI;QACJ,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,EAAE,CAAC;QACN,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;QAC5B,KAAK;QACL,QAAQ;QACR,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACvC,GAAG;KACJ,CAAA;IACD,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACjB,MAAM,QAAQ,GAAG,aAAa,CAA4C,OAAO,CAAC,CAAC,QAAQ,IAAI,aAAa,CAAA;IAC5G,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IACpC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;IACpD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,OAAO,oBAAoB,EAAE,eAAe,CAAC,CAAA;AACxF,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,IAAI,KAAK,kBAAkB,CAAC,CAAA;IAChH,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"backfill-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,40 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export interface Job {
|
|
3
|
-
id: string;
|
|
4
|
-
chat: string;
|
|
5
|
-
profile: string;
|
|
6
|
-
pid: number;
|
|
7
|
-
startedAt: string;
|
|
8
|
-
/** Absent on a job started before `--limit`. */
|
|
9
|
-
limit?: number;
|
|
10
|
-
pageSize?: number;
|
|
11
|
-
last?: number;
|
|
12
|
-
log: string;
|
|
13
|
-
progress?: {
|
|
14
|
-
fetched: number;
|
|
15
|
-
chatId: string;
|
|
16
|
-
oldest: number;
|
|
17
|
-
};
|
|
18
|
-
finishedAt?: string;
|
|
19
|
-
result?: Record<string, unknown>;
|
|
20
|
-
error?: {
|
|
21
|
-
code: string;
|
|
22
|
-
message: string;
|
|
23
|
-
};
|
|
24
|
-
cancelRequestedAt?: string;
|
|
25
|
-
}
|
|
26
|
-
export type JobState = "running" | "done" | "failed" | "cancelled" | "died";
|
|
27
|
-
/** Starts `<cli> <argv>` apart from this process, writing to `log`, and answers its PID. Tests hand one in. */
|
|
28
|
-
export type SpawnJob = (argv: string[], env: NodeJS.ProcessEnv, log: string) => number;
|
|
29
|
-
export declare const spawnDetached: SpawnJob;
|
|
30
|
-
export declare const jobsDir: (app: AppIdentity, env: NodeJS.ProcessEnv) => string;
|
|
31
|
-
export declare const saveJob: (dir: string, job: Job) => void;
|
|
32
|
-
export declare const readJob: (dir: string, id: string) => Job | undefined;
|
|
33
|
-
export declare const updateJob: (dir: string, id: string, change: Partial<Job>) => void;
|
|
34
|
-
/** Newest first. */
|
|
35
|
-
export declare const listJobs: (dir: string) => Job[];
|
|
36
|
-
/** A job that is gone without saying how it ended was killed, or crashed before it could — its log says which. */
|
|
37
|
-
export declare const stateOf: (job: Job) => JobState;
|
|
38
|
-
/** Whether the recorded PID is still this job — its environment names it (`<PREFIX>_BACKFILL_JOB`). */
|
|
39
|
-
export declare const isJob: (job: Job) => boolean;
|
|
1
|
+
export { isJob, type Job, type JobState, jobsDir, listJobs, readJob, type SpawnJob, saveJob, spawnDetached, stateOf, updateJob, } from "../../services/backfill-jobs.js";
|
|
40
2
|
//# sourceMappingURL=backfill-jobs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backfill-jobs.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-jobs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"backfill-jobs.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-jobs.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,KAAK,GAAG,EACR,KAAK,QAAQ,EACb,OAAO,EACP,QAAQ,EACR,OAAO,EACP,KAAK,QAAQ,EACb,OAAO,EACP,aAAa,EACb,OAAO,EACP,SAAS,GACV,MAAM,iCAAiC,CAAA"}
|
|
@@ -1,62 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { closeSync, existsSync, mkdirSync, openSync, readdirSync, readFileSync, realpathSync } from "node:fs";
|
|
3
|
-
import { join } from "node:path";
|
|
4
|
-
import { resolvePaths, writeSecurely } from "@leemour/cli-core";
|
|
5
|
-
import { carries } from "../../background/processes.js";
|
|
6
|
-
export const spawnDetached = (argv, env, log) => {
|
|
7
|
-
const out = openSync(log, "a", 0o600);
|
|
8
|
-
try {
|
|
9
|
-
const child = spawn(process.execPath, [realpathSync(process.argv[1] ?? ""), ...argv], {
|
|
10
|
-
detached: true,
|
|
11
|
-
stdio: ["ignore", out, out],
|
|
12
|
-
env,
|
|
13
|
-
});
|
|
14
|
-
child.unref();
|
|
15
|
-
return child.pid ?? 0;
|
|
16
|
-
}
|
|
17
|
-
finally {
|
|
18
|
-
closeSync(out);
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
export const jobsDir = (app, env) => join(resolvePaths({ appName: app.appName, prefix: app.envPrefix, env }).state, "backfill");
|
|
22
|
-
const jobPath = (dir, id) => join(dir, `${id}.json`);
|
|
23
|
-
export const saveJob = (dir, job) => {
|
|
24
|
-
mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
25
|
-
writeSecurely(jobPath(dir, job.id), `${JSON.stringify(job, null, 2)}\n`, 0o600);
|
|
26
|
-
};
|
|
27
|
-
export const readJob = (dir, id) => {
|
|
28
|
-
if (!/^[\w-]+$/.test(id) || !existsSync(jobPath(dir, id)))
|
|
29
|
-
return undefined;
|
|
30
|
-
try {
|
|
31
|
-
return JSON.parse(readFileSync(jobPath(dir, id), "utf8"));
|
|
32
|
-
}
|
|
33
|
-
catch {
|
|
34
|
-
return undefined;
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
export const updateJob = (dir, id, change) => {
|
|
38
|
-
const job = readJob(dir, id);
|
|
39
|
-
if (job)
|
|
40
|
-
saveJob(dir, { ...job, ...change });
|
|
41
|
-
};
|
|
42
|
-
/** Newest first. */
|
|
43
|
-
export const listJobs = (dir) => existsSync(dir)
|
|
44
|
-
? readdirSync(dir)
|
|
45
|
-
.filter((name) => name.endsWith(".json"))
|
|
46
|
-
.flatMap((name) => readJob(dir, name.slice(0, -".json".length)) ?? [])
|
|
47
|
-
.sort((a, b) => b.startedAt.localeCompare(a.startedAt))
|
|
48
|
-
: [];
|
|
49
|
-
/** A job that is gone without saying how it ended was killed, or crashed before it could — its log says which. */
|
|
50
|
-
export const stateOf = (job) => {
|
|
51
|
-
if (job.finishedAt !== undefined) {
|
|
52
|
-
if (job.cancelRequestedAt)
|
|
53
|
-
return "cancelled";
|
|
54
|
-
return job.error ? "failed" : "done";
|
|
55
|
-
}
|
|
56
|
-
if (isJob(job))
|
|
57
|
-
return "running";
|
|
58
|
-
return job.cancelRequestedAt ? "cancelled" : "died";
|
|
59
|
-
};
|
|
60
|
-
/** Whether the recorded PID is still this job — its environment names it (`<PREFIX>_BACKFILL_JOB`). */
|
|
61
|
-
export const isJob = (job) => carries(job.pid, `_BACKFILL_JOB=${job.id}`);
|
|
1
|
+
export { isJob, jobsDir, listJobs, readJob, saveJob, spawnDetached, stateOf, updateJob, } from "../../services/backfill-jobs.js";
|
|
62
2
|
//# sourceMappingURL=backfill-jobs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backfill-jobs.js","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-jobs.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"backfill-jobs.js","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-jobs.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAGL,OAAO,EACP,QAAQ,EACR,OAAO,EAEP,OAAO,EACP,aAAa,EACb,OAAO,EACP,SAAS,GACV,MAAM,iCAAiC,CAAA"}
|
|
@@ -20,6 +20,7 @@ export interface ConnectOptions {
|
|
|
20
20
|
events?: EventSink;
|
|
21
21
|
}
|
|
22
22
|
export interface Fetching {
|
|
23
|
+
beforeInclusive?: boolean;
|
|
23
24
|
/** Messages per history request. */
|
|
24
25
|
page: number;
|
|
25
26
|
/** The most one history request returns, where the messenger is known to cap it; a larger `--page-size` is refused. */
|
|
@@ -80,6 +81,8 @@ export interface Messenger {
|
|
|
80
81
|
* `serve` keeps filled, and never connect; writes still do. `server` when unset.
|
|
81
82
|
*/
|
|
82
83
|
history?: "server" | "store";
|
|
84
|
+
/** Whether the messenger computes a chat's statistics for its admins — `stats chats official`; no when unset. */
|
|
85
|
+
officialStats?: boolean;
|
|
83
86
|
/** Whether this CLI's background service fetches tracked rosters daily; true when unset. */
|
|
84
87
|
tracksMembers?: boolean;
|
|
85
88
|
/** Speech model ids, most suitable first, for `messages transcribe --local`; the first is the default. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAE3F,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAGL,KAAK,aAAa,EAEnB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAW,KAAK,QAAQ,EAAoB,KAAK,QAAQ,EAAe,MAAM,yBAAyB,CAAA;AAC9G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAa,MAAM,sBAAsB,CAAA;AACxG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,KAAK,WAAW,EAA8B,MAAM,eAAe,CAAA;AAC5E,OAAO,EAAuB,KAAK,eAAe,EAAyB,MAAM,uBAAuB,CAAA;AACxG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAK3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAGjD,kGAAkG;AAClG,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,yFAAyF;IACzF,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,kGAAkG;IAClG,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,uHAAuH;IACvH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAA;IACb,+FAA+F;IAC/F,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,0FAA0F;IAC1F,QAAQ,EAAE,MAAM,CAAA;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;CACxB;AAED,wGAAwG;AACxG,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,WAAW,CAAA;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,oGAAoG;IACpG,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,QAAQ,CAAA;IAC3E;;;OAGG;IACH,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACxG,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAA;IACpB,kGAAkG;IAClG,aAAa,CAAC,EAAE,SAAS,CAAC,MAAM,aAAa,CAAC,EAAE,CAAA;IAChD,8GAA8G;IAC9G,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sHAAsH;IACtH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,oGAAoG;IACpG,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,CAAA;IACnC,wEAAwE;IACxE,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,EAAE,CAAA;IACzC,sGAAsG;IACtG,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,EAAE,GAAG,SAAS,CAAA;IAC1C;;;OAGG;IACH,kBAAkB,CAAC,EAAE,aAAa,CAAA;IAClC,iGAAiG;IACjG,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;IAC5B,4FAA4F;IAC5F,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,0GAA0G;IAC1G,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAChC,yGAAyG;IACzG,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,KAAK,SAAS,CAAA;IAC5F,mGAAmG;IACnG,aAAa,CAAC,EAAE,eAAe,CAAA;IAC/B,mFAAmF;IACnF,KAAK,CAAC,EAAE,GAAG,CAAA;IACX,mGAAmG;IACnG,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CACxF;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;AAE/F,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAC,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;IAClD,8DAA8D;IAC9D,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,iHAAiH;IACjH,KAAK,EAAE,SAAS,CAAA;IAChB;;;OAGG;IACH,aAAa,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IAC7G,sGAAsG;IACtG,SAAS,EAAE,CAAC,CAAC,EACX,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,EAC9D,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KACxB,OAAO,CAAC,CAAC,CAAC,CAAA;IACf,qGAAqG;IACrG,YAAY,EAAE,CAAC,CAAC,EACd,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,EAClE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KACxB,OAAO,CAAC,CAAC,CAAC,CAAA;CAChB;AAmBD;;;;GAIG;AACH,eAAO,MAAM,SAAS,eACR,gBAAgB,+CACiB,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,UAAU,GAAG,MAAM,GAAG,oBAAoB,CAAC,+BACnF,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC,UACvE,SAAS,KAChB;IAAE,OAAO,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAqCzD,CAAA;AAoDD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,YAAa,gBAAgB,WAAW,MAAM,cAAc,aAAa,KAAG,IAWxG,CAAA;AAED,eAAO,MAAM,gBAAgB,YAAa,OAAO,aAAa,SAAS,KAAG,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -178,6 +178,7 @@ export const messengerContext = (command, messenger) => {
|
|
|
178
178
|
reads: messenger.history ?? "server",
|
|
179
179
|
// Turning recording off by name (--no-record, or record: false) keeps no search history either.
|
|
180
180
|
history: base.settings.keepFailedRuns,
|
|
181
|
+
searchCatchUp: base.settings.searchCatchUp,
|
|
181
182
|
guard,
|
|
182
183
|
connection: async () => {
|
|
183
184
|
if (base.settings.offline)
|
|
@@ -186,6 +187,10 @@ export const messengerContext = (command, messenger) => {
|
|
|
186
187
|
throw new CliError("validation_error", "the read connection has already been released");
|
|
187
188
|
if (!held) {
|
|
188
189
|
const connection = await messenger.connect(command, base, { events });
|
|
190
|
+
if (released) {
|
|
191
|
+
await connection.close();
|
|
192
|
+
throw new CliError("validation_error", "the read connection has already been released");
|
|
193
|
+
}
|
|
189
194
|
base.track(connection);
|
|
190
195
|
held = connected(connection, messenger, base, events);
|
|
191
196
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/cli/messenger/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAE1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAkB,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EACL,6BAA6B,EAC7B,QAAQ,EAER,kBAAkB,GACnB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,OAAO,EAAkD,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAE9G,OAAO,EAA0D,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAExG,OAAO,EAAoB,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAGxG,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/cli/messenger/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +1,6 @@
|
|
|
1
1
|
import type { Command } from "commander";
|
|
2
|
-
|
|
3
|
-
import type { MessagesService } from "../../services/messages.js";
|
|
2
|
+
export { downloadMessage, type Saved, safeName, save } from "../../services/file-download.js";
|
|
4
3
|
import { type Messenger } from "./context.js";
|
|
5
|
-
import type { RemoteFile } from "./port.js";
|
|
6
|
-
export interface Saved {
|
|
7
|
-
kind: string;
|
|
8
|
-
path: string;
|
|
9
|
-
bytes: number;
|
|
10
|
-
/** Only with `--all`: the file was already there from an earlier run, and was left as it was. */
|
|
11
|
-
existing?: true;
|
|
12
|
-
}
|
|
13
4
|
/** `messages download`: every file of one message, or with `--all` of a whole chat, never over a file already there. */
|
|
14
5
|
export declare const downloadSubcommand: (messages: Command, messenger: Messenger) => Command;
|
|
15
|
-
/**
|
|
16
|
-
* Every file of one message, as `--all` saves them — a taken name gets the message's prefix, never
|
|
17
|
-
* overwrites — and where they went recorded in the store. For `attachments extract --download`.
|
|
18
|
-
*/
|
|
19
|
-
export declare const downloadMessage: (messages: Pick<MessagesService, "download" | "keepDownloaded">, chat: string, message: Id, output: string, warn: (message: string) => void) => Promise<Saved[]>;
|
|
20
|
-
/**
|
|
21
|
-
* A name another person chose cannot climb out of the folder, cannot be a dot file we would then
|
|
22
|
-
* hide, and carries no control or direction character to rewrite the terminal or disguise its extension.
|
|
23
|
-
*/
|
|
24
|
-
export declare const safeName: (name: string | undefined) => string | undefined;
|
|
25
|
-
/**
|
|
26
|
-
* The bytes go to a temporary name first and are then hard-linked to the real one, which fails if the
|
|
27
|
-
* name is taken — so an existing file survives, and an interrupted download leaves no half file under
|
|
28
|
-
* the name somebody will open.
|
|
29
|
-
*
|
|
30
|
-
* `unique` is for a whole chat, where two messages often carry the same file name: a taken name gets the
|
|
31
|
-
* message's own prefix, and when that is taken too the file was saved by an earlier run and is `existing`.
|
|
32
|
-
*/
|
|
33
|
-
export declare const save: (file: RemoteFile, directory: string, fallbackName: string, { unique }?: {
|
|
34
|
-
unique?: boolean;
|
|
35
|
-
}) => Promise<Saved>;
|
|
36
6
|
//# sourceMappingURL=download-command.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/download-command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"download-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/download-command.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMxC,OAAO,EAAE,eAAe,EAAE,KAAK,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAA;AAM7F,OAAO,EAAiB,KAAK,SAAS,EAA6D,MAAM,cAAc,CAAA;AAGvH,wHAAwH;AACxH,eAAO,MAAM,kBAAkB,aAAc,OAAO,aAAa,SAAS,KAAG,OAmDvE,CAAA"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { basename, join, resolve } from "node:path";
|
|
4
|
-
import { Readable, Transform } from "node:stream";
|
|
5
|
-
import { pipeline } from "node:stream/promises";
|
|
1
|
+
import { existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
6
3
|
import { setTimeout as sleep } from "node:timers/promises";
|
|
7
4
|
import { CliError } from "@leemour/cli-core";
|
|
8
5
|
import { NOT_FILES } from "../../domain/attachments.js";
|
|
9
6
|
import { FETCHING, keyOf } from "../../services/archive.js";
|
|
7
|
+
import { recordPaths, save } from "../../services/file-download.js";
|
|
8
|
+
export { downloadMessage, safeName, save } from "../../services/file-download.js";
|
|
10
9
|
import { OFFLINE } from "../../services/deps.js";
|
|
11
10
|
import { patiently } from "../../services/patience.js";
|
|
12
11
|
import { parseDuration } from "../settings.js";
|
|
13
|
-
import { messengerContext } from "./context.js";
|
|
12
|
+
import { messengerContext, refuseLocalWrite } from "./context.js";
|
|
14
13
|
import { stopOnSignal } from "./patience.js";
|
|
15
14
|
/** `messages download`: every file of one message, or with `--all` of a whole chat, never over a file already there. */
|
|
16
15
|
export const downloadSubcommand = (messages, messenger) => messages
|
|
@@ -21,20 +20,23 @@ export const downloadSubcommand = (messages, messenger) => messages
|
|
|
21
20
|
.option("--output-dir <dir>", "where to save them; created if missing", ".")
|
|
22
21
|
.option("--all", "every file of the chat, newest first; run it again to continue where it stopped")
|
|
23
22
|
.option("--pause <duration>", "with --all, a pause between pages, to stay under the provider's limits", messenger.fetching?.pause ?? FETCHING.pause)
|
|
23
|
+
.option("--extract", "read text layers from the files this download maps into the local content index")
|
|
24
24
|
.action(async function (chat, messageId) {
|
|
25
25
|
const context = messengerContext(this, messenger);
|
|
26
|
-
const { outputDir: output, all, pause } = this.opts();
|
|
26
|
+
const { outputDir: output, all, pause, extract, } = this.opts();
|
|
27
|
+
if (extract)
|
|
28
|
+
refuseLocalWrite(context, messenger.app.command, "attachments.extract");
|
|
27
29
|
if (all && messageId !== undefined) {
|
|
28
30
|
throw new CliError("validation_error", "--all saves the whole chat; leave out the message id");
|
|
29
31
|
}
|
|
30
32
|
if (all) {
|
|
31
|
-
await downloadChat(this, context, messenger, chat, output, parseDuration(pause, "--pause"));
|
|
33
|
+
await downloadChat(this, context, messenger, chat, output, parseDuration(pause, "--pause"), extract);
|
|
32
34
|
return;
|
|
33
35
|
}
|
|
34
36
|
if (messageId === undefined)
|
|
35
37
|
throw new CliError("validation_error", "name a message id, or use --all");
|
|
36
38
|
const id = messageId.trim();
|
|
37
|
-
const
|
|
39
|
+
const result = await context.withServices(async (services) => {
|
|
38
40
|
const { files, skipped } = await services.messages.download(chat, id);
|
|
39
41
|
if (skipped.length > 0)
|
|
40
42
|
context.renderer.note(`not a file, not downloaded: ${skipped.join(", ")}`);
|
|
@@ -45,47 +47,21 @@ export const downloadSubcommand = (messages, messenger) => messages
|
|
|
45
47
|
for (const [index, file] of files.entries())
|
|
46
48
|
done.push(await save(file, output, `${id}-${index + 1}`));
|
|
47
49
|
await recordPaths(services.messages, chat, id, files, done, context.renderer.warn);
|
|
48
|
-
|
|
50
|
+
const extraction = extract
|
|
51
|
+
? await services.attachments.extract({ chat, message: id, paths: done.map((file) => file.path) })
|
|
52
|
+
: undefined;
|
|
53
|
+
return { saved: done, extraction };
|
|
49
54
|
});
|
|
55
|
+
const { saved, extraction } = result;
|
|
56
|
+
if (extraction && context.format !== "json")
|
|
57
|
+
context.renderer.note(`${extraction.extracted} extracted, ${extraction.failed} unreadable`);
|
|
50
58
|
if (context.format === "pretty")
|
|
51
59
|
context.streams.data(`${saved.map((one) => one.path).join("\n")}\n`);
|
|
52
60
|
else if (context.format === "jsonl")
|
|
53
61
|
context.renderer.stream(saved);
|
|
54
62
|
else
|
|
55
|
-
context.renderer.result({ items: saved });
|
|
63
|
+
context.renderer.result({ items: saved, ...(extraction ? { extraction } : {}) });
|
|
56
64
|
});
|
|
57
|
-
/**
|
|
58
|
-
* The files are saved whatever happens here: a store that cannot take the paths costs only the later
|
|
59
|
-
* `attachments extract`, so it warns and never fails the download.
|
|
60
|
-
*/
|
|
61
|
-
const recordPaths = async (messages, chat, message, files, saved, warn) => {
|
|
62
|
-
const downloaded = saved.map((one, index) => ({
|
|
63
|
-
kind: one.kind,
|
|
64
|
-
path: one.path,
|
|
65
|
-
...(files[index]?.name === undefined ? {} : { name: files[index]?.name }),
|
|
66
|
-
...(files[index]?.position === undefined ? {} : { position: files[index]?.position }),
|
|
67
|
-
}));
|
|
68
|
-
try {
|
|
69
|
-
return await messages.keepDownloaded(chat, message, downloaded);
|
|
70
|
-
}
|
|
71
|
-
catch (error) {
|
|
72
|
-
warn(`not recorded in the local store where message ${message}'s files went: ${error.message}`);
|
|
73
|
-
return 0;
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
/**
|
|
77
|
-
* Every file of one message, as `--all` saves them — a taken name gets the message's prefix, never
|
|
78
|
-
* overwrites — and where they went recorded in the store. For `attachments extract --download`.
|
|
79
|
-
*/
|
|
80
|
-
export const downloadMessage = async (messages, chat, message, output, warn) => {
|
|
81
|
-
const { files } = await messages.download(chat, message);
|
|
82
|
-
mkdirSync(output, { recursive: true });
|
|
83
|
-
const done = [];
|
|
84
|
-
for (const [index, file] of files.entries())
|
|
85
|
-
done.push(await save(file, output, `${message}-${index + 1}`, { unique: true }));
|
|
86
|
-
await recordPaths(messages, chat, message, files, done, warn);
|
|
87
|
-
return done;
|
|
88
|
-
};
|
|
89
65
|
/** The most messages a provider hands out per history request — Telegram's cap. */
|
|
90
66
|
const PAGE = 100;
|
|
91
67
|
/**
|
|
@@ -109,10 +85,11 @@ const writeProgress = (path, chatId, progress) => {
|
|
|
109
85
|
writeFileSync(`${path}.tmp`, `${JSON.stringify({ chat: chatId, ...progress })}\n`, { mode: 0o600 });
|
|
110
86
|
renameSync(`${path}.tmp`, path);
|
|
111
87
|
};
|
|
112
|
-
const downloadChat = async (command, context, messenger, chat, output, pauseMs) => {
|
|
88
|
+
const downloadChat = async (command, context, messenger, chat, output, pauseMs, extract = false) => {
|
|
113
89
|
if (context.settings.offline)
|
|
114
90
|
throw new CliError("validation_error", OFFLINE);
|
|
115
91
|
const items = [];
|
|
92
|
+
const extraction = { extracted: 0, failed: 0, needsAgent: 0, complete: true };
|
|
116
93
|
const onSaved = (one) => {
|
|
117
94
|
if (context.format === "pretty")
|
|
118
95
|
context.streams.data(`${one.path}\n`);
|
|
@@ -133,11 +110,31 @@ const downloadChat = async (command, context, messenger, chat, output, pauseMs)
|
|
|
133
110
|
note: context.renderer.note,
|
|
134
111
|
warn: context.renderer.warn,
|
|
135
112
|
onSaved,
|
|
113
|
+
...(extract
|
|
114
|
+
? {
|
|
115
|
+
onDownloaded: async (id, paths) => {
|
|
116
|
+
try {
|
|
117
|
+
const run = await services.attachments.extract({ chat, message: id, paths, signal: stop.signal });
|
|
118
|
+
extraction.extracted += run.extracted;
|
|
119
|
+
extraction.failed += run.failed;
|
|
120
|
+
extraction.needsAgent += run.needsAgent;
|
|
121
|
+
extraction.complete &&= run.complete;
|
|
122
|
+
}
|
|
123
|
+
catch {
|
|
124
|
+
extraction.failed += 1;
|
|
125
|
+
extraction.complete = false;
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
}
|
|
129
|
+
: {}),
|
|
136
130
|
}));
|
|
137
131
|
if (context.format === "json")
|
|
138
|
-
context.renderer.result({ items, ...result });
|
|
139
|
-
else
|
|
132
|
+
context.renderer.result({ items, ...result, ...(extract ? { extraction } : {}) });
|
|
133
|
+
else {
|
|
140
134
|
context.renderer.note(summary(result));
|
|
135
|
+
if (extract)
|
|
136
|
+
context.renderer.note(`${extraction.extracted} extracted, ${extraction.failed} unreadable`);
|
|
137
|
+
}
|
|
141
138
|
}
|
|
142
139
|
finally {
|
|
143
140
|
stop.release();
|
|
@@ -168,7 +165,7 @@ const joined = (a, b) => {
|
|
|
168
165
|
* a page is asked for up to and including the oldest moment seen, so none sent then is skipped, and
|
|
169
166
|
* what this run already walked is passed over. A stretch's ends hold only the messages it names.
|
|
170
167
|
*/
|
|
171
|
-
const walkChat = async (messages, chat, { output, pauseMs, fetching, fromStore, stop, note, warn, onSaved }) => {
|
|
168
|
+
const walkChat = async (messages, chat, { output, pauseMs, fetching, fromStore, stop, note, warn, onSaved, onDownloaded }) => {
|
|
172
169
|
const by = fetching.orderBy ?? "id";
|
|
173
170
|
const keyed = keyOf(fetching);
|
|
174
171
|
const pagesByTime = by === "time" && !fromStore;
|
|
@@ -244,6 +241,7 @@ const walkChat = async (messages, chat, { output, pauseMs, fetching, fromStore,
|
|
|
244
241
|
onSaved(one);
|
|
245
242
|
}
|
|
246
243
|
await recordPaths(messages, message.chatId, message.id, files, done, warn);
|
|
244
|
+
await onDownloaded?.(message.id, done.map((file) => file.path));
|
|
247
245
|
run = run ? joined(run, point(key, message.id)) : point(key, message.id);
|
|
248
246
|
remember();
|
|
249
247
|
}
|
|
@@ -271,76 +269,4 @@ const walkChat = async (messages, chat, { output, pauseMs, fetching, fromStore,
|
|
|
271
269
|
remember();
|
|
272
270
|
return { chat: chatId ?? null, saved, existing, complete, ...(stop.aborted ? { stopped: true } : {}) };
|
|
273
271
|
};
|
|
274
|
-
const EXTENSIONS = {
|
|
275
|
-
"image/jpeg": "jpg",
|
|
276
|
-
"image/png": "png",
|
|
277
|
-
"image/webp": "webp",
|
|
278
|
-
"image/gif": "gif",
|
|
279
|
-
"video/mp4": "mp4",
|
|
280
|
-
"video/webm": "webm",
|
|
281
|
-
"audio/mpeg": "mp3",
|
|
282
|
-
"audio/ogg": "ogg",
|
|
283
|
-
"audio/mp4": "m4a",
|
|
284
|
-
"application/pdf": "pdf",
|
|
285
|
-
};
|
|
286
|
-
/** Telegram sends a photo with no name and no type; it is always a JPEG. */
|
|
287
|
-
const BY_KIND = { photo: "jpg" };
|
|
288
|
-
/**
|
|
289
|
-
* A name another person chose cannot climb out of the folder, cannot be a dot file we would then
|
|
290
|
-
* hide, and carries no control or direction character to rewrite the terminal or disguise its extension.
|
|
291
|
-
*/
|
|
292
|
-
export const safeName = (name) => {
|
|
293
|
-
const plain = name === undefined
|
|
294
|
-
? ""
|
|
295
|
-
: basename(name.replaceAll("\\", "/"))
|
|
296
|
-
.replace(/[\p{Cc}---]/gu, "")
|
|
297
|
-
.replace(/^\.+/, "");
|
|
298
|
-
return plain === "" ? undefined : plain;
|
|
299
|
-
};
|
|
300
|
-
/**
|
|
301
|
-
* The bytes go to a temporary name first and are then hard-linked to the real one, which fails if the
|
|
302
|
-
* name is taken — so an existing file survives, and an interrupted download leaves no half file under
|
|
303
|
-
* the name somebody will open.
|
|
304
|
-
*
|
|
305
|
-
* `unique` is for a whole chat, where two messages often carry the same file name: a taken name gets the
|
|
306
|
-
* message's own prefix, and when that is taken too the file was saved by an earlier run and is `existing`.
|
|
307
|
-
*/
|
|
308
|
-
export const save = async (file, directory, fallbackName, { unique = false } = {}) => {
|
|
309
|
-
const own = safeName(file.name);
|
|
310
|
-
const fileName = () => {
|
|
311
|
-
const extension = EXTENSIONS[file.mime ?? ""] ?? BY_KIND[file.kind];
|
|
312
|
-
return own ?? (extension ? `${fallbackName}.${extension}` : fallbackName);
|
|
313
|
-
};
|
|
314
|
-
const partial = join(directory, `.${fileName()}.${process.pid}.part`);
|
|
315
|
-
let bytes = 0;
|
|
316
|
-
const counting = new Transform({
|
|
317
|
-
transform(chunk, _encoding, done) {
|
|
318
|
-
bytes += chunk.length;
|
|
319
|
-
done(null, chunk);
|
|
320
|
-
},
|
|
321
|
-
});
|
|
322
|
-
try {
|
|
323
|
-
await pipeline(Readable.from(file.bytes()), counting, createWriteStream(partial, { flags: "wx", mode: 0o600 }));
|
|
324
|
-
// Lazy HTTP downloads learn MIME while reading bytes.
|
|
325
|
-
const name = fileName();
|
|
326
|
-
const names = unique && own ? [name, `${fallbackName}-${own}`] : [name];
|
|
327
|
-
for (const candidate of names) {
|
|
328
|
-
const path = resolve(join(directory, candidate));
|
|
329
|
-
const taken = await link(partial, path).then(() => false, (error) => {
|
|
330
|
-
if (error.code === "EEXIST")
|
|
331
|
-
return true;
|
|
332
|
-
throw error;
|
|
333
|
-
});
|
|
334
|
-
if (!taken)
|
|
335
|
-
return { kind: file.kind, path, bytes };
|
|
336
|
-
}
|
|
337
|
-
const path = resolve(join(directory, names.at(-1) ?? name));
|
|
338
|
-
if (unique)
|
|
339
|
-
return { kind: file.kind, path, bytes, existing: true };
|
|
340
|
-
throw new CliError("validation_error", `${path} already exists — nothing was overwritten; choose --output-dir`);
|
|
341
|
-
}
|
|
342
|
-
finally {
|
|
343
|
-
await rm(partial, { force: true });
|
|
344
|
-
}
|
|
345
|
-
};
|
|
346
272
|
//# sourceMappingURL=download-command.js.map
|