@venizia/ardor-admin 0.4.7-2 → 0.4.7-4
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/providers/auth.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Container } from '@venizia/ignis-inversion';
|
|
2
|
-
import { BaseProvider, type DefaultAuthService, type IAuthProviderOptions, type ISignInSession, type IPermissionProvider } from '@venizia/ardor-kernel';
|
|
2
|
+
import { type AnyType, BaseProvider, type DefaultAuthService, type IAuthProviderOptions, type IAuthTokenRecord, type ISignInSession, type IPermissionProvider, type TStringConstValue } from '@venizia/ardor-kernel';
|
|
3
3
|
import type { IAuthProvider, IDataProvider } from '../common/index.js';
|
|
4
4
|
/** What the login form hands to `login`: the user name and the password, and whatever else the form holds. */
|
|
5
5
|
export interface ILoginParams {
|
|
@@ -7,9 +7,24 @@ export interface ILoginParams {
|
|
|
7
7
|
password?: string;
|
|
8
8
|
[field: string]: unknown;
|
|
9
9
|
}
|
|
10
|
+
/** Why `onSessionCleared` was called. */
|
|
11
|
+
export declare class SessionClearReasons {
|
|
12
|
+
/** `logout` ran. */
|
|
13
|
+
static readonly LOGOUT = "logout";
|
|
14
|
+
/** `checkError` met a 401. */
|
|
15
|
+
static readonly UNAUTHORIZED = "unauthorized";
|
|
16
|
+
/** `checkAuth` rejected: no token is stored, or the server answered with no data. */
|
|
17
|
+
static readonly REJECTED = "rejected";
|
|
18
|
+
}
|
|
19
|
+
export type TSessionClearReason = TStringConstValue<typeof SessionClearReasons>;
|
|
10
20
|
/**
|
|
11
21
|
* The options hold data (`paths`); behaviour is in the protected hooks around `login` and the page
|
|
12
22
|
* paths, each taking one `opts` object, which a subclass overrides.
|
|
23
|
+
*
|
|
24
|
+
* The session hooks `onSessionStarted` and `onSessionCleared` are for what lives next to the session
|
|
25
|
+
* (a socket, a per-user cache). Each fires once per change of the session this provider sees, and a
|
|
26
|
+
* hook that throws, or does not settle in `sessionHookTimeout`, is logged and does not stop the call
|
|
27
|
+
* that fired it. A hook does not call this provider's methods: they wait behind it.
|
|
13
28
|
*/
|
|
14
29
|
export declare class DefaultAuthProvider<TResource extends string = string> extends BaseProvider<IAuthProvider> {
|
|
15
30
|
protected restDataProvider: IDataProvider<TResource>;
|
|
@@ -17,6 +32,10 @@ export declare class DefaultAuthProvider<TResource extends string = string> exte
|
|
|
17
32
|
protected authService: DefaultAuthService;
|
|
18
33
|
protected permissionProvider?: IPermissionProvider | undefined;
|
|
19
34
|
constructor(restDataProvider: IDataProvider<TResource>, authProviderOptions: IAuthProviderOptions, authService: DefaultAuthService, permissionProvider?: IPermissionProvider | undefined);
|
|
35
|
+
/** The session last announced to `onSessionStarted`: `undefined` when none is, or after it was cleared. */
|
|
36
|
+
private announcedSession?;
|
|
37
|
+
/** The hook calls run one after the other, so a slow `onSessionStarted` ends before a later `onSessionCleared`. */
|
|
38
|
+
private hookQueue;
|
|
20
39
|
/** Where `login` posts: `paths.signIn`, else the IGNIS auth controller's route. */
|
|
21
40
|
protected get signInPath(): string;
|
|
22
41
|
/** Where the admin goes once `login` resolves: `paths.afterLogin`, else `/`. */
|
|
@@ -25,6 +44,8 @@ export declare class DefaultAuthProvider<TResource extends string = string> exte
|
|
|
25
44
|
protected get loginPagePath(): string;
|
|
26
45
|
/** The route a `403` redirects to; the application mounts it. */
|
|
27
46
|
protected get unauthorizedPagePath(): string;
|
|
47
|
+
/** How long, in milliseconds, `login`, `logout` and the checks wait for a session hook before they log it and carry on. */
|
|
48
|
+
protected get sessionHookTimeout(): number;
|
|
28
49
|
/**
|
|
29
50
|
* The body of the sign-in request: the IGNIS sign-in body, made from `params.username` and
|
|
30
51
|
* `params.password`. Override it when the API wants another shape; `opts.params` as it is posts
|
|
@@ -73,6 +94,39 @@ export declare class DefaultAuthProvider<TResource extends string = string> exte
|
|
|
73
94
|
session: ISignInSession;
|
|
74
95
|
username: string;
|
|
75
96
|
}): void;
|
|
97
|
+
/**
|
|
98
|
+
* Runs when a session starts or its token is replaced: after `login` saved it, after a `checkAuth`
|
|
99
|
+
* confirmed it (the first one of a page that finds a stored session too), and after
|
|
100
|
+
* `refreshToken` stored a new token. `user` is the stored identity (`userId`, `username`,
|
|
101
|
+
* `referenceId`, `provider`), or `{ userId, username }` when `saveSession` keeps nothing in the
|
|
102
|
+
* store. A re-check of the same session does not call it again. It is awaited; a throw or a
|
|
103
|
+
* rejection is logged and the caller carries on.
|
|
104
|
+
*/
|
|
105
|
+
protected onSessionStarted(_opts: {
|
|
106
|
+
token: IAuthTokenRecord;
|
|
107
|
+
user: AnyType;
|
|
108
|
+
}): void | Promise<void>;
|
|
109
|
+
/**
|
|
110
|
+
* Runs when the session this provider announced ends, with the reason: after `logout`, after the
|
|
111
|
+
* 401 branch of `checkError`, and when `checkAuth` rejects (that one does not clear the store).
|
|
112
|
+
* It is called once for a session, and not at all for one that was never announced. It is awaited;
|
|
113
|
+
* a throw or a rejection is logged and the caller carries on.
|
|
114
|
+
*/
|
|
115
|
+
protected onSessionCleared(_opts: {
|
|
116
|
+
reason: TSessionClearReason;
|
|
117
|
+
}): void | Promise<void>;
|
|
118
|
+
/**
|
|
119
|
+
* Calls a hook after the hooks called before it. Its failure, and a hook that has not settled after
|
|
120
|
+
* `sessionHookTimeout`, are logged and never reach the caller. A hook that waits for a provider
|
|
121
|
+
* method waits behind itself until that timeout.
|
|
122
|
+
*/
|
|
123
|
+
private runSessionHook;
|
|
124
|
+
/** Announces a session unless it is the one announced last. The claim is made before the hook is awaited. */
|
|
125
|
+
private startSession;
|
|
126
|
+
/** Announces the end of the session announced last, once. A session never announced ends silently. */
|
|
127
|
+
private endSession;
|
|
128
|
+
/** Announces the session in the store, when there is one. */
|
|
129
|
+
private startStoredSession;
|
|
76
130
|
/** Typed `Promise<unknown>` so that a subclass override of `login` keeps compiling. */
|
|
77
131
|
login(params: ILoginParams): Promise<unknown>;
|
|
78
132
|
logout(_params?: unknown): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/providers/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,0BAA0B,CAAC;AAG5E,OAAO,EACL,YAAY,EAEZ,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,mBAAmB,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/providers/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/providers/auth.js
CHANGED
|
@@ -14,6 +14,15 @@ var DefaultAuthProvider_1;
|
|
|
14
14
|
import { getError, inject } from '@venizia/ignis-inversion';
|
|
15
15
|
import { removeDoubleSlashes } from 'ra-core';
|
|
16
16
|
import { BaseProvider, CoreBindings, RequestMethods, } from '@venizia/ardor-kernel';
|
|
17
|
+
/** Why `onSessionCleared` was called. */
|
|
18
|
+
export class SessionClearReasons {
|
|
19
|
+
/** `logout` ran. */
|
|
20
|
+
static { this.LOGOUT = 'logout'; }
|
|
21
|
+
/** `checkError` met a 401. */
|
|
22
|
+
static { this.UNAUTHORIZED = 'unauthorized'; }
|
|
23
|
+
/** `checkAuth` rejected: no token is stored, or the server answered with no data. */
|
|
24
|
+
static { this.REJECTED = 'rejected'; }
|
|
25
|
+
}
|
|
17
26
|
/** The status of a failure: react-admin's `HttpError` has `status`, the data provider's `ApplicationError` has `statusCode`. */
|
|
18
27
|
const readStatus = (error) => {
|
|
19
28
|
if (typeof error !== 'object' || error === null) {
|
|
@@ -25,6 +34,11 @@ const readStatus = (error) => {
|
|
|
25
34
|
/**
|
|
26
35
|
* The options hold data (`paths`); behaviour is in the protected hooks around `login` and the page
|
|
27
36
|
* paths, each taking one `opts` object, which a subclass overrides.
|
|
37
|
+
*
|
|
38
|
+
* The session hooks `onSessionStarted` and `onSessionCleared` are for what lives next to the session
|
|
39
|
+
* (a socket, a per-user cache). Each fires once per change of the session this provider sees, and a
|
|
40
|
+
* hook that throws, or does not settle in `sessionHookTimeout`, is logged and does not stop the call
|
|
41
|
+
* that fired it. A hook does not call this provider's methods: they wait behind it.
|
|
28
42
|
*/
|
|
29
43
|
let DefaultAuthProvider = DefaultAuthProvider_1 = class DefaultAuthProvider extends BaseProvider {
|
|
30
44
|
constructor(restDataProvider, authProviderOptions, authService, permissionProvider) {
|
|
@@ -33,6 +47,8 @@ let DefaultAuthProvider = DefaultAuthProvider_1 = class DefaultAuthProvider exte
|
|
|
33
47
|
this.authProviderOptions = authProviderOptions;
|
|
34
48
|
this.authService = authService;
|
|
35
49
|
this.permissionProvider = permissionProvider;
|
|
50
|
+
/** The hook calls run one after the other, so a slow `onSessionStarted` ends before a later `onSessionCleared`. */
|
|
51
|
+
this.hookQueue = Promise.resolve();
|
|
36
52
|
}
|
|
37
53
|
// --- Paths -----------------------------------------------------------------------------------
|
|
38
54
|
/** Where `login` posts: `paths.signIn`, else the IGNIS auth controller's route. */
|
|
@@ -51,6 +67,10 @@ let DefaultAuthProvider = DefaultAuthProvider_1 = class DefaultAuthProvider exte
|
|
|
51
67
|
get unauthorizedPagePath() {
|
|
52
68
|
return '/unauthorized';
|
|
53
69
|
}
|
|
70
|
+
/** How long, in milliseconds, `login`, `logout` and the checks wait for a session hook before they log it and carry on. */
|
|
71
|
+
get sessionHookTimeout() {
|
|
72
|
+
return 10_000;
|
|
73
|
+
}
|
|
54
74
|
// --- Sign-in hooks ---------------------------------------------------------------------------
|
|
55
75
|
/**
|
|
56
76
|
* The body of the sign-in request: the IGNIS sign-in body, made from `params.username` and
|
|
@@ -161,6 +181,84 @@ let DefaultAuthProvider = DefaultAuthProvider_1 = class DefaultAuthProvider exte
|
|
|
161
181
|
username,
|
|
162
182
|
});
|
|
163
183
|
}
|
|
184
|
+
// --- Session hooks -------------------------------------------------------------------------
|
|
185
|
+
/**
|
|
186
|
+
* Runs when a session starts or its token is replaced: after `login` saved it, after a `checkAuth`
|
|
187
|
+
* confirmed it (the first one of a page that finds a stored session too), and after
|
|
188
|
+
* `refreshToken` stored a new token. `user` is the stored identity (`userId`, `username`,
|
|
189
|
+
* `referenceId`, `provider`), or `{ userId, username }` when `saveSession` keeps nothing in the
|
|
190
|
+
* store. A re-check of the same session does not call it again. It is awaited; a throw or a
|
|
191
|
+
* rejection is logged and the caller carries on.
|
|
192
|
+
*/
|
|
193
|
+
onSessionStarted(_opts) {
|
|
194
|
+
return undefined;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Runs when the session this provider announced ends, with the reason: after `logout`, after the
|
|
198
|
+
* 401 branch of `checkError`, and when `checkAuth` rejects (that one does not clear the store).
|
|
199
|
+
* It is called once for a session, and not at all for one that was never announced. It is awaited;
|
|
200
|
+
* a throw or a rejection is logged and the caller carries on.
|
|
201
|
+
*/
|
|
202
|
+
onSessionCleared(_opts) {
|
|
203
|
+
return undefined;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Calls a hook after the hooks called before it. Its failure, and a hook that has not settled after
|
|
207
|
+
* `sessionHookTimeout`, are logged and never reach the caller. A hook that waits for a provider
|
|
208
|
+
* method waits behind itself until that timeout.
|
|
209
|
+
*/
|
|
210
|
+
runSessionHook(opts) {
|
|
211
|
+
const done = this.hookQueue.then(async () => {
|
|
212
|
+
let timer;
|
|
213
|
+
const timeout = new Promise((_resolve, reject) => {
|
|
214
|
+
timer = setTimeout(() => {
|
|
215
|
+
reject(getError({ message: `did not settle in ${this.sessionHookTimeout} ms` }));
|
|
216
|
+
}, this.sessionHookTimeout);
|
|
217
|
+
});
|
|
218
|
+
try {
|
|
219
|
+
await Promise.race([opts.run(), timeout]);
|
|
220
|
+
}
|
|
221
|
+
catch (error) {
|
|
222
|
+
this.logger.error('[%s] The hook failed, carrying on | error: %o', opts.name, error);
|
|
223
|
+
}
|
|
224
|
+
finally {
|
|
225
|
+
clearTimeout(timer);
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
this.hookQueue = done;
|
|
229
|
+
return done;
|
|
230
|
+
}
|
|
231
|
+
/** Announces a session unless it is the one announced last. The claim is made before the hook is awaited. */
|
|
232
|
+
startSession(opts) {
|
|
233
|
+
const session = [opts.user?.userId, opts.token.value].join('|');
|
|
234
|
+
if (session === this.announcedSession) {
|
|
235
|
+
return this.hookQueue;
|
|
236
|
+
}
|
|
237
|
+
this.announcedSession = session;
|
|
238
|
+
return this.runSessionHook({
|
|
239
|
+
name: 'onSessionStarted',
|
|
240
|
+
run: () => this.onSessionStarted(opts),
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
/** Announces the end of the session announced last, once. A session never announced ends silently. */
|
|
244
|
+
endSession(opts) {
|
|
245
|
+
if (this.announcedSession === undefined) {
|
|
246
|
+
return Promise.resolve();
|
|
247
|
+
}
|
|
248
|
+
this.announcedSession = undefined;
|
|
249
|
+
return this.runSessionHook({
|
|
250
|
+
name: 'onSessionCleared',
|
|
251
|
+
run: () => this.onSessionCleared(opts),
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
/** Announces the session in the store, when there is one. */
|
|
255
|
+
startStoredSession() {
|
|
256
|
+
const token = this.authService.getAuth();
|
|
257
|
+
if (!token?.value) {
|
|
258
|
+
return Promise.resolve();
|
|
259
|
+
}
|
|
260
|
+
return this.startSession({ token, user: this.authService.getUser() });
|
|
261
|
+
}
|
|
164
262
|
// --- react-admin's auth provider -------------------------------------------------------------
|
|
165
263
|
/** Typed `Promise<unknown>` so that a subclass override of `login` keeps compiling. */
|
|
166
264
|
async login(params) {
|
|
@@ -171,40 +269,54 @@ let DefaultAuthProvider = DefaultAuthProvider_1 = class DefaultAuthProvider exte
|
|
|
171
269
|
const session = this.readSignInSession({ data: response.data });
|
|
172
270
|
// Before anything is saved, so a throw here leaves no session behind.
|
|
173
271
|
await this.beforeSaveSession({ session, params });
|
|
174
|
-
|
|
272
|
+
const username = this.resolveUsername({ params });
|
|
273
|
+
this.saveSession({ session, username });
|
|
274
|
+
// The store when it holds this session; else what the response said, for a `saveSession` that keeps it elsewhere.
|
|
275
|
+
const stored = this.authService.getAuth();
|
|
276
|
+
await this.startSession(stored?.value === session.token.value
|
|
277
|
+
? { token: stored, user: this.authService.getUser() }
|
|
278
|
+
: { token: session.token, user: { userId: session.userId, username } });
|
|
175
279
|
return {
|
|
176
280
|
...response,
|
|
177
281
|
redirectTo: removeDoubleSlashes(`/${this.afterLoginPath}`),
|
|
178
282
|
};
|
|
179
283
|
}
|
|
180
|
-
logout(_params) {
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
resolve();
|
|
184
|
-
});
|
|
284
|
+
async logout(_params) {
|
|
285
|
+
this.authService.cleanUp();
|
|
286
|
+
await this.endSession({ reason: SessionClearReasons.LOGOUT });
|
|
185
287
|
}
|
|
186
288
|
async checkAuth(_params) {
|
|
187
289
|
const token = this.authService.getAuth();
|
|
188
290
|
if (!token?.value) {
|
|
291
|
+
await this.endSession({ reason: SessionClearReasons.REJECTED });
|
|
189
292
|
return Promise.reject({ redirectTo: this.loginPagePath });
|
|
190
293
|
}
|
|
191
294
|
if (!this.authProviderOptions.paths?.checkAuth) {
|
|
295
|
+
await this.startStoredSession();
|
|
192
296
|
return Promise.resolve();
|
|
193
297
|
}
|
|
298
|
+
const checked = this.announcedSession;
|
|
194
299
|
const response = await this.restDataProvider.send({
|
|
195
300
|
resource: this.authProviderOptions.paths.checkAuth,
|
|
196
301
|
params: { method: RequestMethods.GET },
|
|
197
302
|
});
|
|
198
303
|
if (!response?.data) {
|
|
304
|
+
// A sign-in that landed while the request was out is a newer session: this answer is not about it.
|
|
305
|
+
if (this.announcedSession === checked) {
|
|
306
|
+
await this.endSession({ reason: SessionClearReasons.REJECTED });
|
|
307
|
+
}
|
|
199
308
|
return Promise.reject({ redirectTo: this.loginPagePath });
|
|
200
309
|
}
|
|
310
|
+
await this.startStoredSession();
|
|
201
311
|
return Promise.resolve();
|
|
202
312
|
}
|
|
203
313
|
checkError(error) {
|
|
204
314
|
const status = readStatus(error);
|
|
205
315
|
if (status === 401) {
|
|
206
316
|
this.authService.cleanUp();
|
|
207
|
-
return
|
|
317
|
+
return this.endSession({ reason: SessionClearReasons.UNAUTHORIZED }).then(() => {
|
|
318
|
+
return Promise.reject({ redirectTo: this.loginPagePath });
|
|
319
|
+
});
|
|
208
320
|
}
|
|
209
321
|
if (status === 403) {
|
|
210
322
|
return Promise.reject({
|
|
@@ -232,8 +344,12 @@ let DefaultAuthProvider = DefaultAuthProvider_1 = class DefaultAuthProvider exte
|
|
|
232
344
|
* `true` when it was refreshed, `false` when the service has no refresh to make. The `401`
|
|
233
345
|
* recovery calls the same method, so one burst of 401s and this call share one refresh.
|
|
234
346
|
*/
|
|
235
|
-
refreshToken() {
|
|
236
|
-
|
|
347
|
+
async refreshToken() {
|
|
348
|
+
const isRefreshed = await this.restDataProvider.getNetworkService().refresh();
|
|
349
|
+
if (isRefreshed) {
|
|
350
|
+
await this.startStoredSession();
|
|
351
|
+
}
|
|
352
|
+
return isRefreshed;
|
|
237
353
|
}
|
|
238
354
|
value(container) {
|
|
239
355
|
// A subclass with its own constructor rarely forwards the optional 4th argument to `super`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/providers/auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/providers/auth.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@venizia/ardor-admin",
|
|
3
|
-
"version": "0.4.7-
|
|
3
|
+
"version": "0.4.7-4",
|
|
4
4
|
"description": "ARDOR react-admin adapter - the REST data provider, auth provider and i18n provider wired through IGNIS inversion, the ArdorApplication root component, the translate and notify hooks, and the English and Vietnamese message bundles.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"admin",
|
|
@@ -60,8 +60,8 @@
|
|
|
60
60
|
"prepublishOnly": "make rebuild"
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
|
-
"@venizia/ardor-kernel": "0.4.7-
|
|
64
|
-
"@venizia/ardor-react": "0.4.7-
|
|
63
|
+
"@venizia/ardor-kernel": "0.4.7-4",
|
|
64
|
+
"@venizia/ardor-react": "0.4.7-4",
|
|
65
65
|
"lodash": "^4.18.1"
|
|
66
66
|
},
|
|
67
67
|
"devDependencies": {
|
|
@@ -73,11 +73,11 @@
|
|
|
73
73
|
"@types/bun": "^1.4.3",
|
|
74
74
|
"@types/lodash": "^4.17.27",
|
|
75
75
|
"@types/react": "^19",
|
|
76
|
-
"@venizia/dev-configs": "^0.4.7-
|
|
77
|
-
"@venizia/ignis-filter": "^0.4.6-
|
|
78
|
-
"@venizia/ignis-helpers": "^0.4.7-
|
|
79
|
-
"@venizia/ignis-inversion": "^0.4.6-
|
|
80
|
-
"@venizia/ignis-kernel": "^0.4.7-
|
|
76
|
+
"@venizia/dev-configs": "^0.4.7-5",
|
|
77
|
+
"@venizia/ignis-filter": "^0.4.6-2",
|
|
78
|
+
"@venizia/ignis-helpers": "^0.4.7-6",
|
|
79
|
+
"@venizia/ignis-inversion": "^0.4.6-2",
|
|
80
|
+
"@venizia/ignis-kernel": "^0.4.7-6",
|
|
81
81
|
"eslint": "^10.13.0",
|
|
82
82
|
"oxlint": "1.89.0",
|
|
83
83
|
"oxlint-tsgolint": "7.0.2004",
|