@auth-craft/client 0.2.1 → 0.3.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/README.md +46 -0
- package/dist/core/core.d.ts +13 -0
- package/dist/core/core.d.ts.map +1 -1
- package/dist/core/core.js +4 -0
- package/dist/core/core.js.map +1 -1
- package/dist/transport/client.d.ts +22 -1
- package/dist/transport/client.d.ts.map +1 -1
- package/dist/transport/client.js +130 -99
- package/dist/transport/client.js.map +1 -1
- package/dist/transport/index.d.ts +5 -1
- package/dist/transport/index.d.ts.map +1 -1
- package/dist/transport/index.js +3 -0
- package/dist/transport/index.js.map +1 -1
- package/dist/transport/inline-worker.d.ts +6 -0
- package/dist/transport/inline-worker.d.ts.map +1 -1
- package/dist/transport/inline-worker.js +8 -1
- package/dist/transport/inline-worker.js.map +1 -1
- package/dist/transport/provider/storage/session-hint-channel.d.ts +34 -0
- package/dist/transport/provider/storage/session-hint-channel.d.ts.map +1 -0
- package/dist/transport/provider/storage/session-hint-channel.js +81 -0
- package/dist/transport/provider/storage/session-hint-channel.js.map +1 -0
- package/dist/transport/provider/storage/session-hint.d.ts +65 -0
- package/dist/transport/provider/storage/session-hint.d.ts.map +1 -0
- package/dist/transport/provider/storage/session-hint.js +117 -0
- package/dist/transport/provider/storage/session-hint.js.map +1 -0
- package/dist/transport/types.d.ts +52 -4
- package/dist/transport/types.d.ts.map +1 -1
- package/dist/transport/worker.d.ts +7 -1
- package/dist/transport/worker.d.ts.map +1 -1
- package/dist/transport/worker.js +123 -0
- package/dist/transport/worker.js.map +1 -1
- package/package.json +3 -3
|
@@ -203,9 +203,12 @@ export interface FetchGuardOptions {
|
|
|
203
203
|
*/
|
|
204
204
|
setupTimeout?: number;
|
|
205
205
|
/**
|
|
206
|
-
*
|
|
207
|
-
*
|
|
208
|
-
*
|
|
206
|
+
* Round-trip timeout for transport requests, in milliseconds.
|
|
207
|
+
* Default: none — a request waits for the server's answer however long it
|
|
208
|
+
* takes (large uploads on a slow uplink legitimately exceed 30 s).
|
|
209
|
+
* When set, a request that has not settled in time is aborted in the worker
|
|
210
|
+
* and resolves with `REQUEST_TIMEOUT`. Override per request with
|
|
211
|
+
* `fetch(url, { timeout })`.
|
|
209
212
|
*/
|
|
210
213
|
requestTimeout?: number;
|
|
211
214
|
/**
|
|
@@ -248,6 +251,14 @@ export interface FetchGuardOptions {
|
|
|
248
251
|
* ```
|
|
249
252
|
*/
|
|
250
253
|
workerFactory?: () => Worker;
|
|
254
|
+
/**
|
|
255
|
+
* Skip the boot-time refresh attempt for visitors who never logged in.
|
|
256
|
+
*
|
|
257
|
+
* Off by default (every boot tries `POST /auth/refresh`, as before). Enable it
|
|
258
|
+
* to have the worker remember that a session was established and fail fast
|
|
259
|
+
* with NOT_AUTHENTICATED when it was not — see {@link SessionHintConfig}.
|
|
260
|
+
*/
|
|
261
|
+
sessionHint?: SessionHintConfig;
|
|
251
262
|
/**
|
|
252
263
|
* Where the token/refresh loop runs.
|
|
253
264
|
*
|
|
@@ -269,6 +280,37 @@ export interface WorkerConfig {
|
|
|
269
280
|
allowedDomains: string[];
|
|
270
281
|
refreshEarlyMs: number;
|
|
271
282
|
defaultHeaders: Record<string, string>;
|
|
283
|
+
/**
|
|
284
|
+
* Skip the boot-time refresh attempt when no session has ever been
|
|
285
|
+
* established here. See `sessionHint` on FetchGuardOptions.
|
|
286
|
+
*/
|
|
287
|
+
sessionHint?: SessionHintConfig;
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Session-hint configuration — suppresses the pointless `POST /auth/refresh`
|
|
291
|
+
* that an anonymous visitor otherwise pays on every page load.
|
|
292
|
+
*
|
|
293
|
+
* The worker cannot read the httpOnly refresh cookie, so after a reload the only
|
|
294
|
+
* way to discover whether a session exists is to try to refresh. For a visitor
|
|
295
|
+
* who never logged in, that attempt fails every time. With the hint enabled the
|
|
296
|
+
* worker remembers (in IndexedDB) that a session was established, and skips the
|
|
297
|
+
* request when the hint is absent — failing fast with NOT_AUTHENTICATED instead.
|
|
298
|
+
*
|
|
299
|
+
* The hint is a single non-secret bit and is never authoritative: it is cleared
|
|
300
|
+
* whenever a refresh reports no session, set on login, and synced across tabs,
|
|
301
|
+
* so it can only skip a request that was going to fail anyway.
|
|
302
|
+
*/
|
|
303
|
+
export interface SessionHintConfig {
|
|
304
|
+
/** Turn the optimization on. Default: false (always attempt refresh). */
|
|
305
|
+
enabled: boolean;
|
|
306
|
+
/**
|
|
307
|
+
* Storage key, one per auth scope. An origin that hosts several contexts
|
|
308
|
+
* (customer / tenant / system) must pass distinct keys so a customer login
|
|
309
|
+
* does not imply an admin session. Default: `'sessionHint'`.
|
|
310
|
+
*/
|
|
311
|
+
key?: string;
|
|
312
|
+
/** IndexedDB database name. Default: the refresh-token DB (`FetchGuardDB`). */
|
|
313
|
+
dbName?: string;
|
|
272
314
|
}
|
|
273
315
|
/**
|
|
274
316
|
* Extended RequestInit with FetchGuard-specific options
|
|
@@ -278,6 +320,12 @@ export interface FetchGuardRequestInit extends RequestInit {
|
|
|
278
320
|
requiresAuth?: boolean;
|
|
279
321
|
/** Include response headers in result metadata and FETCH_RESULT payload */
|
|
280
322
|
includeHeaders?: boolean;
|
|
323
|
+
/**
|
|
324
|
+
* Round-trip timeout for this request (ms), overriding the client's
|
|
325
|
+
* `requestTimeout`. On expiry the worker's fetch is aborted and the result
|
|
326
|
+
* is `REQUEST_TIMEOUT`. Not sent to the server.
|
|
327
|
+
*/
|
|
328
|
+
timeout?: number;
|
|
281
329
|
}
|
|
282
330
|
/**
|
|
283
331
|
* Fetch envelope - raw HTTP response from worker
|
|
@@ -331,7 +379,7 @@ export interface SerializedFormDataResult {
|
|
|
331
379
|
* Used when no HTTP response is received (connection failed, timeout, cancelled)
|
|
332
380
|
*/
|
|
333
381
|
export interface NetworkErrorDetail {
|
|
334
|
-
code: 'NETWORK_ERROR' | 'REQUEST_CANCELLED' | 'RESPONSE_PARSE_FAILED';
|
|
382
|
+
code: 'NETWORK_ERROR' | 'REQUEST_CANCELLED' | 'REQUEST_TIMEOUT' | 'RESPONSE_PARSE_FAILED';
|
|
335
383
|
message: string;
|
|
336
384
|
}
|
|
337
385
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transport/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transport/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,8 @@ export { createProvider } from './provider/create-provider.js';
|
|
|
5
5
|
export { bodyParser } from './provider/parser/body.js';
|
|
6
6
|
export { cookieParser } from './provider/parser/cookie.js';
|
|
7
7
|
export { createIndexedDBStorage } from './provider/storage/indexeddb.js';
|
|
8
|
+
export { createSessionHint } from './provider/storage/session-hint.js';
|
|
9
|
+
export { createSessionHintChannel } from './provider/storage/session-hint-channel.js';
|
|
8
10
|
export { createBodyStrategy } from './provider/strategy/body.js';
|
|
9
11
|
export { createCookieStrategy } from './provider/strategy/cookie.js';
|
|
10
12
|
export type { AuthStrategy, ExchangeTokenOptions, RefreshTokenStorage, TokenParser, TokenProvider } from './types.js';
|
|
@@ -30,6 +32,10 @@ export interface WorkerLoopScope extends PostTarget {
|
|
|
30
32
|
* (`transport: 'worker'`) the token is isolated; run inline (`'inline'`) the
|
|
31
33
|
* same closure lives on the main thread, so XSS on the page can reach it — the
|
|
32
34
|
* closure is encapsulation, not a security boundary.
|
|
35
|
+
*
|
|
36
|
+
* Returns a dispose function releasing what outlives the message channel — today
|
|
37
|
+
* the session-hint BroadcastChannel. Terminating a real Worker tears down its
|
|
38
|
+
* whole realm, so only the inline host needs to call it.
|
|
33
39
|
*/
|
|
34
|
-
export declare function runWorkerLoop(scope: WorkerLoopScope): void;
|
|
40
|
+
export declare function runWorkerLoop(scope: WorkerLoopScope): () => void;
|
|
35
41
|
//# sourceMappingURL=worker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/transport/worker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/transport/worker.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAazD,OAAO,EACL,cAAc,EAEd,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGtH,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC;AAyB5F;;;;;GAKG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,SAAS,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;CACxE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,IAAI,CAojBhE"}
|
package/dist/transport/worker.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
/// <reference lib="webworker" />
|
|
2
2
|
import { err, ok } from 'ts-micro-result';
|
|
3
3
|
import { DEFAULT_REFRESH_EARLY_MS } from './constants.js';
|
|
4
|
+
import { ERROR_CODES } from './error-codes.js';
|
|
4
5
|
import { AuthErrors, DomainErrors, GeneralErrors, InitErrors, RequestErrors } from './errors.js';
|
|
5
6
|
import { MSG } from './messages.js';
|
|
6
7
|
import { buildProviderFromPreset } from './provider/register-presets.js';
|
|
8
|
+
import { createSessionHint } from './provider/storage/session-hint.js';
|
|
9
|
+
import { createSessionHintChannel } from './provider/storage/session-hint-channel.js';
|
|
7
10
|
import { clearProviders, getProvider, hasProvider, listProviders, registerProvider, unregisterProvider, } from './utils/registry.js';
|
|
8
11
|
import { createWorkerPost } from './worker-post.js';
|
|
9
12
|
// Re-export provider utilities for custom workers
|
|
@@ -11,6 +14,8 @@ export { createProvider } from './provider/create-provider.js';
|
|
|
11
14
|
export { bodyParser } from './provider/parser/body.js';
|
|
12
15
|
export { cookieParser } from './provider/parser/cookie.js';
|
|
13
16
|
export { createIndexedDBStorage } from './provider/storage/indexeddb.js';
|
|
17
|
+
export { createSessionHint } from './provider/storage/session-hint.js';
|
|
18
|
+
export { createSessionHintChannel } from './provider/storage/session-hint-channel.js';
|
|
14
19
|
export { createBodyStrategy } from './provider/strategy/body.js';
|
|
15
20
|
export { createCookieStrategy } from './provider/strategy/cookie.js';
|
|
16
21
|
// Re-export registry functions for custom workers
|
|
@@ -18,6 +23,23 @@ export { createCookieStrategy } from './provider/strategy/cookie.js';
|
|
|
18
23
|
export { clearProviders, hasProvider, listProviders, registerProvider, unregisterProvider };
|
|
19
24
|
import { arrayBufferToBase64, isBinaryContentType } from './utils/binary.js';
|
|
20
25
|
import { deserializeFormData, isSerializedFormData } from './utils/formdata.js';
|
|
26
|
+
/**
|
|
27
|
+
* Failures raised *before* any HTTP attempt: there is no session to authorize
|
|
28
|
+
* with, the worker was never set up, or the URL is off the allow-list. They are
|
|
29
|
+
* reported as-is (MSG.ERROR) rather than as FETCH_ERROR, which the client
|
|
30
|
+
* flattens to NETWORK_ERROR — a caller must be able to distinguish "log in"
|
|
31
|
+
* from "the network failed", especially once the session hint starts answering
|
|
32
|
+
* NOT_AUTHENTICATED without sending anything.
|
|
33
|
+
*/
|
|
34
|
+
const PREFLIGHT_ERROR_CODES = new Set([
|
|
35
|
+
ERROR_CODES.NOT_AUTHENTICATED,
|
|
36
|
+
ERROR_CODES.TOKEN_REFRESH_FAILED,
|
|
37
|
+
ERROR_CODES.INIT_ERROR,
|
|
38
|
+
ERROR_CODES.DOMAIN_NOT_ALLOWED,
|
|
39
|
+
]);
|
|
40
|
+
function isPreflightError(code) {
|
|
41
|
+
return code !== undefined && PREFLIGHT_ERROR_CODES.has(code);
|
|
42
|
+
}
|
|
21
43
|
/**
|
|
22
44
|
* The FetchGuard worker loop. Owns the token state (access/refresh/expiry) in a
|
|
23
45
|
* closure — no export or handle exposes it, and the refresh token is never
|
|
@@ -30,6 +52,10 @@ import { deserializeFormData, isSerializedFormData } from './utils/formdata.js';
|
|
|
30
52
|
* (`transport: 'worker'`) the token is isolated; run inline (`'inline'`) the
|
|
31
53
|
* same closure lives on the main thread, so XSS on the page can reach it — the
|
|
32
54
|
* closure is encapsulation, not a security boundary.
|
|
55
|
+
*
|
|
56
|
+
* Returns a dispose function releasing what outlives the message channel — today
|
|
57
|
+
* the session-hint BroadcastChannel. Terminating a real Worker tears down its
|
|
58
|
+
* whole realm, so only the inline host needs to call it.
|
|
33
59
|
*/
|
|
34
60
|
export function runWorkerLoop(scope) {
|
|
35
61
|
const { sendAuthCallResult, sendAuthStateChanged, sendError, sendFetchError, sendFetchResult, sendPong, sendReady, sendSetupError, sendTokenRefreshed, } = createWorkerPost(scope);
|
|
@@ -42,6 +68,57 @@ export function runWorkerLoop(scope) {
|
|
|
42
68
|
const pendingControllers = new Map();
|
|
43
69
|
let refreshPromise = null;
|
|
44
70
|
let authPromise = null;
|
|
71
|
+
/**
|
|
72
|
+
* Session hint — "has a session ever been established on this origin?".
|
|
73
|
+
*
|
|
74
|
+
* Null when the optimization is off (the default), in which case the worker
|
|
75
|
+
* behaves exactly as before: every boot attempts a refresh. When enabled, a
|
|
76
|
+
* `false` hint lets `ensureValidToken` skip a refresh that cannot succeed.
|
|
77
|
+
*
|
|
78
|
+
* `hintCache` mirrors the stored bit so the common path costs no IndexedDB
|
|
79
|
+
* read, and so a sibling tab's broadcast can correct this worker in place.
|
|
80
|
+
*/
|
|
81
|
+
let sessionHint = null;
|
|
82
|
+
let hintChannel = null;
|
|
83
|
+
let hintCache = null;
|
|
84
|
+
/** Record that a session exists (login / successful refresh) and tell other tabs. */
|
|
85
|
+
function markSessionEstablished() {
|
|
86
|
+
if (!sessionHint)
|
|
87
|
+
return;
|
|
88
|
+
const changed = hintCache !== true;
|
|
89
|
+
hintCache = true;
|
|
90
|
+
void sessionHint.set();
|
|
91
|
+
if (changed)
|
|
92
|
+
hintChannel?.publish(true);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Record that there is no session: logout, or the server telling us the
|
|
96
|
+
* refresh token is gone/expired. This is what keeps a stale "yes" from
|
|
97
|
+
* costing a refresh on every future reload.
|
|
98
|
+
*/
|
|
99
|
+
function markSessionAbsent() {
|
|
100
|
+
if (!sessionHint)
|
|
101
|
+
return;
|
|
102
|
+
const changed = hintCache !== false;
|
|
103
|
+
hintCache = false;
|
|
104
|
+
void sessionHint.clear();
|
|
105
|
+
if (changed)
|
|
106
|
+
hintChannel?.publish(false);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Is a refresh attempt worth making? Only `false` when the hint is enabled AND
|
|
110
|
+
* positively says no session was ever established here. Unknown, unreadable or
|
|
111
|
+
* enabled-but-absent storage all answer `true` — the hint must never be the
|
|
112
|
+
* reason a real session is dropped.
|
|
113
|
+
*/
|
|
114
|
+
async function shouldAttemptRefresh() {
|
|
115
|
+
if (!sessionHint)
|
|
116
|
+
return true;
|
|
117
|
+
if (hintCache === null) {
|
|
118
|
+
hintCache = await sessionHint.get();
|
|
119
|
+
}
|
|
120
|
+
return hintCache;
|
|
121
|
+
}
|
|
45
122
|
/**
|
|
46
123
|
* Mutex wrapper for auth operations (login, logout, custom auth methods)
|
|
47
124
|
* Prevents race conditions when multiple concurrent auth calls are made.
|
|
@@ -94,6 +171,13 @@ export function runWorkerLoop(scope) {
|
|
|
94
171
|
const result = await refreshPromise;
|
|
95
172
|
return result;
|
|
96
173
|
}
|
|
174
|
+
// Nothing in memory and the hint says nobody ever logged in here: the
|
|
175
|
+
// refresh could only come back "not authenticated", so skip the round-trip.
|
|
176
|
+
// (A held token being merely near expiry is a real session — always refresh
|
|
177
|
+
// that, regardless of the hint.)
|
|
178
|
+
if (!accessToken && !(await shouldAttemptRefresh())) {
|
|
179
|
+
return err(AuthErrors.NotAuthenticated());
|
|
180
|
+
}
|
|
97
181
|
refreshPromise = (async () => {
|
|
98
182
|
try {
|
|
99
183
|
// Provider already checked above, TypeScript needs assertion
|
|
@@ -103,6 +187,9 @@ export function runWorkerLoop(scope) {
|
|
|
103
187
|
const valueRes = await provider.refreshToken(refreshToken);
|
|
104
188
|
if (!valueRes.ok) {
|
|
105
189
|
setTokenState({ token: null, expiresAt: null, user: undefined, refreshToken: undefined });
|
|
190
|
+
// The server says this refresh token buys nothing. Drop the hint so
|
|
191
|
+
// the next reload fails fast instead of repeating this request.
|
|
192
|
+
markSessionAbsent();
|
|
106
193
|
return err(valueRes.errors);
|
|
107
194
|
}
|
|
108
195
|
const tokenInfo = valueRes.data;
|
|
@@ -264,6 +351,16 @@ export function runWorkerLoop(scope) {
|
|
|
264
351
|
if ('refreshToken' in tokenInfo) {
|
|
265
352
|
refreshToken = tokenInfo.refreshToken ?? null;
|
|
266
353
|
}
|
|
354
|
+
// Keep the hint in step with reality: holding a token means a session
|
|
355
|
+
// exists; an explicitly cleared token (logout) means it does not.
|
|
356
|
+
if ('token' in tokenInfo) {
|
|
357
|
+
if (accessToken) {
|
|
358
|
+
markSessionEstablished();
|
|
359
|
+
}
|
|
360
|
+
else {
|
|
361
|
+
markSessionAbsent();
|
|
362
|
+
}
|
|
363
|
+
}
|
|
267
364
|
if (emitEvent) {
|
|
268
365
|
postAuthChanged();
|
|
269
366
|
}
|
|
@@ -311,6 +408,21 @@ export function runWorkerLoop(scope) {
|
|
|
311
408
|
sendSetupError('Provider initialization failed - provider is null');
|
|
312
409
|
break;
|
|
313
410
|
}
|
|
411
|
+
// Session hint (opt-in): remember whether a session ever existed here
|
|
412
|
+
// so a later reload can skip a refresh that cannot succeed.
|
|
413
|
+
const hintConfig = config.sessionHint;
|
|
414
|
+
if (hintConfig?.enabled) {
|
|
415
|
+
const hintKey = hintConfig.key ?? 'sessionHint';
|
|
416
|
+
sessionHint = createSessionHint({
|
|
417
|
+
hintKey,
|
|
418
|
+
...(hintConfig.dbName ? { dbName: hintConfig.dbName } : {}),
|
|
419
|
+
});
|
|
420
|
+
// A login or logout in another tab corrects this worker in place,
|
|
421
|
+
// so a tab that booted "anonymous" starts trying refresh again.
|
|
422
|
+
hintChannel = createSessionHintChannel(hintKey, (hint) => {
|
|
423
|
+
hintCache = hint;
|
|
424
|
+
});
|
|
425
|
+
}
|
|
314
426
|
sendReady();
|
|
315
427
|
}
|
|
316
428
|
catch (error) {
|
|
@@ -331,6 +443,13 @@ export function runWorkerLoop(scope) {
|
|
|
331
443
|
if (result.ok) {
|
|
332
444
|
sendFetchResult(id, result.data);
|
|
333
445
|
}
|
|
446
|
+
else if (isPreflightError(result.errors[0]?.code)) {
|
|
447
|
+
// The request never reached the network (not authenticated, worker
|
|
448
|
+
// not set up, domain blocked). FETCH_ERROR would flatten all of
|
|
449
|
+
// those to NETWORK_ERROR on the client; send the Result verbatim so
|
|
450
|
+
// callers can tell "log in" apart from "the network is down".
|
|
451
|
+
sendError(id, result);
|
|
452
|
+
}
|
|
334
453
|
else {
|
|
335
454
|
// Network/timeout/cancel error
|
|
336
455
|
const error = result.errors[0];
|
|
@@ -427,6 +546,10 @@ export function runWorkerLoop(scope) {
|
|
|
427
546
|
}
|
|
428
547
|
}
|
|
429
548
|
};
|
|
549
|
+
return () => {
|
|
550
|
+
hintChannel?.close();
|
|
551
|
+
hintChannel = null;
|
|
552
|
+
};
|
|
430
553
|
}
|
|
431
554
|
if (typeof self !== 'undefined' && typeof self.importScripts === 'function') {
|
|
432
555
|
runWorkerLoop(self);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/transport/worker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/transport/worker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@auth-craft/client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Contract-driven typed frontend client for Auth Craft. Methods are generated from @auth-craft/api-contract; tokens are isolated in a Web Worker. Import the root for all groups, or @auth-craft/client/core for a scope-agnostic core you wire per scope.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
],
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"ts-micro-result": "^3.3.0",
|
|
29
|
-
"valibot": "^1.
|
|
29
|
+
"valibot": "^1.5.0",
|
|
30
30
|
"@auth-craft/api-contract": "^0.1.3"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"typescript": "^7.0.2",
|
|
34
|
-
"vitest": "^
|
|
34
|
+
"vitest": "^5.0.3"
|
|
35
35
|
},
|
|
36
36
|
"license": "MIT",
|
|
37
37
|
"publishConfig": {
|