@forestadmin/forestadmin-client 1.24.5 → 1.25.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/dist/auth/index.d.ts +5 -0
- package/dist/auth/index.js +30 -17
- package/dist/schema/index.js +5 -1
- package/package.json +1 -1
package/dist/auth/index.d.ts
CHANGED
|
@@ -7,6 +7,10 @@ export default class AuthService implements ForestAdminAuthServiceInterface {
|
|
|
7
7
|
private options;
|
|
8
8
|
protected client: BaseClient;
|
|
9
9
|
constructor(options: ForestAdminClientOptionsWithDefaults);
|
|
10
|
+
/**
|
|
11
|
+
* Initialize the authentication client upfront. This speeds up the first
|
|
12
|
+
* authentication request.
|
|
13
|
+
*/
|
|
10
14
|
init(): Promise<void>;
|
|
11
15
|
getUserInfo(renderingId: number, accessToken: string): Promise<UserInfo>;
|
|
12
16
|
generateAuthorizationUrl({ scope, state, }: {
|
|
@@ -17,6 +21,7 @@ export default class AuthService implements ForestAdminAuthServiceInterface {
|
|
|
17
21
|
query: ParsedUrlQuery;
|
|
18
22
|
state: string;
|
|
19
23
|
}): Promise<Tokens>;
|
|
24
|
+
protected createClient(): Promise<void>;
|
|
20
25
|
private handleError;
|
|
21
26
|
}
|
|
22
27
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/auth/index.js
CHANGED
|
@@ -10,17 +10,21 @@ class AuthService {
|
|
|
10
10
|
constructor(options) {
|
|
11
11
|
this.options = options;
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Initialize the authentication client upfront. This speeds up the first
|
|
15
|
+
* authentication request.
|
|
16
|
+
*/
|
|
13
17
|
async init() {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
18
|
+
try {
|
|
19
|
+
await this.createClient();
|
|
20
|
+
}
|
|
21
|
+
catch (e) {
|
|
22
|
+
// Sometimes the authentication client can't be initialized because of a
|
|
23
|
+
// server or network error. We don't want the application to crash.
|
|
24
|
+
this.options.logger('Warn',
|
|
25
|
+
// eslint-disable-next-line max-len
|
|
26
|
+
`Error while registering the authentication client. Authentication might not work: ${e.message}`);
|
|
27
|
+
}
|
|
24
28
|
}
|
|
25
29
|
async getUserInfo(renderingId, accessToken) {
|
|
26
30
|
const url = `/liana/v2/renderings/${renderingId}/authorization`;
|
|
@@ -40,17 +44,14 @@ class AuthService {
|
|
|
40
44
|
};
|
|
41
45
|
}
|
|
42
46
|
async generateAuthorizationUrl({ scope, state, }) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
const url = this.client.authorizationUrl({
|
|
47
|
+
await this.createClient();
|
|
48
|
+
return this.client.authorizationUrl({
|
|
46
49
|
scope,
|
|
47
50
|
state,
|
|
48
51
|
});
|
|
49
|
-
return url;
|
|
50
52
|
}
|
|
51
53
|
async generateTokens({ query, state, }) {
|
|
52
|
-
|
|
53
|
-
throw new Error('AuthService not initialized');
|
|
54
|
+
await this.createClient();
|
|
54
55
|
try {
|
|
55
56
|
const tokens = await this.client.callback(undefined, query, { state });
|
|
56
57
|
return {
|
|
@@ -61,6 +62,18 @@ class AuthService {
|
|
|
61
62
|
this.handleError(e);
|
|
62
63
|
}
|
|
63
64
|
}
|
|
65
|
+
async createClient() {
|
|
66
|
+
if (this.client)
|
|
67
|
+
return;
|
|
68
|
+
// We can't use async 'Issuer.discover' because the oidc config is behind an auth-wall.
|
|
69
|
+
const url = '/oidc/.well-known/openid-configuration';
|
|
70
|
+
const config = await server_1.default.query(this.options, 'get', url);
|
|
71
|
+
const issuer = new openid_client_1.Issuer(config);
|
|
72
|
+
const registration = { token_endpoint_auth_method: 'none' };
|
|
73
|
+
this.client = await issuer.Client.register(registration, {
|
|
74
|
+
initialAccessToken: this.options.envSecret,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
64
77
|
handleError(e) {
|
|
65
78
|
if (e instanceof openid_client_1.errors.OPError) {
|
|
66
79
|
throw new errors_1.AuthenticationError(e);
|
|
@@ -69,4 +82,4 @@ class AuthService {
|
|
|
69
82
|
}
|
|
70
83
|
}
|
|
71
84
|
exports.default = AuthService;
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXV0aC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUE2RjtBQUc3RixxQ0FBK0M7QUFJL0MsNkRBQTBDO0FBRTFDLE1BQXFCLFdBQVc7SUFHOUIsWUFBb0IsT0FBNkM7UUFBN0MsWUFBTyxHQUFQLE9BQU8sQ0FBc0M7SUFBRyxDQUFDO0lBRXJFOzs7T0FHRztJQUNJLEtBQUssQ0FBQyxJQUFJO1FBQ2YsSUFBSTtZQUNGLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQzNCO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVix3RUFBd0U7WUFDeEUsbUVBQW1FO1lBQ25FLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUNqQixNQUFNO1lBQ04sbUNBQW1DO1lBQ25DLHFGQUFxRixDQUFDLENBQUMsT0FBTyxFQUFFLENBQ2pHLENBQUM7U0FDSDtJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsV0FBVyxDQUFDLFdBQW1CLEVBQUUsV0FBbUI7UUFDL0QsTUFBTSxHQUFHLEdBQUcsd0JBQXdCLFdBQVcsZ0JBQWdCLENBQUM7UUFDaEUsTUFBTSxPQUFPLEdBQUcsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFFaEQsOERBQThEO1FBQzlELE1BQU0sUUFBUSxHQUFHLE1BQU0sZ0JBQVcsQ0FBQyxLQUFLLENBQU0sSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWpGLE9BQU87WUFDTCxFQUFFLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzVCLEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLO1lBQ3JDLFNBQVMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVO1lBQzlDLFFBQVEsRUFB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
|
package/dist/schema/index.js
CHANGED
|
@@ -16,6 +16,10 @@ class SchemaService {
|
|
|
16
16
|
if (shouldSend) {
|
|
17
17
|
await server_1.default.query(this.options, 'post', '/forest/apimaps', {}, apimap);
|
|
18
18
|
}
|
|
19
|
+
const message = shouldSend
|
|
20
|
+
? 'Schema was updated, sending new version'
|
|
21
|
+
: 'Schema was not updated since last run';
|
|
22
|
+
this.options.logger('Info', `${message} (hash: ${apimap.meta.schemaFileHash})`);
|
|
19
23
|
return shouldSend;
|
|
20
24
|
}
|
|
21
25
|
static serialize(schema) {
|
|
@@ -47,4 +51,4 @@ class SchemaService {
|
|
|
47
51
|
}
|
|
48
52
|
}
|
|
49
53
|
exports.default = SchemaService;
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NoZW1hL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLDhFQUFvRDtBQUlwRCw2REFBMEM7QUFJMUMsTUFBcUIsYUFBYTtJQUNoQyxZQUFvQixPQUE2QztRQUE3QyxZQUFPLEdBQVAsT0FBTyxDQUFzQztJQUFHLENBQUM7SUFFckUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFvQjtRQUNuQyxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQy9DLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFOUUsSUFBSSxVQUFVLEVBQUU7WUFDZCxNQUFNLGdCQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUM5RTtRQUVELE1BQU0sT0FBTyxHQUFHLFVBQVU7WUFDeEIsQ0FBQyxDQUFDLHlDQUF5QztZQUMzQyxDQUFDLENBQUMsdUNBQXVDLENBQUM7UUFFNUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxXQUFXLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQztRQUVoRixPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFvQjtRQUNuQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNqRSxNQUFNLGNBQWMsR0FBRyxnQkFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5RixPQUFPLGFBQWEsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUU7WUFDN0QsR0FBRyxNQUFNLENBQUMsSUFBSTtZQUNkLGNBQWM7U0FDZixDQUFxQixDQUFDO0lBQ3pCLENBQUM7SUFFTyxNQUFNLEtBQUssVUFBVTtRQUMzQixNQUFNLFVBQVUsR0FBRyxJQUFJLDZCQUFpQixFQUFFLENBQUM7UUFDM0MsVUFBVSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUU7WUFDakMscURBQXFEO1lBQ3JELFlBQVksRUFBRSxDQUFDLFNBQWtCLEVBQUUsRUFBRSxDQUFDLFNBQVM7WUFDL0MsYUFBYSxFQUFFO2dCQUNiLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBQzlCLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7YUFDN0I7U0FDRixDQUFDLENBQUM7UUFDSCxVQUFVLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNwQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVuQyxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRU8sS0FBSyxDQUFDLG1CQUFtQixDQUFDLElBQVk7UUFDNUMsd0RBQXdEO1FBQ3hELE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLGdCQUFXLENBQUMsS0FBSyxDQUM1QyxJQUFJLENBQUMsT0FBTyxFQUNaLE1BQU0sRUFDTiwyQkFBMkIsRUFDM0IsRUFBRSxFQUNGLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxDQUN6QixDQUFDO1FBRUYsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztDQUNGO0FBMURELGdDQTBEQyJ9
|