@oxyhq/services 5.6.10 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/ui/context/OxyContext.js +29 -9
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionSocket.js +4 -1
- package/lib/commonjs/ui/hooks/useSessionSocket.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +29 -9
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/hooks/useSessionSocket.js +4 -1
- package/lib/module/ui/hooks/useSessionSocket.js.map +1 -1
- package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/ui/hooks/useSessionSocket.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/ui/context/OxyContext.tsx +29 -9
- package/src/ui/hooks/useSessionSocket.ts +4 -1
|
@@ -89,6 +89,18 @@ const OxyContextProvider = ({
|
|
|
89
89
|
// Add a new state to track token restoration
|
|
90
90
|
const [tokenReady, setTokenReady] = _react.default.useState(false);
|
|
91
91
|
|
|
92
|
+
// Add refs to prevent duplicate API calls
|
|
93
|
+
const initAuthRef = _react.default.useRef(false);
|
|
94
|
+
const tokenRestoreRef = _react.default.useRef(false);
|
|
95
|
+
|
|
96
|
+
// Development warning about React StrictMode
|
|
97
|
+
_react.default.useEffect(() => {
|
|
98
|
+
if (__DEV__) {
|
|
99
|
+
console.log('🔍 OxyContext: React StrictMode may cause effects to run twice in development');
|
|
100
|
+
console.log('🔍 This is normal and helps detect side effects. Production builds will not have this behavior.');
|
|
101
|
+
}
|
|
102
|
+
}, []);
|
|
103
|
+
|
|
92
104
|
// Storage keys (memoized to prevent infinite loops)
|
|
93
105
|
const keys = (0, _react.useMemo)(() => getSecureStorageKeys(storageKeyPrefix), [storageKeyPrefix]);
|
|
94
106
|
|
|
@@ -111,7 +123,11 @@ const OxyContextProvider = ({
|
|
|
111
123
|
// Effect to initialize authentication state
|
|
112
124
|
(0, _react.useEffect)(() => {
|
|
113
125
|
const initAuth = async () => {
|
|
114
|
-
if (!storage) return;
|
|
126
|
+
if (!storage || initAuthRef.current) return;
|
|
127
|
+
|
|
128
|
+
// Prevent multiple simultaneous initializations
|
|
129
|
+
if (isLoading) return;
|
|
130
|
+
initAuthRef.current = true;
|
|
115
131
|
_authStore.useAuthStore.setState({
|
|
116
132
|
isLoading: true
|
|
117
133
|
});
|
|
@@ -200,15 +216,16 @@ const OxyContextProvider = ({
|
|
|
200
216
|
});
|
|
201
217
|
}
|
|
202
218
|
};
|
|
203
|
-
if (storage) {
|
|
219
|
+
if (storage && !isLoading) {
|
|
204
220
|
initAuth();
|
|
205
221
|
}
|
|
206
|
-
}, [storage, oxyServices, keys,
|
|
222
|
+
}, [storage, oxyServices, keys.sessions, keys.activeSessionId]); // Removed onAuthStateChange from deps
|
|
207
223
|
|
|
208
|
-
// Effect to restore token on app load or session switch
|
|
224
|
+
// Effect to restore token on app load or session switch - with proper guards
|
|
209
225
|
(0, _react.useEffect)(() => {
|
|
210
226
|
const restoreToken = async () => {
|
|
211
|
-
if (activeSessionId && oxyServices) {
|
|
227
|
+
if (activeSessionId && oxyServices && !tokenReady && !tokenRestoreRef.current) {
|
|
228
|
+
tokenRestoreRef.current = true;
|
|
212
229
|
try {
|
|
213
230
|
await oxyServices.getTokenBySession(activeSessionId);
|
|
214
231
|
setTokenReady(true);
|
|
@@ -217,13 +234,16 @@ const OxyContextProvider = ({
|
|
|
217
234
|
await logout();
|
|
218
235
|
setTokenReady(false);
|
|
219
236
|
}
|
|
220
|
-
} else {
|
|
237
|
+
} else if (!activeSessionId && !tokenReady) {
|
|
221
238
|
setTokenReady(true); // No session, so token is not needed
|
|
222
239
|
}
|
|
223
240
|
};
|
|
224
|
-
|
|
225
|
-
// Only run
|
|
226
|
-
|
|
241
|
+
|
|
242
|
+
// Only run if we haven't already set tokenReady
|
|
243
|
+
if (!tokenReady) {
|
|
244
|
+
restoreToken();
|
|
245
|
+
}
|
|
246
|
+
}, [activeSessionId, oxyServices, tokenReady]); // Added tokenReady to prevent re-runs
|
|
227
247
|
|
|
228
248
|
// Remove invalid session
|
|
229
249
|
const removeInvalidSession = (0, _react.useCallback)(async sessionId => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_deviceManager","_useSessionSocket","_sonner","_authStore","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OxyContext","createContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","Promise","resolve","then","error","console","Error","getSecureStorageKeys","prefix","sessions","activeSessionId","OxyContextProvider","children","oxyServices","storageKeyPrefix","onAuthStateChange","bottomSheetRef","user","useAuthStore","state","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","React","useState","setSessions","setActiveSessionId","storage","setStorage","tokenReady","setTokenReady","keys","useMemo","useEffect","initStorage","platformStorage","setState","initAuth","sessionsData","storedActiveSessionId","log","parsedSessions","JSON","parse","migratedSessions","shouldUpdateStorage","session","userId","sessionUser","getUserBySession","sessionId","push","id","saveSessionsToStorage","length","activeSession","find","s","validation","validateSession","valid","getTokenBySession","fullUser","username","avatar","removeInvalidSession","err","clearAllStorage","restoreToken","useCallback","filteredSessions","filter","switchToSession","sessionsList","stringify","saveActiveSessionId","login","password","deviceName","deviceFingerprint","DeviceManager","getDeviceFingerprint","deviceInfo","getDeviceInfo","deviceId","response","secureLogin","getDefaultDeviceName","clientSession","expiresAt","lastActive","Date","toISOString","existingUserSessionIndex","findIndex","updatedSessions","existingSession","message","targetSessionId","sessionToLogout","logoutSecureSession","logoutAll","logoutAllSecureSessions","signUp","email","switchSession","removeSession","refreshSessions","serverSessions","getSessionsBySessionId","map","serverSession","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","current","expand","present","warn","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","getBaseURL","useSessionSocket","baseURL","onRemoteSignOut","toast","info","contextValue","jsx","Provider","exports","useOxy","context","useContext","_default"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAIA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAAmD,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA,KAEnD;AAoCA;AACA,MAAMkB,UAAU,gBAAG,IAAAC,oBAAa,EAAyB,IAAI,CAAC;;AAE9D;;AASA;;AAQA;AACA,MAAMC,UAAU,CAA6B;EAC3C,MAAMC,OAAOA,CAACC,GAAW,EAA0B;IACjD,OAAOC,YAAY,CAACF,OAAO,CAACC,GAAG,CAAC;EAClC;EAEA,MAAME,OAAOA,CAACF,GAAW,EAAEG,KAAa,EAAiB;IACvDF,YAAY,CAACC,OAAO,CAACF,GAAG,EAAEG,KAAK,CAAC;EAClC;EAEA,MAAMC,UAAUA,CAACJ,GAAW,EAAiB;IAC3CC,YAAY,CAACG,UAAU,CAACJ,GAAG,CAAC;EAC9B;EAEA,MAAMK,KAAKA,CAAA,EAAkB;IAC3BJ,YAAY,CAACI,KAAK,CAAC,CAAC;EACtB;AACF;;AAEA;AACA,IAAIC,YAA8B;;AAElC;AACA,MAAMC,aAAa,GAAGA,CAAA,KAAe;EACnC,OAAO,OAAOC,SAAS,KAAK,WAAW,IAAIA,SAAS,CAACC,OAAO,KAAK,aAAa;AAChF,CAAC;;AAED;AACA,MAAMC,UAAU,GAAG,MAAAA,CAAA,KAAuC;EACxD,IAAIH,aAAa,CAAC,CAAC,EAAE;IACnB,IAAI,CAACD,YAAY,EAAE;MACjB,IAAI;QACF,MAAMK,kBAAkB,GAAG,MAAAC,OAAA,CAAAC,OAAA,GAAAC,IAAA,OAAA5C,uBAAA,CAAAC,OAAA,CAAa,2CAA2C,GAAC;QACpFmC,YAAY,GAAIK,kBAAkB,CAACxB,OAAuC;MAC5E,CAAC,CAAC,OAAO4B,KAAK,EAAE;QACdC,OAAO,CAACD,KAAK,CAAC,gCAAgC,EAAEA,KAAK,CAAC;QACtD,MAAM,IAAIE,KAAK,CAAC,sDAAsD,CAAC;MACzE;IACF;IACA,OAAOX,YAAY;EACrB;EAEA,OAAO,IAAIR,UAAU,CAAC,CAAC;AACzB,CAAC;;AAED;AACA,MAAMoB,oBAAoB,GAAGA,CAACC,MAAM,GAAG,YAAY,MAAM;EACvDC,QAAQ,EAAE,GAAGD,MAAM,WAAW;EAAE;EAChCE,eAAe,EAAE,GAAGF,MAAM,oBAAoB,CAAE;AAClD,CAAC,CAAC;AAEK,MAAMG,kBAAqD,GAAGA,CAAC;EACpEC,QAAQ;EACRC,WAAW;EACXC,gBAAgB,GAAG,YAAY;EAC/BC,iBAAiB;EACjBC;AACF,CAAC,KAAK;EACJ;EACA,MAAMC,IAAI,GAAG,IAAAC,uBAAY,EAAEC,KAAK,IAAKA,KAAK,CAACF,IAAI,CAAC;EAChD,MAAMG,eAAe,GAAG,IAAAF,uBAAY,EAAEC,KAAK,IAAKA,KAAK,CAACC,eAAe,CAAC;EACtE,MAAMC,SAAS,GAAG,IAAAH,uBAAY,EAAEC,KAAK,IAAKA,KAAK,CAACE,SAAS,CAAC;EAC1D,MAAMjB,KAAK,GAAG,IAAAc,uBAAY,EAAEC,KAAK,IAAKA,KAAK,CAACf,KAAK,CAAC;EAClD,MAAMkB,YAAY,GAAG,IAAAJ,uBAAY,EAAEC,KAAK,IAAKA,KAAK,CAACG,YAAY,CAAC;EAChE,MAAMC,YAAY,GAAG,IAAAL,uBAAY,EAAEC,KAAK,IAAKA,KAAK,CAACI,YAAY,CAAC;EAChE,MAAMC,WAAW,GAAG,IAAAN,uBAAY,EAAEC,KAAK,IAAKA,KAAK,CAACM,MAAM,CAAC;;EAEzD;EACA,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAyB,IAAI,CAAC;EAClF,MAAM,CAACpB,QAAQ,EAAEqB,WAAW,CAAC,GAAGF,cAAK,CAACC,QAAQ,CAAwB,EAAE,CAAC;EACzE,MAAM,CAACnB,eAAe,EAAEqB,kBAAkB,CAAC,GAAGH,cAAK,CAACC,QAAQ,CAAgB,IAAI,CAAC;EACjF,MAAM,CAACG,OAAO,EAAEC,UAAU,CAAC,GAAGL,cAAK,CAACC,QAAQ,CAA0B,IAAI,CAAC;EAC3E;EACA,MAAM,CAACK,UAAU,EAAEC,aAAa,CAAC,GAAGP,cAAK,CAACC,QAAQ,CAAC,KAAK,CAAC;;EAEzD;EACA,MAAMO,IAAI,GAAG,IAAAC,cAAO,EAAC,MAAM9B,oBAAoB,CAACO,gBAAgB,CAAC,EAAE,CAACA,gBAAgB,CAAC,CAAC;;EAEtF;EACA,IAAAwB,gBAAS,EAAC,MAAM;IACd,MAAMC,WAAW,GAAG,MAAAA,CAAA,KAAY;MAC9B,IAAI;QACF,MAAMC,eAAe,GAAG,MAAMzC,UAAU,CAAC,CAAC;QAC1CkC,UAAU,CAACO,eAAe,CAAC;MAC7B,CAAC,CAAC,OAAOpC,KAAK,EAAE;QACdC,OAAO,CAACD,KAAK,CAAC,+BAA+B,EAAEA,KAAK,CAAC;QACrDc,uBAAY,CAACuB,QAAQ,CAAC;UAAErC,KAAK,EAAE;QAA+B,CAAC,CAAC;MAClE;IACF,CAAC;IAEDmC,WAAW,CAAC,CAAC;EACf,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,IAAAD,gBAAS,EAAC,MAAM;IACd,MAAMI,QAAQ,GAAG,MAAAA,CAAA,KAAY;MAC3B,IAAI,CAACV,OAAO,EAAE;MAEdd,uBAAY,CAACuB,QAAQ,CAAC;QAAEpB,SAAS,EAAE;MAAK,CAAC,CAAC;MAC1C,IAAI;QACF;QACA,MAAMsB,YAAY,GAAG,MAAMX,OAAO,CAAC5C,OAAO,CAACgD,IAAI,CAAC3B,QAAQ,CAAC;QACzD,MAAMmC,qBAAqB,GAAG,MAAMZ,OAAO,CAAC5C,OAAO,CAACgD,IAAI,CAAC1B,eAAe,CAAC;QAEzEL,OAAO,CAACwC,GAAG,CAAC,4BAA4B,EAAEF,YAAY,CAAC;QACvDtC,OAAO,CAACwC,GAAG,CAAC,+BAA+B,EAAED,qBAAqB,CAAC;QAEnE,IAAID,YAAY,EAAE;UAChB,MAAMG,cAAqC,GAAGC,IAAI,CAACC,KAAK,CAACL,YAAY,CAAC;;UAEtE;UACA,MAAMM,gBAAuC,GAAG,EAAE;UAClD,IAAIC,mBAAmB,GAAG,KAAK;UAE/B,KAAK,MAAMC,OAAO,IAAIL,cAAc,EAAE;YACpC,IAAI,CAACK,OAAO,CAACC,MAAM,EAAE;cACnB;cACA,IAAI;gBACF,MAAMC,WAAW,GAAG,MAAMxC,WAAW,CAACyC,gBAAgB,CAACH,OAAO,CAACI,SAAS,CAAC;gBACzEN,gBAAgB,CAACO,IAAI,CAAC;kBACpB,GAAGL,OAAO;kBACVC,MAAM,EAAEC,WAAW,CAACI;gBACtB,CAAC,CAAC;gBACFP,mBAAmB,GAAG,IAAI;gBAC1B7C,OAAO,CAACwC,GAAG,CAAC,oBAAoBM,OAAO,CAACI,SAAS,aAAaF,WAAW,CAACI,EAAE,EAAE,CAAC;cACjF,CAAC,CAAC,OAAOrD,KAAK,EAAE;gBACd;gBACAC,OAAO,CAACwC,GAAG,CAAC,4BAA4BM,OAAO,CAACI,SAAS,GAAG,EAAEnD,KAAK,CAAC;gBACpE8C,mBAAmB,GAAG,IAAI;cAC5B;YACF,CAAC,MAAM;cACL;cACAD,gBAAgB,CAACO,IAAI,CAACL,OAAO,CAAC;YAChC;UACF;;UAEA;UACA,IAAID,mBAAmB,EAAE;YACvB,MAAMQ,qBAAqB,CAACT,gBAAgB,CAAC;UAC/C;UAEAnB,WAAW,CAACmB,gBAAgB,CAAC;UAE7B,IAAIL,qBAAqB,IAAIK,gBAAgB,CAACU,MAAM,GAAG,CAAC,EAAE;YACxD,MAAMC,aAAa,GAAGX,gBAAgB,CAACY,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACP,SAAS,KAAKX,qBAAqB,CAAC;YAEvF,IAAIgB,aAAa,EAAE;cACjBvD,OAAO,CAACwC,GAAG,CAAC,mCAAmC,EAAEe,aAAa,CAAC;;cAE/D;cACA,IAAI;gBACF,MAAMG,UAAU,GAAG,MAAMlD,WAAW,CAACmD,eAAe,CAACJ,aAAa,CAACL,SAAS,CAAC;gBAE7E,IAAIQ,UAAU,CAACE,KAAK,EAAE;kBACpB5D,OAAO,CAACwC,GAAG,CAAC,6CAA6C,CAAC;kBAC1Dd,kBAAkB,CAAC6B,aAAa,CAACL,SAAS,CAAC;;kBAE3C;kBACA,MAAM1C,WAAW,CAACqD,iBAAiB,CAACN,aAAa,CAACL,SAAS,CAAC;;kBAE5D;kBACA,MAAMY,QAAQ,GAAG,MAAMtD,WAAW,CAACyC,gBAAgB,CAACM,aAAa,CAACL,SAAS,CAAC;kBAC5EjC,YAAY,CAAC6C,QAAQ,CAAC;kBACtBxC,cAAc,CAAC;oBACb8B,EAAE,EAAEU,QAAQ,CAACV,EAAE;oBACfW,QAAQ,EAAED,QAAQ,CAACC,QAAQ;oBAC3BC,MAAM,EAAEF,QAAQ,CAACE;kBACnB,CAAC,CAAC;kBAEF,IAAItD,iBAAiB,EAAE;oBACrBA,iBAAiB,CAACoD,QAAQ,CAAC;kBAC7B;gBACF,CAAC,MAAM;kBACL9D,OAAO,CAACwC,GAAG,CAAC,wCAAwC,CAAC;kBACrD,MAAMyB,oBAAoB,CAACV,aAAa,CAACL,SAAS,CAAC;gBACrD;cACF,CAAC,CAAC,OAAOnD,KAAK,EAAE;gBACdC,OAAO,CAACD,KAAK,CAAC,wCAAwC,EAAEA,KAAK,CAAC;gBAC9D,MAAMkE,oBAAoB,CAACV,aAAa,CAACL,SAAS,CAAC;cACrD;YACF;UACF;QACF;MACF,CAAC,CAAC,OAAOgB,GAAG,EAAE;QACZlE,OAAO,CAACD,KAAK,CAAC,mCAAmC,EAAEmE,GAAG,CAAC;QACvD,MAAMC,eAAe,CAAC,CAAC;MACzB,CAAC,SAAS;QACRtD,uBAAY,CAACuB,QAAQ,CAAC;UAAEpB,SAAS,EAAE;QAAM,CAAC,CAAC;MAC7C;IACF,CAAC;IAED,IAAIW,OAAO,EAAE;MACXU,QAAQ,CAAC,CAAC;IACZ;EACF,CAAC,EAAE,CAACV,OAAO,EAAEnB,WAAW,EAAEuB,IAAI,EAAErB,iBAAiB,CAAC,CAAC;;EAEnD;EACA,IAAAuB,gBAAS,EAAC,MAAM;IACd,MAAMmC,YAAY,GAAG,MAAAA,CAAA,KAAY;MAC/B,IAAI/D,eAAe,IAAIG,WAAW,EAAE;QAClC,IAAI;UACF,MAAMA,WAAW,CAACqD,iBAAiB,CAACxD,eAAe,CAAC;UACpDyB,aAAa,CAAC,IAAI,CAAC;QACrB,CAAC,CAAC,OAAOoC,GAAG,EAAE;UACZ;UACA,MAAM9C,MAAM,CAAC,CAAC;UACdU,aAAa,CAAC,KAAK,CAAC;QACtB;MACF,CAAC,MAAM;QACLA,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;MACvB;IACF,CAAC;IACDsC,YAAY,CAAC,CAAC;IACd;EACF,CAAC,EAAE,CAAC/D,eAAe,EAAEG,WAAW,CAAC,CAAC;;EAElC;EACA,MAAMyD,oBAAoB,GAAG,IAAAI,kBAAW,EAAC,MAAOnB,SAAiB,IAAoB;IACnF,MAAMoB,gBAAgB,GAAGlE,QAAQ,CAACmE,MAAM,CAACd,CAAC,IAAIA,CAAC,CAACP,SAAS,KAAKA,SAAS,CAAC;IACxEzB,WAAW,CAAC6C,gBAAgB,CAAC;IAC7B,MAAMjB,qBAAqB,CAACiB,gBAAgB,CAAC;;IAE7C;IACA,IAAIA,gBAAgB,CAAChB,MAAM,GAAG,CAAC,EAAE;MAC/B,MAAMkB,eAAe,CAACF,gBAAgB,CAAC,CAAC,CAAC,CAACpB,SAAS,CAAC;IACtD,CAAC,MAAM;MACL;MACAxB,kBAAkB,CAAC,IAAI,CAAC;MACxBP,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAMK,OAAO,EAAEvC,UAAU,CAAC2C,IAAI,CAAC1B,eAAe,CAAC;MAE/C,IAAIK,iBAAiB,EAAE;QACrBA,iBAAiB,CAAC,IAAI,CAAC;MACzB;IACF;EACF,CAAC,EAAE,CAACN,QAAQ,EAAEuB,OAAO,EAAEI,IAAI,EAAErB,iBAAiB,EAAES,WAAW,CAAC,CAAC;;EAE7D;EACA,MAAMkC,qBAAqB,GAAG,IAAAgB,kBAAW,EAAC,MAAOI,YAAmC,IAAoB;IACtG,IAAI,CAAC9C,OAAO,EAAE;IACd,MAAMA,OAAO,CAACzC,OAAO,CAAC6C,IAAI,CAAC3B,QAAQ,EAAEsC,IAAI,CAACgC,SAAS,CAACD,YAAY,CAAC,CAAC;EACpE,CAAC,EAAE,CAAC9C,OAAO,EAAEI,IAAI,CAAC3B,QAAQ,CAAC,CAAC;;EAE5B;EACA,MAAMuE,mBAAmB,GAAG,IAAAN,kBAAW,EAAC,MAAOnB,SAAiB,IAAoB;IAClF,IAAI,CAACvB,OAAO,EAAE;IACd,MAAMA,OAAO,CAACzC,OAAO,CAAC6C,IAAI,CAAC1B,eAAe,EAAE6C,SAAS,CAAC;EACxD,CAAC,EAAE,CAACvB,OAAO,EAAEI,IAAI,CAAC1B,eAAe,CAAC,CAAC;;EAEnC;EACA,MAAM8D,eAAe,GAAG,IAAAE,kBAAW,EAAC,YAA2B;IAC7D,IAAI,CAAC1C,OAAO,EAAE;IACd,IAAI;MACF,MAAMA,OAAO,CAACvC,UAAU,CAAC2C,IAAI,CAAC3B,QAAQ,CAAC;MACvC,MAAMuB,OAAO,CAACvC,UAAU,CAAC2C,IAAI,CAAC1B,eAAe,CAAC;IAChD,CAAC,CAAC,OAAO6D,GAAG,EAAE;MACZlE,OAAO,CAACD,KAAK,CAAC,6BAA6B,EAAEmE,GAAG,CAAC;IACnD;EACF,CAAC,EAAE,CAACvC,OAAO,EAAEI,IAAI,CAAC,CAAC;;EAEnB;EACA,MAAMyC,eAAe,GAAG,IAAAH,kBAAW,EAAC,MAAOnB,SAAiB,IAAoB;IAC9E,IAAI;MACFrC,uBAAY,CAACuB,QAAQ,CAAC;QAAEpB,SAAS,EAAE;MAAK,CAAC,CAAC;;MAE1C;MACA,MAAMR,WAAW,CAACqD,iBAAiB,CAACX,SAAS,CAAC;;MAE9C;MACA,MAAMY,QAAQ,GAAG,MAAMtD,WAAW,CAACyC,gBAAgB,CAACC,SAAS,CAAC;MAE9DxB,kBAAkB,CAACwB,SAAS,CAAC;MAC7BjC,YAAY,CAAC6C,QAAQ,CAAC;MACtBxC,cAAc,CAAC;QACb8B,EAAE,EAAEU,QAAQ,CAACV,EAAE;QACfW,QAAQ,EAAED,QAAQ,CAACC,QAAQ;QAC3BC,MAAM,EAAEF,QAAQ,CAACE;MACnB,CAAC,CAAC;MAEF,MAAMW,mBAAmB,CAACzB,SAAS,CAAC;MAEpC,IAAIxC,iBAAiB,EAAE;QACrBA,iBAAiB,CAACoD,QAAQ,CAAC;MAC7B;IACF,CAAC,CAAC,OAAO/D,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,uBAAuB,EAAEA,KAAK,CAAC;MAC7Cc,uBAAY,CAACuB,QAAQ,CAAC;QAAErC,KAAK,EAAE;MAA2B,CAAC,CAAC;IAC9D,CAAC,SAAS;MACRc,uBAAY,CAACuB,QAAQ,CAAC;QAAEpB,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC,EAAE,CAACR,WAAW,EAAEE,iBAAiB,EAAEO,YAAY,EAAE0D,mBAAmB,CAAC,CAAC;;EAEvE;EACA,MAAMC,KAAK,GAAG,MAAAA,CAAOb,QAAgB,EAAEc,QAAgB,EAAEC,UAAmB,KAAoB;IAC9F,IAAI,CAACnD,OAAO,EAAE,MAAM,IAAI1B,KAAK,CAAC,yBAAyB,CAAC;IACxDY,uBAAY,CAACuB,QAAQ,CAAC;MAAEpB,SAAS,EAAE,IAAI;MAAEjB,KAAK,EAAE;IAAK,CAAC,CAAC;IAEvD,IAAI;MACF;MACA,MAAMgF,iBAAiB,GAAGC,4BAAa,CAACC,oBAAoB,CAAC,CAAC;;MAE9D;MACA,MAAMC,UAAU,GAAG,MAAMF,4BAAa,CAACG,aAAa,CAAC,CAAC;MAEtDnF,OAAO,CAACwC,GAAG,CAAC,wCAAwC,EAAEuC,iBAAiB,CAAC;MACxE/E,OAAO,CAACwC,GAAG,CAAC,+BAA+B,EAAE0C,UAAU,CAACE,QAAQ,CAAC;MAEjE,MAAMC,QAA6B,GAAG,MAAM7E,WAAW,CAAC8E,WAAW,CACjEvB,QAAQ,EACRc,QAAQ,EACRC,UAAU,IAAII,UAAU,CAACJ,UAAU,IAAIE,4BAAa,CAACO,oBAAoB,CAAC,CAAC,EAC3ER,iBACF,CAAC;;MAED;MACA,MAAMS,aAAkC,GAAG;QACzCtC,SAAS,EAAEmC,QAAQ,CAACnC,SAAS;QAC7BkC,QAAQ,EAAEC,QAAQ,CAACD,QAAQ;QAC3BK,SAAS,EAAEJ,QAAQ,CAACI,SAAS;QAC7BC,UAAU,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;QACpC7C,MAAM,EAAEsC,QAAQ,CAACzE,IAAI,CAACwC;MACxB,CAAC;;MAED;MACA,MAAMyC,wBAAwB,GAAGzF,QAAQ,CAAC0F,SAAS,CAACrC,CAAC,IACnDA,CAAC,CAACV,MAAM,KAAKsC,QAAQ,CAACzE,IAAI,CAACwC,EAC7B,CAAC;MAED,IAAI2C,eAAsC;MAE1C,IAAIF,wBAAwB,KAAK,CAAC,CAAC,EAAE;QACnC;QACA,MAAMG,eAAe,GAAG5F,QAAQ,CAACyF,wBAAwB,CAAC;QAC1DE,eAAe,GAAG,CAAC,GAAG3F,QAAQ,CAAC;QAC/B2F,eAAe,CAACF,wBAAwB,CAAC,GAAGL,aAAa;QAEzDxF,OAAO,CAACwC,GAAG,CAAC,8CAA8C6C,QAAQ,CAACzE,IAAI,CAACwC,EAAE,uBAAuB4C,eAAe,CAAC9C,SAAS,kBAAkBmC,QAAQ,CAACnC,SAAS,EAAE,CAAC;;QAEjK;QACA,IAAI7C,eAAe,KAAK2F,eAAe,CAAC9C,SAAS,EAAE;UACjDxB,kBAAkB,CAAC2D,QAAQ,CAACnC,SAAS,CAAC;UACtC,MAAMyB,mBAAmB,CAACU,QAAQ,CAACnC,SAAS,CAAC;QAC/C;MACF,CAAC,MAAM;QACL;QACA6C,eAAe,GAAG,CAAC,GAAG3F,QAAQ,EAAEoF,aAAa,CAAC;QAC9CxF,OAAO,CAACwC,GAAG,CAAC,8BAA8B6C,QAAQ,CAACzE,IAAI,CAACwC,EAAE,cAAciC,QAAQ,CAACD,QAAQ,EAAE,CAAC;MAC9F;MAEA3D,WAAW,CAACsE,eAAe,CAAC;MAC5B,MAAM1C,qBAAqB,CAAC0C,eAAe,CAAC;;MAE5C;MACArE,kBAAkB,CAAC2D,QAAQ,CAACnC,SAAS,CAAC;MACtC,MAAMyB,mBAAmB,CAACU,QAAQ,CAACnC,SAAS,CAAC;;MAE7C;MACA,MAAM1C,WAAW,CAACqD,iBAAiB,CAACwB,QAAQ,CAACnC,SAAS,CAAC;;MAEvD;MACA,MAAMY,QAAQ,GAAG,MAAMtD,WAAW,CAACyC,gBAAgB,CAACoC,QAAQ,CAACnC,SAAS,CAAC;MACvEjC,YAAY,CAAC6C,QAAQ,CAAC;MACtBxC,cAAc,CAAC+D,QAAQ,CAACzE,IAAI,CAAC;MAE7B,IAAIF,iBAAiB,EAAE;QACrBA,iBAAiB,CAACoD,QAAQ,CAAC;MAC7B;MAEA,OAAOA,QAAQ;IACjB,CAAC,CAAC,OAAO/D,KAAU,EAAE;MACnBmB,YAAY,CAACnB,KAAK,CAACkG,OAAO,IAAI,cAAc,CAAC;MAC7C,MAAMlG,KAAK;IACb,CAAC,SAAS;MACRc,uBAAY,CAACuB,QAAQ,CAAC;QAAEpB,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC;;EAED;EACA,MAAMI,MAAM,GAAG,MAAO8E,eAAwB,IAAoB;IAChE,IAAI,CAAC7F,eAAe,EAAE;IAEtB,IAAI;MACF,MAAM8F,eAAe,GAAGD,eAAe,IAAI7F,eAAe;MAC1D,MAAMG,WAAW,CAAC4F,mBAAmB,CAAC/F,eAAe,EAAE8F,eAAe,CAAC;;MAEvE;MACA,MAAM7B,gBAAgB,GAAGlE,QAAQ,CAACmE,MAAM,CAACd,CAAC,IAAIA,CAAC,CAACP,SAAS,KAAKiD,eAAe,CAAC;MAC9E1E,WAAW,CAAC6C,gBAAgB,CAAC;MAC7B,MAAMjB,qBAAqB,CAACiB,gBAAgB,CAAC;;MAE7C;MACA,IAAI6B,eAAe,KAAK9F,eAAe,EAAE;QACvC,IAAIiE,gBAAgB,CAAChB,MAAM,GAAG,CAAC,EAAE;UAC/B;UACA,MAAMkB,eAAe,CAACF,gBAAgB,CAAC,CAAC,CAAC,CAACpB,SAAS,CAAC;QACtD,CAAC,MAAM;UACL;UACAxB,kBAAkB,CAAC,IAAI,CAAC;UACxBP,WAAW,CAAC,CAAC;UACbG,cAAc,CAAC,IAAI,CAAC;UACpB,MAAMK,OAAO,EAAEvC,UAAU,CAAC2C,IAAI,CAAC1B,eAAe,CAAC;UAE/C,IAAIK,iBAAiB,EAAE;YACrBA,iBAAiB,CAAC,IAAI,CAAC;UACzB;QACF;MACF;IACF,CAAC,CAAC,OAAOX,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,eAAe,EAAEA,KAAK,CAAC;MACrCc,uBAAY,CAACuB,QAAQ,CAAC;QAAErC,KAAK,EAAE;MAAgB,CAAC,CAAC;IACnD;EACF,CAAC;;EAED;EACA,MAAMsG,SAAS,GAAG,MAAAA,CAAA,KAA2B;IAC3CrG,OAAO,CAACwC,GAAG,CAAC,wCAAwC,EAAEnC,eAAe,CAAC;IAEtE,IAAI,CAACA,eAAe,EAAE;MACpBL,OAAO,CAACD,KAAK,CAAC,+CAA+C,CAAC;MAC9Dc,uBAAY,CAACuB,QAAQ,CAAC;QAAErC,KAAK,EAAE;MAA0B,CAAC,CAAC;MAC3D,MAAM,IAAIE,KAAK,CAAC,yBAAyB,CAAC;IAC5C;IAEA,IAAI,CAACO,WAAW,EAAE;MAChBR,OAAO,CAACD,KAAK,CAAC,6BAA6B,CAAC;MAC5Cc,uBAAY,CAACuB,QAAQ,CAAC;QAAErC,KAAK,EAAE;MAAwB,CAAC,CAAC;MACzD,MAAM,IAAIE,KAAK,CAAC,uBAAuB,CAAC;IAC1C;IAEA,IAAI;MACFD,OAAO,CAACwC,GAAG,CAAC,6DAA6D,EAAEnC,eAAe,CAAC;MAC3F,MAAMG,WAAW,CAAC8F,uBAAuB,CAACjG,eAAe,CAAC;MAC1DL,OAAO,CAACwC,GAAG,CAAC,gDAAgD,CAAC;;MAE7D;MACAf,WAAW,CAAC,EAAE,CAAC;MACfC,kBAAkB,CAAC,IAAI,CAAC;MACxBP,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAM6C,eAAe,CAAC,CAAC;MACvBnE,OAAO,CAACwC,GAAG,CAAC,uBAAuB,CAAC;MAEpC,IAAI9B,iBAAiB,EAAE;QACrBA,iBAAiB,CAAC,IAAI,CAAC;QACvBV,OAAO,CAACwC,GAAG,CAAC,mCAAmC,CAAC;MAClD;IACF,CAAC,CAAC,OAAOzC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,mBAAmB,EAAEA,KAAK,CAAC;MACzCc,uBAAY,CAACuB,QAAQ,CAAC;QAAErC,KAAK,EAAE,sBAAsBA,KAAK,YAAYE,KAAK,GAAGF,KAAK,CAACkG,OAAO,GAAG,eAAe;MAAG,CAAC,CAAC;MAClH,MAAMlG,KAAK;IACb;EACF,CAAC;;EAED;EACA,MAAMwG,MAAM,GAAG,MAAAA,CAAOxC,QAAgB,EAAEyC,KAAa,EAAE3B,QAAgB,KAAoB;IACzF,IAAI,CAAClD,OAAO,EAAE,MAAM,IAAI1B,KAAK,CAAC,yBAAyB,CAAC;IAExDY,uBAAY,CAACuB,QAAQ,CAAC;MAAEpB,SAAS,EAAE,IAAI;MAAEjB,KAAK,EAAE;IAAK,CAAC,CAAC;IAEvD,IAAI;MACF;MACA,MAAMsF,QAAQ,GAAG,MAAM7E,WAAW,CAAC+F,MAAM,CAACxC,QAAQ,EAAEyC,KAAK,EAAE3B,QAAQ,CAAC;MAEpE7E,OAAO,CAACwC,GAAG,CAAC,oBAAoB,EAAE6C,QAAQ,CAAC;;MAE3C;MACA;MACA,MAAMzE,IAAI,GAAG,MAAMgE,KAAK,CAACb,QAAQ,EAAEc,QAAQ,CAAC;MAE5C,OAAOjE,IAAI;IACb,CAAC,CAAC,OAAOb,KAAU,EAAE;MACnBmB,YAAY,CAACnB,KAAK,CAACkG,OAAO,IAAI,gBAAgB,CAAC;MAC/C,MAAMlG,KAAK;IACb,CAAC,SAAS;MACRc,uBAAY,CAACuB,QAAQ,CAAC;QAAEpB,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC;;EAED;EACA,MAAMyF,aAAa,GAAG,MAAOvD,SAAiB,IAAoB;IAChE,MAAMsB,eAAe,CAACtB,SAAS,CAAC;EAClC,CAAC;;EAED;EACA,MAAMwD,aAAa,GAAG,MAAOxD,SAAiB,IAAoB;IAChE,MAAM9B,MAAM,CAAC8B,SAAS,CAAC;EACzB,CAAC;;EAED;EACA,MAAMyD,eAAe,GAAG,MAAAA,CAAA,KAA2B;IACjD,IAAI,CAACtG,eAAe,EAAE;IAEtB,IAAI;MACF,MAAMuG,cAAc,GAAG,MAAMpG,WAAW,CAACqG,sBAAsB,CAACxG,eAAe,CAAC;;MAEhF;MACA,MAAM0F,eAAsC,GAAGa,cAAc,CAACE,GAAG,CAACC,aAAa,KAAK;QAClF7D,SAAS,EAAE6D,aAAa,CAAC7D,SAAS;QAClCkC,QAAQ,EAAE2B,aAAa,CAAC3B,QAAQ;QAChCK,SAAS,EAAE,IAAIE,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;QAAE;QACrCF,UAAU,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC;MACrC,CAAC,CAAC,CAAC;MAEHnE,WAAW,CAACsE,eAAe,CAAC;MAC5B,MAAM1C,qBAAqB,CAAC0C,eAAe,CAAC;IAC9C,CAAC,CAAC,OAAOhG,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,yBAAyB,EAAEA,KAAK,CAAC;IACjD;EACF,CAAC;;EAED;EACA,MAAMiH,iBAAiB,GAAG,MAAAA,CAAA,KAA4B;IACpD,IAAI,CAAC3G,eAAe,EAAE,MAAM,IAAIJ,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,OAAO,MAAMO,WAAW,CAACwG,iBAAiB,CAAC3G,eAAe,CAAC;IAC7D,CAAC,CAAC,OAAON,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,4BAA4B,EAAEA,KAAK,CAAC;MAClD,MAAMA,KAAK;IACb;EACF,CAAC;EAED,MAAMkH,uBAAuB,GAAG,MAAAA,CAAA,KAA2B;IACzD,IAAI,CAAC5G,eAAe,EAAE,MAAM,IAAIJ,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,MAAMO,WAAW,CAACyG,uBAAuB,CAAC5G,eAAe,CAAC;;MAE1D;MACAoB,WAAW,CAAC,EAAE,CAAC;MACfC,kBAAkB,CAAC,IAAI,CAAC;MACxBP,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAM6C,eAAe,CAAC,CAAC;MAEvB,IAAIzD,iBAAiB,EAAE;QACrBA,iBAAiB,CAAC,IAAI,CAAC;MACzB;IACF,CAAC,CAAC,OAAOX,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,mCAAmC,EAAEA,KAAK,CAAC;MACzD,MAAMA,KAAK;IACb;EACF,CAAC;EAED,MAAMmH,gBAAgB,GAAG,MAAOpC,UAAkB,IAAoB;IACpE,IAAI,CAACzE,eAAe,EAAE,MAAM,IAAIJ,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,MAAMO,WAAW,CAAC0G,gBAAgB,CAAC7G,eAAe,EAAEyE,UAAU,CAAC;;MAE/D;MACA,MAAME,4BAAa,CAACkC,gBAAgB,CAACpC,UAAU,CAAC;IAClD,CAAC,CAAC,OAAO/E,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC;MACjD,MAAMA,KAAK;IACb;EACF,CAAC;;EAED;EACA,MAAMoH,eAAe,GAAG,IAAA9C,kBAAW,EAAE+C,cAAyE,IAAK;IACjHpH,OAAO,CAACwC,GAAG,CAAC,8BAA8B,EAAE4E,cAAc,CAAC;IAE3D,IAAIzG,cAAc,EAAE0G,OAAO,EAAE;MAC3BrH,OAAO,CAACwC,GAAG,CAAC,6BAA6B,CAAC;;MAE1C;MACA,IAAI7B,cAAc,CAAC0G,OAAO,CAACC,MAAM,EAAE;QACjCtH,OAAO,CAACwC,GAAG,CAAC,wBAAwB,CAAC;QACrC7B,cAAc,CAAC0G,OAAO,CAACC,MAAM,CAAC,CAAC;MACjC,CAAC,MAAM,IAAI3G,cAAc,CAAC0G,OAAO,CAACE,OAAO,EAAE;QACzCvH,OAAO,CAACwC,GAAG,CAAC,yBAAyB,CAAC;QACtC7B,cAAc,CAAC0G,OAAO,CAACE,OAAO,CAAC,CAAC;MAClC,CAAC,MAAM;QACLvH,OAAO,CAACwH,IAAI,CAAC,yDAAyD,CAAC;MACzE;;MAEA;MACA,IAAIJ,cAAc,EAAE;QAClB;QACAK,UAAU,CAAC,MAAM;UACf,IAAI,OAAOL,cAAc,KAAK,QAAQ,EAAE;YACtC;YACApH,OAAO,CAACwC,GAAG,CAAC,uBAAuB,EAAE4E,cAAc,CAAC;YACpDzG,cAAc,CAAC0G,OAAO,EAAEK,iBAAiB,GAAGN,cAAc,CAAC;UAC7D,CAAC,MAAM;YACL;YACApH,OAAO,CAACwC,GAAG,CAAC,kCAAkC,EAAE4E,cAAc,CAACO,MAAM,EAAEP,cAAc,CAACQ,KAAK,CAAC;YAC5FjH,cAAc,CAAC0G,OAAO,EAAEK,iBAAiB,GAAGN,cAAc,CAACO,MAAM,EAAEP,cAAc,CAACQ,KAAK,CAAC;UAC1F;QACF,CAAC,EAAE,GAAG,CAAC;MACT;IACF,CAAC,MAAM;MACL5H,OAAO,CAACwH,IAAI,CAAC,iCAAiC,CAAC;IACjD;EACF,CAAC,EAAE,CAAC7G,cAAc,CAAC,CAAC;EAEpB,MAAMkH,eAAe,GAAG,IAAAxD,kBAAW,EAAC,MAAM;IACxC,IAAI1D,cAAc,EAAE0G,OAAO,EAAE;MAC3B1G,cAAc,CAAC0G,OAAO,CAACS,OAAO,GAAG,CAAC;IACpC;EACF,CAAC,EAAE,CAACnH,cAAc,CAAC,CAAC;;EAEpB;EACAX,OAAO,CAACwC,GAAG,CAAC,4BAA4B,EAAE5B,IAAI,EAAEwC,EAAE,EAAE,SAAS,EAAE5C,WAAW,CAACuH,UAAU,CAAC,CAAC,CAAC;EACxF,IAAAC,kCAAgB,EAAC;IACfjF,MAAM,EAAEnC,IAAI,EAAEwC,EAAE;IAChB/C,eAAe;IACfsG,eAAe;IACfvF,MAAM,EAAEA,CAAA,KAAMA,MAAM,CAAC,CAAC;IACtB6G,OAAO,EAAEzH,WAAW,CAACuH,UAAU,CAAC,CAAC;IACjCG,eAAe,EAAEA,CAAA,KAAM;MACrBC,aAAK,CAACC,IAAI,CAAC,oCAAoC,CAAC;MAChDhH,MAAM,CAAC,CAAC;IACV;EACF,CAAC,CAAC;;EAEF;EACA,MAAMiH,YAA6B,GAAG;IACpCzH,IAAI;IACJS,WAAW;IACXjB,QAAQ;IACRC,eAAe;IACfU,eAAe;IACfC,SAAS;IACTjB,KAAK;IACL6E,KAAK;IACLxD,MAAM;IACNiF,SAAS,EAAE,MAAAA,CAAA,KAAY;MAAE,MAAMjF,MAAM,CAAC,CAAC;IAAE,CAAC;IAC1CmF,MAAM,EAAE,MAAAA,CAAOxC,QAAQ,EAAEyC,KAAK,EAAE3B,QAAQ,KAAK;MAC3C,MAAM0B,MAAM,CAACxC,QAAQ,EAAEyC,KAAK,EAAE3B,QAAQ,CAAC;MACvC,OAAOjE,IAAI,CAAS,CAAC;IACvB,CAAC;IACD6F,aAAa,EAAE,MAAOvD,SAAS,IAAK;MAAE,MAAMsB,eAAe,CAACtB,SAAS,CAAC;IAAE,CAAC;IACzEwD,aAAa,EAAE,MAAOxD,SAAS,IAAK;MAAE,MAAMwD,aAAa,CAACxD,SAAS,CAAC;IAAE,CAAC;IACvEyD,eAAe,EAAE,MAAAA,CAAA,KAAY;MAAE,MAAMA,eAAe,CAAC,CAAC;IAAE,CAAC;IACzDK,iBAAiB,EAAE,MAAAA,CAAA,KAAY;MAAE,OAAO,MAAMA,iBAAiB,CAAC,CAAC;IAAE,CAAC;IACpEC,uBAAuB,EAAE,MAAAA,CAAA,KAAY;MAAE,MAAMA,uBAAuB,CAAC,CAAC;IAAE,CAAC;IACzEC,gBAAgB,EAAE,MAAOpC,UAAU,IAAK;MAAE,MAAMoC,gBAAgB,CAACpC,UAAU,CAAC;IAAE,CAAC;IAC/EtE,WAAW;IACXG,cAAc;IACdwG,eAAe;IACfU;EACF,CAAC;;EAED;EACA,IAAI,CAAChG,UAAU,EAAE;IACf,oBAAO,IAAArE,WAAA,CAAA8K,GAAA;MAAA/H,QAAA,EAAK;IAAyB,CAAK,CAAC;EAC7C;EAEA,oBACE,IAAA/C,WAAA,CAAA8K,GAAA,EAAC1J,UAAU,CAAC2J,QAAQ;IAACpJ,KAAK,EAAEkJ,YAAa;IAAA9H,QAAA,EACtCA;EAAQ,CACU,CAAC;AAE1B,CAAC;;AAED;AAAAiI,OAAA,CAAAlI,kBAAA,GAAAA,kBAAA;AACO,MAAMmI,MAAM,GAAGA,CAAA,KAAuB;EAC3C,MAAMC,OAAO,GAAG,IAAAC,iBAAU,EAAC/J,UAAU,CAAC;EACtC,IAAI,CAAC8J,OAAO,EAAE;IACZ,MAAM,IAAIzI,KAAK,CAAC,kDAAkD,CAAC;EACrE;EACA,OAAOyI,OAAO;AAChB,CAAC;AAACF,OAAA,CAAAC,MAAA,GAAAA,MAAA;AAAA,IAAAG,QAAA,GAAAJ,OAAA,CAAArK,OAAA,GAEaS,UAAU","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_deviceManager","_useSessionSocket","_sonner","_authStore","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OxyContext","createContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","Promise","resolve","then","error","console","Error","getSecureStorageKeys","prefix","sessions","activeSessionId","OxyContextProvider","children","oxyServices","storageKeyPrefix","onAuthStateChange","bottomSheetRef","user","useAuthStore","state","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","React","useState","setSessions","setActiveSessionId","storage","setStorage","tokenReady","setTokenReady","initAuthRef","useRef","tokenRestoreRef","useEffect","__DEV__","log","keys","useMemo","initStorage","platformStorage","setState","initAuth","current","sessionsData","storedActiveSessionId","parsedSessions","JSON","parse","migratedSessions","shouldUpdateStorage","session","userId","sessionUser","getUserBySession","sessionId","push","id","saveSessionsToStorage","length","activeSession","find","s","validation","validateSession","valid","getTokenBySession","fullUser","username","avatar","removeInvalidSession","err","clearAllStorage","restoreToken","useCallback","filteredSessions","filter","switchToSession","sessionsList","stringify","saveActiveSessionId","login","password","deviceName","deviceFingerprint","DeviceManager","getDeviceFingerprint","deviceInfo","getDeviceInfo","deviceId","response","secureLogin","getDefaultDeviceName","clientSession","expiresAt","lastActive","Date","toISOString","existingUserSessionIndex","findIndex","updatedSessions","existingSession","message","targetSessionId","sessionToLogout","logoutSecureSession","logoutAll","logoutAllSecureSessions","signUp","email","switchSession","removeSession","refreshSessions","serverSessions","getSessionsBySessionId","map","serverSession","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","expand","present","warn","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","getBaseURL","useSessionSocket","baseURL","onRemoteSignOut","toast","info","contextValue","jsx","Provider","exports","useOxy","context","useContext","_default"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -17,8 +17,9 @@ function useSessionSocket({
|
|
|
17
17
|
onRemoteSignOut
|
|
18
18
|
}) {
|
|
19
19
|
const socketRef = (0, _react.useRef)(null);
|
|
20
|
+
const connectedRef = (0, _react.useRef)(false);
|
|
20
21
|
(0, _react.useEffect)(() => {
|
|
21
|
-
if (!userId || !baseURL) return;
|
|
22
|
+
if (!userId || !baseURL || connectedRef.current) return;
|
|
22
23
|
if (!socketRef.current) {
|
|
23
24
|
socketRef.current = (0, _socket.default)(baseURL, {
|
|
24
25
|
transports: ['websocket']
|
|
@@ -27,6 +28,7 @@ function useSessionSocket({
|
|
|
27
28
|
const socket = socketRef.current;
|
|
28
29
|
socket.on('connect', () => {
|
|
29
30
|
console.log('Socket connected:', socket.id);
|
|
31
|
+
connectedRef.current = true;
|
|
30
32
|
});
|
|
31
33
|
socket.emit('join', {
|
|
32
34
|
userId: `user:${userId}`
|
|
@@ -42,6 +44,7 @@ function useSessionSocket({
|
|
|
42
44
|
}
|
|
43
45
|
});
|
|
44
46
|
return () => {
|
|
47
|
+
connectedRef.current = false;
|
|
45
48
|
socket.emit('leave', {
|
|
46
49
|
userId: `user:${userId}`
|
|
47
50
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_socket","_interopRequireDefault","_sonner","e","__esModule","default","useSessionSocket","userId","activeSessionId","refreshSessions","logout","baseURL","onRemoteSignOut","socketRef","useRef","useEffect","current","io","transports","socket","on","console","log","id","emit","data","sessionId","toast","info","off"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionSocket.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAAyC,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAWlC,SAASG,gBAAgBA,CAAC;EAAEC,MAAM;EAAEC,eAAe;EAAEC,eAAe;EAAEC,MAAM;EAAEC,OAAO;EAAEC;AAAuC,CAAC,EAAE;EACtI,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"names":["_react","require","_socket","_interopRequireDefault","_sonner","e","__esModule","default","useSessionSocket","userId","activeSessionId","refreshSessions","logout","baseURL","onRemoteSignOut","socketRef","useRef","connectedRef","useEffect","current","io","transports","socket","on","console","log","id","emit","data","sessionId","toast","info","off"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionSocket.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAAyC,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAWlC,SAASG,gBAAgBA,CAAC;EAAEC,MAAM;EAAEC,eAAe;EAAEC,eAAe;EAAEC,MAAM;EAAEC,OAAO;EAAEC;AAAuC,CAAC,EAAE;EACtI,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAM,IAAI,CAAC;EACnC,MAAMC,YAAY,GAAG,IAAAD,aAAM,EAAC,KAAK,CAAC;EAElC,IAAAE,gBAAS,EAAC,MAAM;IACd,IAAI,CAACT,MAAM,IAAI,CAACI,OAAO,IAAII,YAAY,CAACE,OAAO,EAAE;IAEjD,IAAI,CAACJ,SAAS,CAACI,OAAO,EAAE;MACtBJ,SAAS,CAACI,OAAO,GAAG,IAAAC,eAAE,EAACP,OAAO,EAAE;QAC9BQ,UAAU,EAAE,CAAC,WAAW;MAC1B,CAAC,CAAC;IACJ;IACA,MAAMC,MAAM,GAAGP,SAAS,CAACI,OAAO;IAEhCG,MAAM,CAACC,EAAE,CAAC,SAAS,EAAE,MAAM;MACzBC,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAEH,MAAM,CAACI,EAAE,CAAC;MAC3CT,YAAY,CAACE,OAAO,GAAG,IAAI;IAC7B,CAAC,CAAC;IAEFG,MAAM,CAACK,IAAI,CAAC,MAAM,EAAE;MAAElB,MAAM,EAAE,QAAQA,MAAM;IAAG,CAAC,CAAC;IACjDe,OAAO,CAACC,GAAG,CAAC,yBAAyB,EAAE,QAAQhB,MAAM,EAAE,CAAC;IAExDa,MAAM,CAACC,EAAE,CAAC,gBAAgB,EAAGK,IAAyC,IAAK;MACzEJ,OAAO,CAACC,GAAG,CAAC,0BAA0B,EAAEG,IAAI,CAAC;MAC7C,IAAIA,IAAI,CAACC,SAAS,KAAKnB,eAAe,EAAE;QACtC,IAAII,eAAe,EAAEA,eAAe,CAAC,CAAC,CAAC,KAClCgB,aAAK,CAACC,IAAI,CAAC,oCAAoC,CAAC;QACrDnB,MAAM,CAAC,CAAC;MACV,CAAC,MAAM;QACLD,eAAe,CAAC,CAAC;MACnB;IACF,CAAC,CAAC;IAEF,OAAO,MAAM;MACXM,YAAY,CAACE,OAAO,GAAG,KAAK;MAC5BG,MAAM,CAACK,IAAI,CAAC,OAAO,EAAE;QAAElB,MAAM,EAAE,QAAQA,MAAM;MAAG,CAAC,CAAC;MAClDa,MAAM,CAACU,GAAG,CAAC,gBAAgB,CAAC;IAC9B,CAAC;EACH,CAAC,EAAE,CAACvB,MAAM,EAAEI,OAAO,EAAEH,eAAe,EAAEC,eAAe,EAAEC,MAAM,EAAEE,eAAe,CAAC,CAAC;AAClF","ignoreList":[]}
|
|
@@ -86,6 +86,18 @@ export const OxyContextProvider = ({
|
|
|
86
86
|
// Add a new state to track token restoration
|
|
87
87
|
const [tokenReady, setTokenReady] = React.useState(false);
|
|
88
88
|
|
|
89
|
+
// Add refs to prevent duplicate API calls
|
|
90
|
+
const initAuthRef = React.useRef(false);
|
|
91
|
+
const tokenRestoreRef = React.useRef(false);
|
|
92
|
+
|
|
93
|
+
// Development warning about React StrictMode
|
|
94
|
+
React.useEffect(() => {
|
|
95
|
+
if (__DEV__) {
|
|
96
|
+
console.log('🔍 OxyContext: React StrictMode may cause effects to run twice in development');
|
|
97
|
+
console.log('🔍 This is normal and helps detect side effects. Production builds will not have this behavior.');
|
|
98
|
+
}
|
|
99
|
+
}, []);
|
|
100
|
+
|
|
89
101
|
// Storage keys (memoized to prevent infinite loops)
|
|
90
102
|
const keys = useMemo(() => getSecureStorageKeys(storageKeyPrefix), [storageKeyPrefix]);
|
|
91
103
|
|
|
@@ -108,7 +120,11 @@ export const OxyContextProvider = ({
|
|
|
108
120
|
// Effect to initialize authentication state
|
|
109
121
|
useEffect(() => {
|
|
110
122
|
const initAuth = async () => {
|
|
111
|
-
if (!storage) return;
|
|
123
|
+
if (!storage || initAuthRef.current) return;
|
|
124
|
+
|
|
125
|
+
// Prevent multiple simultaneous initializations
|
|
126
|
+
if (isLoading) return;
|
|
127
|
+
initAuthRef.current = true;
|
|
112
128
|
useAuthStore.setState({
|
|
113
129
|
isLoading: true
|
|
114
130
|
});
|
|
@@ -197,15 +213,16 @@ export const OxyContextProvider = ({
|
|
|
197
213
|
});
|
|
198
214
|
}
|
|
199
215
|
};
|
|
200
|
-
if (storage) {
|
|
216
|
+
if (storage && !isLoading) {
|
|
201
217
|
initAuth();
|
|
202
218
|
}
|
|
203
|
-
}, [storage, oxyServices, keys,
|
|
219
|
+
}, [storage, oxyServices, keys.sessions, keys.activeSessionId]); // Removed onAuthStateChange from deps
|
|
204
220
|
|
|
205
|
-
// Effect to restore token on app load or session switch
|
|
221
|
+
// Effect to restore token on app load or session switch - with proper guards
|
|
206
222
|
useEffect(() => {
|
|
207
223
|
const restoreToken = async () => {
|
|
208
|
-
if (activeSessionId && oxyServices) {
|
|
224
|
+
if (activeSessionId && oxyServices && !tokenReady && !tokenRestoreRef.current) {
|
|
225
|
+
tokenRestoreRef.current = true;
|
|
209
226
|
try {
|
|
210
227
|
await oxyServices.getTokenBySession(activeSessionId);
|
|
211
228
|
setTokenReady(true);
|
|
@@ -214,13 +231,16 @@ export const OxyContextProvider = ({
|
|
|
214
231
|
await logout();
|
|
215
232
|
setTokenReady(false);
|
|
216
233
|
}
|
|
217
|
-
} else {
|
|
234
|
+
} else if (!activeSessionId && !tokenReady) {
|
|
218
235
|
setTokenReady(true); // No session, so token is not needed
|
|
219
236
|
}
|
|
220
237
|
};
|
|
221
|
-
|
|
222
|
-
// Only run
|
|
223
|
-
|
|
238
|
+
|
|
239
|
+
// Only run if we haven't already set tokenReady
|
|
240
|
+
if (!tokenReady) {
|
|
241
|
+
restoreToken();
|
|
242
|
+
}
|
|
243
|
+
}, [activeSessionId, oxyServices, tokenReady]); // Added tokenReady to prevent re-runs
|
|
224
244
|
|
|
225
245
|
// Remove invalid session
|
|
226
246
|
const removeInvalidSession = useCallback(async sessionId => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useContext","useEffect","useCallback","useMemo","DeviceManager","useSessionSocket","toast","useAuthStore","jsx","_jsx","OxyContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","default","error","console","Error","getSecureStorageKeys","prefix","sessions","activeSessionId","OxyContextProvider","children","oxyServices","storageKeyPrefix","onAuthStateChange","bottomSheetRef","user","state","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","useState","setSessions","setActiveSessionId","storage","setStorage","tokenReady","setTokenReady","keys","initStorage","platformStorage","setState","initAuth","sessionsData","storedActiveSessionId","log","parsedSessions","JSON","parse","migratedSessions","shouldUpdateStorage","session","userId","sessionUser","getUserBySession","sessionId","push","id","saveSessionsToStorage","length","activeSession","find","s","validation","validateSession","valid","getTokenBySession","fullUser","username","avatar","removeInvalidSession","err","clearAllStorage","restoreToken","filteredSessions","filter","switchToSession","sessionsList","stringify","saveActiveSessionId","login","password","deviceName","deviceFingerprint","getDeviceFingerprint","deviceInfo","getDeviceInfo","deviceId","response","secureLogin","getDefaultDeviceName","clientSession","expiresAt","lastActive","Date","toISOString","existingUserSessionIndex","findIndex","updatedSessions","existingSession","message","targetSessionId","sessionToLogout","logoutSecureSession","logoutAll","logoutAllSecureSessions","signUp","email","switchSession","removeSession","refreshSessions","serverSessions","getSessionsBySessionId","map","serverSession","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","current","expand","present","warn","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","getBaseURL","baseURL","onRemoteSignOut","info","contextValue","Provider","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,WAAW,EAAaC,OAAO,QAAQ,OAAO;AAIpG,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,gBAAgB,QAAQ,2BAA2B;AAC5D,SAASC,KAAK,QAAQ,kBAAkB;AACxC,SAASC,YAAY,QAAQ,qBAAqB;;AAElD;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAoCA;AACA,MAAMC,UAAU,gBAAGX,aAAa,CAAyB,IAAI,CAAC;;AAE9D;;AASA;;AAQA;AACA,MAAMY,UAAU,CAA6B;EAC3C,MAAMC,OAAOA,CAACC,GAAW,EAA0B;IACjD,OAAOC,YAAY,CAACF,OAAO,CAACC,GAAG,CAAC;EAClC;EAEA,MAAME,OAAOA,CAACF,GAAW,EAAEG,KAAa,EAAiB;IACvDF,YAAY,CAACC,OAAO,CAACF,GAAG,EAAEG,KAAK,CAAC;EAClC;EAEA,MAAMC,UAAUA,CAACJ,GAAW,EAAiB;IAC3CC,YAAY,CAACG,UAAU,CAACJ,GAAG,CAAC;EAC9B;EAEA,MAAMK,KAAKA,CAAA,EAAkB;IAC3BJ,YAAY,CAACI,KAAK,CAAC,CAAC;EACtB;AACF;;AAEA;AACA,IAAIC,YAA8B;;AAElC;AACA,MAAMC,aAAa,GAAGA,CAAA,KAAe;EACnC,OAAO,OAAOC,SAAS,KAAK,WAAW,IAAIA,SAAS,CAACC,OAAO,KAAK,aAAa;AAChF,CAAC;;AAED;AACA,MAAMC,UAAU,GAAG,MAAAA,CAAA,KAAuC;EACxD,IAAIH,aAAa,CAAC,CAAC,EAAE;IACnB,IAAI,CAACD,YAAY,EAAE;MACjB,IAAI;QACF,MAAMK,kBAAkB,GAAG,MAAM,MAAM,CAAC,2CAA2C,CAAC;QACpFL,YAAY,GAAIK,kBAAkB,CAACC,OAAuC;MAC5E,CAAC,CAAC,OAAOC,KAAK,EAAE;QACdC,OAAO,CAACD,KAAK,CAAC,gCAAgC,EAAEA,KAAK,CAAC;QACtD,MAAM,IAAIE,KAAK,CAAC,sDAAsD,CAAC;MACzE;IACF;IACA,OAAOT,YAAY;EACrB;EAEA,OAAO,IAAIR,UAAU,CAAC,CAAC;AACzB,CAAC;;AAED;AACA,MAAMkB,oBAAoB,GAAGA,CAACC,MAAM,GAAG,YAAY,MAAM;EACvDC,QAAQ,EAAE,GAAGD,MAAM,WAAW;EAAE;EAChCE,eAAe,EAAE,GAAGF,MAAM,oBAAoB,CAAE;AAClD,CAAC,CAAC;AAEF,OAAO,MAAMG,kBAAqD,GAAGA,CAAC;EACpEC,QAAQ;EACRC,WAAW;EACXC,gBAAgB,GAAG,YAAY;EAC/BC,iBAAiB;EACjBC;AACF,CAAC,KAAK;EACJ;EACA,MAAMC,IAAI,GAAGhC,YAAY,CAAEiC,KAAK,IAAKA,KAAK,CAACD,IAAI,CAAC;EAChD,MAAME,eAAe,GAAGlC,YAAY,CAAEiC,KAAK,IAAKA,KAAK,CAACC,eAAe,CAAC;EACtE,MAAMC,SAAS,GAAGnC,YAAY,CAAEiC,KAAK,IAAKA,KAAK,CAACE,SAAS,CAAC;EAC1D,MAAMhB,KAAK,GAAGnB,YAAY,CAAEiC,KAAK,IAAKA,KAAK,CAACd,KAAK,CAAC;EAClD,MAAMiB,YAAY,GAAGpC,YAAY,CAAEiC,KAAK,IAAKA,KAAK,CAACG,YAAY,CAAC;EAChE,MAAMC,YAAY,GAAGrC,YAAY,CAAEiC,KAAK,IAAKA,KAAK,CAACI,YAAY,CAAC;EAChE,MAAMC,WAAW,GAAGtC,YAAY,CAAEiC,KAAK,IAAKA,KAAK,CAACM,MAAM,CAAC;;EAEzD;EACA,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGlD,KAAK,CAACmD,QAAQ,CAAyB,IAAI,CAAC;EAClF,MAAM,CAAClB,QAAQ,EAAEmB,WAAW,CAAC,GAAGpD,KAAK,CAACmD,QAAQ,CAAwB,EAAE,CAAC;EACzE,MAAM,CAACjB,eAAe,EAAEmB,kBAAkB,CAAC,GAAGrD,KAAK,CAACmD,QAAQ,CAAgB,IAAI,CAAC;EACjF,MAAM,CAACG,OAAO,EAAEC,UAAU,CAAC,GAAGvD,KAAK,CAACmD,QAAQ,CAA0B,IAAI,CAAC;EAC3E;EACA,MAAM,CAACK,UAAU,EAAEC,aAAa,CAAC,GAAGzD,KAAK,CAACmD,QAAQ,CAAC,KAAK,CAAC;;EAEzD;EACA,MAAMO,IAAI,GAAGrD,OAAO,CAAC,MAAM0B,oBAAoB,CAACO,gBAAgB,CAAC,EAAE,CAACA,gBAAgB,CAAC,CAAC;;EAEtF;EACAnC,SAAS,CAAC,MAAM;IACd,MAAMwD,WAAW,GAAG,MAAAA,CAAA,KAAY;MAC9B,IAAI;QACF,MAAMC,eAAe,GAAG,MAAMnC,UAAU,CAAC,CAAC;QAC1C8B,UAAU,CAACK,eAAe,CAAC;MAC7B,CAAC,CAAC,OAAOhC,KAAK,EAAE;QACdC,OAAO,CAACD,KAAK,CAAC,+BAA+B,EAAEA,KAAK,CAAC;QACrDnB,YAAY,CAACoD,QAAQ,CAAC;UAAEjC,KAAK,EAAE;QAA+B,CAAC,CAAC;MAClE;IACF,CAAC;IAED+B,WAAW,CAAC,CAAC;EACf,CAAC,EAAE,EAAE,CAAC;;EAEN;EACAxD,SAAS,CAAC,MAAM;IACd,MAAM2D,QAAQ,GAAG,MAAAA,CAAA,KAAY;MAC3B,IAAI,CAACR,OAAO,EAAE;MAEd7C,YAAY,CAACoD,QAAQ,CAAC;QAAEjB,SAAS,EAAE;MAAK,CAAC,CAAC;MAC1C,IAAI;QACF;QACA,MAAMmB,YAAY,GAAG,MAAMT,OAAO,CAACxC,OAAO,CAAC4C,IAAI,CAACzB,QAAQ,CAAC;QACzD,MAAM+B,qBAAqB,GAAG,MAAMV,OAAO,CAACxC,OAAO,CAAC4C,IAAI,CAACxB,eAAe,CAAC;QAEzEL,OAAO,CAACoC,GAAG,CAAC,4BAA4B,EAAEF,YAAY,CAAC;QACvDlC,OAAO,CAACoC,GAAG,CAAC,+BAA+B,EAAED,qBAAqB,CAAC;QAEnE,IAAID,YAAY,EAAE;UAChB,MAAMG,cAAqC,GAAGC,IAAI,CAACC,KAAK,CAACL,YAAY,CAAC;;UAEtE;UACA,MAAMM,gBAAuC,GAAG,EAAE;UAClD,IAAIC,mBAAmB,GAAG,KAAK;UAE/B,KAAK,MAAMC,OAAO,IAAIL,cAAc,EAAE;YACpC,IAAI,CAACK,OAAO,CAACC,MAAM,EAAE;cACnB;cACA,IAAI;gBACF,MAAMC,WAAW,GAAG,MAAMpC,WAAW,CAACqC,gBAAgB,CAACH,OAAO,CAACI,SAAS,CAAC;gBACzEN,gBAAgB,CAACO,IAAI,CAAC;kBACpB,GAAGL,OAAO;kBACVC,MAAM,EAAEC,WAAW,CAACI;gBACtB,CAAC,CAAC;gBACFP,mBAAmB,GAAG,IAAI;gBAC1BzC,OAAO,CAACoC,GAAG,CAAC,oBAAoBM,OAAO,CAACI,SAAS,aAAaF,WAAW,CAACI,EAAE,EAAE,CAAC;cACjF,CAAC,CAAC,OAAOjD,KAAK,EAAE;gBACd;gBACAC,OAAO,CAACoC,GAAG,CAAC,4BAA4BM,OAAO,CAACI,SAAS,GAAG,EAAE/C,KAAK,CAAC;gBACpE0C,mBAAmB,GAAG,IAAI;cAC5B;YACF,CAAC,MAAM;cACL;cACAD,gBAAgB,CAACO,IAAI,CAACL,OAAO,CAAC;YAChC;UACF;;UAEA;UACA,IAAID,mBAAmB,EAAE;YACvB,MAAMQ,qBAAqB,CAACT,gBAAgB,CAAC;UAC/C;UAEAjB,WAAW,CAACiB,gBAAgB,CAAC;UAE7B,IAAIL,qBAAqB,IAAIK,gBAAgB,CAACU,MAAM,GAAG,CAAC,EAAE;YACxD,MAAMC,aAAa,GAAGX,gBAAgB,CAACY,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACP,SAAS,KAAKX,qBAAqB,CAAC;YAEvF,IAAIgB,aAAa,EAAE;cACjBnD,OAAO,CAACoC,GAAG,CAAC,mCAAmC,EAAEe,aAAa,CAAC;;cAE/D;cACA,IAAI;gBACF,MAAMG,UAAU,GAAG,MAAM9C,WAAW,CAAC+C,eAAe,CAACJ,aAAa,CAACL,SAAS,CAAC;gBAE7E,IAAIQ,UAAU,CAACE,KAAK,EAAE;kBACpBxD,OAAO,CAACoC,GAAG,CAAC,6CAA6C,CAAC;kBAC1DZ,kBAAkB,CAAC2B,aAAa,CAACL,SAAS,CAAC;;kBAE3C;kBACA,MAAMtC,WAAW,CAACiD,iBAAiB,CAACN,aAAa,CAACL,SAAS,CAAC;;kBAE5D;kBACA,MAAMY,QAAQ,GAAG,MAAMlD,WAAW,CAACqC,gBAAgB,CAACM,aAAa,CAACL,SAAS,CAAC;kBAC5E9B,YAAY,CAAC0C,QAAQ,CAAC;kBACtBrC,cAAc,CAAC;oBACb2B,EAAE,EAAEU,QAAQ,CAACV,EAAE;oBACfW,QAAQ,EAAED,QAAQ,CAACC,QAAQ;oBAC3BC,MAAM,EAAEF,QAAQ,CAACE;kBACnB,CAAC,CAAC;kBAEF,IAAIlD,iBAAiB,EAAE;oBACrBA,iBAAiB,CAACgD,QAAQ,CAAC;kBAC7B;gBACF,CAAC,MAAM;kBACL1D,OAAO,CAACoC,GAAG,CAAC,wCAAwC,CAAC;kBACrD,MAAMyB,oBAAoB,CAACV,aAAa,CAACL,SAAS,CAAC;gBACrD;cACF,CAAC,CAAC,OAAO/C,KAAK,EAAE;gBACdC,OAAO,CAACD,KAAK,CAAC,wCAAwC,EAAEA,KAAK,CAAC;gBAC9D,MAAM8D,oBAAoB,CAACV,aAAa,CAACL,SAAS,CAAC;cACrD;YACF;UACF;QACF;MACF,CAAC,CAAC,OAAOgB,GAAG,EAAE;QACZ9D,OAAO,CAACD,KAAK,CAAC,mCAAmC,EAAE+D,GAAG,CAAC;QACvD,MAAMC,eAAe,CAAC,CAAC;MACzB,CAAC,SAAS;QACRnF,YAAY,CAACoD,QAAQ,CAAC;UAAEjB,SAAS,EAAE;QAAM,CAAC,CAAC;MAC7C;IACF,CAAC;IAED,IAAIU,OAAO,EAAE;MACXQ,QAAQ,CAAC,CAAC;IACZ;EACF,CAAC,EAAE,CAACR,OAAO,EAAEjB,WAAW,EAAEqB,IAAI,EAAEnB,iBAAiB,CAAC,CAAC;;EAEnD;EACApC,SAAS,CAAC,MAAM;IACd,MAAM0F,YAAY,GAAG,MAAAA,CAAA,KAAY;MAC/B,IAAI3D,eAAe,IAAIG,WAAW,EAAE;QAClC,IAAI;UACF,MAAMA,WAAW,CAACiD,iBAAiB,CAACpD,eAAe,CAAC;UACpDuB,aAAa,CAAC,IAAI,CAAC;QACrB,CAAC,CAAC,OAAOkC,GAAG,EAAE;UACZ;UACA,MAAM3C,MAAM,CAAC,CAAC;UACdS,aAAa,CAAC,KAAK,CAAC;QACtB;MACF,CAAC,MAAM;QACLA,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;MACvB;IACF,CAAC;IACDoC,YAAY,CAAC,CAAC;IACd;EACF,CAAC,EAAE,CAAC3D,eAAe,EAAEG,WAAW,CAAC,CAAC;;EAElC;EACA,MAAMqD,oBAAoB,GAAGtF,WAAW,CAAC,MAAOuE,SAAiB,IAAoB;IACnF,MAAMmB,gBAAgB,GAAG7D,QAAQ,CAAC8D,MAAM,CAACb,CAAC,IAAIA,CAAC,CAACP,SAAS,KAAKA,SAAS,CAAC;IACxEvB,WAAW,CAAC0C,gBAAgB,CAAC;IAC7B,MAAMhB,qBAAqB,CAACgB,gBAAgB,CAAC;;IAE7C;IACA,IAAIA,gBAAgB,CAACf,MAAM,GAAG,CAAC,EAAE;MAC/B,MAAMiB,eAAe,CAACF,gBAAgB,CAAC,CAAC,CAAC,CAACnB,SAAS,CAAC;IACtD,CAAC,MAAM;MACL;MACAtB,kBAAkB,CAAC,IAAI,CAAC;MACxBN,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAMI,OAAO,EAAEnC,UAAU,CAACuC,IAAI,CAACxB,eAAe,CAAC;MAE/C,IAAIK,iBAAiB,EAAE;QACrBA,iBAAiB,CAAC,IAAI,CAAC;MACzB;IACF;EACF,CAAC,EAAE,CAACN,QAAQ,EAAEqB,OAAO,EAAEI,IAAI,EAAEnB,iBAAiB,EAAEQ,WAAW,CAAC,CAAC;;EAE7D;EACA,MAAM+B,qBAAqB,GAAG1E,WAAW,CAAC,MAAO6F,YAAmC,IAAoB;IACtG,IAAI,CAAC3C,OAAO,EAAE;IACd,MAAMA,OAAO,CAACrC,OAAO,CAACyC,IAAI,CAACzB,QAAQ,EAAEkC,IAAI,CAAC+B,SAAS,CAACD,YAAY,CAAC,CAAC;EACpE,CAAC,EAAE,CAAC3C,OAAO,EAAEI,IAAI,CAACzB,QAAQ,CAAC,CAAC;;EAE5B;EACA,MAAMkE,mBAAmB,GAAG/F,WAAW,CAAC,MAAOuE,SAAiB,IAAoB;IAClF,IAAI,CAACrB,OAAO,EAAE;IACd,MAAMA,OAAO,CAACrC,OAAO,CAACyC,IAAI,CAACxB,eAAe,EAAEyC,SAAS,CAAC;EACxD,CAAC,EAAE,CAACrB,OAAO,EAAEI,IAAI,CAACxB,eAAe,CAAC,CAAC;;EAEnC;EACA,MAAM0D,eAAe,GAAGxF,WAAW,CAAC,YAA2B;IAC7D,IAAI,CAACkD,OAAO,EAAE;IACd,IAAI;MACF,MAAMA,OAAO,CAACnC,UAAU,CAACuC,IAAI,CAACzB,QAAQ,CAAC;MACvC,MAAMqB,OAAO,CAACnC,UAAU,CAACuC,IAAI,CAACxB,eAAe,CAAC;IAChD,CAAC,CAAC,OAAOyD,GAAG,EAAE;MACZ9D,OAAO,CAACD,KAAK,CAAC,6BAA6B,EAAE+D,GAAG,CAAC;IACnD;EACF,CAAC,EAAE,CAACrC,OAAO,EAAEI,IAAI,CAAC,CAAC;;EAEnB;EACA,MAAMsC,eAAe,GAAG5F,WAAW,CAAC,MAAOuE,SAAiB,IAAoB;IAC9E,IAAI;MACFlE,YAAY,CAACoD,QAAQ,CAAC;QAAEjB,SAAS,EAAE;MAAK,CAAC,CAAC;;MAE1C;MACA,MAAMP,WAAW,CAACiD,iBAAiB,CAACX,SAAS,CAAC;;MAE9C;MACA,MAAMY,QAAQ,GAAG,MAAMlD,WAAW,CAACqC,gBAAgB,CAACC,SAAS,CAAC;MAE9DtB,kBAAkB,CAACsB,SAAS,CAAC;MAC7B9B,YAAY,CAAC0C,QAAQ,CAAC;MACtBrC,cAAc,CAAC;QACb2B,EAAE,EAAEU,QAAQ,CAACV,EAAE;QACfW,QAAQ,EAAED,QAAQ,CAACC,QAAQ;QAC3BC,MAAM,EAAEF,QAAQ,CAACE;MACnB,CAAC,CAAC;MAEF,MAAMU,mBAAmB,CAACxB,SAAS,CAAC;MAEpC,IAAIpC,iBAAiB,EAAE;QACrBA,iBAAiB,CAACgD,QAAQ,CAAC;MAC7B;IACF,CAAC,CAAC,OAAO3D,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,uBAAuB,EAAEA,KAAK,CAAC;MAC7CnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjC,KAAK,EAAE;MAA2B,CAAC,CAAC;IAC9D,CAAC,SAAS;MACRnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjB,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC,EAAE,CAACP,WAAW,EAAEE,iBAAiB,EAAEM,YAAY,EAAEsD,mBAAmB,CAAC,CAAC;;EAEvE;EACA,MAAMC,KAAK,GAAG,MAAAA,CAAOZ,QAAgB,EAAEa,QAAgB,EAAEC,UAAmB,KAAoB;IAC9F,IAAI,CAAChD,OAAO,EAAE,MAAM,IAAIxB,KAAK,CAAC,yBAAyB,CAAC;IACxDrB,YAAY,CAACoD,QAAQ,CAAC;MAAEjB,SAAS,EAAE,IAAI;MAAEhB,KAAK,EAAE;IAAK,CAAC,CAAC;IAEvD,IAAI;MACF;MACA,MAAM2E,iBAAiB,GAAGjG,aAAa,CAACkG,oBAAoB,CAAC,CAAC;;MAE9D;MACA,MAAMC,UAAU,GAAG,MAAMnG,aAAa,CAACoG,aAAa,CAAC,CAAC;MAEtD7E,OAAO,CAACoC,GAAG,CAAC,wCAAwC,EAAEsC,iBAAiB,CAAC;MACxE1E,OAAO,CAACoC,GAAG,CAAC,+BAA+B,EAAEwC,UAAU,CAACE,QAAQ,CAAC;MAEjE,MAAMC,QAA6B,GAAG,MAAMvE,WAAW,CAACwE,WAAW,CACjErB,QAAQ,EACRa,QAAQ,EACRC,UAAU,IAAIG,UAAU,CAACH,UAAU,IAAIhG,aAAa,CAACwG,oBAAoB,CAAC,CAAC,EAC3EP,iBACF,CAAC;;MAED;MACA,MAAMQ,aAAkC,GAAG;QACzCpC,SAAS,EAAEiC,QAAQ,CAACjC,SAAS;QAC7BgC,QAAQ,EAAEC,QAAQ,CAACD,QAAQ;QAC3BK,SAAS,EAAEJ,QAAQ,CAACI,SAAS;QAC7BC,UAAU,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;QACpC3C,MAAM,EAAEoC,QAAQ,CAACnE,IAAI,CAACoC;MACxB,CAAC;;MAED;MACA,MAAMuC,wBAAwB,GAAGnF,QAAQ,CAACoF,SAAS,CAACnC,CAAC,IACnDA,CAAC,CAACV,MAAM,KAAKoC,QAAQ,CAACnE,IAAI,CAACoC,EAC7B,CAAC;MAED,IAAIyC,eAAsC;MAE1C,IAAIF,wBAAwB,KAAK,CAAC,CAAC,EAAE;QACnC;QACA,MAAMG,eAAe,GAAGtF,QAAQ,CAACmF,wBAAwB,CAAC;QAC1DE,eAAe,GAAG,CAAC,GAAGrF,QAAQ,CAAC;QAC/BqF,eAAe,CAACF,wBAAwB,CAAC,GAAGL,aAAa;QAEzDlF,OAAO,CAACoC,GAAG,CAAC,8CAA8C2C,QAAQ,CAACnE,IAAI,CAACoC,EAAE,uBAAuB0C,eAAe,CAAC5C,SAAS,kBAAkBiC,QAAQ,CAACjC,SAAS,EAAE,CAAC;;QAEjK;QACA,IAAIzC,eAAe,KAAKqF,eAAe,CAAC5C,SAAS,EAAE;UACjDtB,kBAAkB,CAACuD,QAAQ,CAACjC,SAAS,CAAC;UACtC,MAAMwB,mBAAmB,CAACS,QAAQ,CAACjC,SAAS,CAAC;QAC/C;MACF,CAAC,MAAM;QACL;QACA2C,eAAe,GAAG,CAAC,GAAGrF,QAAQ,EAAE8E,aAAa,CAAC;QAC9ClF,OAAO,CAACoC,GAAG,CAAC,8BAA8B2C,QAAQ,CAACnE,IAAI,CAACoC,EAAE,cAAc+B,QAAQ,CAACD,QAAQ,EAAE,CAAC;MAC9F;MAEAvD,WAAW,CAACkE,eAAe,CAAC;MAC5B,MAAMxC,qBAAqB,CAACwC,eAAe,CAAC;;MAE5C;MACAjE,kBAAkB,CAACuD,QAAQ,CAACjC,SAAS,CAAC;MACtC,MAAMwB,mBAAmB,CAACS,QAAQ,CAACjC,SAAS,CAAC;;MAE7C;MACA,MAAMtC,WAAW,CAACiD,iBAAiB,CAACsB,QAAQ,CAACjC,SAAS,CAAC;;MAEvD;MACA,MAAMY,QAAQ,GAAG,MAAMlD,WAAW,CAACqC,gBAAgB,CAACkC,QAAQ,CAACjC,SAAS,CAAC;MACvE9B,YAAY,CAAC0C,QAAQ,CAAC;MACtBrC,cAAc,CAAC0D,QAAQ,CAACnE,IAAI,CAAC;MAE7B,IAAIF,iBAAiB,EAAE;QACrBA,iBAAiB,CAACgD,QAAQ,CAAC;MAC7B;MAEA,OAAOA,QAAQ;IACjB,CAAC,CAAC,OAAO3D,KAAU,EAAE;MACnBkB,YAAY,CAAClB,KAAK,CAAC4F,OAAO,IAAI,cAAc,CAAC;MAC7C,MAAM5F,KAAK;IACb,CAAC,SAAS;MACRnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjB,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC;;EAED;EACA,MAAMI,MAAM,GAAG,MAAOyE,eAAwB,IAAoB;IAChE,IAAI,CAACvF,eAAe,EAAE;IAEtB,IAAI;MACF,MAAMwF,eAAe,GAAGD,eAAe,IAAIvF,eAAe;MAC1D,MAAMG,WAAW,CAACsF,mBAAmB,CAACzF,eAAe,EAAEwF,eAAe,CAAC;;MAEvE;MACA,MAAM5B,gBAAgB,GAAG7D,QAAQ,CAAC8D,MAAM,CAACb,CAAC,IAAIA,CAAC,CAACP,SAAS,KAAK+C,eAAe,CAAC;MAC9EtE,WAAW,CAAC0C,gBAAgB,CAAC;MAC7B,MAAMhB,qBAAqB,CAACgB,gBAAgB,CAAC;;MAE7C;MACA,IAAI4B,eAAe,KAAKxF,eAAe,EAAE;QACvC,IAAI4D,gBAAgB,CAACf,MAAM,GAAG,CAAC,EAAE;UAC/B;UACA,MAAMiB,eAAe,CAACF,gBAAgB,CAAC,CAAC,CAAC,CAACnB,SAAS,CAAC;QACtD,CAAC,MAAM;UACL;UACAtB,kBAAkB,CAAC,IAAI,CAAC;UACxBN,WAAW,CAAC,CAAC;UACbG,cAAc,CAAC,IAAI,CAAC;UACpB,MAAMI,OAAO,EAAEnC,UAAU,CAACuC,IAAI,CAACxB,eAAe,CAAC;UAE/C,IAAIK,iBAAiB,EAAE;YACrBA,iBAAiB,CAAC,IAAI,CAAC;UACzB;QACF;MACF;IACF,CAAC,CAAC,OAAOX,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,eAAe,EAAEA,KAAK,CAAC;MACrCnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjC,KAAK,EAAE;MAAgB,CAAC,CAAC;IACnD;EACF,CAAC;;EAED;EACA,MAAMgG,SAAS,GAAG,MAAAA,CAAA,KAA2B;IAC3C/F,OAAO,CAACoC,GAAG,CAAC,wCAAwC,EAAE/B,eAAe,CAAC;IAEtE,IAAI,CAACA,eAAe,EAAE;MACpBL,OAAO,CAACD,KAAK,CAAC,+CAA+C,CAAC;MAC9DnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjC,KAAK,EAAE;MAA0B,CAAC,CAAC;MAC3D,MAAM,IAAIE,KAAK,CAAC,yBAAyB,CAAC;IAC5C;IAEA,IAAI,CAACO,WAAW,EAAE;MAChBR,OAAO,CAACD,KAAK,CAAC,6BAA6B,CAAC;MAC5CnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjC,KAAK,EAAE;MAAwB,CAAC,CAAC;MACzD,MAAM,IAAIE,KAAK,CAAC,uBAAuB,CAAC;IAC1C;IAEA,IAAI;MACFD,OAAO,CAACoC,GAAG,CAAC,6DAA6D,EAAE/B,eAAe,CAAC;MAC3F,MAAMG,WAAW,CAACwF,uBAAuB,CAAC3F,eAAe,CAAC;MAC1DL,OAAO,CAACoC,GAAG,CAAC,gDAAgD,CAAC;;MAE7D;MACAb,WAAW,CAAC,EAAE,CAAC;MACfC,kBAAkB,CAAC,IAAI,CAAC;MACxBN,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAM0C,eAAe,CAAC,CAAC;MACvB/D,OAAO,CAACoC,GAAG,CAAC,uBAAuB,CAAC;MAEpC,IAAI1B,iBAAiB,EAAE;QACrBA,iBAAiB,CAAC,IAAI,CAAC;QACvBV,OAAO,CAACoC,GAAG,CAAC,mCAAmC,CAAC;MAClD;IACF,CAAC,CAAC,OAAOrC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,mBAAmB,EAAEA,KAAK,CAAC;MACzCnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjC,KAAK,EAAE,sBAAsBA,KAAK,YAAYE,KAAK,GAAGF,KAAK,CAAC4F,OAAO,GAAG,eAAe;MAAG,CAAC,CAAC;MAClH,MAAM5F,KAAK;IACb;EACF,CAAC;;EAED;EACA,MAAMkG,MAAM,GAAG,MAAAA,CAAOtC,QAAgB,EAAEuC,KAAa,EAAE1B,QAAgB,KAAoB;IACzF,IAAI,CAAC/C,OAAO,EAAE,MAAM,IAAIxB,KAAK,CAAC,yBAAyB,CAAC;IAExDrB,YAAY,CAACoD,QAAQ,CAAC;MAAEjB,SAAS,EAAE,IAAI;MAAEhB,KAAK,EAAE;IAAK,CAAC,CAAC;IAEvD,IAAI;MACF;MACA,MAAMgF,QAAQ,GAAG,MAAMvE,WAAW,CAACyF,MAAM,CAACtC,QAAQ,EAAEuC,KAAK,EAAE1B,QAAQ,CAAC;MAEpExE,OAAO,CAACoC,GAAG,CAAC,oBAAoB,EAAE2C,QAAQ,CAAC;;MAE3C;MACA;MACA,MAAMnE,IAAI,GAAG,MAAM2D,KAAK,CAACZ,QAAQ,EAAEa,QAAQ,CAAC;MAE5C,OAAO5D,IAAI;IACb,CAAC,CAAC,OAAOb,KAAU,EAAE;MACnBkB,YAAY,CAAClB,KAAK,CAAC4F,OAAO,IAAI,gBAAgB,CAAC;MAC/C,MAAM5F,KAAK;IACb,CAAC,SAAS;MACRnB,YAAY,CAACoD,QAAQ,CAAC;QAAEjB,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC;;EAED;EACA,MAAMoF,aAAa,GAAG,MAAOrD,SAAiB,IAAoB;IAChE,MAAMqB,eAAe,CAACrB,SAAS,CAAC;EAClC,CAAC;;EAED;EACA,MAAMsD,aAAa,GAAG,MAAOtD,SAAiB,IAAoB;IAChE,MAAM3B,MAAM,CAAC2B,SAAS,CAAC;EACzB,CAAC;;EAED;EACA,MAAMuD,eAAe,GAAG,MAAAA,CAAA,KAA2B;IACjD,IAAI,CAAChG,eAAe,EAAE;IAEtB,IAAI;MACF,MAAMiG,cAAc,GAAG,MAAM9F,WAAW,CAAC+F,sBAAsB,CAAClG,eAAe,CAAC;;MAEhF;MACA,MAAMoF,eAAsC,GAAGa,cAAc,CAACE,GAAG,CAACC,aAAa,KAAK;QAClF3D,SAAS,EAAE2D,aAAa,CAAC3D,SAAS;QAClCgC,QAAQ,EAAE2B,aAAa,CAAC3B,QAAQ;QAChCK,SAAS,EAAE,IAAIE,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;QAAE;QACrCF,UAAU,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC;MACrC,CAAC,CAAC,CAAC;MAEH/D,WAAW,CAACkE,eAAe,CAAC;MAC5B,MAAMxC,qBAAqB,CAACwC,eAAe,CAAC;IAC9C,CAAC,CAAC,OAAO1F,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,yBAAyB,EAAEA,KAAK,CAAC;IACjD;EACF,CAAC;;EAED;EACA,MAAM2G,iBAAiB,GAAG,MAAAA,CAAA,KAA4B;IACpD,IAAI,CAACrG,eAAe,EAAE,MAAM,IAAIJ,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,OAAO,MAAMO,WAAW,CAACkG,iBAAiB,CAACrG,eAAe,CAAC;IAC7D,CAAC,CAAC,OAAON,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,4BAA4B,EAAEA,KAAK,CAAC;MAClD,MAAMA,KAAK;IACb;EACF,CAAC;EAED,MAAM4G,uBAAuB,GAAG,MAAAA,CAAA,KAA2B;IACzD,IAAI,CAACtG,eAAe,EAAE,MAAM,IAAIJ,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,MAAMO,WAAW,CAACmG,uBAAuB,CAACtG,eAAe,CAAC;;MAE1D;MACAkB,WAAW,CAAC,EAAE,CAAC;MACfC,kBAAkB,CAAC,IAAI,CAAC;MACxBN,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAM0C,eAAe,CAAC,CAAC;MAEvB,IAAIrD,iBAAiB,EAAE;QACrBA,iBAAiB,CAAC,IAAI,CAAC;MACzB;IACF,CAAC,CAAC,OAAOX,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,mCAAmC,EAAEA,KAAK,CAAC;MACzD,MAAMA,KAAK;IACb;EACF,CAAC;EAED,MAAM6G,gBAAgB,GAAG,MAAOnC,UAAkB,IAAoB;IACpE,IAAI,CAACpE,eAAe,EAAE,MAAM,IAAIJ,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,MAAMO,WAAW,CAACoG,gBAAgB,CAACvG,eAAe,EAAEoE,UAAU,CAAC;;MAE/D;MACA,MAAMhG,aAAa,CAACmI,gBAAgB,CAACnC,UAAU,CAAC;IAClD,CAAC,CAAC,OAAO1E,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC;MACjD,MAAMA,KAAK;IACb;EACF,CAAC;;EAED;EACA,MAAM8G,eAAe,GAAGtI,WAAW,CAAEuI,cAAyE,IAAK;IACjH9G,OAAO,CAACoC,GAAG,CAAC,8BAA8B,EAAE0E,cAAc,CAAC;IAE3D,IAAInG,cAAc,EAAEoG,OAAO,EAAE;MAC3B/G,OAAO,CAACoC,GAAG,CAAC,6BAA6B,CAAC;;MAE1C;MACA,IAAIzB,cAAc,CAACoG,OAAO,CAACC,MAAM,EAAE;QACjChH,OAAO,CAACoC,GAAG,CAAC,wBAAwB,CAAC;QACrCzB,cAAc,CAACoG,OAAO,CAACC,MAAM,CAAC,CAAC;MACjC,CAAC,MAAM,IAAIrG,cAAc,CAACoG,OAAO,CAACE,OAAO,EAAE;QACzCjH,OAAO,CAACoC,GAAG,CAAC,yBAAyB,CAAC;QACtCzB,cAAc,CAACoG,OAAO,CAACE,OAAO,CAAC,CAAC;MAClC,CAAC,MAAM;QACLjH,OAAO,CAACkH,IAAI,CAAC,yDAAyD,CAAC;MACzE;;MAEA;MACA,IAAIJ,cAAc,EAAE;QAClB;QACAK,UAAU,CAAC,MAAM;UACf,IAAI,OAAOL,cAAc,KAAK,QAAQ,EAAE;YACtC;YACA9G,OAAO,CAACoC,GAAG,CAAC,uBAAuB,EAAE0E,cAAc,CAAC;YACpDnG,cAAc,CAACoG,OAAO,EAAEK,iBAAiB,GAAGN,cAAc,CAAC;UAC7D,CAAC,MAAM;YACL;YACA9G,OAAO,CAACoC,GAAG,CAAC,kCAAkC,EAAE0E,cAAc,CAACO,MAAM,EAAEP,cAAc,CAACQ,KAAK,CAAC;YAC5F3G,cAAc,CAACoG,OAAO,EAAEK,iBAAiB,GAAGN,cAAc,CAACO,MAAM,EAAEP,cAAc,CAACQ,KAAK,CAAC;UAC1F;QACF,CAAC,EAAE,GAAG,CAAC;MACT;IACF,CAAC,MAAM;MACLtH,OAAO,CAACkH,IAAI,CAAC,iCAAiC,CAAC;IACjD;EACF,CAAC,EAAE,CAACvG,cAAc,CAAC,CAAC;EAEpB,MAAM4G,eAAe,GAAGhJ,WAAW,CAAC,MAAM;IACxC,IAAIoC,cAAc,EAAEoG,OAAO,EAAE;MAC3BpG,cAAc,CAACoG,OAAO,CAACS,OAAO,GAAG,CAAC;IACpC;EACF,CAAC,EAAE,CAAC7G,cAAc,CAAC,CAAC;;EAEpB;EACAX,OAAO,CAACoC,GAAG,CAAC,4BAA4B,EAAExB,IAAI,EAAEoC,EAAE,EAAE,SAAS,EAAExC,WAAW,CAACiH,UAAU,CAAC,CAAC,CAAC;EACxF/I,gBAAgB,CAAC;IACfiE,MAAM,EAAE/B,IAAI,EAAEoC,EAAE;IAChB3C,eAAe;IACfgG,eAAe;IACflF,MAAM,EAAEA,CAAA,KAAMA,MAAM,CAAC,CAAC;IACtBuG,OAAO,EAAElH,WAAW,CAACiH,UAAU,CAAC,CAAC;IACjCE,eAAe,EAAEA,CAAA,KAAM;MACrBhJ,KAAK,CAACiJ,IAAI,CAAC,oCAAoC,CAAC;MAChDzG,MAAM,CAAC,CAAC;IACV;EACF,CAAC,CAAC;;EAEF;EACA,MAAM0G,YAA6B,GAAG;IACpCjH,IAAI;IACJQ,WAAW;IACXhB,QAAQ;IACRC,eAAe;IACfS,eAAe;IACfC,SAAS;IACThB,KAAK;IACLwE,KAAK;IACLpD,MAAM;IACN4E,SAAS,EAAE,MAAAA,CAAA,KAAY;MAAE,MAAM5E,MAAM,CAAC,CAAC;IAAE,CAAC;IAC1C8E,MAAM,EAAE,MAAAA,CAAOtC,QAAQ,EAAEuC,KAAK,EAAE1B,QAAQ,KAAK;MAC3C,MAAMyB,MAAM,CAACtC,QAAQ,EAAEuC,KAAK,EAAE1B,QAAQ,CAAC;MACvC,OAAO5D,IAAI,CAAS,CAAC;IACvB,CAAC;IACDuF,aAAa,EAAE,MAAOrD,SAAS,IAAK;MAAE,MAAMqB,eAAe,CAACrB,SAAS,CAAC;IAAE,CAAC;IACzEsD,aAAa,EAAE,MAAOtD,SAAS,IAAK;MAAE,MAAMsD,aAAa,CAACtD,SAAS,CAAC;IAAE,CAAC;IACvEuD,eAAe,EAAE,MAAAA,CAAA,KAAY;MAAE,MAAMA,eAAe,CAAC,CAAC;IAAE,CAAC;IACzDK,iBAAiB,EAAE,MAAAA,CAAA,KAAY;MAAE,OAAO,MAAMA,iBAAiB,CAAC,CAAC;IAAE,CAAC;IACpEC,uBAAuB,EAAE,MAAAA,CAAA,KAAY;MAAE,MAAMA,uBAAuB,CAAC,CAAC;IAAE,CAAC;IACzEC,gBAAgB,EAAE,MAAOnC,UAAU,IAAK;MAAE,MAAMmC,gBAAgB,CAACnC,UAAU,CAAC;IAAE,CAAC;IAC/EjE,WAAW;IACXG,cAAc;IACdkG,eAAe;IACfU;EACF,CAAC;;EAED;EACA,IAAI,CAAC5F,UAAU,EAAE;IACf,oBAAO7C,IAAA;MAAAyB,QAAA,EAAK;IAAyB,CAAK,CAAC;EAC7C;EAEA,oBACEzB,IAAA,CAACC,UAAU,CAAC+I,QAAQ;IAACzI,KAAK,EAAEwI,YAAa;IAAAtH,QAAA,EACtCA;EAAQ,CACU,CAAC;AAE1B,CAAC;;AAED;AACA,OAAO,MAAMwH,MAAM,GAAGA,CAAA,KAAuB;EAC3C,MAAMC,OAAO,GAAG3J,UAAU,CAACU,UAAU,CAAC;EACtC,IAAI,CAACiJ,OAAO,EAAE;IACZ,MAAM,IAAI/H,KAAK,CAAC,kDAAkD,CAAC;EACrE;EACA,OAAO+H,OAAO;AAChB,CAAC;AAED,eAAejJ,UAAU","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","createContext","useContext","useEffect","useCallback","useMemo","DeviceManager","useSessionSocket","toast","useAuthStore","jsx","_jsx","OxyContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","default","error","console","Error","getSecureStorageKeys","prefix","sessions","activeSessionId","OxyContextProvider","children","oxyServices","storageKeyPrefix","onAuthStateChange","bottomSheetRef","user","state","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","useState","setSessions","setActiveSessionId","storage","setStorage","tokenReady","setTokenReady","initAuthRef","useRef","tokenRestoreRef","__DEV__","log","keys","initStorage","platformStorage","setState","initAuth","current","sessionsData","storedActiveSessionId","parsedSessions","JSON","parse","migratedSessions","shouldUpdateStorage","session","userId","sessionUser","getUserBySession","sessionId","push","id","saveSessionsToStorage","length","activeSession","find","s","validation","validateSession","valid","getTokenBySession","fullUser","username","avatar","removeInvalidSession","err","clearAllStorage","restoreToken","filteredSessions","filter","switchToSession","sessionsList","stringify","saveActiveSessionId","login","password","deviceName","deviceFingerprint","getDeviceFingerprint","deviceInfo","getDeviceInfo","deviceId","response","secureLogin","getDefaultDeviceName","clientSession","expiresAt","lastActive","Date","toISOString","existingUserSessionIndex","findIndex","updatedSessions","existingSession","message","targetSessionId","sessionToLogout","logoutSecureSession","logoutAll","logoutAllSecureSessions","signUp","email","switchSession","removeSession","refreshSessions","serverSessions","getSessionsBySessionId","map","serverSession","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","expand","present","warn","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","getBaseURL","baseURL","onRemoteSignOut","info","contextValue","Provider","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,8 +12,9 @@ export function useSessionSocket({
|
|
|
12
12
|
onRemoteSignOut
|
|
13
13
|
}) {
|
|
14
14
|
const socketRef = useRef(null);
|
|
15
|
+
const connectedRef = useRef(false);
|
|
15
16
|
useEffect(() => {
|
|
16
|
-
if (!userId || !baseURL) return;
|
|
17
|
+
if (!userId || !baseURL || connectedRef.current) return;
|
|
17
18
|
if (!socketRef.current) {
|
|
18
19
|
socketRef.current = io(baseURL, {
|
|
19
20
|
transports: ['websocket']
|
|
@@ -22,6 +23,7 @@ export function useSessionSocket({
|
|
|
22
23
|
const socket = socketRef.current;
|
|
23
24
|
socket.on('connect', () => {
|
|
24
25
|
console.log('Socket connected:', socket.id);
|
|
26
|
+
connectedRef.current = true;
|
|
25
27
|
});
|
|
26
28
|
socket.emit('join', {
|
|
27
29
|
userId: `user:${userId}`
|
|
@@ -37,6 +39,7 @@ export function useSessionSocket({
|
|
|
37
39
|
}
|
|
38
40
|
});
|
|
39
41
|
return () => {
|
|
42
|
+
connectedRef.current = false;
|
|
40
43
|
socket.emit('leave', {
|
|
41
44
|
userId: `user:${userId}`
|
|
42
45
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","io","toast","useSessionSocket","userId","activeSessionId","refreshSessions","logout","baseURL","onRemoteSignOut","socketRef","current","transports","socket","on","console","log","id","emit","data","sessionId","info","off"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionSocket.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,OAAOC,EAAE,MAAM,kBAAkB;AACjC,SAASC,KAAK,QAAQ,kBAAkB;AAWxC,OAAO,SAASC,gBAAgBA,CAAC;EAAEC,MAAM;EAAEC,eAAe;EAAEC,eAAe;EAAEC,MAAM;EAAEC,OAAO;EAAEC;AAAuC,CAAC,EAAE;EACtI,MAAMC,SAAS,GAAGV,MAAM,CAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","io","toast","useSessionSocket","userId","activeSessionId","refreshSessions","logout","baseURL","onRemoteSignOut","socketRef","connectedRef","current","transports","socket","on","console","log","id","emit","data","sessionId","info","off"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionSocket.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,OAAOC,EAAE,MAAM,kBAAkB;AACjC,SAASC,KAAK,QAAQ,kBAAkB;AAWxC,OAAO,SAASC,gBAAgBA,CAAC;EAAEC,MAAM;EAAEC,eAAe;EAAEC,eAAe;EAAEC,MAAM;EAAEC,OAAO;EAAEC;AAAuC,CAAC,EAAE;EACtI,MAAMC,SAAS,GAAGV,MAAM,CAAM,IAAI,CAAC;EACnC,MAAMW,YAAY,GAAGX,MAAM,CAAC,KAAK,CAAC;EAElCD,SAAS,CAAC,MAAM;IACd,IAAI,CAACK,MAAM,IAAI,CAACI,OAAO,IAAIG,YAAY,CAACC,OAAO,EAAE;IAEjD,IAAI,CAACF,SAAS,CAACE,OAAO,EAAE;MACtBF,SAAS,CAACE,OAAO,GAAGX,EAAE,CAACO,OAAO,EAAE;QAC9BK,UAAU,EAAE,CAAC,WAAW;MAC1B,CAAC,CAAC;IACJ;IACA,MAAMC,MAAM,GAAGJ,SAAS,CAACE,OAAO;IAEhCE,MAAM,CAACC,EAAE,CAAC,SAAS,EAAE,MAAM;MACzBC,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAEH,MAAM,CAACI,EAAE,CAAC;MAC3CP,YAAY,CAACC,OAAO,GAAG,IAAI;IAC7B,CAAC,CAAC;IAEFE,MAAM,CAACK,IAAI,CAAC,MAAM,EAAE;MAAEf,MAAM,EAAE,QAAQA,MAAM;IAAG,CAAC,CAAC;IACjDY,OAAO,CAACC,GAAG,CAAC,yBAAyB,EAAE,QAAQb,MAAM,EAAE,CAAC;IAExDU,MAAM,CAACC,EAAE,CAAC,gBAAgB,EAAGK,IAAyC,IAAK;MACzEJ,OAAO,CAACC,GAAG,CAAC,0BAA0B,EAAEG,IAAI,CAAC;MAC7C,IAAIA,IAAI,CAACC,SAAS,KAAKhB,eAAe,EAAE;QACtC,IAAII,eAAe,EAAEA,eAAe,CAAC,CAAC,CAAC,KAClCP,KAAK,CAACoB,IAAI,CAAC,oCAAoC,CAAC;QACrDf,MAAM,CAAC,CAAC;MACV,CAAC,MAAM;QACLD,eAAe,CAAC,CAAC;MACnB;IACF,CAAC,CAAC;IAEF,OAAO,MAAM;MACXK,YAAY,CAACC,OAAO,GAAG,KAAK;MAC5BE,MAAM,CAACK,IAAI,CAAC,OAAO,EAAE;QAAEf,MAAM,EAAE,QAAQA,MAAM;MAAG,CAAC,CAAC;MAClDU,MAAM,CAACS,GAAG,CAAC,gBAAgB,CAAC;IAC9B,CAAC;EACH,CAAC,EAAE,CAACnB,MAAM,EAAEI,OAAO,EAAEH,eAAe,EAAEC,eAAe,EAAEC,MAAM,EAAEE,eAAe,CAAC,CAAC;AAClF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAqD,SAAS,EAAW,MAAM,OAAO,CAAC;AACrG,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAuB,mBAAmB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAOvG,MAAM,WAAW,eAAe;IAE9B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;IACpC,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAGrB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAG7E,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAGrC,iBAAiB,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,uBAAuB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAGxD,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAGtC,eAAe,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;IACtG,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAGD,QAAA,MAAM,UAAU,uCAA8C,CAAC;AAG/D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACvC;AA6DD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,
|
|
1
|
+
{"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAqD,SAAS,EAAW,MAAM,OAAO,CAAC;AACrG,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAuB,mBAAmB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAOvG,MAAM,WAAW,eAAe;IAE9B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;IACpC,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAGrB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAG7E,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAGrC,iBAAiB,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,uBAAuB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAGxD,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAGtC,eAAe,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;IACtG,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAGD,QAAA,MAAM,UAAU,uCAA8C,CAAC;AAG/D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACvC;AA6DD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAgnBhE,CAAC;AAGF,eAAO,MAAM,MAAM,QAAO,eAMzB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSessionSocket.d.ts","sourceRoot":"","sources":["../../../../src/ui/hooks/useSessionSocket.ts"],"names":[],"mappings":"AAIA,UAAU,qBAAqB;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"useSessionSocket.d.ts","sourceRoot":"","sources":["../../../../src/ui/hooks/useSessionSocket.ts"],"names":[],"mappings":"AAIA,UAAU,qBAAqB;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,qBAAqB,QAuCrI"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oxyhq/services",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.7.0",
|
|
4
4
|
"description": "Reusable OxyHQ module to handle authentication, user management, karma system, device-based session management and more 🚀",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -138,6 +138,18 @@ export const OxyContextProvider: React.FC<OxyContextProviderProps> = ({
|
|
|
138
138
|
// Add a new state to track token restoration
|
|
139
139
|
const [tokenReady, setTokenReady] = React.useState(false);
|
|
140
140
|
|
|
141
|
+
// Add refs to prevent duplicate API calls
|
|
142
|
+
const initAuthRef = React.useRef(false);
|
|
143
|
+
const tokenRestoreRef = React.useRef(false);
|
|
144
|
+
|
|
145
|
+
// Development warning about React StrictMode
|
|
146
|
+
React.useEffect(() => {
|
|
147
|
+
if (__DEV__) {
|
|
148
|
+
console.log('🔍 OxyContext: React StrictMode may cause effects to run twice in development');
|
|
149
|
+
console.log('🔍 This is normal and helps detect side effects. Production builds will not have this behavior.');
|
|
150
|
+
}
|
|
151
|
+
}, []);
|
|
152
|
+
|
|
141
153
|
// Storage keys (memoized to prevent infinite loops)
|
|
142
154
|
const keys = useMemo(() => getSecureStorageKeys(storageKeyPrefix), [storageKeyPrefix]);
|
|
143
155
|
|
|
@@ -159,8 +171,12 @@ export const OxyContextProvider: React.FC<OxyContextProviderProps> = ({
|
|
|
159
171
|
// Effect to initialize authentication state
|
|
160
172
|
useEffect(() => {
|
|
161
173
|
const initAuth = async () => {
|
|
162
|
-
if (!storage) return;
|
|
174
|
+
if (!storage || initAuthRef.current) return;
|
|
175
|
+
|
|
176
|
+
// Prevent multiple simultaneous initializations
|
|
177
|
+
if (isLoading) return;
|
|
163
178
|
|
|
179
|
+
initAuthRef.current = true;
|
|
164
180
|
useAuthStore.setState({ isLoading: true });
|
|
165
181
|
try {
|
|
166
182
|
// Load stored sessions
|
|
@@ -254,15 +270,16 @@ export const OxyContextProvider: React.FC<OxyContextProviderProps> = ({
|
|
|
254
270
|
}
|
|
255
271
|
};
|
|
256
272
|
|
|
257
|
-
if (storage) {
|
|
273
|
+
if (storage && !isLoading) {
|
|
258
274
|
initAuth();
|
|
259
275
|
}
|
|
260
|
-
}, [storage, oxyServices, keys,
|
|
276
|
+
}, [storage, oxyServices, keys.sessions, keys.activeSessionId]); // Removed onAuthStateChange from deps
|
|
261
277
|
|
|
262
|
-
// Effect to restore token on app load or session switch
|
|
278
|
+
// Effect to restore token on app load or session switch - with proper guards
|
|
263
279
|
useEffect(() => {
|
|
264
280
|
const restoreToken = async () => {
|
|
265
|
-
if (activeSessionId && oxyServices) {
|
|
281
|
+
if (activeSessionId && oxyServices && !tokenReady && !tokenRestoreRef.current) {
|
|
282
|
+
tokenRestoreRef.current = true;
|
|
266
283
|
try {
|
|
267
284
|
await oxyServices.getTokenBySession(activeSessionId);
|
|
268
285
|
setTokenReady(true);
|
|
@@ -271,13 +288,16 @@ export const OxyContextProvider: React.FC<OxyContextProviderProps> = ({
|
|
|
271
288
|
await logout();
|
|
272
289
|
setTokenReady(false);
|
|
273
290
|
}
|
|
274
|
-
} else {
|
|
291
|
+
} else if (!activeSessionId && !tokenReady) {
|
|
275
292
|
setTokenReady(true); // No session, so token is not needed
|
|
276
293
|
}
|
|
277
294
|
};
|
|
278
|
-
|
|
279
|
-
// Only run
|
|
280
|
-
|
|
295
|
+
|
|
296
|
+
// Only run if we haven't already set tokenReady
|
|
297
|
+
if (!tokenReady) {
|
|
298
|
+
restoreToken();
|
|
299
|
+
}
|
|
300
|
+
}, [activeSessionId, oxyServices, tokenReady]); // Added tokenReady to prevent re-runs
|
|
281
301
|
|
|
282
302
|
// Remove invalid session
|
|
283
303
|
const removeInvalidSession = useCallback(async (sessionId: string): Promise<void> => {
|
|
@@ -13,9 +13,10 @@ interface UseSessionSocketProps {
|
|
|
13
13
|
|
|
14
14
|
export function useSessionSocket({ userId, activeSessionId, refreshSessions, logout, baseURL, onRemoteSignOut }: UseSessionSocketProps) {
|
|
15
15
|
const socketRef = useRef<any>(null);
|
|
16
|
+
const connectedRef = useRef(false);
|
|
16
17
|
|
|
17
18
|
useEffect(() => {
|
|
18
|
-
if (!userId || !baseURL) return;
|
|
19
|
+
if (!userId || !baseURL || connectedRef.current) return;
|
|
19
20
|
|
|
20
21
|
if (!socketRef.current) {
|
|
21
22
|
socketRef.current = io(baseURL, {
|
|
@@ -26,6 +27,7 @@ export function useSessionSocket({ userId, activeSessionId, refreshSessions, log
|
|
|
26
27
|
|
|
27
28
|
socket.on('connect', () => {
|
|
28
29
|
console.log('Socket connected:', socket.id);
|
|
30
|
+
connectedRef.current = true;
|
|
29
31
|
});
|
|
30
32
|
|
|
31
33
|
socket.emit('join', { userId: `user:${userId}` });
|
|
@@ -43,6 +45,7 @@ export function useSessionSocket({ userId, activeSessionId, refreshSessions, log
|
|
|
43
45
|
});
|
|
44
46
|
|
|
45
47
|
return () => {
|
|
48
|
+
connectedRef.current = false;
|
|
46
49
|
socket.emit('leave', { userId: `user:${userId}` });
|
|
47
50
|
socket.off('session_update');
|
|
48
51
|
};
|