@glideidentity/web-client-sdk 4.4.8-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 +938 -0
- package/dist/adapters/angular/client.service.d.ts +7 -0
- package/dist/adapters/angular/client.service.js +30 -0
- package/dist/adapters/angular/index.d.ts +3 -0
- package/dist/adapters/angular/index.js +18 -0
- package/dist/adapters/angular/phone-auth.service.d.ts +38 -0
- package/dist/adapters/angular/phone-auth.service.js +130 -0
- package/dist/adapters/react/index.d.ts +9 -0
- package/dist/adapters/react/index.js +28 -0
- package/dist/adapters/react/useClient.d.ts +26 -0
- package/dist/adapters/react/useClient.js +121 -0
- package/dist/adapters/react/usePhoneAuth.d.ts +23 -0
- package/dist/adapters/react/usePhoneAuth.js +95 -0
- package/dist/adapters/vanilla/client.d.ts +8 -0
- package/dist/adapters/vanilla/client.js +33 -0
- package/dist/adapters/vanilla/index.d.ts +3 -0
- package/dist/adapters/vanilla/index.js +18 -0
- package/dist/adapters/vanilla/phone-auth.d.ts +46 -0
- package/dist/adapters/vanilla/phone-auth.js +138 -0
- package/dist/adapters/vue/index.d.ts +10 -0
- package/dist/adapters/vue/index.js +36 -0
- package/dist/adapters/vue/useClient.d.ts +115 -0
- package/dist/adapters/vue/useClient.js +131 -0
- package/dist/adapters/vue/usePhoneAuth.d.ts +94 -0
- package/dist/adapters/vue/usePhoneAuth.js +103 -0
- package/dist/browser/web-client-sdk.min.js +2 -0
- package/dist/browser/web-client-sdk.min.js.LICENSE.txt +1 -0
- package/dist/browser.d.ts +7 -0
- package/dist/browser.js +31 -0
- package/dist/core/client.d.ts +22 -0
- package/dist/core/client.js +77 -0
- package/dist/core/logger.d.ts +130 -0
- package/dist/core/logger.js +370 -0
- package/dist/core/phone-auth/api-types.d.ts +525 -0
- package/dist/core/phone-auth/api-types.js +215 -0
- package/dist/core/phone-auth/client.d.ts +187 -0
- package/dist/core/phone-auth/client.js +1353 -0
- package/dist/core/phone-auth/error-utils.d.ts +110 -0
- package/dist/core/phone-auth/error-utils.js +350 -0
- package/dist/core/phone-auth/index.d.ts +7 -0
- package/dist/core/phone-auth/index.js +47 -0
- package/dist/core/phone-auth/status-types.d.ts +107 -0
- package/dist/core/phone-auth/status-types.js +31 -0
- package/dist/core/phone-auth/strategies/desktop.d.ts +113 -0
- package/dist/core/phone-auth/strategies/desktop.js +502 -0
- package/dist/core/phone-auth/strategies/index.d.ts +11 -0
- package/dist/core/phone-auth/strategies/index.js +15 -0
- package/dist/core/phone-auth/strategies/link.d.ts +81 -0
- package/dist/core/phone-auth/strategies/link.js +265 -0
- package/dist/core/phone-auth/strategies/ts43.d.ts +32 -0
- package/dist/core/phone-auth/strategies/ts43.js +146 -0
- package/dist/core/phone-auth/strategies/types.d.ts +18 -0
- package/dist/core/phone-auth/strategies/types.js +6 -0
- package/dist/core/phone-auth/type-guards.d.ts +125 -0
- package/dist/core/phone-auth/type-guards.js +160 -0
- package/dist/core/phone-auth/types.d.ts +232 -0
- package/dist/core/phone-auth/types.js +93 -0
- package/dist/core/phone-auth/ui/mobile-debug-console.d.ts +25 -0
- package/dist/core/phone-auth/ui/mobile-debug-console.js +288 -0
- package/dist/core/phone-auth/ui/modal.d.ts +84 -0
- package/dist/core/phone-auth/ui/modal.js +574 -0
- package/dist/core/phone-auth/validation-utils.d.ts +66 -0
- package/dist/core/phone-auth/validation-utils.js +182 -0
- package/dist/core/types.d.ts +62 -0
- package/dist/core/types.js +2 -0
- package/dist/core/version.d.ts +1 -0
- package/dist/core/version.js +5 -0
- package/dist/esm/adapters/angular/client.service.d.ts +7 -0
- package/dist/esm/adapters/angular/client.service.js +27 -0
- package/dist/esm/adapters/angular/index.d.ts +3 -0
- package/dist/esm/adapters/angular/index.js +4 -0
- package/dist/esm/adapters/angular/phone-auth.service.d.ts +38 -0
- package/dist/esm/adapters/angular/phone-auth.service.js +127 -0
- package/dist/esm/adapters/react/index.d.ts +9 -0
- package/dist/esm/adapters/react/index.js +8 -0
- package/dist/esm/adapters/react/useClient.d.ts +26 -0
- package/dist/esm/adapters/react/useClient.js +116 -0
- package/dist/esm/adapters/react/usePhoneAuth.d.ts +23 -0
- package/dist/esm/adapters/react/usePhoneAuth.js +92 -0
- package/dist/esm/adapters/vanilla/client.d.ts +8 -0
- package/dist/esm/adapters/vanilla/client.js +29 -0
- package/dist/esm/adapters/vanilla/index.d.ts +3 -0
- package/dist/esm/adapters/vanilla/index.js +4 -0
- package/dist/esm/adapters/vanilla/phone-auth.d.ts +46 -0
- package/dist/esm/adapters/vanilla/phone-auth.js +134 -0
- package/dist/esm/adapters/vue/index.d.ts +10 -0
- package/dist/esm/adapters/vue/index.js +11 -0
- package/dist/esm/adapters/vue/useClient.d.ts +115 -0
- package/dist/esm/adapters/vue/useClient.js +127 -0
- package/dist/esm/adapters/vue/usePhoneAuth.d.ts +94 -0
- package/dist/esm/adapters/vue/usePhoneAuth.js +100 -0
- package/dist/esm/browser.d.ts +7 -0
- package/dist/esm/browser.js +11 -0
- package/dist/esm/core/client.d.ts +22 -0
- package/dist/esm/core/client.js +70 -0
- package/dist/esm/core/logger.d.ts +130 -0
- package/dist/esm/core/logger.js +359 -0
- package/dist/esm/core/phone-auth/api-types.d.ts +525 -0
- package/dist/esm/core/phone-auth/api-types.js +203 -0
- package/dist/esm/core/phone-auth/client.d.ts +187 -0
- package/dist/esm/core/phone-auth/client.js +1316 -0
- package/dist/esm/core/phone-auth/error-utils.d.ts +110 -0
- package/dist/esm/core/phone-auth/error-utils.js +338 -0
- package/dist/esm/core/phone-auth/index.d.ts +7 -0
- package/dist/esm/core/phone-auth/index.js +6 -0
- package/dist/esm/core/phone-auth/status-types.d.ts +107 -0
- package/dist/esm/core/phone-auth/status-types.js +26 -0
- package/dist/esm/core/phone-auth/strategies/desktop.d.ts +113 -0
- package/dist/esm/core/phone-auth/strategies/desktop.js +496 -0
- package/dist/esm/core/phone-auth/strategies/index.d.ts +11 -0
- package/dist/esm/core/phone-auth/strategies/index.js +7 -0
- package/dist/esm/core/phone-auth/strategies/link.d.ts +81 -0
- package/dist/esm/core/phone-auth/strategies/link.js +261 -0
- package/dist/esm/core/phone-auth/strategies/ts43.d.ts +32 -0
- package/dist/esm/core/phone-auth/strategies/ts43.js +142 -0
- package/dist/esm/core/phone-auth/strategies/types.d.ts +18 -0
- package/dist/esm/core/phone-auth/strategies/types.js +5 -0
- package/dist/esm/core/phone-auth/type-guards.d.ts +125 -0
- package/dist/esm/core/phone-auth/type-guards.js +150 -0
- package/dist/esm/core/phone-auth/types.d.ts +232 -0
- package/dist/esm/core/phone-auth/types.js +76 -0
- package/dist/esm/core/phone-auth/ui/mobile-debug-console.d.ts +25 -0
- package/dist/esm/core/phone-auth/ui/mobile-debug-console.js +284 -0
- package/dist/esm/core/phone-auth/ui/modal.d.ts +84 -0
- package/dist/esm/core/phone-auth/ui/modal.js +570 -0
- package/dist/esm/core/phone-auth/validation-utils.d.ts +66 -0
- package/dist/esm/core/phone-auth/validation-utils.js +174 -0
- package/dist/esm/core/types.d.ts +62 -0
- package/dist/esm/core/types.js +1 -0
- package/dist/esm/core/version.d.ts +1 -0
- package/dist/esm/core/version.js +2 -0
- package/dist/esm/index.d.ts +12 -0
- package/dist/esm/index.js +15 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +52 -0
- package/package.json +92 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ClientService = void 0;
|
|
13
|
+
const core_1 = require("@angular/core");
|
|
14
|
+
const client_1 = require("../../core/client");
|
|
15
|
+
const rxjs_1 = require("rxjs");
|
|
16
|
+
let ClientService = class ClientService {
|
|
17
|
+
constructor(config) {
|
|
18
|
+
this.client = new client_1.SDKClient(config);
|
|
19
|
+
}
|
|
20
|
+
query(path) {
|
|
21
|
+
return (0, rxjs_1.from)(this.client.get(path));
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
exports.ClientService = ClientService;
|
|
25
|
+
exports.ClientService = ClientService = __decorate([
|
|
26
|
+
(0, core_1.Injectable)({
|
|
27
|
+
providedIn: 'root',
|
|
28
|
+
}),
|
|
29
|
+
__metadata("design:paramtypes", [Object])
|
|
30
|
+
], ClientService);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { ClientService } from './client.service';
|
|
2
|
+
export { PhoneAuthService } from './phone-auth.service';
|
|
3
|
+
export { PhoneAuthErrorCode, isPhoneAuthError, isUserError, getUserMessage, isErrorCode, getRetryDelay, isRetryableError, serializeError, createErrorBreadcrumb } from '../../core/phone-auth';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createErrorBreadcrumb = exports.serializeError = exports.isRetryableError = exports.getRetryDelay = exports.isErrorCode = exports.getUserMessage = exports.isUserError = exports.isPhoneAuthError = exports.PhoneAuthErrorCode = exports.PhoneAuthService = exports.ClientService = void 0;
|
|
4
|
+
var client_service_1 = require("./client.service");
|
|
5
|
+
Object.defineProperty(exports, "ClientService", { enumerable: true, get: function () { return client_service_1.ClientService; } });
|
|
6
|
+
var phone_auth_service_1 = require("./phone-auth.service");
|
|
7
|
+
Object.defineProperty(exports, "PhoneAuthService", { enumerable: true, get: function () { return phone_auth_service_1.PhoneAuthService; } });
|
|
8
|
+
// Export error utilities
|
|
9
|
+
var phone_auth_1 = require("../../core/phone-auth");
|
|
10
|
+
Object.defineProperty(exports, "PhoneAuthErrorCode", { enumerable: true, get: function () { return phone_auth_1.PhoneAuthErrorCode; } });
|
|
11
|
+
Object.defineProperty(exports, "isPhoneAuthError", { enumerable: true, get: function () { return phone_auth_1.isPhoneAuthError; } });
|
|
12
|
+
Object.defineProperty(exports, "isUserError", { enumerable: true, get: function () { return phone_auth_1.isUserError; } });
|
|
13
|
+
Object.defineProperty(exports, "getUserMessage", { enumerable: true, get: function () { return phone_auth_1.getUserMessage; } });
|
|
14
|
+
Object.defineProperty(exports, "isErrorCode", { enumerable: true, get: function () { return phone_auth_1.isErrorCode; } });
|
|
15
|
+
Object.defineProperty(exports, "getRetryDelay", { enumerable: true, get: function () { return phone_auth_1.getRetryDelay; } });
|
|
16
|
+
Object.defineProperty(exports, "isRetryableError", { enumerable: true, get: function () { return phone_auth_1.isRetryableError; } });
|
|
17
|
+
Object.defineProperty(exports, "serializeError", { enumerable: true, get: function () { return phone_auth_1.serializeError; } });
|
|
18
|
+
Object.defineProperty(exports, "createErrorBreadcrumb", { enumerable: true, get: function () { return phone_auth_1.createErrorBreadcrumb; } });
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { AuthConfig, PhoneAuthResult, AuthError, AuthStep, PhoneAuthOptions } from '../../core/phone-auth';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
export declare class PhoneAuthService {
|
|
4
|
+
private client;
|
|
5
|
+
private isLoadingSubject;
|
|
6
|
+
private errorSubject;
|
|
7
|
+
private resultSubject;
|
|
8
|
+
private currentStepSubject;
|
|
9
|
+
isLoading$: Observable<boolean>;
|
|
10
|
+
error$: Observable<AuthError | null>;
|
|
11
|
+
result$: Observable<PhoneAuthResult | null>;
|
|
12
|
+
currentStep$: Observable<AuthStep>;
|
|
13
|
+
constructor();
|
|
14
|
+
/**
|
|
15
|
+
* Configure the phone auth client
|
|
16
|
+
*/
|
|
17
|
+
configure(config: AuthConfig): void;
|
|
18
|
+
/**
|
|
19
|
+
* Check if browser supports secure phone authentication
|
|
20
|
+
*/
|
|
21
|
+
isSupported(): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Verify phone number
|
|
24
|
+
*/
|
|
25
|
+
verify(options: PhoneAuthOptions): Promise<PhoneAuthResult>;
|
|
26
|
+
/**
|
|
27
|
+
* Get phone number
|
|
28
|
+
*/
|
|
29
|
+
getPhoneNumber(options?: Omit<PhoneAuthOptions, 'use_case' | 'phone_number'>): Promise<PhoneAuthResult>;
|
|
30
|
+
/**
|
|
31
|
+
* Verify specific phone number
|
|
32
|
+
*/
|
|
33
|
+
verifyPhoneNumber(phoneNumber: string, options?: Omit<PhoneAuthOptions, 'use_case' | 'phone_number'>): Promise<PhoneAuthResult>;
|
|
34
|
+
/**
|
|
35
|
+
* Reset state
|
|
36
|
+
*/
|
|
37
|
+
reset(): void;
|
|
38
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
14
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
15
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
16
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
17
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.PhoneAuthService = void 0;
|
|
22
|
+
const core_1 = require("@angular/core");
|
|
23
|
+
const phone_auth_1 = require("../../core/phone-auth");
|
|
24
|
+
const rxjs_1 = require("rxjs");
|
|
25
|
+
let PhoneAuthService = class PhoneAuthService {
|
|
26
|
+
constructor() {
|
|
27
|
+
// State subjects
|
|
28
|
+
this.isLoadingSubject = new rxjs_1.BehaviorSubject(false);
|
|
29
|
+
this.errorSubject = new rxjs_1.BehaviorSubject(null);
|
|
30
|
+
this.resultSubject = new rxjs_1.BehaviorSubject(null);
|
|
31
|
+
this.currentStepSubject = new rxjs_1.BehaviorSubject('idle');
|
|
32
|
+
// Public observables
|
|
33
|
+
this.isLoading$ = this.isLoadingSubject.asObservable();
|
|
34
|
+
this.error$ = this.errorSubject.asObservable();
|
|
35
|
+
this.result$ = this.resultSubject.asObservable();
|
|
36
|
+
this.currentStep$ = this.currentStepSubject.asObservable();
|
|
37
|
+
this.client = new phone_auth_1.PhoneAuthClient();
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Configure the phone auth client
|
|
41
|
+
*/
|
|
42
|
+
configure(config) {
|
|
43
|
+
this.client = new phone_auth_1.PhoneAuthClient(config);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Check if browser supports secure phone authentication
|
|
47
|
+
*/
|
|
48
|
+
isSupported() {
|
|
49
|
+
return this.client.isSupported();
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Verify phone number
|
|
53
|
+
*/
|
|
54
|
+
verify(options) {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
this.isLoadingSubject.next(true);
|
|
57
|
+
this.errorSubject.next(null);
|
|
58
|
+
this.resultSubject.next(null);
|
|
59
|
+
this.currentStepSubject.next('requesting');
|
|
60
|
+
try {
|
|
61
|
+
// Step 1: Prepare request
|
|
62
|
+
const preparedRequest = yield this.client.preparePhoneRequest(options);
|
|
63
|
+
// Step 2: Show authenticating state
|
|
64
|
+
this.currentStepSubject.next('authenticating');
|
|
65
|
+
const credentialResponse = yield this.client.invokeSecurePrompt(preparedRequest);
|
|
66
|
+
// Step 3: Process response through appropriate endpoint
|
|
67
|
+
this.currentStepSubject.next('processing');
|
|
68
|
+
// Cast to credential type - adapters never use headless mode
|
|
69
|
+
const credential = credentialResponse;
|
|
70
|
+
const processedResult = options.use_case === 'GetPhoneNumber'
|
|
71
|
+
? yield this.client.getPhoneNumber(credential, preparedRequest.session)
|
|
72
|
+
: yield this.client.verifyPhoneNumber(credential, preparedRequest.session);
|
|
73
|
+
// Create final result
|
|
74
|
+
const isVerifyResponse = 'verified' in processedResult;
|
|
75
|
+
const result = processedResult;
|
|
76
|
+
this.resultSubject.next(result);
|
|
77
|
+
this.currentStepSubject.next('complete');
|
|
78
|
+
return result;
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
// Enhance error with context
|
|
82
|
+
const authError = error;
|
|
83
|
+
const enhancedError = Object.assign(Object.assign({}, authError), { context: authError.context || {
|
|
84
|
+
useCase: options.use_case,
|
|
85
|
+
timestamp: new Date().toISOString(),
|
|
86
|
+
userAgent: typeof navigator !== 'undefined' ? navigator.userAgent : undefined,
|
|
87
|
+
url: typeof window !== 'undefined' ? window.location.href : undefined
|
|
88
|
+
} });
|
|
89
|
+
this.errorSubject.next(enhancedError);
|
|
90
|
+
this.currentStepSubject.next('idle');
|
|
91
|
+
throw enhancedError;
|
|
92
|
+
}
|
|
93
|
+
finally {
|
|
94
|
+
this.isLoadingSubject.next(false);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get phone number
|
|
100
|
+
*/
|
|
101
|
+
getPhoneNumber(options) {
|
|
102
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
return this.verify(Object.assign({ use_case: 'GetPhoneNumber' }, options));
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Verify specific phone number
|
|
108
|
+
*/
|
|
109
|
+
verifyPhoneNumber(phoneNumber, options) {
|
|
110
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
111
|
+
return this.verify(Object.assign({ use_case: 'VerifyPhoneNumber', phone_number: phoneNumber }, options));
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Reset state
|
|
116
|
+
*/
|
|
117
|
+
reset() {
|
|
118
|
+
this.isLoadingSubject.next(false);
|
|
119
|
+
this.errorSubject.next(null);
|
|
120
|
+
this.resultSubject.next(null);
|
|
121
|
+
this.currentStepSubject.next('idle');
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
exports.PhoneAuthService = PhoneAuthService;
|
|
125
|
+
exports.PhoneAuthService = PhoneAuthService = __decorate([
|
|
126
|
+
(0, core_1.Injectable)({
|
|
127
|
+
providedIn: 'root'
|
|
128
|
+
}),
|
|
129
|
+
__metadata("design:paramtypes", [])
|
|
130
|
+
], PhoneAuthService);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { usePhoneAuth } from './usePhoneAuth';
|
|
2
|
+
export { useClient } from './useClient';
|
|
3
|
+
export type { UsePhoneAuthOptions } from './usePhoneAuth';
|
|
4
|
+
export type { ClientConfig, ClientResponse, RequestOptions } from '../../core/types';
|
|
5
|
+
export type { AuthConfig as PhoneAuthConfig, PhoneAuthOptions, PhoneAuthResult, AuthError, AuthStep } from '../../core/phone-auth';
|
|
6
|
+
export { PhoneAuthErrorCode, isPhoneAuthError, isUserError, getUserMessage, isErrorCode, getRetryDelay, isRetryableError, serializeError, createErrorBreadcrumb } from '../../core/phone-auth';
|
|
7
|
+
export type { PhoneAuthCallbacks, PLMN, SessionInfo, PrepareRequest, PrepareResponse, GetPhoneNumberRequest, GetPhoneNumberResponse, VerifyPhoneNumberRequest, VerifyPhoneNumberResponse, SecureCredentialRequest, SecureCredentialResponse, DigitalCredential, TS43Data, LinkData, ClientInfo, ConsentData, BrowserErrorType, BrowserErrorCodeType, BrowserNameType } from '../../core/phone-auth/types';
|
|
8
|
+
export { USE_CASE as UseCase, AUTHENTICATION_STRATEGY as AuthenticationStrategy, BrowserError, BrowserErrorCode, BrowserName } from '../../core/phone-auth/types';
|
|
9
|
+
export { PhoneAuthClient } from '../../core/phone-auth';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PhoneAuthClient = exports.BrowserName = exports.BrowserErrorCode = exports.BrowserError = exports.AuthenticationStrategy = exports.UseCase = exports.createErrorBreadcrumb = exports.serializeError = exports.isRetryableError = exports.getRetryDelay = exports.isErrorCode = exports.getUserMessage = exports.isUserError = exports.isPhoneAuthError = exports.PhoneAuthErrorCode = exports.useClient = exports.usePhoneAuth = void 0;
|
|
4
|
+
var usePhoneAuth_1 = require("./usePhoneAuth");
|
|
5
|
+
Object.defineProperty(exports, "usePhoneAuth", { enumerable: true, get: function () { return usePhoneAuth_1.usePhoneAuth; } });
|
|
6
|
+
var useClient_1 = require("./useClient");
|
|
7
|
+
Object.defineProperty(exports, "useClient", { enumerable: true, get: function () { return useClient_1.useClient; } });
|
|
8
|
+
// Export error utilities
|
|
9
|
+
var phone_auth_1 = require("../../core/phone-auth");
|
|
10
|
+
Object.defineProperty(exports, "PhoneAuthErrorCode", { enumerable: true, get: function () { return phone_auth_1.PhoneAuthErrorCode; } });
|
|
11
|
+
Object.defineProperty(exports, "isPhoneAuthError", { enumerable: true, get: function () { return phone_auth_1.isPhoneAuthError; } });
|
|
12
|
+
Object.defineProperty(exports, "isUserError", { enumerable: true, get: function () { return phone_auth_1.isUserError; } });
|
|
13
|
+
Object.defineProperty(exports, "getUserMessage", { enumerable: true, get: function () { return phone_auth_1.getUserMessage; } });
|
|
14
|
+
Object.defineProperty(exports, "isErrorCode", { enumerable: true, get: function () { return phone_auth_1.isErrorCode; } });
|
|
15
|
+
Object.defineProperty(exports, "getRetryDelay", { enumerable: true, get: function () { return phone_auth_1.getRetryDelay; } });
|
|
16
|
+
Object.defineProperty(exports, "isRetryableError", { enumerable: true, get: function () { return phone_auth_1.isRetryableError; } });
|
|
17
|
+
Object.defineProperty(exports, "serializeError", { enumerable: true, get: function () { return phone_auth_1.serializeError; } });
|
|
18
|
+
Object.defineProperty(exports, "createErrorBreadcrumb", { enumerable: true, get: function () { return phone_auth_1.createErrorBreadcrumb; } });
|
|
19
|
+
// Export constants for use case and strategy
|
|
20
|
+
var types_1 = require("../../core/phone-auth/types");
|
|
21
|
+
Object.defineProperty(exports, "UseCase", { enumerable: true, get: function () { return types_1.USE_CASE; } });
|
|
22
|
+
Object.defineProperty(exports, "AuthenticationStrategy", { enumerable: true, get: function () { return types_1.AUTHENTICATION_STRATEGY; } });
|
|
23
|
+
Object.defineProperty(exports, "BrowserError", { enumerable: true, get: function () { return types_1.BrowserError; } });
|
|
24
|
+
Object.defineProperty(exports, "BrowserErrorCode", { enumerable: true, get: function () { return types_1.BrowserErrorCode; } });
|
|
25
|
+
Object.defineProperty(exports, "BrowserName", { enumerable: true, get: function () { return types_1.BrowserName; } });
|
|
26
|
+
// Export the PhoneAuthClient class for direct use
|
|
27
|
+
var phone_auth_2 = require("../../core/phone-auth");
|
|
28
|
+
Object.defineProperty(exports, "PhoneAuthClient", { enumerable: true, get: function () { return phone_auth_2.PhoneAuthClient; } });
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SDKClient } from '../../core/client';
|
|
2
|
+
import type { ClientConfig } from '../../core/types';
|
|
3
|
+
import type { PhoneAuthResult, AuthError, PhoneAuthOptions } from '../../core/phone-auth';
|
|
4
|
+
export declare function useClient(config: ClientConfig): {
|
|
5
|
+
client: SDKClient;
|
|
6
|
+
isAuthenticated: boolean;
|
|
7
|
+
token: string | null;
|
|
8
|
+
loading: boolean;
|
|
9
|
+
error: Error | null;
|
|
10
|
+
authenticate: (authUrl: string, options?: any) => Promise<never>;
|
|
11
|
+
useQuery: <T>(path: string) => {
|
|
12
|
+
data: T | null;
|
|
13
|
+
loading: boolean;
|
|
14
|
+
error: Error | null;
|
|
15
|
+
refetch: () => Promise<void>;
|
|
16
|
+
};
|
|
17
|
+
usePhoneAuth: () => {
|
|
18
|
+
result: PhoneAuthResult | null;
|
|
19
|
+
loading: boolean;
|
|
20
|
+
error: AuthError | null;
|
|
21
|
+
isSupported: boolean;
|
|
22
|
+
getPhoneNumber: (options?: Omit<PhoneAuthOptions, "useCase" | "phoneNumber">) => Promise<PhoneAuthResult>;
|
|
23
|
+
verifyPhoneNumber: (phoneNumber: string, options?: Omit<PhoneAuthOptions, "useCase" | "phoneNumber">) => Promise<PhoneAuthResult>;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
export { useClient as useReactClient } from './useClient';
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.useReactClient = void 0;
|
|
13
|
+
exports.useClient = useClient;
|
|
14
|
+
const react_1 = require("react");
|
|
15
|
+
const client_1 = require("../../core/client");
|
|
16
|
+
function useClient(config) {
|
|
17
|
+
const [client] = (0, react_1.useState)(() => new client_1.SDKClient(config));
|
|
18
|
+
const [isAuthenticated, setIsAuthenticated] = (0, react_1.useState)(false);
|
|
19
|
+
const [token, setToken] = (0, react_1.useState)(null);
|
|
20
|
+
const [loading, setLoading] = (0, react_1.useState)(false);
|
|
21
|
+
const [error, setError] = (0, react_1.useState)(null);
|
|
22
|
+
(0, react_1.useEffect)(() => {
|
|
23
|
+
let cleanupFn;
|
|
24
|
+
const setCleanup = (fn) => {
|
|
25
|
+
cleanupFn = fn;
|
|
26
|
+
};
|
|
27
|
+
return () => {
|
|
28
|
+
if (cleanupFn) {
|
|
29
|
+
cleanupFn();
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}, []);
|
|
33
|
+
const authenticate = (authUrl, options) => __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
// Legacy authentication removed - use setToken directly
|
|
35
|
+
const error = new Error('authenticate method is deprecated. Use client.setToken() directly.');
|
|
36
|
+
setError(error);
|
|
37
|
+
setLoading(false);
|
|
38
|
+
throw error;
|
|
39
|
+
});
|
|
40
|
+
const useQuery = (path) => {
|
|
41
|
+
const [data, setData] = (0, react_1.useState)(null);
|
|
42
|
+
const [queryLoading, setQueryLoading] = (0, react_1.useState)(true);
|
|
43
|
+
const [queryError, setQueryError] = (0, react_1.useState)(null);
|
|
44
|
+
const fetchData = (0, react_1.useCallback)(() => __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
try {
|
|
46
|
+
const response = yield client.get(path);
|
|
47
|
+
setData(response.data);
|
|
48
|
+
}
|
|
49
|
+
catch (err) {
|
|
50
|
+
setQueryError(err);
|
|
51
|
+
}
|
|
52
|
+
finally {
|
|
53
|
+
setQueryLoading(false);
|
|
54
|
+
}
|
|
55
|
+
}), [path]);
|
|
56
|
+
(0, react_1.useEffect)(() => {
|
|
57
|
+
fetchData();
|
|
58
|
+
}, [fetchData]);
|
|
59
|
+
return { data, loading: queryLoading, error: queryError, refetch: fetchData };
|
|
60
|
+
};
|
|
61
|
+
const usePhoneAuth = () => {
|
|
62
|
+
const [phoneAuthResult, setPhoneAuthResult] = (0, react_1.useState)(null);
|
|
63
|
+
const [phoneAuthLoading, setPhoneAuthLoading] = (0, react_1.useState)(false);
|
|
64
|
+
const [phoneAuthError, setPhoneAuthError] = (0, react_1.useState)(null);
|
|
65
|
+
const [isSupported] = (0, react_1.useState)(() => client.phoneAuth.isSupported());
|
|
66
|
+
const getPhoneNumber = (0, react_1.useCallback)((options) => __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
setPhoneAuthLoading(true);
|
|
68
|
+
setPhoneAuthError(null);
|
|
69
|
+
setPhoneAuthResult(null);
|
|
70
|
+
try {
|
|
71
|
+
const result = yield client.phoneAuth.getPhoneNumberComplete(options);
|
|
72
|
+
setPhoneAuthResult(result);
|
|
73
|
+
return result;
|
|
74
|
+
}
|
|
75
|
+
catch (err) {
|
|
76
|
+
setPhoneAuthError(err);
|
|
77
|
+
throw err;
|
|
78
|
+
}
|
|
79
|
+
finally {
|
|
80
|
+
setPhoneAuthLoading(false);
|
|
81
|
+
}
|
|
82
|
+
}), [client]);
|
|
83
|
+
const verifyPhoneNumber = (0, react_1.useCallback)((phoneNumber, options) => __awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
setPhoneAuthLoading(true);
|
|
85
|
+
setPhoneAuthError(null);
|
|
86
|
+
setPhoneAuthResult(null);
|
|
87
|
+
try {
|
|
88
|
+
const result = yield client.phoneAuth.verifyPhoneNumberComplete(phoneNumber, options);
|
|
89
|
+
setPhoneAuthResult(result);
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
catch (err) {
|
|
93
|
+
setPhoneAuthError(err);
|
|
94
|
+
throw err;
|
|
95
|
+
}
|
|
96
|
+
finally {
|
|
97
|
+
setPhoneAuthLoading(false);
|
|
98
|
+
}
|
|
99
|
+
}), [client]);
|
|
100
|
+
return {
|
|
101
|
+
result: phoneAuthResult,
|
|
102
|
+
loading: phoneAuthLoading,
|
|
103
|
+
error: phoneAuthError,
|
|
104
|
+
isSupported,
|
|
105
|
+
getPhoneNumber,
|
|
106
|
+
verifyPhoneNumber
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
return {
|
|
110
|
+
client,
|
|
111
|
+
isAuthenticated,
|
|
112
|
+
token,
|
|
113
|
+
loading,
|
|
114
|
+
error,
|
|
115
|
+
authenticate,
|
|
116
|
+
useQuery,
|
|
117
|
+
usePhoneAuth,
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
var useClient_1 = require("./useClient");
|
|
121
|
+
Object.defineProperty(exports, "useReactClient", { enumerable: true, get: function () { return useClient_1.useClient; } });
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { PhoneAuthClient } from '../../core/phone-auth';
|
|
2
|
+
import type { AuthConfig, PhoneAuthResult, AuthError, AuthStep, PhoneAuthOptions } from '../../core/phone-auth';
|
|
3
|
+
export interface UsePhoneAuthOptions extends AuthConfig {
|
|
4
|
+
}
|
|
5
|
+
export declare function usePhoneAuth(config?: UsePhoneAuthOptions): {
|
|
6
|
+
isLoading: boolean;
|
|
7
|
+
error: AuthError | null;
|
|
8
|
+
result: PhoneAuthResult | null;
|
|
9
|
+
currentStep: AuthStep;
|
|
10
|
+
isSupported: boolean;
|
|
11
|
+
verify: (options: PhoneAuthOptions) => Promise<PhoneAuthResult>;
|
|
12
|
+
getPhoneNumber: (options?: Omit<PhoneAuthOptions, "use_case">) => Promise<PhoneAuthResult>;
|
|
13
|
+
verifyPhoneNumber: (phoneNumber: string, options?: Omit<PhoneAuthOptions, "use_case" | "phone_number">) => Promise<PhoneAuthResult>;
|
|
14
|
+
retryLastRequest: () => Promise<PhoneAuthResult>;
|
|
15
|
+
reset: () => void;
|
|
16
|
+
preparePhoneRequest: (options: PhoneAuthOptions) => Promise<import("../../core/phone-auth").PrepareResponse>;
|
|
17
|
+
invokeSecurePrompt: (prepareResponse: any) => Promise<{
|
|
18
|
+
[aggregator_id: string]: string | string[];
|
|
19
|
+
} | import("../../core/phone-auth").HeadlessResult>;
|
|
20
|
+
getPhoneNumberCredential: (credentialResponse: any, session: any) => Promise<import("../../core/phone-auth").GetPhoneNumberResponse>;
|
|
21
|
+
verifyPhoneNumberCredential: (credentialResponse: any, session: any) => Promise<import("../../core/phone-auth").VerifyPhoneNumberResponse>;
|
|
22
|
+
client: PhoneAuthClient;
|
|
23
|
+
};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.usePhoneAuth = usePhoneAuth;
|
|
13
|
+
const react_1 = require("react");
|
|
14
|
+
const phone_auth_1 = require("../../core/phone-auth");
|
|
15
|
+
function usePhoneAuth(config = {}) {
|
|
16
|
+
const [isLoading, setIsLoading] = (0, react_1.useState)(false);
|
|
17
|
+
const [error, setError] = (0, react_1.useState)(null);
|
|
18
|
+
const [result, setResult] = (0, react_1.useState)(null);
|
|
19
|
+
const [currentStep, setCurrentStep] = (0, react_1.useState)('idle');
|
|
20
|
+
const lastRequestRef = (0, react_1.useRef)(null);
|
|
21
|
+
// Create client instance with callbacks
|
|
22
|
+
const client = (0, react_1.useMemo)(() => new phone_auth_1.PhoneAuthClient(Object.assign(Object.assign({}, config), {
|
|
23
|
+
// Pass through callbacks if provided
|
|
24
|
+
onCrossDeviceDetected: config.onCrossDeviceDetected, onRetryAttempt: config.onRetryAttempt })), [JSON.stringify(config)]);
|
|
25
|
+
// Check browser support
|
|
26
|
+
const isSupported = (0, react_1.useMemo)(() => client.isSupported(), [client]);
|
|
27
|
+
// Verify method with silent retry support
|
|
28
|
+
const verify = (0, react_1.useCallback)((options) => __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
setIsLoading(true);
|
|
30
|
+
setError(null);
|
|
31
|
+
setResult(null);
|
|
32
|
+
setCurrentStep('requesting');
|
|
33
|
+
lastRequestRef.current = options;
|
|
34
|
+
try {
|
|
35
|
+
// Use the client's verify method which includes retry logic
|
|
36
|
+
const verificationResult = yield client.verify(options);
|
|
37
|
+
setResult(verificationResult);
|
|
38
|
+
setCurrentStep('complete');
|
|
39
|
+
return verificationResult;
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
// Error is only set after all retries are exhausted
|
|
43
|
+
const authError = err;
|
|
44
|
+
setError(authError);
|
|
45
|
+
setCurrentStep('idle');
|
|
46
|
+
throw authError;
|
|
47
|
+
}
|
|
48
|
+
finally {
|
|
49
|
+
setIsLoading(false);
|
|
50
|
+
}
|
|
51
|
+
}), [client]);
|
|
52
|
+
// Manual retry method
|
|
53
|
+
const retryLastRequest = (0, react_1.useCallback)(() => __awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
if (!lastRequestRef.current) {
|
|
55
|
+
throw new Error('No previous request to retry');
|
|
56
|
+
}
|
|
57
|
+
return verify(lastRequestRef.current);
|
|
58
|
+
}), [verify]);
|
|
59
|
+
// Convenience methods
|
|
60
|
+
const getPhoneNumber = (0, react_1.useCallback)((options) => verify(Object.assign({ use_case: 'GetPhoneNumber' }, options)), [verify]);
|
|
61
|
+
const verifyPhoneNumber = (0, react_1.useCallback)((phoneNumber, options) => verify(Object.assign({ use_case: 'VerifyPhoneNumber', phone_number: phoneNumber }, options)), [verify]);
|
|
62
|
+
// Reset state
|
|
63
|
+
const reset = (0, react_1.useCallback)(() => {
|
|
64
|
+
setIsLoading(false);
|
|
65
|
+
setError(null);
|
|
66
|
+
setResult(null);
|
|
67
|
+
setCurrentStep('idle');
|
|
68
|
+
}, []);
|
|
69
|
+
// Expose granular methods directly from client for better discoverability
|
|
70
|
+
const preparePhoneRequest = (0, react_1.useCallback)((options) => client.preparePhoneRequest(options), [client]);
|
|
71
|
+
const invokeSecurePrompt = (0, react_1.useCallback)((prepareResponse) => client.invokeSecurePrompt(prepareResponse), [client]);
|
|
72
|
+
const getPhoneNumberCredential = (0, react_1.useCallback)((credentialResponse, session) => client.getPhoneNumber(credentialResponse, session), [client]);
|
|
73
|
+
const verifyPhoneNumberCredential = (0, react_1.useCallback)((credentialResponse, session) => client.verifyPhoneNumber(credentialResponse, session), [client]);
|
|
74
|
+
return {
|
|
75
|
+
// State
|
|
76
|
+
isLoading,
|
|
77
|
+
error,
|
|
78
|
+
result,
|
|
79
|
+
currentStep,
|
|
80
|
+
isSupported,
|
|
81
|
+
// High-level methods
|
|
82
|
+
verify,
|
|
83
|
+
getPhoneNumber,
|
|
84
|
+
verifyPhoneNumber,
|
|
85
|
+
retryLastRequest,
|
|
86
|
+
reset,
|
|
87
|
+
// Granular methods (directly exposed for better discoverability)
|
|
88
|
+
preparePhoneRequest,
|
|
89
|
+
invokeSecurePrompt,
|
|
90
|
+
getPhoneNumberCredential,
|
|
91
|
+
verifyPhoneNumberCredential,
|
|
92
|
+
// Client instance (still available for advanced usage)
|
|
93
|
+
client
|
|
94
|
+
};
|
|
95
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ClientConfig, ClientResponse, RequestOptions } from '../../core/types';
|
|
2
|
+
export declare class VanillaClient {
|
|
3
|
+
private client;
|
|
4
|
+
constructor(config: ClientConfig);
|
|
5
|
+
authenticate(authUrl: string, options?: any): Promise<void>;
|
|
6
|
+
setToken(token: string): void;
|
|
7
|
+
get<T>(path: string, options?: RequestOptions): Promise<ClientResponse<T>>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.VanillaClient = void 0;
|
|
13
|
+
const client_1 = require("../../core/client");
|
|
14
|
+
class VanillaClient {
|
|
15
|
+
constructor(config) {
|
|
16
|
+
this.client = new client_1.SDKClient(config);
|
|
17
|
+
}
|
|
18
|
+
authenticate(authUrl, options) {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
// Legacy authentication removed - use setToken directly
|
|
21
|
+
throw new Error('authenticate method is deprecated. Use client.setToken() directly.');
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
setToken(token) {
|
|
25
|
+
this.client.setToken(token);
|
|
26
|
+
}
|
|
27
|
+
get(path, options) {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
return this.client.get(path, options);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.VanillaClient = VanillaClient;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { VanillaClient as ClientManager } from './client';
|
|
2
|
+
export { PhoneAuthManager } from './phone-auth';
|
|
3
|
+
export { PhoneAuthErrorCode, isPhoneAuthError, isUserError, getUserMessage, isErrorCode, getRetryDelay, isRetryableError, serializeError, createErrorBreadcrumb } from '../../core/phone-auth';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createErrorBreadcrumb = exports.serializeError = exports.isRetryableError = exports.getRetryDelay = exports.isErrorCode = exports.getUserMessage = exports.isUserError = exports.isPhoneAuthError = exports.PhoneAuthErrorCode = exports.PhoneAuthManager = exports.ClientManager = void 0;
|
|
4
|
+
var client_1 = require("./client");
|
|
5
|
+
Object.defineProperty(exports, "ClientManager", { enumerable: true, get: function () { return client_1.VanillaClient; } });
|
|
6
|
+
var phone_auth_1 = require("./phone-auth");
|
|
7
|
+
Object.defineProperty(exports, "PhoneAuthManager", { enumerable: true, get: function () { return phone_auth_1.PhoneAuthManager; } });
|
|
8
|
+
// Export error utilities
|
|
9
|
+
var phone_auth_2 = require("../../core/phone-auth");
|
|
10
|
+
Object.defineProperty(exports, "PhoneAuthErrorCode", { enumerable: true, get: function () { return phone_auth_2.PhoneAuthErrorCode; } });
|
|
11
|
+
Object.defineProperty(exports, "isPhoneAuthError", { enumerable: true, get: function () { return phone_auth_2.isPhoneAuthError; } });
|
|
12
|
+
Object.defineProperty(exports, "isUserError", { enumerable: true, get: function () { return phone_auth_2.isUserError; } });
|
|
13
|
+
Object.defineProperty(exports, "getUserMessage", { enumerable: true, get: function () { return phone_auth_2.getUserMessage; } });
|
|
14
|
+
Object.defineProperty(exports, "isErrorCode", { enumerable: true, get: function () { return phone_auth_2.isErrorCode; } });
|
|
15
|
+
Object.defineProperty(exports, "getRetryDelay", { enumerable: true, get: function () { return phone_auth_2.getRetryDelay; } });
|
|
16
|
+
Object.defineProperty(exports, "isRetryableError", { enumerable: true, get: function () { return phone_auth_2.isRetryableError; } });
|
|
17
|
+
Object.defineProperty(exports, "serializeError", { enumerable: true, get: function () { return phone_auth_2.serializeError; } });
|
|
18
|
+
Object.defineProperty(exports, "createErrorBreadcrumb", { enumerable: true, get: function () { return phone_auth_2.createErrorBreadcrumb; } });
|