A promise that fires the onProgress callback on incremental progress

const promise = new Promise((resolve, reject, progress) => {
const max = 10;
for(let i = 0; i < max; i++) progress(i / max);
resolve(1);
});

console.log(promise.progress);

promise.onProgress(console.log)
.then(console.log)
.catch(console.error)
.finally(...);

Type Parameters

  • T

Hierarchy

  • Promise<T>
    • PromiseProgress

Constructors

  • Type Parameters

    • T

    Parameters

    • executor: ((resolve: ((value: T) => any), reject: ((reason: any) => void), progress: ((progress: number) => any)) => void)
        • (resolve, reject, progress): void
        • Parameters

          • resolve: ((value: T) => any)
              • (value): any
              • Parameters

                • value: T

                Returns any

          • reject: ((reason: any) => void)
              • (reason): void
              • Parameters

                • reason: any

                Returns void

          • progress: ((progress: number) => any)
              • (progress): any
              • Parameters

                • progress: number

                Returns any

          Returns void

    Returns PromiseProgress<T>

Properties

[toStringTag]: string
[species]: PromiseConstructor

Accessors

  • get progress(): number
  • Returns number

  • set progress(p): void
  • Parameters

    • p: number

    Returns void

Methods

  • Attaches a callback for only the rejection of the Promise.

    Parameters

    • Optionalrej: ((err: any) => any)
        • (err): any
        • Parameters

          • err: any

          Returns any

    Returns PromiseProgress<any>

    A Promise for the completion of the callback.

  • Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The resolved value cannot be modified from the callback.

    Parameters

    • Optionalres: (() => any)
        • (): any
        • Returns any

    Returns PromiseProgress<any>

    A Promise for the completion of the callback.

  • Attaches callbacks for the resolution and/or rejection of the Promise.

    Parameters

    • Optionalres: ((v: T) => any)
        • (v): any
        • Parameters

          Returns any

    • Optionalrej: ((err: any) => any)
        • (err): any
        • Parameters

          • err: any

          Returns any

    Returns PromiseProgress<any>

    A Promise for the completion of which ever callback is executed.

  • Creates a Promise that is resolved with an array of results when all of the provided Promises resolve, or rejected when any Promise is rejected.

    Type Parameters

    • T

    Parameters

    • values: Iterable<T | PromiseLike<T>, any, any>

      An iterable of Promises.

    Returns Promise<Awaited<T>[]>

    A new Promise.

  • Creates a Promise that is resolved with an array of results when all of the provided Promises resolve, or rejected when any Promise is rejected.

    Type Parameters

    • T extends readonly unknown[] | []

    Parameters

    • values: T

      An array of Promises.

    Returns Promise<{
        -readonly [P in string | number | symbol]: Awaited<T[P<P>]>
    }>

    A new Promise.

  • Creates a Promise that is resolved with an array of results when all of the provided Promises resolve or reject.

    Type Parameters

    • T extends readonly unknown[] | []

    Parameters

    • values: T

      An array of Promises.

    Returns Promise<{
        -readonly [P in string | number | symbol]: PromiseSettledResult<Awaited<T[P<P>]>>
    }>

    A new Promise.

  • Creates a Promise that is resolved with an array of results when all of the provided Promises resolve or reject.

    Type Parameters

    • T

    Parameters

    • values: Iterable<T | PromiseLike<T>, any, any>

      An array of Promises.

    Returns Promise<PromiseSettledResult<Awaited<T>>[]>

    A new Promise.

  • The any function returns a promise that is fulfilled by the first given promise to be fulfilled, or rejected with an AggregateError containing an array of rejection reasons if all of the given promises are rejected. It resolves all elements of the passed iterable to promises as it runs this algorithm.

    Type Parameters

    • T extends readonly unknown[] | []

    Parameters

    • values: T

      An array or iterable of Promises.

    Returns Promise<Awaited<T[number]>>

    A new Promise.

  • The any function returns a promise that is fulfilled by the first given promise to be fulfilled, or rejected with an AggregateError containing an array of rejection reasons if all of the given promises are rejected. It resolves all elements of the passed iterable to promises as it runs this algorithm.

    Type Parameters

    • T

    Parameters

    • values: Iterable<T | PromiseLike<T>, any, any>

      An array or iterable of Promises.

    Returns Promise<Awaited<T>>

    A new Promise.

  • Creates a Promise that is resolved or rejected when any of the provided Promises are resolved or rejected.

    Type Parameters

    • T

    Parameters

    • values: Iterable<T | PromiseLike<T>, any, any>

      An iterable of Promises.

    Returns Promise<Awaited<T>>

    A new Promise.

  • Creates a Promise that is resolved or rejected when any of the provided Promises are resolved or rejected.

    Type Parameters

    • T extends readonly unknown[] | []

    Parameters

    • values: T

      An array of Promises.

    Returns Promise<Awaited<T[number]>>

    A new Promise.

  • Creates a new rejected promise for the provided reason.

    Type Parameters

    • T = never

    Parameters

    • Optionalreason: any

      The reason the promise was rejected.

    Returns Promise<T>

    A new rejected Promise.

  • Creates a new resolved promise.

    Returns Promise<void>

    A resolved promise.

  • Creates a new resolved promise for the provided value.

    Type Parameters

    • T

    Parameters

    • value: T

      A promise.

    Returns Promise<Awaited<T>>

    A promise whose internal state matches the provided promise.

  • Creates a new resolved promise for the provided value.

    Type Parameters

    • T

    Parameters

    • value: T | PromiseLike<T>

      A promise.

    Returns Promise<Awaited<T>>

    A promise whose internal state matches the provided promise.

  • Creates a new Promise and returns it in an object, along with its resolve and reject functions.

    Type Parameters

    • T

    Returns PromiseWithResolvers<T>

    An object with the properties promise, resolve, and reject.

    const { promise, resolve, reject } = Promise.withResolvers<T>();