@rool-dev/sdk 0.12.4 → 2.0.0-dev.36748aa
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 +438 -759
- package/dist/agents.d.ts +138 -0
- package/dist/agents.d.ts.map +1 -0
- package/dist/agents.js +563 -0
- package/dist/agents.js.map +1 -0
- package/dist/auth-base.d.ts +43 -88
- package/dist/auth-base.d.ts.map +1 -1
- package/dist/auth-base.js +178 -298
- package/dist/auth-base.js.map +1 -1
- package/dist/auth-browser.d.ts +7 -25
- package/dist/auth-browser.d.ts.map +1 -1
- package/dist/auth-browser.js +45 -82
- package/dist/auth-browser.js.map +1 -1
- package/dist/auth-native.d.ts +9 -56
- package/dist/auth-native.d.ts.map +1 -1
- package/dist/auth-native.js +88 -177
- package/dist/auth-native.js.map +1 -1
- package/dist/auth-node.d.ts +32 -32
- package/dist/auth-node.d.ts.map +1 -1
- package/dist/auth-node.js +339 -255
- package/dist/auth-node.js.map +1 -1
- package/dist/auth-url.d.ts +6 -0
- package/dist/auth-url.d.ts.map +1 -0
- package/dist/auth-url.js +30 -0
- package/dist/auth-url.js.map +1 -0
- package/dist/client.d.ts +35 -277
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +323 -618
- package/dist/client.js.map +1 -1
- package/dist/events.d.ts +40 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +175 -0
- package/dist/events.js.map +1 -0
- package/dist/files.d.ts +174 -0
- package/dist/files.d.ts.map +1 -0
- package/dist/files.js +846 -0
- package/dist/files.js.map +1 -0
- package/dist/index.d.ts +16 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -19
- package/dist/index.js.map +1 -1
- package/dist/machine.d.ts +51 -0
- package/dist/machine.d.ts.map +1 -0
- package/dist/machine.js +142 -0
- package/dist/machine.js.map +1 -0
- package/dist/problem.d.ts +11 -0
- package/dist/problem.d.ts.map +1 -0
- package/dist/problem.js +20 -0
- package/dist/problem.js.map +1 -0
- package/dist/structured.d.ts +84 -0
- package/dist/structured.d.ts.map +1 -0
- package/dist/structured.js +405 -0
- package/dist/structured.js.map +1 -0
- package/dist/types.d.ts +119 -520
- package/dist/types.d.ts.map +1 -1
- package/package.json +11 -16
- package/dist/auth.d.ts +0 -85
- package/dist/auth.d.ts.map +0 -1
- package/dist/auth.js +0 -181
- package/dist/auth.js.map +0 -1
- package/dist/client-info.d.ts +0 -18
- package/dist/client-info.d.ts.map +0 -1
- package/dist/client-info.js +0 -25
- package/dist/client-info.js.map +0 -1
- package/dist/event-emitter.d.ts +0 -45
- package/dist/event-emitter.d.ts.map +0 -1
- package/dist/event-emitter.js +0 -86
- package/dist/event-emitter.js.map +0 -1
- package/dist/graphql.d.ts +0 -90
- package/dist/graphql.d.ts.map +0 -1
- package/dist/graphql.js +0 -463
- package/dist/graphql.js.map +0 -1
- package/dist/logger.d.ts +0 -13
- package/dist/logger.d.ts.map +0 -1
- package/dist/logger.js +0 -17
- package/dist/logger.js.map +0 -1
- package/dist/path.d.ts +0 -6
- package/dist/path.d.ts.map +0 -1
- package/dist/path.js +0 -47
- package/dist/path.js.map +0 -1
- package/dist/reroute.d.ts +0 -22
- package/dist/reroute.d.ts.map +0 -1
- package/dist/reroute.js +0 -70
- package/dist/reroute.js.map +0 -1
- package/dist/rest.d.ts +0 -54
- package/dist/rest.d.ts.map +0 -1
- package/dist/rest.js +0 -171
- package/dist/rest.js.map +0 -1
- package/dist/router.d.ts +0 -20
- package/dist/router.d.ts.map +0 -1
- package/dist/router.js +0 -54
- package/dist/router.js.map +0 -1
- package/dist/space-session.d.ts +0 -30
- package/dist/space-session.d.ts.map +0 -1
- package/dist/space-session.js +0 -83
- package/dist/space-session.js.map +0 -1
- package/dist/space.d.ts +0 -161
- package/dist/space.d.ts.map +0 -1
- package/dist/space.js +0 -618
- package/dist/space.js.map +0 -1
- package/dist/subscription.d.ts +0 -36
- package/dist/subscription.d.ts.map +0 -1
- package/dist/subscription.js +0 -419
- package/dist/subscription.js.map +0 -1
- package/dist/webdav.d.ts +0 -171
- package/dist/webdav.d.ts.map +0 -1
- package/dist/webdav.js +0 -481
- package/dist/webdav.js.map +0 -1
package/dist/auth-base.js
CHANGED
|
@@ -1,187 +1,148 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
logger;
|
|
17
|
-
_authUrl;
|
|
18
|
-
_onAuthStateChanged;
|
|
1
|
+
import { resolveAuthUrl } from "./auth-url.js";
|
|
2
|
+
const REFRESH_BUFFER_MS = 15 * 60 * 1000;
|
|
3
|
+
const STORAGE_PREFIX = "rool_";
|
|
4
|
+
export class EmailChangeError extends Error {
|
|
5
|
+
code;
|
|
6
|
+
constructor(code, message) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.code = code;
|
|
9
|
+
this.name = "EmailChangeError";
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export class TokenAuth {
|
|
13
|
+
authUrl;
|
|
14
|
+
fetchRequest;
|
|
15
|
+
listeners = new Set();
|
|
19
16
|
refreshPromise = null;
|
|
20
|
-
refreshTimeoutId = null;
|
|
21
|
-
boundVisibilityHandler = null;
|
|
22
17
|
constructor(config = {}) {
|
|
23
|
-
this.
|
|
24
|
-
this.
|
|
25
|
-
this._onAuthStateChanged = config.onAuthStateChanged ?? (() => { });
|
|
26
|
-
}
|
|
27
|
-
// Injection hooks — RoolClient's AuthManager calls these for providers it
|
|
28
|
-
// didn't construct itself, so a custom provider gets the resolved auth URL,
|
|
29
|
-
// logger, and a handler that bridges auth-state to client events.
|
|
30
|
-
setAuthUrl(url) {
|
|
31
|
-
this._authUrl = url.replace(/\/+$/, '');
|
|
32
|
-
}
|
|
33
|
-
setLogger(logger) {
|
|
34
|
-
this.logger = logger;
|
|
35
|
-
}
|
|
36
|
-
setAuthStateChangedHandler(handler) {
|
|
37
|
-
this._onAuthStateChanged = handler;
|
|
18
|
+
this.authUrl = resolveAuthUrl(config);
|
|
19
|
+
this.fetchRequest = config.fetch ?? globalThis.fetch.bind(globalThis);
|
|
38
20
|
}
|
|
39
|
-
/**
|
|
40
|
-
* Check if user is currently authenticated.
|
|
41
|
-
*
|
|
42
|
-
* This reports identity (do we hold credentials), NOT server reachability.
|
|
43
|
-
* It deliberately does not perform a network refresh: a backend outage must
|
|
44
|
-
* not read as "logged out". A genuinely invalid/expired refresh token
|
|
45
|
-
* surfaces later as a 401 on first real use, which clears tokens and fires
|
|
46
|
-
* onAuthStateChanged(false) — the only path that ends the session.
|
|
47
|
-
*/
|
|
48
21
|
async isAuthenticated() {
|
|
49
22
|
return this.readAccessToken() !== null;
|
|
50
23
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
* Returns undefined if not authenticated.
|
|
54
|
-
*/
|
|
55
|
-
async getTokens() {
|
|
56
|
-
const accessToken = this.readAccessToken();
|
|
24
|
+
getTokens = async () => {
|
|
25
|
+
let accessToken = this.readAccessToken();
|
|
57
26
|
if (!accessToken)
|
|
58
27
|
return undefined;
|
|
59
|
-
// Token expired or about to expire - try refresh
|
|
60
28
|
const expiresAt = this.readExpiresAt();
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
if (!
|
|
29
|
+
const needsRefresh = expiresAt !== null && Date.now() >= expiresAt - REFRESH_BUFFER_MS;
|
|
30
|
+
if (needsRefresh) {
|
|
31
|
+
if (!(await this.refresh()))
|
|
64
32
|
return undefined;
|
|
65
|
-
|
|
66
|
-
if (!
|
|
33
|
+
accessToken = this.readAccessToken();
|
|
34
|
+
if (!accessToken)
|
|
67
35
|
return undefined;
|
|
68
|
-
return { accessToken: refreshedToken, roolToken: this.readRoolToken() };
|
|
69
36
|
}
|
|
70
37
|
return { accessToken, roolToken: this.readRoolToken() };
|
|
38
|
+
};
|
|
39
|
+
logout = async () => {
|
|
40
|
+
const wasAuthenticated = this.readAccessToken() !== null;
|
|
41
|
+
this.clearTokens();
|
|
42
|
+
this.clearTransientState();
|
|
43
|
+
if (wasAuthenticated)
|
|
44
|
+
this.emitAuthState(false);
|
|
45
|
+
};
|
|
46
|
+
onAuthStateChanged(listener) {
|
|
47
|
+
this.listeners.add(listener);
|
|
48
|
+
return () => this.listeners.delete(listener);
|
|
71
49
|
}
|
|
72
|
-
/**
|
|
73
|
-
* Get auth identity decoded from JWT token.
|
|
74
|
-
*/
|
|
75
|
-
getAuthUser() {
|
|
76
|
-
const accessToken = this.readAccessToken();
|
|
77
|
-
if (!accessToken)
|
|
78
|
-
return { email: null, name: null };
|
|
79
|
-
return this.decodeAuthUser(accessToken);
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Complete an email verification flow. Exchanges a verify JWT (from the
|
|
83
|
-
* verification email link) for a fresh token set and signs the user in.
|
|
84
|
-
*/
|
|
85
50
|
async verify(token) {
|
|
86
51
|
let response;
|
|
87
52
|
try {
|
|
88
|
-
response = await
|
|
89
|
-
method:
|
|
90
|
-
headers: {
|
|
53
|
+
response = await this.fetchAuth("/verify-and-signin", {
|
|
54
|
+
method: "POST",
|
|
55
|
+
headers: { "Content-Type": "application/json" },
|
|
91
56
|
body: JSON.stringify({ token }),
|
|
92
57
|
});
|
|
93
58
|
}
|
|
94
59
|
catch (error) {
|
|
95
|
-
|
|
60
|
+
console.error("[RoolAuth] verify network error:", error);
|
|
96
61
|
return false;
|
|
97
62
|
}
|
|
98
|
-
if (!response.ok)
|
|
99
|
-
this.logger.warn(`[RoolClient] verify failed: ${response.status}`);
|
|
63
|
+
if (!response.ok)
|
|
100
64
|
return false;
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
try {
|
|
104
|
-
data = await response.json();
|
|
105
|
-
}
|
|
106
|
-
catch (error) {
|
|
107
|
-
this.logger.error('[RoolClient] verify response parse error:', error);
|
|
65
|
+
const data = await readTokenResponse(response);
|
|
66
|
+
if (!data || !this.acceptTokenResponse(data))
|
|
108
67
|
return false;
|
|
109
|
-
|
|
110
|
-
const idToken = data.id_token ?? null;
|
|
111
|
-
const refreshToken = data.refresh_token ?? null;
|
|
112
|
-
const expiresAt = data.expires_in ? Date.now() + data.expires_in * 1000 : NaN;
|
|
113
|
-
if (!idToken || !Number.isFinite(expiresAt)) {
|
|
114
|
-
this.logger.error('[RoolClient] verify response missing id_token or expires_in');
|
|
115
|
-
return false;
|
|
116
|
-
}
|
|
117
|
-
this.acceptTokens(idToken, refreshToken, data.rool_token ?? null, expiresAt);
|
|
118
|
-
this.notifyAuthState(true);
|
|
68
|
+
this.emitAuthState(true);
|
|
119
69
|
return true;
|
|
120
70
|
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
71
|
+
async setPassword(password) {
|
|
72
|
+
const tokens = await this.getTokens();
|
|
73
|
+
if (!tokens)
|
|
74
|
+
throw new Error("Not authenticated");
|
|
75
|
+
const response = await this.fetchAuth("/set-password", {
|
|
76
|
+
method: "POST",
|
|
77
|
+
headers: {
|
|
78
|
+
"Content-Type": "application/json",
|
|
79
|
+
Authorization: `Bearer ${tokens.accessToken}`,
|
|
80
|
+
},
|
|
81
|
+
body: JSON.stringify({ password }),
|
|
82
|
+
});
|
|
83
|
+
const data = (await response.json().catch(() => null));
|
|
84
|
+
if (!response.ok) {
|
|
85
|
+
throw new Error(data?.error ?? `set-password failed: ${response.status}`);
|
|
86
|
+
}
|
|
87
|
+
const hasRefreshToken = typeof data?.refresh_token === "string";
|
|
88
|
+
const accepted = data &&
|
|
89
|
+
hasRefreshToken &&
|
|
90
|
+
this.acceptTokenResponse(data, { roolToken: tokens.roolToken });
|
|
91
|
+
if (!accepted)
|
|
92
|
+
await this.logout();
|
|
93
|
+
}
|
|
94
|
+
async requestEmailChange(newEmail) {
|
|
95
|
+
const tokens = await this.getTokens();
|
|
96
|
+
if (!tokens)
|
|
97
|
+
throw new Error("Not authenticated");
|
|
98
|
+
const response = await this.fetchAuth("/email-change", {
|
|
99
|
+
method: "POST",
|
|
100
|
+
headers: {
|
|
101
|
+
"Content-Type": "application/json",
|
|
102
|
+
Authorization: `Bearer ${tokens.accessToken}`,
|
|
103
|
+
},
|
|
104
|
+
body: JSON.stringify({ new_email: newEmail }),
|
|
105
|
+
});
|
|
106
|
+
if (response.ok)
|
|
107
|
+
return;
|
|
108
|
+
const data = (await response.json().catch(() => null));
|
|
109
|
+
if (data?.error) {
|
|
110
|
+
throw new EmailChangeError(data.error, data.message ?? data.error);
|
|
142
111
|
}
|
|
112
|
+
throw new Error(`email-change failed: ${response.status}`);
|
|
143
113
|
}
|
|
144
|
-
// ===========================================================================
|
|
145
|
-
// Protected helpers for subclasses
|
|
146
|
-
// ===========================================================================
|
|
147
|
-
/** Auth URL without trailing slash */
|
|
148
114
|
get authBaseUrl() {
|
|
149
|
-
return this.
|
|
115
|
+
return this.authUrl;
|
|
150
116
|
}
|
|
151
|
-
|
|
152
|
-
this.
|
|
117
|
+
fetchAuth(path, init) {
|
|
118
|
+
return this.fetchRequest(`${this.authUrl}${path}`, init);
|
|
153
119
|
}
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
120
|
+
acceptTokenResponse(data, fallback = {}) {
|
|
121
|
+
const accessToken = data.id_token;
|
|
122
|
+
const expiresIn = Number(data.expires_in);
|
|
123
|
+
if (typeof accessToken !== "string" ||
|
|
124
|
+
!Number.isFinite(expiresIn) ||
|
|
125
|
+
expiresIn <= 0) {
|
|
126
|
+
return false;
|
|
127
|
+
}
|
|
128
|
+
const refreshToken = typeof data.refresh_token === "string"
|
|
129
|
+
? data.refresh_token
|
|
130
|
+
: (fallback.refreshToken ?? null);
|
|
131
|
+
const roolToken = typeof data.rool_token === "string"
|
|
132
|
+
? data.rool_token
|
|
133
|
+
: data.rool_token === null
|
|
134
|
+
? null
|
|
135
|
+
: (fallback.roolToken ?? null);
|
|
136
|
+
this.writeTokens(accessToken, refreshToken, roolToken, Date.now() + expiresIn * 1000);
|
|
137
|
+
return true;
|
|
159
138
|
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
this.listenForVisibility();
|
|
139
|
+
emitAuthState(authenticated) {
|
|
140
|
+
for (const listener of this.listeners)
|
|
141
|
+
listener(authenticated);
|
|
164
142
|
}
|
|
165
|
-
/**
|
|
166
|
-
* Overridable hook: clear subclass-owned transient state on logout/cancel
|
|
167
|
-
* (e.g. an in-flight OAuth `state` or PKCE verifier). No-op by default.
|
|
168
|
-
*/
|
|
169
143
|
clearTransientState() { }
|
|
170
|
-
get storagePrefix() {
|
|
171
|
-
return `${DEFAULT_STORAGE_PREFIX}${this.endpointHash}_`;
|
|
172
|
-
}
|
|
173
|
-
/** Build a storage key scoped to this auth endpoint. */
|
|
174
144
|
keyFor(name) {
|
|
175
|
-
return `${this.
|
|
176
|
-
}
|
|
177
|
-
get storageKeys() {
|
|
178
|
-
const prefix = this.storagePrefix;
|
|
179
|
-
return {
|
|
180
|
-
access: `${prefix}access_token`,
|
|
181
|
-
refresh: `${prefix}refresh_token`,
|
|
182
|
-
rool: `${prefix}rool_token`,
|
|
183
|
-
expiresAt: `${prefix}token_expires_at`,
|
|
184
|
-
};
|
|
145
|
+
return `${STORAGE_PREFIX}${this.endpointHash}_${name}`;
|
|
185
146
|
}
|
|
186
147
|
readString(key) {
|
|
187
148
|
try {
|
|
@@ -196,7 +157,7 @@ export class BaseTokenAuthProvider {
|
|
|
196
157
|
localStorage.setItem(key, value);
|
|
197
158
|
}
|
|
198
159
|
catch {
|
|
199
|
-
//
|
|
160
|
+
// Storage can be unavailable in restricted browser contexts.
|
|
200
161
|
}
|
|
201
162
|
}
|
|
202
163
|
removeString(key) {
|
|
@@ -204,178 +165,97 @@ export class BaseTokenAuthProvider {
|
|
|
204
165
|
localStorage.removeItem(key);
|
|
205
166
|
}
|
|
206
167
|
catch {
|
|
207
|
-
//
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
scheduleTokenRefresh() {
|
|
211
|
-
this.cancelScheduledRefresh();
|
|
212
|
-
const expiresAt = this.readExpiresAt();
|
|
213
|
-
if (!expiresAt)
|
|
214
|
-
return;
|
|
215
|
-
const refreshAt = expiresAt - REFRESH_BUFFER_MS;
|
|
216
|
-
const delay = refreshAt - Date.now();
|
|
217
|
-
if (delay <= 0) {
|
|
218
|
-
// Already needs refresh
|
|
219
|
-
void this.tryRefreshToken();
|
|
220
|
-
}
|
|
221
|
-
else {
|
|
222
|
-
this.refreshTimeoutId = setTimeout(() => {
|
|
223
|
-
void this.tryRefreshToken();
|
|
224
|
-
}, delay);
|
|
168
|
+
// Storage can be unavailable in restricted browser contexts.
|
|
225
169
|
}
|
|
226
170
|
}
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
}
|
|
234
|
-
if (refreshToken) {
|
|
235
|
-
localStorage.setItem(this.storageKeys.refresh, refreshToken);
|
|
236
|
-
}
|
|
237
|
-
else {
|
|
238
|
-
localStorage.removeItem(this.storageKeys.refresh);
|
|
239
|
-
}
|
|
240
|
-
if (expiresAt !== null && Number.isFinite(expiresAt)) {
|
|
241
|
-
localStorage.setItem(this.storageKeys.expiresAt, Math.floor(expiresAt).toString());
|
|
242
|
-
}
|
|
243
|
-
else {
|
|
244
|
-
localStorage.removeItem(this.storageKeys.expiresAt);
|
|
245
|
-
}
|
|
171
|
+
get storageKeys() {
|
|
172
|
+
return {
|
|
173
|
+
access: this.keyFor("access_token"),
|
|
174
|
+
refresh: this.keyFor("refresh_token"),
|
|
175
|
+
rool: this.keyFor("rool_token"),
|
|
176
|
+
expiresAt: this.keyFor("token_expires_at"),
|
|
177
|
+
};
|
|
246
178
|
}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
else {
|
|
252
|
-
localStorage.removeItem(this.storageKeys.rool);
|
|
179
|
+
get endpointHash() {
|
|
180
|
+
let hash = 5381;
|
|
181
|
+
for (const character of this.authUrl) {
|
|
182
|
+
hash = ((hash << 5) + hash) ^ character.charCodeAt(0);
|
|
253
183
|
}
|
|
254
|
-
|
|
255
|
-
clearTokens() {
|
|
256
|
-
this.writeTokens(null, null, null);
|
|
257
|
-
this.writeRoolToken(null);
|
|
184
|
+
return (hash >>> 0).toString(16).padStart(8, "0");
|
|
258
185
|
}
|
|
259
186
|
readAccessToken() {
|
|
260
|
-
return
|
|
187
|
+
return this.readString(this.storageKeys.access);
|
|
261
188
|
}
|
|
262
189
|
readRoolToken() {
|
|
263
|
-
return
|
|
190
|
+
return this.readString(this.storageKeys.rool) ?? "";
|
|
264
191
|
}
|
|
265
192
|
readExpiresAt() {
|
|
266
|
-
const
|
|
267
|
-
|
|
268
|
-
return null;
|
|
269
|
-
const parsed = Number.parseInt(raw, 10);
|
|
270
|
-
return Number.isFinite(parsed) ? parsed : null;
|
|
193
|
+
const value = Number(this.readString(this.storageKeys.expiresAt));
|
|
194
|
+
return Number.isFinite(value) && value > 0 ? value : null;
|
|
271
195
|
}
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
*/
|
|
278
|
-
get endpointHash() {
|
|
279
|
-
const url = this.authBaseUrl;
|
|
280
|
-
// Simple djb2 hash
|
|
281
|
-
let hash = 5381;
|
|
282
|
-
for (let i = 0; i < url.length; i++) {
|
|
283
|
-
hash = ((hash << 5) + hash) ^ url.charCodeAt(i);
|
|
284
|
-
}
|
|
285
|
-
return (hash >>> 0).toString(16).padStart(8, '0');
|
|
196
|
+
writeTokens(accessToken, refreshToken, roolToken, expiresAt) {
|
|
197
|
+
this.writeOrRemove(this.storageKeys.access, accessToken);
|
|
198
|
+
this.writeOrRemove(this.storageKeys.refresh, refreshToken);
|
|
199
|
+
this.writeOrRemove(this.storageKeys.rool, roolToken);
|
|
200
|
+
this.writeOrRemove(this.storageKeys.expiresAt, expiresAt === null ? null : Math.floor(expiresAt).toString());
|
|
286
201
|
}
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
202
|
+
writeOrRemove(key, value) {
|
|
203
|
+
if (value)
|
|
204
|
+
this.writeString(key, value);
|
|
205
|
+
else
|
|
206
|
+
this.removeString(key);
|
|
207
|
+
}
|
|
208
|
+
clearTokens() {
|
|
209
|
+
this.writeTokens(null, null, null, null);
|
|
210
|
+
}
|
|
211
|
+
async refresh() {
|
|
212
|
+
if (this.refreshPromise)
|
|
290
213
|
return this.refreshPromise;
|
|
291
|
-
|
|
292
|
-
const refreshToken = localStorage.getItem(this.storageKeys.refresh);
|
|
214
|
+
const refreshToken = this.readString(this.storageKeys.refresh);
|
|
293
215
|
if (!refreshToken)
|
|
294
216
|
return false;
|
|
295
|
-
const roolToken =
|
|
296
|
-
this.refreshPromise = (
|
|
297
|
-
let response;
|
|
298
|
-
try {
|
|
299
|
-
response = await fetch(`${this.authBaseUrl}/refresh`, {
|
|
300
|
-
method: 'POST',
|
|
301
|
-
headers: { 'Content-Type': 'application/json' },
|
|
302
|
-
body: JSON.stringify({
|
|
303
|
-
refresh_token: refreshToken,
|
|
304
|
-
rool_token: roolToken,
|
|
305
|
-
}),
|
|
306
|
-
});
|
|
307
|
-
}
|
|
308
|
-
catch (error) {
|
|
309
|
-
// Network error - don't clear tokens, might work next time
|
|
310
|
-
this.logger.warn('[RoolClient] Token refresh network error:', error);
|
|
311
|
-
return false;
|
|
312
|
-
}
|
|
313
|
-
// 400/401 = refresh token is invalid, clear everything
|
|
314
|
-
if (response.status === 400 || response.status === 401) {
|
|
315
|
-
this.logger.warn('[RoolClient] Refresh token invalid, clearing credentials');
|
|
316
|
-
this.clearTokens();
|
|
317
|
-
this.notifyAuthState(false);
|
|
318
|
-
return false;
|
|
319
|
-
}
|
|
320
|
-
// Other HTTP errors - don't clear tokens, might be transient
|
|
321
|
-
if (!response.ok) {
|
|
322
|
-
this.logger.warn(`[RoolClient] Token refresh failed: ${response.status} ${response.statusText}`);
|
|
323
|
-
return false;
|
|
324
|
-
}
|
|
325
|
-
// Success - parse and store new tokens
|
|
326
|
-
try {
|
|
327
|
-
const data = await response.json();
|
|
328
|
-
const accessToken = data.id_token ?? null;
|
|
329
|
-
const nextRefreshToken = data.refresh_token ?? refreshToken;
|
|
330
|
-
const expiresAt = data.expires_in ? Date.now() + data.expires_in * 1000 : NaN;
|
|
331
|
-
if (!accessToken || !Number.isFinite(expiresAt)) {
|
|
332
|
-
this.logger.error('[RoolClient] Refresh response missing id_token or expires_in');
|
|
333
|
-
return false;
|
|
334
|
-
}
|
|
335
|
-
this.writeTokens(accessToken, nextRefreshToken, expiresAt);
|
|
336
|
-
this.writeRoolToken(data.rool_token ?? null);
|
|
337
|
-
this.scheduleTokenRefresh();
|
|
338
|
-
return true;
|
|
339
|
-
}
|
|
340
|
-
catch (error) {
|
|
341
|
-
this.logger.error('[RoolClient] Failed to parse refresh response:', error);
|
|
342
|
-
return false;
|
|
343
|
-
}
|
|
344
|
-
})().finally(() => {
|
|
217
|
+
const roolToken = this.readString(this.storageKeys.rool);
|
|
218
|
+
this.refreshPromise = this.performRefresh(refreshToken, roolToken).finally(() => {
|
|
345
219
|
this.refreshPromise = null;
|
|
346
220
|
});
|
|
347
221
|
return this.refreshPromise;
|
|
348
222
|
}
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
return;
|
|
352
|
-
if (this.boundVisibilityHandler)
|
|
353
|
-
return;
|
|
354
|
-
this.boundVisibilityHandler = () => {
|
|
355
|
-
if (document.visibilityState === 'visible') {
|
|
356
|
-
this.scheduleTokenRefresh();
|
|
357
|
-
}
|
|
358
|
-
};
|
|
359
|
-
document.addEventListener('visibilitychange', this.boundVisibilityHandler);
|
|
360
|
-
}
|
|
361
|
-
cancelScheduledRefresh() {
|
|
362
|
-
if (this.refreshTimeoutId !== null) {
|
|
363
|
-
clearTimeout(this.refreshTimeoutId);
|
|
364
|
-
this.refreshTimeoutId = null;
|
|
365
|
-
}
|
|
366
|
-
}
|
|
367
|
-
decodeAuthUser(accessToken) {
|
|
223
|
+
async performRefresh(refreshToken, roolToken) {
|
|
224
|
+
let response;
|
|
368
225
|
try {
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
226
|
+
response = await this.fetchAuth("/refresh", {
|
|
227
|
+
method: "POST",
|
|
228
|
+
headers: { "Content-Type": "application/json" },
|
|
229
|
+
body: JSON.stringify({
|
|
230
|
+
refresh_token: refreshToken,
|
|
231
|
+
rool_token: roolToken,
|
|
232
|
+
}),
|
|
233
|
+
});
|
|
374
234
|
}
|
|
375
235
|
catch (error) {
|
|
376
|
-
|
|
377
|
-
return
|
|
236
|
+
console.warn("[RoolAuth] Token refresh network error:", error);
|
|
237
|
+
return false;
|
|
238
|
+
}
|
|
239
|
+
if (response.status === 400 || response.status === 401) {
|
|
240
|
+
await this.logout();
|
|
241
|
+
return false;
|
|
378
242
|
}
|
|
243
|
+
if (!response.ok)
|
|
244
|
+
return false;
|
|
245
|
+
const data = await readTokenResponse(response);
|
|
246
|
+
return (!!data &&
|
|
247
|
+
this.acceptTokenResponse(data, {
|
|
248
|
+
refreshToken,
|
|
249
|
+
roolToken,
|
|
250
|
+
}));
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
async function readTokenResponse(response) {
|
|
254
|
+
try {
|
|
255
|
+
return (await response.json());
|
|
256
|
+
}
|
|
257
|
+
catch {
|
|
258
|
+
return null;
|
|
379
259
|
}
|
|
380
260
|
}
|
|
381
261
|
//# sourceMappingURL=auth-base.js.map
|
package/dist/auth-base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-base.js","sourceRoot":"","sources":["../src/auth-base.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth-base.js","sourceRoot":"","sources":["../src/auth-base.ts"],"names":[],"mappings":"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"}
|
package/dist/auth-browser.d.ts
CHANGED
|
@@ -1,33 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export type BrowserAuthConfig =
|
|
3
|
-
export declare class
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
initialize(): boolean;
|
|
9
|
-
/**
|
|
10
|
-
* Initiate login by redirecting to auth page.
|
|
11
|
-
* @param appName - The name of the application requesting login (displayed on auth page)
|
|
12
|
-
*/
|
|
13
|
-
login(appName: string, params?: Record<string, string>): void;
|
|
14
|
-
/**
|
|
15
|
-
* Initiate signup by redirecting to auth page.
|
|
16
|
-
* @param appName - The name of the application requesting signup (displayed on auth page)
|
|
17
|
-
*/
|
|
18
|
-
signup(appName: string, params?: Record<string, string>): void;
|
|
19
|
-
/**
|
|
20
|
-
* Process auth callback from URL fragment.
|
|
21
|
-
* Should be called on page load.
|
|
22
|
-
* @returns true if callback was processed
|
|
23
|
-
*/
|
|
24
|
-
processCallback(): boolean;
|
|
1
|
+
import { TokenAuth, type TokenAuthConfig } from "./auth-base.js";
|
|
2
|
+
export type BrowserAuthConfig = TokenAuthConfig;
|
|
3
|
+
export declare class BrowserAuth extends TokenAuth {
|
|
4
|
+
initialize(): Promise<boolean>;
|
|
5
|
+
login(appName: string, params?: Record<string, string>): Promise<void>;
|
|
6
|
+
signup(appName: string, params?: Record<string, string>): Promise<void>;
|
|
7
|
+
private processCallback;
|
|
25
8
|
private redirectToAuth;
|
|
26
9
|
protected clearTransientState(): void;
|
|
27
10
|
private get stateKey();
|
|
28
11
|
private storeState;
|
|
29
12
|
private readState;
|
|
30
13
|
private clearState;
|
|
31
|
-
private generateState;
|
|
32
14
|
}
|
|
33
15
|
//# sourceMappingURL=auth-browser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-browser.d.ts","sourceRoot":"","sources":["../src/auth-browser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth-browser.d.ts","sourceRoot":"","sources":["../src/auth-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjE,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAEhD,qBAAa,WAAY,SAAQ,SAAS;IAClC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAK9B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAItE,MAAM,CACV,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC;IAIhB,OAAO,CAAC,eAAe;IAmCvB,OAAO,CAAC,cAAc;IAuBtB,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAIrC,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,UAAU;CAOnB"}
|