@frogbotai/piece-telegram-bot 0.28.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/index.d.ts +5 -5
- package/dist/actions/index.js +165 -91
- package/dist/actions/index.js.map +1 -1
- package/dist/adapter.js +10 -9
- package/dist/adapter.js.map +1 -1
- package/dist/client.js +36 -26
- package/dist/client.js.map +1 -1
- package/dist/config.js +15 -10
- package/dist/config.js.map +1 -1
- package/dist/define.js +1 -0
- package/dist/define.js.map +1 -1
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +23 -18
- package/dist/files.js.map +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.js +20 -12
- package/dist/index.js.map +1 -1
- package/dist/questions/index.js +2 -1
- package/dist/questions/index.js.map +1 -1
- package/dist/questions/keyboard.js +132 -76
- package/dist/questions/keyboard.js.map +1 -1
- package/dist/questions/notify.js +38 -23
- package/dist/questions/notify.js.map +1 -1
- package/dist/questions/parse.js +128 -53
- package/dist/questions/parse.js.map +1 -1
- package/dist/questions/render.js +21 -5
- package/dist/questions/render.js.map +1 -1
- package/dist/questions/settled.js +30 -9
- package/dist/questions/settled.js.map +1 -1
- package/dist/questions/state.js +10 -8
- package/dist/questions/state.js.map +1 -1
- package/dist/questions/supports.js +2 -1
- package/dist/questions/supports.js.map +1 -1
- package/dist/questions/telegramThread.js +11 -7
- package/dist/questions/telegramThread.js.map +1 -1
- package/dist/questions/updated.js +19 -14
- package/dist/questions/updated.js.map +1 -1
- package/dist/triggers/newUpdate.d.ts +2 -2
- package/dist/triggers/newUpdate.js +35 -21
- package/dist/triggers/newUpdate.js.map +1 -1
- package/dist/webhook.js +8 -7
- package/dist/webhook.js.map +1 -1
- package/package.json +4 -4
|
@@ -13,18 +13,22 @@ const updateTypes = z.enum([
|
|
|
13
13
|
'poll_answer',
|
|
14
14
|
'my_chat_member',
|
|
15
15
|
'chat_member',
|
|
16
|
-
'chat_join_request'
|
|
16
|
+
'chat_join_request'
|
|
17
17
|
]);
|
|
18
|
-
const input = z.object({
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
const input = z.object({
|
|
19
|
+
updateTypes: z.array(updateTypes).default([])
|
|
20
|
+
});
|
|
21
|
+
const jsonValue = z.lazy(()=>z.union([
|
|
22
|
+
z.string(),
|
|
23
|
+
z.number(),
|
|
24
|
+
z.boolean(),
|
|
25
|
+
z.null(),
|
|
26
|
+
z.array(jsonValue),
|
|
27
|
+
z.record(z.string(), jsonValue)
|
|
28
|
+
]));
|
|
29
|
+
const update = z.object({
|
|
30
|
+
update_id: z.number().optional()
|
|
31
|
+
}).catchall(jsonValue);
|
|
28
32
|
export const newUpdate = defineAppTrigger({
|
|
29
33
|
slug: 'newUpdate',
|
|
30
34
|
description: 'Trigger when the bot receives a selected Telegram update.',
|
|
@@ -34,18 +38,28 @@ export const newUpdate = defineAppTrigger({
|
|
|
34
38
|
output: update,
|
|
35
39
|
sample: {
|
|
36
40
|
update_id: 351114420,
|
|
37
|
-
message: {
|
|
41
|
+
message: {
|
|
42
|
+
message_id: 21,
|
|
43
|
+
text: 'Hello world',
|
|
44
|
+
chat: {
|
|
45
|
+
id: 55169542059,
|
|
46
|
+
type: 'private'
|
|
47
|
+
}
|
|
48
|
+
}
|
|
38
49
|
},
|
|
39
|
-
async run({ input, req }) {
|
|
50
|
+
async run ({ input, req }) {
|
|
40
51
|
const delivery = update.parse(req.data);
|
|
41
52
|
const selected = input.updateTypes;
|
|
42
|
-
const matches = selected.length === 0 || selected.some((type)
|
|
43
|
-
if (!matches)
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
53
|
+
const matches = selected.length === 0 || selected.some((type)=>type in delivery);
|
|
54
|
+
if (!matches) return [];
|
|
55
|
+
const dedupeKey = delivery.update_id === undefined ? createHash('sha256').update(JSON.stringify(delivery)).digest('hex') : String(delivery.update_id);
|
|
56
|
+
return [
|
|
57
|
+
{
|
|
58
|
+
dedupeKey,
|
|
59
|
+
data: delivery
|
|
60
|
+
}
|
|
61
|
+
];
|
|
62
|
+
}
|
|
50
63
|
});
|
|
64
|
+
|
|
51
65
|
//# sourceMappingURL=newUpdate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/triggers/newUpdate.ts"],"names":["createHash","z","defineAppTrigger","updateTypes","enum","input","object","array","default","jsonValue","lazy","union","string","number","boolean","null","record","update","update_id","optional","catchall","newUpdate","slug","description","type","event","output","sample","message","message_id","text","chat","id","run","req","delivery","parse","data","selected","matches","length","some","dedupeKey","undefined","JSON","stringify","digest","String"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAc;AAGzC,SAASC,CAAC,QAAQ,MAAM;AAExB,SAASC,gBAAgB,QAAQ,eAAe;AAEhD,MAAMC,cAAcF,EAAEG,IAAI,CAAC;IACzB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,MAAMC,QAAQJ,EAAEK,MAAM,CAAC;IAAEH,aAAaF,EAAEM,KAAK,CAACJ,aAAaK,OAAO,CAAC,EAAE;AAAE;AACvE,MAAMC,YAAkCR,EAAES,IAAI,CAAC,IAC7CT,EAAEU,KAAK,CAAC;QACNV,EAAEW,MAAM;QACRX,EAAEY,MAAM;QACRZ,EAAEa,OAAO;QACTb,EAAEc,IAAI;QACNd,EAAEM,KAAK,CAACE;QACRR,EAAEe,MAAM,CAACf,EAAEW,MAAM,IAAIH;KACtB;AAEH,MAAMQ,SAAShB,EAAEK,MAAM,CAAC;IAAEY,WAAWjB,EAAEY,MAAM,GAAGM,QAAQ;AAAG,GAAGC,QAAQ,CAACX;AAEvE,OAAO,MAAMY,YAAYnB,iBAAiB;IACxCoB,MAAM;IACNC,aAAa;IACbC,MAAM;IACNC,OAAO;IACPpB;IACAqB,QAAQT;IACRU,QAAQ;QACNT,WAAW;QACXU,SAAS;YAAEC,YAAY;YAAIC,MAAM;YAAeC,MAAM;gBAAEC,IAAI;gBAAaR,MAAM;YAAU;QAAE;IAC7F;IACA,MAAMS,KAAI,EAAE5B,KAAK,EAAE6B,GAAG,EAAE;QACtB,MAAMC,WAAWlB,OAAOmB,KAAK,CAACF,IAAIG,IAAI;QACtC,MAAMC,WAAWjC,MAAMF,WAAW;QAClC,MAAMoC,UAAUD,SAASE,MAAM,KAAK,KAAKF,SAASG,IAAI,CAAC,CAACjB,OAASA,QAAQW;QAEzE,IAAI,CAACI,SAAS,OAAO,EAAE;QAEvB,MAAMG,YACJP,SAASjB,SAAS,KAAKyB,YACnB3C,WAAW,UAAUiB,MAAM,CAAC2B,KAAKC,SAAS,CAACV,WAAWW,MAAM,CAAC,SAC7DC,OAAOZ,SAASjB,SAAS;QAE/B,OAAO;YAAC;gBAAEwB;gBAAWL,MAAMF;YAAS;SAAE;IACxC;AACF,GAAG","file":"newUpdate.js"}
|
package/dist/webhook.js
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { timingSafeEqual } from 'node:crypto';
|
|
2
|
-
export async function verifyTelegramWebhook({ req, options
|
|
3
|
-
if (!options.webhookSecret)
|
|
4
|
-
return false;
|
|
2
|
+
export async function verifyTelegramWebhook({ req, options }) {
|
|
3
|
+
if (!options.webhookSecret) return false;
|
|
5
4
|
const supplied = req.headers.get('x-telegram-bot-api-secret-token');
|
|
6
|
-
if (!supplied)
|
|
7
|
-
return false;
|
|
5
|
+
if (!supplied) return false;
|
|
8
6
|
const suppliedBytes = Buffer.from(supplied);
|
|
9
7
|
const expectedBytes = Buffer.from(options.webhookSecret);
|
|
10
|
-
return
|
|
8
|
+
return suppliedBytes.length === expectedBytes.length && timingSafeEqual(suppliedBytes, expectedBytes);
|
|
11
9
|
}
|
|
12
10
|
export function parseTelegramWebhook() {
|
|
13
|
-
return {
|
|
11
|
+
return {
|
|
12
|
+
event: 'update'
|
|
13
|
+
};
|
|
14
14
|
}
|
|
15
|
+
|
|
15
16
|
//# sourceMappingURL=webhook.js.map
|
package/dist/webhook.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../src/webhook.ts"],"names":["timingSafeEqual","verifyTelegramWebhook","req","options","webhookSecret","supplied","headers","get","suppliedBytes","Buffer","from","expectedBytes","length","parseTelegramWebhook","event"],"mappings":"AAAA,SAASA,eAAe,QAAQ,cAAc;AAI9C,OAAO,eAAeC,sBAAsB,EAC1CC,GAAG,EACHC,OAAO,EAIR;IACC,IAAI,CAACA,QAAQC,aAAa,EAAE,OAAO;IAEnC,MAAMC,WAAWH,IAAII,OAAO,CAACC,GAAG,CAAC;IAEjC,IAAI,CAACF,UAAU,OAAO;IAEtB,MAAMG,gBAAgBC,OAAOC,IAAI,CAACL;IAClC,MAAMM,gBAAgBF,OAAOC,IAAI,CAACP,QAAQC,aAAa;IAEvD,OACEI,cAAcI,MAAM,KAAKD,cAAcC,MAAM,IAAIZ,gBAAgBQ,eAAeG;AAEpF;AAEA,OAAO,SAASE;IACd,OAAO;QAAEC,OAAO;IAAS;AAC3B","file":"webhook.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frogbotai/piece-telegram-bot",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.30.0",
|
|
4
4
|
"description": "telegram-bot tools for FrogBot.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Colby Gilbert",
|
|
@@ -23,17 +23,17 @@
|
|
|
23
23
|
"zod": "^4.3.6"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
|
-
"frogbot": "0.
|
|
26
|
+
"frogbot": "0.30.0"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"typescript": "5.6.2",
|
|
30
|
-
"frogbot": "0.
|
|
30
|
+
"frogbot": "0.30.0"
|
|
31
31
|
},
|
|
32
32
|
"publishConfig": {
|
|
33
33
|
"access": "public"
|
|
34
34
|
},
|
|
35
35
|
"scripts": {
|
|
36
|
-
"build": "
|
|
36
|
+
"build": "node ../../../scripts/build-package.mjs",
|
|
37
37
|
"clean": "rm -rf dist",
|
|
38
38
|
"typecheck": "tsc --noEmit"
|
|
39
39
|
}
|