@frogbotai/piece-telegram-bot 0.29.0 → 0.31.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 (49) hide show
  1. package/dist/actions/index.d.ts +5 -5
  2. package/dist/actions/index.d.ts.map +1 -1
  3. package/dist/actions/index.js +165 -91
  4. package/dist/actions/index.js.map +1 -1
  5. package/dist/adapter.js +10 -9
  6. package/dist/adapter.js.map +1 -1
  7. package/dist/client.d.ts.map +1 -1
  8. package/dist/client.js +36 -26
  9. package/dist/client.js.map +1 -1
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +15 -10
  12. package/dist/config.js.map +1 -1
  13. package/dist/define.js +1 -0
  14. package/dist/define.js.map +1 -1
  15. package/dist/files.d.ts.map +1 -1
  16. package/dist/files.js +23 -20
  17. package/dist/files.js.map +1 -1
  18. package/dist/index.d.ts +7 -7
  19. package/dist/index.js +21 -13
  20. package/dist/index.js.map +1 -1
  21. package/dist/questions/index.js +2 -1
  22. package/dist/questions/index.js.map +1 -1
  23. package/dist/questions/keyboard.d.ts.map +1 -1
  24. package/dist/questions/keyboard.js +132 -76
  25. package/dist/questions/keyboard.js.map +1 -1
  26. package/dist/questions/notify.js +38 -23
  27. package/dist/questions/notify.js.map +1 -1
  28. package/dist/questions/parse.js +128 -53
  29. package/dist/questions/parse.js.map +1 -1
  30. package/dist/questions/render.js +21 -5
  31. package/dist/questions/render.js.map +1 -1
  32. package/dist/questions/settled.js +30 -9
  33. package/dist/questions/settled.js.map +1 -1
  34. package/dist/questions/state.js +10 -8
  35. package/dist/questions/state.js.map +1 -1
  36. package/dist/questions/supports.js +2 -1
  37. package/dist/questions/supports.js.map +1 -1
  38. package/dist/questions/telegramThread.js +11 -7
  39. package/dist/questions/telegramThread.js.map +1 -1
  40. package/dist/questions/updated.js +19 -14
  41. package/dist/questions/updated.js.map +1 -1
  42. package/dist/triggers/newUpdate.d.ts +2 -2
  43. package/dist/triggers/newUpdate.d.ts.map +1 -1
  44. package/dist/triggers/newUpdate.js +35 -21
  45. package/dist/triggers/newUpdate.js.map +1 -1
  46. package/dist/webhook.d.ts.map +1 -1
  47. package/dist/webhook.js +8 -7
  48. package/dist/webhook.js.map +1 -1
  49. package/package.json +4 -4
@@ -10,41 +10,53 @@ const DESCRIPTION_LIMIT = 512;
10
10
  const BUTTON_LIMIT = 48;
11
11
  const PAIRED_BUTTON_LIMIT = 20;
12
12
  export const actionIds = {
13
- choose: (q, index) => `q:${q}:o:${index}`,
14
- toggle: (q, index) => `q:${q}:t:${index}`,
15
- page: (q, page) => `q:${q}:p:${page}`,
16
- done: (q) => `q:${q}:d`,
17
- type: (q) => `q:${q}:c`,
18
- back: (q) => `q:${q}:b`,
19
- dismiss: 'q:x',
13
+ choose: (q, index)=>`q:${q}:o:${index}`,
14
+ toggle: (q, index)=>`q:${q}:t:${index}`,
15
+ page: (q, page)=>`q:${q}:p:${page}`,
16
+ done: (q)=>`q:${q}:d`,
17
+ type: (q)=>`q:${q}:c`,
18
+ back: (q)=>`q:${q}:b`,
19
+ dismiss: 'q:x'
20
20
  };
21
21
  const ACTION_PATTERN = /^q:(\d{1,4}):(?:([otp]):(\d{1,6})|([dcb]))$/;
