Observed since 20 Oct, 20:19 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
4z-stated-promise
A Promise class with a state property
StatedPromise is a JavaScript class that wraps and mimic standard promises with the ability to get their state, result and error synchronously using additional properties.
Using yarn :
yarn add 4z-stated-promise
Using npm :
npm install 4z-stated-promise
The StatedPromise class is used similarly to the original Promise class, you simply need to add Stated as a prefix when using it :
import StatedPromise from "4z-stated-promise";
const p1 = new StatedPromise((resolve, reject) => {
resolve(true);
});
const p2 = new StatedPromise((resolve, reject) => {
setTimeout(resolve, 500, true);
});
The StatedPromise class can also be used with CommonJS :
const StatedPromise = require("4z-stated-promise");
(...)
You can access the state, result, and reason of the rejection using the properties :
console.log(p1.state);
console.log(p1.result);
console.log(p1.reason)
...or export as JSON :
console.log(p1.toJSON());
Promise static functions are also usable :
StatedPromise.all([
new Promise(resolve => resolve(true))
new Promise(resolve => setTimeout(resolve, 500, true))
]);
It is compatible with the following module formats:
/src/index.d.ts)The UMD version with sourcemaps for web browser is available at /dist/4z-stated-promise.min.js.
You can find usage examples in the /src/examples directory.
This project is licensed under the MIT License.
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
@rollup/plugin-terserEnvironment{
"local_name": "@rollup/plugin-terser",
"alias": false,
"peer_metadata": null
} | ^0.4.4 | development |
rollupEnvironment{
"local_name": "rollup",
"alias": false,
"peer_metadata": null
} | ^4.12.0 | development |
rollup-plugin-licenseEnvironment{
"local_name": "rollup-plugin-license",
"alias": false,
"peer_metadata": null
} | ^3.2.0 | development |
Source distribution
{
"integrity": "sha512-Qpnjs7bmhOmI7KKrQXqIWKYUwdLyYm/h+qdclVtGWp/RL7pqpm6T7IX4k18MHVmOhvHTHlWAoC0YmgAT6KreGw==",
"shasum": "9b99b427c3448706e3391521209c2d8a6faf02a2",
"tarball": "https://registry.npmjs.org/4z-stated-promise/-/4z-stated-promise-1.1.0.tgz",
"fileCount": 12,
"unpackedSize": 18064,
"signatures": [
{
"keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
"sig": "MEUCIQCY2ed0xQyYH7ytQbdA4SInJGQT0LSTcvf2BSNGTOU4dwIgf87aCTQ5rO8/H5GBBm9gmQ3rdUOEYkW9sjXlGNTaha8="
}
]
}Shared repository data · GitHub
Observed since 20 Oct, 20:19 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:73f62de6d6eaac03833034137ad104f0c8fb13c00c2d57f0edba2a46b613a9a3