Files
n8n-enterprise-unlocked/packages/workflow/src/DeferredPromise.ts
T
Jan 7b8d388d17 Add Webhook response node (#2254)
* ✨ Add Webhook-Response-Node

* ⚡ Replace callback function with promise

* ✨ Add support for Bull and binary-data

* ✨ Add string response option

* ⚡ Remove some comments

* ✨ Make more generically possible & fix issue multi call in
queue mode

* ⚡ Fix startup and eslint issues

* ⚡ Improvements to webhook response node and functionality

* ⚡ Replace data with more generic type

* ⚡ Make statusMessage optional

* ⚡ Change parameter order

* ⚡ Move Response Code underneath options

* ⚡ Hide Response Code on Webhook node if mode responseNode got selected

* ⚡ Minor improvements

* ⚡ Add missing file and fix lint issue

* ⚡ Fix some node linting issues

* ⚡ Apply feedback

* ⚡ Minor improvements
2021-11-05 10:45:51 -06:00

15 lines
490 B
TypeScript

// From: https://gist.github.com/compulim/8b49b0a744a3eeb2205e2b9506201e50
export interface IDeferredPromise<T> {
promise: () => Promise<T>;
reject: (error: Error) => void;
resolve: (result: T) => void;
}
export async function createDeferredPromise<T>(): Promise<IDeferredPromise<T>> {
return new Promise<IDeferredPromise<T>>((resolveCreate) => {
const promise = new Promise<T>((resolve, reject) => {
resolveCreate({ promise: async () => promise, resolve, reject });
});
});
}