First upload version 0.0.1
This commit is contained in:
49
node_modules/@kwsites/promise-deferred/dist/index.d.ts
generated
vendored
Normal file
49
node_modules/@kwsites/promise-deferred/dist/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
/**
|
||||
* The `DeferredPromise` has a `promise` property in an initially pending state,
|
||||
* that will be resolved when the `done` method is called or rejected when the
|
||||
* `fail` method is called.
|
||||
*/
|
||||
export interface DeferredPromise<RESOLVES, REJECTS extends Error = Error> {
|
||||
done(result: RESOLVES): void;
|
||||
fail(error: REJECTS): void;
|
||||
readonly status: DeferredPromiseStatus;
|
||||
readonly fulfilled: boolean;
|
||||
promise: Promise<RESOLVES>;
|
||||
}
|
||||
/**
|
||||
* The three states the DeferredPromise can be in - initially pending then either
|
||||
* resolved or rejected when it is fulfilled.
|
||||
*
|
||||
* ```typescript
|
||||
import {createDeferred, DeferredPromiseStatus} from '@kwsites/promise-deferred`;
|
||||
|
||||
const pending: DeferredPromiseStatus = 'pending';
|
||||
expect(createDeferred()).toHaveProperty('status', pending);
|
||||
```
|
||||
*/
|
||||
export declare type DeferredPromiseStatus = 'pending' | 'resolved' | 'rejected';
|
||||
/**
|
||||
* Creates a new `DeferredPromise`
|
||||
*
|
||||
* ```typescript
|
||||
import {deferred} from '@kwsites/promise-deferred`;
|
||||
```
|
||||
*/
|
||||
export declare function deferred<T extends any = void, E extends Error = Error>(): DeferredPromise<T, E>;
|
||||
/**
|
||||
* Alias of the exported `deferred` function, to help consumers wanting to use `deferred` as the
|
||||
* local variable name rather than the factory import name, without needing to rename on import.
|
||||
*
|
||||
* ```typescript
|
||||
import {createDeferred} from '@kwsites/promise-deferred`;
|
||||
```
|
||||
*/
|
||||
export declare const createDeferred: typeof deferred;
|
||||
/**
|
||||
* Default export allows use as:
|
||||
*
|
||||
* ```typescript
|
||||
import deferred from '@kwsites/promise-deferred`;
|
||||
```
|
||||
*/
|
||||
export default deferred;
|
||||
59
node_modules/@kwsites/promise-deferred/dist/index.js
generated
vendored
Normal file
59
node_modules/@kwsites/promise-deferred/dist/index.js
generated
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.createDeferred = exports.deferred = void 0;
|
||||
/**
|
||||
* Creates a new `DeferredPromise`
|
||||
*
|
||||
* ```typescript
|
||||
import {deferred} from '@kwsites/promise-deferred`;
|
||||
```
|
||||
*/
|
||||
function deferred() {
|
||||
let done;
|
||||
let fail;
|
||||
let status = 'pending';
|
||||
const promise = new Promise((_done, _fail) => {
|
||||
done = _done;
|
||||
fail = _fail;
|
||||
});
|
||||
return {
|
||||
promise,
|
||||
done(result) {
|
||||
if (status === 'pending') {
|
||||
status = 'resolved';
|
||||
done(result);
|
||||
}
|
||||
},
|
||||
fail(error) {
|
||||
if (status === 'pending') {
|
||||
status = 'rejected';
|
||||
fail(error);
|
||||
}
|
||||
},
|
||||
get fulfilled() {
|
||||
return status !== 'pending';
|
||||
},
|
||||
get status() {
|
||||
return status;
|
||||
},
|
||||
};
|
||||
}
|
||||
exports.deferred = deferred;
|
||||
/**
|
||||
* Alias of the exported `deferred` function, to help consumers wanting to use `deferred` as the
|
||||
* local variable name rather than the factory import name, without needing to rename on import.
|
||||
*
|
||||
* ```typescript
|
||||
import {createDeferred} from '@kwsites/promise-deferred`;
|
||||
```
|
||||
*/
|
||||
exports.createDeferred = deferred;
|
||||
/**
|
||||
* Default export allows use as:
|
||||
*
|
||||
* ```typescript
|
||||
import deferred from '@kwsites/promise-deferred`;
|
||||
```
|
||||
*/
|
||||
exports.default = deferred;
|
||||
//# sourceMappingURL=index.js.map
|
||||
1
node_modules/@kwsites/promise-deferred/dist/index.js.map
generated
vendored
Normal file
1
node_modules/@kwsites/promise-deferred/dist/index.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AA0BA;;;;;;GAMG;AACH,SAAgB,QAAQ;IACrB,IAAI,IAAyB,CAAC;IAC9B,IAAI,IAAwB,CAAC;IAC7B,IAAI,MAAM,GAA0B,SAAS,CAAC;IAE9C,MAAM,OAAO,GAAe,IAAI,OAAO,CAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACzD,IAAI,GAAG,KAAK,CAAC;QACb,IAAI,GAAG,KAAK,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO;QACJ,OAAO;QACP,IAAI,CAAE,MAAM;YACT,IAAI,MAAM,KAAK,SAAS,EAAE;gBACvB,MAAM,GAAG,UAAU,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,CAAC;aACf;QACJ,CAAC;QACD,IAAI,CAAE,KAAK;YACR,IAAI,MAAM,KAAK,SAAS,EAAE;gBACvB,MAAM,GAAG,UAAU,CAAC;gBACpB,IAAI,CAAC,KAAK,CAAC,CAAC;aACd;QACJ,CAAC;QACD,IAAI,SAAS;YACV,OAAO,MAAM,KAAK,SAAS,CAAC;QAC/B,CAAC;QACD,IAAI,MAAM;YACP,OAAO,MAAM,CAAC;QACjB,CAAC;KACH,CAAC;AACL,CAAC;AA/BD,4BA+BC;AAED;;;;;;;GAOG;AACU,QAAA,cAAc,GAAG,QAAQ,CAAC;AAEvC;;;;;;GAMG;AACH,kBAAe,QAAQ,CAAC"}
|
||||
Reference in New Issue
Block a user