Skip to content

Commit

Permalink
Merge pull request #371 from idearium/safe-promise-esm
Browse files Browse the repository at this point in the history
Convert @idearium/safe-promise to an ESM
  • Loading branch information
smebberson committed Mar 5, 2024
2 parents 8d23897 + 778c6fe commit da01ced
Show file tree
Hide file tree
Showing 7 changed files with 24 additions and 12 deletions.
4 changes: 2 additions & 2 deletions docusaurus/docs/safe-promise.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ $ yarn add -E @idearium/safe-promise@beta

### safePromise

To use `safePromise`, require it from `@idearium/safe-promise`.
To use `safePromise`, import it from `@idearium/safe-promise`.

```js
const safePromise = require('@idearium/safe-promise');
import { safePromise } from '@idearium/safe-promise';
```

This will take a promise and always use `resolve` to return a result in the format `[err, result]`.
Expand Down
6 changes: 6 additions & 0 deletions packages/safe-promise/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"extends": ["../.eslintrc.json"],
"parserOptions": {
"sourceType": "module"
}
}
4 changes: 4 additions & 0 deletions packages/safe-promise/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# @idearium/safe-promise

## v2.0.0

- Converted to ESM.

## v1.0.0

- First version of the package.
4 changes: 1 addition & 3 deletions packages/safe-promise/index.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
'use strict';

const safePromise = (p) =>
export const safePromise = (p) =>
new Promise((resolve) => {
p.then((result) => resolve([null, result])).catch((err) =>
resolve([err])
);
});

module.exports = safePromise;
3 changes: 3 additions & 0 deletions packages/safe-promise/jest.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export default {
transform: {},
};
9 changes: 5 additions & 4 deletions packages/safe-promise/package.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
{
"name": "@idearium/safe-promise",
"version": "1.0.0",
"description": "A packages to make promises safe.",
"version": "2.0.0",
"description": "A package to make promises safe.",
"main": "index.js",
"repository": "https://github.com/idearium/idearium-lib",
"author": "Scott Mebberson <scott@idearium.io>",
"license": "MIT",
"scripts": {
"test": "jest"
}
"test": "node --experimental-vm-modules ../../node_modules/jest/bin/jest.js"
},
"type": "module"
}
6 changes: 3 additions & 3 deletions packages/safe-promise/tests/safe-promise.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'use strict';

const safePromise = require('..');
import { safePromise } from '../index.js';

describe('safePromise', () => {
it('is a function', () => {
Expand All @@ -12,7 +12,7 @@ describe('safePromise', () => {

await expect(safePromise(Promise.resolve('test'))).resolves.toEqual([
null,
'test'
'test',
]);
});

Expand All @@ -22,7 +22,7 @@ describe('safePromise', () => {
const error = new Error('test');

await expect(safePromise(Promise.reject(error))).resolves.toEqual([
error
error,
]);
});
});

0 comments on commit da01ced

Please sign in to comment.