cocobase 1.3.4 → 1.4.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/cjs/core/auth.d.ts +140 -22
- package/dist/cjs/core/auth.d.ts.map +1 -1
- package/dist/cjs/core/auth.js +194 -21
- package/dist/cjs/core/auth.js.map +1 -1
- package/dist/cjs/core/core.d.ts +48 -5
- package/dist/cjs/core/core.d.ts.map +1 -1
- package/dist/cjs/core/core.js +3 -0
- package/dist/cjs/core/core.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/realtime/multiplayer.d.ts +228 -0
- package/dist/cjs/realtime/multiplayer.d.ts.map +1 -0
- package/dist/cjs/realtime/multiplayer.js +404 -0
- package/dist/cjs/realtime/multiplayer.js.map +1 -0
- package/dist/cjs/types/types.d.ts +31 -1
- package/dist/cjs/types/types.d.ts.map +1 -1
- package/dist/core/auth.d.ts +140 -22
- package/dist/core/auth.d.ts.map +1 -1
- package/dist/core/auth.js +194 -21
- package/dist/core/auth.js.map +1 -1
- package/dist/core/core.d.ts +48 -5
- package/dist/core/core.d.ts.map +1 -1
- package/dist/core/core.js +3 -0
- package/dist/core/core.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/realtime/multiplayer.d.ts +228 -0
- package/dist/realtime/multiplayer.d.ts.map +1 -0
- package/dist/realtime/multiplayer.js +399 -0
- package/dist/realtime/multiplayer.js.map +1 -0
- package/dist/types/types.d.ts +31 -1
- package/dist/types/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cjs/core/auth.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CocobaseConfig, AppUser, AppUserList, Query, AuthCallbacks } from "../types/types.js";
|
|
1
|
+
import { CocobaseConfig, AppUser, AppUserList, Query, AuthCallbacks, Response, LoginResult } from "../types/types.js";
|
|
2
2
|
/**
|
|
3
3
|
* Authentication handler for Cocobase client.
|
|
4
4
|
*
|
|
@@ -137,32 +137,46 @@ export declare class AuthHandler {
|
|
|
137
137
|
*
|
|
138
138
|
* @param email - User's email address
|
|
139
139
|
* @param password - User's password
|
|
140
|
-
* @returns Promise
|
|
140
|
+
* @returns Promise resolving to LoginResult indicating success or 2FA requirement
|
|
141
141
|
*
|
|
142
142
|
* @example
|
|
143
143
|
* ```typescript
|
|
144
|
-
* await db.auth.login('user@example.com', 'password123');
|
|
145
|
-
*
|
|
144
|
+
* const result = await db.auth.login('user@example.com', 'password123');
|
|
145
|
+
*
|
|
146
|
+
* if (result.requires_2fa) {
|
|
147
|
+
* // Show 2FA input form to user
|
|
148
|
+
* console.log(result.message); // "2FA code sent to your email"
|
|
149
|
+
* // Later, call verify2FALogin with the code
|
|
150
|
+
* } else {
|
|
151
|
+
* // Login successful
|
|
152
|
+
* console.log('Logged in as:', result.user?.email);
|
|
153
|
+
* }
|
|
146
154
|
* ```
|
|
147
155
|
*/
|
|
148
|
-
login(email: string, password: string): Promise<
|
|
156
|
+
login(email: string, password: string): Promise<LoginResult>;
|
|
149
157
|
/**
|
|
150
158
|
* Registers a new user with email, password, and optional additional data.
|
|
151
159
|
*
|
|
152
160
|
* @param email - User's email address
|
|
153
161
|
* @param password - User's password
|
|
154
162
|
* @param data - Optional additional user data
|
|
155
|
-
* @returns Promise
|
|
163
|
+
* @returns Promise resolving to LoginResult (registration may require 2FA if enabled)
|
|
156
164
|
*
|
|
157
165
|
* @example
|
|
158
166
|
* ```typescript
|
|
159
|
-
* await db.auth.register('user@example.com', 'password123', {
|
|
167
|
+
* const result = await db.auth.register('user@example.com', 'password123', {
|
|
160
168
|
* username: 'johndoe',
|
|
161
169
|
* fullName: 'John Doe'
|
|
162
170
|
* });
|
|
171
|
+
*
|
|
172
|
+
* if (result.requires_2fa) {
|
|
173
|
+
* // Handle 2FA verification
|
|
174
|
+
* } else {
|
|
175
|
+
* console.log('Registered as:', result.user?.email);
|
|
176
|
+
* }
|
|
163
177
|
* ```
|
|
164
178
|
*/
|
|
165
|
-
register(email: string, password: string, data?: Record<string, any>): Promise<
|
|
179
|
+
register(email: string, password: string, data?: Record<string, any>): Promise<LoginResult>;
|
|
166
180
|
/**
|
|
167
181
|
* Authenticates a user using Google Sign-In with ID token.
|
|
168
182
|
*
|
|
@@ -195,32 +209,43 @@ export declare class AuthHandler {
|
|
|
195
209
|
*/
|
|
196
210
|
loginWithGoogle(idToken: string, platform?: "web" | "mobile" | "ios" | "android"): Promise<AppUser>;
|
|
197
211
|
/**
|
|
198
|
-
* Authenticates a user using GitHub OAuth with
|
|
212
|
+
* Authenticates a user using GitHub OAuth with authorization code.
|
|
199
213
|
*
|
|
200
|
-
* This method
|
|
201
|
-
* or logs in an existing user who registered with GitHub OAuth.
|
|
214
|
+
* This method exchanges the GitHub authorization code for a user session.
|
|
215
|
+
* It creates a new user or logs in an existing user who registered with GitHub OAuth.
|
|
202
216
|
*
|
|
203
|
-
* @param
|
|
217
|
+
* @param code - GitHub authorization code from OAuth callback
|
|
218
|
+
* @param redirectUri - The redirect URI used in the OAuth flow (must match the one registered)
|
|
204
219
|
* @param platform - Optional platform identifier ('web', 'mobile', 'ios', 'android')
|
|
205
220
|
* @returns Promise resolving to the authenticated user object
|
|
206
221
|
*
|
|
207
222
|
* @throws {Error} If GitHub Sign-In is not enabled in project settings
|
|
208
|
-
* @throws {Error} If the GitHub
|
|
223
|
+
* @throws {Error} If the GitHub authorization code is invalid or expired
|
|
209
224
|
* @throws {Error} If email is already registered with password authentication
|
|
210
225
|
* @throws {Error} If email is already registered with other OAuth providers
|
|
211
226
|
*
|
|
212
227
|
* @example
|
|
213
228
|
* ```typescript
|
|
214
|
-
* // Web - After GitHub OAuth
|
|
215
|
-
*
|
|
216
|
-
* const
|
|
217
|
-
*
|
|
218
|
-
*
|
|
219
|
-
* //
|
|
220
|
-
* const
|
|
229
|
+
* // Web - After GitHub OAuth callback
|
|
230
|
+
* // 1. Redirect user to GitHub OAuth
|
|
231
|
+
* const githubAuthUrl = `https://github.com/login/oauth/authorize?client_id=${CLIENT_ID}&redirect_uri=${REDIRECT_URI}`;
|
|
232
|
+
* window.location.href = githubAuthUrl;
|
|
233
|
+
*
|
|
234
|
+
* // 2. Handle the callback with the code
|
|
235
|
+
* const urlParams = new URLSearchParams(window.location.search);
|
|
236
|
+
* const code = urlParams.get('code');
|
|
237
|
+
*
|
|
238
|
+
* if (code) {
|
|
239
|
+
* const user = await db.auth.loginWithGithub(
|
|
240
|
+
* code,
|
|
241
|
+
* 'http://localhost:3000/auth/github/callback',
|
|
242
|
+
* 'web'
|
|
243
|
+
* );
|
|
244
|
+
* console.log('Logged in:', user.email);
|
|
245
|
+
* }
|
|
221
246
|
* ```
|
|
222
247
|
*/
|
|
223
|
-
loginWithGithub(
|
|
248
|
+
loginWithGithub(code: string, redirectUri: string, platform?: "web" | "mobile" | "ios" | "android"): Promise<AppUser>;
|
|
224
249
|
/**
|
|
225
250
|
* Register a new user with file uploads (avatar, cover photo, etc.)
|
|
226
251
|
*
|
|
@@ -248,7 +273,7 @@ export declare class AuthHandler {
|
|
|
248
273
|
* );
|
|
249
274
|
* ```
|
|
250
275
|
*/
|
|
251
|
-
registerWithFiles(email: string, password: string, data?: Record<string, any>, files?: Record<string, File | File[]>): Promise<
|
|
276
|
+
registerWithFiles(email: string, password: string, data?: Record<string, any>, files?: Record<string, File | File[]>): Promise<LoginResult>;
|
|
252
277
|
/**
|
|
253
278
|
* Logs out the current user by clearing the token and user data.
|
|
254
279
|
*
|
|
@@ -378,6 +403,99 @@ export declare class AuthHandler {
|
|
|
378
403
|
* ```
|
|
379
404
|
*/
|
|
380
405
|
getUserById<T = any>(userId: string): Promise<AppUser>;
|
|
406
|
+
/**
|
|
407
|
+
* Enables Two-Factor Authentication (2FA) for the current user.
|
|
408
|
+
*
|
|
409
|
+
* @returns Promise that resolves when 2FA is enabled
|
|
410
|
+
*
|
|
411
|
+
* @example
|
|
412
|
+
* ```typescript
|
|
413
|
+
* await db.auth.enable2FA();
|
|
414
|
+
* console.log('2FA enabled for user');
|
|
415
|
+
* ```
|
|
416
|
+
*/
|
|
417
|
+
enable2FA(): Promise<void>;
|
|
418
|
+
/**
|
|
419
|
+
* Disables Two-Factor Authentication (2FA) for the current user.
|
|
420
|
+
*
|
|
421
|
+
* @returns Promise that resolves when 2FA is disabled
|
|
422
|
+
*
|
|
423
|
+
* @example
|
|
424
|
+
* ```typescript
|
|
425
|
+
* await db.auth.disable2FA();
|
|
426
|
+
* console.log('2FA disabled for user');
|
|
427
|
+
* ```
|
|
428
|
+
*/
|
|
429
|
+
disable2FA(): Promise<void>;
|
|
430
|
+
/**
|
|
431
|
+
* Sends a Two-Factor Authentication (2FA) code to the user's registered method (e.g., email, SMS).
|
|
432
|
+
*
|
|
433
|
+
* @returns Promise that resolves when the 2FA code is sent
|
|
434
|
+
*
|
|
435
|
+
* @example
|
|
436
|
+
* ```typescript
|
|
437
|
+
* await db.auth.send2FACode();
|
|
438
|
+
* console.log('2FA code sent to user');
|
|
439
|
+
* ```
|
|
440
|
+
*/
|
|
441
|
+
send2FACode(email: string): Promise<void>;
|
|
442
|
+
/**
|
|
443
|
+
* Completes login after 2FA verification.
|
|
444
|
+
* Call this after login() returns requires_2fa: true and the user provides the 2FA code.
|
|
445
|
+
*
|
|
446
|
+
* @param email - User's email address (same as used in login)
|
|
447
|
+
* @param code - The 2FA code from email/authenticator
|
|
448
|
+
* @returns Promise resolving to the authenticated user
|
|
449
|
+
*
|
|
450
|
+
* @example
|
|
451
|
+
* ```typescript
|
|
452
|
+
* // First, attempt login
|
|
453
|
+
* const result = await db.auth.login('user@example.com', 'password123');
|
|
454
|
+
*
|
|
455
|
+
* if (result.requires_2fa) {
|
|
456
|
+
* // User enters the 2FA code they received
|
|
457
|
+
* const user = await db.auth.verify2FALogin('user@example.com', '123456');
|
|
458
|
+
* console.log('Logged in as:', user.email);
|
|
459
|
+
* }
|
|
460
|
+
* ```
|
|
461
|
+
*/
|
|
462
|
+
verify2FALogin(email: string, code: string): Promise<AppUser>;
|
|
463
|
+
/**
|
|
464
|
+
* Requests an email verification to be sent to the user's email address.
|
|
465
|
+
*
|
|
466
|
+
* @returns Promise that resolves when the verification email is requested
|
|
467
|
+
*
|
|
468
|
+
* @example
|
|
469
|
+
* ```typescript
|
|
470
|
+
* await db.auth.requestEmailVerification();
|
|
471
|
+
* console.log('Verification email requested');
|
|
472
|
+
* ```
|
|
473
|
+
*/
|
|
474
|
+
requestEmailVerification(): Promise<Response>;
|
|
475
|
+
/**
|
|
476
|
+
* Verifies the user's email using the provided token.
|
|
477
|
+
*
|
|
478
|
+
* @param token - Verification token
|
|
479
|
+
* @returns Promise that resolves when the email is verified
|
|
480
|
+
*
|
|
481
|
+
* @example
|
|
482
|
+
* ```typescript
|
|
483
|
+
* await db.auth.verifyEmail('verification-token');
|
|
484
|
+
* console.log('Email verified');
|
|
485
|
+
* ```
|
|
486
|
+
*/
|
|
487
|
+
verifyEmail(token: string): Promise<Response>;
|
|
488
|
+
/** * Resends the email verification to the user's email address.
|
|
489
|
+
*
|
|
490
|
+
* @returns Promise that resolves when the verification email is resent
|
|
491
|
+
*
|
|
492
|
+
* @example
|
|
493
|
+
* ```typescript
|
|
494
|
+
* await db.auth.resendVerificationEmail();
|
|
495
|
+
* console.log('Verification email resent');
|
|
496
|
+
* ```
|
|
497
|
+
*/
|
|
498
|
+
resendVerificationEmail(): Promise<void>;
|
|
381
499
|
}
|
|
382
500
|
export default AuthHandler;
|
|
383
501
|
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/core/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAEd,OAAO,EACP,WAAW,EACX,KAAK,EAEL,aAAa,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/core/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/core/auth.js
CHANGED
|
@@ -129,7 +129,6 @@ class AuthHandler {
|
|
|
129
129
|
async request(method, path, body, useDataKey = true) {
|
|
130
130
|
const url = `${this.baseURL}${path}`;
|
|
131
131
|
const data = useDataKey ? { data: body } : body;
|
|
132
|
-
console.log("request made");
|
|
133
132
|
try {
|
|
134
133
|
const res = await fetch(url, {
|
|
135
134
|
method,
|
|
@@ -227,17 +226,33 @@ class AuthHandler {
|
|
|
227
226
|
*
|
|
228
227
|
* @param email - User's email address
|
|
229
228
|
* @param password - User's password
|
|
230
|
-
* @returns Promise
|
|
229
|
+
* @returns Promise resolving to LoginResult indicating success or 2FA requirement
|
|
231
230
|
*
|
|
232
231
|
* @example
|
|
233
232
|
* ```typescript
|
|
234
|
-
* await db.auth.login('user@example.com', 'password123');
|
|
235
|
-
*
|
|
233
|
+
* const result = await db.auth.login('user@example.com', 'password123');
|
|
234
|
+
*
|
|
235
|
+
* if (result.requires_2fa) {
|
|
236
|
+
* // Show 2FA input form to user
|
|
237
|
+
* console.log(result.message); // "2FA code sent to your email"
|
|
238
|
+
* // Later, call verify2FALogin with the code
|
|
239
|
+
* } else {
|
|
240
|
+
* // Login successful
|
|
241
|
+
* console.log('Logged in as:', result.user?.email);
|
|
242
|
+
* }
|
|
236
243
|
* ```
|
|
237
244
|
*/
|
|
238
245
|
async login(email, password) {
|
|
239
246
|
const response = await this.request("POST", `/auth-collections/login`, { email, password }, false // Do not use data key for auth endpoints
|
|
240
247
|
);
|
|
248
|
+
// Check if 2FA is required
|
|
249
|
+
if (response.requires_2fa) {
|
|
250
|
+
return {
|
|
251
|
+
requires_2fa: true,
|
|
252
|
+
message: response.message,
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
// Normal login flow
|
|
241
256
|
this.token = response.access_token;
|
|
242
257
|
this.setToken(this.token);
|
|
243
258
|
if (!response.user) {
|
|
@@ -250,6 +265,10 @@ class AuthHandler {
|
|
|
250
265
|
if (this.user) {
|
|
251
266
|
this.callbacks.onLogin?.(this.user, this.token);
|
|
252
267
|
}
|
|
268
|
+
return {
|
|
269
|
+
requires_2fa: false,
|
|
270
|
+
user: this.user,
|
|
271
|
+
};
|
|
253
272
|
}
|
|
254
273
|
/**
|
|
255
274
|
* Registers a new user with email, password, and optional additional data.
|
|
@@ -257,19 +276,32 @@ class AuthHandler {
|
|
|
257
276
|
* @param email - User's email address
|
|
258
277
|
* @param password - User's password
|
|
259
278
|
* @param data - Optional additional user data
|
|
260
|
-
* @returns Promise
|
|
279
|
+
* @returns Promise resolving to LoginResult (registration may require 2FA if enabled)
|
|
261
280
|
*
|
|
262
281
|
* @example
|
|
263
282
|
* ```typescript
|
|
264
|
-
* await db.auth.register('user@example.com', 'password123', {
|
|
283
|
+
* const result = await db.auth.register('user@example.com', 'password123', {
|
|
265
284
|
* username: 'johndoe',
|
|
266
285
|
* fullName: 'John Doe'
|
|
267
286
|
* });
|
|
287
|
+
*
|
|
288
|
+
* if (result.requires_2fa) {
|
|
289
|
+
* // Handle 2FA verification
|
|
290
|
+
* } else {
|
|
291
|
+
* console.log('Registered as:', result.user?.email);
|
|
292
|
+
* }
|
|
268
293
|
* ```
|
|
269
294
|
*/
|
|
270
295
|
async register(email, password, data) {
|
|
271
296
|
const response = await this.request("POST", `/auth-collections/signup`, { email, password, data }, false // Do not use data key for auth endpoints
|
|
272
297
|
);
|
|
298
|
+
// Check if 2FA is required
|
|
299
|
+
if (response.requires_2fa) {
|
|
300
|
+
return {
|
|
301
|
+
requires_2fa: true,
|
|
302
|
+
message: response.message,
|
|
303
|
+
};
|
|
304
|
+
}
|
|
273
305
|
this.token = response.access_token;
|
|
274
306
|
this.setToken(this.token);
|
|
275
307
|
if (!response.user) {
|
|
@@ -282,6 +314,10 @@ class AuthHandler {
|
|
|
282
314
|
if (this.user) {
|
|
283
315
|
this.callbacks.onRegister?.(this.user, this.token);
|
|
284
316
|
}
|
|
317
|
+
return {
|
|
318
|
+
requires_2fa: false,
|
|
319
|
+
user: this.user,
|
|
320
|
+
};
|
|
285
321
|
}
|
|
286
322
|
/**
|
|
287
323
|
* Authenticates a user using Google Sign-In with ID token.
|
|
@@ -323,33 +359,44 @@ class AuthHandler {
|
|
|
323
359
|
return response.user;
|
|
324
360
|
}
|
|
325
361
|
/**
|
|
326
|
-
* Authenticates a user using GitHub OAuth with
|
|
362
|
+
* Authenticates a user using GitHub OAuth with authorization code.
|
|
327
363
|
*
|
|
328
|
-
* This method
|
|
329
|
-
* or logs in an existing user who registered with GitHub OAuth.
|
|
364
|
+
* This method exchanges the GitHub authorization code for a user session.
|
|
365
|
+
* It creates a new user or logs in an existing user who registered with GitHub OAuth.
|
|
330
366
|
*
|
|
331
|
-
* @param
|
|
367
|
+
* @param code - GitHub authorization code from OAuth callback
|
|
368
|
+
* @param redirectUri - The redirect URI used in the OAuth flow (must match the one registered)
|
|
332
369
|
* @param platform - Optional platform identifier ('web', 'mobile', 'ios', 'android')
|
|
333
370
|
* @returns Promise resolving to the authenticated user object
|
|
334
371
|
*
|
|
335
372
|
* @throws {Error} If GitHub Sign-In is not enabled in project settings
|
|
336
|
-
* @throws {Error} If the GitHub
|
|
373
|
+
* @throws {Error} If the GitHub authorization code is invalid or expired
|
|
337
374
|
* @throws {Error} If email is already registered with password authentication
|
|
338
375
|
* @throws {Error} If email is already registered with other OAuth providers
|
|
339
376
|
*
|
|
340
377
|
* @example
|
|
341
378
|
* ```typescript
|
|
342
|
-
* // Web - After GitHub OAuth
|
|
343
|
-
*
|
|
344
|
-
* const
|
|
345
|
-
*
|
|
346
|
-
*
|
|
347
|
-
* //
|
|
348
|
-
* const
|
|
379
|
+
* // Web - After GitHub OAuth callback
|
|
380
|
+
* // 1. Redirect user to GitHub OAuth
|
|
381
|
+
* const githubAuthUrl = `https://github.com/login/oauth/authorize?client_id=${CLIENT_ID}&redirect_uri=${REDIRECT_URI}`;
|
|
382
|
+
* window.location.href = githubAuthUrl;
|
|
383
|
+
*
|
|
384
|
+
* // 2. Handle the callback with the code
|
|
385
|
+
* const urlParams = new URLSearchParams(window.location.search);
|
|
386
|
+
* const code = urlParams.get('code');
|
|
387
|
+
*
|
|
388
|
+
* if (code) {
|
|
389
|
+
* const user = await db.auth.loginWithGithub(
|
|
390
|
+
* code,
|
|
391
|
+
* 'http://localhost:3000/auth/github/callback',
|
|
392
|
+
* 'web'
|
|
393
|
+
* );
|
|
394
|
+
* console.log('Logged in:', user.email);
|
|
395
|
+
* }
|
|
349
396
|
* ```
|
|
350
397
|
*/
|
|
351
|
-
async loginWithGithub(
|
|
352
|
-
const response = await this.request("POST", "/auth-collections/github-verify", {
|
|
398
|
+
async loginWithGithub(code, redirectUri, platform) {
|
|
399
|
+
const response = await this.request("POST", "/auth-collections/github-verify", { code, redirect_uri: redirectUri, platform }, false);
|
|
353
400
|
this.token = response.access_token;
|
|
354
401
|
this.setToken(response.access_token);
|
|
355
402
|
this.setUser(response.user);
|
|
@@ -414,12 +461,22 @@ class AuthHandler {
|
|
|
414
461
|
throw new Error(`Registration failed: ${errorText}`);
|
|
415
462
|
}
|
|
416
463
|
const response = (await res.json());
|
|
464
|
+
// Check if 2FA is required
|
|
465
|
+
if (response.requires_2fa) {
|
|
466
|
+
return {
|
|
467
|
+
requires_2fa: true,
|
|
468
|
+
message: response.message,
|
|
469
|
+
};
|
|
470
|
+
}
|
|
417
471
|
this.token = response.access_token;
|
|
418
472
|
this.setToken(response.access_token);
|
|
419
473
|
this.setUser(response.user);
|
|
420
474
|
// Trigger register callback
|
|
421
475
|
this.callbacks.onRegister?.(response.user, response.access_token);
|
|
422
|
-
return
|
|
476
|
+
return {
|
|
477
|
+
requires_2fa: false,
|
|
478
|
+
user: response.user,
|
|
479
|
+
};
|
|
423
480
|
}
|
|
424
481
|
/**
|
|
425
482
|
* Logs out the current user by clearing the token and user data.
|
|
@@ -653,6 +710,122 @@ class AuthHandler {
|
|
|
653
710
|
getUserById(userId) {
|
|
654
711
|
return this.request("GET", `/auth-collections/users/${userId}`);
|
|
655
712
|
}
|
|
713
|
+
// ADDITIONAL SECURITY METHODS
|
|
714
|
+
/**
|
|
715
|
+
* Enables Two-Factor Authentication (2FA) for the current user.
|
|
716
|
+
*
|
|
717
|
+
* @returns Promise that resolves when 2FA is enabled
|
|
718
|
+
*
|
|
719
|
+
* @example
|
|
720
|
+
* ```typescript
|
|
721
|
+
* await db.auth.enable2FA();
|
|
722
|
+
* console.log('2FA enabled for user');
|
|
723
|
+
* ```
|
|
724
|
+
*/
|
|
725
|
+
enable2FA() {
|
|
726
|
+
return this.request("POST", `/auth-collections/2fa/enable`, {}, false);
|
|
727
|
+
}
|
|
728
|
+
/**
|
|
729
|
+
* Disables Two-Factor Authentication (2FA) for the current user.
|
|
730
|
+
*
|
|
731
|
+
* @returns Promise that resolves when 2FA is disabled
|
|
732
|
+
*
|
|
733
|
+
* @example
|
|
734
|
+
* ```typescript
|
|
735
|
+
* await db.auth.disable2FA();
|
|
736
|
+
* console.log('2FA disabled for user');
|
|
737
|
+
* ```
|
|
738
|
+
*/
|
|
739
|
+
disable2FA() {
|
|
740
|
+
return this.request("POST", `/auth-collections/2fa/disable`, {}, false);
|
|
741
|
+
}
|
|
742
|
+
/**
|
|
743
|
+
* Sends a Two-Factor Authentication (2FA) code to the user's registered method (e.g., email, SMS).
|
|
744
|
+
*
|
|
745
|
+
* @returns Promise that resolves when the 2FA code is sent
|
|
746
|
+
*
|
|
747
|
+
* @example
|
|
748
|
+
* ```typescript
|
|
749
|
+
* await db.auth.send2FACode();
|
|
750
|
+
* console.log('2FA code sent to user');
|
|
751
|
+
* ```
|
|
752
|
+
*/
|
|
753
|
+
send2FACode(email) {
|
|
754
|
+
return this.request("POST", `/auth-collections/2fa/send-code`, {
|
|
755
|
+
email
|
|
756
|
+
}, false);
|
|
757
|
+
}
|
|
758
|
+
/**
|
|
759
|
+
* Completes login after 2FA verification.
|
|
760
|
+
* Call this after login() returns requires_2fa: true and the user provides the 2FA code.
|
|
761
|
+
*
|
|
762
|
+
* @param email - User's email address (same as used in login)
|
|
763
|
+
* @param code - The 2FA code from email/authenticator
|
|
764
|
+
* @returns Promise resolving to the authenticated user
|
|
765
|
+
*
|
|
766
|
+
* @example
|
|
767
|
+
* ```typescript
|
|
768
|
+
* // First, attempt login
|
|
769
|
+
* const result = await db.auth.login('user@example.com', 'password123');
|
|
770
|
+
*
|
|
771
|
+
* if (result.requires_2fa) {
|
|
772
|
+
* // User enters the 2FA code they received
|
|
773
|
+
* const user = await db.auth.verify2FALogin('user@example.com', '123456');
|
|
774
|
+
* console.log('Logged in as:', user.email);
|
|
775
|
+
* }
|
|
776
|
+
* ```
|
|
777
|
+
*/
|
|
778
|
+
async verify2FALogin(email, code) {
|
|
779
|
+
const response = await this.request("POST", `/auth-collections/2fa/verify`, { email, code }, false);
|
|
780
|
+
this.token = response.access_token;
|
|
781
|
+
this.setToken(this.token);
|
|
782
|
+
this.setUser(response.user);
|
|
783
|
+
// Trigger login callback
|
|
784
|
+
this.callbacks.onLogin?.(response.user, response.access_token);
|
|
785
|
+
return response.user;
|
|
786
|
+
}
|
|
787
|
+
/**
|
|
788
|
+
* Requests an email verification to be sent to the user's email address.
|
|
789
|
+
*
|
|
790
|
+
* @returns Promise that resolves when the verification email is requested
|
|
791
|
+
*
|
|
792
|
+
* @example
|
|
793
|
+
* ```typescript
|
|
794
|
+
* await db.auth.requestEmailVerification();
|
|
795
|
+
* console.log('Verification email requested');
|
|
796
|
+
* ```
|
|
797
|
+
*/
|
|
798
|
+
requestEmailVerification() {
|
|
799
|
+
return this.request("POST", `/auth-collections/verify-email/send`, {}, false);
|
|
800
|
+
}
|
|
801
|
+
/**
|
|
802
|
+
* Verifies the user's email using the provided token.
|
|
803
|
+
*
|
|
804
|
+
* @param token - Verification token
|
|
805
|
+
* @returns Promise that resolves when the email is verified
|
|
806
|
+
*
|
|
807
|
+
* @example
|
|
808
|
+
* ```typescript
|
|
809
|
+
* await db.auth.verifyEmail('verification-token');
|
|
810
|
+
* console.log('Email verified');
|
|
811
|
+
* ```
|
|
812
|
+
*/
|
|
813
|
+
verifyEmail(token) {
|
|
814
|
+
return this.request("POST", `/auth-collections/verify-email/verify`, { token }, false);
|
|
815
|
+
}
|
|
816
|
+
/** * Resends the email verification to the user's email address.
|
|
817
|
+
*
|
|
818
|
+
* @returns Promise that resolves when the verification email is resent
|
|
819
|
+
*
|
|
820
|
+
* @example
|
|
821
|
+
* ```typescript
|
|
822
|
+
* await db.auth.resendVerificationEmail();
|
|
823
|
+
* console.log('Verification email resent');
|
|
824
|
+
* ```
|
|
825
|
+
*/
|
|
826
|
+
resendVerificationEmail() {
|
|
827
|
+
return this.request("POST", `/auth-collections/verify-email/resend`, {}, false);
|
|
828
|
+
}
|
|
656
829
|
}
|
|
657
830
|
exports.AuthHandler = AuthHandler;
|
|
658
831
|
exports.default = AuthHandler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/core/auth.ts"],"names":[],"mappings":";;;AASA,gDAK2B;AAE3B;;;;;;;;;;;GAWG;AACH,MAAa,WAAW;IAOtB;;;;OAIG;IACH,YAAY,MAAsB;QAP1B,cAAS,GAAkB,EAAE,CAAC;QAQpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,2BAA2B,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8CG;IACH,WAAW,CAAC,SAAwB;QAClC,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,EAAE,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAA,4BAAiB,EAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,IAAa;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAA,4BAAiB,EAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,OAAO,CACnB,MAA2C,EAC3C,IAAY,EACZ,IAAc,EACd,aAAsB,IAAI;QAE1B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAE3B,MAAM;gBACN,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACjE;gBACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChD,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBACnC,IAAI,WAAW,CAAC;gBAChB,IAAI,CAAC;oBACH,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACtC,CAAC;gBAAC,MAAM,CAAC;oBACP,WAAW,GAAG,SAAS,CAAC;gBAC1B,CAAC;gBAED,MAAM,YAAY,GAAG;oBACnB,UAAU,EAAE,GAAG,CAAC,MAAM;oBACtB,GAAG;oBACH,MAAM;oBACN,KAAK,EAAE,WAAW;oBAClB,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;iBACzD,CAAC;gBAEF,MAAM,IAAI,KAAK,CACb,oBAAoB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAC5D,CAAC;YACJ,CAAC;YAED,OAAO,GAAG,CAAC,IAAI,EAAgB,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CACb,2BAA2B,MAAM,eAAe,GAAG,KAAK,KAAK,EAAE,CAChE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,kBAAkB,CAAC,MAAc,EAAE,MAAc;QACvD,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,GAAG;gBACN,OAAO,iDAAiD,CAAC;YAC3D,KAAK,GAAG;gBACN,OAAO,6EAA6E,CAAC;YACvF,KAAK,GAAG;gBACN,OAAO,0EAA0E,CAAC;YACpF,KAAK,GAAG;gBACN,OAAO,OAAO,MAAM,6FAA6F,CAAC;YACpH,KAAK,GAAG;gBACN,OAAO,yEAAyE,CAAC;YACnF;gBACE,OAAO,4DAA4D,CAAC;QACxE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,KAAK,GAAG,IAAA,8BAAmB,EAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAA,8BAAmB,EAAC,eAAe,CAAC,CAAC;QAClD,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;gBACtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACzB,CAAC;QAED,qCAAqC;QACrC,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,QAAgB;QACzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,yBAAyB,EACzB,EAAE,KAAK,EAAE,QAAQ,EAAE,EACnB,KAAK,CAAC,yCAAyC;SAChD,CAAC;QACF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,yBAAyB;QACzB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,QAAgB,EAAE,IAA0B;QACxE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,0BAA0B,EAC1B,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EACzB,KAAK,CAAC,yCAAyC;SAChD,CAAC;QACF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC;aAAI,CAAC;YACJ,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;QAED,4BAA4B;QAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,KAAK,CAAC,eAAe,CACnB,OAAe,EACf,QAA+C;QAE/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAIjC,MAAM,EACN,iCAAiC,EACjC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAC/B,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE5B,yBAAyB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE/D,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,CAAC,eAAe,CACnB,WAAmB,EACnB,QAA+C;QAE/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAIjC,MAAM,EACN,iCAAiC,EACjC,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,EACvC,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE5B,yBAAyB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE/D,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK,CAAC,iBAAiB,CACrB,KAAa,EACb,QAAgB,EAChB,IAA0B,EAC1B,KAAqC;QAErC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAEhC,gBAAgB;QAChB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAEnE,+CAA+C;QAC/C,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/B,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC3B,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,0BAA0B,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1D;YACD,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,QAAQ,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAsC,CAAC;QACzE,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE5B,4BAA4B;QAC5B,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QAElE,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM;QACJ,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,sBAAsB;QACtB,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAC1C,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAC3C,CAAC;QAED,0BAA0B;QAC1B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC5B,oDAAoD;QACpD,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,eAAe;QACb,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAe,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAe,CAAC,CAAC;QAC9B,OAAO,IAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,UAAU,CACd,IAAiC,EACjC,KAAqB,EACrB,QAAwB;QAExB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,2DAA2D;QAC3D,MAAM,IAAI,GAAwB,EAAE,CAAC;QACrC,IAAI,IAAI,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,KAAK,IAAI,IAAI;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACtC,IAAI,QAAQ,IAAI,IAAI;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,OAAO,EACP,wBAAwB,EACxB,IAAI,EACJ,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,IAAI,GAAG,IAAe,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAe,CAAC,CAAC;QAE9B,+BAA+B;QAC/B,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,IAAe,CAAC,CAAC;QAE/C,OAAO,IAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,KAAK,CAAC,mBAAmB,CACvB,IAAiC,EACjC,KAAqB,EACrB,QAAwB,EACxB,KAAqC;QAErC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAEhC,2DAA2D;QAC3D,MAAM,IAAI,GAAwB,EAAE,CAAC;QACrC,IAAI,IAAI,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,KAAK,IAAI,IAAI;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACtC,IAAI,QAAQ,IAAI,IAAI;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE/C,+BAA+B;QAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,+CAA+C;QAC/C,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/B,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC3B,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,wBAAwB,CAAC;QACpD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACjE;YACD,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAY,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEnB,+BAA+B;QAC/B,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;QAEpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,IAAY;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAU,KAAa;QAC9B,MAAM,SAAS,GAAG,IAAA,2BAAgB,EAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,0BAA0B,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CAAc,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,WAAW,CAAU,MAAc;QACjC,OAAO,IAAI,CAAC,OAAO,CAAU,KAAK,EAAE,2BAA2B,MAAM,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF;AA1uBD,kCA0uBC;AAED,kBAAe,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/core/auth.ts"],"names":[],"mappings":";;;AAYA,gDAK2B;AAE3B;;;;;;;;;;;GAWG;AACH,MAAa,WAAW;IAOtB;;;;OAIG;IACH,YAAY,MAAsB;QAP1B,cAAS,GAAkB,EAAE,CAAC;QAQpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,2BAA2B,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8CG;IACH,WAAW,CAAC,SAAwB;QAClC,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,EAAE,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAA,4BAAiB,EAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,IAAa;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAA,4BAAiB,EAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,OAAO,CACnB,MAA2C,EAC3C,IAAY,EACZ,IAAc,EACd,aAAsB,IAAI;QAE1B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC3B,MAAM;gBACN,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACjE;gBACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChD,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBACnC,IAAI,WAAW,CAAC;gBAChB,IAAI,CAAC;oBACH,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACtC,CAAC;gBAAC,MAAM,CAAC;oBACP,WAAW,GAAG,SAAS,CAAC;gBAC1B,CAAC;gBAED,MAAM,YAAY,GAAG;oBACnB,UAAU,EAAE,GAAG,CAAC,MAAM;oBACtB,GAAG;oBACH,MAAM;oBACN,KAAK,EAAE,WAAW;oBAClB,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;iBACzD,CAAC;gBAEF,MAAM,IAAI,KAAK,CACb,oBAAoB,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAC5D,CAAC;YACJ,CAAC;YAED,OAAO,GAAG,CAAC,IAAI,EAAgB,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CACb,2BAA2B,MAAM,eAAe,GAAG,KAAK,KAAK,EAAE,CAChE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,kBAAkB,CAAC,MAAc,EAAE,MAAc;QACvD,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,GAAG;gBACN,OAAO,iDAAiD,CAAC;YAC3D,KAAK,GAAG;gBACN,OAAO,6EAA6E,CAAC;YACvF,KAAK,GAAG;gBACN,OAAO,0EAA0E,CAAC;YACpF,KAAK,GAAG;gBACN,OAAO,OAAO,MAAM,6FAA6F,CAAC;YACpH,KAAK,GAAG;gBACN,OAAO,yEAAyE,CAAC;YACnF;gBACE,OAAO,4DAA4D,CAAC;QACxE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,KAAK,GAAG,IAAA,8BAAmB,EAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAA,8BAAmB,EAAC,eAAe,CAAC,CAAC;QAClD,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;gBACtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACzB,CAAC;QAED,qCAAqC;QACrC,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,QAAgB;QACzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,yBAAyB,EACzB,EAAE,KAAK,EAAE,QAAQ,EAAE,EACnB,KAAK,CAAC,yCAAyC;SAChD,CAAC;QAEF,2BAA2B;QAC3B,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAa,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,yBAAyB;QACzB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,QAAgB,EAAE,IAA0B;QACxE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,0BAA0B,EAC1B,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EACzB,KAAK,CAAC,yCAAyC;SAChD,CAAC;QAEF,2BAA2B;QAC3B,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAa,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,4BAA4B;QAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC;QAED,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,KAAK,CAAC,eAAe,CACnB,OAAe,EACf,QAA+C;QAE/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAIjC,MAAM,EACN,iCAAiC,EACjC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAC/B,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE5B,yBAAyB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE/D,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,KAAK,CAAC,eAAe,CACnB,IAAY,EACZ,WAAmB,EACnB,QAA+C;QAE/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAIjC,MAAM,EACN,iCAAiC,EACjC,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,EAC7C,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE5B,yBAAyB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE/D,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK,CAAC,iBAAiB,CACrB,KAAa,EACb,QAAgB,EAChB,IAA0B,EAC1B,KAAqC;QAErC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAEhC,gBAAgB;QAChB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAEnE,+CAA+C;QAC/C,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/B,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC3B,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,0BAA0B,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1D;YACD,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,QAAQ,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAkB,CAAC;QAErD,2BAA2B;QAC3B,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAa,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAa,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAK,CAAC,CAAC;QAE7B,4BAA4B;QAC5B,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,IAAK,EAAE,QAAQ,CAAC,YAAa,CAAC,CAAC;QAEpE,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM;QACJ,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,sBAAsB;QACtB,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAC1C,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAC3C,CAAC;QAED,0BAA0B;QAC1B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC5B,oDAAoD;QACpD,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,eAAe;QACb,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAe,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAe,CAAC,CAAC;QAC9B,OAAO,IAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,UAAU,CACd,IAAiC,EACjC,KAAqB,EACrB,QAAwB;QAExB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,2DAA2D;QAC3D,MAAM,IAAI,GAAwB,EAAE,CAAC;QACrC,IAAI,IAAI,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,KAAK,IAAI,IAAI;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACtC,IAAI,QAAQ,IAAI,IAAI;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,OAAO,EACP,wBAAwB,EACxB,IAAI,EACJ,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,IAAI,GAAG,IAAe,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAe,CAAC,CAAC;QAE9B,+BAA+B;QAC/B,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,IAAe,CAAC,CAAC;QAE/C,OAAO,IAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,KAAK,CAAC,mBAAmB,CACvB,IAAiC,EACjC,KAAqB,EACrB,QAAwB,EACxB,KAAqC;QAErC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAEhC,2DAA2D;QAC3D,MAAM,IAAI,GAAwB,EAAE,CAAC;QACrC,IAAI,IAAI,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,KAAK,IAAI,IAAI;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACtC,IAAI,QAAQ,IAAI,IAAI;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE/C,+BAA+B;QAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,+CAA+C;QAC/C,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/B,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC3B,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,wBAAwB,CAAC;QACpD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACjE;YACD,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAY,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEnB,+BAA+B;QAC/B,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;QAEpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,IAAY;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAU,KAAa;QAC9B,MAAM,SAAS,GAAG,IAAA,2BAAgB,EAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,0BAA0B,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CAAc,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,WAAW,CAAU,MAAc;QACjC,OAAO,IAAI,CAAC,OAAO,CAAU,KAAK,EAAE,2BAA2B,MAAM,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,8BAA8B;IAE9B;;;;;;;;;;OAUG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,EACN,8BAA8B,EAC9B,EAAE,EACF,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,EACN,+BAA+B,EAC/B,EAAE,EACF,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,WAAW,CAAC,KAAY;QACtB,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,EACN,iCAAiC,EACjC;YACE,KAAK;SACN,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,IAAY;QAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,8BAA8B,EAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,EACf,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE5B,yBAAyB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE/D,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;;;;;;;;;OAUG;IACH,wBAAwB;QACtB,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,EACN,qCAAqC,EACrC,EAAE,EACF,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,KAAa;QACvB,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,EACN,uCAAuC,EACvC,EAAE,KAAK,EAAE,EACT,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,uBAAuB;QACrB,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,EACN,uCAAuC,EACvC,EAAE,EACF,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AA78BD,kCA68BC;AAED,kBAAe,WAAW,CAAC"}
|