Comparing version 1.0.7 to 1.0.8
@@ -0,1 +1,2 @@ | ||
const dateFormat = require('dateformat') | ||
const UpdateTypes = [ | ||
@@ -56,3 +57,14 @@ 'callback_query', | ||
this.tg = telegram | ||
this.day = dateFormat(new Date().valueOf(Date.now()), "WddHH-MMss").padStart(11, '0') | ||
this.update = update | ||
this.type = Object.keys(update)[1] | ||
var re = update[this.type] | ||
var name = re.from || re.chat | ||
this.chat_id = name.id | ||
this.name = name.username || name.title || name.first_name | ||
delete re.from | ||
delete re.chat | ||
re.date = Date.now() | ||
this.re = re | ||
this.options = options | ||
@@ -59,0 +71,0 @@ this.updateType = UpdateTypes.find((key) => key in this.update) |
const debug = require('debug')('telegraf:client') | ||
const crypto = require('crypto') | ||
const fetch = require('node-fetch').default | ||
//const fs = require('fs') | ||
const https = require('https') | ||
const path = require('path') | ||
const TelegramError = require('./error') | ||
// const MultipartStream = require('./multipart-stream') | ||
// const { isStream } = MultipartStream | ||
@@ -95,3 +97,3 @@ const WEBHOOK_BLACKLIST = [ | ||
const boundary = crypto.randomBytes(32).toString('hex') | ||
const formData = new MultipartStream(boundary) | ||
const tasks = Object.keys(payload).map((key) => attachFormValue(formData, key, payload[key], agent)) | ||
@@ -168,3 +170,6 @@ return Promise.all(tasks).then(() => { | ||
if (media.source) { | ||
if (fs.existsSync(media.source)) { | ||
fileName = media.filename || path.basename(media.source) | ||
media.source = fs.createReadStream(media.source) | ||
} | ||
if (isStream(media.source) || Buffer.isBuffer(media.source)) { | ||
@@ -171,0 +176,0 @@ form.addPart({ |
{ | ||
"_from": "11te", | ||
"_id": "1te@1.0.0", | ||
"_inBundle": false, | ||
"_integrity": "sha512-tqrrLSW8LZrDiGNlkkeprWMvNqvkPQTGVWuAVM1wLtpG43FmzDabhiDg/vkaJDWjm3+K/ET0FQACKzC4mT4ThQ==", | ||
"_location": "/1te", | ||
"_phantomChildren": {}, | ||
"_requested": { | ||
"type": "tag", | ||
"registry": true, | ||
"raw": "1te", | ||
"name": "1te", | ||
"escapedName": "1te", | ||
"rawSpec": "", | ||
"saveSpec": null, | ||
"fetchSpec": "latest" | ||
}, | ||
"_requiredBy": [ | ||
"#USER", | ||
"/" | ||
], | ||
"_resolved": "https://registry.npmjs.org/1te/-/1te-1.0.0.tgz", | ||
"_shasum": "eb29ef980654d28a92c1c4d7a0a7709e037d7aa7", | ||
"_spec": "1te", | ||
"_where": "D:\\1te", | ||
"bundleDependencies": false, | ||
"dependencies": { | ||
"@cfworker/web": "^1.6.5", | ||
"dateformat": "^4.5.1", | ||
"debug": "^4.0.1", | ||
"esm": "^3.2.25", | ||
"firebase-firestore-lite": "^1.0.1", | ||
"isomorphic-unfetch": "^3.1.0", | ||
"minimist": "^1.2.0", | ||
"module-alias": "^2.2.2", | ||
"node-fetch": "^2.2.0", | ||
"sandwich-stream": "^2.0.1", | ||
"telegram-typings": "^3.6.0" | ||
}, | ||
"deprecated": false, | ||
"devDependencies": { | ||
@@ -42,2 +22,5 @@ "@types/node": "^13.1.0", | ||
"scripts": { | ||
"t": "nodemon -r esm test.js", | ||
"precommit": "npm run lint && npm run typecheck && npm test", | ||
"test": "ava test/*", | ||
"typecheck": "tsc" | ||
@@ -47,3 +30,3 @@ }, | ||
"types": "./typings/index.d.ts", | ||
"version": "1.0.7" | ||
"version": "1.0.8" | ||
} |
@@ -7,3 +7,3 @@ const debug = require('debug')('telegraf:core') | ||
const session = require('./session') | ||
const Router = require('./router') | ||
var Router = require('./router') | ||
const Stage = require('./stage') | ||
@@ -15,3 +15,5 @@ const BaseScene = require('./scenes/base') | ||
const { URL } = require('url') | ||
const createTelegrafMiddware = require('./mid/index') | ||
const DEFAULT_OPTIONS = { | ||
@@ -211,2 +213,32 @@ retryAfter: 1, | ||
Router = (o = {}) => | ||
new Proxy(o, { | ||
get: (t, k, c) => k === 'handle' | ||
? async (r, ...a) => { | ||
for (let [p, hs] of t.r.filter(i => i[2] === r.method || i[2] === 'ALL')) { | ||
let m, s, u | ||
if (m = (u = new URL(r.url)).pathname.match(p)) { | ||
r.params = m.groups | ||
r.query = Object.fromEntries(u.searchParams.entries()) | ||
for (let h of hs) { | ||
if ((s = await h(r, ...a)) !== undefined) return s | ||
} | ||
} | ||
} | ||
} | ||
: (p, ...hs) => | ||
(t.r = t.r || []).push([ | ||
`^${(t.base || '')+p | ||
.replace(/(\/?)\*/g, '($1.*)?') | ||
.replace(/\/$/, '') | ||
.replace(/:(\w+)(\?)?(\.)?/g, '$2(?<$1>[^/$3]+)$2$3') | ||
}\/*$`, | ||
hs, | ||
k.toUpperCase(), | ||
]) && c | ||
}) | ||
module.exports = Object.assign(Telegraf, { | ||
@@ -223,3 +255,4 @@ Context, | ||
BaseScene, | ||
session | ||
session, | ||
createTelegrafMiddware | ||
}) |
188937
40
5288
11
+ Added@cfworker/web@^1.6.5
+ Addeddateformat@^4.5.1
+ Addedesm@^3.2.25
+ Addedisomorphic-unfetch@^3.1.0
+ Addedsandwich-stream@^2.0.1
+ Added@cfworker/json-schema@1.12.8(transitive)
+ Added@cfworker/web@1.14.0(transitive)
+ Added@cfworker/worker-types@1.12.3(transitive)
+ Added@cloudflare/workers-types@2.2.2(transitive)
+ Added@types/cookie@0.5.4(transitive)
+ Added@types/html-escaper@3.0.3(transitive)
+ Added@types/statuses@2.0.5(transitive)
+ Addedcookie@0.5.0(transitive)
+ Addeddateformat@4.6.3(transitive)
+ Addedesm@3.2.25(transitive)
+ Addedfirebase-firestore-lite@1.0.3(transitive)
+ Addedhtml-escaper@3.0.3(transitive)
+ Addedisomorphic-unfetch@3.1.0(transitive)
+ Addednegotiator@0.6.4(transitive)
+ Addedpath-to-regexp@6.3.0(transitive)
+ Addedsandwich-stream@2.0.2(transitive)
+ Addedsecure-json-parse@2.7.0(transitive)
+ Addedstatuses@2.0.1(transitive)
+ Addedunfetch@4.2.0(transitive)