@affectively/dash 5.2.1 → 5.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +62 -0
- package/dist/index.js +31 -0
- package/dist/sync/index.d.ts +6 -0
- package/dist/sync/index.js +4 -0
- package/package.json +45 -66
- package/README.md +0 -193
- package/dist/src/api/firebase/auth/index.d.ts +0 -137
- package/dist/src/api/firebase/auth/index.js +0 -352
- package/dist/src/api/firebase/auth/providers.d.ts +0 -254
- package/dist/src/api/firebase/auth/providers.js +0 -518
- package/dist/src/api/firebase/database/index.d.ts +0 -108
- package/dist/src/api/firebase/database/index.js +0 -368
- package/dist/src/api/firebase/errors.d.ts +0 -15
- package/dist/src/api/firebase/errors.js +0 -215
- package/dist/src/api/firebase/firestore/data-types.d.ts +0 -116
- package/dist/src/api/firebase/firestore/data-types.js +0 -280
- package/dist/src/api/firebase/firestore/index.d.ts +0 -7
- package/dist/src/api/firebase/firestore/index.js +0 -13
- package/dist/src/api/firebase/firestore/listeners.d.ts +0 -20
- package/dist/src/api/firebase/firestore/listeners.js +0 -50
- package/dist/src/api/firebase/firestore/operations.d.ts +0 -123
- package/dist/src/api/firebase/firestore/operations.js +0 -490
- package/dist/src/api/firebase/firestore/query.d.ts +0 -118
- package/dist/src/api/firebase/firestore/query.js +0 -418
- package/dist/src/api/firebase/index.d.ts +0 -11
- package/dist/src/api/firebase/index.js +0 -17
- package/dist/src/api/firebase/storage/index.d.ts +0 -100
- package/dist/src/api/firebase/storage/index.js +0 -286
- package/dist/src/api/firebase/types.d.ts +0 -341
- package/dist/src/api/firebase/types.js +0 -4
- package/dist/src/auth/manager.d.ts +0 -182
- package/dist/src/auth/manager.js +0 -598
- package/dist/src/engine/ai.d.ts +0 -10
- package/dist/src/engine/ai.js +0 -76
- package/dist/src/engine/sqlite.d.ts +0 -298
- package/dist/src/engine/sqlite.js +0 -1088
- package/dist/src/engine/vec_extension.d.ts +0 -5
- package/dist/src/engine/vec_extension.js +0 -10
- package/dist/src/index.d.ts +0 -15
- package/dist/src/index.js +0 -24
- package/dist/src/mcp/server.d.ts +0 -8
- package/dist/src/mcp/server.js +0 -87
- package/dist/src/reactivity/signal.d.ts +0 -3
- package/dist/src/reactivity/signal.js +0 -31
- package/dist/src/schema/lens.d.ts +0 -29
- package/dist/src/schema/lens.js +0 -122
- package/dist/src/sync/aeon/config.d.ts +0 -21
- package/dist/src/sync/aeon/config.js +0 -14
- package/dist/src/sync/aeon/delta-adapter.d.ts +0 -62
- package/dist/src/sync/aeon/delta-adapter.js +0 -98
- package/dist/src/sync/aeon/index.d.ts +0 -18
- package/dist/src/sync/aeon/index.js +0 -19
- package/dist/src/sync/aeon/offline-adapter.d.ts +0 -110
- package/dist/src/sync/aeon/offline-adapter.js +0 -227
- package/dist/src/sync/aeon/presence-adapter.d.ts +0 -114
- package/dist/src/sync/aeon/presence-adapter.js +0 -157
- package/dist/src/sync/aeon/schema-adapter.d.ts +0 -95
- package/dist/src/sync/aeon/schema-adapter.js +0 -163
- package/dist/src/sync/backup.d.ts +0 -12
- package/dist/src/sync/backup.js +0 -44
- package/dist/src/sync/connection.d.ts +0 -20
- package/dist/src/sync/connection.js +0 -50
- package/dist/src/sync/d1-provider.d.ts +0 -97
- package/dist/src/sync/d1-provider.js +0 -345
- package/dist/src/sync/hybrid-provider.d.ts +0 -172
- package/dist/src/sync/hybrid-provider.js +0 -477
- package/dist/src/sync/provider.d.ts +0 -11
- package/dist/src/sync/provider.js +0 -67
- package/dist/src/sync/verify.d.ts +0 -1
- package/dist/src/sync/verify.js +0 -23
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -1,352 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Firebase Authentication API
|
|
3
|
-
* Email/password, OAuth, MFA support
|
|
4
|
-
*/
|
|
5
|
-
import { createFirebaseError } from '../errors.js';
|
|
6
|
-
/**
|
|
7
|
-
* User implementation
|
|
8
|
-
*/
|
|
9
|
-
export class UserImpl {
|
|
10
|
-
uid;
|
|
11
|
-
email;
|
|
12
|
-
emailVerified;
|
|
13
|
-
displayName;
|
|
14
|
-
photoURL;
|
|
15
|
-
phoneNumber;
|
|
16
|
-
isAnonymous;
|
|
17
|
-
metadata;
|
|
18
|
-
providerData;
|
|
19
|
-
password;
|
|
20
|
-
constructor(uid, email, displayName, photoURL) {
|
|
21
|
-
this.uid = uid;
|
|
22
|
-
this.email = email || null;
|
|
23
|
-
this.emailVerified = false;
|
|
24
|
-
this.displayName = displayName || null;
|
|
25
|
-
this.photoURL = photoURL || null;
|
|
26
|
-
this.phoneNumber = null;
|
|
27
|
-
this.isAnonymous = !email;
|
|
28
|
-
this.metadata = {
|
|
29
|
-
creationTime: Date.now(),
|
|
30
|
-
lastSignInTime: Date.now(),
|
|
31
|
-
};
|
|
32
|
-
this.providerData = email ? [{ uid, email, displayName: displayName || null, photoURL: photoURL || null, phoneNumber: null, providerId: 'password' }] : [];
|
|
33
|
-
}
|
|
34
|
-
toJSON() {
|
|
35
|
-
return {
|
|
36
|
-
uid: this.uid,
|
|
37
|
-
email: this.email,
|
|
38
|
-
emailVerified: this.emailVerified,
|
|
39
|
-
displayName: this.displayName,
|
|
40
|
-
photoURL: this.photoURL,
|
|
41
|
-
phoneNumber: this.phoneNumber,
|
|
42
|
-
isAnonymous: this.isAnonymous,
|
|
43
|
-
metadata: this.metadata,
|
|
44
|
-
providerData: this.providerData,
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
async getIdToken(forceRefresh) {
|
|
48
|
-
// Generate mock JWT token (in real implementation, use proper token)
|
|
49
|
-
const header = btoa(JSON.stringify({ alg: 'HS256', typ: 'JWT' }));
|
|
50
|
-
const payload = btoa(JSON.stringify({
|
|
51
|
-
iss: 'https://securetoken.google.com/project',
|
|
52
|
-
aud: 'project',
|
|
53
|
-
auth_time: Math.floor(Date.now() / 1000),
|
|
54
|
-
user_id: this.uid,
|
|
55
|
-
sub: this.uid,
|
|
56
|
-
iat: Math.floor(Date.now() / 1000),
|
|
57
|
-
exp: Math.floor(Date.now() / 1000) + 3600,
|
|
58
|
-
email: this.email,
|
|
59
|
-
}));
|
|
60
|
-
const signature = btoa('mock-signature');
|
|
61
|
-
return `${header}.${payload}.${signature}`;
|
|
62
|
-
}
|
|
63
|
-
async getIdTokenResult(forceRefresh) {
|
|
64
|
-
const token = await this.getIdToken(forceRefresh);
|
|
65
|
-
const expiresIn = 3600; // 1 hour
|
|
66
|
-
const now = new Date();
|
|
67
|
-
const expirationTime = new Date(now.getTime() + expiresIn * 1000);
|
|
68
|
-
const issuedAtTime = now;
|
|
69
|
-
return {
|
|
70
|
-
token,
|
|
71
|
-
expirationTime: expirationTime.toISOString(),
|
|
72
|
-
authTime: issuedAtTime.toISOString(),
|
|
73
|
-
issuedAtTime: issuedAtTime.toISOString(),
|
|
74
|
-
signInProvider: 'password',
|
|
75
|
-
claims: {
|
|
76
|
-
email: this.email,
|
|
77
|
-
email_verified: this.emailVerified,
|
|
78
|
-
},
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
async refresh() {
|
|
82
|
-
this.metadata.lastSignInTime = Date.now() + 1;
|
|
83
|
-
}
|
|
84
|
-
async delete() {
|
|
85
|
-
// Delete user from database
|
|
86
|
-
}
|
|
87
|
-
linkWithCredential(credential) {
|
|
88
|
-
throw new Error('Not implemented');
|
|
89
|
-
}
|
|
90
|
-
unlink(providerId) {
|
|
91
|
-
throw new Error('Not implemented');
|
|
92
|
-
}
|
|
93
|
-
reauthenticateWithCredential(credential) {
|
|
94
|
-
throw new Error('Not implemented');
|
|
95
|
-
}
|
|
96
|
-
async updateProfile(profile) {
|
|
97
|
-
if (profile.displayName)
|
|
98
|
-
this.displayName = profile.displayName;
|
|
99
|
-
if (profile.photoURL)
|
|
100
|
-
this.photoURL = profile.photoURL;
|
|
101
|
-
}
|
|
102
|
-
async updateEmail(newEmail) {
|
|
103
|
-
if (!newEmail || !newEmail.includes('@')) {
|
|
104
|
-
throw createFirebaseError('auth/invalid-email', 'auth/invalid-email');
|
|
105
|
-
}
|
|
106
|
-
this.email = newEmail;
|
|
107
|
-
}
|
|
108
|
-
async updatePassword(newPassword) {
|
|
109
|
-
if (!newPassword || newPassword.length < 6) {
|
|
110
|
-
throw createFirebaseError('auth/weak-password', 'auth/weak-password');
|
|
111
|
-
}
|
|
112
|
-
this.password = newPassword;
|
|
113
|
-
}
|
|
114
|
-
async updatePhoneNumber(credential) {
|
|
115
|
-
// Update phone number from credential
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Auth credential implementation
|
|
120
|
-
*/
|
|
121
|
-
export class AuthCredentialImpl {
|
|
122
|
-
providerId;
|
|
123
|
-
signInMethod;
|
|
124
|
-
_idToken;
|
|
125
|
-
_accessToken;
|
|
126
|
-
_secret;
|
|
127
|
-
_refreshToken;
|
|
128
|
-
constructor(providerId, signInMethod) {
|
|
129
|
-
this.providerId = providerId;
|
|
130
|
-
this.signInMethod = signInMethod;
|
|
131
|
-
}
|
|
132
|
-
toJSON() {
|
|
133
|
-
return {
|
|
134
|
-
providerId: this.providerId,
|
|
135
|
-
signInMethod: this.signInMethod,
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Create user with email and password
|
|
141
|
-
*/
|
|
142
|
-
export async function createUserWithEmailAndPassword(auth, email, password) {
|
|
143
|
-
if (!email || !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) {
|
|
144
|
-
throw createFirebaseError('auth/invalid-email', 'The email address is not valid.');
|
|
145
|
-
}
|
|
146
|
-
if (!password || password.length < 6) {
|
|
147
|
-
throw createFirebaseError('auth/weak-password', 'Password must be at least 6 characters.');
|
|
148
|
-
}
|
|
149
|
-
// Check complexity
|
|
150
|
-
const hasUpper = /[A-Z]/.test(password);
|
|
151
|
-
const hasLower = /[a-z]/.test(password);
|
|
152
|
-
const hasDigit = /\d/.test(password);
|
|
153
|
-
if (!hasUpper || !hasLower || !hasDigit) {
|
|
154
|
-
throw createFirebaseError('auth/weak-password', 'Password must contain at least one uppercase letter, one lowercase letter, and one digit.');
|
|
155
|
-
}
|
|
156
|
-
const uid = `user_${Math.random().toString(36).substr(2, 9)}`;
|
|
157
|
-
const user = new UserImpl(uid, email);
|
|
158
|
-
user.password = hashPassword(password);
|
|
159
|
-
// Set current user
|
|
160
|
-
auth.currentUser = user;
|
|
161
|
-
return {
|
|
162
|
-
user,
|
|
163
|
-
operationType: 'signIn',
|
|
164
|
-
providerId: 'password',
|
|
165
|
-
};
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* Sign in with email and password
|
|
169
|
-
*/
|
|
170
|
-
export async function signInWithEmailAndPassword(auth, email, password) {
|
|
171
|
-
if (!email || !email.includes('@')) {
|
|
172
|
-
throw createFirebaseError('auth/invalid-email', 'The email address is not valid.');
|
|
173
|
-
}
|
|
174
|
-
if (!password) {
|
|
175
|
-
throw createFirebaseError('auth/missing-password', 'The password is missing.');
|
|
176
|
-
}
|
|
177
|
-
// In a real implementation, verify against stored credentials
|
|
178
|
-
const uid = `user_${Math.random().toString(36).substr(2, 9)}`;
|
|
179
|
-
const user = new UserImpl(uid, email);
|
|
180
|
-
user.emailVerified = true;
|
|
181
|
-
auth.currentUser = user;
|
|
182
|
-
auth._currentUser = user;
|
|
183
|
-
return {
|
|
184
|
-
user,
|
|
185
|
-
operationType: 'signIn',
|
|
186
|
-
providerId: 'password',
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
/**
|
|
190
|
-
* Sign in anonymously
|
|
191
|
-
*/
|
|
192
|
-
export async function signInAnonymously(auth) {
|
|
193
|
-
const uid = `anonymous_${Math.random().toString(36).substr(2, 9)}`;
|
|
194
|
-
const user = new UserImpl(uid);
|
|
195
|
-
auth.currentUser = user;
|
|
196
|
-
auth._currentUser = user;
|
|
197
|
-
return {
|
|
198
|
-
user,
|
|
199
|
-
operationType: 'signIn',
|
|
200
|
-
providerId: null,
|
|
201
|
-
};
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Sign out
|
|
205
|
-
*/
|
|
206
|
-
export async function signOut(auth) {
|
|
207
|
-
auth.currentUser = null;
|
|
208
|
-
auth._currentUser = null;
|
|
209
|
-
}
|
|
210
|
-
/**
|
|
211
|
-
* Get current user
|
|
212
|
-
*/
|
|
213
|
-
export function getCurrentUser(auth) {
|
|
214
|
-
return auth.currentUser;
|
|
215
|
-
}
|
|
216
|
-
/**
|
|
217
|
-
* On auth state changed
|
|
218
|
-
*/
|
|
219
|
-
export function onAuthStateChanged(auth, callback) {
|
|
220
|
-
if (auth.onAuthStateChanged) {
|
|
221
|
-
return auth.onAuthStateChanged(callback);
|
|
222
|
-
}
|
|
223
|
-
callback(auth.currentUser);
|
|
224
|
-
return () => {
|
|
225
|
-
// Unsubscribe
|
|
226
|
-
};
|
|
227
|
-
}
|
|
228
|
-
/**
|
|
229
|
-
* Update user profile
|
|
230
|
-
*/
|
|
231
|
-
export async function updateUserProfile(user, profile) {
|
|
232
|
-
await user.updateProfile(profile);
|
|
233
|
-
}
|
|
234
|
-
/**
|
|
235
|
-
* Update user email
|
|
236
|
-
*/
|
|
237
|
-
export async function updateUserEmail(user, newEmail) {
|
|
238
|
-
await user.updateEmail(newEmail);
|
|
239
|
-
}
|
|
240
|
-
/**
|
|
241
|
-
* Update user password
|
|
242
|
-
*/
|
|
243
|
-
export async function updateUserPassword(user, newPassword) {
|
|
244
|
-
await user.updatePassword(newPassword);
|
|
245
|
-
}
|
|
246
|
-
/**
|
|
247
|
-
* Delete user
|
|
248
|
-
*/
|
|
249
|
-
export async function deleteUser(user) {
|
|
250
|
-
await user.delete();
|
|
251
|
-
}
|
|
252
|
-
/**
|
|
253
|
-
* Send password reset email
|
|
254
|
-
*/
|
|
255
|
-
export async function sendPasswordResetEmail(auth, email) {
|
|
256
|
-
if (!email || !email.includes('@')) {
|
|
257
|
-
throw createFirebaseError('auth/invalid-email', 'The email address is not valid.');
|
|
258
|
-
}
|
|
259
|
-
// In real implementation, send email with reset link
|
|
260
|
-
console.log(`Password reset email sent to ${email}`);
|
|
261
|
-
}
|
|
262
|
-
/**
|
|
263
|
-
* Send email verification
|
|
264
|
-
*/
|
|
265
|
-
export async function sendEmailVerification(user) {
|
|
266
|
-
// In real implementation, send verification email
|
|
267
|
-
console.log(`Verification email sent to ${user.email}`);
|
|
268
|
-
}
|
|
269
|
-
/**
|
|
270
|
-
* Helper: Hash password (mock implementation)
|
|
271
|
-
*/
|
|
272
|
-
function hashPassword(password) {
|
|
273
|
-
// In real implementation, use proper bcrypt or similar
|
|
274
|
-
return btoa(password);
|
|
275
|
-
}
|
|
276
|
-
/**
|
|
277
|
-
* Persistence options
|
|
278
|
-
*/
|
|
279
|
-
export const browserLocalPersistence = {
|
|
280
|
-
type: 'LOCAL',
|
|
281
|
-
};
|
|
282
|
-
export const browserSessionPersistence = {
|
|
283
|
-
type: 'SESSION',
|
|
284
|
-
};
|
|
285
|
-
export const inMemoryPersistence = {
|
|
286
|
-
type: 'NONE',
|
|
287
|
-
};
|
|
288
|
-
/**
|
|
289
|
-
* Set persistence
|
|
290
|
-
*/
|
|
291
|
-
export async function setPersistence(auth, persistence) {
|
|
292
|
-
// Configure persistence strategy
|
|
293
|
-
}
|
|
294
|
-
/**
|
|
295
|
-
* Initialize auth
|
|
296
|
-
*/
|
|
297
|
-
let authInstance = null;
|
|
298
|
-
export function getAuth(app) {
|
|
299
|
-
return {
|
|
300
|
-
app: app || { name: 'default' },
|
|
301
|
-
type: 'auth',
|
|
302
|
-
currentUser: null,
|
|
303
|
-
_currentUser: null,
|
|
304
|
-
};
|
|
305
|
-
}
|
|
306
|
-
/**
|
|
307
|
-
* TOTP Generator for MFA
|
|
308
|
-
*/
|
|
309
|
-
export class TotpMultiFactorGenerator {
|
|
310
|
-
static generateSecret() {
|
|
311
|
-
// Generate random secret
|
|
312
|
-
const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';
|
|
313
|
-
let secret = '';
|
|
314
|
-
for (let i = 0; i < 32; i++) {
|
|
315
|
-
secret += chars.charAt(Math.floor(Math.random() * chars.length));
|
|
316
|
-
}
|
|
317
|
-
return secret;
|
|
318
|
-
}
|
|
319
|
-
static assertionForEnrollment(secret) {
|
|
320
|
-
return {
|
|
321
|
-
credential: secret,
|
|
322
|
-
};
|
|
323
|
-
}
|
|
324
|
-
static assertionForSignIn(factorInfo, code) {
|
|
325
|
-
return {
|
|
326
|
-
credential: code,
|
|
327
|
-
};
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
|
-
/**
|
|
331
|
-
* Phone Multi-Factor Generator
|
|
332
|
-
*/
|
|
333
|
-
export class PhoneMultiFactorGenerator {
|
|
334
|
-
static assertion(confirmationResult) {
|
|
335
|
-
return {
|
|
336
|
-
credential: confirmationResult.verificationId,
|
|
337
|
-
};
|
|
338
|
-
}
|
|
339
|
-
}
|
|
340
|
-
// ============================================================================
|
|
341
|
-
// OAuth Provider Exports
|
|
342
|
-
// ============================================================================
|
|
343
|
-
export { BaseOAuthProvider, GoogleAuthProvider, FacebookAuthProvider, GithubAuthProvider, TwitterAuthProvider, MicrosoftAuthProvider, AppleAuthProvider, LinkedInAuthProvider, YahooAuthProvider, InstagramAuthProvider, TikTokAuthProvider, TwitchAuthProvider, DiscordAuthProvider, SlackAuthProvider, SpotifyAuthProvider, StripeAuthProvider, DropboxAuthProvider, BoxAuthProvider, OktaAuthProvider, Auth0Provider, AmazonAuthProvider, GenericOAuthProvider, OAUTH_PROVIDERS, getOAuthProvider, } from './providers.js';
|
|
344
|
-
// ============================================================================
|
|
345
|
-
// User Management Functions
|
|
346
|
-
// ============================================================================
|
|
347
|
-
export async function updatePassword(user, newPassword) {
|
|
348
|
-
return user.updatePassword(newPassword);
|
|
349
|
-
}
|
|
350
|
-
export async function updateProfile(user, profile) {
|
|
351
|
-
return user.updateProfile(profile);
|
|
352
|
-
}
|
|
@@ -1,254 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* OAuth Provider implementations for Firebase Authentication
|
|
3
|
-
* Supports 21+ OAuth providers including enterprise, social, and custom options
|
|
4
|
-
*/
|
|
5
|
-
import type { OAuthCredential } from '../types.js';
|
|
6
|
-
/**
|
|
7
|
-
* Base OAuth Provider abstract class
|
|
8
|
-
* Provides common interface and functionality for all OAuth providers
|
|
9
|
-
*/
|
|
10
|
-
export declare abstract class BaseOAuthProvider {
|
|
11
|
-
static readonly PROVIDER_ID: string;
|
|
12
|
-
protected scopes: string[];
|
|
13
|
-
protected customParameters: Record<string, string>;
|
|
14
|
-
constructor();
|
|
15
|
-
/**
|
|
16
|
-
* Initialize default scopes for this provider
|
|
17
|
-
* Override in subclasses to set provider-specific defaults
|
|
18
|
-
*/
|
|
19
|
-
protected initializeDefaultScopes(): void;
|
|
20
|
-
/**
|
|
21
|
-
* Add a scope to the provider's scope list
|
|
22
|
-
* @param scope The scope to add
|
|
23
|
-
*/
|
|
24
|
-
addScope(scope: string): this;
|
|
25
|
-
/**
|
|
26
|
-
* Set custom parameters to be sent to the OAuth provider
|
|
27
|
-
* @param customParameters Object with custom parameters
|
|
28
|
-
*/
|
|
29
|
-
setCustomParameters(customParameters: Record<string, string>): this;
|
|
30
|
-
/**
|
|
31
|
-
* Get the provider ID for this OAuth provider
|
|
32
|
-
*/
|
|
33
|
-
abstract getProviderId(): string;
|
|
34
|
-
/**
|
|
35
|
-
* Get the scopes for this provider
|
|
36
|
-
*/
|
|
37
|
-
getScopes(): string[];
|
|
38
|
-
/**
|
|
39
|
-
* Get custom parameters for this provider
|
|
40
|
-
*/
|
|
41
|
-
getCustomParameters(): Record<string, string>;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Google OAuth Provider
|
|
45
|
-
*/
|
|
46
|
-
export declare class GoogleAuthProvider extends BaseOAuthProvider {
|
|
47
|
-
static readonly PROVIDER_ID = "google.com";
|
|
48
|
-
protected initializeDefaultScopes(): void;
|
|
49
|
-
getProviderId(): string;
|
|
50
|
-
static credential(accessToken?: string, idToken?: string): OAuthCredential;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Facebook OAuth Provider
|
|
54
|
-
*/
|
|
55
|
-
export declare class FacebookAuthProvider extends BaseOAuthProvider {
|
|
56
|
-
static readonly PROVIDER_ID = "facebook.com";
|
|
57
|
-
protected initializeDefaultScopes(): void;
|
|
58
|
-
getProviderId(): string;
|
|
59
|
-
static credential(accessToken: string): OAuthCredential;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* GitHub OAuth Provider
|
|
63
|
-
*/
|
|
64
|
-
export declare class GithubAuthProvider extends BaseOAuthProvider {
|
|
65
|
-
static readonly PROVIDER_ID = "github.com";
|
|
66
|
-
protected initializeDefaultScopes(): void;
|
|
67
|
-
getProviderId(): string;
|
|
68
|
-
static credential(accessToken: string): OAuthCredential;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Twitter OAuth Provider
|
|
72
|
-
*/
|
|
73
|
-
export declare class TwitterAuthProvider extends BaseOAuthProvider {
|
|
74
|
-
static readonly PROVIDER_ID = "twitter.com";
|
|
75
|
-
protected initializeDefaultScopes(): void;
|
|
76
|
-
getProviderId(): string;
|
|
77
|
-
static credential(accessToken: string, secret: string): OAuthCredential;
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Microsoft OAuth Provider
|
|
81
|
-
*/
|
|
82
|
-
export declare class MicrosoftAuthProvider extends BaseOAuthProvider {
|
|
83
|
-
static readonly PROVIDER_ID = "microsoft.com";
|
|
84
|
-
protected initializeDefaultScopes(): void;
|
|
85
|
-
getProviderId(): string;
|
|
86
|
-
static credential(accessToken: string): OAuthCredential;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Apple OAuth Provider
|
|
90
|
-
*/
|
|
91
|
-
export declare class AppleAuthProvider extends BaseOAuthProvider {
|
|
92
|
-
static readonly PROVIDER_ID = "apple.com";
|
|
93
|
-
protected initializeDefaultScopes(): void;
|
|
94
|
-
getProviderId(): string;
|
|
95
|
-
static credential(identityToken: string, rawNonce?: string): OAuthCredential;
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* LinkedIn OAuth Provider
|
|
99
|
-
*/
|
|
100
|
-
export declare class LinkedInAuthProvider extends BaseOAuthProvider {
|
|
101
|
-
static readonly PROVIDER_ID = "linkedin.com";
|
|
102
|
-
protected initializeDefaultScopes(): void;
|
|
103
|
-
getProviderId(): string;
|
|
104
|
-
static credential(accessToken: string): OAuthCredential;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Yahoo OAuth Provider
|
|
108
|
-
*/
|
|
109
|
-
export declare class YahooAuthProvider extends BaseOAuthProvider {
|
|
110
|
-
static readonly PROVIDER_ID = "yahoo.com";
|
|
111
|
-
protected initializeDefaultScopes(): void;
|
|
112
|
-
getProviderId(): string;
|
|
113
|
-
static credential(accessToken: string): OAuthCredential;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Instagram OAuth Provider
|
|
117
|
-
*/
|
|
118
|
-
export declare class InstagramAuthProvider extends BaseOAuthProvider {
|
|
119
|
-
static readonly PROVIDER_ID = "instagram.com";
|
|
120
|
-
protected initializeDefaultScopes(): void;
|
|
121
|
-
getProviderId(): string;
|
|
122
|
-
static credential(accessToken: string): OAuthCredential;
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* TikTok OAuth Provider
|
|
126
|
-
*/
|
|
127
|
-
export declare class TikTokAuthProvider extends BaseOAuthProvider {
|
|
128
|
-
static readonly PROVIDER_ID = "tiktok.com";
|
|
129
|
-
protected initializeDefaultScopes(): void;
|
|
130
|
-
getProviderId(): string;
|
|
131
|
-
static credential(accessToken: string): OAuthCredential;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Twitch OAuth Provider
|
|
135
|
-
*/
|
|
136
|
-
export declare class TwitchAuthProvider extends BaseOAuthProvider {
|
|
137
|
-
static readonly PROVIDER_ID = "twitch.tv";
|
|
138
|
-
protected initializeDefaultScopes(): void;
|
|
139
|
-
getProviderId(): string;
|
|
140
|
-
static credential(accessToken: string): OAuthCredential;
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Discord OAuth Provider
|
|
144
|
-
*/
|
|
145
|
-
export declare class DiscordAuthProvider extends BaseOAuthProvider {
|
|
146
|
-
static readonly PROVIDER_ID = "discord.com";
|
|
147
|
-
protected initializeDefaultScopes(): void;
|
|
148
|
-
getProviderId(): string;
|
|
149
|
-
static credential(accessToken: string): OAuthCredential;
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Slack OAuth Provider
|
|
153
|
-
*/
|
|
154
|
-
export declare class SlackAuthProvider extends BaseOAuthProvider {
|
|
155
|
-
static readonly PROVIDER_ID = "slack.com";
|
|
156
|
-
protected initializeDefaultScopes(): void;
|
|
157
|
-
getProviderId(): string;
|
|
158
|
-
static credential(accessToken: string): OAuthCredential;
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Spotify OAuth Provider
|
|
162
|
-
*/
|
|
163
|
-
export declare class SpotifyAuthProvider extends BaseOAuthProvider {
|
|
164
|
-
static readonly PROVIDER_ID = "spotify.com";
|
|
165
|
-
protected initializeDefaultScopes(): void;
|
|
166
|
-
getProviderId(): string;
|
|
167
|
-
static credential(accessToken: string, refreshToken?: string): OAuthCredential;
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
|
-
* Stripe OAuth Provider
|
|
171
|
-
*/
|
|
172
|
-
export declare class StripeAuthProvider extends BaseOAuthProvider {
|
|
173
|
-
static readonly PROVIDER_ID = "stripe.com";
|
|
174
|
-
protected initializeDefaultScopes(): void;
|
|
175
|
-
getProviderId(): string;
|
|
176
|
-
static credential(accessToken: string): OAuthCredential;
|
|
177
|
-
}
|
|
178
|
-
/**
|
|
179
|
-
* Dropbox OAuth Provider
|
|
180
|
-
*/
|
|
181
|
-
export declare class DropboxAuthProvider extends BaseOAuthProvider {
|
|
182
|
-
static readonly PROVIDER_ID = "dropbox.com";
|
|
183
|
-
protected initializeDefaultScopes(): void;
|
|
184
|
-
getProviderId(): string;
|
|
185
|
-
static credential(accessToken: string): OAuthCredential;
|
|
186
|
-
}
|
|
187
|
-
/**
|
|
188
|
-
* Box OAuth Provider
|
|
189
|
-
*/
|
|
190
|
-
export declare class BoxAuthProvider extends BaseOAuthProvider {
|
|
191
|
-
static readonly PROVIDER_ID = "box.com";
|
|
192
|
-
protected initializeDefaultScopes(): void;
|
|
193
|
-
getProviderId(): string;
|
|
194
|
-
static credential(accessToken: string): OAuthCredential;
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* Okta OAuth Provider
|
|
198
|
-
*/
|
|
199
|
-
export declare class OktaAuthProvider extends BaseOAuthProvider {
|
|
200
|
-
static readonly PROVIDER_ID = "okta.com";
|
|
201
|
-
protected initializeDefaultScopes(): void;
|
|
202
|
-
getProviderId(): string;
|
|
203
|
-
static credential(accessToken: string, idToken?: string): OAuthCredential;
|
|
204
|
-
}
|
|
205
|
-
/**
|
|
206
|
-
* Auth0 OAuth Provider
|
|
207
|
-
*/
|
|
208
|
-
export declare class Auth0Provider extends BaseOAuthProvider {
|
|
209
|
-
static readonly PROVIDER_ID = "auth0.com";
|
|
210
|
-
protected initializeDefaultScopes(): void;
|
|
211
|
-
getProviderId(): string;
|
|
212
|
-
static credential(accessToken: string, idToken?: string): OAuthCredential;
|
|
213
|
-
}
|
|
214
|
-
/**
|
|
215
|
-
* Amazon OAuth Provider
|
|
216
|
-
*/
|
|
217
|
-
export declare class AmazonAuthProvider extends BaseOAuthProvider {
|
|
218
|
-
static readonly PROVIDER_ID = "amazon.com";
|
|
219
|
-
protected initializeDefaultScopes(): void;
|
|
220
|
-
getProviderId(): string;
|
|
221
|
-
static credential(accessToken: string): OAuthCredential;
|
|
222
|
-
}
|
|
223
|
-
/**
|
|
224
|
-
* Generic OAuth Provider for custom OAuth implementations
|
|
225
|
-
* Allows configuration of any OAuth provider with custom settings
|
|
226
|
-
*/
|
|
227
|
-
export declare class GenericOAuthProvider extends BaseOAuthProvider {
|
|
228
|
-
static PROVIDER_ID: string;
|
|
229
|
-
private customProviderId;
|
|
230
|
-
private authorizationUrl;
|
|
231
|
-
private tokenUrl;
|
|
232
|
-
private userInfoUrl;
|
|
233
|
-
constructor(providerId: string);
|
|
234
|
-
getProviderId(): string;
|
|
235
|
-
setAuthorizationUrl(url: string): this;
|
|
236
|
-
setTokenUrl(url: string): this;
|
|
237
|
-
setUserInfoUrl(url: string): this;
|
|
238
|
-
getAuthorizationUrl(): string;
|
|
239
|
-
getTokenUrl(): string;
|
|
240
|
-
getUserInfoUrl(): string;
|
|
241
|
-
static credential(accessToken: string, refreshToken?: string): OAuthCredential;
|
|
242
|
-
}
|
|
243
|
-
/**
|
|
244
|
-
* OAuth Provider type union for all supported providers
|
|
245
|
-
*/
|
|
246
|
-
export type OAuthProviderType = GoogleAuthProvider | FacebookAuthProvider | GithubAuthProvider | TwitterAuthProvider | MicrosoftAuthProvider | AppleAuthProvider | LinkedInAuthProvider | YahooAuthProvider | InstagramAuthProvider | TikTokAuthProvider | TwitchAuthProvider | DiscordAuthProvider | SlackAuthProvider | SpotifyAuthProvider | StripeAuthProvider | DropboxAuthProvider | BoxAuthProvider | OktaAuthProvider | Auth0Provider | AmazonAuthProvider | GenericOAuthProvider;
|
|
247
|
-
/**
|
|
248
|
-
* Provider registry mapping provider IDs to their constructor functions
|
|
249
|
-
*/
|
|
250
|
-
export declare const OAUTH_PROVIDERS: Record<string, new () => BaseOAuthProvider>;
|
|
251
|
-
/**
|
|
252
|
-
* Get a provider by ID (standard providers only, use GenericOAuthProvider constructor for custom providers)
|
|
253
|
-
*/
|
|
254
|
-
export declare function getOAuthProvider(providerId: string): (new () => BaseOAuthProvider) | undefined;
|