@jungjaehoon/mama-os 0.51.0 → 0.51.2
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 +16 -0
- package/dist/agent/agent-loop.d.ts.map +1 -1
- package/dist/agent/agent-loop.js +5 -0
- package/dist/agent/agent-loop.js.map +1 -1
- package/dist/gateways/telegram-format.d.ts +68 -0
- package/dist/gateways/telegram-format.d.ts.map +1 -0
- package/dist/gateways/telegram-format.js +268 -0
- package/dist/gateways/telegram-format.js.map +1 -0
- package/dist/gateways/telegram-message-ledger.d.ts +4 -1
- package/dist/gateways/telegram-message-ledger.d.ts.map +1 -1
- package/dist/gateways/telegram-message-ledger.js +5 -1
- package/dist/gateways/telegram-message-ledger.js.map +1 -1
- package/dist/gateways/telegram-response-presenter.d.ts +9 -3
- package/dist/gateways/telegram-response-presenter.d.ts.map +1 -1
- package/dist/gateways/telegram-response-presenter.js +32 -29
- package/dist/gateways/telegram-response-presenter.js.map +1 -1
- package/dist/gateways/telegram.d.ts.map +1 -1
- package/dist/gateways/telegram.js +68 -15
- package/dist/gateways/telegram.js.map +1 -1
- package/dist/operator/owner-action-effects.d.ts +14 -0
- package/dist/operator/owner-action-effects.d.ts.map +1 -1
- package/dist/operator/owner-action-effects.js +16 -1
- package/dist/operator/owner-action-effects.js.map +1 -1
- package/dist/operator/workorder-hooks.d.ts +2 -1
- package/dist/operator/workorder-hooks.d.ts.map +1 -1
- package/dist/operator/workorder-hooks.js +8 -10
- package/dist/operator/workorder-hooks.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Outbound Telegram formatting: Telegram HTML subset -> MessageEntity list.
|
|
4
|
+
*
|
|
5
|
+
* The model writes a small HTML subset (b/strong, i/em, u, s/del, code, pre,
|
|
6
|
+
* tg-spoiler, blockquote, a href). This module converts that markup into the
|
|
7
|
+
* `{ text, entities }` pair Telegram's sendMessage/editMessageText accept, and
|
|
8
|
+
* splits the result into transport-sized chunks with the entity spans mapped
|
|
9
|
+
* onto each chunk.
|
|
10
|
+
*
|
|
11
|
+
* Entities, not `parse_mode`: a long answer has to be split, and a chunk
|
|
12
|
+
* boundary can fall inside a tag pair. Offsets survive splitting; raw HTML does
|
|
13
|
+
* not.
|
|
14
|
+
*
|
|
15
|
+
* Any input the parser cannot read as that subset is returned verbatim with no
|
|
16
|
+
* entities. Plain text is therefore always deliverable and never mangled: an
|
|
17
|
+
* unknown tag, an unclosed tag, an attribute we do not accept, or a nesting the
|
|
18
|
+
* subset forbids all degrade to literal text rather than to an error.
|
|
19
|
+
*
|
|
20
|
+
* Offsets and lengths are counted in UTF-16 code units, which is what Telegram
|
|
21
|
+
* counts for both entity spans and the 4096 message limit.
|
|
22
|
+
*/
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.TELEGRAM_FORMAT_GUIDE = exports.TELEGRAM_MAX_MESSAGE_LENGTH = void 0;
|
|
25
|
+
exports.closeOpenTelegramHtml = closeOpenTelegramHtml;
|
|
26
|
+
exports.formatTelegramMessage = formatTelegramMessage;
|
|
27
|
+
exports.isTelegramEntityRejection = isTelegramEntityRejection;
|
|
28
|
+
/** Telegram's per-message text limit, in UTF-16 code units. */
|
|
29
|
+
exports.TELEGRAM_MAX_MESSAGE_LENGTH = 4096;
|
|
30
|
+
/**
|
|
31
|
+
* Prefer a newline boundary only when it is late enough in the chunk; an early
|
|
32
|
+
* newline would produce many tiny messages out of one answer.
|
|
33
|
+
*/
|
|
34
|
+
const NEWLINE_SPLIT_FLOOR = 0.3;
|
|
35
|
+
const TAG_TYPES = {
|
|
36
|
+
b: 'bold',
|
|
37
|
+
strong: 'bold',
|
|
38
|
+
i: 'italic',
|
|
39
|
+
em: 'italic',
|
|
40
|
+
u: 'underline',
|
|
41
|
+
s: 'strikethrough',
|
|
42
|
+
del: 'strikethrough',
|
|
43
|
+
code: 'code',
|
|
44
|
+
pre: 'pre',
|
|
45
|
+
'tg-spoiler': 'spoiler',
|
|
46
|
+
blockquote: 'blockquote',
|
|
47
|
+
a: 'text_link',
|
|
48
|
+
};
|
|
49
|
+
const LINK_PROTOCOLS = ['https:', 'http:', 'mailto:'];
|
|
50
|
+
/** The one tag scan this module has. Shared by the parser and the snapshot closer. */
|
|
51
|
+
const TAG_SCAN = /<\/?[a-z][^>]*>/gi;
|
|
52
|
+
const CLOSING_TAG = /^<\/([a-z-]+)\s*>$/i;
|
|
53
|
+
const OPENING_TAG = /^<([a-z-]+)([^>]*)>$/i;
|
|
54
|
+
const TRAILING_OPENING_TAG = /<[a-z][^>]*>$/i;
|
|
55
|
+
/**
|
|
56
|
+
* The producer half of this module. The parser above can only read the subset
|
|
57
|
+
* the model was actually told to write, so the contract and its reader ship
|
|
58
|
+
* together: changing one without the other is what silently degrades every
|
|
59
|
+
* answer to literal text.
|
|
60
|
+
*
|
|
61
|
+
* Loaded once with the owner session, regardless of which input starts it.
|
|
62
|
+
*/
|
|
63
|
+
exports.TELEGRAM_FORMAT_GUIDE = [
|
|
64
|
+
'Apply the following only to messages delivered via Telegram, including telegram_send.',
|
|
65
|
+
'Telegram message formatting: write the body in the Telegram HTML text subset.',
|
|
66
|
+
'- Allowed tags only: <b> <i> <u> <s> <code> <pre> <tg-spoiler> <blockquote> <a href="...">.',
|
|
67
|
+
'- Use real newlines. For lists use a plain marker such as "-" or numbers.',
|
|
68
|
+
'- No Markdown (no **bold**, no # headings, no tables) and no div/span/br or CSS.',
|
|
69
|
+
'- Escape literal &, <, > and " in text and URLs as &, <, > and ".',
|
|
70
|
+
'- Close every tag you open. Nothing may nest inside <code> or <pre>, and <code> and <pre>',
|
|
71
|
+
' must not appear inside any other tag (no <pre> inside <blockquote>, no <code> inside a link).',
|
|
72
|
+
'- Links must be http, https or mailto.',
|
|
73
|
+
'- Keep emphasis for headings and key actions; unstyled prose reads better than styled prose.',
|
|
74
|
+
'- Never write entity JSON, offsets or lengths. The sender converts this HTML into Telegram',
|
|
75
|
+
' entities and splits long messages for you.',
|
|
76
|
+
].join('\n');
|
|
77
|
+
function decodeEntities(text) {
|
|
78
|
+
const named = { amp: '&', lt: '<', gt: '>', quot: '"' };
|
|
79
|
+
return text.replace(/&(amp|lt|gt|quot|#\d+|#x[\da-f]+);/gi, (raw, value) => {
|
|
80
|
+
if (!value.startsWith('#'))
|
|
81
|
+
return named[value.toLowerCase()] ?? raw;
|
|
82
|
+
const point = value[1].toLowerCase() === 'x' ? parseInt(value.slice(2), 16) : Number(value.slice(1));
|
|
83
|
+
return point > 0 && point <= 0x10ffff && !(point >= 0xd800 && point <= 0xdfff)
|
|
84
|
+
? String.fromCodePoint(point)
|
|
85
|
+
: raw;
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Read the HTML subset. Returns the input verbatim with no entities as soon as
|
|
90
|
+
* anything outside the subset appears: unreadable markup must reach the owner
|
|
91
|
+
* as text, never as a dropped or half-styled message.
|
|
92
|
+
*/
|
|
93
|
+
function parseTelegramHtml(text) {
|
|
94
|
+
const literal = { text, entities: [] };
|
|
95
|
+
const entities = [];
|
|
96
|
+
const stack = [];
|
|
97
|
+
let plain = '';
|
|
98
|
+
let cursor = 0;
|
|
99
|
+
for (const match of text.matchAll(TAG_SCAN)) {
|
|
100
|
+
const at = match.index ?? 0;
|
|
101
|
+
plain += decodeEntities(text.slice(cursor, at));
|
|
102
|
+
cursor = at + match[0].length;
|
|
103
|
+
const closing = CLOSING_TAG.exec(match[0]);
|
|
104
|
+
if (closing) {
|
|
105
|
+
const opened = stack.pop();
|
|
106
|
+
if (!opened || opened.tag !== closing[1].toLowerCase())
|
|
107
|
+
return literal;
|
|
108
|
+
opened.entity.length = plain.length - opened.entity.offset;
|
|
109
|
+
if (opened.entity.length)
|
|
110
|
+
entities.push(opened.entity);
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
const opening = OPENING_TAG.exec(match[0]);
|
|
114
|
+
if (!opening)
|
|
115
|
+
return literal;
|
|
116
|
+
const tag = opening[1].toLowerCase();
|
|
117
|
+
const type = TAG_TYPES[tag];
|
|
118
|
+
if (!type)
|
|
119
|
+
return literal;
|
|
120
|
+
const entity = { type, offset: plain.length, length: 0 };
|
|
121
|
+
if (tag === 'a') {
|
|
122
|
+
const href = /^\s+href="([^"]+)"\s*$/.exec(opening[2]);
|
|
123
|
+
if (!href)
|
|
124
|
+
return literal;
|
|
125
|
+
entity.url = decodeEntities(href[1]);
|
|
126
|
+
try {
|
|
127
|
+
if (!LINK_PROTOCOLS.includes(new URL(entity.url).protocol))
|
|
128
|
+
return literal;
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
131
|
+
return literal;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
else if (opening[2].trim()) {
|
|
135
|
+
return literal;
|
|
136
|
+
}
|
|
137
|
+
const insideVerbatim = stack.some((open) => ['code', 'pre'].includes(open.entity.type));
|
|
138
|
+
const verbatimInsideAnything = ['code', 'pre'].includes(type) && stack.length > 0;
|
|
139
|
+
const repeatedSelfNesting = ['text_link', 'blockquote'].includes(type) && stack.some((open) => open.entity.type === type);
|
|
140
|
+
if (insideVerbatim || verbatimInsideAnything || repeatedSelfNesting)
|
|
141
|
+
return literal;
|
|
142
|
+
stack.push({ tag, entity });
|
|
143
|
+
}
|
|
144
|
+
if (stack.length)
|
|
145
|
+
return literal;
|
|
146
|
+
plain += decodeEntities(text.slice(cursor));
|
|
147
|
+
return {
|
|
148
|
+
text: plain,
|
|
149
|
+
entities: entities.sort((a, b) => a.offset - b.offset || b.length - a.length),
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Make a mid-stream snapshot readable by the parser above.
|
|
154
|
+
*
|
|
155
|
+
* A streaming snapshot is cut at an arbitrary character: it can end inside a
|
|
156
|
+
* tag, and it almost always leaves tags open. Either one makes the WHOLE
|
|
157
|
+
* snapshot literal, so the owner watches the placeholder flicker between styled
|
|
158
|
+
* text and raw markup. Drop the partial tag at the end and close what is still
|
|
159
|
+
* open, using the same tag scan the parser uses.
|
|
160
|
+
*
|
|
161
|
+
* A snapshot the scan cannot follow is returned as-is: the parser then falls
|
|
162
|
+
* back to literal text, which is the existing behaviour, not a new one.
|
|
163
|
+
*/
|
|
164
|
+
function closeOpenTelegramHtml(snapshot) {
|
|
165
|
+
const lastOpen = snapshot.lastIndexOf('<');
|
|
166
|
+
let text = lastOpen >= 0 && snapshot.indexOf('>', lastOpen) < 0 ? snapshot.slice(0, lastOpen) : snapshot;
|
|
167
|
+
// A tag the stream has opened but not yet filled encloses nothing. Closing it
|
|
168
|
+
// would build markup around no text, and `formatTelegramMessage` shows THAT
|
|
169
|
+
// literally rather than send an empty message. Drop it instead.
|
|
170
|
+
for (let empty = TRAILING_OPENING_TAG.exec(text); empty; empty = TRAILING_OPENING_TAG.exec(text)) {
|
|
171
|
+
text = text.slice(0, -empty[0].length);
|
|
172
|
+
}
|
|
173
|
+
const open = [];
|
|
174
|
+
for (const match of text.matchAll(TAG_SCAN)) {
|
|
175
|
+
const closing = CLOSING_TAG.exec(match[0]);
|
|
176
|
+
if (closing) {
|
|
177
|
+
if (open.pop() !== closing[1].toLowerCase())
|
|
178
|
+
return text;
|
|
179
|
+
continue;
|
|
180
|
+
}
|
|
181
|
+
const opening = OPENING_TAG.exec(match[0]);
|
|
182
|
+
if (!opening || !TAG_TYPES[opening[1].toLowerCase()])
|
|
183
|
+
return text;
|
|
184
|
+
open.push(opening[1].toLowerCase());
|
|
185
|
+
}
|
|
186
|
+
let closed = text;
|
|
187
|
+
while (open.length)
|
|
188
|
+
closed += `</${open.pop()}>`;
|
|
189
|
+
return closed;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Convert one model answer into the chunks the transport sends, in order.
|
|
193
|
+
* An empty input yields no chunks.
|
|
194
|
+
*/
|
|
195
|
+
function formatTelegramMessage(input, maxLength = exports.TELEGRAM_MAX_MESSAGE_LENGTH, chunkFormat = 'html-v1') {
|
|
196
|
+
// Old pending receipts count code points in the original, unparsed text.
|
|
197
|
+
// Keep those exact boundaries until that delivery finishes after an upgrade.
|
|
198
|
+
if (chunkFormat === 'plain-v1') {
|
|
199
|
+
const points = Array.from(input);
|
|
200
|
+
const chunks = [];
|
|
201
|
+
for (let start = 0; start < points.length;) {
|
|
202
|
+
const candidate = points.slice(start, start + maxLength);
|
|
203
|
+
const newline = candidate.lastIndexOf('\n');
|
|
204
|
+
const length = points.length - start > maxLength && newline > maxLength * NEWLINE_SPLIT_FLOOR
|
|
205
|
+
? newline + 1
|
|
206
|
+
: candidate.length;
|
|
207
|
+
chunks.push({ text: points.slice(start, start + length).join(''), entities: [] });
|
|
208
|
+
start += length;
|
|
209
|
+
}
|
|
210
|
+
return chunks;
|
|
211
|
+
}
|
|
212
|
+
const parsed = parseTelegramHtml(input);
|
|
213
|
+
// A parse can succeed and still leave nothing to send: `<b></b>` is readable
|
|
214
|
+
// markup around no text. Zero chunks would let the transport report the
|
|
215
|
+
// answer delivered without one API call and leave the placeholder standing
|
|
216
|
+
// forever, so a non-empty answer always degrades to its literal source.
|
|
217
|
+
const collapsed = input.length > 0 && parsed.text.length === 0;
|
|
218
|
+
const text = collapsed ? input : parsed.text;
|
|
219
|
+
const entities = collapsed ? [] : parsed.entities;
|
|
220
|
+
const limit = Math.max(1, Math.floor(maxLength));
|
|
221
|
+
const chunks = [];
|
|
222
|
+
for (let start = 0; start < text.length;) {
|
|
223
|
+
let end = Math.min(start + limit, text.length);
|
|
224
|
+
if (end < text.length) {
|
|
225
|
+
const newline = text.lastIndexOf('\n', end - 1);
|
|
226
|
+
if (newline > start + limit * NEWLINE_SPLIT_FLOOR)
|
|
227
|
+
end = newline + 1;
|
|
228
|
+
// Never end a chunk on a lone high surrogate: Telegram would receive a
|
|
229
|
+
// broken code point and the next chunk would start on its other half.
|
|
230
|
+
if (/[\uD800-\uDBFF]/.test(text[end - 1]))
|
|
231
|
+
end -= 1;
|
|
232
|
+
}
|
|
233
|
+
// Backing off the surrogate can empty the chunk; take the whole pair
|
|
234
|
+
// rather than emit the lone high surrogate the back-off just avoided.
|
|
235
|
+
if (end <= start)
|
|
236
|
+
end = Math.min(start + 2, text.length);
|
|
237
|
+
const from = start;
|
|
238
|
+
const to = end;
|
|
239
|
+
chunks.push({
|
|
240
|
+
text: text.slice(from, to),
|
|
241
|
+
entities: entities.flatMap((entity) => {
|
|
242
|
+
const spanStart = Math.max(from, entity.offset);
|
|
243
|
+
const spanEnd = Math.min(to, entity.offset + entity.length);
|
|
244
|
+
return spanStart < spanEnd
|
|
245
|
+
? [{ ...entity, offset: spanStart - from, length: spanEnd - spanStart }]
|
|
246
|
+
: [];
|
|
247
|
+
}),
|
|
248
|
+
});
|
|
249
|
+
start = end;
|
|
250
|
+
}
|
|
251
|
+
return chunks;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* True when Telegram rejected the entity list itself. The transport then
|
|
255
|
+
* resends the same text without entities: the owner must get the answer even
|
|
256
|
+
* when the styling is unusable.
|
|
257
|
+
*
|
|
258
|
+
* Deliberately wide. Telegram words these 400s inconsistently, and every
|
|
259
|
+
* wording we fail to recognise costs the owner the whole answer to save a
|
|
260
|
+
* styling that is already lost. An unrelated 400 (chat not found, bot blocked)
|
|
261
|
+
* still fails, because resending it unstyled would fail identically.
|
|
262
|
+
*/
|
|
263
|
+
function isTelegramEntityRejection(error) {
|
|
264
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
265
|
+
return (/can't parse entities|unsupported url protocol/i.test(message) ||
|
|
266
|
+
(/entit(?:y|ies)/i.test(message) && /invalid|out of range|too many/i.test(message)));
|
|
267
|
+
}
|
|
268
|
+
//# sourceMappingURL=telegram-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telegram-format.js","sourceRoot":"","sources":["../../src/gateways/telegram-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { TelegramChunkFormat } from './telegram-format.js';
|
|
1
2
|
export type TelegramMessageState = 'processing' | 'ready' | 'delivered';
|
|
2
3
|
export interface TelegramMessageLedgerEntry {
|
|
3
4
|
key: string;
|
|
@@ -7,6 +8,8 @@ export interface TelegramMessageLedgerEntry {
|
|
|
7
8
|
response?: string;
|
|
8
9
|
nextChunkIndex?: number;
|
|
9
10
|
deliveryUncertain?: boolean;
|
|
11
|
+
/** Missing on pre-formatting receipts, whose original chunk boundaries must survive. */
|
|
12
|
+
chunkFormat?: TelegramChunkFormat;
|
|
10
13
|
deliveryTarget?: string;
|
|
11
14
|
payloadIdentity?: string;
|
|
12
15
|
/**
|
|
@@ -44,7 +47,7 @@ export declare class TelegramMessageLedger {
|
|
|
44
47
|
claimed: boolean;
|
|
45
48
|
entry: TelegramMessageLedgerEntry;
|
|
46
49
|
};
|
|
47
|
-
markReady(key: string, response: string): void;
|
|
50
|
+
markReady(key: string, response: string, chunkFormat?: TelegramChunkFormat): void;
|
|
48
51
|
markDeliveryProgress(key: string, nextChunkIndex: number, deliveryUncertain: boolean): void;
|
|
49
52
|
markDelivered(key: string): void;
|
|
50
53
|
/** Pin an existing delivery entry against TTL pruning and eviction. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-message-ledger.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram-message-ledger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"telegram-message-ledger.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram-message-ledger.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,OAAO,GAAG,WAAW,CAAC;AAExE,MAAM,WAAW,0BAA0B;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,oBAAoB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wFAAwF;IACxF,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;CACzB;AAiBD,MAAM,WAAW,4BAA4B;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAQD,qBAAa,qBAAqB;IAS9B,OAAO,CAAC,QAAQ,CAAC,IAAI;IARvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiD;IACzE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAyB;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAGd,IAAI,EAAE,MAAM,EAC7B,OAAO,GAAE,4BAAiC;IAU5C,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI;IAMnD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,eAAe,IAAI,0BAA0B,EAAE;IAO/C,uBAAuB,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO;IAInE,KAAK,CACH,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,uBAAuB,GAChC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,0BAA0B,CAAA;KAAE;IA8B1D,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,GAAE,mBAAgC,GAAG,IAAI;IAmB7F,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI;IAmB3F,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAiBhC,uEAAuE;IACvE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAQtB,0EAA0E;IAC1E,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IASxB,oEAAoE;IACpE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,IAAI;IAkGZ,OAAO,CAAC,KAAK;IASb,OAAO,CAAC,IAAI;IAeZ,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,MAAM;CAWf"}
|
|
@@ -70,7 +70,7 @@ class TelegramMessageLedger {
|
|
|
70
70
|
});
|
|
71
71
|
return { claimed: true, entry: { ...entry } };
|
|
72
72
|
}
|
|
73
|
-
markReady(key, response) {
|
|
73
|
+
markReady(key, response, chunkFormat = 'plain-v1') {
|
|
74
74
|
if (response.length > MAX_RESPONSE_CHARS) {
|
|
75
75
|
throw new Error('Telegram durable response exceeds its size limit');
|
|
76
76
|
}
|
|
@@ -80,6 +80,7 @@ class TelegramMessageLedger {
|
|
|
80
80
|
...entry,
|
|
81
81
|
state: 'ready',
|
|
82
82
|
response,
|
|
83
|
+
chunkFormat,
|
|
83
84
|
nextChunkIndex: 0,
|
|
84
85
|
deliveryUncertain: false,
|
|
85
86
|
updatedAt: this.now(),
|
|
@@ -376,6 +377,9 @@ function isLedgerEntry(value) {
|
|
|
376
377
|
(item.nextChunkIndex === undefined ||
|
|
377
378
|
(Number.isSafeInteger(item.nextChunkIndex) && item.nextChunkIndex >= 0)) &&
|
|
378
379
|
(item.deliveryUncertain === undefined || typeof item.deliveryUncertain === 'boolean') &&
|
|
380
|
+
(item.chunkFormat === undefined ||
|
|
381
|
+
item.chunkFormat === 'plain-v1' ||
|
|
382
|
+
item.chunkFormat === 'html-v1') &&
|
|
379
383
|
((item.deliveryTarget === undefined && item.payloadIdentity === undefined) ||
|
|
380
384
|
isDeliveryBinding({
|
|
381
385
|
deliveryTarget: item.deliveryTarget,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-message-ledger.js","sourceRoot":"","sources":["../../src/gateways/telegram-message-ledger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"telegram-message-ledger.js","sourceRoot":"","sources":["../../src/gateways/telegram-message-ledger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import type { StreamCallbacks } from '../agent/types.js';
|
|
2
|
+
import { type TelegramFormattedText, type TelegramChunkFormat } from './telegram-format.js';
|
|
3
|
+
/**
|
|
4
|
+
* The transport seam. Every visible payload crosses it already formatted, so
|
|
5
|
+
* the presenter owns the conversion and the transport owns only delivery.
|
|
6
|
+
*/
|
|
2
7
|
export interface TelegramResponseAdapter {
|
|
3
|
-
send(
|
|
4
|
-
edit(handle: string,
|
|
8
|
+
send(message: TelegramFormattedText): Promise<string | null>;
|
|
9
|
+
edit(handle: string, message: TelegramFormattedText): Promise<void>;
|
|
5
10
|
delete(handle: string): Promise<void>;
|
|
6
11
|
}
|
|
7
12
|
export interface TelegramResponsePresenterOptions {
|
|
13
|
+
chunkFormat?: TelegramChunkFormat;
|
|
8
14
|
/** Serialize the final multipart batch after pending streaming edits drain. */
|
|
9
15
|
withDelivery?: (send: () => Promise<void>) => Promise<void>;
|
|
10
16
|
throttleMs?: number;
|
|
@@ -13,8 +19,8 @@ export interface TelegramResponsePresenterOptions {
|
|
|
13
19
|
resumeFromChunk?: number;
|
|
14
20
|
onChunkProgress?: (nextIndex: number, uncertain: boolean) => void | Promise<void>;
|
|
15
21
|
}
|
|
16
|
-
export declare function splitTelegramMessage(text: string, maxLength: number): string[];
|
|
17
22
|
export declare class TelegramResponsePresenter {
|
|
23
|
+
private readonly chunkFormat;
|
|
18
24
|
private readonly adapter;
|
|
19
25
|
private readonly withDelivery;
|
|
20
26
|
private readonly throttleMs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-response-presenter.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram-response-presenter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"telegram-response-presenter.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram-response-presenter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAQ9B;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAOD,MAAM,WAAW,gCAAgC;IAC/C,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,+EAA+E;IAC/E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnF;AA4CD,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAClD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+C;IAC5E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAsD;gBAE3E,OAAO,EAAE,uBAAuB,EAAE,OAAO,GAAE,gCAAqC;IAWtF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAW5B,SAAS,IAAI,eAAe;IA0B5B,UAAU,IAAI,IAAI;IAQZ,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAcpC,YAAY;IA8CpB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,OAAO,CAAC,YAAY;YAUN,kBAAkB;IAsChC,OAAO,CAAC,iBAAiB;YAOX,UAAU;YAqBV,mBAAmB;CAGlC"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TelegramResponsePresenter = void 0;
|
|
4
|
-
exports.splitTelegramMessage = splitTelegramMessage;
|
|
5
4
|
const node_os_1 = require("node:os");
|
|
6
5
|
const node_path_1 = require("node:path");
|
|
6
|
+
const telegram_format_js_1 = require("./telegram-format.js");
|
|
7
7
|
const DEFAULT_THROTTLE_MS = 800;
|
|
8
|
-
const DEFAULT_MAX_LENGTH =
|
|
8
|
+
const DEFAULT_MAX_LENGTH = telegram_format_js_1.TELEGRAM_MAX_MESSAGE_LENGTH;
|
|
9
9
|
const EMPTY_RESPONSE_MESSAGE = 'No response was generated.';
|
|
10
|
+
/** The host-written placeholder shown while the answer is still forming. */
|
|
11
|
+
const PENDING_PLACEHOLDER = '⏳';
|
|
12
|
+
/** A status line the host writes itself; it carries no model markup. */
|
|
13
|
+
function plain(text) {
|
|
14
|
+
return { text, entities: [] };
|
|
15
|
+
}
|
|
10
16
|
function stripLeadingReasoningDecoration(text) {
|
|
11
17
|
if (!text.startsWith('||')) {
|
|
12
18
|
return text;
|
|
@@ -42,27 +48,8 @@ function isSafeRateLimitRetry(error) {
|
|
|
42
48
|
}
|
|
43
49
|
return /(?:^|\b)429\b|too many requests/i.test(telegramErrorMessage(error));
|
|
44
50
|
}
|
|
45
|
-
function splitTelegramMessage(text, maxLength) {
|
|
46
|
-
const codePoints = Array.from(text);
|
|
47
|
-
if (codePoints.length <= maxLength) {
|
|
48
|
-
return [text];
|
|
49
|
-
}
|
|
50
|
-
const chunks = [];
|
|
51
|
-
let remaining = codePoints;
|
|
52
|
-
while (remaining.length > 0) {
|
|
53
|
-
if (remaining.length <= maxLength) {
|
|
54
|
-
chunks.push(remaining.join(''));
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
57
|
-
const candidate = remaining.slice(0, maxLength);
|
|
58
|
-
const newline = candidate.lastIndexOf('\n');
|
|
59
|
-
const splitAt = newline > maxLength * 0.3 ? newline + 1 : maxLength;
|
|
60
|
-
chunks.push(remaining.slice(0, splitAt).join(''));
|
|
61
|
-
remaining = remaining.slice(splitAt);
|
|
62
|
-
}
|
|
63
|
-
return chunks;
|
|
64
|
-
}
|
|
65
51
|
class TelegramResponsePresenter {
|
|
52
|
+
chunkFormat;
|
|
66
53
|
adapter;
|
|
67
54
|
withDelivery;
|
|
68
55
|
throttleMs;
|
|
@@ -78,6 +65,7 @@ class TelegramResponsePresenter {
|
|
|
78
65
|
resumeFromChunk;
|
|
79
66
|
onChunkProgress;
|
|
80
67
|
constructor(adapter, options = {}) {
|
|
68
|
+
this.chunkFormat = options.chunkFormat ?? 'html-v1';
|
|
81
69
|
this.adapter = adapter;
|
|
82
70
|
this.withDelivery = options.withDelivery ?? ((send) => send());
|
|
83
71
|
this.throttleMs = options.throttleMs ?? DEFAULT_THROTTLE_MS;
|
|
@@ -91,7 +79,7 @@ class TelegramResponsePresenter {
|
|
|
91
79
|
return;
|
|
92
80
|
}
|
|
93
81
|
try {
|
|
94
|
-
this.handle = await this.adapter.send(
|
|
82
|
+
this.handle = await this.adapter.send(plain(PENDING_PLACEHOLDER));
|
|
95
83
|
}
|
|
96
84
|
catch {
|
|
97
85
|
this.handle = null;
|
|
@@ -146,7 +134,7 @@ class TelegramResponsePresenter {
|
|
|
146
134
|
async deliverFinal(rawResponse) {
|
|
147
135
|
const sanitized = sanitizeVisibleText(rawResponse);
|
|
148
136
|
const visible = (sanitized ?? '').trim() || EMPTY_RESPONSE_MESSAGE;
|
|
149
|
-
const chunks =
|
|
137
|
+
const chunks = (0, telegram_format_js_1.formatTelegramMessage)(visible, this.maxLength, this.chunkFormat);
|
|
150
138
|
if (this.resumeFromChunk >= chunks.length) {
|
|
151
139
|
this.finalized = true;
|
|
152
140
|
return;
|
|
@@ -212,11 +200,26 @@ class TelegramResponsePresenter {
|
|
|
212
200
|
if (!visible) {
|
|
213
201
|
return;
|
|
214
202
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
203
|
+
// A streaming snapshot is cut mid-markup. Formatted as-is, one open tag
|
|
204
|
+
// makes the whole snapshot literal and the owner watches the answer flicker
|
|
205
|
+
// between styled text and raw HTML. Close the snapshot first, then format.
|
|
206
|
+
// A closed snapshot can still be empty (the cut fell inside the first tag),
|
|
207
|
+
// and then the placeholder start() already wrote is the right thing to show.
|
|
208
|
+
const formatted = (0, telegram_format_js_1.formatTelegramMessage)(this.chunkFormat === 'html-v1' ? (0, telegram_format_js_1.closeOpenTelegramHtml)(visible) : visible, Number.MAX_SAFE_INTEGER, this.chunkFormat)[0] ?? plain(PENDING_PLACEHOLDER);
|
|
209
|
+
// Clip the rendered tail, not the HTML source: removing an opening tag
|
|
210
|
+
// before parsing would expose its closing tag and lose the entity span.
|
|
211
|
+
let start = Math.max(0, formatted.text.length - this.maxLength);
|
|
212
|
+
if (/[\uDC00-\uDFFF]/.test(formatted.text[start]))
|
|
213
|
+
start += 1;
|
|
214
|
+
const message = {
|
|
215
|
+
text: formatted.text.slice(start),
|
|
216
|
+
entities: formatted.entities.flatMap((entity) => {
|
|
217
|
+
const offset = Math.max(start, entity.offset);
|
|
218
|
+
const end = entity.offset + entity.length;
|
|
219
|
+
return end > offset ? [{ ...entity, offset: offset - start, length: end - offset }] : [];
|
|
220
|
+
}),
|
|
221
|
+
};
|
|
222
|
+
await this.adapter.edit(this.handle, message).catch(() => { });
|
|
220
223
|
}
|
|
221
224
|
cancelPendingEdit() {
|
|
222
225
|
if (this.editTimer) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-response-presenter.js","sourceRoot":"","sources":["../../src/gateways/telegram-response-presenter.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"telegram-response-presenter.js","sourceRoot":"","sources":["../../src/gateways/telegram-response-presenter.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAClC,yCAAiC;AAGjC,6DAM8B;AAE9B,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,kBAAkB,GAAG,gDAA2B,CAAC;AACvD,MAAM,sBAAsB,GAAG,4BAA4B,CAAC;AAC5D,4EAA4E;AAC5E,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAYhC,wEAAwE;AACxE,SAAS,KAAK,CAAC,IAAY;IACzB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAChC,CAAC;AAaD,SAAS,+BAA+B,CAAC,IAAY;IACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACtC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY;IAC3C,IAAI,QAAQ,GAAG,IAAI,CAAC,OAAO,CACzB,8DAA8D,EAC9D,cAAc,CACf,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAA,gBAAI,EAAC,IAAA,iBAAO,GAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAChG,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,MAAM,WAAW,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACvE,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,eAAe,EAAE,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,MAAM,iBAAiB,GAAG,+BAA+B,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,YAAY,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;QAC5F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,kCAAkC,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,MAAa,yBAAyB;IACnB,WAAW,CAAsB;IACjC,OAAO,CAA0B;IACjC,YAAY,CAA+C;IAC3D,UAAU,CAAS;IACnB,SAAS,CAAS;IAC3B,MAAM,GAAkB,IAAI,CAAC;IAC7B,eAAe,GAAG,EAAE,CAAC;IACrB,UAAU,GAAG,EAAE,CAAC;IAChB,SAAS,GAAyC,IAAI,CAAC;IACvD,YAAY,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAChD,SAAS,GAAG,KAAK,CAAC;IAClB,UAAU,GAAG,KAAK,CAAC;IACV,eAAe,CAAS;IACxB,eAAe,CAAS;IACxB,eAAe,CAAuD;IAEvF,YAAY,OAAgC,EAAE,UAA4C,EAAE;QAC1F,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,SAAS,CAAC;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,mBAAmB,CAAC;QAC5D,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC;QACzD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrD,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IAED,SAAS;QACP,OAAO;YACL,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBAChB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACtC,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC;gBAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,CAAC;YACD,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;gBAClB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACtC,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,KAAK,CAAC;gBAClC,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,CAAC;YACD,cAAc,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;gBAC5C,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBAC9D,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,UAAU,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;gBACnD,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,CAAC;SACF,CAAC;IACJ,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,2CAA2C,CAAC;QAC9D,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,WAAmB;QAChC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,CAAC;YACxB,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;QAChE,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,WAAmB;QAC5C,MAAM,SAAS,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,sBAAsB,CAAC;QACnE,MAAM,MAAM,GAAG,IAAA,0CAAqB,EAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEhF,IAAI,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;YAC7C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACzD,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAChF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACxC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,kEAAkE;YACpE,CAAC;iBAAM,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAClD,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO;YACT,CAAC;iBAAM,CAAC;gBACN,kEAAkE;gBAClE,oEAAoE;gBACpE,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QACD,MAAM,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAe;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAC9E,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,wEAAwE;QACxE,4EAA4E;QAC5E,2EAA2E;QAC3E,4EAA4E;QAC5E,6EAA6E;QAC7E,MAAM,SAAS,GACb,IAAA,0CAAqB,EACnB,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAA,0CAAqB,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EACzE,MAAM,CAAC,gBAAgB,EACvB,IAAI,CAAC,WAAW,CACjB,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACrC,uEAAuE;QACvE,wEAAwE;QACxE,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG;YACd,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACjC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC1C,OAAO,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3F,CAAC,CAAC;SACH,CAAC;QACF,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAEO,iBAAiB;QACvB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,MAA+B,EAAE,UAAU,GAAG,CAAC;QACtE,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAC7B,MAAM,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;YACvC,IAAI,SAAkB,CAAC;YACvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,eAAe,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBACpE,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;oBACjD,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC/B,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;oBACtD,SAAS,GAAG,SAAS,CAAC;oBACtB,MAAM;gBACR,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;wBAAE,MAAM,KAAK,CAAC;oBAC9C,SAAS,GAAG,KAAK,CAAC;gBACpB,CAAC;YACH,CAAC;YACD,IAAI,SAAS;gBAAE,MAAM,SAAS,CAAC;QACjC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,SAAiB,EAAE,SAAkB;QACrE,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;CACF;AAxND,8DAwNC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC;AAQ1E,OAAO,EAGL,KAAK,4BAA4B,EAClC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC;AAQ1E,OAAO,EAGL,KAAK,4BAA4B,EAClC,MAAM,qBAAqB,CAAC;AAgB7B,OAAO,KAAK,EAGV,6BAA6B,EAE9B,MAAM,4CAA4C,CAAC;AAmKpD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,aAAa,EAAE,aAAa,CAAC;IAC7B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxC,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0FAA0F;IAC1F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,SAAS,CAAC,EAAE,4BAA4B,CAAC,WAAW,CAAC,CAAC;IACtD,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yFAAyF;IACzF,iBAAiB,CAAC,EAAE,CAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,KACf;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC/E;AAED,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAE5E,MAAM,WAAW,+BAA+B;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,uBAAuB,CAAC;IACjC,KAAK,EAAE,WAAW,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,QAAQ,CAAC,MAAM,EAAG,UAAU,CAAU;IACtC,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAExE,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,GAAG,CAAoB;IAC/B,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAA4C;IACvE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoC;IACjE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAqB;IAC3D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6D;IAGxF,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,kBAAkB,CAA6B;IAGvD,OAAO,CAAC,iBAAiB,CAA+C;IAGxE,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,gBAAgB,CAAS;IAEjC,SAAS,KAAK,cAAc,IAAI,MAAM,GAAG,IAAI,CAE5C;gBAEW,OAAO,EAAE,sBAAsB;IA4BrC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAuGtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAwBb,aAAa;YA6Eb,cAAc;IAkB5B,4EAA4E;YAC9D,UAAU;YAsBV,cAAc;IAwUtB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvF,gFAAgF;IAC1E,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzF;;;;;;OAMG;IACH,2BAA2B,IAAI,6BAA6B;IAyDtD,yBAAyB,CAC7B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;YAUF,cAAc;IAmEtB,QAAQ,CACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;IAYV,sBAAsB,CAC1B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;IAeV,SAAS,CACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;IAYV,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;YAoBF,gBAAgB;YAqBhB,+BAA+B;IAuC7C,OAAO,CAAC,uBAAuB;IAiD/B,OAAO,CAAC,iBAAiB;IAKzB,kFAAkF;IAClF,2BAA2B,CACzB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,uBAAuB,GAC/B,+BAA+B,GAAG,IAAI;IAkBnC,WAAW,CACf,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC;IAOb,yBAAyB,CAC7B,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC;YASL,cAAc;IAkC5B,YAAY,IAAI,MAAM,GAAG,IAAI;IAI7B,gBAAgB,IAAI,MAAM,GAAG,SAAS;YAIxB,cAAc;CAc7B"}
|