22
- const INDEXED_KINDS = { o: 'choose', t: 'toggle' };
23
- const PLAIN_KINDS = { d: 'done', c: 'type', b: 'back' };
22
+ const INDEXED_KINDS = {
23
+ o: 'choose',
24
+ t: 'toggle'
25
+ };
26
+ const PLAIN_KINDS = {
27
+ d: 'done',
28
+ c: 'type',
29
+ b: 'back'
30
+ };
24
31
  export function decodeAction(data) {
25
- if (data === actionIds.dismiss)
26
- return { kind: 'dismiss' };
32
+ if (data === actionIds.dismiss) return {
33
+ kind: 'dismiss'
34
+ };
27
35
  const match = data?.match(ACTION_PATTERN);
28
- if (!match)
29
- return undefined;
36
+ if (!match) return undefined;
30
37
  const [, q, indexed, value, plain] = match;
31
- if (plain)
32
- return { kind: PLAIN_KINDS[plain], q: Number(q) };
33
- if (indexed === 'p')
34
- return { kind: 'page', q: Number(q), page: Number(value) };
38
+ if (plain) return {
39
+ kind: PLAIN_KINDS[plain],
40
+ q: Number(q)
41
+ };
42
+ if (indexed === 'p') return {
43
+ kind: 'page',
44
+ q: Number(q),
45
+ page: Number(value)
46
+ };
35
47
  return {
36
48
  kind: INDEXED_KINDS[indexed],
37
49
  q: Number(q),
38
- index: Number(value),
50
+ index: Number(value)
39
51
  };
40
52
  }
