@will-17173/telegram-cli 0.2.0 → 0.4.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.
Files changed (197) hide show
  1. package/README.md +241 -61
  2. package/README.zh-CN.md +250 -73
  3. package/dist/account/account-authenticator.js +95 -0
  4. package/dist/account/account-authenticator.js.map +1 -0
  5. package/dist/account/account-context.js +7 -0
  6. package/dist/account/account-context.js.map +1 -1
  7. package/dist/account/account-name.js +17 -0
  8. package/dist/account/account-name.js.map +1 -0
  9. package/dist/account/account-presets.js +20 -3
  10. package/dist/account/account-presets.js.map +1 -1
  11. package/dist/account/account-store.js +277 -37
  12. package/dist/account/account-store.js.map +1 -1
  13. package/dist/cli/app.js +12 -1
  14. package/dist/cli/app.js.map +1 -1
  15. package/dist/cli/output.js +21 -6
  16. package/dist/cli/output.js.map +1 -1
  17. package/dist/cli/secure-input.js +408 -0
  18. package/dist/cli/secure-input.js.map +1 -0
  19. package/dist/commands/account-options.js +37 -7
  20. package/dist/commands/account-options.js.map +1 -1
  21. package/dist/commands/account.js +192 -66
  22. package/dist/commands/account.js.map +1 -1
  23. package/dist/commands/archive.js +151 -0
  24. package/dist/commands/archive.js.map +1 -0
  25. package/dist/commands/config.js +119 -12
  26. package/dist/commands/config.js.map +1 -1
  27. package/dist/commands/contact.js +58 -0
  28. package/dist/commands/contact.js.map +1 -0
  29. package/dist/commands/data.js +14 -7
  30. package/dist/commands/data.js.map +1 -1
  31. package/dist/commands/dialog.js +156 -0
  32. package/dist/commands/dialog.js.map +1 -0
  33. package/dist/commands/folder.js +113 -0
  34. package/dist/commands/folder.js.map +1 -0
  35. package/dist/commands/group-write.js +128 -0
  36. package/dist/commands/group-write.js.map +1 -0
  37. package/dist/commands/group.js +43 -7
  38. package/dist/commands/group.js.map +1 -1
  39. package/dist/commands/notification.js +76 -0
  40. package/dist/commands/notification.js.map +1 -0
  41. package/dist/commands/query.js +22 -15
  42. package/dist/commands/query.js.map +1 -1
  43. package/dist/commands/telegram-runner.js +40 -18
  44. package/dist/commands/telegram-runner.js.map +1 -1
  45. package/dist/commands/telegram.js +172 -109
  46. package/dist/commands/telegram.js.map +1 -1
  47. package/dist/commands/time-range.js +39 -0
  48. package/dist/commands/time-range.js.map +1 -0
  49. package/dist/commands/types.js +3 -2
  50. package/dist/commands/types.js.map +1 -1
  51. package/dist/config/credential-store.js +24 -4
  52. package/dist/config/credential-store.js.map +1 -1
  53. package/dist/config/env.js +4 -1
  54. package/dist/config/env.js.map +1 -1
  55. package/dist/group-commands/catalog.js +79 -0
  56. package/dist/group-commands/catalog.js.map +1 -0
  57. package/dist/group-commands/executor.js +102 -0
  58. package/dist/group-commands/executor.js.map +1 -0
  59. package/dist/group-commands/parser.js +268 -0
  60. package/dist/group-commands/parser.js.map +1 -0
  61. package/dist/group-commands/tokenize.js +51 -0
  62. package/dist/group-commands/tokenize.js.map +1 -0
  63. package/dist/group-commands/types.js +2 -0
  64. package/dist/group-commands/types.js.map +1 -0
  65. package/dist/index.js +0 -0
  66. package/dist/listen-commands/catalog.js +61 -0
  67. package/dist/listen-commands/catalog.js.map +1 -0
  68. package/dist/listen-commands/dispatch.js +46 -0
  69. package/dist/listen-commands/dispatch.js.map +1 -0
  70. package/dist/listen-commands/match.js +113 -0
  71. package/dist/listen-commands/match.js.map +1 -0
  72. package/dist/presenters/group.js +40 -0
  73. package/dist/presenters/group.js.map +1 -1
  74. package/dist/presenters/human.js +135 -0
  75. package/dist/presenters/human.js.map +1 -1
  76. package/dist/presenters/ink/display-width.js +45 -7
  77. package/dist/presenters/ink/display-width.js.map +1 -1
  78. package/dist/presenters/ink/group-command-confirm.js +13 -0
  79. package/dist/presenters/ink/group-command-confirm.js.map +1 -0
  80. package/dist/presenters/ink/group-command-result.js +23 -0
  81. package/dist/presenters/ink/group-command-result.js.map +1 -0
  82. package/dist/presenters/ink/listen-command-menu.js +38 -0
  83. package/dist/presenters/ink/listen-command-menu.js.map +1 -0
  84. package/dist/presenters/ink/listen-scroll.js +9 -4
  85. package/dist/presenters/ink/listen-scroll.js.map +1 -1
  86. package/dist/presenters/ink/listen.js +572 -52
  87. package/dist/presenters/ink/listen.js.map +1 -1
  88. package/dist/presenters/ink/mouse-scroll.js +12 -0
  89. package/dist/presenters/ink/mouse-scroll.js.map +1 -1
  90. package/dist/presenters/ink/secure-input.js +68 -0
  91. package/dist/presenters/ink/secure-input.js.map +1 -0
  92. package/dist/presenters/ink/use-group-command.js +186 -0
  93. package/dist/presenters/ink/use-group-command.js.map +1 -0
  94. package/dist/presenters/listen-message.js +23 -6
  95. package/dist/presenters/listen-message.js.map +1 -1
  96. package/dist/presenters/logical-message.js +78 -0
  97. package/dist/presenters/logical-message.js.map +1 -0
  98. package/dist/presenters/markdown.js +54 -0
  99. package/dist/presenters/markdown.js.map +1 -0
  100. package/dist/presenters/structured.js +8 -3
  101. package/dist/presenters/structured.js.map +1 -1
  102. package/dist/services/account-session-service.js +241 -0
  103. package/dist/services/account-session-service.js.map +1 -0
  104. package/dist/services/archive-layout.js +61 -0
  105. package/dist/services/archive-layout.js.map +1 -0
  106. package/dist/services/archive-manifest.js +187 -0
  107. package/dist/services/archive-manifest.js.map +1 -0
  108. package/dist/services/archive-markdown.js +383 -0
  109. package/dist/services/archive-markdown.js.map +1 -0
  110. package/dist/services/archive-service.js +718 -0
  111. package/dist/services/archive-service.js.map +1 -0
  112. package/dist/services/archive-types.js +2 -0
  113. package/dist/services/archive-types.js.map +1 -0
  114. package/dist/services/attachment-download.js +7 -2
  115. package/dist/services/attachment-download.js.map +1 -1
  116. package/dist/services/auto-download-coordinator.js +2 -4
  117. package/dist/services/auto-download-coordinator.js.map +1 -1
  118. package/dist/services/contact-service.js +78 -0
  119. package/dist/services/contact-service.js.map +1 -0
  120. package/dist/services/dialog-service.js +140 -0
  121. package/dist/services/dialog-service.js.map +1 -0
  122. package/dist/services/folder-service.js +200 -0
  123. package/dist/services/folder-service.js.map +1 -0
  124. package/dist/services/group-service.js.map +1 -1
  125. package/dist/services/group-write-service.js +225 -0
  126. package/dist/services/group-write-service.js.map +1 -0
  127. package/dist/services/listen-album-aggregator.js +9 -29
  128. package/dist/services/listen-album-aggregator.js.map +1 -1
  129. package/dist/services/listen-attachment.js +23 -6
  130. package/dist/services/listen-attachment.js.map +1 -1
  131. package/dist/services/listen-composer-command.js +102 -0
  132. package/dist/services/listen-composer-command.js.map +1 -0
  133. package/dist/services/listen-reply-resolver.js +126 -0
  134. package/dist/services/listen-reply-resolver.js.map +1 -0
  135. package/dist/services/message-service.js +17 -1
  136. package/dist/services/message-service.js.map +1 -1
  137. package/dist/services/notification-service.js +142 -0
  138. package/dist/services/notification-service.js.map +1 -0
  139. package/dist/services/query-service.js +59 -3
  140. package/dist/services/query-service.js.map +1 -1
  141. package/dist/services/reply-context.js +29 -0
  142. package/dist/services/reply-context.js.map +1 -0
  143. package/dist/services/write-access-policy.js +19 -0
  144. package/dist/services/write-access-policy.js.map +1 -0
  145. package/dist/storage/message-db.js +241 -5
  146. package/dist/storage/message-db.js.map +1 -1
  147. package/dist/telegram/archive-types.js +2 -0
  148. package/dist/telegram/archive-types.js.map +1 -0
  149. package/dist/telegram/client-factory.js +51 -11
  150. package/dist/telegram/client-factory.js.map +1 -1
  151. package/dist/telegram/contact-types.js +10 -0
  152. package/dist/telegram/contact-types.js.map +1 -0
  153. package/dist/telegram/dialog-types.js +2 -0
  154. package/dist/telegram/dialog-types.js.map +1 -0
  155. package/dist/telegram/errors.js +14 -0
  156. package/dist/telegram/errors.js.map +1 -0
  157. package/dist/telegram/fake-group-management.js +122 -0
  158. package/dist/telegram/fake-group-management.js.map +1 -1
  159. package/dist/telegram/folder-types.js +13 -0
  160. package/dist/telegram/folder-types.js.map +1 -0
  161. package/dist/telegram/group-types.js +40 -0
  162. package/dist/telegram/group-types.js.map +1 -1
  163. package/dist/telegram/group-write-types.js +29 -0
  164. package/dist/telegram/group-write-types.js.map +1 -0
  165. package/dist/telegram/mtcute-archive.js +190 -0
  166. package/dist/telegram/mtcute-archive.js.map +1 -0
  167. package/dist/telegram/mtcute-client.js +73 -12
  168. package/dist/telegram/mtcute-client.js.map +1 -1
  169. package/dist/telegram/mtcute-contacts.js +90 -0
  170. package/dist/telegram/mtcute-contacts.js.map +1 -0
  171. package/dist/telegram/mtcute-dialogs.js +186 -0
  172. package/dist/telegram/mtcute-dialogs.js.map +1 -0
  173. package/dist/telegram/mtcute-folders.js +318 -0
  174. package/dist/telegram/mtcute-folders.js.map +1 -0
  175. package/dist/telegram/mtcute-group-helpers.js +56 -0
  176. package/dist/telegram/mtcute-group-helpers.js.map +1 -0
  177. package/dist/telegram/mtcute-group-invites.js +82 -0
  178. package/dist/telegram/mtcute-group-invites.js.map +1 -0
  179. package/dist/telegram/mtcute-group-management.js +60 -31
  180. package/dist/telegram/mtcute-group-management.js.map +1 -1
  181. package/dist/telegram/mtcute-group-members.js +158 -0
  182. package/dist/telegram/mtcute-group-members.js.map +1 -0
  183. package/dist/telegram/mtcute-group-settings.js +146 -0
  184. package/dist/telegram/mtcute-group-settings.js.map +1 -0
  185. package/dist/telegram/mtcute-group-topics.js +63 -0
  186. package/dist/telegram/mtcute-group-topics.js.map +1 -0
  187. package/dist/telegram/mtcute-message-normalizer.js +63 -0
  188. package/dist/telegram/mtcute-message-normalizer.js.map +1 -0
  189. package/dist/telegram/mtcute-notifications.js +101 -0
  190. package/dist/telegram/mtcute-notifications.js.map +1 -0
  191. package/dist/telegram/notification-types.js +11 -0
  192. package/dist/telegram/notification-types.js.map +1 -0
  193. package/dist/telegram/raw-message.js +46 -0
  194. package/dist/telegram/raw-message.js.map +1 -0
  195. package/dist/telegram/types.js +6 -1
  196. package/dist/telegram/types.js.map +1 -1
  197. package/package.json +20 -10
