Socket
Book a DemoInstallSign in
Socket

@xylabs/promise

Package Overview
Dependencies
Maintainers
5
Versions
450
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@xylabs/promise

Base functionality used throughout XY Labs TypeScript/JavaScript libraries

latest
Source
npmnpm
Version
5.0.22
Version published
Weekly downloads
7.8K
-23.64%
Maintainers
5
Weekly downloads
 
Created
Source

@xylabs/promise

logo

main-build npm-badge npm-downloads-badge jsdelivr-badge npm-license-badge codacy-badge codeclimate-badge snyk-badge socket-badge

Base functionality used throughout XY Labs TypeScript/JavaScript libraries

Reference

@xylabs/promise

Classes

  • PromiseEx

Interfaces

Type Aliases

Functions

classes

PromiseEx

@xylabs/promise

Extends

  • Promise<T>

Type Parameters

T

T

V

V = void

Constructors

Constructor

new PromiseEx<T, V>(func, value?): PromiseEx<T, V>;

Parameters

func

PromiseExFunc<T>

value?

V

Returns

PromiseEx<T, V>

Overrides

Promise<T>.constructor

Properties

cancelled?

optional cancelled: boolean;

Methods

then()

then<TResult1, TResult2>(
   onfulfilled?, 
   onrejected?, 
onvalue?): Promise<TResult1 | TResult2>;

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

Type Parameters

TResult1

TResult1 = T

TResult2

TResult2 = never

Parameters

onfulfilled?

The callback to execute when the Promise is resolved.

null | (value) => TResult1 | PromiseLike<TResult1>

onrejected?

The callback to execute when the Promise is rejected.

null | (reason) => TResult2 | PromiseLike<TResult2>

onvalue?

(value?) => boolean

Returns

Promise<TResult1 | TResult2>

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

Overrides

Promise.then

value()

value(onvalue?): PromiseEx<T, V>;

Parameters

onvalue?

(value?) => boolean

Returns

PromiseEx<T, V>

functions

fulfilled

@xylabs/promise

function fulfilled<T>(val): val is PromiseFulfilledResult<T>;

For use with Promise.allSettled to filter only successful results

Type Parameters

T

T

Parameters

val

PromiseSettledResult<T>

Returns

val is PromiseFulfilledResult<T>

fulfilledValues

@xylabs/promise

function fulfilledValues<T>(previousValue, currentValue): T[];

For use with Promise.allSettled to reduce to only successful result values

Type Parameters

T

T

Parameters

previousValue

T[]

currentValue

PromiseSettledResult<T>

Returns

T[]

Examples

const resolved = Promise.resolve('resolved')
const rejected = Promise.reject('rejected')
const settled = await Promise.allSettled([resolved, rejected])
const results = settled.reduce(fulfilledValues, [] as string[])
// results === [ 'resolved' ]
const resolved = Promise.resolve('resolved')
const rejected = Promise.reject('rejected')
const settled = await Promise.allSettled([resolved, rejected])
const results = settled.reduce<string[]>(fulfilledValues, [])
// results === [ 'resolved' ]

isPromise

@xylabs/promise

function isPromise(value): value is Promise<unknown>;

Parameters

value

unknown

Returns

value is Promise<unknown>

rejected

@xylabs/promise

function rejected<T>(val): val is PromiseRejectedResult;

For use with Promise.allSettled to filter only rejected results

Type Parameters

T

T

Parameters

val

PromiseSettledResult<T>

Returns

val is PromiseRejectedResult

toPromise

@xylabs/promise

function toPromise<T>(value): Promise<T>;

Type Parameters

T

T

Parameters

value

Promisable<T>

Returns

Promise<T>

interfaces

PromiseType

@xylabs/promise

Properties

then()

then: () => unknown;

Returns

unknown

type-aliases

AnyNonPromise

@xylabs/promise

type AnyNonPromise = Exclude<TypedValue, PromiseType>;

AsyncMutex

@xylabs/promise

type AsyncMutex<T> = Promise<T>;

Type Parameters

T

T

Description

Used to document promises that are being used as Mutexes

NullablePromisable

@xylabs/promise

type NullablePromisable<T, V> = Promisable<T | null, V>;

Type Parameters

T

T

V

V = never

NullablePromisableArray

@xylabs/promise

type NullablePromisableArray<T, V> = PromisableArray<T | null, V>;

Type Parameters

T

T

V

V = never

OptionalPromisable

@xylabs/promise

type OptionalPromisable<T, V> = Promisable<T | undefined, V>;

Type Parameters

T

T

V

V = never

OptionalPromisableArray

@xylabs/promise

type OptionalPromisableArray<T, V> = PromisableArray<T | undefined, V>;

Type Parameters

T

T

V

V = never

Promisable

@xylabs/promise

type Promisable<T, V> = PromiseEx<T, V> | Promise<T> | T;

Type Parameters

T

T

V

V = never

PromisableArray

@xylabs/promise

type PromisableArray<T, V> = Promisable<T[], V>;

Type Parameters

T

T

V

V = never

PromiseExFunc

@xylabs/promise

type PromiseExFunc<T> = (resolve?, reject?) => void;

Type Parameters

T

T

Parameters

resolve?

PromiseExSubFunc<T, void>

reject?

PromiseExSubFunc<T, void>

Returns

void

PromiseExSubFunc

@xylabs/promise

type PromiseExSubFunc<T, TResult> = (value) => TResult;

Type Parameters

T

T

TResult

TResult = T

Parameters

value

T

Returns

TResult

PromiseExValueFunc

@xylabs/promise

type PromiseExValueFunc<V> = (value?) => boolean;

Type Parameters

V

V

Parameters

value?

V

Returns

boolean

Part of sdk-js

Maintainers

License

See the LICENSE file for license details

Credits

Made with 🔥 and ❄️ by XYLabs

Keywords

promise

FAQs

Package last updated on 10 Nov 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts