react-native-nitro-auth 0.5.3 → 0.5.5
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 +60 -30
- package/android/build.gradle +2 -5
- package/android/src/main/cpp/JniOnLoad.cpp +3 -1
- package/android/src/main/cpp/PlatformAuth+Android.cpp +95 -29
- package/android/src/main/java/com/auth/AuthAdapter.kt +124 -126
- package/android/src/main/java/com/auth/NitroAuthModule.kt +8 -1
- package/cpp/AuthCache.cpp +0 -44
- package/cpp/AuthCache.hpp +0 -7
- package/cpp/HybridAuth.cpp +20 -2
- package/cpp/HybridAuth.hpp +1 -0
- package/ios/AuthAdapter.swift +64 -28
- package/lib/commonjs/Auth.web.js +96 -43
- package/lib/commonjs/Auth.web.js.map +1 -1
- package/lib/commonjs/index.js +23 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/service.js +33 -8
- package/lib/commonjs/service.js.map +1 -1
- package/lib/commonjs/use-auth.js +51 -54
- package/lib/commonjs/use-auth.js.map +1 -1
- package/lib/commonjs/utils/auth-error.js +37 -0
- package/lib/commonjs/utils/auth-error.js.map +1 -0
- package/lib/module/Auth.web.js +96 -43
- package/lib/module/Auth.web.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/service.js +33 -8
- package/lib/module/service.js.map +1 -1
- package/lib/module/use-auth.js +51 -54
- package/lib/module/use-auth.js.map +1 -1
- package/lib/module/utils/auth-error.js +30 -0
- package/lib/module/utils/auth-error.js.map +1 -0
- package/lib/typescript/commonjs/Auth.web.d.ts +7 -0
- package/lib/typescript/commonjs/Auth.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +1 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/service.d.ts.map +1 -1
- package/lib/typescript/commonjs/use-auth.d.ts +2 -1
- package/lib/typescript/commonjs/use-auth.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/auth-error.d.ts +16 -0
- package/lib/typescript/commonjs/utils/auth-error.d.ts.map +1 -0
- package/lib/typescript/module/Auth.web.d.ts +7 -0
- package/lib/typescript/module/Auth.web.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +1 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/service.d.ts.map +1 -1
- package/lib/typescript/module/use-auth.d.ts +2 -1
- package/lib/typescript/module/use-auth.d.ts.map +1 -1
- package/lib/typescript/module/utils/auth-error.d.ts +16 -0
- package/lib/typescript/module/utils/auth-error.d.ts.map +1 -0
- package/nitrogen/generated/android/NitroAuthOnLoad.cpp +22 -17
- package/nitrogen/generated/android/NitroAuthOnLoad.hpp +13 -4
- package/package.json +7 -7
- package/react-native-nitro-auth.podspec +1 -1
- package/src/Auth.web.ts +124 -50
- package/src/index.ts +1 -0
- package/src/service.ts +34 -8
- package/src/use-auth.ts +81 -114
- package/src/utils/auth-error.ts +49 -0
- package/ios/KeychainStore.swift +0 -43
package/lib/module/Auth.web.js
CHANGED
|
@@ -87,7 +87,9 @@ class AuthWeb {
|
|
|
87
87
|
_grantedScopes = [];
|
|
88
88
|
_listeners = [];
|
|
89
89
|
_tokenListeners = [];
|
|
90
|
+
_browserStorageResolved = false;
|
|
90
91
|
constructor() {
|
|
92
|
+
this._config = getConfig();
|
|
91
93
|
this.loadFromCache();
|
|
92
94
|
}
|
|
93
95
|
isPromiseLike(value) {
|
|
@@ -123,21 +125,27 @@ class AuthWeb {
|
|
|
123
125
|
if (this._storageAdapter) {
|
|
124
126
|
return true;
|
|
125
127
|
}
|
|
126
|
-
return
|
|
128
|
+
return this._config.nitroAuthPersistTokensOnWeb === true;
|
|
127
129
|
}
|
|
128
130
|
getWebStorageMode() {
|
|
129
|
-
const configuredMode =
|
|
131
|
+
const configuredMode = this._config.nitroAuthWebStorage;
|
|
130
132
|
if (configuredMode && WEB_STORAGE_MODES.has(configuredMode)) {
|
|
131
133
|
return configuredMode;
|
|
132
134
|
}
|
|
133
135
|
return STORAGE_MODE_SESSION;
|
|
134
136
|
}
|
|
135
137
|
getBrowserStorage() {
|
|
138
|
+
if (this._browserStorageResolved) {
|
|
139
|
+
return this._browserStorageCache;
|
|
140
|
+
}
|
|
141
|
+
this._browserStorageResolved = true;
|
|
136
142
|
if (typeof window === "undefined") {
|
|
143
|
+
this._browserStorageCache = undefined;
|
|
137
144
|
return undefined;
|
|
138
145
|
}
|
|
139
146
|
const mode = this.getWebStorageMode();
|
|
140
147
|
if (mode === STORAGE_MODE_MEMORY) {
|
|
148
|
+
this._browserStorageCache = undefined;
|
|
141
149
|
return undefined;
|
|
142
150
|
}
|
|
143
151
|
const storage = mode === STORAGE_MODE_LOCAL ? window.localStorage : window.sessionStorage;
|
|
@@ -145,12 +153,14 @@ class AuthWeb {
|
|
|
145
153
|
const testKey = "__nitro_auth_storage_probe__";
|
|
146
154
|
storage.setItem(testKey, "1");
|
|
147
155
|
storage.removeItem(testKey);
|
|
156
|
+
this._browserStorageCache = storage;
|
|
148
157
|
return storage;
|
|
149
158
|
} catch (error) {
|
|
150
159
|
logger.warn("Configured web storage is unavailable; using in-memory fallback", {
|
|
151
160
|
mode,
|
|
152
161
|
error: String(error)
|
|
153
162
|
});
|
|
163
|
+
this._browserStorageCache = undefined;
|
|
154
164
|
return undefined;
|
|
155
165
|
}
|
|
156
166
|
}
|
|
@@ -367,6 +377,20 @@ class AuthWeb {
|
|
|
367
377
|
return this._currentUser?.accessToken;
|
|
368
378
|
}
|
|
369
379
|
async refreshToken() {
|
|
380
|
+
if (this._refreshPromise) {
|
|
381
|
+
return this._refreshPromise;
|
|
382
|
+
}
|
|
383
|
+
const refreshPromise = this.performRefreshToken();
|
|
384
|
+
this._refreshPromise = refreshPromise;
|
|
385
|
+
try {
|
|
386
|
+
return await refreshPromise;
|
|
387
|
+
} finally {
|
|
388
|
+
if (this._refreshPromise === refreshPromise) {
|
|
389
|
+
this._refreshPromise = undefined;
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
async performRefreshToken() {
|
|
370
394
|
if (!this._currentUser) {
|
|
371
395
|
throw new Error("No user logged in");
|
|
372
396
|
}
|
|
@@ -376,13 +400,12 @@ class AuthWeb {
|
|
|
376
400
|
if (!refreshToken) {
|
|
377
401
|
throw new Error("No refresh token available");
|
|
378
402
|
}
|
|
379
|
-
const
|
|
380
|
-
const clientId = config.microsoftClientId;
|
|
403
|
+
const clientId = this._config.microsoftClientId;
|
|
381
404
|
if (!clientId) {
|
|
382
405
|
throw new Error("Microsoft Client ID not configured. Add 'microsoftClientId' to expo.extra in your app.config.js");
|
|
383
406
|
}
|
|
384
|
-
const tenant =
|
|
385
|
-
const b2cDomain =
|
|
407
|
+
const tenant = this._config.microsoftTenant ?? "common";
|
|
408
|
+
const b2cDomain = this._config.microsoftB2cDomain;
|
|
386
409
|
const authBaseUrl = this.getMicrosoftAuthBaseUrl(tenant, b2cDomain);
|
|
387
410
|
const tokenUrl = `${authBaseUrl}oauth2/v2.0/token`;
|
|
388
411
|
const body = new URLSearchParams({
|
|
@@ -476,7 +499,9 @@ class AuthWeb {
|
|
|
476
499
|
if (!payload) {
|
|
477
500
|
throw new Error("Invalid JWT payload");
|
|
478
501
|
}
|
|
479
|
-
const
|
|
502
|
+
const normalizedPayload = payload.replace(/-/g, "+").replace(/_/g, "/");
|
|
503
|
+
const padding = "=".repeat((4 - normalizedPayload.length % 4) % 4);
|
|
504
|
+
const decoded = JSON.parse(atob(`${normalizedPayload}${padding}`));
|
|
480
505
|
if (!isJsonObject(decoded)) {
|
|
481
506
|
throw new Error("Expected JWT payload to be an object");
|
|
482
507
|
}
|
|
@@ -527,8 +552,7 @@ class AuthWeb {
|
|
|
527
552
|
});
|
|
528
553
|
}
|
|
529
554
|
async loginGoogle(scopes, loginHint) {
|
|
530
|
-
const
|
|
531
|
-
const clientId = config.googleWebClientId;
|
|
555
|
+
const clientId = this._config.googleWebClientId;
|
|
532
556
|
if (!clientId) {
|
|
533
557
|
throw new Error("Google Web Client ID not configured. Add 'GOOGLE_WEB_CLIENT_ID' to your .env file.");
|
|
534
558
|
}
|
|
@@ -599,13 +623,12 @@ class AuthWeb {
|
|
|
599
623
|
}
|
|
600
624
|
}
|
|
601
625
|
async loginMicrosoft(scopes, loginHint, tenant, prompt) {
|
|
602
|
-
const
|
|
603
|
-
const clientId = config.microsoftClientId;
|
|
626
|
+
const clientId = this._config.microsoftClientId;
|
|
604
627
|
if (!clientId) {
|
|
605
628
|
throw new Error("Microsoft Client ID not configured. Add 'microsoftClientId' to expo.extra in your app.config.js");
|
|
606
629
|
}
|
|
607
|
-
const effectiveTenant = tenant ??
|
|
608
|
-
const b2cDomain =
|
|
630
|
+
const effectiveTenant = tenant ?? this._config.microsoftTenant ?? "common";
|
|
631
|
+
const b2cDomain = this._config.microsoftB2cDomain;
|
|
609
632
|
const authBaseUrl = this.getMicrosoftAuthBaseUrl(effectiveTenant, b2cDomain);
|
|
610
633
|
const effectiveScopes = scopes.length ? scopes : ["openid", "email", "profile", "offline_access", "User.Read"];
|
|
611
634
|
const codeVerifier = this.generateCodeVerifier();
|
|
@@ -676,8 +699,7 @@ class AuthWeb {
|
|
|
676
699
|
return base64.replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
677
700
|
}
|
|
678
701
|
async exchangeMicrosoftCodeForTokens(code, codeVerifier, clientId, redirectUri, tenant, expectedNonce, scopes) {
|
|
679
|
-
const
|
|
680
|
-
const authBaseUrl = this.getMicrosoftAuthBaseUrl(tenant, config.microsoftB2cDomain);
|
|
702
|
+
const authBaseUrl = this.getMicrosoftAuthBaseUrl(tenant, this._config.microsoftB2cDomain);
|
|
681
703
|
const tokenUrl = `${authBaseUrl}oauth2/v2.0/token`;
|
|
682
704
|
const body = new URLSearchParams({
|
|
683
705
|
client_id: clientId,
|
|
@@ -749,45 +771,76 @@ class AuthWeb {
|
|
|
749
771
|
return {};
|
|
750
772
|
}
|
|
751
773
|
}
|
|
752
|
-
async
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
if (!clientId) {
|
|
756
|
-
throw new Error("Apple Web Client ID not configured. Add 'APPLE_WEB_CLIENT_ID' to your .env file.");
|
|
774
|
+
async ensureAppleSdkLoaded() {
|
|
775
|
+
if (window.AppleID) {
|
|
776
|
+
return;
|
|
757
777
|
}
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
778
|
+
if (this._appleSdkLoadPromise) {
|
|
779
|
+
return this._appleSdkLoadPromise;
|
|
780
|
+
}
|
|
781
|
+
this._appleSdkLoadPromise = new Promise((resolve, reject) => {
|
|
782
|
+
const scriptId = "nitro-auth-apple-sdk";
|
|
783
|
+
const existingScript = document.getElementById(scriptId);
|
|
784
|
+
if (existingScript) {
|
|
785
|
+
if (window.AppleID) {
|
|
786
|
+
resolve();
|
|
765
787
|
return;
|
|
766
788
|
}
|
|
767
|
-
|
|
768
|
-
clientId,
|
|
769
|
-
scope: "name email",
|
|
770
|
-
redirectURI: window.location.origin,
|
|
771
|
-
usePopup: true
|
|
772
|
-
});
|
|
773
|
-
window.AppleID.auth.signIn().then(response => {
|
|
774
|
-
const user = {
|
|
775
|
-
provider: "apple",
|
|
776
|
-
idToken: response.authorization.id_token,
|
|
777
|
-
email: response.user?.email,
|
|
778
|
-
name: response.user?.name ? `${response.user.name.firstName} ${response.user.name.lastName}`.trim() : undefined
|
|
779
|
-
};
|
|
780
|
-
this.updateUser(user);
|
|
789
|
+
existingScript.addEventListener("load", () => {
|
|
781
790
|
resolve();
|
|
782
|
-
}
|
|
783
|
-
|
|
791
|
+
}, {
|
|
792
|
+
once: true
|
|
793
|
+
});
|
|
794
|
+
existingScript.addEventListener("error", () => {
|
|
795
|
+
this._appleSdkLoadPromise = undefined;
|
|
796
|
+
reject(new Error("Failed to load Apple SDK"));
|
|
797
|
+
}, {
|
|
798
|
+
once: true
|
|
784
799
|
});
|
|
800
|
+
return;
|
|
801
|
+
}
|
|
802
|
+
const script = document.createElement("script");
|
|
803
|
+
script.id = scriptId;
|
|
804
|
+
script.src = "https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js";
|
|
805
|
+
script.async = true;
|
|
806
|
+
script.onload = () => {
|
|
807
|
+
resolve();
|
|
785
808
|
};
|
|
786
809
|
script.onerror = () => {
|
|
810
|
+
this._appleSdkLoadPromise = undefined;
|
|
787
811
|
reject(new Error("Failed to load Apple SDK"));
|
|
788
812
|
};
|
|
789
813
|
document.head.appendChild(script);
|
|
790
814
|
});
|
|
815
|
+
return this._appleSdkLoadPromise;
|
|
816
|
+
}
|
|
817
|
+
async loginApple() {
|
|
818
|
+
const clientId = this._config.appleWebClientId;
|
|
819
|
+
if (!clientId) {
|
|
820
|
+
throw new Error("Apple Web Client ID not configured. Add 'APPLE_WEB_CLIENT_ID' to your .env file.");
|
|
821
|
+
}
|
|
822
|
+
await this.ensureAppleSdkLoaded();
|
|
823
|
+
if (!window.AppleID) {
|
|
824
|
+
throw new Error("Apple SDK not loaded");
|
|
825
|
+
}
|
|
826
|
+
window.AppleID.auth.init({
|
|
827
|
+
clientId,
|
|
828
|
+
scope: "name email",
|
|
829
|
+
redirectURI: window.location.origin,
|
|
830
|
+
usePopup: true
|
|
831
|
+
});
|
|
832
|
+
try {
|
|
833
|
+
const response = await window.AppleID.auth.signIn();
|
|
834
|
+
const user = {
|
|
835
|
+
provider: "apple",
|
|
836
|
+
idToken: response.authorization.id_token,
|
|
837
|
+
email: response.user?.email,
|
|
838
|
+
name: response.user?.name ? `${response.user.name.firstName} ${response.user.name.lastName}`.trim() : undefined
|
|
839
|
+
};
|
|
840
|
+
this.updateUser(user);
|
|
841
|
+
} catch (error) {
|
|
842
|
+
throw this.mapError(error);
|
|
843
|
+
}
|
|
791
844
|
}
|
|
792
845
|
async silentRestore() {
|
|
793
846
|
logger.log("Attempting silent restore...");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["logger","CACHE_KEY","SCOPES_KEY","MS_REFRESH_TOKEN_KEY","DEFAULT_SCOPES","MS_DEFAULT_SCOPES","STORAGE_MODE_SESSION","STORAGE_MODE_LOCAL","STORAGE_MODE_MEMORY","POPUP_POLL_INTERVAL_MS","POPUP_TIMEOUT_MS","WEB_STORAGE_MODES","Set","inMemoryWebStorage","Map","AuthWebError","Error","constructor","message","underlyingError","name","isJsonObject","value","isAuthProvider","getOptionalString","source","key","candidate","undefined","getOptionalNumber","parseAuthUser","provider","scopesCandidate","scopes","Array","isArray","filter","scope","email","photo","idToken","accessToken","refreshToken","serverAuthCode","expirationTime","parseScopes","parseAuthWebExtraConfig","nitroAuthWebStorageCandidate","nitroAuthWebStorage","googleWebClientId","microsoftClientId","microsoftTenant","microsoftB2cDomain","appleWebClientId","nitroAuthPersistTokensOnWeb","getConfig","Constants","require","default","expoConfig","extra","error","debug","String","AuthWeb","_grantedScopes","_listeners","_tokenListeners","loadFromCache","isPromiseLike","then","createWebStorageDriver","adapter","save","result","load","remove","shouldPersistTokensInStorage","_storageAdapter","getWebStorageMode","configuredMode","has","getBrowserStorage","window","mode","storage","localStorage","sessionStorage","testKey","setItem","removeItem","warn","saveValue","set","loadValue","getItem","get","removeValue","delete","removePersistedBrowserValue","sanitizeUserForPersistence","user","safeUser","saveRefreshToken","loadRefreshToken","cached","parsedUser","JSON","parse","_currentUser","removeFromCache","parsedScopes","currentUser","grantedScopes","hasPlayServices","onAuthStateChanged","callback","push","l","onTokensRefreshed","notify","forEach","login","options","loginHint","log","loginGoogle","loginMicrosoft","tenant","prompt","loginApple","e","mapError","requestScopes","newScopes","revokeScopes","s","includes","stringify","updateUser","getAccessToken","now","Date","config","clientId","b2cDomain","authBaseUrl","getMicrosoftAuthBaseUrl","tokenUrl","body","URLSearchParams","client_id","grant_type","refresh_token","response","fetch","method","headers","toString","json","parseResponseObject","ok","newRefreshToken","expiresInSeconds","effectiveIdToken","claims","decodeMicrosoftJwt","tokens","length","rawMessage","msg","toLowerCase","mappedMsg","parsed","parseJwtPayload","token","payload","split","decoded","atob","waitForPopupRedirect","popup","redirectUri","onRedirect","Promise","resolve","reject","crossOriginLogShown","cleanup","intervalId","timeoutId","shouldClosePopup","clearInterval","clearTimeout","closed","close","setTimeout","setInterval","url","location","href","startsWith","catch","origin","authUrl","URL","searchParams","join","crypto","randomUUID","width","height","left","screenX","outerWidth","top","screenY","outerHeight","open","hash","slice","params","expiresIn","code","parseInt","decodeGoogleJwt","effectiveTenant","effectiveScopes","codeVerifier","generateCodeVerifier","codeChallenge","generateCodeChallenge","state","nonce","urlObj","returnedState","errorDescription","exchangeMicrosoftCodeForTokens","array","Uint8Array","getRandomValues","base64UrlEncode","verifier","encoder","TextEncoder","data","encode","subtle","digest","bytes","base64","btoa","fromCharCode","replace","expectedNonce","redirect_uri","code_verifier","endsWith","script","document","createElement","src","async","onload","AppleID","auth","init","redirectURI","usePopup","signIn","authorization","id_token","firstName","lastName","trim","err","onerror","head","appendChild","silentRestore","logout","userToPersist","setLoggingEnabled","enabled","setEnabled","setWebStorageAdapter","dispose","equals","other","AuthModule"],"sourceRoot":"../../src","sources":["Auth.web.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["logger","CACHE_KEY","SCOPES_KEY","MS_REFRESH_TOKEN_KEY","DEFAULT_SCOPES","MS_DEFAULT_SCOPES","STORAGE_MODE_SESSION","STORAGE_MODE_LOCAL","STORAGE_MODE_MEMORY","POPUP_POLL_INTERVAL_MS","POPUP_TIMEOUT_MS","WEB_STORAGE_MODES","Set","inMemoryWebStorage","Map","AuthWebError","Error","constructor","message","underlyingError","name","isJsonObject","value","isAuthProvider","getOptionalString","source","key","candidate","undefined","getOptionalNumber","parseAuthUser","provider","scopesCandidate","scopes","Array","isArray","filter","scope","email","photo","idToken","accessToken","refreshToken","serverAuthCode","expirationTime","parseScopes","parseAuthWebExtraConfig","nitroAuthWebStorageCandidate","nitroAuthWebStorage","googleWebClientId","microsoftClientId","microsoftTenant","microsoftB2cDomain","appleWebClientId","nitroAuthPersistTokensOnWeb","getConfig","Constants","require","default","expoConfig","extra","error","debug","String","AuthWeb","_grantedScopes","_listeners","_tokenListeners","_browserStorageResolved","_config","loadFromCache","isPromiseLike","then","createWebStorageDriver","adapter","save","result","load","remove","shouldPersistTokensInStorage","_storageAdapter","getWebStorageMode","configuredMode","has","getBrowserStorage","_browserStorageCache","window","mode","storage","localStorage","sessionStorage","testKey","setItem","removeItem","warn","saveValue","set","loadValue","getItem","get","removeValue","delete","removePersistedBrowserValue","sanitizeUserForPersistence","user","safeUser","saveRefreshToken","loadRefreshToken","cached","parsedUser","JSON","parse","_currentUser","removeFromCache","parsedScopes","currentUser","grantedScopes","hasPlayServices","onAuthStateChanged","callback","push","l","onTokensRefreshed","notify","forEach","login","options","loginHint","log","loginGoogle","loginMicrosoft","tenant","prompt","loginApple","e","mapError","requestScopes","newScopes","revokeScopes","s","includes","stringify","updateUser","getAccessToken","now","Date","_refreshPromise","refreshPromise","performRefreshToken","clientId","b2cDomain","authBaseUrl","getMicrosoftAuthBaseUrl","tokenUrl","body","URLSearchParams","client_id","grant_type","refresh_token","response","fetch","method","headers","toString","json","parseResponseObject","ok","newRefreshToken","expiresInSeconds","effectiveIdToken","claims","decodeMicrosoftJwt","tokens","length","rawMessage","msg","toLowerCase","mappedMsg","parsed","parseJwtPayload","token","payload","split","normalizedPayload","replace","padding","repeat","decoded","atob","waitForPopupRedirect","popup","redirectUri","onRedirect","Promise","resolve","reject","crossOriginLogShown","cleanup","intervalId","timeoutId","shouldClosePopup","clearInterval","clearTimeout","closed","close","setTimeout","setInterval","url","location","href","startsWith","catch","origin","authUrl","URL","searchParams","join","crypto","randomUUID","width","height","left","screenX","outerWidth","top","screenY","outerHeight","open","hash","slice","params","expiresIn","code","parseInt","decodeGoogleJwt","effectiveTenant","effectiveScopes","codeVerifier","generateCodeVerifier","codeChallenge","generateCodeChallenge","state","nonce","urlObj","returnedState","errorDescription","exchangeMicrosoftCodeForTokens","array","Uint8Array","getRandomValues","base64UrlEncode","verifier","encoder","TextEncoder","data","encode","subtle","digest","bytes","base64","btoa","fromCharCode","expectedNonce","redirect_uri","code_verifier","endsWith","ensureAppleSdkLoaded","AppleID","_appleSdkLoadPromise","scriptId","existingScript","document","getElementById","addEventListener","once","script","createElement","id","src","async","onload","onerror","head","appendChild","auth","init","redirectURI","usePopup","signIn","authorization","id_token","firstName","lastName","trim","silentRestore","logout","userToPersist","setLoggingEnabled","enabled","setEnabled","setWebStorageAdapter","dispose","equals","other","AuthModule"],"sourceRoot":"../../src","sources":["Auth.web.ts"],"mappings":";;AAQA,SAASA,MAAM,QAAQ,mBAAgB;AAEvC,MAAMC,SAAS,GAAG,iBAAiB;AACnC,MAAMC,UAAU,GAAG,mBAAmB;AACtC,MAAMC,oBAAoB,GAAG,oCAAoC;AACjE,MAAMC,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;AACrD,MAAMC,iBAAiB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC;AACrE,MAAMC,oBAAoB,GAAG,SAAS;AACtC,MAAMC,kBAAkB,GAAG,OAAO;AAClC,MAAMC,mBAAmB,GAAG,QAAQ;AACpC,MAAMC,sBAAsB,GAAG,GAAG;AAClC,MAAMC,gBAAgB,GAAG,MAAM;AAC/B,MAAMC,iBAAiB,GAAG,IAAIC,GAAG,CAAC,CAChCN,oBAAoB,EACpBC,kBAAkB,EAClBC,mBAAmB,CACX,CAAC;AACX,MAAMK,kBAAkB,GAAG,IAAIC,GAAG,CAAiB,CAAC;AAiCpD,MAAMC,YAAY,SAASC,KAAK,CAAC;EAG/BC,WAAWA,CAACC,OAAe,EAAEC,eAAwB,EAAE;IACrD,KAAK,CAACD,OAAO,CAAC;IACd,IAAI,CAACE,IAAI,GAAG,cAAc;IAC1B,IAAI,CAACD,eAAe,GAAGA,eAAe;EACxC;AACF;AAEA,MAAME,YAAY,GAAIC,KAAc,IAClC,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI;AAE7C,MAAMC,cAAc,GAAID,KAAc,IACpCA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,OAAO,IAAIA,KAAK,KAAK,WAAW;AAElE,MAAME,iBAAiB,GAAGA,CACxBC,MAAkB,EAClBC,GAAW,KACY;EACvB,MAAMC,SAAS,GAAGF,MAAM,CAACC,GAAG,CAAC;EAC7B,OAAO,OAAOC,SAAS,KAAK,QAAQ,GAAGA,SAAS,GAAGC,SAAS;AAC9D,CAAC;AAED,MAAMC,iBAAiB,GAAGA,CACxBJ,MAAkB,EAClBC,GAAW,KACY;EACvB,MAAMC,SAAS,GAAGF,MAAM,CAACC,GAAG,CAAC;EAC7B,OAAO,OAAOC,SAAS,KAAK,QAAQ,GAAGA,SAAS,GAAGC,SAAS;AAC9D,CAAC;AAED,MAAME,aAAa,GAAIR,KAAc,IAA2B;EAC9D,IAAI,CAACD,YAAY,CAACC,KAAK,CAAC,IAAI,CAACC,cAAc,CAACD,KAAK,CAACS,QAAQ,CAAC,EAAE;IAC3D,OAAOH,SAAS;EAClB;EAEA,MAAMI,eAAe,GAAGV,KAAK,CAACW,MAAM;EACpC,MAAMA,MAAM,GAAGC,KAAK,CAACC,OAAO,CAACH,eAAe,CAAC,GACzCA,eAAe,CAACI,MAAM,CACnBC,KAAK,IAAsB,OAAOA,KAAK,KAAK,QAC/C,CAAC,GACDT,SAAS;EAEb,OAAO;IACLG,QAAQ,EAAET,KAAK,CAACS,QAAQ;IACxBO,KAAK,EAAEd,iBAAiB,CAACF,KAAK,EAAE,OAAO,CAAC;IACxCF,IAAI,EAAEI,iBAAiB,CAACF,KAAK,EAAE,MAAM,CAAC;IACtCiB,KAAK,EAAEf,iBAAiB,CAACF,KAAK,EAAE,OAAO,CAAC;IACxCkB,OAAO,EAAEhB,iBAAiB,CAACF,KAAK,EAAE,SAAS,CAAC;IAC5CmB,WAAW,EAAEjB,iBAAiB,CAACF,KAAK,EAAE,aAAa,CAAC;IACpDoB,YAAY,EAAElB,iBAAiB,CAACF,KAAK,EAAE,cAAc,CAAC;IACtDqB,cAAc,EAAEnB,iBAAiB,CAACF,KAAK,EAAE,gBAAgB,CAAC;IAC1DW,MAAM;IACNW,cAAc,EAAEf,iBAAiB,CAACP,KAAK,EAAE,gBAAgB,CAAC;IAC1DH,eAAe,EAAEK,iBAAiB,CAACF,KAAK,EAAE,iBAAiB;EAC7D,CAAC;AACH,CAAC;AAED,MAAMuB,WAAW,GAAIvB,KAAc,IAA2B;EAC5D,IAAI,CAACY,KAAK,CAACC,OAAO,CAACb,KAAK,CAAC,EAAE;IACzB,OAAOM,SAAS;EAClB;EAEA,OAAON,KAAK,CAACc,MAAM,CAAEC,KAAK,IAAsB,OAAOA,KAAK,KAAK,QAAQ,CAAC;AAC5E,CAAC;AAED,MAAMS,uBAAuB,GAAIxB,KAAc,IAAyB;EACtE,IAAI,CAACD,YAAY,CAACC,KAAK,CAAC,EAAE;IACxB,OAAO,CAAC,CAAC;EACX;EAEA,MAAMyB,4BAA4B,GAAGzB,KAAK,CAAC0B,mBAAmB;EAC9D,MAAMA,mBAAmB,GACvBD,4BAA4B,KAAKzC,oBAAoB,IACrDyC,4BAA4B,KAAKxC,kBAAkB,IACnDwC,4BAA4B,KAAKvC,mBAAmB,GAChDuC,4BAA4B,GAC5BnB,SAAS;EAEf,OAAO;IACLqB,iBAAiB,EAAEzB,iBAAiB,CAACF,KAAK,EAAE,mBAAmB,CAAC;IAChE4B,iBAAiB,EAAE1B,iBAAiB,CAACF,KAAK,EAAE,mBAAmB,CAAC;IAChE6B,eAAe,EAAE3B,iBAAiB,CAACF,KAAK,EAAE,iBAAiB,CAAC;IAC5D8B,kBAAkB,EAAE5B,iBAAiB,CAACF,KAAK,EAAE,oBAAoB,CAAC;IAClE+B,gBAAgB,EAAE7B,iBAAiB,CAACF,KAAK,EAAE,kBAAkB,CAAC;IAC9D0B,mBAAmB;IACnBM,2BAA2B,EACzB,OAAOhC,KAAK,CAACgC,2BAA2B,KAAK,SAAS,GAClDhC,KAAK,CAACgC,2BAA2B,GACjC1B;EACR,CAAC;AACH,CAAC;AAED,MAAM2B,SAAS,GAAGA,CAAA,KAA0B;EAC1C,IAAI;IACF,MAAMC,SAAS,GAAGC,OAAO,CAAC,gBAAgB,CAAC,CAACC,OAAO;IACnD,OAAOZ,uBAAuB,CAACU,SAAS,CAACG,UAAU,EAAEC,KAAK,CAAC;EAC7D,CAAC,CAAC,OAAOC,KAAK,EAAE;IACd7D,MAAM,CAAC8D,KAAK,CACV,6DAA6D,EAC7D;MACED,KAAK,EAAEE,MAAM,CAACF,KAAK;IACrB,CACF,CAAC;IACD,OAAO,CAAC,CAAC;EACX;AACF,CAAC;AAED,MAAMG,OAAO,CAAiB;EAGpBC,cAAc,GAAa,EAAE;EAC7BC,UAAU,GAA6C,EAAE;EACzDC,eAAe,GAAqC,EAAE;EAEtDC,uBAAuB,GAAG,KAAK;EAKvCnD,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACoD,OAAO,GAAGd,SAAS,CAAC,CAAC;IAC1B,IAAI,CAACe,aAAa,CAAC,CAAC;EACtB;EAEQC,aAAaA,CAACjD,KAAc,EAAiC;IACnE,IAAI,CAACD,YAAY,CAACC,KAAK,CAAC,EAAE;MACxB,OAAO,KAAK;IACd;IACA,OAAO,OAAOA,KAAK,CAACkD,IAAI,KAAK,UAAU;EACzC;EAEQC,sBAAsBA,CAACC,OAAyB,EAAoB;IAC1E,OAAO;MACLC,IAAI,EAAEA,CAACjD,GAAG,EAAEJ,KAAK,KAAK;QACpB,MAAMsD,MAAM,GAAGF,OAAO,CAACC,IAAI,CAACjD,GAAG,EAAEJ,KAAK,CAAC;QACvC,IAAI,IAAI,CAACiD,aAAa,CAACK,MAAM,CAAC,EAAE;UAC9B,MAAM,IAAI5D,KAAK,CAAC,oDAAoD,CAAC;QACvE;MACF,CAAC;MACD6D,IAAI,EAAGnD,GAAG,IAAK;QACb,MAAMkD,MAAM,GAAGF,OAAO,CAACG,IAAI,CAACnD,GAAG,CAAC;QAChC,IAAI,IAAI,CAAC6C,aAAa,CAACK,MAAM,CAAC,EAAE;UAC9B,MAAM,IAAI5D,KAAK,CAAC,oDAAoD,CAAC;QACvE;QACA,OAAO4D,MAAM;MACf,CAAC;MACDE,MAAM,EAAGpD,GAAG,IAAK;QACf,MAAMkD,MAAM,GAAGF,OAAO,CAACI,MAAM,CAACpD,GAAG,CAAC;QAClC,IAAI,IAAI,CAAC6C,aAAa,CAACK,MAAM,CAAC,EAAE;UAC9B,MAAM,IAAI5D,KAAK,CACb,sDACF,CAAC;QACH;MACF;IACF,CAAC;EACH;EAEQ+D,4BAA4BA,CAAA,EAAY;IAC9C,IAAI,IAAI,CAACC,eAAe,EAAE;MACxB,OAAO,IAAI;IACb;IACA,OAAO,IAAI,CAACX,OAAO,CAACf,2BAA2B,KAAK,IAAI;EAC1D;EAEQ2B,iBAAiBA,CAAA,EAAmC;IAC1D,MAAMC,cAAc,GAAG,IAAI,CAACb,OAAO,CAACrB,mBAAmB;IACvD,IAAIkC,cAAc,IAAIvE,iBAAiB,CAACwE,GAAG,CAACD,cAAc,CAAC,EAAE;MAC3D,OAAOA,cAAc;IACvB;IACA,OAAO5E,oBAAoB;EAC7B;EAEQ8E,iBAAiBA,CAAA,EAAwB;IAC/C,IAAI,IAAI,CAAChB,uBAAuB,EAAE;MAChC,OAAO,IAAI,CAACiB,oBAAoB;IAClC;IAEA,IAAI,CAACjB,uBAAuB,GAAG,IAAI;IACnC,IAAI,OAAOkB,MAAM,KAAK,WAAW,EAAE;MACjC,IAAI,CAACD,oBAAoB,GAAGzD,SAAS;MACrC,OAAOA,SAAS;IAClB;IAEA,MAAM2D,IAAI,GAAG,IAAI,CAACN,iBAAiB,CAAC,CAAC;IACrC,IAAIM,IAAI,KAAK/E,mBAAmB,EAAE;MAChC,IAAI,CAAC6E,oBAAoB,GAAGzD,SAAS;MACrC,OAAOA,SAAS;IAClB;IAEA,MAAM4D,OAAO,GACXD,IAAI,KAAKhF,kBAAkB,GAAG+E,MAAM,CAACG,YAAY,GAAGH,MAAM,CAACI,cAAc;IAC3E,IAAI;MACF,MAAMC,OAAO,GAAG,8BAA8B;MAC9CH,OAAO,CAACI,OAAO,CAACD,OAAO,EAAE,GAAG,CAAC;MAC7BH,OAAO,CAACK,UAAU,CAACF,OAAO,CAAC;MAC3B,IAAI,CAACN,oBAAoB,GAAGG,OAAO;MACnC,OAAOA,OAAO;IAChB,CAAC,CAAC,OAAO3B,KAAK,EAAE;MACd7D,MAAM,CAAC8F,IAAI,CACT,iEAAiE,EACjE;QACEP,IAAI;QACJ1B,KAAK,EAAEE,MAAM,CAACF,KAAK;MACrB,CACF,CAAC;MACD,IAAI,CAACwB,oBAAoB,GAAGzD,SAAS;MACrC,OAAOA,SAAS;IAClB;EACF;EAEQmE,SAASA,CAACrE,GAAW,EAAEJ,KAAa,EAAQ;IAClD,IAAI,IAAI,CAAC0D,eAAe,EAAE;MACxB,IAAI,CAACA,eAAe,CAACL,IAAI,CAACjD,GAAG,EAAEJ,KAAK,CAAC;MACrC;IACF;IAEA,MAAMkE,OAAO,GAAG,IAAI,CAACJ,iBAAiB,CAAC,CAAC;IACxC,IAAII,OAAO,EAAE;MACXA,OAAO,CAACI,OAAO,CAAClE,GAAG,EAAEJ,KAAK,CAAC;MAC3B;IACF;IACAT,kBAAkB,CAACmF,GAAG,CAACtE,GAAG,EAAEJ,KAAK,CAAC;EACpC;EAEQ2E,SAASA,CAACvE,GAAW,EAAsB;IACjD,IAAI,IAAI,CAACsD,eAAe,EAAE;MACxB,OAAO,IAAI,CAACA,eAAe,CAACH,IAAI,CAACnD,GAAG,CAAC;IACvC;IAEA,MAAM8D,OAAO,GAAG,IAAI,CAACJ,iBAAiB,CAAC,CAAC;IACxC,IAAII,OAAO,EAAE;MACX,OAAOA,OAAO,CAACU,OAAO,CAACxE,GAAG,CAAC,IAAIE,SAAS;IAC1C;IACA,OAAOf,kBAAkB,CAACsF,GAAG,CAACzE,GAAG,CAAC;EACpC;EAEQ0E,WAAWA,CAAC1E,GAAW,EAAQ;IACrC,IAAI,IAAI,CAACsD,eAAe,EAAE;MACxB,IAAI,CAACA,eAAe,CAACF,MAAM,CAACpD,GAAG,CAAC;MAChC;IACF;IAEA,MAAM8D,OAAO,GAAG,IAAI,CAACJ,iBAAiB,CAAC,CAAC;IACxC,IAAII,OAAO,EAAE;MACXA,OAAO,CAACK,UAAU,CAACnE,GAAG,CAAC;IACzB;IACAb,kBAAkB,CAACwF,MAAM,CAAC3E,GAAG,CAAC;EAChC;EAEQ4E,2BAA2BA,CAAC5E,GAAW,EAAQ;IACrD,IAAI,OAAO4D,MAAM,KAAK,WAAW,EAAE;MACjC;IACF;IAEA,IAAI;MACFA,MAAM,CAACG,YAAY,CAACI,UAAU,CAACnE,GAAG,CAAC;MACnC4D,MAAM,CAACI,cAAc,CAACG,UAAU,CAACnE,GAAG,CAAC;IACvC,CAAC,CAAC,OAAOmC,KAAK,EAAE;MACd7D,MAAM,CAAC8D,KAAK,CAAC,yCAAyC,EAAE;QACtDpC,GAAG;QACHmC,KAAK,EAAEE,MAAM,CAACF,KAAK;MACrB,CAAC,CAAC;IACJ;EACF;EAEQ0C,0BAA0BA,CAACC,IAAc,EAAY;IAC3D,IAAI,IAAI,CAACzB,4BAA4B,CAAC,CAAC,EAAE;MACvC,OAAOyB,IAAI;IACb;IAEA,MAAMC,QAAQ,GAAG;MAAE,GAAGD;IAAK,CAAC;IAC5B,OAAOC,QAAQ,CAAChE,WAAW;IAC3B,OAAOgE,QAAQ,CAACjE,OAAO;IACvB,OAAOiE,QAAQ,CAAC9D,cAAc;IAC9B,OAAO8D,QAAQ;EACjB;EAEQC,gBAAgBA,CAAChE,YAAoB,EAAQ;IACnD,IAAI,IAAI,CAACsC,eAAe,IAAI,IAAI,CAACD,4BAA4B,CAAC,CAAC,EAAE;MAC/D,IAAI,CAACgB,SAAS,CAAC5F,oBAAoB,EAAEuC,YAAY,CAAC;MAClD;IACF;;IAEA;IACA7B,kBAAkB,CAACmF,GAAG,CAAC7F,oBAAoB,EAAEuC,YAAY,CAAC;EAC5D;EAEQiE,gBAAgBA,CAAA,EAAuB;IAC7C,IAAI,IAAI,CAAC3B,eAAe,IAAI,IAAI,CAACD,4BAA4B,CAAC,CAAC,EAAE;MAC/D,OAAO,IAAI,CAACkB,SAAS,CAAC9F,oBAAoB,CAAC;IAC7C;IACA,OAAOU,kBAAkB,CAACsF,GAAG,CAAChG,oBAAoB,CAAC;EACrD;EAEQmE,aAAaA,CAAA,EAAG;IACtB,MAAMsC,MAAM,GAAG,IAAI,CAACX,SAAS,CAAChG,SAAS,CAAC;IAExC,IAAI2G,MAAM,EAAE;MACV,IAAI;QACF,MAAMC,UAAU,GAAG/E,aAAa,CAACgF,IAAI,CAACC,KAAK,CAACH,MAAM,CAAC,CAAC;QACpD,IAAI,CAACC,UAAU,EAAE;UACf,MAAM,IAAI7F,KAAK,CAAC,kDAAkD,CAAC;QACrE;QACA,IAAI,IAAI,CAAC+D,4BAA4B,CAAC,CAAC,EAAE;UACvC,IAAI,CAACiC,YAAY,GAAGH,UAAU;QAChC,CAAC,MAAM;UACL,MAAMJ,QAAQ,GAAG;YAAE,GAAGI;UAAW,CAAC;UAClC,OAAOJ,QAAQ,CAAChE,WAAW;UAC3B,OAAOgE,QAAQ,CAACjE,OAAO;UACvB,OAAOiE,QAAQ,CAAC9D,cAAc;UAC9B,IAAI,CAACqE,YAAY,GAAGP,QAAQ;QAC9B;MACF,CAAC,CAAC,OAAO5C,KAAK,EAAE;QACd7D,MAAM,CAAC8F,IAAI,CAAC,kDAAkD,EAAE;UAC9DjC,KAAK,EAAEE,MAAM,CAACF,KAAK;QACrB,CAAC,CAAC;QACF,IAAI,CAACoD,eAAe,CAAChH,SAAS,CAAC;MACjC;IACF;IAEA,MAAMgC,MAAM,GAAG,IAAI,CAACgE,SAAS,CAAC/F,UAAU,CAAC;IAEzC,IAAI+B,MAAM,EAAE;MACV,IAAI;QACF,MAAMiF,YAAY,GAAGrE,WAAW,CAACiE,IAAI,CAACC,KAAK,CAAC9E,MAAM,CAAC,CAAC;QACpD,IAAI,CAACiF,YAAY,EAAE;UACjB,MAAM,IAAIlG,KAAK,CAAC,uCAAuC,CAAC;QAC1D;QACA,IAAI,CAACiD,cAAc,GAAGiD,YAAY;MACpC,CAAC,CAAC,OAAOrD,KAAK,EAAE;QACd7D,MAAM,CAAC8F,IAAI,CAAC,+CAA+C,EAAE;UAC3DjC,KAAK,EAAEE,MAAM,CAACF,KAAK;QACrB,CAAC,CAAC;QACF,IAAI,CAACoD,eAAe,CAAC/G,UAAU,CAAC;MAClC;IACF;IAEA,IAAI,CAAC,IAAI,CAAC6E,4BAA4B,CAAC,CAAC,IAAI,CAAC,IAAI,CAACC,eAAe,EAAE;MACjE,IAAI,CAACsB,2BAA2B,CAACnG,oBAAoB,CAAC;IACxD;EACF;EAEQ8G,eAAeA,CAACvF,GAAW,EAAE;IACnC,IAAI,CAAC0E,WAAW,CAAC1E,GAAG,CAAC;EACvB;EAEA,IAAIyF,WAAWA,CAAA,EAAyB;IACtC,OAAO,IAAI,CAACH,YAAY;EAC1B;EAEA,IAAII,aAAaA,CAAA,EAAa;IAC5B,OAAO,IAAI,CAACnD,cAAc;EAC5B;EAEA,IAAIoD,eAAeA,CAAA,EAAY;IAC7B,OAAO,IAAI;EACb;EAEAC,kBAAkBA,CAChBC,QAA8C,EAClC;IACZ,IAAI,CAACrD,UAAU,CAACsD,IAAI,CAACD,QAAQ,CAAC;IAC9BA,QAAQ,CAAC,IAAI,CAACP,YAAY,CAAC;IAC3B,OAAO,MAAM;MACX,IAAI,CAAC9C,UAAU,GAAG,IAAI,CAACA,UAAU,CAAC9B,MAAM,CAAEqF,CAAC,IAAKA,CAAC,KAAKF,QAAQ,CAAC;IACjE,CAAC;EACH;EAEAG,iBAAiBA,CAACH,QAAsC,EAAc;IACpE,IAAI,CAACpD,eAAe,CAACqD,IAAI,CAACD,QAAQ,CAAC;IACnC,OAAO,MAAM;MACX,IAAI,CAACpD,eAAe,GAAG,IAAI,CAACA,eAAe,CAAC/B,MAAM,CAAEqF,CAAC,IAAKA,CAAC,KAAKF,QAAQ,CAAC;IAC3E,CAAC;EACH;EAEQI,MAAMA,CAAA,EAAG;IACf,IAAI,CAACzD,UAAU,CAAC0D,OAAO,CAAEH,CAAC,IAAK;MAC7BA,CAAC,CAAC,IAAI,CAACT,YAAY,CAAC;IACtB,CAAC,CAAC;EACJ;EAEA,MAAMa,KAAKA,CAAC9F,QAAsB,EAAE+F,OAAsB,EAAiB;IACzE,MAAMC,SAAS,GAAGD,OAAO,EAAEC,SAAS;IACpC/H,MAAM,CAACgI,GAAG,CAAC,uBAAuBjG,QAAQ,EAAE,EAAE;MAAEE,MAAM,EAAE6F,OAAO,EAAE7F;IAAO,CAAC,CAAC;IAC1E,IAAI;MACF,IAAIF,QAAQ,KAAK,QAAQ,EAAE;QACzB,MAAME,MAAM,GAAG6F,OAAO,EAAE7F,MAAM,IAAI7B,cAAc;QAChD,MAAM,IAAI,CAAC6H,WAAW,CAAChG,MAAM,EAAE8F,SAAS,CAAC;MAC3C,CAAC,MAAM,IAAIhG,QAAQ,KAAK,WAAW,EAAE;QACnC,MAAME,MAAM,GAAG6F,OAAO,EAAE7F,MAAM,IAAI5B,iBAAiB;QACnD,MAAM,IAAI,CAAC6H,cAAc,CACvBjG,MAAM,EACN8F,SAAS,EACTD,OAAO,EAAEK,MAAM,EACfL,OAAO,EAAEM,MACX,CAAC;MACH,CAAC,MAAM;QACL,MAAM,IAAI,CAACC,UAAU,CAAC,CAAC;MACzB;MACArI,MAAM,CAACgI,GAAG,CAAC,yBAAyBjG,QAAQ,EAAE,CAAC;IACjD,CAAC,CAAC,OAAOuG,CAAU,EAAE;MACnB,MAAMzE,KAAK,GAAG,IAAI,CAAC0E,QAAQ,CAACD,CAAC,CAAC;MAC9BtI,MAAM,CAAC6D,KAAK,CAAC,oBAAoB9B,QAAQ,GAAG,EAAE8B,KAAK,CAAC3C,OAAO,CAAC;MAC5D,MAAM2C,KAAK;IACb;EACF;EAEA,MAAM2E,aAAaA,CAACvG,MAAgB,EAAiB;IACnD,IAAI,CAAC,IAAI,CAAC+E,YAAY,EAAE;MACtB,MAAM,IAAIhG,KAAK,CAAC,mBAAmB,CAAC;IACtC;IACA,MAAMe,QAAQ,GAAG,IAAI,CAACiF,YAAY,CAACjF,QAAQ;IAC3C,IAAIA,QAAQ,KAAK,QAAQ,IAAIA,QAAQ,KAAK,WAAW,EAAE;MACrD,MAAM,IAAIf,KAAK,CACb,0DACF,CAAC;IACH;IACAhB,MAAM,CAACgI,GAAG,CAAC,+BAA+B,EAAE/F,MAAM,CAAC;IACnD,MAAMwG,SAAS,GAAG,CAAC,GAAG,IAAI7H,GAAG,CAAC,CAAC,GAAG,IAAI,CAACqD,cAAc,EAAE,GAAGhC,MAAM,CAAC,CAAC,CAAC;IACnE,IAAI;MACF,IAAIF,QAAQ,KAAK,QAAQ,EAAE;QACzB,MAAM,IAAI,CAACkG,WAAW,CAACQ,SAAS,CAAC;MACnC,CAAC,MAAM;QACL,MAAM,IAAI,CAACP,cAAc,CAACO,SAAS,CAAC;MACtC;IACF,CAAC,CAAC,OAAOH,CAAC,EAAE;MACV,MAAMzE,KAAK,GAAG,IAAI,CAAC0E,QAAQ,CAACD,CAAC,CAAC;MAC9BtI,MAAM,CAAC6D,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC3C,OAAO,CAAC;MACxD,MAAM2C,KAAK;IACb;EACF;EAEA,MAAM6E,YAAYA,CAACzG,MAAgB,EAAiB;IAClDjC,MAAM,CAACgI,GAAG,CAAC,kBAAkB,EAAE/F,MAAM,CAAC;IACtC,IAAI,CAACgC,cAAc,GAAG,IAAI,CAACA,cAAc,CAAC7B,MAAM,CAC7CuG,CAAC,IAAK,CAAC1G,MAAM,CAAC2G,QAAQ,CAACD,CAAC,CAC3B,CAAC;IACD,IAAI,CAAC5C,SAAS,CAAC7F,UAAU,EAAE4G,IAAI,CAAC+B,SAAS,CAAC,IAAI,CAAC5E,cAAc,CAAC,CAAC;IAC/D,IAAI,IAAI,CAAC+C,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAAC/E,MAAM,GAAG,IAAI,CAACgC,cAAc;MAC9C,IAAI,CAAC6E,UAAU,CAAC,IAAI,CAAC9B,YAAY,CAAC;IACpC;EACF;EAEA,MAAM+B,cAAcA,CAAA,EAAgC;IAClD,IAAI,IAAI,CAAC/B,YAAY,EAAEpE,cAAc,EAAE;MACrC,MAAMoG,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAC,CAAC;MACtB,IAAIA,GAAG,GAAG,MAAM,GAAG,IAAI,CAAChC,YAAY,CAACpE,cAAc,EAAE;QACnD5C,MAAM,CAACgI,GAAG,CAAC,sCAAsC,CAAC;QAClD,MAAM,IAAI,CAACtF,YAAY,CAAC,CAAC;MAC3B;IACF;IACA,OAAO,IAAI,CAACsE,YAAY,EAAEvE,WAAW;EACvC;EAEA,MAAMC,YAAYA,CAAA,EAAwB;IACxC,IAAI,IAAI,CAACwG,eAAe,EAAE;MACxB,OAAO,IAAI,CAACA,eAAe;IAC7B;IAEA,MAAMC,cAAc,GAAG,IAAI,CAACC,mBAAmB,CAAC,CAAC;IACjD,IAAI,CAACF,eAAe,GAAGC,cAAc;IACrC,IAAI;MACF,OAAO,MAAMA,cAAc;IAC7B,CAAC,SAAS;MACR,IAAI,IAAI,CAACD,eAAe,KAAKC,cAAc,EAAE;QAC3C,IAAI,CAACD,eAAe,GAAGtH,SAAS;MAClC;IACF;EACF;EAEA,MAAcwH,mBAAmBA,CAAA,EAAwB;IACvD,IAAI,CAAC,IAAI,CAACpC,YAAY,EAAE;MACtB,MAAM,IAAIhG,KAAK,CAAC,mBAAmB,CAAC;IACtC;IAEA,IAAI,IAAI,CAACgG,YAAY,CAACjF,QAAQ,KAAK,WAAW,EAAE;MAC9C/B,MAAM,CAACgI,GAAG,CAAC,gCAAgC,CAAC;MAC5C,MAAMtF,YAAY,GAAG,IAAI,CAACiE,gBAAgB,CAAC,CAAC;MAE5C,IAAI,CAACjE,YAAY,EAAE;QACjB,MAAM,IAAI1B,KAAK,CAAC,4BAA4B,CAAC;MAC/C;MAEA,MAAMqI,QAAQ,GAAG,IAAI,CAAChF,OAAO,CAACnB,iBAAiB;MAC/C,IAAI,CAACmG,QAAQ,EAAE;QACb,MAAM,IAAIrI,KAAK,CACb,iGACF,CAAC;MACH;MACA,MAAMmH,MAAM,GAAG,IAAI,CAAC9D,OAAO,CAAClB,eAAe,IAAI,QAAQ;MACvD,MAAMmG,SAAS,GAAG,IAAI,CAACjF,OAAO,CAACjB,kBAAkB;MAEjD,MAAMmG,WAAW,GAAG,IAAI,CAACC,uBAAuB,CAACrB,MAAM,EAAEmB,SAAS,CAAC;MACnE,MAAMG,QAAQ,GAAG,GAAGF,WAAW,mBAAmB;MAClD,MAAMG,IAAI,GAAG,IAAIC,eAAe,CAAC;QAC/BC,SAAS,EAAEP,QAAQ;QACnBQ,UAAU,EAAE,eAAe;QAC3BC,aAAa,EAAEpH;MACjB,CAAC,CAAC;MAEF,MAAMqH,QAAQ,GAAG,MAAMC,KAAK,CAACP,QAAQ,EAAE;QACrCQ,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACP,cAAc,EAAE;QAClB,CAAC;QACDR,IAAI,EAAEA,IAAI,CAACS,QAAQ,CAAC;MACtB,CAAC,CAAC;MAEF,MAAMC,IAAI,GAAG,MAAM,IAAI,CAACC,mBAAmB,CAACN,QAAQ,CAAC;MACrD,IAAI,CAACA,QAAQ,CAACO,EAAE,EAAE;QAChB,MAAM,IAAItJ,KAAK,CACbQ,iBAAiB,CAAC4I,IAAI,EAAE,mBAAmB,CAAC,IAC1C5I,iBAAiB,CAAC4I,IAAI,EAAE,OAAO,CAAC,IAChC,sBACJ,CAAC;MACH;MAEA,MAAM5H,OAAO,GAAGhB,iBAAiB,CAAC4I,IAAI,EAAE,UAAU,CAAC;MACnD,MAAM3H,WAAW,GAAGjB,iBAAiB,CAAC4I,IAAI,EAAE,cAAc,CAAC;MAC3D,MAAMG,eAAe,GAAG/I,iBAAiB,CAAC4I,IAAI,EAAE,eAAe,CAAC;MAChE,MAAMI,gBAAgB,GAAG3I,iBAAiB,CAACuI,IAAI,EAAE,YAAY,CAAC;MAE9D,IAAIG,eAAe,EAAE;QACnB,IAAI,CAAC7D,gBAAgB,CAAC6D,eAAe,CAAC;MACxC;MAEA,MAAM3H,cAAc,GAClB,OAAO4H,gBAAgB,KAAK,QAAQ,GAChCvB,IAAI,CAACD,GAAG,CAAC,CAAC,GAAGwB,gBAAgB,GAAG,IAAI,GACpC5I,SAAS;MAEf,MAAM6I,gBAAgB,GAAGjI,OAAO,IAAI,IAAI,CAACwE,YAAY,CAACxE,OAAO;MAC7D,MAAMkI,MAAM,GAAGD,gBAAgB,GAC3B,IAAI,CAACE,kBAAkB,CAACF,gBAAgB,CAAC,GACzC,CAAC,CAAC;MACN,MAAMjE,IAAc,GAAG;QACrB,GAAG,IAAI,CAACQ,YAAY;QACpBxE,OAAO,EAAEiI,gBAAgB;QACzBhI,WAAW,EAAEA,WAAW,IAAIb,SAAS;QACrCc,YAAY,EAAE6H,eAAe,IAAI,IAAI,CAACvD,YAAY,CAACtE,YAAY;QAC/DE,cAAc;QACd,GAAG8H;MACL,CAAC;MACD,IAAI,CAAC5B,UAAU,CAACtC,IAAI,CAAC;MAErB,MAAMoE,MAAkB,GAAG;QACzBnI,WAAW,EAAEA,WAAW,IAAIb,SAAS;QACrCY,OAAO,EAAEiI,gBAAgB;QACzB/H,YAAY,EAAE6H,eAAe,IAAI3I,SAAS;QAC1CgB;MACF,CAAC;MACD,IAAI,CAACuB,eAAe,CAACyD,OAAO,CAAEH,CAAC,IAAK;QAClCA,CAAC,CAACmD,MAAM,CAAC;MACX,CAAC,CAAC;MACF,OAAOA,MAAM;IACf;IAEA,IAAI,IAAI,CAAC5D,YAAY,CAACjF,QAAQ,KAAK,QAAQ,EAAE;MAC3C,MAAM,IAAIf,KAAK,CACb,mCAAmC,IAAI,CAACgG,YAAY,CAACjF,QAAQ,EAC/D,CAAC;IACH;IAEA/B,MAAM,CAACgI,GAAG,CAAC,sBAAsB,CAAC;IAClC,MAAM,IAAI,CAACC,WAAW,CACpB,IAAI,CAAChE,cAAc,CAAC4G,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC5G,cAAc,GAAG7D,cACzD,CAAC;IACD,MAAMwK,MAAkB,GAAG;MACzBnI,WAAW,EAAE,IAAI,CAACuE,YAAY,CAACvE,WAAW;MAC1CD,OAAO,EAAE,IAAI,CAACwE,YAAY,CAACxE,OAAO;MAClCE,YAAY,EAAE,IAAI,CAACsE,YAAY,CAACtE,YAAY;MAC5CE,cAAc,EAAE,IAAI,CAACoE,YAAY,CAACpE;IACpC,CAAC;IACD,IAAI,CAACuB,eAAe,CAACyD,OAAO,CAAEH,CAAC,IAAK;MAClCA,CAAC,CAACmD,MAAM,CAAC;IACX,CAAC,CAAC;IACF,OAAOA,MAAM;EACf;EAEQrC,QAAQA,CAAC1E,KAAc,EAAS;IACtC,MAAMiH,UAAU,GAAGjH,KAAK,YAAY7C,KAAK,GAAG6C,KAAK,CAAC3C,OAAO,GAAG6C,MAAM,CAACF,KAAK,CAAC;IACzE,MAAMkH,GAAG,GAAGD,UAAU,CAACE,WAAW,CAAC,CAAC;IACpC,IAAIC,SAAS,GAAGH,UAAU;IAE1B,IAAIC,GAAG,CAACnC,QAAQ,CAAC,QAAQ,CAAC,IAAImC,GAAG,CAACnC,QAAQ,CAAC,cAAc,CAAC,EAAE;MAC1DqC,SAAS,GAAG,WAAW;IACzB,CAAC,MAAM,IAAIF,GAAG,CAACnC,QAAQ,CAAC,SAAS,CAAC,EAAE;MAClCqC,SAAS,GAAG,SAAS;IACvB,CAAC,MAAM,IAAIF,GAAG,CAACnC,QAAQ,CAAC,eAAe,CAAC,EAAE;MACxCqC,SAAS,GAAG,eAAe;IAC7B,CAAC,MAAM,IAAIF,GAAG,CAACnC,QAAQ,CAAC,SAAS,CAAC,EAAE;MAClCqC,SAAS,GAAG,eAAe;IAC7B,CAAC,MAAM,IAAIF,GAAG,CAACnC,QAAQ,CAAC,WAAW,CAAC,IAAImC,GAAG,CAACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE;MAC9DqC,SAAS,GAAG,qBAAqB;IACnC;IAEA,OAAO,IAAIlK,YAAY,CAACkK,SAAS,EAAEH,UAAU,CAAC;EAChD;EAEA,MAAcT,mBAAmBA,CAACN,QAAkB,EAAuB;IACzE,MAAMmB,MAAe,GAAG,MAAMnB,QAAQ,CAACK,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC/I,YAAY,CAAC6J,MAAM,CAAC,EAAE;MACzB,MAAM,IAAIlK,KAAK,CAAC,kDAAkD,CAAC;IACrE;IACA,OAAOkK,MAAM;EACf;EAEQC,eAAeA,CAACC,KAAa,EAAc;IACjD,MAAMC,OAAO,GAAGD,KAAK,CAACE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,CAACD,OAAO,EAAE;MACZ,MAAM,IAAIrK,KAAK,CAAC,qBAAqB,CAAC;IACxC;IAEA,MAAMuK,iBAAiB,GAAGF,OAAO,CAACG,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;IACvE,MAAMC,OAAO,GAAG,GAAG,CAACC,MAAM,CAAC,CAAC,CAAC,GAAIH,iBAAiB,CAACV,MAAM,GAAG,CAAE,IAAI,CAAC,CAAC;IACpE,MAAMc,OAAgB,GAAG7E,IAAI,CAACC,KAAK,CAAC6E,IAAI,CAAC,GAAGL,iBAAiB,GAAGE,OAAO,EAAE,CAAC,CAAC;IAC3E,IAAI,CAACpK,YAAY,CAACsK,OAAO,CAAC,EAAE;MAC1B,MAAM,IAAI3K,KAAK,CAAC,sCAAsC,CAAC;IACzD;IACA,OAAO2K,OAAO;EAChB;EAEQE,oBAAoBA,CAC1BC,KAAa,EACbC,WAAmB,EACnBhK,QAAgC,EAChCiK,UAAiD,EAClC;IACf,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;MACtC,IAAIC,mBAAmB,GAAG,KAAK;MAE/B,MAAMC,OAAO,GAAGA,CACdC,UAAkB,EAClBC,SAAiB,EACjBC,gBAAyB,KACtB;QACHlH,MAAM,CAACmH,aAAa,CAACH,UAAU,CAAC;QAChChH,MAAM,CAACoH,YAAY,CAACH,SAAS,CAAC;QAC9B,IAAIC,gBAAgB,IAAI,CAACV,KAAK,CAACa,MAAM,EAAE;UACrCb,KAAK,CAACc,KAAK,CAAC,CAAC;QACf;MACF,CAAC;MAED,MAAML,SAAS,GAAGjH,MAAM,CAACuH,UAAU,CAAC,MAAM;QACxCR,OAAO,CAACC,UAAU,EAAEC,SAAS,EAAE,IAAI,CAAC;QACpCJ,MAAM,CAAC,IAAInL,KAAK,CAAC,GAAGe,QAAQ,CAACiJ,WAAW,CAAC,CAAC,eAAe,CAAC,CAAC;MAC7D,CAAC,EAAEtK,gBAAgB,CAAC;MAEpB,MAAM4L,UAAU,GAAGhH,MAAM,CAACwH,WAAW,CAAC,MAAM;QAC1C,IAAIhB,KAAK,CAACa,MAAM,EAAE;UAChBN,OAAO,CAACC,UAAU,EAAEC,SAAS,EAAE,KAAK,CAAC;UACrCJ,MAAM,CAAC,IAAInL,KAAK,CAAC,WAAW,CAAC,CAAC;UAC9B;QACF;QAEA,IAAI+L,GAAW;QACf,IAAI;UACFA,GAAG,GAAGjB,KAAK,CAACkB,QAAQ,CAACC,IAAI;QAC3B,CAAC,CAAC,OAAOpJ,KAAK,EAAE;UACd,IAAI,CAACuI,mBAAmB,EAAE;YACxBpM,MAAM,CAAC8D,KAAK,CAAC,eAAe/B,QAAQ,gBAAgB,EAAE;cACpD8B,KAAK,EAAEE,MAAM,CAACF,KAAK;YACrB,CAAC,CAAC;YACFuI,mBAAmB,GAAG,IAAI;UAC5B;UACA;QACF;QAEA,IAAI,CAACW,GAAG,CAACG,UAAU,CAACnB,WAAW,CAAC,EAAE;UAChC;QACF;QAEAM,OAAO,CAACC,UAAU,EAAEC,SAAS,EAAE,IAAI,CAAC;QACpC,KAAKN,OAAO,CAACC,OAAO,CAACF,UAAU,CAACe,GAAG,CAAC,CAAC,CAClCvI,IAAI,CAAC,MAAM;UACV0H,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CACDiB,KAAK,CAAEtJ,KAAc,IAAK;UACzBsI,MAAM,CAACtI,KAAK,CAAC;QACf,CAAC,CAAC;MACN,CAAC,EAAEpD,sBAAsB,CAAC;IAC5B,CAAC,CAAC;EACJ;EAEA,MAAcwH,WAAWA,CACvBhG,MAAgB,EAChB8F,SAAkB,EACH;IACf,MAAMsB,QAAQ,GAAG,IAAI,CAAChF,OAAO,CAACpB,iBAAiB;IAE/C,IAAI,CAACoG,QAAQ,EAAE;MACb,MAAM,IAAIrI,KAAK,CACb,oFACF,CAAC;IACH;IAEA,OAAO,IAAIiL,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;MACtC,MAAMJ,WAAW,GAAGzG,MAAM,CAAC0H,QAAQ,CAACI,MAAM;MAC1C,MAAMC,OAAO,GAAG,IAAIC,GAAG,CAAC,8CAA8C,CAAC;MACvED,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,WAAW,EAAEqD,QAAQ,CAAC;MAC/CgE,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,cAAc,EAAE+F,WAAW,CAAC;MACrDsB,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,eAAe,EAAE,qBAAqB,CAAC;MAChEqH,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,OAAO,EAAE/D,MAAM,CAACuL,IAAI,CAAC,GAAG,CAAC,CAAC;MACnDH,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,OAAO,EAAEyH,MAAM,CAACC,UAAU,CAAC,CAAC,CAAC;MACtDL,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC;MAClDqH,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC;MAE7C,IAAI+B,SAAS,EAAE;QACbsF,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,YAAY,EAAE+B,SAAS,CAAC;MACnD;MAEA,MAAM4F,KAAK,GAAG,GAAG;MACjB,MAAMC,MAAM,GAAG,GAAG;MAClB,MAAMC,IAAI,GAAGvI,MAAM,CAACwI,OAAO,GAAG,CAACxI,MAAM,CAACyI,UAAU,GAAGJ,KAAK,IAAI,CAAC;MAC7D,MAAMK,GAAG,GAAG1I,MAAM,CAAC2I,OAAO,GAAG,CAAC3I,MAAM,CAAC4I,WAAW,GAAGN,MAAM,IAAI,CAAC;MAE9D,MAAM9B,KAAK,GAAGxG,MAAM,CAAC6I,IAAI,CACvBd,OAAO,CAAClD,QAAQ,CAAC,CAAC,EAClB,aAAa,EACb,SAASwD,KAAK,WAAWC,MAAM,SAASC,IAAI,QAAQG,GAAG,EACzD,CAAC;MAED,IAAI,CAAClC,KAAK,EAAE;QACVK,MAAM,CAAC,IAAInL,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACtE;MACF;MAEA,KAAK,IAAI,CAAC6K,oBAAoB,CAACC,KAAK,EAAEC,WAAW,EAAE,QAAQ,EAAGgB,GAAG,IAAK;QACpE,MAAMqB,IAAI,GAAG,IAAId,GAAG,CAACP,GAAG,CAAC,CAACqB,IAAI,CAACC,KAAK,CAAC,CAAC,CAAC;QACvC,MAAMC,MAAM,GAAG,IAAI3E,eAAe,CAACyE,IAAI,CAAC;QACxC,MAAM5L,OAAO,GAAG8L,MAAM,CAACnI,GAAG,CAAC,UAAU,CAAC;QACtC,MAAM1D,WAAW,GAAG6L,MAAM,CAACnI,GAAG,CAAC,cAAc,CAAC;QAC9C,MAAMoI,SAAS,GAAGD,MAAM,CAACnI,GAAG,CAAC,YAAY,CAAC;QAC1C,MAAMqI,IAAI,GAAGF,MAAM,CAACnI,GAAG,CAAC,MAAM,CAAC;QAE/B,IAAI,CAAC3D,OAAO,EAAE;UACZ,MAAM,IAAIxB,KAAK,CAAC,yBAAyB,CAAC;QAC5C;QAEA,IAAI,CAACiD,cAAc,GAAGhC,MAAM;QAC5B,IAAI,CAAC8D,SAAS,CAAC7F,UAAU,EAAE4G,IAAI,CAAC+B,SAAS,CAAC5G,MAAM,CAAC,CAAC;QAElD,MAAMuE,IAAc,GAAG;UACrBzE,QAAQ,EAAE,QAAQ;UAClBS,OAAO;UACPC,WAAW,EAAEA,WAAW,IAAIb,SAAS;UACrCe,cAAc,EAAE6L,IAAI,IAAI5M,SAAS;UACjCK,MAAM;UACNW,cAAc,EAAE2L,SAAS,GACrBtF,IAAI,CAACD,GAAG,CAAC,CAAC,GAAGyF,QAAQ,CAACF,SAAS,EAAE,EAAE,CAAC,GAAG,IAAI,GAC3C3M,SAAS;UACb,GAAG,IAAI,CAAC8M,eAAe,CAAClM,OAAO;QACjC,CAAC;QACD,IAAI,CAACsG,UAAU,CAACtC,IAAI,CAAC;MACvB,CAAC,CAAC,CACChC,IAAI,CAAC,MAAM;QACV0H,OAAO,CAAC,CAAC;MACX,CAAC,CAAC,CACDiB,KAAK,CAAEtJ,KAAc,IAAK;QACzBsI,MAAM,CAACtI,KAAK,CAAC;MACf,CAAC,CAAC;IACN,CAAC,CAAC;EACJ;EAEQ6K,eAAeA,CAACtD,KAAa,EAAqB;IACxD,IAAI;MACF,MAAMO,OAAO,GAAG,IAAI,CAACR,eAAe,CAACC,KAAK,CAAC;MAC3C,OAAO;QACL9I,KAAK,EAAEd,iBAAiB,CAACmK,OAAO,EAAE,OAAO,CAAC;QAC1CvK,IAAI,EAAEI,iBAAiB,CAACmK,OAAO,EAAE,MAAM,CAAC;QACxCpJ,KAAK,EAAEf,iBAAiB,CAACmK,OAAO,EAAE,SAAS;MAC7C,CAAC;IACH,CAAC,CAAC,OAAO9H,KAAK,EAAE;MACd7D,MAAM,CAAC8F,IAAI,CAAC,kCAAkC,EAAE;QAAEjC,KAAK,EAAEE,MAAM,CAACF,KAAK;MAAE,CAAC,CAAC;MACzE,OAAO,CAAC,CAAC;IACX;EACF;EAEA,MAAcqE,cAAcA,CAC1BjG,MAAgB,EAChB8F,SAAkB,EAClBI,MAAe,EACfC,MAAe,EACA;IACf,MAAMiB,QAAQ,GAAG,IAAI,CAAChF,OAAO,CAACnB,iBAAiB;IAE/C,IAAI,CAACmG,QAAQ,EAAE;MACb,MAAM,IAAIrI,KAAK,CACb,iGACF,CAAC;IACH;IAEA,MAAM2N,eAAe,GAAGxG,MAAM,IAAI,IAAI,CAAC9D,OAAO,CAAClB,eAAe,IAAI,QAAQ;IAC1E,MAAMmG,SAAS,GAAG,IAAI,CAACjF,OAAO,CAACjB,kBAAkB;IACjD,MAAMmG,WAAW,GAAG,IAAI,CAACC,uBAAuB,CAC9CmF,eAAe,EACfrF,SACF,CAAC;IAED,MAAMsF,eAAe,GAAG3M,MAAM,CAAC4I,MAAM,GACjC5I,MAAM,GACN,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,CAAC;IAEjE,MAAM4M,YAAY,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;IAChD,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACC,qBAAqB,CAACH,YAAY,CAAC;IACpE,MAAMI,KAAK,GAAGxB,MAAM,CAACC,UAAU,CAAC,CAAC;IACjC,MAAMwB,KAAK,GAAGzB,MAAM,CAACC,UAAU,CAAC,CAAC;IAEjC,OAAO,IAAIzB,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;MACtC,MAAMJ,WAAW,GAAGzG,MAAM,CAAC0H,QAAQ,CAACI,MAAM;MAC1C,MAAMC,OAAO,GAAG,IAAIC,GAAG,CAAC,GAAG/D,WAAW,uBAAuB,CAAC;MAC9D8D,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,WAAW,EAAEqD,QAAQ,CAAC;MAC/CgE,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,cAAc,EAAE+F,WAAW,CAAC;MACrDsB,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC;MACjDqH,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC;MAClDqH,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,OAAO,EAAE4I,eAAe,CAACpB,IAAI,CAAC,GAAG,CAAC,CAAC;MAC5DH,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,OAAO,EAAEiJ,KAAK,CAAC;MACxC5B,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,OAAO,EAAEkJ,KAAK,CAAC;MACxC7B,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,gBAAgB,EAAE+I,aAAa,CAAC;MACzD1B,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC;MACzDqH,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,QAAQ,EAAEoC,MAAM,IAAI,gBAAgB,CAAC;MAE9D,IAAIL,SAAS,EAAE;QACbsF,OAAO,CAACE,YAAY,CAACvH,GAAG,CAAC,YAAY,EAAE+B,SAAS,CAAC;MACnD;MAEA,MAAM4F,KAAK,GAAG,GAAG;MACjB,MAAMC,MAAM,GAAG,GAAG;MAClB,MAAMC,IAAI,GAAGvI,MAAM,CAACwI,OAAO,GAAG,CAACxI,MAAM,CAACyI,UAAU,GAAGJ,KAAK,IAAI,CAAC;MAC7D,MAAMK,GAAG,GAAG1I,MAAM,CAAC2I,OAAO,GAAG,CAAC3I,MAAM,CAAC4I,WAAW,GAAGN,MAAM,IAAI,CAAC;MAE9D,MAAM9B,KAAK,GAAGxG,MAAM,CAAC6I,IAAI,CACvBd,OAAO,CAAClD,QAAQ,CAAC,CAAC,EAClB,gBAAgB,EAChB,SAASwD,KAAK,WAAWC,MAAM,SAASC,IAAI,QAAQG,GAAG,EACzD,CAAC;MAED,IAAI,CAAClC,KAAK,EAAE;QACVK,MAAM,CAAC,IAAInL,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACtE;MACF;MAEA,KAAK,IAAI,CAAC6K,oBAAoB,CAC5BC,KAAK,EACLC,WAAW,EACX,WAAW,EACX,MAAOgB,GAAG,IAAK;QACb,MAAMoC,MAAM,GAAG,IAAI7B,GAAG,CAACP,GAAG,CAAC;QAC3B,MAAMyB,IAAI,GAAGW,MAAM,CAAC5B,YAAY,CAACpH,GAAG,CAAC,MAAM,CAAC;QAC5C,MAAMiJ,aAAa,GAAGD,MAAM,CAAC5B,YAAY,CAACpH,GAAG,CAAC,OAAO,CAAC;QACtD,MAAMtC,KAAK,GAAGsL,MAAM,CAAC5B,YAAY,CAACpH,GAAG,CAAC,OAAO,CAAC;QAC9C,MAAMkJ,gBAAgB,GAAGF,MAAM,CAAC5B,YAAY,CAACpH,GAAG,CAAC,mBAAmB,CAAC;QAErE,IAAItC,KAAK,EAAE;UACT,MAAM,IAAI7C,KAAK,CAACqO,gBAAgB,IAAIxL,KAAK,CAAC;QAC5C;QAEA,IAAIuL,aAAa,KAAKH,KAAK,EAAE;UAC3B,MAAM,IAAIjO,KAAK,CAAC,uCAAuC,CAAC;QAC1D;QAEA,IAAI,CAACwN,IAAI,EAAE;UACT,MAAM,IAAIxN,KAAK,CAAC,mCAAmC,CAAC;QACtD;QAEA,MAAM,IAAI,CAACsO,8BAA8B,CACvCd,IAAI,EACJK,YAAY,EACZxF,QAAQ,EACR0C,WAAW,EACX4C,eAAe,EACfO,KAAK,EACLN,eACF,CAAC;MACH,CACF,CAAC,CACEpK,IAAI,CAAC,MAAM;QACV0H,OAAO,CAAC,CAAC;MACX,CAAC,CAAC,CACDiB,KAAK,CAAEtJ,KAAc,IAAK;QACzBsI,MAAM,CAACtI,KAAK,CAAC;MACf,CAAC,CAAC;IACN,CAAC,CAAC;EACJ;EAEQiL,oBAAoBA,CAAA,EAAW;IACrC,MAAMS,KAAK,GAAG,IAAIC,UAAU,CAAC,EAAE,CAAC;IAChC/B,MAAM,CAACgC,eAAe,CAACF,KAAK,CAAC;IAC7B,OAAO,IAAI,CAACG,eAAe,CAACH,KAAK,CAAC;EACpC;EAEA,MAAcP,qBAAqBA,CAACW,QAAgB,EAAmB;IACrE,MAAMC,OAAO,GAAG,IAAIC,WAAW,CAAC,CAAC;IACjC,MAAMC,IAAI,GAAGF,OAAO,CAACG,MAAM,CAACJ,QAAQ,CAAC;IACrC,MAAMvB,IAAI,GAAG,MAAMX,MAAM,CAACuC,MAAM,CAACC,MAAM,CAAC,SAAS,EAAEH,IAAI,CAAC;IACxD,OAAO,IAAI,CAACJ,eAAe,CAAC,IAAIF,UAAU,CAACpB,IAAI,CAAC,CAAC;EACnD;EAEQsB,eAAeA,CAACQ,KAAiB,EAAU;IACjD,MAAMC,MAAM,GAAGC,IAAI,CAACrM,MAAM,CAACsM,YAAY,CAAC,GAAGH,KAAK,CAAC,CAAC;IAClD,OAAOC,MAAM,CAAC3E,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;EAC1E;EAEA,MAAc8D,8BAA8BA,CAC1Cd,IAAY,EACZK,YAAoB,EACpBxF,QAAgB,EAChB0C,WAAmB,EACnB5D,MAAc,EACdmI,aAAqB,EACrBrO,MAAgB,EACD;IACf,MAAMsH,WAAW,GAAG,IAAI,CAACC,uBAAuB,CAC9CrB,MAAM,EACN,IAAI,CAAC9D,OAAO,CAACjB,kBACf,CAAC;IACD,MAAMqG,QAAQ,GAAG,GAAGF,WAAW,mBAAmB;IAElD,MAAMG,IAAI,GAAG,IAAIC,eAAe,CAAC;MAC/BC,SAAS,EAAEP,QAAQ;MACnBmF,IAAI;MACJ+B,YAAY,EAAExE,WAAW;MACzBlC,UAAU,EAAE,oBAAoB;MAChC2G,aAAa,EAAE3B;IACjB,CAAC,CAAC;IAEF,MAAM9E,QAAQ,GAAG,MAAMC,KAAK,CAACP,QAAQ,EAAE;MACrCQ,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB,CAAC;MACDR,IAAI,EAAEA,IAAI,CAACS,QAAQ,CAAC;IACtB,CAAC,CAAC;IAEF,MAAMC,IAAI,GAAG,MAAM,IAAI,CAACC,mBAAmB,CAACN,QAAQ,CAAC;IAErD,IAAI,CAACA,QAAQ,CAACO,EAAE,EAAE;MAChB,MAAM,IAAItJ,KAAK,CACbQ,iBAAiB,CAAC4I,IAAI,EAAE,mBAAmB,CAAC,IAC1C5I,iBAAiB,CAAC4I,IAAI,EAAE,OAAO,CAAC,IAChC,uBACJ,CAAC;IACH;IAEA,MAAM5H,OAAO,GAAGhB,iBAAiB,CAAC4I,IAAI,EAAE,UAAU,CAAC;IACnD,IAAI,CAAC5H,OAAO,EAAE;MACZ,MAAM,IAAIxB,KAAK,CAAC,+BAA+B,CAAC;IAClD;IAEA,MAAM0J,MAAM,GAAG,IAAI,CAACC,kBAAkB,CAACnI,OAAO,CAAC;IAC/C,MAAM6I,OAAO,GAAG,IAAI,CAACF,eAAe,CAAC3I,OAAO,CAAC;IAC7C,IAAIhB,iBAAiB,CAAC6J,OAAO,EAAE,OAAO,CAAC,KAAKiF,aAAa,EAAE;MACzD,MAAM,IAAItP,KAAK,CAAC,wCAAwC,CAAC;IAC3D;IAEA,MAAMyB,WAAW,GAAGjB,iBAAiB,CAAC4I,IAAI,EAAE,cAAc,CAAC;IAC3D,MAAM1H,YAAY,GAAGlB,iBAAiB,CAAC4I,IAAI,EAAE,eAAe,CAAC;IAC7D,MAAMI,gBAAgB,GAAG3I,iBAAiB,CAACuI,IAAI,EAAE,YAAY,CAAC;IAE9D,IAAI1H,YAAY,EAAE;MAChB,IAAI,CAACgE,gBAAgB,CAAChE,YAAY,CAAC;IACrC;IAEA,IAAI,CAACuB,cAAc,GAAGhC,MAAM;IAC5B,IAAI,CAAC8D,SAAS,CAAC7F,UAAU,EAAE4G,IAAI,CAAC+B,SAAS,CAAC5G,MAAM,CAAC,CAAC;IAElD,MAAMuE,IAAc,GAAG;MACrBzE,QAAQ,EAAE,WAAW;MACrBS,OAAO;MACPC,WAAW,EAAEA,WAAW,IAAIb,SAAS;MACrCc,YAAY,EAAEA,YAAY,IAAId,SAAS;MACvCK,MAAM;MACNW,cAAc,EACZ,OAAO4H,gBAAgB,KAAK,QAAQ,GAChCvB,IAAI,CAACD,GAAG,CAAC,CAAC,GAAGwB,gBAAgB,GAAG,IAAI,GACpC5I,SAAS;MACf,GAAG8I;IACL,CAAC;IACD,IAAI,CAAC5B,UAAU,CAACtC,IAAI,CAAC;EACvB;EAEQgD,uBAAuBA,CAACrB,MAAc,EAAEmB,SAAkB,EAAU;IAC1E,IAAInB,MAAM,CAAC+E,UAAU,CAAC,UAAU,CAAC,EAAE;MACjC,OAAO/E,MAAM,CAACsI,QAAQ,CAAC,GAAG,CAAC,GAAGtI,MAAM,GAAG,GAAGA,MAAM,GAAG;IACrD;IAEA,IAAImB,SAAS,EAAE;MACb,OAAO,WAAWA,SAAS,QAAQnB,MAAM,GAAG;IAC9C,CAAC,MAAM;MACL,OAAO,qCAAqCA,MAAM,GAAG;IACvD;EACF;EAEQwC,kBAAkBA,CAACS,KAAa,EAAqB;IAC3D,IAAI;MACF,MAAMO,OAAO,GAAG,IAAI,CAACR,eAAe,CAACC,KAAK,CAAC;MAC3C,OAAO;QACL9I,KAAK,EACHd,iBAAiB,CAACmK,OAAO,EAAE,oBAAoB,CAAC,IAChDnK,iBAAiB,CAACmK,OAAO,EAAE,OAAO,CAAC;QACrCvK,IAAI,EAAEI,iBAAiB,CAACmK,OAAO,EAAE,MAAM;MACzC,CAAC;IACH,CAAC,CAAC,OAAO9H,KAAK,EAAE;MACd7D,MAAM,CAAC8F,IAAI,CAAC,qCAAqC,EAAE;QACjDjC,KAAK,EAAEE,MAAM,CAACF,KAAK;MACrB,CAAC,CAAC;MACF,OAAO,CAAC,CAAC;IACX;EACF;EAEA,MAAc6M,oBAAoBA,CAAA,EAAkB;IAClD,IAAIpL,MAAM,CAACqL,OAAO,EAAE;MAClB;IACF;IAEA,IAAI,IAAI,CAACC,oBAAoB,EAAE;MAC7B,OAAO,IAAI,CAACA,oBAAoB;IAClC;IAEA,IAAI,CAACA,oBAAoB,GAAG,IAAI3E,OAAO,CAAO,CAACC,OAAO,EAAEC,MAAM,KAAK;MACjE,MAAM0E,QAAQ,GAAG,sBAAsB;MACvC,MAAMC,cAAc,GAAGC,QAAQ,CAACC,cAAc,CAC5CH,QACF,CAA6B;MAE7B,IAAIC,cAAc,EAAE;QAClB,IAAIxL,MAAM,CAACqL,OAAO,EAAE;UAClBzE,OAAO,CAAC,CAAC;UACT;QACF;QAEA4E,cAAc,CAACG,gBAAgB,CAC7B,MAAM,EACN,MAAM;UACJ/E,OAAO,CAAC,CAAC;QACX,CAAC,EACD;UACEgF,IAAI,EAAE;QACR,CACF,CAAC;QACDJ,cAAc,CAACG,gBAAgB,CAC7B,OAAO,EACP,MAAM;UACJ,IAAI,CAACL,oBAAoB,GAAGhP,SAAS;UACrCuK,MAAM,CAAC,IAAInL,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC/C,CAAC,EACD;UAAEkQ,IAAI,EAAE;QAAK,CACf,CAAC;QACD;MACF;MAEA,MAAMC,MAAM,GAAGJ,QAAQ,CAACK,aAAa,CAAC,QAAQ,CAAC;MAC/CD,MAAM,CAACE,EAAE,GAAGR,QAAQ;MACpBM,MAAM,CAACG,GAAG,GACR,sFAAsF;MACxFH,MAAM,CAACI,KAAK,GAAG,IAAI;MACnBJ,MAAM,CAACK,MAAM,GAAG,MAAM;QACpBtF,OAAO,CAAC,CAAC;MACX,CAAC;MACDiF,MAAM,CAACM,OAAO,GAAG,MAAM;QACrB,IAAI,CAACb,oBAAoB,GAAGhP,SAAS;QACrCuK,MAAM,CAAC,IAAInL,KAAK,CAAC,0BAA0B,CAAC,CAAC;MAC/C,CAAC;MACD+P,QAAQ,CAACW,IAAI,CAACC,WAAW,CAACR,MAAM,CAAC;IACnC,CAAC,CAAC;IAEF,OAAO,IAAI,CAACP,oBAAoB;EAClC;EAEA,MAAcvI,UAAUA,CAAA,EAAkB;IACxC,MAAMgB,QAAQ,GAAG,IAAI,CAAChF,OAAO,CAAChB,gBAAgB;IAE9C,IAAI,CAACgG,QAAQ,EAAE;MACb,MAAM,IAAIrI,KAAK,CACb,kFACF,CAAC;IACH;IAEA,MAAM,IAAI,CAAC0P,oBAAoB,CAAC,CAAC;IACjC,IAAI,CAACpL,MAAM,CAACqL,OAAO,EAAE;MACnB,MAAM,IAAI3P,KAAK,CAAC,sBAAsB,CAAC;IACzC;IAEAsE,MAAM,CAACqL,OAAO,CAACiB,IAAI,CAACC,IAAI,CAAC;MACvBxI,QAAQ;MACRhH,KAAK,EAAE,YAAY;MACnByP,WAAW,EAAExM,MAAM,CAAC0H,QAAQ,CAACI,MAAM;MACnC2E,QAAQ,EAAE;IACZ,CAAC,CAAC;IAEF,IAAI;MACF,MAAMhI,QAA2B,GAAG,MAAMzE,MAAM,CAACqL,OAAO,CAACiB,IAAI,CAACI,MAAM,CAAC,CAAC;MACtE,MAAMxL,IAAc,GAAG;QACrBzE,QAAQ,EAAE,OAAO;QACjBS,OAAO,EAAEuH,QAAQ,CAACkI,aAAa,CAACC,QAAQ;QACxC5P,KAAK,EAAEyH,QAAQ,CAACvD,IAAI,EAAElE,KAAK;QAC3BlB,IAAI,EAAE2I,QAAQ,CAACvD,IAAI,EAAEpF,IAAI,GACrB,GAAG2I,QAAQ,CAACvD,IAAI,CAACpF,IAAI,CAAC+Q,SAAS,IAAIpI,QAAQ,CAACvD,IAAI,CAACpF,IAAI,CAACgR,QAAQ,EAAE,CAACC,IAAI,CAAC,CAAC,GACvEzQ;MACN,CAAC;MACD,IAAI,CAACkH,UAAU,CAACtC,IAAI,CAAC;IACvB,CAAC,CAAC,OAAO3C,KAAK,EAAE;MACd,MAAM,IAAI,CAAC0E,QAAQ,CAAC1E,KAAK,CAAC;IAC5B;EACF;EAEA,MAAMyO,aAAaA,CAAA,EAAkB;IACnCtS,MAAM,CAACgI,GAAG,CAAC,8BAA8B,CAAC;IAC1C,IAAI,CAAC1D,aAAa,CAAC,CAAC;IACpB,IAAI,IAAI,CAAC0C,YAAY,EAAE;MACrB,IAAI;QACF,MAAM,IAAI,CAAC+B,cAAc,CAAC,CAAC;QAC3B/I,MAAM,CAACgI,GAAG,CAAC,6CAA6C,CAAC;MAC3D,CAAC,CAAC,OAAOM,CAAC,EAAE;QACVtI,MAAM,CAAC8F,IAAI,CAAC,yCAAyC,EAAEwC,CAAC,CAAC;MAC3D;IACF;IACA,IAAI,CAACX,MAAM,CAAC,CAAC;EACf;EAEA4K,MAAMA,CAAA,EAAS;IACb,IAAI,CAACvL,YAAY,GAAGpF,SAAS;IAC7B,IAAI,CAACqC,cAAc,GAAG,EAAE;IACxB,IAAI,CAACgD,eAAe,CAAChH,SAAS,CAAC;IAC/B,IAAI,CAACgH,eAAe,CAAC/G,UAAU,CAAC;IAChC,IAAI,CAAC+G,eAAe,CAAC9G,oBAAoB,CAAC;IAC1C,IAAI,CAACwH,MAAM,CAAC,CAAC;EACf;EAEQmB,UAAUA,CAACtC,IAAc,EAAE;IACjC,IAAI,CAACQ,YAAY,GAAGR,IAAI;IACxB,MAAMgM,aAAa,GAAG,IAAI,CAACjM,0BAA0B,CAACC,IAAI,CAAC;IAC3D,IAAI,CAACT,SAAS,CAAC9F,SAAS,EAAE6G,IAAI,CAAC+B,SAAS,CAAC2J,aAAa,CAAC,CAAC;IACxD,IAAI,CAAC7K,MAAM,CAAC,CAAC;EACf;EAEA8K,iBAAiBA,CAACC,OAAgB,EAAQ;IACxC1S,MAAM,CAAC2S,UAAU,CAACD,OAAO,CAAC;EAC5B;EAEAE,oBAAoBA,CAAClO,OAAqC,EAAQ;IAChE,IAAI,CAACM,eAAe,GAAGN,OAAO,GAC1B,IAAI,CAACD,sBAAsB,CAACC,OAAO,CAAC,GACpC9C,SAAS;IACb,IAAI,CAAC0C,aAAa,CAAC,CAAC;IACpB,IAAI,CAACqD,MAAM,CAAC,CAAC;EACf;EAEAvG,IAAI,GAAG,MAAM;EACbyR,OAAOA,CAAA,EAAG,CAAC;EACXC,MAAMA,CAACC,KAAc,EAAE;IACrB,OAAOA,KAAK,KAAK,IAAI;EACvB;AACF;AAEA,OAAO,MAAMC,UAAU,GAAG,IAAIhP,OAAO,CAAC,CAAC","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -4,4 +4,5 @@ export * from "./Auth.nitro.js";
|
|
|
4
4
|
export * from "./ui/social-button";
|
|
5
5
|
export { useAuth } from "./use-auth.js";
|
|
6
6
|
export { AuthService } from "./service";
|
|
7
|
+
export { AuthError, isAuthErrorCode, toAuthErrorCode } from "./utils/auth-error.js";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useAuth","AuthService"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,iBAAc;AAC5B,cAAc,oBAAoB;AAClC,SAASA,OAAO,QAA4B,eAAY;AACxD,SAASC,WAAW,QAAQ,WAAW","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useAuth","AuthService","AuthError","isAuthErrorCode","toAuthErrorCode"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,iBAAc;AAC5B,cAAc,oBAAoB;AAClC,SAASA,OAAO,QAA4B,eAAY;AACxD,SAASC,WAAW,QAAQ,WAAW;AACvC,SAASC,SAAS,EAAEC,eAAe,EAAEC,eAAe,QAAQ,uBAAoB","ignoreList":[]}
|
package/lib/module/service.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { NitroModules } from "react-native-nitro-modules";
|
|
4
|
+
import { AuthError } from "./utils/auth-error.js";
|
|
4
5
|
const nitroAuth = NitroModules.createHybridObject("Auth");
|
|
5
6
|
export const AuthService = {
|
|
6
7
|
get name() {
|
|
@@ -16,29 +17,53 @@ export const AuthService = {
|
|
|
16
17
|
return nitroAuth.hasPlayServices;
|
|
17
18
|
},
|
|
18
19
|
async login(provider, options) {
|
|
19
|
-
|
|
20
|
+
try {
|
|
21
|
+
return await nitroAuth.login(provider, options);
|
|
22
|
+
} catch (e) {
|
|
23
|
+
throw AuthError.from(e);
|
|
24
|
+
}
|
|
20
25
|
},
|
|
21
26
|
async requestScopes(scopes) {
|
|
22
|
-
|
|
27
|
+
try {
|
|
28
|
+
return await nitroAuth.requestScopes(scopes);
|
|
29
|
+
} catch (e) {
|
|
30
|
+
throw AuthError.from(e);
|
|
31
|
+
}
|
|
23
32
|
},
|
|
24
33
|
async revokeScopes(scopes) {
|
|
25
|
-
|
|
34
|
+
try {
|
|
35
|
+
return await nitroAuth.revokeScopes(scopes);
|
|
36
|
+
} catch (e) {
|
|
37
|
+
throw AuthError.from(e);
|
|
38
|
+
}
|
|
26
39
|
},
|
|
27
40
|
async getAccessToken() {
|
|
28
|
-
|
|
41
|
+
try {
|
|
42
|
+
return await nitroAuth.getAccessToken();
|
|
43
|
+
} catch (e) {
|
|
44
|
+
throw AuthError.from(e);
|
|
45
|
+
}
|
|
29
46
|
},
|
|
30
47
|
async refreshToken() {
|
|
31
|
-
|
|
48
|
+
try {
|
|
49
|
+
return await nitroAuth.refreshToken();
|
|
50
|
+
} catch (e) {
|
|
51
|
+
throw AuthError.from(e);
|
|
52
|
+
}
|
|
32
53
|
},
|
|
33
54
|
logout() {
|
|
34
55
|
nitroAuth.logout();
|
|
35
56
|
},
|
|
36
57
|
async silentRestore() {
|
|
37
|
-
|
|
58
|
+
try {
|
|
59
|
+
return await nitroAuth.silentRestore();
|
|
60
|
+
} catch (e) {
|
|
61
|
+
throw AuthError.from(e);
|
|
62
|
+
}
|
|
38
63
|
},
|
|
39
64
|
onAuthStateChanged(callback) {
|
|
40
|
-
return nitroAuth.onAuthStateChanged(
|
|
41
|
-
callback(
|
|
65
|
+
return nitroAuth.onAuthStateChanged(user => {
|
|
66
|
+
callback(user);
|
|
42
67
|
});
|
|
43
68
|
},
|
|
44
69
|
onTokensRefreshed(callback) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NitroModules","nitroAuth","createHybridObject","AuthService","name","currentUser","grantedScopes","hasPlayServices","login","provider","options","requestScopes","scopes","revokeScopes","getAccessToken","refreshToken","logout","silentRestore","onAuthStateChanged","callback","onTokensRefreshed","setLoggingEnabled","enabled","dispose","equals","other"],"sourceRoot":"../../src","sources":["service.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;
|
|
1
|
+
{"version":3,"names":["NitroModules","AuthError","nitroAuth","createHybridObject","AuthService","name","currentUser","grantedScopes","hasPlayServices","login","provider","options","e","from","requestScopes","scopes","revokeScopes","getAccessToken","refreshToken","logout","silentRestore","onAuthStateChanged","callback","user","onTokensRefreshed","setLoggingEnabled","enabled","dispose","equals","other"],"sourceRoot":"../../src","sources":["service.ts"],"mappings":"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","ignoreList":[]}
|