@@ -1 +1 @@
1
- {"version":3,"file":"listen.js","sourceRoot":"","sources":["../../../src/presenters/ink/listen.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listen.js","sourceRoot":"","sources":["../../../src/presenters/ink/listen.tsx"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import { useEffect } from 'react';
2
2
  import { useStdin } from 'ink';
3
3
  export const ENABLE_MOUSE_REPORTING = '\u001B[?1000h\u001B[?1006h';
4
4
  export const DISABLE_MOUSE_REPORTING = '\u001B[?1006l\u001B[?1003l\u001B[?1002l\u001B[?1000l';
5
+ export const ENABLE_ALTERNATE_SCROLL = '\u001B[?1049h\u001B[?1007h';
6
+ export const DISABLE_ALTERNATE_SCROLL = '\u001B[?1007l\u001B[?1049l';
5
7
  const SGR_MOUSE_PATTERN = /\u001B\[<(\d+);\d+;\d+([Mm])/g;
6
8
  const INK_MOUSE_PATTERN = /^(?:\u001B)?\[<\d+;\d+;\d+[Mm]$/;
7
9
  export async function withMouseReporting(options) {
@@ -13,6 +15,16 @@ export async function withMouseReporting(options) {
13
15
  options.write(DISABLE_MOUSE_REPORTING);
14
16
  }
15
17
  }
18
+ export async function withAlternateScroll(options) {
19
+ options.write(DISABLE_MOUSE_REPORTING);
20
+ options.write(ENABLE_ALTERNATE_SCROLL);
21
+ try {
22
+ return await options.run();
23
+ }
24
+ finally {
25
+ options.write(DISABLE_ALTERNATE_SCROLL);
26
+ }
27
+ }
16
28
  export function isMouseInput(input) {
17
29
  return INK_MOUSE_PATTERN.test(input);
18
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mouse-scroll.js","sourceRoot":"","sources":["../../../src/presenters/ink/mouse-scroll.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAI9B,MAAM,CAAC,MAAM,sBAAsB,GAAG,4BAA4B,CAAA;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAG,sDAAsD,CAAA;AAC7F,MAAM,iBAAiB,GAAG,+BAA+B,CAAA;AACzD,MAAM,iBAAiB,GAAG,iCAAiC,CAAA;AAE3D,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAI,OAG3C;IACC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;IACrC,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,GAAG,EAAE,CAAA;IAC5B,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;IACxC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACtC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,UAAU,GAA2B,EAAE,CAAA;IAC7C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1B,IAAI,SAAS,KAAK,GAAG;YAAE,SAAQ;QAC/B,IAAI,MAAM,KAAK,EAAE;YAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,MAAM,KAAK,EAAE;YAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC5C,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAGjC;IACC,IAAI,MAAM,GAAG,IAAI,CAAA;IACjB,MAAM,WAAW,GAAG,CAAC,IAAY,EAAQ,EAAE;QACzC,KAAK,MAAM,SAAS,IAAI,eAAe,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IAC5E,CAAC,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IAExC,OAAO,GAAG,EAAE;QACV,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,MAAM,GAAG,KAAK,CAAA;QACd,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IACtD,CAAC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,QAAmD;IAChF,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,QAAQ,EAAE,CAAA;IAEzE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,kBAAkB;YAAE,OAAM;QAC/B,OAAO,iBAAiB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;IACjD,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC7C,CAAC"}
1
+ {"version":3,"file":"mouse-scroll.js","sourceRoot":"","sources":["../../../src/presenters/ink/mouse-scroll.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useState } from 'react';
3
+ import { Box, Text, useInput } from 'ink';
4
+ const graphemeSegmenter = new Intl.Segmenter(undefined, { granularity: 'grapheme' });
5
+ export const MAX_SECURE_INPUT_LENGTH = 4096;
6
+ const MAX_SECURE_INPUT_CODE_POINTS = MAX_SECURE_INPUT_LENGTH * 16;
7
+ // JavaScript strings are immutable: clearing retained buffer entries minimizes lifetime but cannot guarantee memory zeroization.
8
+ export function SecureInput({ label, onSubmit, onCancel }) {
9
+ const secret = useRef([]);
10
+ const [graphemeCount, setGraphemeCount] = useState(0);
11
+ const clear = () => {
12
+ secret.current.fill('');
13
+ secret.current.length = 0;
14
+ setGraphemeCount(0);
15
+ };
16
+ useEffect(() => () => {
17
+ secret.current.fill('');
18
+ secret.current.length = 0;
19
+ }, []);
20
+ useInput((input, key) => {
21
+ if (key.escape) {
22
+ clear();
23
+ onCancel();
24
+ return;
25
+ }
26
+ if (key.return) {
27
+ if (secret.current.length === 0)
28
+ return;
29
+ const submitted = secret.current.join('');
30
+ clear();
31
+ onSubmit(submitted);
32
+ return;
33
+ }
34
+ if (key.backspace || key.delete) {
35
+ const removed = secret.current.pop();
36
+ if (removed != null)
37
+ setGraphemeCount(secret.current.length);
38
+ return;
39
+ }
40
+ if (!key.ctrl && !key.meta && input.length > 0) {
41
+ const codePoints = [];
42
+ let examinedCodePoints = 0;
43
+ let preprocessingWasTruncated = false;
44
+ inputSources: for (const source of [secret.current.join(''), input]) {
45
+ for (const character of source) {
46
+ if (examinedCodePoints === MAX_SECURE_INPUT_CODE_POINTS) {
47
+ preprocessingWasTruncated = true;
48
+ break inputSources;
49
+ }
50
+ examinedCodePoints += 1;
51
+ const code = character.codePointAt(0);
52
+ if (code != null && code >= 32 && (code < 127 || code > 159))
53
+ codePoints.push(character);
54
+ }
55
+ }
56
+ const combined = codePoints.join('');
57
+ const graphemes = Array.from(graphemeSegmenter.segment(combined), part => part.segment);
58
+ if (preprocessingWasTruncated)
59
+ graphemes.pop();
60
+ secret.current.fill('');
61
+ secret.current.length = 0;
62
+ secret.current.push(...graphemes.slice(0, MAX_SECURE_INPUT_LENGTH));
63
+ setGraphemeCount(secret.current.length);
64
+ }
65
+ });
66
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: "yellow", children: label }), _jsxs(Text, { color: "#8ecbff", children: ["\u203A ", '•'.repeat(graphemeCount)] }), _jsx(Text, { dimColor: true, children: "Enter submit \u00B7 Esc cancel" })] }));
67
+ }
68
+ //# sourceMappingURL=secure-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secure-input.js","sourceRoot":"","sources":["../../../src/presenters/ink/secure-input.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,186 @@
1
+ import { useCallback, useEffect, useRef, useState } from 'react';
2
+ import { completeGroupCommand, parseGroupCommand } from '../../group-commands/parser.js';
3
+ export function createGroupCommandController({ execute }) {
4
+ return { async submit(input, selectedIndex) {
5
+ const completed = completeGroupCommand(input, selectedIndex);
6
+ if (completed !== input)
7
+ return { kind: 'complete', input: completed };
8
+ const parsed = parseGroupCommand(input);
9
+ if (!parsed.ok)
10
+ return { kind: 'error', message: parsed.error.message, usage: parsed.error.usage };
11
+ let result;
12
+ try {
13
+ result = await execute(parsed.request);
14
+ }
15
+ catch (error) {
16
+ return { kind: 'error', message: error instanceof Error ? error.message : String(error) };
17
+ }
18
+ if (!result.ok && ('confirmation' in result || 'selectionRequired' in result))
19
+ return {
20
+ kind: 'pending', pending: result, request: freezeRequest(parsed.request), input,
21
+ };
22
+ return { kind: 'result', result };
23
+ } };
24
+ }
25
+ function freezeRequest(request) {
26
+ const values = Object.fromEntries(Object.entries(request.values).map(([key, value]) => [
27
+ key, Array.isArray(value) ? Object.freeze([...value]) : value,
28
+ ]));
29
+ return Object.freeze({ ...request, values: Object.freeze(values) });
30
+ }
31
+ export function useGroupCommand(execute) {
32
+ const [state, setState] = useState({ kind: 'closed' });
33
+ const generation = useRef({});
34
+ const passwordGeneration = useRef({});
35
+ const executionLock = useRef(null);
36
+ const passwordToken = passwordGeneration.current;
37
+ useEffect(() => () => {
38
+ generation.current = {};
39
+ passwordGeneration.current = {};
40
+ }, []);
41
+ const controller = createGroupCommandController({ execute });
42
+ const applyOutcome = useCallback((outcome, selectedIndex) => {
43
+ if (outcome.kind === 'error')
44
+ setState(outcome);
45
+ else if (outcome.kind === 'result')
46
+ setState({ kind: 'result', result: outcome.result });
47
+ else if (outcome.kind === 'pending') {
48
+ const pending = outcome.pending;
49
+ setState('selectionRequired' in pending
50
+ ? { kind: 'select-permissions', pending, request: outcome.request, originalInput: outcome.input, selectedIndex: 0, selected: [] }
51
+ : 'confirmation' in pending
52
+ ? pending.confirmation.risk === 'confirm-title'
53
+ ? { kind: 'confirm-title', pending, request: outcome.request, originalInput: outcome.input, stage: 'confirm', selectedIndex: 1, confirmText: '' }
54
+ : { kind: 'confirm', pending, request: outcome.request, originalInput: outcome.input, selectedIndex: 1 }
55
+ : { kind: 'result', result: pending });
56
+ }
57
+ else
58
+ setState({ kind: 'menu', selectedIndex });
59
+ }, []);
60
+ const submit = useCallback(async (input, selectedIndex) => {
61
+ if (executionLock.current !== null)
62
+ return { kind: 'error', message: 'Command is already running.', applied: false };
63
+ passwordGeneration.current = {};
64
+ const owned = {};
65
+ generation.current = owned;
66
+ executionLock.current = owned;
67
+ setState({ kind: 'executing' });
68
+ try {
69
+ const outcome = await controller.submit(input, selectedIndex);
70
+ if (owned !== generation.current)
71
+ return { ...outcome, applied: false };
72
+ applyOutcome(outcome, selectedIndex);
73
+ return { ...outcome, applied: true };
74
+ }
75
+ finally {
76
+ if (executionLock.current === owned)
77
+ executionLock.current = null;
78
+ }
79
+ }, [execute, applyOutcome]);
80
+ const submitParsed = useCallback(async (request, originalInput, selectedIndex = 0) => {
81
+ if (executionLock.current !== null)
82
+ return { kind: 'error', message: 'Command is already running.', applied: false };
83
+ passwordGeneration.current = {};
84
+ const owned = {};
85
+ generation.current = owned;
86
+ executionLock.current = owned;
87
+ setState({ kind: 'executing' });
88
+ let outcome;
89
+ try {
90
+ try {
91
+ const result = await execute(request);
92
+ outcome = !result.ok && ('confirmation' in result || 'selectionRequired' in result)
93
+ ? { kind: 'pending', pending: result, request: freezeRequest(request), input: originalInput }
94
+ : { kind: 'result', result };
95
+ }
96
+ catch (error) {
97
+ outcome = { kind: 'error', message: error instanceof Error ? error.message : String(error) };
98
+ }
99
+ if (owned !== generation.current)
100
+ return { ...outcome, applied: false };
101
+ applyOutcome(outcome, selectedIndex);
102
+ return { ...outcome, applied: true };
103
+ }
104
+ finally {
105
+ if (executionLock.current === owned)
106
+ executionLock.current = null;
107
+ }
108
+ }, [execute, applyOutcome]);
109
+ const close = useCallback(() => { generation.current = {}; passwordGeneration.current = {}; setState({ kind: 'closed' }); }, []);
110
+ const replaceState = useCallback((next) => {
111
+ generation.current = {};
112
+ passwordGeneration.current = {};
113
+ setState(next);
114
+ }, []);
115
+ const runConfirmed = useCallback(async (request, confirmationTitle) => {
116
+ if (executionLock.current !== null)
117
+ return;
118
+ passwordGeneration.current = {};
119
+ const owned = {};
120
+ generation.current = owned;
121
+ executionLock.current = owned;
122
+ setState({ kind: 'executing' });
123
+ try {
124
+ const result = await execute(request, { confirmed: true, confirmationTitle });
125
+ if (owned !== generation.current)
126
+ return;
127
+ setState(result.ok ? { kind: 'result', result } : 'secretRequired' in result
128
+ ? { kind: 'password', request }
129
+ : 'error' in result
130
+ ? { kind: 'error', message: result.error.message }
131
+ : { kind: 'error', message: 'Telegram did not accept the confirmation.' });
132
+ }
133
+ catch (error) {
134
+ if (owned === generation.current)
135
+ setState({ kind: 'error', message: error instanceof Error ? error.message : String(error) });
136
+ }
137
+ finally {
138
+ if (executionLock.current === owned)
139
+ executionLock.current = null;
140
+ }
141
+ }, [execute]);
142
+ const runWithOwnershipPassword = useCallback(async (ownershipPassword) => {
143
+ if (state.kind !== 'password' || passwordToken !== passwordGeneration.current || executionLock.current !== null) {
144
+ ownershipPassword = '';
145
+ return;
146
+ }
147
+ const { request } = state;
148
+ passwordGeneration.current = {};
149
+ const owned = {};
150
+ generation.current = owned;
151
+ executionLock.current = owned;
152
+ setState({ kind: 'executing', irreversible: true });
153
+ let execution;
154
+ try {
155
+ execution = execute(request, { confirmed: true, ownershipPassword });
156
+ }
157
+ catch {
158
+ ownershipPassword = '';
159
+ if (owned === generation.current)
160
+ setState({ kind: 'error', message: 'Telegram ownership transfer failed.' });
161
+ if (executionLock.current === owned)
162
+ executionLock.current = null;
163
+ return;
164
+ }
165
+ ownershipPassword = '';
166
+ try {
167
+ const result = await execution;
168
+ if (owned !== generation.current)
169
+ return;
170
+ setState(result.ok ? { kind: 'result', result } : 'error' in result
171
+ ? { kind: 'error', message: result.error.message }
172
+ : { kind: 'error', message: 'Telegram did not accept the password.' });
173
+ }
174
+ catch {
175
+ if (owned === generation.current)
176
+ setState({ kind: 'error', message: 'Telegram ownership transfer failed.' });
177
+ }
178
+ finally {
179
+ ownershipPassword = '';
180
+ if (executionLock.current === owned)
181
+ executionLock.current = null;
182
+ }
183
+ }, [execute, state, passwordToken]);
184
+ return { state, setState: replaceState, submit, submitParsed, close, runConfirmed, runWithOwnershipPassword };
185
+ }
186
+ //# sourceMappingURL=use-group-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-group-command.js","sourceRoot":"","sources":["../../../src/presenters/ink/use-group-command.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,42 @@
1
1
  import { discoverListenAttachments } from '../services/listen-attachment.js';
2
+ import { groupLogicalMessages, summarizeLogicalMedia } from './logical-message.js';
3
+ import { formatReplyContext } from '../services/reply-context.js';
2
4
  const MESSAGE_SEPARATOR = '────────────────────────────────────────────';
3
5
  export function buildListenMessage(input, options = {}) {
4
6
  const messages = Array.isArray(input) ? input : [input];
5
- const message = messages[0];
6
- if (message == null)
7
+ const logicalGroups = groupLogicalMessages(messages);
8
+ const firstLogical = logicalGroups[0];
9
+ const logical = firstLogical == null ? undefined : {
10
+ ...firstLogical,
11
+ messages,
12
+ content: logicalGroups.find((item) => item.content != null)?.content ?? null,
13
+ replyToMessageId: logicalGroups.find((item) => item.replyToMessageId != null)?.replyToMessageId ?? null,
14
+ };
15
+ if (logical == null)
7
16
  throw new Error('Cannot format an empty listen message group');
8
- const media = options.showMedia ? messages.flatMap(discoverListenAttachments) : [];
9
- const content = messages.find((item) => item.content != null && item.content.trim() !== '')?.content ?? null;
17
+ const message = logical.first;
18
+ const media = options.showMedia ? logical.messages.flatMap(discoverListenAttachments) : [];
10
19
  return {
11
20
  time: formatListenTimestamp(message.timestamp),
12
21
  sender: message.sender_name ?? (message.sender_id == null ? 'Unknown' : String(message.sender_id)),
13
22
  senderId: message.sender_id,
14
23
  chatName: options.showChatName ? (message.chat_name ?? 'Unknown') : undefined,
15
- content: contentPreview(content, media.length > 0),
24
+ content: contentPreview(logical.content, media.length > 0),
16
25
  media,
26
+ mediaSummary: options.showMedia ? summarizeLogicalMedia(logical) : null,
27
+ replyContext: options.replyContext ?? logical.replyContext,
17
28
  };
18
29
  }
19
30
  export function formatListenLine(message, options = {}) {
20
31
  const row = buildListenMessage(message, options);
21
32
  const sender = row.chatName == null ? row.sender : `${row.chatName} | ${row.sender}`;
22
- const lines = [`[${row.time}] ${sender}`, ...(row.content == null ? [] : [row.content]), ...row.media.map((item) => item.label), MESSAGE_SEPARATOR];
33
+ const lines = [
34
+ `[${row.time}] ${sender}`,
35
+ ...(row.replyContext == null ? [] : [formatReplyContext(row.replyContext)]),
36
+ ...(row.content == null ? [] : [row.content]),
37
+ ...(row.mediaSummary == null ? [] : [row.mediaSummary]),
38
+ MESSAGE_SEPARATOR,
39
+ ];
23
40
  return `${lines.join('\n')}\n`;
24
41
  }
25
42
  function contentPreview(content, hasVisibleMedia) {
@@ -1 +1 @@
1
- {"version":3,"file":"listen-message.js","sourceRoot":"","sources":["../../src/presenters/listen-message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listen-message.js","sourceRoot":"","sources":["../../src/presenters/listen-message.ts"],"names":[],"mappings":"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"}