@prairielearn/error 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/index.d.ts +5 -2
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/index.test.js +6 -1
- package/dist/index.test.js.map +1 -1
- package/package.json +1 -1
- package/src/index.test.ts +7 -1
- package/src/index.ts +8 -4
package/CHANGELOG.md
ADDED
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
interface ErrorWithData extends Error {
|
|
2
2
|
data: any;
|
|
3
3
|
}
|
|
4
|
-
interface ErrorWithStatus extends
|
|
4
|
+
interface ErrorWithStatus extends Error {
|
|
5
5
|
status: number;
|
|
6
6
|
}
|
|
7
|
-
|
|
7
|
+
interface ErrorWithStatusAndData extends ErrorWithData, ErrorWithStatus {
|
|
8
|
+
}
|
|
9
|
+
export declare function make(status: number, message: string): ErrorWithStatus;
|
|
10
|
+
export declare function make(status: number, message: string, data: any): ErrorWithStatusAndData;
|
|
8
11
|
export declare function makeWithData(message: string, data: any): any;
|
|
9
12
|
export declare function addData(err: any, data: any): ErrorWithData;
|
|
10
13
|
export declare function newMessage(err: any, newMsg: string): ErrorWithData;
|
package/dist/index.js
CHANGED
|
@@ -5,12 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.newMessage = exports.addData = exports.makeWithData = exports.make = void 0;
|
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
|
8
|
-
// TODO: rename all functions include "error" in the name so that they can
|
|
9
|
-
// be more easily imported as named imports.
|
|
10
8
|
function make(status, message, data) {
|
|
11
9
|
const err = new Error(message);
|
|
12
10
|
err.status = status;
|
|
13
|
-
|
|
11
|
+
if (data)
|
|
12
|
+
err.data = data;
|
|
14
13
|
return err;
|
|
15
14
|
}
|
|
16
15
|
exports.make = make;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AAiBvB,SAAgB,IAAI,CAAC,MAAc,EAAE,OAAe,EAAE,IAAU;IAC9D,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,CAA2B,CAAC;IACzD,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,IAAI;QAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1B,OAAO,GAAG,CAAC;AACb,CAAC;AALD,oBAKC;AAED,SAAgB,YAAY,CAAC,OAAe,EAAE,IAAS;IACrD,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,CAAkB,CAAC;IAChD,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IAChB,OAAO,GAAG,CAAC;AACb,CAAC;AAJD,oCAIC;AAED,SAAgB,OAAO,CAAC,GAAQ,EAAE,IAAS;IACzC,MAAM,MAAM,GAAkB,IAAA,gBAAC,EAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAChC,gBAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5B,OAAO,MAAM,CAAC;AAChB,CAAC;AALD,0BAKC;AAED,SAAgB,UAAU,CAAC,GAAQ,EAAE,MAAc;IACjD,MAAM,MAAM,GAAkB,IAAA,gBAAC,EAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC;IACpE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,CAAC,OAAO,GAAG,GAAG,MAAM,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;IAChD,OAAO,MAAM,CAAC;AAChB,CAAC;AAPD,gCAOC"}
|
package/dist/index.test.js
CHANGED
|
@@ -3,7 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const chai_1 = require("chai");
|
|
4
4
|
const index_1 = require("./index");
|
|
5
5
|
describe('make', () => {
|
|
6
|
-
it('makes an error
|
|
6
|
+
it('makes an error without data', () => {
|
|
7
|
+
const err = (0, index_1.make)(404, 'Not Found');
|
|
8
|
+
chai_1.assert.equal(err.status, 404);
|
|
9
|
+
chai_1.assert.equal(err.message, 'Not Found');
|
|
10
|
+
});
|
|
11
|
+
it('makes an error with data', () => {
|
|
7
12
|
const err = (0, index_1.make)(404, 'Not Found', { foo: 'bar' });
|
|
8
13
|
chai_1.assert.equal(err.status, 404);
|
|
9
14
|
chai_1.assert.equal(err.message, 'Not Found');
|
package/dist/index.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAE9B,mCAAkE;AAElE,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IACpB,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.test.ts
CHANGED
|
@@ -3,7 +3,13 @@ import { assert } from 'chai';
|
|
|
3
3
|
import { make, makeWithData, addData, newMessage } from './index';
|
|
4
4
|
|
|
5
5
|
describe('make', () => {
|
|
6
|
-
it('makes an error
|
|
6
|
+
it('makes an error without data', () => {
|
|
7
|
+
const err = make(404, 'Not Found');
|
|
8
|
+
assert.equal(err.status, 404);
|
|
9
|
+
assert.equal(err.message, 'Not Found');
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
it('makes an error with data', () => {
|
|
7
13
|
const err = make(404, 'Not Found', { foo: 'bar' });
|
|
8
14
|
assert.equal(err.status, 404);
|
|
9
15
|
assert.equal(err.message, 'Not Found');
|
package/src/index.ts
CHANGED
|
@@ -4,17 +4,21 @@ interface ErrorWithData extends Error {
|
|
|
4
4
|
data: any;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
interface ErrorWithStatus extends
|
|
7
|
+
interface ErrorWithStatus extends Error {
|
|
8
8
|
status: number;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
+
interface ErrorWithStatusAndData extends ErrorWithData, ErrorWithStatus {}
|
|
12
|
+
|
|
11
13
|
// TODO: rename all functions include "error" in the name so that they can
|
|
12
14
|
// be more easily imported as named imports.
|
|
13
15
|
|
|
14
|
-
export function make(status: number, message: string
|
|
15
|
-
|
|
16
|
+
export function make(status: number, message: string): ErrorWithStatus;
|
|
17
|
+
export function make(status: number, message: string, data: any): ErrorWithStatusAndData;
|
|
18
|
+
export function make(status: number, message: string, data?: any): ErrorWithStatusAndData {
|
|
19
|
+
const err = new Error(message) as ErrorWithStatusAndData;
|
|
16
20
|
err.status = status;
|
|
17
|
-
err.data = data;
|
|
21
|
+
if (data) err.data = data;
|
|
18
22
|
return err;
|
|
19
23
|
}
|
|
20
24
|
|