41
53
  export function optionPages(item) {
42
54
  const pages = [];
43
55
  let page = [];
44
56
  let used = 0;
45
- item.options.forEach((option, index) => {
57
+ item.options.forEach((option, index)=>{
46
58
  const size = (optionLine(option)?.plain.length ?? 0) + 1;
47
- const full = page.length === OPTIONS_PER_PAGE || (page.length > 0 && used + size > OPTION_BUDGET);
59
+ const full = page.length === OPTIONS_PER_PAGE || page.length > 0 && used + size > OPTION_BUDGET;
48
60
  if (full) {
49
61
  pages.push(page);
50
62
  page = [];
@@ -56,77 +68,95 @@ export function optionPages(item) {
56
68
  pages.push(page);
57
69
  return pages;
58
70
  }
59
- export function questionMessage({ call, state, }) {
71
+ export function questionMessage({ call, state }) {
60
72
  const { questions } = call.input;
61
73
  const item = questions[state.q];
62
74
  const pages = optionPages(item);
63
75
  const pageIndex = Math.min(state.page, pages.length - 1);
64
76
  const page = pages[pageIndex];
65
- const title = questions.length > 1
66
- ? join(bold(item.header), text(` · ${state.q + 1} of ${questions.length}`))
67
- : bold(item.header);
68
- const lines = [title, text(truncate(item.question, QUESTION_LIMIT))];
77
+ const title = questions.length > 1 ? join(bold(item.header), text(` · ${state.q + 1} of ${questions.length}`)) : bold(item.header);
78
+ const lines = [
79
+ title,
80
+ text(truncate(item.question, QUESTION_LIMIT))
81
+ ];
69
82
  if (state.typing) {
70
- const selected = selectedLabels({ item, selected: state.selected });
83
+ const selected = selectedLabels({
84
+ item,
85
+ selected: state.selected
86
+ });
71
87
  if (selected.length > 0) {
72
88
  lines.push(blank(), text(truncate(`Selected: ${selected.join(', ')}`, SELECTED_LIMIT)));
73
89
  }
74
90
  lines.push(blank(), italic('Reply to this message with your answer.'));
75
91
  return message(lines, [
76
- [button('‹ Back', actionIds.back(state.q)), button('Dismiss', actionIds.dismiss)],
92
+ [
93
+ button('‹ Back', actionIds.back(state.q)),
94
+ button('Dismiss', actionIds.dismiss)
95
+ ]
77
96
  ]);
78
97
  }
79
- const details = page.flatMap((index) => optionLine(item.options[index]) ?? []);
80
- if (details.length > 0)
81
- lines.push(blank(), ...details);
98
+ const details = page.flatMap((index)=>optionLine(item.options[index]) ?? []);
99
+ if (details.length > 0) lines.push(blank(), ...details);
82
100
  const hints = [
83
- ...(item.multiple ? ['Select all that apply, then tap Done.'] : []),
84
- ...(pages.length > 1
85
- ? [`Options ${page[0] + 1}–${page.at(-1) + 1} of ${item.options.length}.`]
86
- : []),
101
+ ...item.multiple ? [
102
+ 'Select all that apply, then tap Done.'
103
+ ] : [],
104
+ ...pages.length > 1 ? [
105
+ `Options ${page[0] + 1}–${page.at(-1) + 1} of ${item.options.length}.`
106
+ ] : []
87
107
  ];
88
- if (hints.length > 0)
89
- lines.push(blank(), italic(hints.join(' ')));
90
- const options = page.map((index) => {
108
+ if (hints.length > 0) lines.push(blank(), italic(hints.join(' ')));
109
+ const options = page.map((index)=>{
91
110
  const label = truncate(item.options[index].label, BUTTON_LIMIT);
92
- if (!item.multiple)
93
- return button(label, actionIds.choose(state.q, index));
111
+ if (!item.multiple) return button(label, actionIds.choose(state.q, index));
94
112
  const mark = state.selected.includes(index) ? '☑' : '☐';
95
113
  return button(`${mark} ${label}`, actionIds.toggle(state.q, index));
96
114
  });
97
- const paired = page.every((index) => Array.from(item.options[index].label).length <= PAIRED_BUTTON_LIMIT);
115
+ const paired = page.every((index)=>Array.from(item.options[index].label).length <= PAIRED_BUTTON_LIMIT);
98
116
  const navigation = [
99
- ...(pageIndex > 0 ? [button('‹ Prev', actionIds.page(state.q, pageIndex - 1))] : []),
100
- ...(pageIndex < pages.length - 1
101
- ? [button('Next ›', actionIds.page(state.q, pageIndex + 1))]
102
- : []),
117
+ ...pageIndex > 0 ? [
118
+ button('‹ Prev', actionIds.page(state.q, pageIndex - 1))
119
+ ] : [],
120
+ ...pageIndex < pages.length - 1 ? [
121
+ button('Next ›', actionIds.page(state.q, pageIndex + 1))
122
+ ] : []
103
123
  ];
104
124
  const rows = [
105
125
  ...chunk(options, paired ? 2 : 1),
106
- ...(navigation.length > 0 ? [navigation] : []),
107
- ...(item.multiple ? [[button('Done', actionIds.done(state.q))]] : []),
126
+ ...navigation.length > 0 ? [
127
+ navigation
128
+ ] : [],
129
+ ...item.multiple ? [
130
+ [
131
+ button('Done', actionIds.done(state.q))
132
+ ]
133
+ ] : [],
108
134
  [
109
- ...(item.custom ? [button('Type your answer', actionIds.type(state.q))] : []),
110
- button('Dismiss', actionIds.dismiss),
111
- ],
135
+ ...item.custom ? [
136
+ button('Type your answer', actionIds.type(state.q))
137
+ ] : [],
138
+ button('Dismiss', actionIds.dismiss)
139
+ ]
112
140
  ];
113
141
  return message(lines, rows);
114
142
  }
115
- export function settledMessage({ actor, answers, call, }) {
116
- const blocks = call.input.questions.map((item, q) => {
143
+ export function settledMessage({ actor, answers, call }) {
144
+ const blocks = call.input.questions.map((item, q)=>{
117
145
  const answer = answers?.[q];
118
146
  return [
119
147
  bold(item.header),
120
148
  text(truncate(item.question, SETTLED_QUESTION_LIMIT)),
121
- ...(answer ? [text(`✅ ${truncate(answerText(answer), ANSWER_LIMIT)}`)] : []),
149
+ ...answer ? [
150
+ text(`✅ ${truncate(answerText(answer), ANSWER_LIMIT)}`)
151
+ ] : []
122
152
  ];
123
153
  });
124
154
  const verb = answers ? 'Answered' : '🚫 Dismissed';
125
155
  const footer = italic(actor ? `${verb} by ${actor}` : verb);
126
156
  const lines = [];
127
157
  let used = footer.plain.length + 2;
128
- for (const block of blocks) {
129
- const size = block.reduce((total, line) => total + line.plain.length + 1, 1);
158
+ for (const block of blocks){
159
+ const size = block.reduce((total, line)=>total + line.plain.length + 1, 1);
130
160
  if (used + size > TEXT_BUDGET) {
131
161
  lines.push(text('…'), blank());
132
162
  break;
@@ -134,55 +164,78 @@ export function settledMessage({ actor, answers, call, }) {
134
164
  lines.push(...block, blank());
135
165
  used += size;
136
166
  }
137
- return message([...lines, footer], []);
138
- }
139
- export function selectedLabels({ item, selected, }) {
140
- return [...selected]
141
- .sort((a, b) => a - b)
142
- .flatMap((index) => (item.options[index] ? [item.options[index].label] : []));
167
+ return message([
168
+ ...lines,
169
+ footer
170
+ ], []);
171
+ }
172
+ export function selectedLabels({ item, selected }) {
173
+ return [
174
+ ...selected
175
+ ].sort((a, b)=>a - b).flatMap((index)=>item.options[index] ? [
176
+ item.options[index].label
177
+ ] : []);
143
178
  }
144
179
  export function escapeHTML(value) {
145
180
  return value.replaceAll('&', '&amp;').replaceAll('<', '&lt;').replaceAll('>', '&gt;');
146
181
  }
147
182
  function optionLine(option) {
148
183
  const long = Array.from(option.label).length > BUTTON_LIMIT;
149
- if (!option.description && !long)
150
- return undefined;
184
+ if (!option.description && !long) return undefined;
151
185
  const label = bold(truncate(option.label, LABEL_LIMIT));
152
- return option.description
153
- ? join(text('• '), label, text(` — ${truncate(option.description, DESCRIPTION_LIMIT)}`))
154
- : join(text('• '), label);
186
+ return option.description ? join(text('• '), label, text(` — ${truncate(option.description, DESCRIPTION_LIMIT)}`)) : join(text('• '), label);
155
187
  }
156
188
  function answerText({ custom, selected }) {
157
- return [...selected, ...(custom ? [`“${custom}”`] : [])].join(', ');
189
+ return [
190
+ ...selected,
191
+ ...custom ? [
192
+ `“${custom}”`
193
+ ] : []
194
+ ].join(', ');
158
195
  }
159
196
  function message(lines, rows) {
160
197
  return {
161
- text: lines.map(({ html }) => html).join('\n'),
198
+ text: lines.map(({ html })=>html).join('\n'),
162
199
  parse_mode: 'HTML',
163
- link_preview_options: { is_disabled: true },
164
- reply_markup: { inline_keyboard: rows },
200
+ link_preview_options: {
201
+ is_disabled: true
202
+ },
203
+ reply_markup: {
204
+ inline_keyboard: rows
205
+ }
165
206
  };
166
207
  }
167
208
  function button(label, data) {
168
- return { text: label, callback_data: data };
209
+ return {
210
+ text: label,
211
+ callback_data: data
212
+ };
169
213
  }
170
214
  function text(value) {
171
- return { plain: value, html: escapeHTML(value) };
215
+ return {
216
+ plain: value,
217
+ html: escapeHTML(value)
218
+ };
172
219
  }
173
220
  function bold(value) {
174
- return { plain: value, html: `<b>${escapeHTML(value)}</b>` };
221
+ return {
222
+ plain: value,
223
+ html: `<b>${escapeHTML(value)}</b>`
224
+ };
175
225
  }
176
226
  function italic(value) {
177
- return { plain: value, html: `<i>${escapeHTML(value)}</i>` };
227
+ return {
228
+ plain: value,
229
+ html: `<i>${escapeHTML(value)}</i>`
230
+ };
178
231
  }
179
232
  function blank() {
180
233
  return text('');
181
234
  }
182
235
  function join(...lines) {
183
236
  return {
184
- plain: lines.map(({ plain }) => plain).join(''),
185
- html: lines.map(({ html }) => html).join(''),
237
+ plain: lines.map(({ plain })=>plain).join(''),
238
+ html: lines.map(({ html })=>html).join('')
186
239
  };
187
240
  }
188
241
  function truncate(value, limit) {
@@ -190,6 +243,9 @@ function truncate(value, limit) {
190
243
  return characters.length > limit ? `${characters.slice(0, limit - 1).join('')}…` : value;
191
244
  }
192
245
  function chunk(values, size) {
193
- return Array.from({ length: Math.ceil(values.length / size) }, (_, index) => values.slice(index * size, (index + 1) * size));
246
+ return Array.from({
247
+ length: Math.ceil(values.length / size)
248
+ }, (_, index)=>values.slice(index * size, (index + 1) * size));
194
249
  }
250
+
195
251
  //# sourceMappingURL=keyboard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../src/questions/keyboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/questions/keyboard.ts"],"names":["OPTIONS_PER_PAGE","TEXT_BUDGET","OPTION_BUDGET","QUESTION_LIMIT","SETTLED_QUESTION_LIMIT","ANSWER_LIMIT","SELECTED_LIMIT","LABEL_LIMIT","DESCRIPTION_LIMIT","BUTTON_LIMIT","PAIRED_BUTTON_LIMIT","actionIds","choose","q","index","toggle","page","done","type","back","dismiss","ACTION_PATTERN","INDEXED_KINDS","o","t","PLAIN_KINDS","d","c","b","decodeAction","data","kind","match","undefined","indexed","value","plain","Number","optionPages","item","pages","used","options","forEach","option","size","optionLine","length","full","push","questionMessage","call","state","questions","input","pageIndex","Math","min","title","join","bold","header","text","lines","truncate","question","typing","selected","selectedLabels","blank","italic","message","button","details","flatMap","hints","multiple","at","map","label","mark","includes","paired","every","Array","from","navigation","rows","chunk","custom","settledMessage","actor","answers","blocks","answer","answerText","verb","footer","block","reduce","total","line","sort","a","escapeHTML","replaceAll","long","description","html","parse_mode","link_preview_options","is_disabled","reply_markup","inline_keyboard","callback_data","limit","characters","slice","values","ceil","_"],"mappings":"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","file":"keyboard.js"}
@@ -1,49 +1,64 @@
1
1
  import { settledMessage } from './keyboard.js';
2
2
  import { readState } from './state.js';
3
- import { editQuestionMessage, responderName, telegramMessageId, telegramTarget, } from './telegramThread.js';
4
- export const denyTelegramQuestion = ({ client, interaction, question, thread, }) => notify({
5
- client,
6
- interaction,
7
- question,
8
- text: interaction.type === 'message'
9
- ? "You don't have access to answer this question."
10
- : `${responderName(interaction)}, you don't have access to answer this question.`,
11
- threadId: thread.id,
12
- });
13
- export const rejectTelegramQuestion = ({ client, interaction, question, reason, thread, }) => notify({ client, interaction, question, text: reason, threadId: thread.id });
14
- export const staleTelegramQuestion = async ({ call, client, interaction, question, req, thread, }) => {
3
+ import { editQuestionMessage, responderName, telegramMessageId, telegramTarget } from './telegramThread.js';
4
+ export const denyTelegramQuestion = ({ client, interaction, question, thread })=>notify({
5
+ client,
6
+ interaction,
7
+ question,
8
+ text: interaction.type === 'message' ? "You don't have access to answer this question." : `${responderName(interaction)}, you don't have access to answer this question.`,
9
+ threadId: thread.id
10
+ });
11
+ export const rejectTelegramQuestion = ({ client, interaction, question, reason, thread })=>notify({
12
+ client,
13
+ interaction,
14
+ question,
15
+ text: reason,
16
+ threadId: thread.id
17
+ });
18
+ export const staleTelegramQuestion = async ({ call, client, interaction, question, req, thread })=>{
15
19
  if (interaction.type === 'message') {
16
20
  await notify({
17
21
  client,
18
22
  interaction,
19
23
  question,
20
24
  text: 'This question was already answered.',
21
- threadId: thread.id,
25
+ threadId: thread.id
22
26
  });
23
27
  return;
24
28
  }
25
29
  const view = readState(question.state).settled;
26
- if (!view)
27
- return;
30
+ if (!view) return;
28
31
  try {
29
32
  await editQuestionMessage({
30
- body: settledMessage({ ...view, call }),
33
+ body: settledMessage({
34
+ ...view,
35
+ call
36
+ }),
31
37
  client,
32
38
  messageId: question.messages.at(-1).id,
33
- threadId: thread.id,
39
+ threadId: thread.id
34
40
  });
35
- }
36
- catch (error) {
37
- req.frogbot.logger.error({ err: error, piece: 'telegramBot', toolCallId: call.toolCallId }, '[piece-telegram-bot] Could not restore an answered question.');
41
+ } catch (error) {
42
+ req.frogbot.logger.error({
43
+ err: error,
44
+ piece: 'telegramBot',
45
+ toolCallId: call.toolCallId
46
+ }, '[piece-telegram-bot] Could not restore an answered question.');
38
47
  }
39
48
  };
40
- async function notify({ client, interaction, question, text, threadId, }) {
49
+ async function notify({ client, interaction, question, text, threadId }) {
41
50
  const replyTo = interaction.type === 'message' ? interaction.message.id : question.messages.at(-1).id;
42
51
  await client.call('sendMessage', {
43
52
  ...telegramTarget(threadId),
44
53
  text,
45
- link_preview_options: { is_disabled: true },
46
- reply_parameters: { message_id: telegramMessageId(replyTo), allow_sending_without_reply: true },
54
+ link_preview_options: {
55
+ is_disabled: true
56
+ },
57
+ reply_parameters: {
58
+ message_id: telegramMessageId(replyTo),
59
+ allow_sending_without_reply: true
60
+ }
47
61
  });
48
62
  }
63
+
49
64
  //# sourceMappingURL=notify.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"notify.js","sourceRoot":"","sources":["../../src/questions/notify.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAI7B,MAAM,CAAC,MAAM,oBAAoB,GAAgC,CAAC,EAChE,MAAM,EACN,WAAW,EACX,QAAQ,EACR,MAAM,GACP,EAAE,EAAE,CACH,MAAM,CAAC;IACL,MAAM;IACN,WAAW;IACX,QAAQ;IACR,IAAI,EACF,WAAW,CAAC,IAAI,KAAK,SAAS;QAC5B,CAAC,CAAC,gDAAgD;QAClD,CAAC,CAAC,GAAG,aAAa,CAAC,WAAW,CAAC,kDAAkD;IACrF,QAAQ,EAAE,MAAM,CAAC,EAAE;CACpB,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,sBAAsB,GAAkC,CAAC,EACpE,MAAM,EACN,WAAW,EACX,QAAQ,EACR,MAAM,EACN,MAAM,GACP,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;AAEnF,MAAM,CAAC,MAAM,qBAAqB,GAA+B,KAAK,EAAE,EACtE,IAAI,EACJ,MAAM,EACN,WAAW,EACX,QAAQ,EACR,GAAG,EACH,MAAM,GACP,EAAE,EAAE;IACH,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,MAAM,CAAC;YACX,MAAM;YACN,WAAW;YACX,QAAQ;YACR,IAAI,EAAE,qCAAqC;YAC3C,QAAQ,EAAE,MAAM,CAAC,EAAE;SACpB,CAAC,CAAC;QAEH,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;IAE/C,IAAI,CAAC,IAAI;QAAE,OAAO;IAElB,IAAI,CAAC;QACH,MAAM,mBAAmB,CAAC;YACxB,IAAI,EAAE,cAAc,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;YACvC,MAAM;YACN,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE;YACvC,QAAQ,EAAE,MAAM,CAAC,EAAE;SACpB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACtB,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,EACjE,8DAA8D,CAC/D,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,KAAK,UAAU,MAAM,CAAC,EACpB,MAAM,EACN,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,QAAQ,GAOT;IACC,MAAM,OAAO,GACX,WAAW,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;IAEzF,MAAM,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE;QAC/B,GAAG,cAAc,CAAC,QAAQ,CAAC;QAC3B,IAAI;QACJ,oBAAoB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;QAC3C,gBAAgB,EAAE,EAAE,UAAU,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,2BAA2B,EAAE,IAAI,EAAE;KAChG,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"sources":["../../src/questions/notify.ts"],"names":["settledMessage","readState","editQuestionMessage","responderName","telegramMessageId","telegramTarget","denyTelegramQuestion","client","interaction","question","thread","notify","text","type","threadId","id","rejectTelegramQuestion","reason","staleTelegramQuestion","call","req","view","state","settled","body","messageId","messages","at","error","frogbot","logger","err","piece","toolCallId","replyTo","message","link_preview_options","is_disabled","reply_parameters","message_id","allow_sending_without_reply"],"mappings":"AAGA,SAASA,cAAc,QAAQ,gBAAgB;AAC/C,SAASC,SAAS,QAAQ,aAAa;AACvC,SACEC,mBAAmB,EACnBC,aAAa,EACbC,iBAAiB,EACjBC,cAAc,QACT,sBAAsB;AAI7B,OAAO,MAAMC,uBAAoD,CAAC,EAChEC,MAAM,EACNC,WAAW,EACXC,QAAQ,EACRC,MAAM,EACP,GACCC,OAAO;QACLJ;QACAC;QACAC;QACAG,MACEJ,YAAYK,IAAI,KAAK,YACjB,mDACA,GAAGV,cAAcK,aAAa,gDAAgD,CAAC;QACrFM,UAAUJ,OAAOK,EAAE;IACrB,GAAG;AAEL,OAAO,MAAMC,yBAAwD,CAAC,EACpET,MAAM,EACNC,WAAW,EACXC,QAAQ,EACRQ,MAAM,EACNP,MAAM,EACP,GAAKC,OAAO;QAAEJ;QAAQC;QAAaC;QAAUG,MAAMK;QAAQH,UAAUJ,OAAOK,EAAE;IAAC,GAAG;AAEnF,OAAO,MAAMG,wBAAoD,OAAO,EACtEC,IAAI,EACJZ,MAAM,EACNC,WAAW,EACXC,QAAQ,EACRW,GAAG,EACHV,MAAM,EACP;IACC,IAAIF,YAAYK,IAAI,KAAK,WAAW;QAClC,MAAMF,OAAO;YACXJ;YACAC;YACAC;YACAG,MAAM;YACNE,UAAUJ,OAAOK,EAAE;QACrB;QAEA;IACF;IAEA,MAAMM,OAAOpB,UAAUQ,SAASa,KAAK,EAAEC,OAAO;IAE9C,IAAI,CAACF,MAAM;IAEX,IAAI;QACF,MAAMnB,oBAAoB;YACxBsB,MAAMxB,eAAe;gBAAE,GAAGqB,IAAI;gBAAEF;YAAK;YACrCZ;YACAkB,WAAWhB,SAASiB,QAAQ,CAACC,EAAE,CAAC,CAAC,GAAIZ,EAAE;YACvCD,UAAUJ,OAAOK,EAAE;QACrB;IACF,EAAE,OAAOa,OAAO;QACdR,IAAIS,OAAO,CAACC,MAAM,CAACF,KAAK,CACtB;YAAEG,KAAKH;YAAOI,OAAO;YAAeC,YAAYd,KAAKc,UAAU;QAAC,GAChE;IAEJ;AACF,EAAE;AAEF,eAAetB,OAAO,EACpBJ,MAAM,EACNC,WAAW,EACXC,QAAQ,EACRG,IAAI,EACJE,QAAQ,EAOT;IACC,MAAMoB,UACJ1B,YAAYK,IAAI,KAAK,YAAYL,YAAY2B,OAAO,CAACpB,EAAE,GAAGN,SAASiB,QAAQ,CAACC,EAAE,CAAC,CAAC,GAAIZ,EAAE;IAExF,MAAMR,OAAOY,IAAI,CAAC,eAAe;QAC/B,GAAGd,eAAeS,SAAS;QAC3BF;QACAwB,sBAAsB;YAAEC,aAAa;QAAK;QAC1CC,kBAAkB;YAAEC,YAAYnC,kBAAkB8B;YAAUM,6BAA6B;QAAK;IAChG;AACF","file":"notify.js"}