Telegram Web K with changes to work inside I2P
https://web.telegram.i2p/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
598 B
25 lines
598 B
/* |
|
* https://github.com/morethanwords/tweb |
|
* Copyright (C) 2019-2021 Eduard Kuzmenko |
|
* https://github.com/morethanwords/tweb/blob/master/LICENSE |
|
*/ |
|
|
|
export default function middlewarePromise(middleware: () => boolean, throwWhat: any = '') { |
|
return <T>(promise: T): T => { |
|
if(!(promise instanceof Promise)) { |
|
if(promise instanceof Error) { |
|
throw promise; |
|
} else { |
|
return promise; |
|
} |
|
} |
|
|
|
return (promise as any as Promise<any>).then((result) => { |
|
if(!middleware()) { |
|
throw throwWhat; |
|
} |
|
|
|
return result; |
|
}) as any; |
|
}; |
|
}
|
|
|