@glideidentity/web-client-sdk 5.1.2 → 6.0.0-beta.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 +337 -526
- package/dist/browser/web-client-sdk.min.js +1 -1
- package/dist/cjs/adapters/index.js +15 -0
- package/dist/cjs/adapters/react.js +192 -0
- package/dist/cjs/adapters/vanilla.js +38 -0
- package/dist/cjs/adapters/vue.js +187 -0
- package/dist/cjs/browser.js +58 -0
- package/dist/cjs/client/http.js +159 -0
- package/dist/cjs/client/index.js +19 -0
- package/dist/cjs/client/logger.js +135 -0
- package/dist/cjs/client/phone-auth-client.js +439 -0
- package/dist/cjs/client/strategies/polling.js +177 -0
- package/dist/cjs/core/errors.js +204 -0
- package/dist/cjs/core/index.js +83 -0
- package/dist/cjs/core/type-guards.js +196 -0
- package/dist/cjs/core/types.js +25 -0
- package/dist/{core/phone-auth/validation-utils.js → cjs/core/validators.js} +70 -23
- package/dist/cjs/index.js +81 -0
- package/dist/cjs/ui/index.js +11 -0
- package/dist/{core/phone-auth → cjs}/ui/mobile-debug-console.js +149 -78
- package/dist/cjs/ui/modal.js +1122 -0
- package/dist/esm/adapters/index.js +11 -0
- package/dist/esm/adapters/react.js +182 -0
- package/dist/esm/adapters/vanilla.js +29 -0
- package/dist/esm/adapters/vue.js +177 -0
- package/dist/esm/browser.js +30 -11
- package/dist/esm/client/http.js +156 -0
- package/dist/esm/client/index.js +11 -0
- package/dist/esm/client/logger.js +131 -0
- package/dist/esm/client/phone-auth-client.js +435 -0
- package/dist/esm/client/strategies/polling.js +174 -0
- package/dist/esm/core/errors.js +193 -0
- package/dist/esm/core/index.js +60 -0
- package/dist/esm/core/type-guards.js +181 -0
- package/dist/esm/core/types.js +22 -1
- package/dist/esm/core/{phone-auth/validation-utils.js → validators.js} +66 -21
- package/dist/esm/index.js +45 -17
- package/dist/esm/ui/index.js +5 -0
- package/dist/esm/{core/phone-auth/ui → ui}/mobile-debug-console.js +149 -78
- package/dist/esm/ui/modal.js +1117 -0
- package/dist/types/adapters/index.d.ts +10 -0
- package/dist/types/adapters/index.d.ts.map +1 -0
- package/dist/types/adapters/react.d.ts +70 -0
- package/dist/types/adapters/react.d.ts.map +1 -0
- package/dist/types/adapters/vanilla.d.ts +29 -0
- package/dist/types/adapters/vanilla.d.ts.map +1 -0
- package/dist/types/adapters/vue.d.ts +71 -0
- package/dist/types/adapters/vue.d.ts.map +1 -0
- package/dist/types/browser.d.ts +27 -0
- package/dist/types/browser.d.ts.map +1 -0
- package/dist/types/client/http.d.ts +41 -0
- package/dist/types/client/http.d.ts.map +1 -0
- package/dist/types/client/index.d.ts +10 -0
- package/dist/types/client/index.d.ts.map +1 -0
- package/dist/types/client/logger.d.ts +36 -0
- package/dist/types/client/logger.d.ts.map +1 -0
- package/dist/types/client/phone-auth-client.d.ts +91 -0
- package/dist/types/client/phone-auth-client.d.ts.map +1 -0
- package/dist/types/client/strategies/polling.d.ts +36 -0
- package/dist/types/client/strategies/polling.d.ts.map +1 -0
- package/dist/types/core/errors.d.ts +71 -0
- package/dist/types/core/errors.d.ts.map +1 -0
- package/dist/types/core/index.d.ts +38 -0
- package/dist/types/core/index.d.ts.map +1 -0
- package/dist/types/core/type-guards.d.ts +118 -0
- package/dist/types/core/type-guards.d.ts.map +1 -0
- package/dist/types/core/types.d.ts +534 -0
- package/dist/types/core/types.d.ts.map +1 -0
- package/dist/types/core/validators.d.ts +63 -0
- package/dist/types/core/validators.d.ts.map +1 -0
- package/dist/types/index.d.ts +40 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/ui/index.d.ts +6 -0
- package/dist/types/ui/index.d.ts.map +1 -0
- package/dist/{esm/core/phone-auth → types}/ui/mobile-debug-console.d.ts +1 -0
- package/dist/types/ui/mobile-debug-console.d.ts.map +1 -0
- package/dist/types/ui/modal.d.ts +87 -0
- package/dist/types/ui/modal.d.ts.map +1 -0
- package/package.json +48 -34
- package/dist/adapters/angular/client.service.d.ts +0 -7
- package/dist/adapters/angular/client.service.js +0 -30
- package/dist/adapters/angular/index.d.ts +0 -3
- package/dist/adapters/angular/index.js +0 -18
- package/dist/adapters/angular/phone-auth.service.d.ts +0 -38
- package/dist/adapters/angular/phone-auth.service.js +0 -130
- package/dist/adapters/react/index.d.ts +0 -9
- package/dist/adapters/react/index.js +0 -28
- package/dist/adapters/react/useClient.d.ts +0 -26
- package/dist/adapters/react/useClient.js +0 -121
- package/dist/adapters/react/usePhoneAuth.d.ts +0 -23
- package/dist/adapters/react/usePhoneAuth.js +0 -95
- package/dist/adapters/vanilla/client.d.ts +0 -8
- package/dist/adapters/vanilla/client.js +0 -33
- package/dist/adapters/vanilla/index.d.ts +0 -3
- package/dist/adapters/vanilla/index.js +0 -18
- package/dist/adapters/vanilla/phone-auth.d.ts +0 -46
- package/dist/adapters/vanilla/phone-auth.js +0 -138
- package/dist/adapters/vue/index.d.ts +0 -10
- package/dist/adapters/vue/index.js +0 -36
- package/dist/adapters/vue/useClient.d.ts +0 -115
- package/dist/adapters/vue/useClient.js +0 -131
- package/dist/adapters/vue/usePhoneAuth.d.ts +0 -94
- package/dist/adapters/vue/usePhoneAuth.js +0 -103
- package/dist/browser.d.ts +0 -7
- package/dist/browser.js +0 -31
- package/dist/core/client.d.ts +0 -22
- package/dist/core/client.js +0 -77
- package/dist/core/logger.d.ts +0 -130
- package/dist/core/logger.js +0 -370
- package/dist/core/phone-auth/api-types.d.ts +0 -593
- package/dist/core/phone-auth/api-types.js +0 -215
- package/dist/core/phone-auth/client.d.ts +0 -189
- package/dist/core/phone-auth/client.js +0 -1441
- package/dist/core/phone-auth/error-utils.d.ts +0 -110
- package/dist/core/phone-auth/error-utils.js +0 -350
- package/dist/core/phone-auth/index.d.ts +0 -7
- package/dist/core/phone-auth/index.js +0 -50
- package/dist/core/phone-auth/status-types.d.ts +0 -107
- package/dist/core/phone-auth/status-types.js +0 -31
- package/dist/core/phone-auth/strategies/desktop.d.ts +0 -122
- package/dist/core/phone-auth/strategies/desktop.js +0 -596
- package/dist/core/phone-auth/strategies/index.d.ts +0 -11
- package/dist/core/phone-auth/strategies/index.js +0 -15
- package/dist/core/phone-auth/strategies/link.d.ts +0 -89
- package/dist/core/phone-auth/strategies/link.js +0 -384
- package/dist/core/phone-auth/strategies/ts43.d.ts +0 -32
- package/dist/core/phone-auth/strategies/ts43.js +0 -151
- package/dist/core/phone-auth/strategies/types.d.ts +0 -18
- package/dist/core/phone-auth/strategies/types.js +0 -6
- package/dist/core/phone-auth/type-guards.d.ts +0 -143
- package/dist/core/phone-auth/type-guards.js +0 -198
- package/dist/core/phone-auth/types.d.ts +0 -237
- package/dist/core/phone-auth/types.js +0 -93
- package/dist/core/phone-auth/ui/mobile-debug-console.d.ts +0 -25
- package/dist/core/phone-auth/ui/modal.d.ts +0 -88
- package/dist/core/phone-auth/ui/modal.js +0 -598
- package/dist/core/phone-auth/validation-utils.d.ts +0 -44
- package/dist/core/types.d.ts +0 -62
- package/dist/core/types.js +0 -2
- package/dist/core/version.d.ts +0 -1
- package/dist/core/version.js +0 -5
- package/dist/esm/adapters/angular/client.service.d.ts +0 -7
- package/dist/esm/adapters/angular/client.service.js +0 -27
- package/dist/esm/adapters/angular/index.d.ts +0 -3
- package/dist/esm/adapters/angular/index.js +0 -4
- package/dist/esm/adapters/angular/phone-auth.service.d.ts +0 -38
- package/dist/esm/adapters/angular/phone-auth.service.js +0 -127
- package/dist/esm/adapters/react/index.d.ts +0 -9
- package/dist/esm/adapters/react/index.js +0 -8
- package/dist/esm/adapters/react/useClient.d.ts +0 -26
- package/dist/esm/adapters/react/useClient.js +0 -116
- package/dist/esm/adapters/react/usePhoneAuth.d.ts +0 -23
- package/dist/esm/adapters/react/usePhoneAuth.js +0 -92
- package/dist/esm/adapters/vanilla/client.d.ts +0 -8
- package/dist/esm/adapters/vanilla/client.js +0 -29
- package/dist/esm/adapters/vanilla/index.d.ts +0 -3
- package/dist/esm/adapters/vanilla/index.js +0 -4
- package/dist/esm/adapters/vanilla/phone-auth.d.ts +0 -46
- package/dist/esm/adapters/vanilla/phone-auth.js +0 -134
- package/dist/esm/adapters/vue/index.d.ts +0 -10
- package/dist/esm/adapters/vue/index.js +0 -11
- package/dist/esm/adapters/vue/useClient.d.ts +0 -115
- package/dist/esm/adapters/vue/useClient.js +0 -127
- package/dist/esm/adapters/vue/usePhoneAuth.d.ts +0 -94
- package/dist/esm/adapters/vue/usePhoneAuth.js +0 -100
- package/dist/esm/browser.d.ts +0 -7
- package/dist/esm/core/client.d.ts +0 -22
- package/dist/esm/core/client.js +0 -70
- package/dist/esm/core/logger.d.ts +0 -130
- package/dist/esm/core/logger.js +0 -359
- package/dist/esm/core/phone-auth/api-types.d.ts +0 -593
- package/dist/esm/core/phone-auth/api-types.js +0 -203
- package/dist/esm/core/phone-auth/client.d.ts +0 -189
- package/dist/esm/core/phone-auth/client.js +0 -1404
- package/dist/esm/core/phone-auth/error-utils.d.ts +0 -110
- package/dist/esm/core/phone-auth/error-utils.js +0 -338
- package/dist/esm/core/phone-auth/index.d.ts +0 -7
- package/dist/esm/core/phone-auth/index.js +0 -8
- package/dist/esm/core/phone-auth/status-types.d.ts +0 -107
- package/dist/esm/core/phone-auth/status-types.js +0 -26
- package/dist/esm/core/phone-auth/strategies/desktop.d.ts +0 -122
- package/dist/esm/core/phone-auth/strategies/desktop.js +0 -590
- package/dist/esm/core/phone-auth/strategies/index.d.ts +0 -11
- package/dist/esm/core/phone-auth/strategies/index.js +0 -7
- package/dist/esm/core/phone-auth/strategies/link.d.ts +0 -89
- package/dist/esm/core/phone-auth/strategies/link.js +0 -380
- package/dist/esm/core/phone-auth/strategies/ts43.d.ts +0 -32
- package/dist/esm/core/phone-auth/strategies/ts43.js +0 -147
- package/dist/esm/core/phone-auth/strategies/types.d.ts +0 -18
- package/dist/esm/core/phone-auth/strategies/types.js +0 -5
- package/dist/esm/core/phone-auth/type-guards.d.ts +0 -143
- package/dist/esm/core/phone-auth/type-guards.js +0 -185
- package/dist/esm/core/phone-auth/types.d.ts +0 -237
- package/dist/esm/core/phone-auth/types.js +0 -76
- package/dist/esm/core/phone-auth/ui/modal.d.ts +0 -88
- package/dist/esm/core/phone-auth/ui/modal.js +0 -594
- package/dist/esm/core/phone-auth/validation-utils.d.ts +0 -44
- package/dist/esm/core/types.d.ts +0 -62
- package/dist/esm/core/version.d.ts +0 -1
- package/dist/esm/core/version.js +0 -2
- package/dist/esm/index.d.ts +0 -12
- package/dist/index.d.ts +0 -12
- package/dist/index.js +0 -55
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Desktop Strategy Handler
|
|
3
|
-
* Handles QR code-based authentication for desktop browsers
|
|
4
|
-
* Manages QR code display and polling for authentication status
|
|
5
|
-
*/
|
|
6
|
-
import type { StrategyHandler } from './types';
|
|
7
|
-
import type { PrepareResponse } from '../types';
|
|
8
|
-
/**
|
|
9
|
-
* QR code data structure for dual-platform support
|
|
10
|
-
*/
|
|
11
|
-
export interface QRCodeData {
|
|
12
|
-
iosQRCode: string;
|
|
13
|
-
androidQRCode?: string;
|
|
14
|
-
iosUrl?: string;
|
|
15
|
-
androidUrl?: string;
|
|
16
|
-
}
|
|
17
|
-
export interface DesktopAuthOptions {
|
|
18
|
-
/** Custom polling interval in milliseconds (overrides server-provided value) */
|
|
19
|
-
pollingInterval?: number;
|
|
20
|
-
/** Maximum polling attempts before timeout (default: 30 = 1 minute with 2s interval) */
|
|
21
|
-
maxPollingAttempts?: number;
|
|
22
|
-
/** Custom polling endpoint (overrides backend-provided or uses configured endpoint) */
|
|
23
|
-
pollingEndpoint?: string;
|
|
24
|
-
/** Developer environment (adds 'developer' header to requests) */
|
|
25
|
-
devEnv?: string;
|
|
26
|
-
/** Callback when QR code is ready to display */
|
|
27
|
-
onQRCodeReady?: (qrCodeData: string | QRCodeData) => void;
|
|
28
|
-
/** Callback for polling status updates */
|
|
29
|
-
onStatusUpdate?: (status: PollingStatus) => void;
|
|
30
|
-
/** Callback when authentication expires */
|
|
31
|
-
onExpired?: () => void;
|
|
32
|
-
/** Callback when authentication is cancelled by user */
|
|
33
|
-
onCancel?: () => void;
|
|
34
|
-
/** Callback when polling times out (max attempts reached) */
|
|
35
|
-
onTimeout?: () => void;
|
|
36
|
-
}
|
|
37
|
-
export interface PollingStatus {
|
|
38
|
-
/** Current status of the authentication */
|
|
39
|
-
status: 'pending' | 'authenticated' | 'expired' | 'cancelled' | 'error';
|
|
40
|
-
/** Optional message */
|
|
41
|
-
message?: string;
|
|
42
|
-
/** Authentication result data if status is 'authenticated' */
|
|
43
|
-
data?: any;
|
|
44
|
-
}
|
|
45
|
-
export interface DesktopAuthResult {
|
|
46
|
-
/** Whether authentication was successful */
|
|
47
|
-
authenticated: boolean;
|
|
48
|
-
/** Authentication credential if successful */
|
|
49
|
-
credential?: string;
|
|
50
|
-
/** Session info for subsequent requests */
|
|
51
|
-
session?: any;
|
|
52
|
-
/** Error message if authentication failed */
|
|
53
|
-
error?: string;
|
|
54
|
-
}
|
|
55
|
-
export declare class DesktopHandler implements StrategyHandler {
|
|
56
|
-
private pollingIntervalId?;
|
|
57
|
-
private pollingAttempts;
|
|
58
|
-
private isCancelled;
|
|
59
|
-
private onCancel?;
|
|
60
|
-
private pollingReject?;
|
|
61
|
-
private isPollingInProgress;
|
|
62
|
-
/**
|
|
63
|
-
* Maps backend HTTP status codes to client status
|
|
64
|
-
* @param httpStatus HTTP status code from backend
|
|
65
|
-
* @param bodyStatus Optional status from response body (for 200 OK responses)
|
|
66
|
-
* @returns Mapped status string for client use
|
|
67
|
-
*/
|
|
68
|
-
private mapBackendStatus;
|
|
69
|
-
/**
|
|
70
|
-
* Invoke desktop authentication with QR code
|
|
71
|
-
* Returns QR code data for display and starts polling if endpoint is provided
|
|
72
|
-
*/
|
|
73
|
-
invoke(data: PrepareResponse, options?: DesktopAuthOptions): Promise<DesktopAuthResult>;
|
|
74
|
-
/**
|
|
75
|
-
* Start polling for authentication status
|
|
76
|
-
*/
|
|
77
|
-
private startPolling;
|
|
78
|
-
/**
|
|
79
|
-
* Stop polling
|
|
80
|
-
*/
|
|
81
|
-
private stopPolling;
|
|
82
|
-
/**
|
|
83
|
-
* Check if polling is currently active
|
|
84
|
-
*/
|
|
85
|
-
isPolling(): boolean;
|
|
86
|
-
/**
|
|
87
|
-
* Format response for backend processing
|
|
88
|
-
* Desktop strategy typically returns the credential from mobile authentication
|
|
89
|
-
*/
|
|
90
|
-
formatResponse(response: DesktopAuthResult): any;
|
|
91
|
-
/**
|
|
92
|
-
* Check if desktop authentication is supported
|
|
93
|
-
* Desktop auth with QR codes works in any modern browser
|
|
94
|
-
*/
|
|
95
|
-
isSupported(): boolean;
|
|
96
|
-
/**
|
|
97
|
-
* Clean up resources (stop polling if active)
|
|
98
|
-
*/
|
|
99
|
-
cleanup(): void;
|
|
100
|
-
/**
|
|
101
|
-
* Cancel the ongoing authentication
|
|
102
|
-
*/
|
|
103
|
-
cancel(): void;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Helper function to display QR code in a modal or inline
|
|
107
|
-
*/
|
|
108
|
-
export declare function createQRCodeDisplay(qrCodeData: string | QRCodeData, options?: {
|
|
109
|
-
container?: HTMLElement;
|
|
110
|
-
size?: number;
|
|
111
|
-
title?: string;
|
|
112
|
-
description?: string;
|
|
113
|
-
}): HTMLElement;
|
|
114
|
-
/**
|
|
115
|
-
* Helper function to create a modal for QR code display
|
|
116
|
-
* Supports both string QR codes and QRCodeData objects for dual-platform support
|
|
117
|
-
*/
|
|
118
|
-
export declare function showQRCodeModal(qrCodeData: string | QRCodeData, options?: {
|
|
119
|
-
title?: string;
|
|
120
|
-
description?: string;
|
|
121
|
-
onClose?: () => void;
|
|
122
|
-
}): void;
|