@frontegg/rest-api 7.39.0 → 7.40.0-alpha.0
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/FetchClient.js +11 -3
- package/error.d.ts +7 -1
- package/error.js +11 -1
- package/index.js +1 -1
- package/node/FetchClient.js +11 -3
- package/node/error.js +11 -1
- package/node/index.js +1 -1
- package/package.json +1 -1
- package/reports/interfaces.d.ts +2 -1
package/FetchClient.js
CHANGED
|
@@ -118,11 +118,13 @@ export class FetchClient {
|
|
|
118
118
|
return new Promise(() => {});
|
|
119
119
|
}
|
|
120
120
|
if (!response.ok) {
|
|
121
|
-
var _context$logLevel, _context$logLevel2;
|
|
121
|
+
var _errorMessage, _errorMessage2, _context$logLevel, _context$logLevel2;
|
|
122
122
|
if (response.status === 413) {
|
|
123
|
-
throw new FronteggApiError('Error request is too large', response.status, this.getResponseTraceId(response));
|
|
123
|
+
throw new FronteggApiError('Error request is too large', response.status, this.getResponseTraceId(response), undefined);
|
|
124
124
|
}
|
|
125
125
|
let errorMessage;
|
|
126
|
+
let errorCode;
|
|
127
|
+
let errorContext;
|
|
126
128
|
let isJsonResponse = true;
|
|
127
129
|
try {
|
|
128
130
|
errorMessage = await response.text();
|
|
@@ -130,13 +132,19 @@ export class FetchClient {
|
|
|
130
132
|
} catch (e) {
|
|
131
133
|
isJsonResponse = false;
|
|
132
134
|
}
|
|
135
|
+
if ((_errorMessage = errorMessage) != null && _errorMessage.errorCode) {
|
|
136
|
+
errorCode = errorMessage.errorCode;
|
|
137
|
+
}
|
|
138
|
+
if ((_errorMessage2 = errorMessage) != null && _errorMessage2.errorContext && typeof errorMessage.errorContext === 'object') {
|
|
139
|
+
errorContext = errorMessage.errorContext;
|
|
140
|
+
}
|
|
133
141
|
if (errorMessage.errors) {
|
|
134
142
|
errorMessage = errorMessage.errors.join(', ');
|
|
135
143
|
} else if (typeof errorMessage !== 'string') {
|
|
136
144
|
errorMessage = `Error ${response.status} - ${response.statusText}`;
|
|
137
145
|
}
|
|
138
146
|
if (response.status >= 400 && response.status < 500 && ['warn'].includes((_context$logLevel = context.logLevel) != null ? _context$logLevel : '')) console.warn(errorMessage);else if (response.status === 500 && ['warn', 'error'].includes((_context$logLevel2 = context.logLevel) != null ? _context$logLevel2 : '')) console.error(errorMessage);
|
|
139
|
-
throw new FronteggApiError(isJsonResponse ? errorMessage : GENERIC_ERROR_MESSAGE, response.status, this.getResponseTraceId(response));
|
|
147
|
+
throw new FronteggApiError(isJsonResponse ? errorMessage : GENERIC_ERROR_MESSAGE, response.status, this.getResponseTraceId(response), errorCode, errorContext);
|
|
140
148
|
}
|
|
141
149
|
if (opts.responseType === 'stream') {
|
|
142
150
|
return response.body;
|
package/error.d.ts
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
|
+
export type FronteggErrorCode = string;
|
|
2
|
+
export type FronteggErrorContext = Record<string, unknown>;
|
|
1
3
|
export declare class FronteggApiError extends Error {
|
|
2
4
|
private readonly _statusCode;
|
|
3
5
|
private readonly _traceId;
|
|
4
|
-
|
|
6
|
+
private readonly _errorCode;
|
|
7
|
+
private readonly _errorContext;
|
|
8
|
+
constructor(message: string, statusCode: number, traceId: string | null, errorCode?: FronteggErrorCode, errorContext?: FronteggErrorContext);
|
|
5
9
|
get statusCode(): number;
|
|
6
10
|
get traceId(): string | null;
|
|
11
|
+
get errorCode(): FronteggErrorCode | undefined;
|
|
12
|
+
get errorContext(): FronteggErrorContext | undefined;
|
|
7
13
|
}
|
package/error.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
export class FronteggApiError extends Error {
|
|
2
|
-
constructor(message, statusCode, traceId) {
|
|
2
|
+
constructor(message, statusCode, traceId, errorCode, errorContext) {
|
|
3
3
|
super(message);
|
|
4
4
|
this._statusCode = void 0;
|
|
5
5
|
this._traceId = void 0;
|
|
6
|
+
this._errorCode = void 0;
|
|
7
|
+
this._errorContext = void 0;
|
|
6
8
|
this._statusCode = statusCode;
|
|
7
9
|
this._traceId = traceId;
|
|
10
|
+
this._errorCode = errorCode;
|
|
11
|
+
this._errorContext = errorContext;
|
|
8
12
|
}
|
|
9
13
|
get statusCode() {
|
|
10
14
|
return this._statusCode;
|
|
@@ -12,4 +16,10 @@ export class FronteggApiError extends Error {
|
|
|
12
16
|
get traceId() {
|
|
13
17
|
return this._traceId;
|
|
14
18
|
}
|
|
19
|
+
get errorCode() {
|
|
20
|
+
return this._errorCode;
|
|
21
|
+
}
|
|
22
|
+
get errorContext() {
|
|
23
|
+
return this._errorContext;
|
|
24
|
+
}
|
|
15
25
|
}
|
package/index.js
CHANGED
package/node/FetchClient.js
CHANGED
|
@@ -124,11 +124,13 @@ class FetchClient {
|
|
|
124
124
|
return new Promise(() => {});
|
|
125
125
|
}
|
|
126
126
|
if (!response.ok) {
|
|
127
|
-
var _context$logLevel, _context$logLevel2;
|
|
127
|
+
var _errorMessage, _errorMessage2, _context$logLevel, _context$logLevel2;
|
|
128
128
|
if (response.status === 413) {
|
|
129
|
-
throw new _error.FronteggApiError('Error request is too large', response.status, this.getResponseTraceId(response));
|
|
129
|
+
throw new _error.FronteggApiError('Error request is too large', response.status, this.getResponseTraceId(response), undefined);
|
|
130
130
|
}
|
|
131
131
|
let errorMessage;
|
|
132
|
+
let errorCode;
|
|
133
|
+
let errorContext;
|
|
132
134
|
let isJsonResponse = true;
|
|
133
135
|
try {
|
|
134
136
|
errorMessage = await response.text();
|
|
@@ -136,13 +138,19 @@ class FetchClient {
|
|
|
136
138
|
} catch (e) {
|
|
137
139
|
isJsonResponse = false;
|
|
138
140
|
}
|
|
141
|
+
if ((_errorMessage = errorMessage) != null && _errorMessage.errorCode) {
|
|
142
|
+
errorCode = errorMessage.errorCode;
|
|
143
|
+
}
|
|
144
|
+
if ((_errorMessage2 = errorMessage) != null && _errorMessage2.errorContext && typeof errorMessage.errorContext === 'object') {
|
|
145
|
+
errorContext = errorMessage.errorContext;
|
|
146
|
+
}
|
|
139
147
|
if (errorMessage.errors) {
|
|
140
148
|
errorMessage = errorMessage.errors.join(', ');
|
|
141
149
|
} else if (typeof errorMessage !== 'string') {
|
|
142
150
|
errorMessage = `Error ${response.status} - ${response.statusText}`;
|
|
143
151
|
}
|
|
144
152
|
if (response.status >= 400 && response.status < 500 && ['warn'].includes((_context$logLevel = context.logLevel) != null ? _context$logLevel : '')) console.warn(errorMessage);else if (response.status === 500 && ['warn', 'error'].includes((_context$logLevel2 = context.logLevel) != null ? _context$logLevel2 : '')) console.error(errorMessage);
|
|
145
|
-
throw new _error.FronteggApiError(isJsonResponse ? errorMessage : _constants.GENERIC_ERROR_MESSAGE, response.status, this.getResponseTraceId(response));
|
|
153
|
+
throw new _error.FronteggApiError(isJsonResponse ? errorMessage : _constants.GENERIC_ERROR_MESSAGE, response.status, this.getResponseTraceId(response), errorCode, errorContext);
|
|
146
154
|
}
|
|
147
155
|
if (opts.responseType === 'stream') {
|
|
148
156
|
return response.body;
|
package/node/error.js
CHANGED
|
@@ -5,12 +5,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.FronteggApiError = void 0;
|
|
7
7
|
class FronteggApiError extends Error {
|
|
8
|
-
constructor(message, statusCode, traceId) {
|
|
8
|
+
constructor(message, statusCode, traceId, errorCode, errorContext) {
|
|
9
9
|
super(message);
|
|
10
10
|
this._statusCode = void 0;
|
|
11
11
|
this._traceId = void 0;
|
|
12
|
+
this._errorCode = void 0;
|
|
13
|
+
this._errorContext = void 0;
|
|
12
14
|
this._statusCode = statusCode;
|
|
13
15
|
this._traceId = traceId;
|
|
16
|
+
this._errorCode = errorCode;
|
|
17
|
+
this._errorContext = errorContext;
|
|
14
18
|
}
|
|
15
19
|
get statusCode() {
|
|
16
20
|
return this._statusCode;
|
|
@@ -18,5 +22,11 @@ class FronteggApiError extends Error {
|
|
|
18
22
|
get traceId() {
|
|
19
23
|
return this._traceId;
|
|
20
24
|
}
|
|
25
|
+
get errorCode() {
|
|
26
|
+
return this._errorCode;
|
|
27
|
+
}
|
|
28
|
+
get errorContext() {
|
|
29
|
+
return this._errorContext;
|
|
30
|
+
}
|
|
21
31
|
}
|
|
22
32
|
exports.FronteggApiError = FronteggApiError;
|
package/node/index.js
CHANGED
package/package.json
CHANGED
package/reports/interfaces.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { FronteggApiError } from '../error';
|
|
1
2
|
import { IFronteggRecord } from '../interfaces';
|
|
2
3
|
export interface ReportSchedule {
|
|
3
4
|
interval: 'daily' | 'weekly' | 'monthly' | 'custom';
|
|
@@ -33,7 +34,7 @@ export interface DataFilterText extends DataFilterBase {
|
|
|
33
34
|
placeholder?: string;
|
|
34
35
|
defaultValue?: string;
|
|
35
36
|
validation?: 'email' | 'url' | 'phone' | string;
|
|
36
|
-
validationError?:
|
|
37
|
+
validationError?: FronteggApiError;
|
|
37
38
|
}
|
|
38
39
|
export interface DataFilterNumber extends DataFilterBase {
|
|
39
40
|
type: 'number';
|