1 | export const isErrorLike = (val) => !!val && typeof val === 'object' && (!!val.stack || ('message' in val || 'code' in val)) && !('__typename' in val);
|
2 |
|
3 |
|
4 |
|
5 | export const asError = (err) => {
|
6 | if (err instanceof Error) {
|
7 | return err;
|
8 | }
|
9 | if (typeof err === 'object' && err !== null) {
|
10 | return Object.assign(new Error(err.message), err);
|
11 | }
|
12 | return new Error(err);
|
13 | };
|
14 |
|
15 |
|
16 |
|
17 |
|
18 |
|
19 | export const createAggregateError = (errors = []) => Object.assign(new Error(errors.map(e => e.message).join('\n')), {
|
20 | name: 'AggregateError',
|
21 | errors: errors.map(asError),
|
22 | });
|
23 |
|
\ | No newline at end of file |