@oxyhq/services 5.13.12 → 5.13.16

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.
Files changed (209) hide show
  1. package/README.md +10 -0
  2. package/lib/commonjs/core/OxyServices.base.js +271 -0
  3. package/lib/commonjs/core/OxyServices.base.js.map +1 -0
  4. package/lib/commonjs/core/OxyServices.errors.js +26 -0
  5. package/lib/commonjs/core/OxyServices.errors.js.map +1 -0
  6. package/lib/commonjs/core/OxyServices.js +58 -2009
  7. package/lib/commonjs/core/OxyServices.js.map +1 -1
  8. package/lib/commonjs/core/mixins/OxyServices.analytics.js +60 -0
  9. package/lib/commonjs/core/mixins/OxyServices.analytics.js.map +1 -0
  10. package/lib/commonjs/core/mixins/OxyServices.assets.js +406 -0
  11. package/lib/commonjs/core/mixins/OxyServices.assets.js.map +1 -0
  12. package/lib/commonjs/core/mixins/OxyServices.auth.js +303 -0
  13. package/lib/commonjs/core/mixins/OxyServices.auth.js.map +1 -0
  14. package/lib/commonjs/core/mixins/OxyServices.developer.js +115 -0
  15. package/lib/commonjs/core/mixins/OxyServices.developer.js.map +1 -0
  16. package/lib/commonjs/core/mixins/OxyServices.devices.js +119 -0
  17. package/lib/commonjs/core/mixins/OxyServices.devices.js.map +1 -0
  18. package/lib/commonjs/core/mixins/OxyServices.karma.js +117 -0
  19. package/lib/commonjs/core/mixins/OxyServices.karma.js.map +1 -0
  20. package/lib/commonjs/core/mixins/OxyServices.language.js +124 -0
  21. package/lib/commonjs/core/mixins/OxyServices.language.js.map +1 -0
  22. package/lib/commonjs/core/mixins/OxyServices.location.js +55 -0
  23. package/lib/commonjs/core/mixins/OxyServices.location.js.map +1 -0
  24. package/lib/commonjs/core/mixins/OxyServices.payment.js +66 -0
  25. package/lib/commonjs/core/mixins/OxyServices.payment.js.map +1 -0
  26. package/lib/commonjs/core/mixins/OxyServices.privacy.js +174 -0
  27. package/lib/commonjs/core/mixins/OxyServices.privacy.js.map +1 -0
  28. package/lib/commonjs/core/mixins/OxyServices.totp.js +53 -0
  29. package/lib/commonjs/core/mixins/OxyServices.totp.js.map +1 -0
  30. package/lib/commonjs/core/mixins/OxyServices.user.js +389 -0
  31. package/lib/commonjs/core/mixins/OxyServices.user.js.map +1 -0
  32. package/lib/commonjs/core/mixins/OxyServices.utility.js +161 -0
  33. package/lib/commonjs/core/mixins/OxyServices.utility.js.map +1 -0
  34. package/lib/commonjs/core/mixins/index.js +39 -0
  35. package/lib/commonjs/core/mixins/index.js.map +1 -0
  36. package/lib/commonjs/core/mixins/mixinHelpers.js +62 -0
  37. package/lib/commonjs/core/mixins/mixinHelpers.js.map +1 -0
  38. package/lib/commonjs/index.js.map +1 -1
  39. package/lib/commonjs/ui/context/OxyContext.js +26 -47
  40. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  41. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +239 -1
  42. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  43. package/lib/commonjs/utils/apiUtils.js +0 -14
  44. package/lib/commonjs/utils/apiUtils.js.map +1 -1
  45. package/lib/commonjs/utils/asyncUtils.js +0 -20
  46. package/lib/commonjs/utils/asyncUtils.js.map +1 -1
  47. package/lib/module/core/OxyServices.base.js +265 -0
  48. package/lib/module/core/OxyServices.base.js.map +1 -0
  49. package/lib/module/core/OxyServices.errors.js +20 -0
  50. package/lib/module/core/OxyServices.errors.js.map +1 -0
  51. package/lib/module/core/OxyServices.js +43 -2005
  52. package/lib/module/core/OxyServices.js.map +1 -1
  53. package/lib/module/core/mixins/OxyServices.analytics.js +56 -0
  54. package/lib/module/core/mixins/OxyServices.analytics.js.map +1 -0
  55. package/lib/module/core/mixins/OxyServices.assets.js +402 -0
  56. package/lib/module/core/mixins/OxyServices.assets.js.map +1 -0
  57. package/lib/module/core/mixins/OxyServices.auth.js +299 -0
  58. package/lib/module/core/mixins/OxyServices.auth.js.map +1 -0
  59. package/lib/module/core/mixins/OxyServices.developer.js +111 -0
  60. package/lib/module/core/mixins/OxyServices.developer.js.map +1 -0
  61. package/lib/module/core/mixins/OxyServices.devices.js +115 -0
  62. package/lib/module/core/mixins/OxyServices.devices.js.map +1 -0
  63. package/lib/module/core/mixins/OxyServices.karma.js +113 -0
  64. package/lib/module/core/mixins/OxyServices.karma.js.map +1 -0
  65. package/lib/module/core/mixins/OxyServices.language.js +120 -0
  66. package/lib/module/core/mixins/OxyServices.language.js.map +1 -0
  67. package/lib/module/core/mixins/OxyServices.location.js +51 -0
  68. package/lib/module/core/mixins/OxyServices.location.js.map +1 -0
  69. package/lib/module/core/mixins/OxyServices.payment.js +62 -0
  70. package/lib/module/core/mixins/OxyServices.payment.js.map +1 -0
  71. package/lib/module/core/mixins/OxyServices.privacy.js +170 -0
  72. package/lib/module/core/mixins/OxyServices.privacy.js.map +1 -0
  73. package/lib/module/core/mixins/OxyServices.totp.js +49 -0
  74. package/lib/module/core/mixins/OxyServices.totp.js.map +1 -0
  75. package/lib/module/core/mixins/OxyServices.user.js +385 -0
  76. package/lib/module/core/mixins/OxyServices.user.js.map +1 -0
  77. package/lib/module/core/mixins/OxyServices.utility.js +156 -0
  78. package/lib/module/core/mixins/OxyServices.utility.js.map +1 -0
  79. package/lib/module/core/mixins/index.js +36 -0
  80. package/lib/module/core/mixins/index.js.map +1 -0
  81. package/lib/module/core/mixins/mixinHelpers.js +56 -0
  82. package/lib/module/core/mixins/mixinHelpers.js.map +1 -0
  83. package/lib/module/index.js.map +1 -1
  84. package/lib/module/ui/context/OxyContext.js +26 -47
  85. package/lib/module/ui/context/OxyContext.js.map +1 -1
  86. package/lib/module/ui/navigation/types.js.map +1 -1
  87. package/lib/module/ui/screens/PrivacySettingsScreen.js +241 -3
  88. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  89. package/lib/module/utils/apiUtils.js +0 -13
  90. package/lib/module/utils/apiUtils.js.map +1 -1
  91. package/lib/module/utils/asyncUtils.js +0 -20
  92. package/lib/module/utils/asyncUtils.js.map +1 -1
  93. package/lib/typescript/core/OxyServices.base.d.ts +123 -0
  94. package/lib/typescript/core/OxyServices.base.d.ts.map +1 -0
  95. package/lib/typescript/core/OxyServices.d.ts +969 -682
  96. package/lib/typescript/core/OxyServices.d.ts.map +1 -1
  97. package/lib/typescript/core/OxyServices.errors.d.ts +12 -0
  98. package/lib/typescript/core/OxyServices.errors.d.ts.map +1 -0
  99. package/lib/typescript/core/mixins/OxyServices.analytics.d.ts +70 -0
  100. package/lib/typescript/core/mixins/OxyServices.analytics.d.ts.map +1 -0
  101. package/lib/typescript/core/mixins/OxyServices.assets.d.ts +159 -0
  102. package/lib/typescript/core/mixins/OxyServices.assets.d.ts.map +1 -0
  103. package/lib/typescript/core/mixins/OxyServices.auth.d.ts +168 -0
  104. package/lib/typescript/core/mixins/OxyServices.auth.d.ts.map +1 -0
  105. package/lib/typescript/core/mixins/OxyServices.developer.d.ts +103 -0
  106. package/lib/typescript/core/mixins/OxyServices.developer.d.ts.map +1 -0
  107. package/lib/typescript/core/mixins/OxyServices.devices.d.ts +93 -0
  108. package/lib/typescript/core/mixins/OxyServices.devices.d.ts.map +1 -0
  109. package/lib/typescript/core/mixins/OxyServices.karma.d.ts +89 -0
  110. package/lib/typescript/core/mixins/OxyServices.karma.d.ts.map +1 -0
  111. package/lib/typescript/core/mixins/OxyServices.language.d.ts +85 -0
  112. package/lib/typescript/core/mixins/OxyServices.language.d.ts.map +1 -0
  113. package/lib/typescript/core/mixins/OxyServices.location.d.ts +68 -0
  114. package/lib/typescript/core/mixins/OxyServices.location.d.ts.map +1 -0
  115. package/lib/typescript/core/mixins/OxyServices.payment.d.ts +74 -0
  116. package/lib/typescript/core/mixins/OxyServices.payment.d.ts.map +1 -0
  117. package/lib/typescript/core/mixins/OxyServices.privacy.d.ts +126 -0
  118. package/lib/typescript/core/mixins/OxyServices.privacy.d.ts.map +1 -0
  119. package/lib/typescript/core/mixins/OxyServices.totp.d.ts +69 -0
  120. package/lib/typescript/core/mixins/OxyServices.totp.d.ts.map +1 -0
  121. package/lib/typescript/core/mixins/OxyServices.user.d.ts +189 -0
  122. package/lib/typescript/core/mixins/OxyServices.user.d.ts.map +1 -0
  123. package/lib/typescript/core/mixins/OxyServices.utility.d.ts +97 -0
  124. package/lib/typescript/core/mixins/OxyServices.utility.d.ts.map +1 -0
  125. package/lib/typescript/core/mixins/index.d.ts +898 -0
  126. package/lib/typescript/core/mixins/index.d.ts.map +1 -0
  127. package/lib/typescript/core/mixins/mixinHelpers.d.ts +32 -0
  128. package/lib/typescript/core/mixins/mixinHelpers.d.ts.map +1 -0
  129. package/lib/typescript/index.d.ts +1 -1
  130. package/lib/typescript/index.d.ts.map +1 -1
  131. package/lib/typescript/models/interfaces.d.ts +36 -0
  132. package/lib/typescript/models/interfaces.d.ts.map +1 -1
  133. package/lib/typescript/ui/context/OxyContext.d.ts +2 -6
  134. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  135. package/lib/typescript/ui/navigation/types.d.ts +0 -1
  136. package/lib/typescript/ui/navigation/types.d.ts.map +1 -1
  137. package/lib/typescript/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  138. package/lib/typescript/utils/apiUtils.d.ts +0 -7
  139. package/lib/typescript/utils/apiUtils.d.ts.map +1 -1
  140. package/lib/typescript/utils/asyncUtils.d.ts +0 -11
  141. package/lib/typescript/utils/asyncUtils.d.ts.map +1 -1
  142. package/package.json +1 -1
  143. package/src/core/OxyServices.base.ts +311 -0
  144. package/src/core/OxyServices.errors.ts +26 -0
  145. package/src/core/OxyServices.ts +43 -2026
  146. package/src/core/mixins/OxyServices.analytics.ts +53 -0
  147. package/src/core/mixins/OxyServices.assets.ts +390 -0
  148. package/src/core/mixins/OxyServices.auth.ts +275 -0
  149. package/src/core/mixins/OxyServices.developer.ts +114 -0
  150. package/src/core/mixins/OxyServices.devices.ts +103 -0
  151. package/src/core/mixins/OxyServices.karma.ts +111 -0
  152. package/src/core/mixins/OxyServices.language.ts +127 -0
  153. package/src/core/mixins/OxyServices.location.ts +46 -0
  154. package/src/core/mixins/OxyServices.payment.ts +59 -0
  155. package/src/core/mixins/OxyServices.privacy.ts +182 -0
  156. package/src/core/mixins/OxyServices.totp.ts +36 -0
  157. package/src/core/mixins/OxyServices.user.ts +380 -0
  158. package/src/core/mixins/OxyServices.utility.ts +187 -0
  159. package/src/core/mixins/index.ts +58 -0
  160. package/src/core/mixins/mixinHelpers.ts +69 -0
  161. package/src/index.ts +4 -0
  162. package/src/models/interfaces.ts +40 -0
  163. package/src/ui/context/OxyContext.tsx +35 -53
  164. package/src/ui/navigation/types.ts +0 -1
  165. package/src/ui/screens/PrivacySettingsScreen.tsx +240 -2
  166. package/src/utils/apiUtils.ts +0 -14
  167. package/src/utils/asyncUtils.ts +0 -20
  168. package/lib/commonjs/ui/screens/internal/SignInPasswordStep.js +0 -192
  169. package/lib/commonjs/ui/screens/internal/SignInPasswordStep.js.map +0 -1
  170. package/lib/commonjs/ui/screens/internal/SignInUsernameStep.js +0 -142
  171. package/lib/commonjs/ui/screens/internal/SignInUsernameStep.js.map +0 -1
  172. package/lib/commonjs/ui/screens/internal/SignUpIdentityStep.js +0 -113
  173. package/lib/commonjs/ui/screens/internal/SignUpIdentityStep.js.map +0 -1
  174. package/lib/commonjs/ui/screens/internal/SignUpSecurityStep.js +0 -132
  175. package/lib/commonjs/ui/screens/internal/SignUpSecurityStep.js.map +0 -1
  176. package/lib/commonjs/ui/screens/internal/SignUpSummaryStep.js +0 -83
  177. package/lib/commonjs/ui/screens/internal/SignUpSummaryStep.js.map +0 -1
  178. package/lib/commonjs/ui/screens/internal/SignUpWelcomeStep.js +0 -58
  179. package/lib/commonjs/ui/screens/internal/SignUpWelcomeStep.js.map +0 -1
  180. package/lib/module/ui/screens/internal/SignInPasswordStep.js +0 -186
  181. package/lib/module/ui/screens/internal/SignInPasswordStep.js.map +0 -1
  182. package/lib/module/ui/screens/internal/SignInUsernameStep.js +0 -136
  183. package/lib/module/ui/screens/internal/SignInUsernameStep.js.map +0 -1
  184. package/lib/module/ui/screens/internal/SignUpIdentityStep.js +0 -108
  185. package/lib/module/ui/screens/internal/SignUpIdentityStep.js.map +0 -1
  186. package/lib/module/ui/screens/internal/SignUpSecurityStep.js +0 -127
  187. package/lib/module/ui/screens/internal/SignUpSecurityStep.js.map +0 -1
  188. package/lib/module/ui/screens/internal/SignUpSummaryStep.js +0 -78
  189. package/lib/module/ui/screens/internal/SignUpSummaryStep.js.map +0 -1
  190. package/lib/module/ui/screens/internal/SignUpWelcomeStep.js +0 -53
  191. package/lib/module/ui/screens/internal/SignUpWelcomeStep.js.map +0 -1
  192. package/lib/typescript/ui/screens/internal/SignInPasswordStep.d.ts +0 -28
  193. package/lib/typescript/ui/screens/internal/SignInPasswordStep.d.ts.map +0 -1
  194. package/lib/typescript/ui/screens/internal/SignInUsernameStep.d.ts +0 -25
  195. package/lib/typescript/ui/screens/internal/SignInUsernameStep.d.ts.map +0 -1
  196. package/lib/typescript/ui/screens/internal/SignUpIdentityStep.d.ts +0 -20
  197. package/lib/typescript/ui/screens/internal/SignUpIdentityStep.d.ts.map +0 -1
  198. package/lib/typescript/ui/screens/internal/SignUpSecurityStep.d.ts +0 -24
  199. package/lib/typescript/ui/screens/internal/SignUpSecurityStep.d.ts.map +0 -1
  200. package/lib/typescript/ui/screens/internal/SignUpSummaryStep.d.ts +0 -15
  201. package/lib/typescript/ui/screens/internal/SignUpSummaryStep.d.ts.map +0 -1
  202. package/lib/typescript/ui/screens/internal/SignUpWelcomeStep.d.ts +0 -13
  203. package/lib/typescript/ui/screens/internal/SignUpWelcomeStep.d.ts.map +0 -1
  204. package/src/ui/screens/internal/SignInPasswordStep.tsx +0 -184
  205. package/src/ui/screens/internal/SignInUsernameStep.tsx +0 -145
  206. package/src/ui/screens/internal/SignUpIdentityStep.tsx +0 -112
  207. package/src/ui/screens/internal/SignUpSecurityStep.tsx +0 -132
  208. package/src/ui/screens/internal/SignUpSummaryStep.tsx +0 -66
  209. package/src/ui/screens/internal/SignUpWelcomeStep.tsx +0 -52
@@ -1 +1 @@
1
- {"version":3,"names":["OxyServices","OxyAuthenticationError","OxyAuthenticationTimeoutError","OXY_CLOUD_URL","oxyClient","OxyContextProvider","useOxy","default","OxyProvider","DeviceManager","SUPPORTED_LANGUAGES","getLanguageMetadata","getLanguageName","getNativeLanguageName","normalizeLanguageCode","useAuthStore","useAssetStore","useAssets","useAssetsStore","useAsset","useUploadProgress","useAssetLoading","useAssetErrors","useAssetsByApp","useAssetsByEntity","useAssetUsageCount","useIsAssetLinked","useSessionSocket","setOxyAssetInstance","OxySignInButton","OxyLogo","FollowButton","ErrorCodes","createApiError","handleHttpError","validateRequiredFields","retryWithBackoff","logger","LogLevel","LogContext","logAuth","logApi","logSession","logUser","logDevice","logPayment","logPerformance"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAASA,WAAW,EAAEC,sBAAsB,EAAEC,6BAA6B,QAAQ,QAAQ;AAC3F,SAASC,aAAa,EAAEC,SAAS,QAAQ,QAAQ;;AAEjD;AACA,SACEC,kBAAkB;AAAE;AACpBC,MAAM,QACD,yBAAyB;;AAEhC;AACA,SAASC,OAAO,IAAIC,WAAW,QAAQ,6BAA6B;;AAEpE;AACA,SAASC,aAAa,QAAQ,uBAAuB;AAGrD;AACA,SACEC,mBAAmB,EACnBC,mBAAmB,EACnBC,eAAe,EACfC,qBAAqB,EACrBC,qBAAqB,QAChB,uBAAuB;;AAG9B;;AAuDA;AACA,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,aAAa,EAAEC,SAAS,IAAIC,cAAc,EAAEC,QAAQ,EAAEC,iBAAiB,EAAEC,eAAe,EAAEC,cAAc,EAAEC,cAAc,EAAEC,iBAAiB,EAAEC,kBAAkB,EAAEC,gBAAgB,QAAQ,wBAAwB;AAC1N,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASV,SAAS,EAAEW,mBAAmB,QAAQ,sBAAsB;;AAErE;AACA,SAASC,eAAe,QAAQ,iCAAiC;AACjE,SAASC,OAAO,EAAEC,YAAY,QAAQ,MAAM;;AAE5C;AACA,cAAc,kBAAkB;AAChC,SACEC,UAAU,EACVC,cAAc,EACdC,eAAe,EACfC,sBAAsB,EACtBC,gBAAgB,QACX,oBAAoB;AAC3B,cAAc,yBAAyB;AACvC,SACEC,MAAM,EACNC,QAAQ,EACRC,UAAU,EACVC,OAAO,EACPC,MAAM,EACNC,UAAU,EACVC,OAAO,EACPC,SAAS,EACTC,UAAU,EACVC,cAAc,QACT,qBAAqB;AAC5B,cAAc,oBAAoB;AAClC,cAAc,mBAAmB","ignoreList":[]}
1
+ {"version":3,"names":["OxyServices","OxyAuthenticationError","OxyAuthenticationTimeoutError","OXY_CLOUD_URL","oxyClient","OxyContextProvider","useOxy","default","OxyProvider","DeviceManager","SUPPORTED_LANGUAGES","getLanguageMetadata","getLanguageName","getNativeLanguageName","normalizeLanguageCode","useAuthStore","useAssetStore","useAssets","useAssetsStore","useAsset","useUploadProgress","useAssetLoading","useAssetErrors","useAssetsByApp","useAssetsByEntity","useAssetUsageCount","useIsAssetLinked","useSessionSocket","setOxyAssetInstance","OxySignInButton","OxyLogo","FollowButton","ErrorCodes","createApiError","handleHttpError","validateRequiredFields","retryWithBackoff","logger","LogLevel","LogContext","logAuth","logApi","logSession","logUser","logDevice","logPayment","logPerformance"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAASA,WAAW,EAAEC,sBAAsB,EAAEC,6BAA6B,QAAQ,QAAQ;AAC3F,SAASC,aAAa,EAAEC,SAAS,QAAQ,QAAQ;;AAEjD;AACA,SACEC,kBAAkB;AAAE;AACpBC,MAAM,QACD,yBAAyB;;AAEhC;AACA,SAASC,OAAO,IAAIC,WAAW,QAAQ,6BAA6B;;AAEpE;AACA,SAASC,aAAa,QAAQ,uBAAuB;AAGrD;AACA,SACEC,mBAAmB,EACnBC,mBAAmB,EACnBC,eAAe,EACfC,qBAAqB,EACrBC,qBAAqB,QAChB,uBAAuB;;AAG9B;;AA2DA;AACA,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,aAAa,EAAEC,SAAS,IAAIC,cAAc,EAAEC,QAAQ,EAAEC,iBAAiB,EAAEC,eAAe,EAAEC,cAAc,EAAEC,cAAc,EAAEC,iBAAiB,EAAEC,kBAAkB,EAAEC,gBAAgB,QAAQ,wBAAwB;AAC1N,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASV,SAAS,EAAEW,mBAAmB,QAAQ,sBAAsB;;AAErE;AACA,SAASC,eAAe,QAAQ,iCAAiC;AACjE,SAASC,OAAO,EAAEC,YAAY,QAAQ,MAAM;;AAE5C;AACA,cAAc,kBAAkB;AAChC,SACEC,UAAU,EACVC,cAAc,EACdC,eAAe,EACfC,sBAAsB,EACtBC,gBAAgB,QACX,oBAAoB;AAC3B,cAAc,yBAAyB;AACvC,SACEC,MAAM,EACNC,QAAQ,EACRC,UAAU,EACVC,OAAO,EACPC,MAAM,EACNC,UAAU,EACVC,OAAO,EACPC,SAAS,EACTC,UAAU,EACVC,cAAc,QACT,qBAAqB;AAC5B,cAAc,oBAAoB;AAClC,cAAc,mBAAmB","ignoreList":[]}
@@ -10,29 +10,7 @@ import { useAuthStore } from '../stores/authStore';
10
10
  import { getLanguageMetadata, getLanguageName, getNativeLanguageName, normalizeLanguageCode } from '../../utils/languageUtils';
11
11
 
12
12
  // Define the context shape
13
- // NOTE: We intentionally avoid importing useFollow here to prevent a require cycle.
14
- // If consumers relied on `const { useFollow } = useOxy()`, we provide a lazy proxy below.
15
13
  import { jsx as _jsx } from "react/jsx-runtime";
16
- // Empty follow hook fallback
17
- const createEmptyFollowHook = () => {
18
- const emptyResult = {
19
- isFollowing: false,
20
- isLoading: false,
21
- error: null,
22
- toggleFollow: async () => {},
23
- setFollowStatus: () => {},
24
- fetchStatus: async () => {},
25
- clearError: () => {},
26
- followerCount: null,
27
- followingCount: null,
28
- isLoadingCounts: false,
29
- fetchUserCounts: async () => {},
30
- setFollowerCount: () => {},
31
- setFollowingCount: () => {}
32
- };
33
- return () => emptyResult;
34
- };
35
-
36
14
  // Create the context with default values
37
15
  const OxyContext = /*#__PURE__*/createContext(null);
38
16
 
@@ -89,6 +67,29 @@ const getStorageKeys = (prefix = 'oxy_session') => ({
89
67
  // Store all session IDs for quick account loading
90
68
  language: `${prefix}_language` // Store the selected language
91
69
  });
70
+ let cachedUseFollowHook = null;
71
+ const loadUseFollowHook = () => {
72
+ if (cachedUseFollowHook) {
73
+ return cachedUseFollowHook;
74
+ }
75
+ try {
76
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
77
+ const {
78
+ useFollow
79
+ } = require('../hooks/useFollow');
80
+ cachedUseFollowHook = useFollow;
81
+ return cachedUseFollowHook;
82
+ } catch (error) {
83
+ if (__DEV__) {
84
+ console.warn('useFollow hook is not available. Please import useFollow from @oxyhq/services directly.', error);
85
+ }
86
+ const fallback = () => {
87
+ throw new Error('useFollow hook is only available in the UI bundle. Import it from @oxyhq/services.');
88
+ };
89
+ cachedUseFollowHook = fallback;
90
+ return cachedUseFollowHook;
91
+ }
92
+ };
92
93
  export const OxyProvider = ({
93
94
  children,
94
95
  oxyServices: providedOxyServices,
@@ -131,6 +132,7 @@ export const OxyProvider = ({
131
132
  const refreshInFlightRef = useRef(null);
132
133
  const [storage, setStorage] = useState(null);
133
134
  const [currentLanguage, setCurrentLanguage] = useState('en-US');
135
+ const useFollowHook = useMemo(() => loadUseFollowHook(), []);
134
136
 
135
137
  // Storage keys (memoized to prevent infinite loops) - declared early for use in helpers
136
138
  const keys = useMemo(() => getStorageKeys(storageKeyPrefix), [storageKeyPrefix]);
@@ -839,29 +841,6 @@ export const OxyProvider = ({
839
841
  }, [logout])
840
842
  });
841
843
 
842
- // Context value - optimized to prevent unnecessary re-renders
843
- // Lazy proxy to load the hook only when accessed, breaking the static import cycle.
844
- // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars
845
- const useFollowProxy = userId => {
846
- try {
847
- // Dynamically require to avoid top-level cycle
848
- // eslint-disable-next-line @typescript-eslint/no-var-requires
849
- const mod = require('../hooks/useFollow');
850
- if (mod && typeof mod.useFollow === 'function') {
851
- return mod.useFollow(userId);
852
- }
853
- if (__DEV__) {
854
- console.warn('useFollow module did not export a function as expected');
855
- }
856
- return createEmptyFollowHook()(userId);
857
- } catch (e) {
858
- if (__DEV__) {
859
- console.warn('Failed to dynamically load useFollow hook:', e);
860
- }
861
- return createEmptyFollowHook()(userId);
862
- }
863
- };
864
-
865
844
  // Compute language metadata from currentLanguage
866
845
  const languageMetadata = useMemo(() => getLanguageMetadata(currentLanguage), [currentLanguage]);
867
846
  const languageName = useMemo(() => getLanguageName(currentLanguage), [currentLanguage]);
@@ -895,12 +874,12 @@ export const OxyProvider = ({
895
874
  bottomSheetRef,
896
875
  showBottomSheet,
897
876
  hideBottomSheet,
898
- useFollow: useFollowProxy
877
+ useFollow: useFollowHook
899
878
  }), [user?.id,
900
879
  // Only depend on user ID, not the entire user object
901
880
  minimalUser?.id, sessions.length,
902
881
  // Only depend on sessions count, not the entire array
903
- activeSessionId, isAuthenticated, isLoading, tokenReady, error, currentLanguage, languageMetadata, languageName, nativeLanguageName, login, logout, logoutAll, signUp, completeMfaLogin, switchSession, removeSession, refreshSessions, setLanguage, getDeviceSessions, logoutAllDeviceSessions, updateDeviceName, oxyServices, bottomSheetRef, showBottomSheet, hideBottomSheet]);
882
+ activeSessionId, isAuthenticated, isLoading, tokenReady, error, currentLanguage, languageMetadata, languageName, nativeLanguageName, login, logout, logoutAll, signUp, completeMfaLogin, switchSession, removeSession, refreshSessions, setLanguage, getDeviceSessions, logoutAllDeviceSessions, updateDeviceName, oxyServices, bottomSheetRef, showBottomSheet, hideBottomSheet, useFollowHook]);
904
883
 
905
884
  // Always render children - let the consuming app decide how to handle token loading state
906
885
  return /*#__PURE__*/_jsx(OxyContext.Provider, {
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","useEffect","useCallback","useMemo","useRef","useState","OxyServices","normalizeAndSortSessions","mergeSessions","sessionsArraysEqual","DeviceManager","useSessionSocket","toast","useAuthStore","getLanguageMetadata","getLanguageName","getNativeLanguageName","normalizeLanguageCode","jsx","_jsx","createEmptyFollowHook","emptyResult","isFollowing","isLoading","error","toggleFollow","setFollowStatus","fetchStatus","clearError","followerCount","followingCount","isLoadingCounts","fetchUserCounts","setFollowerCount","setFollowingCount","OxyContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","default","console","Error","getStorageKeys","prefix","activeSessionId","sessionIds","language","OxyProvider","children","oxyServices","providedOxyServices","baseURL","storageKeyPrefix","onAuthStateChange","onError","bottomSheetRef","oxyServicesRef","current","user","state","isAuthenticated","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","sessions","setSessions","setActiveSessionId","refreshInFlightRef","storage","setStorage","currentLanguage","setCurrentLanguage","keys","applyLanguagePreference","userLanguage","serverLang","e","__DEV__","warn","mapSessionsToClient","fallbackDeviceId","fallbackUserId","map","s","sessionId","deviceId","expiresAt","Date","now","toISOString","lastActive","userId","id","_id","toString","isCurrent","Boolean","saveSessionIds","uniqueIds","Array","from","Set","JSON","stringify","err","updateSessions","newSessions","mergeWithExisting","prevSessions","sessionsToProcess","allSessionIds","catch","tokenReady","setTokenReady","clearAllStorage","message","code","status","initStorage","platformStorage","errorMessage","setState","initAuth","savedLanguageRaw","savedLanguage","storedSessionIdsJson","storedSessionIds","parse","storedActiveSessionId","validSessions","length","log","validation","validateSession","useHeaderValidation","valid","push","getTokenBySession","fullUser","getUserBySession","username","avatar","deviceSessions","getDeviceSessions","allDeviceSessions","undefined","serverSessions","getSessionsBySessionId","filter","saveActiveSessionId","switchToSession","then","isInvalidSession","response","includes","otherSessions","otherSession","otherValidation","login","password","deviceName","deviceFingerprint","getDeviceFingerprint","deviceInfo","getDeviceInfo","signIn","getDefaultDeviceName","mfaRequired","mfaError","mfaToken","sessionResponse","userUserId","existingSession","find","logoutSession","logoutError","targetSessionId","sessionToLogout","filteredSessions","logoutAll","logoutAllSessions","signUp","email","completeMfaLogin","verifyTotpLogin","userSessions","switchSession","removeSession","refreshSessions","refreshPromise","fallbackError","session","logoutAllDeviceSessions","updateDeviceName","setLanguage","languageId","showBottomSheet","screenOrConfig","expand","present","setTimeout","navigate","screen","props","hideBottomSheet","dismiss","getBaseURL","onRemoteSignOut","info","useFollowProxy","mod","require","useFollow","languageMetadata","languageName","nativeLanguageName","contextValue","isTokenReady","currentLanguageMetadata","currentLanguageName","currentNativeLanguageName","Provider","OxyContextProvider","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":";;AACA,SAASA,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,WAAW,EAAEC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAwB,OAAO;AAEpH,SAASC,WAAW,QAAQ,YAAY;AAGxC,SAASC,wBAAwB,EAAEC,aAAa,EAAEC,mBAAmB,QAAQ,0BAA0B;AACvG,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,gBAAgB,QAAQ,2BAA2B;AAC5D,SAASC,KAAK,QAAQ,kBAAkB;AACxC,SAASC,YAAY,QAAQ,qBAAqB;AAGlD,SAASC,mBAAmB,EAAEC,eAAe,EAAEC,qBAAqB,EAAEC,qBAAqB,QAAQ,2BAA2B;;AAG9H;AACA;AACA;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAsDA;AACA,MAAMC,qBAAqB,GAAGA,CAAA,KAAqB;EACjD,MAAMC,WAAW,GAAG;IAClBC,WAAW,EAAE,KAAK;IAClBC,SAAS,EAAE,KAAK;IAChBC,KAAK,EAAE,IAAI;IACXC,YAAY,EAAE,MAAAA,CAAA,KAAY,CAAE,CAAC;IAC7BC,eAAe,EAAEA,CAAA,KAAM,CAAE,CAAC;IAC1BC,WAAW,EAAE,MAAAA,CAAA,KAAY,CAAE,CAAC;IAC5BC,UAAU,EAAEA,CAAA,KAAM,CAAE,CAAC;IACrBC,aAAa,EAAE,IAAI;IACnBC,cAAc,EAAE,IAAI;IACpBC,eAAe,EAAE,KAAK;IACtBC,eAAe,EAAE,MAAAA,CAAA,KAAY,CAAE,CAAC;IAChCC,gBAAgB,EAAEA,CAAA,KAAM,CAAE,CAAC;IAC3BC,iBAAiB,EAAEA,CAAA,KAAM,CAAE;EAC7B,CAAC;EACD,OAAO,MAAMb,WAAW;AAC1B,CAAC;;AAED;AACA,MAAMc,UAAU,gBAAGpC,aAAa,CAAyB,IAAI,CAAC;;AAE9D;;AAWA;;AAQA;AACA,MAAMqC,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,OAAO1B,KAAK,EAAE;QACd2B,OAAO,CAAC3B,KAAK,CAAC,gCAAgC,EAAEA,KAAK,CAAC;QACtD,MAAM,IAAI4B,KAAK,CAAC,sDAAsD,CAAC;MACzE;IACF;IACA,OAAOR,YAAY;EACrB;EAEA,OAAO,IAAIR,UAAU,CAAC,CAAC;AACzB,CAAC;;AAED;AACA,MAAMiB,cAAc,GAAGA,CAACC,MAAM,GAAG,aAAa,MAAM;EAClDC,eAAe,EAAE,GAAGD,MAAM,oBAAoB;EAAE;EAChDE,UAAU,EAAE,GAAGF,MAAM,cAAc;EAAE;EACrCG,QAAQ,EAAE,GAAGH,MAAM,WAAW,CAAE;AAClC,CAAC,CAAC;AAEF,OAAO,MAAMI,WAA8C,GAAGA,CAAC;EAC7DC,QAAQ;EACRC,WAAW,EAAEC,mBAAmB;EAChCC,OAAO;EACPC,gBAAgB,GAAG,aAAa;EAChCC,iBAAiB;EACjBC,OAAO;EACPC;AACF,CAAC,KAAK;EACJ;EACA,MAAMC,cAAc,GAAG/D,MAAM,CAAqB,IAAI,CAAC;EAEvD,IAAI,CAAC+D,cAAc,CAACC,OAAO,EAAE;IAC3B,IAAIP,mBAAmB,EAAE;MACvBM,cAAc,CAACC,OAAO,GAAGP,mBAAmB;IAC9C,CAAC,MAAM,IAAIC,OAAO,EAAE;MAClBK,cAAc,CAACC,OAAO,GAAG,IAAI9D,WAAW,CAAC;QAAEwD;MAAQ,CAAC,CAAC;IACvD,CAAC,MAAM;MACL,MAAM,IAAIV,KAAK,CAAC,sEAAsE,CAAC;IACzF;EACF;EAEA,MAAMQ,WAAW,GAAGO,cAAc,CAACC,OAAO;;EAE1C;EACA,MAAMC,IAAI,GAAGxD,YAAY,CAAEyD,KAAK,IAAKA,KAAK,CAACD,IAAI,CAAC;EAChD,MAAME,eAAe,GAAG1D,YAAY,CAAEyD,KAAK,IAAKA,KAAK,CAACC,eAAe,CAAC;EACtE,MAAMhD,SAAS,GAAGV,YAAY,CAAEyD,KAAK,IAAKA,KAAK,CAAC/C,SAAS,CAAC;EAC1D,MAAMC,KAAK,GAAGX,YAAY,CAAEyD,KAAK,IAAKA,KAAK,CAAC9C,KAAK,CAAC;EAClD,MAAMgD,YAAY,GAAG3D,YAAY,CAAEyD,KAAK,IAAKA,KAAK,CAACE,YAAY,CAAC;EAChE,MAAMC,YAAY,GAAG5D,YAAY,CAAEyD,KAAK,IAAKA,KAAK,CAACG,YAAY,CAAC;EAChE,MAAMC,WAAW,GAAG7D,YAAY,CAAEyD,KAAK,IAAKA,KAAK,CAACK,MAAM,CAAC;;EAEzD;EACA,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGxE,QAAQ,CAAyB,IAAI,CAAC;EAC5E,MAAM,CAACyE,QAAQ,EAAEC,WAAW,CAAC,GAAG1E,QAAQ,CAAkB,EAAE,CAAC;EAC7D,MAAM,CAACkD,eAAe,EAAEyB,kBAAkB,CAAC,GAAG3E,QAAQ,CAAgB,IAAI,CAAC;;EAE3E;EACA,MAAM4E,kBAAkB,GAAG7E,MAAM,CAAuB,IAAI,CAAC;EAE7D,MAAM,CAAC8E,OAAO,EAAEC,UAAU,CAAC,GAAG9E,QAAQ,CAA0B,IAAI,CAAC;EACrE,MAAM,CAAC+E,eAAe,EAAEC,kBAAkB,CAAC,GAAGhF,QAAQ,CAAS,OAAO,CAAC;;EAEvE;EACA,MAAMiF,IAAI,GAAGnF,OAAO,CAAC,MAAMkD,cAAc,CAACU,gBAAgB,CAAC,EAAE,CAACA,gBAAgB,CAAC,CAAC;;EAEhF;EACA,MAAMwB,uBAAuB,GAAGrF,WAAW,CAAC,MAAOmE,IAAU,IAAoB;IAC/E,MAAMmB,YAAY,GAAInB,IAAI,EAA8BZ,QAA8B;IACtF,IAAI,CAAC+B,YAAY,IAAI,CAACN,OAAO,EAAE;IAE/B,IAAI;MACF,MAAMO,UAAU,GAAGxE,qBAAqB,CAACuE,YAAY,CAAC;MACtD,MAAMN,OAAO,CAAC1C,OAAO,CAAC8C,IAAI,CAAC7B,QAAQ,EAAEgC,UAAU,CAAC;MAChDJ,kBAAkB,CAACI,UAAU,CAAC;IAChC,CAAC,CAAC,OAAOC,CAAC,EAAE;MACV,IAAIC,OAAO,EAAE;QACXxC,OAAO,CAACyC,IAAI,CAAC,4CAA4C,EAAEF,CAAC,CAAC;MAC/D;IACF;EACF,CAAC,EAAE,CAACR,OAAO,EAAEI,IAAI,CAAC7B,QAAQ,CAAC,CAAC;EAE5B,MAAMoC,mBAAmB,GAAG3F,WAAW,CAAC,CAAC4E,QAQvC,EAAEgB,gBAAyB,EAAEC,cAAuB,KAAsB;IAC1E,OAAOjB,QAAQ,CAACkB,GAAG,CAAEC,CAAM,KAAM;MAC/BC,SAAS,EAAED,CAAC,CAACC,SAAS;MACtBC,QAAQ,EAAEF,CAAC,CAACE,QAAQ,IAAIL,gBAAgB,IAAI,EAAE;MAC9CM,SAAS,EAAEH,CAAC,CAACG,SAAS,IAAI,IAAIC,IAAI,CAACA,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAACC,WAAW,CAAC,CAAC;MACtFC,UAAU,EAAEP,CAAC,CAACO,UAAU,IAAI,IAAIH,IAAI,CAAC,CAAC,CAACE,WAAW,CAAC,CAAC;MACpDE,MAAM,EAAER,CAAC,CAAC5B,IAAI,EAAEqC,EAAE,IAAIT,CAAC,CAACQ,MAAM,IAAKR,CAAC,CAAC5B,IAAI,EAAEsC,GAAG,EAAEC,QAAQ,CAAC,CAAE,IAAIb,cAAc,IAAI,EAAE;MACnFc,SAAS,EAAEC,OAAO,CAACb,CAAC,CAACY,SAAS;IAChC,CAAC,CAAC,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,MAAME,cAAc,GAAG7G,WAAW,CAAC,MAAOsD,UAAoB,IAAoB;IAChF,IAAI,CAAC0B,OAAO,EAAE;IACd,IAAI;MACF,MAAM8B,SAAS,GAAGC,KAAK,CAACC,IAAI,CAAC,IAAIC,GAAG,CAAC3D,UAAU,CAAC,CAAC;MACjD,MAAM0B,OAAO,CAAC1C,OAAO,CAAC8C,IAAI,CAAC9B,UAAU,EAAE4D,IAAI,CAACC,SAAS,CAACL,SAAS,CAAC,CAAC;IACnE,CAAC,CAAC,OAAOM,GAAG,EAAE;MACZ,IAAI3B,OAAO,EAAE;QACXxC,OAAO,CAACyC,IAAI,CAAC,6BAA6B,EAAE0B,GAAG,CAAC;MAClD;IACF;EACF,CAAC,EAAE,CAACpC,OAAO,EAAEI,IAAI,CAAC9B,UAAU,CAAC,CAAC;EAE9B,MAAM+D,cAAc,GAAGrH,WAAW,CAAC,CAACsH,WAA4B,EAAEC,iBAAiB,GAAG,KAAK,KAAK;IAC9F1C,WAAW,CAAE2C,YAAY,IAAK;MAC5B,MAAMC,iBAAiB,GAAGF,iBAAiB,GACvCjH,aAAa,CAACkH,YAAY,EAAEF,WAAW,EAAEjE,eAAe,EAAE,KAAK,CAAC,GAChEhD,wBAAwB,CAACiH,WAAW,EAAEjE,eAAe,EAAE,KAAK,CAAC;;MAEjE;MACA,IAAI2B,OAAO,EAAE;QACX,MAAM0C,aAAa,GAAGD,iBAAiB,CAAC3B,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,SAAS,CAAC;QAC7Da,cAAc,CAACa,aAAa,CAAC,CAACC,KAAK,CAAC,MAAM;UACxC;QAAA,CACD,CAAC;MACJ;MAEA,OAAOpH,mBAAmB,CAACiH,YAAY,EAAEC,iBAAiB,CAAC,GAAGD,YAAY,GAAGC,iBAAiB;IAChG,CAAC,CAAC;EACJ,CAAC,EAAE,CAACpE,eAAe,EAAE2B,OAAO,EAAE6B,cAAc,CAAC,CAAC;;EAE9C;EACA,MAAM,CAACe,UAAU,EAAEC,aAAa,CAAC,GAAG1H,QAAQ,CAAC,IAAI,CAAC;;EAElD;EACA,MAAM2H,eAAe,GAAG9H,WAAW,CAAC,YAA2B;IAC7D,IAAI,CAACgF,OAAO,EAAE;IACd,IAAI;MACF,MAAMA,OAAO,CAACxC,UAAU,CAAC4C,IAAI,CAAC/B,eAAe,CAAC;MAC9C,MAAM2B,OAAO,CAACxC,UAAU,CAAC4C,IAAI,CAAC9B,UAAU,CAAC;IAC3C,CAAC,CAAC,OAAO8D,GAAG,EAAE;MACZ,IAAI3B,OAAO,EAAE;QACXxC,OAAO,CAAC3B,KAAK,CAAC,sBAAsB,EAAE8F,GAAG,CAAC;MAC5C;MACArD,OAAO,GAAG;QAAEgE,OAAO,EAAE,yBAAyB;QAAEC,IAAI,EAAE,eAAe;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;IACvF;EACF,CAAC,EAAE,CAACjD,OAAO,EAAEI,IAAI,EAAErB,OAAO,CAAC,CAAC;;EAE5B;EACAhE,SAAS,CAAC,MAAM;IACd,MAAMmI,WAAW,GAAG,MAAAA,CAAA,KAAY;MAC9B,IAAI;QACF,MAAMC,eAAe,GAAG,MAAMrF,UAAU,CAAC,CAAC;QAC1CmC,UAAU,CAACkD,eAAe,CAAC;MAC7B,CAAC,CAAC,OAAO7G,KAAK,EAAE;QACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,8BAA8B;QAC5FpH,YAAY,CAAC0H,QAAQ,CAAC;UAAE/G,KAAK,EAAE8G;QAAa,CAAC,CAAC;QAC9CrE,OAAO,GAAG;UAAEgE,OAAO,EAAEK,YAAY;UAAEJ,IAAI,EAAE,oBAAoB;UAAEC,MAAM,EAAE;QAAI,CAAC,CAAC;MAC/E;IACF,CAAC;IACDC,WAAW,CAAC,CAAC;EACf,CAAC,EAAE,CAACnE,OAAO,CAAC,CAAC;;EAEb;EACA;EACA;EACAhE,SAAS,CAAC,MAAM;IACd,MAAMuI,QAAQ,GAAG,MAAAA,CAAA,KAAY;MAC3B,IAAI,CAACtD,OAAO,EAAE;MACd;MACA,IAAI;QACF;QACA,MAAMuD,gBAAgB,GAAG,MAAMvD,OAAO,CAAC7C,OAAO,CAACiD,IAAI,CAAC7B,QAAQ,CAAC;QAC7D,MAAMiF,aAAa,GAAGzH,qBAAqB,CAACwH,gBAAgB,CAAC,IAAIA,gBAAgB;QACjF,IAAIC,aAAa,EAAE;UACjBrD,kBAAkB,CAACqD,aAAa,CAAC;QACnC;;QAEA;QACA,MAAMC,oBAAoB,GAAG,MAAMzD,OAAO,CAAC7C,OAAO,CAACiD,IAAI,CAAC9B,UAAU,CAAC;QACnE,MAAMoF,gBAA0B,GAAGD,oBAAoB,GAAGvB,IAAI,CAACyB,KAAK,CAACF,oBAAoB,CAAC,GAAG,EAAE;;QAE/F;QACA,MAAMG,qBAAqB,GAAG,MAAM5D,OAAO,CAAC7C,OAAO,CAACiD,IAAI,CAAC/B,eAAe,CAAC;QACzE,MAAMwF,aAA8B,GAAG,EAAE;;QAEzC;QACA,IAAIH,gBAAgB,CAACI,MAAM,GAAG,CAAC,EAAE;UAC/B,IAAIrD,OAAO,EAAE;YACXxC,OAAO,CAAC8F,GAAG,CAAC,kCAAkC,EAAEL,gBAAgB,CAACI,MAAM,CAAC;UAC1E;;UAEA;UACA,KAAK,MAAM9C,SAAS,IAAI0C,gBAAgB,EAAE;YACxC,IAAI;cACF,MAAMM,UAAU,GAAG,MAAMtF,WAAW,CAACuF,eAAe,CAACjD,SAAS,EAAE;gBAAEkD,mBAAmB,EAAE;cAAK,CAAC,CAAC;cAC9F,IAAIF,UAAU,CAACG,KAAK,IAAIH,UAAU,CAAC7E,IAAI,EAAE;gBACvC0E,aAAa,CAACO,IAAI,CAAC;kBACjBpD,SAAS;kBACTO,MAAM,EAAEyC,UAAU,CAAC7E,IAAI,CAACqC,EAAE,EAAEE,QAAQ,CAAC,CAAC,IAAI,EAAE;kBAC5CT,QAAQ,EAAE,EAAE;kBACZC,SAAS,EAAE,IAAIC,IAAI,CAACA,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAACC,WAAW,CAAC,CAAC;kBACvEC,UAAU,EAAE,IAAIH,IAAI,CAAC,CAAC,CAACE,WAAW,CAAC,CAAC;kBACpCM,SAAS,EAAEX,SAAS,KAAK4C;gBAC3B,CAAC,CAAC;cACJ;YACF,CAAC,CAAC,OAAOpD,CAAC,EAAE;cACV;cACA,IAAIC,OAAO,EAAE;gBACXxC,OAAO,CAACyC,IAAI,CAAC,gCAAgC,EAAEM,SAAS,EAAER,CAAC,CAAC;cAC9D;YACF;UACF;;UAEA;UACA,IAAIqD,aAAa,CAACC,MAAM,GAAG,CAAC,EAAE;YAC5BzB,cAAc,CAACwB,aAAa,EAAE,KAAK,CAAC;UACtC;QACF;;QAEA;QACA,IAAID,qBAAqB,EAAE;UACzB,IAAI;YACF,MAAMI,UAAU,GAAG,MAAMtF,WAAW,CAACuF,eAAe,CAACL,qBAAqB,EAAE;cAAEM,mBAAmB,EAAE;YAAK,CAAC,CAAC;YAC1G,IAAIF,UAAU,CAACG,KAAK,EAAE;cACpBrE,kBAAkB,CAAC8D,qBAAqB,CAAC;cACzC,MAAMlF,WAAW,CAAC2F,iBAAiB,CAACT,qBAAqB,CAAC;cAC1D,MAAMU,QAAQ,GAAG,MAAM5F,WAAW,CAAC6F,gBAAgB,CAACX,qBAAqB,CAAC;cAC1EtE,YAAY,CAACgF,QAAQ,CAAC;cACtB3E,cAAc,CAAC;gBAAE6B,EAAE,EAAE8C,QAAQ,CAAC9C,EAAE;gBAAEgD,QAAQ,EAAEF,QAAQ,CAACE,QAAQ;gBAAEC,MAAM,EAAEH,QAAQ,CAACG;cAAO,CAAC,CAAC;cAEzF,MAAMpE,uBAAuB,CAACiE,QAAQ,CAAC;cAEvC,IAAI;gBACF,MAAMI,cAAc,GAAG,MAAMhG,WAAW,CAACiG,iBAAiB,CAACf,qBAAqB,CAAC;gBACjF,MAAMgB,iBAAiB,GAAGjE,mBAAmB,CAAC+D,cAAc,EAAEG,SAAS,EAAEP,QAAQ,CAAC9C,EAAE,CAAC;gBACrFa,cAAc,CAACuC,iBAAiB,EAAE,IAAI,CAAC;cACzC,CAAC,CAAC,OAAOpE,CAAC,EAAE;gBACV,IAAIC,OAAO,EAAE;kBACXxC,OAAO,CAACyC,IAAI,CAAC,uEAAuE,EAAEF,CAAC,CAAC;gBAC1F;gBACA,MAAMsE,cAAc,GAAG,MAAMpG,WAAW,CAACqG,sBAAsB,CAACnB,qBAAqB,CAAC;gBACtFvB,cAAc,CAAC1B,mBAAmB,CAACmE,cAAc,EAAED,SAAS,EAAEP,QAAQ,CAAC9C,EAAE,CAAC,EAAE,KAAK,CAAC;cACpF;cACA1C,iBAAiB,GAAGwF,QAAQ,CAAC;YAC/B,CAAC,MAAM;cACL;cACA,MAAMtE,OAAO,CAACxC,UAAU,CAAC4C,IAAI,CAAC/B,eAAe,CAAC;cAC9C;cACAgE,cAAc,CAACwB,aAAa,CAACmB,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAK4C,qBAAqB,CAAC,EAAE,KAAK,CAAC;YACzF;UACF,CAAC,CAAC,OAAOpD,CAAC,EAAE;YACV,IAAIC,OAAO,EAAE;cACXxC,OAAO,CAAC3B,KAAK,CAAC,iCAAiC,EAAEkE,CAAC,CAAC;YACrD;YACA;YACA,MAAMR,OAAO,CAACxC,UAAU,CAAC4C,IAAI,CAAC/B,eAAe,CAAC;YAC9CgE,cAAc,CAACwB,aAAa,CAACmB,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAK4C,qBAAqB,CAAC,EAAE,KAAK,CAAC;UACzF;QACF;QACAf,aAAa,CAAC,IAAI,CAAC;MACrB,CAAC,CAAC,OAAOrC,CAAC,EAAE;QACV,IAAIC,OAAO,EAAE;UACXxC,OAAO,CAAC3B,KAAK,CAAC,iBAAiB,EAAEkE,CAAC,CAAC;QACrC;QACA,MAAMsC,eAAe,CAAC,CAAC;QACvBD,aAAa,CAAC,IAAI,CAAC;MACrB;IACF,CAAC;IACDS,QAAQ,CAAC,CAAC;EACZ,CAAC,EAAE,CAACtD,OAAO,EAAEtB,WAAW,EAAE0B,IAAI,EAAEtB,iBAAiB,EAAEQ,YAAY,EAAEwD,eAAe,EAAEzC,uBAAuB,EAAEM,mBAAmB,EAAE0B,cAAc,CAAC,CAAC;;EAEhJ;EACA,MAAM4C,mBAAmB,GAAGjK,WAAW,CAAC,MAAOgG,SAAiB,IAAoB;IAClF,IAAI,CAAChB,OAAO,EAAE;IACd,MAAMA,OAAO,CAAC1C,OAAO,CAAC8C,IAAI,CAAC/B,eAAe,EAAE2C,SAAS,CAAC;EACxD,CAAC,EAAE,CAAChB,OAAO,EAAEI,IAAI,CAAC/B,eAAe,CAAC,CAAC;EAEnC,MAAM6G,eAAe,GAAGlK,WAAW,CAAC,MAAOgG,SAAiB,IAAoB;IAC9E,IAAI;MACF,MAAMgD,UAAU,GAAG,MAAMtF,WAAW,CAACuF,eAAe,CAACjD,SAAS,EAAE;QAAEkD,mBAAmB,EAAE;MAAK,CAAC,CAAC;MAC9F,IAAI,CAACF,UAAU,CAACG,KAAK,EAAE;QACrB9B,cAAc,CAACzC,QAAQ,CAACoF,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAKA,SAAS,CAAC,EAAE,KAAK,CAAC;QACtE,MAAM,IAAI9C,KAAK,CAAC,+BAA+B,CAAC;MAClD;MAEA,IAAI,CAAC8F,UAAU,CAAC7E,IAAI,EAAE;QACpB,MAAM,IAAIjB,KAAK,CAAC,iDAAiD,CAAC;MACpE;MAEA,MAAMoG,QAAQ,GAAGN,UAAU,CAAC7E,IAAI;MAChC,MAAMT,WAAW,CAAC2F,iBAAiB,CAACrD,SAAS,CAAC;MAC9C6B,aAAa,CAAC,IAAI,CAAC;MAEnB/C,kBAAkB,CAACkB,SAAS,CAAC;MAC7B1B,YAAY,CAACgF,QAAQ,CAAC;MACtB3E,cAAc,CAAC;QACb6B,EAAE,EAAE8C,QAAQ,CAAC9C,EAAE;QACfgD,QAAQ,EAAEF,QAAQ,CAACE,QAAQ;QAC3BC,MAAM,EAAEH,QAAQ,CAACG;MACnB,CAAC,CAAC;MAEF,MAAMQ,mBAAmB,CAACjE,SAAS,CAAC;MACpC,MAAMX,uBAAuB,CAACiE,QAAQ,CAAC;MAEvC5F,WAAW,CAACiG,iBAAiB,CAAC3D,SAAS,CAAC,CACrCmE,IAAI,CAAET,cAAc,IAAK;QACxB,MAAME,iBAAiB,GAAGjE,mBAAmB,CAAC+D,cAAc,EAAEG,SAAS,EAAEP,QAAQ,CAAC9C,EAAE,CAAC;QACrFa,cAAc,CAACuC,iBAAiB,EAAE,IAAI,CAAC;MACzC,CAAC,CAAC,CACDjC,KAAK,CAAErG,KAAK,IAAK;QAChB,IAAImE,OAAO,EAAExC,OAAO,CAACyC,IAAI,CAAC,6CAA6C,EAAEpE,KAAK,CAAC;MACjF,CAAC,CAAC;MAEJwC,iBAAiB,GAAGwF,QAAQ,CAAC;IAC/B,CAAC,CAAC,OAAOhI,KAAU,EAAE;MACnB,MAAM8I,gBAAgB,GAAG9I,KAAK,EAAE+I,QAAQ,EAAEpC,MAAM,KAAK,GAAG,IACtD3G,KAAK,EAAEyG,OAAO,EAAEuC,QAAQ,CAAC,4BAA4B,CAAC,IACtDhJ,KAAK,EAAEyG,OAAO,EAAEuC,QAAQ,CAAC,oBAAoB,CAAC;MAEhD,IAAIF,gBAAgB,EAAE;QACpB/C,cAAc,CAACzC,QAAQ,CAACoF,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAKA,SAAS,CAAC,EAAE,KAAK,CAAC;QAEtE,IAAIA,SAAS,KAAK3C,eAAe,IAAIuB,QAAQ,CAACkE,MAAM,GAAG,CAAC,EAAE;UACxD,MAAMyB,aAAa,GAAG3F,QAAQ,CAACoF,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAKA,SAAS,CAAC;UACrE,KAAK,MAAMwE,YAAY,IAAID,aAAa,EAAE;YACxC,IAAI;cACF,MAAME,eAAe,GAAG,MAAM/G,WAAW,CAACuF,eAAe,CAACuB,YAAY,CAACxE,SAAS,EAAE;gBAAEkD,mBAAmB,EAAE;cAAK,CAAC,CAAC;cAChH,IAAIuB,eAAe,CAACtB,KAAK,EAAE;gBACzB,MAAMe,eAAe,CAACM,YAAY,CAACxE,SAAS,CAAC;gBAC7C;cACF;YACF,CAAC,CAAC,MAAM;cACN;cACA;YACF;UACF;QACF;MACF;MAEA,MAAMoC,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,0BAA0B;MACxF,IAAItC,OAAO,EAAE;QACXxC,OAAO,CAAC3B,KAAK,CAAC,uBAAuB,EAAEA,KAAK,CAAC;MAC/C;MACAX,YAAY,CAAC0H,QAAQ,CAAC;QAAE/G,KAAK,EAAE8G;MAAa,CAAC,CAAC;MAC9CrE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAEoC,gBAAgB,GAAG,iBAAiB,GAAG,sBAAsB;QAAEnC,MAAM,EAAEmC,gBAAgB,GAAG,GAAG,GAAG;MAAI,CAAC,CAAC;MAC/IvC,aAAa,CAAC,KAAK,CAAC;MACpB,MAAMvG,KAAK,CAAC,CAAC;IACf;EACF,CAAC,EAAE,CAACoC,WAAW,EAAEI,iBAAiB,EAAEQ,YAAY,EAAE2F,mBAAmB,EAAE5E,uBAAuB,EAAEM,mBAAmB,EAAE5B,OAAO,EAAEV,eAAe,EAAEuB,QAAQ,CAAC,CAAC;EAEzJ,MAAM8F,KAAK,GAAG1K,WAAW,CAAC,OAAOwJ,QAAgB,EAAEmB,QAAgB,EAAEC,UAAmB,KAAoB;IAC1G,IAAI,CAAC5F,OAAO,EAAE,MAAM,IAAI9B,KAAK,CAAC,yBAAyB,CAAC;IACxDvC,YAAY,CAAC0H,QAAQ,CAAC;MAAEhH,SAAS,EAAE,IAAI;MAAEC,KAAK,EAAE;IAAK,CAAC,CAAC;IAEvD,IAAI;MACF,MAAMuJ,iBAAiB,GAAGrK,aAAa,CAACsK,oBAAoB,CAAC,CAAC;MAC9D,MAAMC,UAAU,GAAG,MAAMvK,aAAa,CAACwK,aAAa,CAAC,CAAC;MAEtD,MAAMX,QAAQ,GAAG,MAAM3G,WAAW,CAACuH,MAAM,CACvCzB,QAAQ,EACRmB,QAAQ,EACRC,UAAU,IAAIG,UAAU,CAACH,UAAU,IAAIpK,aAAa,CAAC0K,oBAAoB,CAAC,CAAC,EAC3EL,iBACF,CAAC;;MAED;MACA,IAAIR,QAAQ,IAAI,aAAa,IAAIA,QAAQ,IAAIA,QAAQ,CAACc,WAAW,EAAE;QACjE,MAAMC,QAAQ,GAAG,IAAIlI,KAAK,CAAC,sCAAsC,CAIhE;QACDkI,QAAQ,CAACpD,IAAI,GAAG,cAAc;QAC9BoD,QAAQ,CAACC,QAAQ,GAAIhB,QAAQ,CAA2BgB,QAAQ;QAChED,QAAQ,CAAClF,SAAS,GAAImE,QAAQ,CAA4BnE,SAAS;QACnE,MAAMkF,QAAQ;MAChB;MAEA,MAAME,eAAe,GAAGjB,QAAgC;MAExD,MAAM3G,WAAW,CAAC2F,iBAAiB,CAACiC,eAAe,CAACtF,SAAS,CAAC;MAC9D,MAAMsD,QAAQ,GAAG,MAAM5F,WAAW,CAAC6F,gBAAgB,CAAC+B,eAAe,CAACtF,SAAS,CAAC;MAE9E,IAAI4D,iBAAkC,GAAG,EAAE;MAC3C,IAAI;QACF,MAAMF,cAAc,GAAG,MAAMhG,WAAW,CAACiG,iBAAiB,CAAC2B,eAAe,CAACtF,SAAS,CAAC;QACrF4D,iBAAiB,GAAGjE,mBAAmB,CAAC+D,cAAc,EAAE4B,eAAe,CAACrF,QAAQ,EAAEqD,QAAQ,CAAC9C,EAAE,CAAC;MAChG,CAAC,CAAC,OAAOlF,KAAK,EAAE;QACd,IAAImE,OAAO,EAAE;UACXxC,OAAO,CAACyC,IAAI,CAAC,+DAA+D,EAAEpE,KAAK,CAAC;QACtF;QACA,MAAMwI,cAAc,GAAG,MAAMpG,WAAW,CAACqG,sBAAsB,CAACuB,eAAe,CAACtF,SAAS,CAAC;QAC1F4D,iBAAiB,GAAGjE,mBAAmB,CAACmE,cAAc,EAAED,SAAS,EAAEP,QAAQ,CAAC9C,EAAE,CAAC;MACjF;MAEA,MAAM+E,UAAU,GAAGjC,QAAQ,CAAC9C,EAAE,EAAEE,QAAQ,CAAC,CAAC;MAC1C,MAAM8E,eAAe,GAAG5B,iBAAiB,CAAC6B,IAAI,CAC5C1F,CAAC,IAAIA,CAAC,CAACQ,MAAM,EAAEG,QAAQ,CAAC,CAAC,KAAK6E,UAAU,IAAIxF,CAAC,CAACC,SAAS,KAAKsF,eAAe,CAACtF,SAC9E,CAAC;MAED,IAAIwF,eAAe,EAAE;QACnB,IAAI;UACF,MAAM9H,WAAW,CAACgI,aAAa,CAACJ,eAAe,CAACtF,SAAS,EAAEsF,eAAe,CAACtF,SAAS,CAAC;QACvF,CAAC,CAAC,OAAO2F,WAAW,EAAE;UACpB,IAAIlG,OAAO,EAAE;YACXxC,OAAO,CAACyC,IAAI,CAAC,qCAAqC,EAAEiG,WAAW,CAAC;UAClE;QACF;QACA,MAAMzB,eAAe,CAACsB,eAAe,CAACxF,SAAS,CAAC;QAChD1B,YAAY,CAACgF,QAAQ,CAAC;QACtB3E,cAAc,CAAC2G,eAAe,CAACnH,IAAI,CAAC;QACpCkD,cAAc,CAACuC,iBAAiB,CAACI,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAKsF,eAAe,CAACtF,SAAS,CAAC,EAAE,KAAK,CAAC;QAC/FlC,iBAAiB,GAAGwF,QAAQ,CAAC;QAC7B,OAAOA,QAAQ;MACjB;MAEAxE,kBAAkB,CAACwG,eAAe,CAACtF,SAAS,CAAC;MAC7C,MAAMiE,mBAAmB,CAACqB,eAAe,CAACtF,SAAS,CAAC;MACpD1B,YAAY,CAACgF,QAAQ,CAAC;MACtB3E,cAAc,CAAC2G,eAAe,CAACnH,IAAI,CAAC;MACpCkD,cAAc,CAACuC,iBAAiB,EAAE,IAAI,CAAC;MAEvC9F,iBAAiB,GAAGwF,QAAQ,CAAC;MAC7B,OAAOA,QAAQ;IACjB,CAAC,CAAC,OAAOhI,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,cAAc;MAC5ExD,YAAY,CAAC6D,YAAY,CAAC;MAC1BrE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,aAAa;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MACtE,MAAM3G,KAAK;IACb,CAAC,SAAS;MACRX,YAAY,CAAC0H,QAAQ,CAAC;QAAEhH,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC,EAAE,CAAC2D,OAAO,EAAEtB,WAAW,EAAEuG,mBAAmB,EAAE3F,YAAY,EAAER,iBAAiB,EAAES,YAAY,EAAEoB,mBAAmB,EAAE5B,OAAO,EAAEa,QAAQ,EAAEsF,eAAe,CAAC,CAAC;;EAEvJ;EACA,MAAMzF,MAAM,GAAGzE,WAAW,CAAC,MAAO4L,eAAwB,IAAoB;IAC5E,IAAI,CAACvI,eAAe,EAAE;IAEtB,IAAI;MACF,MAAMwI,eAAe,GAAGD,eAAe,IAAIvI,eAAe;MAC1D,MAAMK,WAAW,CAACgI,aAAa,CAACrI,eAAe,EAAEwI,eAAe,CAAC;MAEjE,MAAMC,gBAAgB,GAAGlH,QAAQ,CAACoF,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAK6F,eAAe,CAAC;MAC9ExE,cAAc,CAACyE,gBAAgB,EAAE,KAAK,CAAC;MAEvC,IAAID,eAAe,KAAKxI,eAAe,EAAE;QACvC,IAAIyI,gBAAgB,CAAChD,MAAM,GAAG,CAAC,EAAE;UAC/B,MAAMoB,eAAe,CAAC4B,gBAAgB,CAAC,CAAC,CAAC,CAAC9F,SAAS,CAAC;QACtD,CAAC,MAAM;UACLlB,kBAAkB,CAAC,IAAI,CAAC;UACxBN,WAAW,CAAC,CAAC;UACbG,cAAc,CAAC,IAAI,CAAC;UACpB,MAAMK,OAAO,EAAExC,UAAU,CAAC4C,IAAI,CAAC/B,eAAe,CAAC;UAE/C,IAAIS,iBAAiB,EAAE;YACrBA,iBAAiB,CAAC,IAAI,CAAC;UACzB;QACF;MACF;IACF,CAAC,CAAC,OAAOxC,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,eAAe;MAC7E,IAAItC,OAAO,EAAE;QACXxC,OAAO,CAAC3B,KAAK,CAAC,eAAe,EAAEA,KAAK,CAAC;MACvC;MACAX,YAAY,CAAC0H,QAAQ,CAAC;QAAE/G,KAAK,EAAE8G;MAAa,CAAC,CAAC;MAC9CrE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,cAAc;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;IACzE;EACF,CAAC,EAAE,CAAC5E,eAAe,EAAEK,WAAW,EAAEkB,QAAQ,EAAEsF,eAAe,EAAE1F,WAAW,EAAEQ,OAAO,EAAEI,IAAI,CAAC/B,eAAe,EAAES,iBAAiB,EAAEC,OAAO,CAAC,CAAC;EAErI,MAAMgI,SAAS,GAAG/L,WAAW,CAAC,YAA2B;IACvD,IAAI,CAACqD,eAAe,EAAE;MACpB,MAAM/B,KAAK,GAAG,IAAI4B,KAAK,CAAC,yBAAyB,CAAC;MAClDvC,YAAY,CAAC0H,QAAQ,CAAC;QAAE/G,KAAK,EAAEA,KAAK,CAACyG;MAAQ,CAAC,CAAC;MAC/ChE,OAAO,GAAG;QAAEgE,OAAO,EAAEzG,KAAK,CAACyG,OAAO;QAAEC,IAAI,EAAE,kBAAkB;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MAC5E,MAAM3G,KAAK;IACb;IAEA,IAAI;MACF,MAAMoC,WAAW,CAACsI,iBAAiB,CAAC3I,eAAe,CAAC;MAEpDgE,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC;MACzBvC,kBAAkB,CAAC,IAAI,CAAC;MACxBN,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAMmD,eAAe,CAAC,CAAC;MACvBhE,iBAAiB,GAAG,IAAI,CAAC;IAC3B,CAAC,CAAC,OAAOxC,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,mBAAmB;MACjFpH,YAAY,CAAC0H,QAAQ,CAAC;QAAE/G,KAAK,EAAE8G;MAAa,CAAC,CAAC;MAC9CrE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,kBAAkB;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MAC3E,MAAM3G,KAAK;IACb;EACF,CAAC,EAAE,CAAC+B,eAAe,EAAEK,WAAW,EAAEc,WAAW,EAAEsD,eAAe,EAAEhE,iBAAiB,EAAEC,OAAO,CAAC,CAAC;;EAE5F;EACA;;EAEA;EACA,MAAMkI,MAAM,GAAGjM,WAAW,CAAC,OAAOwJ,QAAgB,EAAE0C,KAAa,EAAEvB,QAAgB,KAAoB;IACrG,IAAI,CAAC3F,OAAO,EAAE,MAAM,IAAI9B,KAAK,CAAC,yBAAyB,CAAC;IAExDvC,YAAY,CAAC0H,QAAQ,CAAC;MAAEhH,SAAS,EAAE,IAAI;MAAEC,KAAK,EAAE;IAAK,CAAC,CAAC;IAEvD,IAAI;MACF,MAAMoC,WAAW,CAACuI,MAAM,CAACzC,QAAQ,EAAE0C,KAAK,EAAEvB,QAAQ,CAAC;MACnD,MAAMxG,IAAI,GAAG,MAAMuG,KAAK,CAAClB,QAAQ,EAAEmB,QAAQ,CAAC;MAC5C,OAAOxG,IAAI;IACb,CAAC,CAAC,OAAO7C,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,gBAAgB;MAC9ExD,YAAY,CAAC6D,YAAY,CAAC;MAC1BrE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,cAAc;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MACvE,MAAM3G,KAAK;IACb,CAAC,SAAS;MACRX,YAAY,CAAC0H,QAAQ,CAAC;QAAEhH,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC,EAAE,CAAC2D,OAAO,EAAEtB,WAAW,EAAEgH,KAAK,EAAEnG,YAAY,EAAER,OAAO,CAAC,CAAC;;EAExD;EACA,MAAMoI,gBAAgB,GAAGnM,WAAW,CAAC,OAAOqL,QAAgB,EAAErD,IAAY,KAAoB;IAC5F,IAAI,CAAChD,OAAO,EAAE,MAAM,IAAI9B,KAAK,CAAC,yBAAyB,CAAC;IACxDvC,YAAY,CAAC0H,QAAQ,CAAC;MAAEhH,SAAS,EAAE,IAAI;MAAEC,KAAK,EAAE;IAAK,CAAC,CAAC;IACvD,IAAI;MACF,MAAM+I,QAAQ,GAAG,MAAM3G,WAAW,CAAC0I,eAAe,CAACf,QAAQ,EAAErD,IAAI,CAAC;;MAElE;MACAlD,kBAAkB,CAACuF,QAAQ,CAACrE,SAAS,CAAC;MACtC,MAAMiE,mBAAmB,CAACI,QAAQ,CAACrE,SAAS,CAAC;;MAE7C;MACA,MAAMtC,WAAW,CAAC2F,iBAAiB,CAACgB,QAAQ,CAACrE,SAAS,CAAC;MACvD,MAAMsD,QAAQ,GAAG,MAAM5F,WAAW,CAAC6F,gBAAgB,CAACc,QAAQ,CAACrE,SAAS,CAAC;MAEvE1B,YAAY,CAACgF,QAAQ,CAAC;MACtB3E,cAAc,CAAC;QAAE6B,EAAE,EAAE8C,QAAQ,CAAC9C,EAAE;QAAEgD,QAAQ,EAAEF,QAAQ,CAACE,QAAQ;QAAEC,MAAM,EAAEH,QAAQ,CAACG;MAAO,CAAC,CAAC;MACzF,MAAMpE,uBAAuB,CAACiE,QAAQ,CAAC;;MAEvC;MACA,IAAI;QACF,MAAMI,cAAc,GAAG,MAAMhG,WAAW,CAACiG,iBAAiB,CAACU,QAAQ,CAACrE,SAAS,CAAC;QAC9E,MAAM4D,iBAAiB,GAAGjE,mBAAmB,CAAC+D,cAAc,EAAEG,SAAS,EAAEP,QAAQ,CAAC9C,EAAE,CAAC;QACrFa,cAAc,CAACuC,iBAAiB,EAAE,IAAI,CAAC;MACzC,CAAC,CAAC,OAAOtI,KAAK,EAAE;QACd;QACA,IAAImE,OAAO,EAAE;UACXxC,OAAO,CAACyC,IAAI,CAAC,uEAAuE,EAAEpE,KAAK,CAAC;QAC9F;QACA,MAAMwI,cAAc,GAAG,MAAMpG,WAAW,CAACqG,sBAAsB,CAACM,QAAQ,CAACrE,SAAS,CAAC;QACnF,MAAMqG,YAAY,GAAG1G,mBAAmB,CAACmE,cAAc,EAAED,SAAS,EAAEP,QAAQ,CAAC9C,EAAE,CAAC;QAEhFa,cAAc,CAACgF,YAAY,EAAE,IAAI,CAAC;MACpC;MAEAvI,iBAAiB,GAAGwF,QAAQ,CAAC;MAC7B,OAAOA,QAAQ;IACjB,CAAC,CAAC,OAAOhI,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,yBAAyB;MACvFxD,YAAY,CAAC6D,YAAY,CAAC;MAC1BrE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,WAAW;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MACpE,MAAM3G,KAAK;IACb,CAAC,SAAS;MACRX,YAAY,CAAC0H,QAAQ,CAAC;QAAEhH,SAAS,EAAE;MAAM,CAAC,CAAC;IAC7C;EACF,CAAC,EAAE,CAAC2D,OAAO,EAAEtB,WAAW,EAAEY,YAAY,EAAEC,YAAY,EAAE0F,mBAAmB,EAAEnG,iBAAiB,EAAEuB,uBAAuB,EAAEtB,OAAO,CAAC,CAAC;EAEhI,MAAMuI,aAAa,GAAGtM,WAAW,CAAC,MAAOgG,SAAiB,IAAoB;IAC5E,MAAMkE,eAAe,CAAClE,SAAS,CAAC;EAClC,CAAC,EAAE,CAACkE,eAAe,CAAC,CAAC;EAErB,MAAMqC,aAAa,GAAGvM,WAAW,CAAC,MAAOgG,SAAiB,IAAoB;IAC5E,MAAMvB,MAAM,CAACuB,SAAS,CAAC;EACzB,CAAC,EAAE,CAACvB,MAAM,CAAC,CAAC;EAEZ,MAAM+H,eAAe,GAAGxM,WAAW,CAAC,YAA2B;IAC7D,IAAI,CAACqD,eAAe,EAAE;;IAEtB;IACA,IAAI0B,kBAAkB,CAACb,OAAO,EAAE;MAC9B,OAAOa,kBAAkB,CAACb,OAAO;IACnC;;IAEA;IACA,MAAMuI,cAAc,GAAG,CAAC,YAAY;MAClC,IAAI;QACF,MAAM/C,cAAc,GAAG,MAAMhG,WAAW,CAACiG,iBAAiB,CAACtG,eAAe,CAAC;QAC3E,MAAMuG,iBAAiB,GAAGjE,mBAAmB,CAAC+D,cAAc,EAAEG,SAAS,EAAE1F,IAAI,EAAEqC,EAAE,CAAC;QAClFa,cAAc,CAACuC,iBAAiB,EAAE,IAAI,CAAC;MACzC,CAAC,CAAC,OAAOtI,KAAK,EAAE;QACd,IAAImE,OAAO,EAAE;UACXxC,OAAO,CAACyC,IAAI,CAAC,mEAAmE,EAAEpE,KAAK,CAAC;QAC1F;QACA,IAAI;UACF,MAAMwI,cAAc,GAAG,MAAMpG,WAAW,CAACqG,sBAAsB,CAAC1G,eAAe,CAAC;UAChF,MAAMgJ,YAAY,GAAG1G,mBAAmB,CAACmE,cAAc,EAAED,SAAS,EAAE1F,IAAI,EAAEqC,EAAE,CAAC;UAC7Ea,cAAc,CAACgF,YAAY,EAAE,IAAI,CAAC;QACpC,CAAC,CAAC,OAAOK,aAAa,EAAE;UACtB,IAAIjH,OAAO,EAAE;YACXxC,OAAO,CAAC3B,KAAK,CAAC,yBAAyB,EAAEoL,aAAa,CAAC;UACzD;;UAEA;UACA,IAAI9H,QAAQ,CAACkE,MAAM,GAAG,CAAC,EAAE;YACvB,MAAMyB,aAAa,GAAG3F,QAAQ,CAACoF,MAAM,CAACjE,CAAC,IAAIA,CAAC,CAACC,SAAS,KAAK3C,eAAe,CAAC;YAE3E,KAAK,MAAMsJ,OAAO,IAAIpC,aAAa,EAAE;cACnC,IAAI;gBACF,MAAMvB,UAAU,GAAG,MAAMtF,WAAW,CAACuF,eAAe,CAAC0D,OAAO,CAAC3G,SAAS,EAAE;kBACtEkD,mBAAmB,EAAE;gBACvB,CAAC,CAAC;gBACF,IAAIF,UAAU,CAACG,KAAK,EAAE;kBACpB,MAAMe,eAAe,CAACyC,OAAO,CAAC3G,SAAS,CAAC;kBACxC;gBACF;cACF,CAAC,CAAC,MAAM;gBACN;cACF;YACF;UACF;;UAEA;UACAqB,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC;UACzBvC,kBAAkB,CAAC,IAAI,CAAC;UACxBN,WAAW,CAAC,CAAC;UACbG,cAAc,CAAC,IAAI,CAAC;UACpB,MAAMmD,eAAe,CAAC,CAAC;UACvBhE,iBAAiB,GAAG,IAAI,CAAC;QAC3B;MACF,CAAC,SAAS;QACR;QACAiB,kBAAkB,CAACb,OAAO,GAAG,IAAI;MACnC;IACF,CAAC,EAAE,CAAC;IAEJa,kBAAkB,CAACb,OAAO,GAAGuI,cAAc;IAC3C,OAAOA,cAAc;EACvB,CAAC,EAAE,CAACpJ,eAAe,EAAEK,WAAW,EAAES,IAAI,EAAEqC,EAAE,EAAEa,cAAc,EAAEzC,QAAQ,EAAEsF,eAAe,EAAE1F,WAAW,EAAEsD,eAAe,EAAEhE,iBAAiB,EAAE6B,mBAAmB,CAAC,CAAC;;EAE7J;EACA,MAAMgE,iBAAiB,GAAG3J,WAAW,CAAC,YAM/B;IACL,IAAI,CAACqD,eAAe,EAAE,MAAM,IAAIH,KAAK,CAAC,mBAAmB,CAAC;IAC1D,IAAI;MACF,OAAO,MAAMQ,WAAW,CAACiG,iBAAiB,CAACtG,eAAe,CAAC;IAC7D,CAAC,CAAC,OAAO/B,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,+BAA+B;MAC7FhE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,2BAA2B;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MACpF,MAAM3G,KAAK;IACb;EACF,CAAC,EAAE,CAAC+B,eAAe,EAAEK,WAAW,EAAEK,OAAO,CAAC,CAAC;EAE3C,MAAM6I,uBAAuB,GAAG5M,WAAW,CAAC,YAA2B;IACrE,IAAI,CAACqD,eAAe,EAAE,MAAM,IAAIH,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,MAAMQ,WAAW,CAACkJ,uBAAuB,CAACvJ,eAAe,CAAC;MAC1DgE,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC;MACzBvC,kBAAkB,CAAC,IAAI,CAAC;MACxBN,WAAW,CAAC,CAAC;MACbG,cAAc,CAAC,IAAI,CAAC;MACpB,MAAMmD,eAAe,CAAC,CAAC;MACvBhE,iBAAiB,GAAG,IAAI,CAAC;IAC3B,CAAC,CAAC,OAAOxC,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,sCAAsC;MACpGhE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,0BAA0B;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MACnF,MAAM3G,KAAK;IACb;EACF,CAAC,EAAE,CAAC+B,eAAe,EAAEK,WAAW,EAAEc,WAAW,EAAEsD,eAAe,EAAEhE,iBAAiB,EAAEC,OAAO,CAAC,CAAC;EAE5F,MAAM8I,gBAAgB,GAAG7M,WAAW,CAAC,MAAO4K,UAAkB,IAAoB;IAChF,IAAI,CAACvH,eAAe,EAAE,MAAM,IAAIH,KAAK,CAAC,mBAAmB,CAAC;IAE1D,IAAI;MACF,MAAMQ,WAAW,CAACmJ,gBAAgB,CAACxJ,eAAe,EAAEuH,UAAU,CAAC;MAC/D,MAAMpK,aAAa,CAACqM,gBAAgB,CAACjC,UAAU,CAAC;IAClD,CAAC,CAAC,OAAOtJ,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,8BAA8B;MAC5FhE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,0BAA0B;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MACnF,MAAM3G,KAAK;IACb;EACF,CAAC,EAAE,CAAC+B,eAAe,EAAEK,WAAW,EAAEK,OAAO,CAAC,CAAC;;EAE3C;EACA,MAAM+I,WAAW,GAAG9M,WAAW,CAAC,MAAO+M,UAAkB,IAAoB;IAC3E,IAAI,CAAC/H,OAAO,EAAE,MAAM,IAAI9B,KAAK,CAAC,yBAAyB,CAAC;IAExD,IAAI;MACF,MAAM8B,OAAO,CAAC1C,OAAO,CAAC8C,IAAI,CAAC7B,QAAQ,EAAEwJ,UAAU,CAAC;MAChD5H,kBAAkB,CAAC4H,UAAU,CAAC;IAChC,CAAC,CAAC,OAAOzL,KAAK,EAAE;MACd,MAAM8G,YAAY,GAAG9G,KAAK,YAAY4B,KAAK,GAAG5B,KAAK,CAACyG,OAAO,GAAG,oCAAoC;MAClGhE,OAAO,GAAG;QAAEgE,OAAO,EAAEK,YAAY;QAAEJ,IAAI,EAAE,qBAAqB;QAAEC,MAAM,EAAE;MAAI,CAAC,CAAC;MAC9E,MAAM3G,KAAK;IACb;EACF,CAAC,EAAE,CAAC0D,OAAO,EAAEI,IAAI,CAAC7B,QAAQ,EAAEQ,OAAO,CAAC,CAAC;;EAErC;EACA,MAAMiJ,eAAe,GAAGhN,WAAW,CAAEiN,cAAiG,IAAK;IACzI,IAAIxH,OAAO,EAAExC,OAAO,CAAC8F,GAAG,CAAC,8BAA8B,EAAEkE,cAAc,CAAC;IAExE,IAAIjJ,cAAc,EAAEE,OAAO,EAAE;MAC3B,IAAIuB,OAAO,EAAExC,OAAO,CAAC8F,GAAG,CAAC,6BAA6B,CAAC;;MAEvD;MACA,IAAI/E,cAAc,CAACE,OAAO,CAACgJ,MAAM,EAAE;QACjC,IAAIzH,OAAO,EAAExC,OAAO,CAAC8F,GAAG,CAAC,wBAAwB,CAAC;QAClD/E,cAAc,CAACE,OAAO,CAACgJ,MAAM,CAAC,CAAC;MACjC,CAAC,MAAM,IAAIlJ,cAAc,CAACE,OAAO,CAACiJ,OAAO,EAAE;QACzC,IAAI1H,OAAO,EAAExC,OAAO,CAAC8F,GAAG,CAAC,yBAAyB,CAAC;QACnD/E,cAAc,CAACE,OAAO,CAACiJ,OAAO,CAAC,CAAC;MAClC,CAAC,MAAM,IAAI1H,OAAO,EAAE;QAClBxC,OAAO,CAACyC,IAAI,CAAC,yDAAyD,CAAC;MACzE;;MAEA;MACA,IAAIuH,cAAc,EAAE;QAClB;QACAG,UAAU,CAAC,MAAM;UACf,IAAI,OAAOH,cAAc,KAAK,QAAQ,EAAE;YACtC;YACA,IAAIxH,OAAO,EAAExC,OAAO,CAAC8F,GAAG,CAAC,uBAAuB,EAAEkE,cAAc,CAAC;YACjEjJ,cAAc,CAACE,OAAO,EAAEmJ,QAAQ,GAAGJ,cAAc,CAAC;UACpD,CAAC,MAAM;YACL;YACA,IAAIxH,OAAO,EAAExC,OAAO,CAAC8F,GAAG,CAAC,kCAAkC,EAAEkE,cAAc,CAACK,MAAM,EAAEL,cAAc,CAACM,KAAK,CAAC;YACzGvJ,cAAc,CAACE,OAAO,EAAEmJ,QAAQ,GAAGJ,cAAc,CAACK,MAAM,EAAEL,cAAc,CAACM,KAAK,CAAC;UACjF;QACF,CAAC,EAAE,GAAG,CAAC;MACT;IACF,CAAC,MAAM,IAAI9H,OAAO,EAAE;MAClBxC,OAAO,CAACyC,IAAI,CAAC,wEAAwE,CAAC;IACxF;EACF,CAAC,EAAE,CAAC1B,cAAc,CAAC,CAAC;EAEpB,MAAMwJ,eAAe,GAAGxN,WAAW,CAAC,MAAM;IACxC,IAAIgE,cAAc,EAAEE,OAAO,EAAE;MAC3BF,cAAc,CAACE,OAAO,CAACuJ,OAAO,GAAG,CAAC;IACpC;EACF,CAAC,EAAE,CAACzJ,cAAc,CAAC,CAAC;;EAEpB;EACAvD,gBAAgB,CAAC;IACf8F,MAAM,EAAEpC,IAAI,EAAEqC,EAAE;IAChBnD,eAAe;IACfmJ,eAAe;IACf/H,MAAM;IACNb,OAAO,EAAEF,WAAW,CAACgK,UAAU,CAAC,CAAC;IACjCC,eAAe,EAAE3N,WAAW,CAAC,MAAM;MACjCU,KAAK,CAACkN,IAAI,CAAC,oCAAoC,CAAC;MAChDnJ,MAAM,CAAC,CAAC;IACV,CAAC,EAAE,CAACA,MAAM,CAAC;EACb,CAAC,CAAC;;EAEF;EACA;EACA;EACA,MAAMoJ,cAA6B,GAAItH,MAA0B,IAAK;IACpE,IAAI;MACF;MACA;MACA,MAAMuH,GAAG,GAAGC,OAAO,CAAC,oBAAoB,CAAC;MACzC,IAAID,GAAG,IAAI,OAAOA,GAAG,CAACE,SAAS,KAAK,UAAU,EAAE;QAC9C,OAAOF,GAAG,CAACE,SAAS,CAACzH,MAAM,CAAC;MAC9B;MACA,IAAId,OAAO,EAAE;QACXxC,OAAO,CAACyC,IAAI,CAAC,wDAAwD,CAAC;MACxE;MACA,OAAOxE,qBAAqB,CAAC,CAAC,CAACqF,MAAM,CAAC;IACxC,CAAC,CAAC,OAAOf,CAAC,EAAE;MACV,IAAIC,OAAO,EAAE;QACXxC,OAAO,CAACyC,IAAI,CAAC,4CAA4C,EAAEF,CAAC,CAAC;MAC/D;MACA,OAAOtE,qBAAqB,CAAC,CAAC,CAACqF,MAAM,CAAC;IACxC;EACF,CAAC;;EAED;EACA,MAAM0H,gBAAgB,GAAGhO,OAAO,CAAC,MAAMW,mBAAmB,CAACsE,eAAe,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAC/F,MAAMgJ,YAAY,GAAGjO,OAAO,CAAC,MAAMY,eAAe,CAACqE,eAAe,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EACvF,MAAMiJ,kBAAkB,GAAGlO,OAAO,CAAC,MAAMa,qBAAqB,CAACoE,eAAe,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAEnG,MAAMkJ,YAA6B,GAAGnO,OAAO,CAAC,OAAO;IACnDkE,IAAI;IACJO,WAAW;IACXE,QAAQ;IACRvB,eAAe;IACfgB,eAAe;IACfhD,SAAS;IACTgN,YAAY,EAAEzG,UAAU;IACxBtG,KAAK;IACL4D,eAAe;IACfoJ,uBAAuB,EAAEL,gBAAgB;IACzCM,mBAAmB,EAAEL,YAAY;IACjCM,yBAAyB,EAAEL,kBAAkB;IAC7CzD,KAAK;IACLjG,MAAM;IACNsH,SAAS;IACTE,MAAM;IACNE,gBAAgB;IAChBG,aAAa;IACbC,aAAa;IACbC,eAAe;IACfM,WAAW;IACXnD,iBAAiB;IACjBiD,uBAAuB;IACvBC,gBAAgB;IAChBnJ,WAAW;IACXM,cAAc;IACdgJ,eAAe;IACfQ,eAAe;IACfQ,SAAS,EAAEH;EACb,CAAC,CAAC,EAAE,CACF1J,IAAI,EAAEqC,EAAE;EAAE;EACV9B,WAAW,EAAE8B,EAAE,EACf5B,QAAQ,CAACkE,MAAM;EAAE;EACjBzF,eAAe,EACfgB,eAAe,EACfhD,SAAS,EACTuG,UAAU,EACVtG,KAAK,EACL4D,eAAe,EACf+I,gBAAgB,EAChBC,YAAY,EACZC,kBAAkB,EAClBzD,KAAK,EACLjG,MAAM,EACNsH,SAAS,EACTE,MAAM,EACNE,gBAAgB,EAChBG,aAAa,EACbC,aAAa,EACbC,eAAe,EACfM,WAAW,EACXnD,iBAAiB,EACjBiD,uBAAuB,EACvBC,gBAAgB,EAChBnJ,WAAW,EACXM,cAAc,EACdgJ,eAAe,EACfQ,eAAe,CAChB,CAAC;;EAEF;EACA,oBACEvM,IAAA,CAACgB,UAAU,CAACwM,QAAQ;IAAClM,KAAK,EAAE6L,YAAa;IAAA3K,QAAA,EACtCA;EAAQ,CACU,CAAC;AAE1B,CAAC;;AAED;AACA,OAAO,MAAMiL,kBAAkB,GAAGlL,WAAW;;AAE7C;AACA,OAAO,MAAMmL,MAAM,GAAGA,CAAA,KAAuB;EAC3C,MAAMC,OAAO,GAAG9O,UAAU,CAACmC,UAAU,CAAC;EACtC,IAAI,CAAC2M,OAAO,EAAE;IACZ,MAAM,IAAI1L,KAAK,CAAC,kDAAkD,CAAC;EACrE;EACA,OAAO0L,OAAO;AAChB,CAAC;AAED,eAAe3M,UAAU","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useContext","useEffect","useCallback","useMemo","useRef","useState","OxyServices","normalizeAndSortSessions","mergeSessions","sessionsArraysEqual","DeviceManager","useSessionSocket","toast","useAuthStore","getLanguageMetadata","getLanguageName","getNativeLanguageName","normalizeLanguageCode","jsx","_jsx","OxyContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","default","error","console","Error","getStorageKeys","prefix","activeSessionId","sessionIds","language","cachedUseFollowHook","loadUseFollowHook","useFollow","require","__DEV__","warn","fallback","OxyProvider","children","oxyServices","providedOxyServices","baseURL","storageKeyPrefix","onAuthStateChange","onError","bottomSheetRef","oxyServicesRef","current","user","state","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","sessions","setSessions","setActiveSessionId","refreshInFlightRef","storage","setStorage","currentLanguage","setCurrentLanguage","useFollowHook","keys","applyLanguagePreference","userLanguage","serverLang","e","mapSessionsToClient","fallbackDeviceId","fallbackUserId","map","s","sessionId","deviceId","expiresAt","Date","now","toISOString","lastActive","userId","id","_id","toString","isCurrent","Boolean","saveSessionIds","uniqueIds","Array","from","Set","JSON","stringify","err","updateSessions","newSessions","mergeWithExisting","prevSessions","sessionsToProcess","allSessionIds","catch","tokenReady","setTokenReady","clearAllStorage","message","code","status","initStorage","platformStorage","errorMessage","setState","initAuth","savedLanguageRaw","savedLanguage","storedSessionIdsJson","storedSessionIds","parse","storedActiveSessionId","validSessions","length","log","validation","validateSession","useHeaderValidation","valid","push","getTokenBySession","fullUser","getUserBySession","username","avatar","deviceSessions","getDeviceSessions","allDeviceSessions","undefined","serverSessions","getSessionsBySessionId","filter","saveActiveSessionId","switchToSession","then","isInvalidSession","response","includes","otherSessions","otherSession","otherValidation","login","password","deviceName","deviceFingerprint","getDeviceFingerprint","deviceInfo","getDeviceInfo","signIn","getDefaultDeviceName","mfaRequired","mfaError","mfaToken","sessionResponse","userUserId","existingSession","find","logoutSession","logoutError","targetSessionId","sessionToLogout","filteredSessions","logoutAll","logoutAllSessions","signUp","email","completeMfaLogin","verifyTotpLogin","userSessions","switchSession","removeSession","refreshSessions","refreshPromise","fallbackError","session","logoutAllDeviceSessions","updateDeviceName","setLanguage","languageId","showBottomSheet","screenOrConfig","expand","present","setTimeout","navigate","screen","props","hideBottomSheet","dismiss","getBaseURL","onRemoteSignOut","info","languageMetadata","languageName","nativeLanguageName","contextValue","isTokenReady","currentLanguageMetadata","currentLanguageName","currentNativeLanguageName","Provider","OxyContextProvider","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["routes"],"sourceRoot":"../../../../src","sources":["ui/navigation/types.ts"],"mappings":";;AAMA;AACA;AACA;;AAcA;AACA;AACA;AACA;AACA,SAASA,MAAM,QAAQ,UAAU;;AAGjC;AACA;AACA;;AAYA;AACA;AACA;;AA8GA","ignoreList":[]}
1
+ {"version":3,"names":["routes"],"sourceRoot":"../../../../src","sources":["ui/navigation/types.ts"],"mappings":";;AAMA;AACA;AACA;;AAcA;AACA;AACA;AACA;AACA,SAASA,MAAM,QAAQ,UAAU;;AAGjC;AACA;AACA;;AAYA;AACA;AACA;;AA6GA","ignoreList":[]}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useState, useCallback, useMemo, useEffect } from 'react';
4
- import { View, Text, StyleSheet, ScrollView, Switch, ActivityIndicator } from 'react-native';
4
+ import { View, Text, StyleSheet, ScrollView, Switch, ActivityIndicator, TouchableOpacity } from 'react-native';
5
5
  import { useOxy } from '../context/OxyContext';
6
6
  import { toast } from '../../lib/sonner';
7
- import { Header, Section } from '../components';
7
+ import { Header, Section, Avatar } from '../components';
8
8
  import { useI18n } from '../hooks/useI18n';
9
9
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
10
  const PrivacySettingsScreen = ({
@@ -43,8 +43,11 @@ const PrivacySettingsScreen = ({
43
43
  });
44
44
  const [isLoading, setIsLoading] = useState(true);
45
45
  const [isSaving, setIsSaving] = useState(false);
46
+ const [blockedUsers, setBlockedUsers] = useState([]);
47
+ const [restrictedUsers, setRestrictedUsers] = useState([]);
48
+ const [isLoadingUsers, setIsLoadingUsers] = useState(false);
46
49
 
47
- // Load settings
50
+ // Load settings and users
48
51
  useEffect(() => {
49
52
  const loadSettings = async () => {
50
53
  try {
@@ -64,6 +67,24 @@ const PrivacySettingsScreen = ({
64
67
  };
65
68
  loadSettings();
66
69
  }, [user?.id, oxyServices, t]);
70
+
71
+ // Load blocked and restricted users
72
+ useEffect(() => {
73
+ const loadUsers = async () => {
74
+ if (!oxyServices) return;
75
+ try {
76
+ setIsLoadingUsers(true);
77
+ const [blocked, restricted] = await Promise.all([oxyServices.getBlockedUsers(), oxyServices.getRestrictedUsers()]);
78
+ setBlockedUsers(blocked);
79
+ setRestrictedUsers(restricted);
80
+ } catch (error) {
81
+ console.error('Failed to load blocked/restricted users:', error);
82
+ } finally {
83
+ setIsLoadingUsers(false);
84
+ }
85
+ };
86
+ loadUsers();
87
+ }, [oxyServices]);
67
88
  const updateSetting = useCallback(async (key, value) => {
68
89
  try {
69
90
  setIsSaving(true);
@@ -87,6 +108,119 @@ const PrivacySettingsScreen = ({
87
108
  setIsSaving(false);
88
109
  }
89
110
  }, [settings, user?.id, oxyServices, t]);
111
+ const handleUnblock = useCallback(async userId => {
112
+ if (!oxyServices) return;
113
+ try {
114
+ await oxyServices.unblockUser(userId);
115
+ setBlockedUsers(prev => prev.filter(u => {
116
+ const id = typeof u.blockedId === 'string' ? u.blockedId : u.blockedId._id;
117
+ return id !== userId;
118
+ }));
119
+ toast.success(t('privacySettings.userUnblocked') || 'User unblocked');
120
+ } catch (error) {
121
+ console.error('Failed to unblock user:', error);
122
+ toast.error(t('privacySettings.unblockError') || 'Failed to unblock user');
123
+ }
124
+ }, [oxyServices, t]);
125
+ const handleUnrestrict = useCallback(async userId => {
126
+ if (!oxyServices) return;
127
+ try {
128
+ await oxyServices.unrestrictUser(userId);
129
+ setRestrictedUsers(prev => prev.filter(u => {
130
+ const id = typeof u.restrictedId === 'string' ? u.restrictedId : u.restrictedId._id;
131
+ return id !== userId;
132
+ }));
133
+ toast.success(t('privacySettings.userUnrestricted') || 'User unrestricted');
134
+ } catch (error) {
135
+ console.error('Failed to unrestrict user:', error);
136
+ toast.error(t('privacySettings.unrestrictError') || 'Failed to unrestrict user');
137
+ }
138
+ }, [oxyServices, t]);
139
+
140
+ // Helper to extract user info from blocked/restricted objects
141
+ const extractUserInfo = useCallback((item, idField) => {
142
+ let userIdField;
143
+ let username;
144
+ let avatar;
145
+ if (idField === 'blockedId' && 'blockedId' in item) {
146
+ userIdField = item.blockedId;
147
+ username = typeof item.blockedId === 'string' ? item.username || 'Unknown' : item.blockedId.username || 'Unknown';
148
+ avatar = typeof item.blockedId === 'string' ? item.avatar : item.blockedId.avatar;
149
+ } else if (idField === 'restrictedId' && 'restrictedId' in item) {
150
+ userIdField = item.restrictedId;
151
+ username = typeof item.restrictedId === 'string' ? item.username || 'Unknown' : item.restrictedId.username || 'Unknown';
152
+ avatar = typeof item.restrictedId === 'string' ? item.avatar : item.restrictedId.avatar;
153
+ } else {
154
+ // Fallback (should not happen)
155
+ return {
156
+ userId: '',
157
+ username: 'Unknown',
158
+ avatar: undefined
159
+ };
160
+ }
161
+ const userId = typeof userIdField === 'string' ? userIdField : userIdField._id;
162
+ return {
163
+ userId,
164
+ username,
165
+ avatar
166
+ };
167
+ }, []);
168
+
169
+ // Reusable user list item component
170
+ const UserListItem = ({
171
+ item,
172
+ idField,
173
+ onAction,
174
+ actionLabel,
175
+ actionColor,
176
+ subtitle
177
+ }) => {
178
+ const {
179
+ userId,
180
+ username,
181
+ avatar
182
+ } = extractUserInfo(item, idField);
183
+ // Convert avatar file ID to URI if needed
184
+ const avatarUri = avatar && oxyServices ? oxyServices.getFileDownloadUrl(avatar, 'thumb') : undefined;
185
+ return /*#__PURE__*/_jsxs(View, {
186
+ style: [styles.userRow, {
187
+ borderBottomColor: themeStyles.borderColor
188
+ }],
189
+ children: [/*#__PURE__*/_jsxs(View, {
190
+ style: styles.userInfo,
191
+ children: [/*#__PURE__*/_jsx(Avatar, {
192
+ uri: avatarUri,
193
+ name: username,
194
+ size: 40,
195
+ theme: theme
196
+ }), /*#__PURE__*/_jsxs(View, {
197
+ style: styles.userDetails,
198
+ children: [/*#__PURE__*/_jsx(Text, {
199
+ style: [styles.username, {
200
+ color: themeStyles.textColor
201
+ }],
202
+ children: username
203
+ }), subtitle && /*#__PURE__*/_jsx(Text, {
204
+ style: [styles.userSubtext, {
205
+ color: themeStyles.mutedTextColor
206
+ }],
207
+ children: subtitle
208
+ })]
209
+ })]
210
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
211
+ onPress: () => onAction(userId),
212
+ style: [styles.actionButton, {
213
+ backgroundColor: themeStyles.secondaryBackgroundColor
214
+ }],
215
+ children: /*#__PURE__*/_jsx(Text, {
216
+ style: [styles.actionButtonText, {
217
+ color: actionColor
218
+ }],
219
+ children: actionLabel
220
+ })
221
+ })]
222
+ });
223
+ };
90
224
  const themeStyles = useMemo(() => {
91
225
  const isDarkTheme = theme === 'dark';
92
226
  return {
@@ -260,6 +394,65 @@ const PrivacySettingsScreen = ({
260
394
  value: settings.blockScreenshots,
261
395
  onValueChange: value => updateSetting('blockScreenshots', value)
262
396
  })]
397
+ }), /*#__PURE__*/_jsx(Section, {
398
+ title: t('privacySettings.sections.blockedUsers') || 'BLOCKED USERS',
399
+ theme: theme,
400
+ children: isLoadingUsers ? /*#__PURE__*/_jsx(View, {
401
+ style: styles.loadingUsersContainer,
402
+ children: /*#__PURE__*/_jsx(ActivityIndicator, {
403
+ size: "small",
404
+ color: themeStyles.textColor
405
+ })
406
+ }) : blockedUsers.length === 0 ? /*#__PURE__*/_jsx(View, {
407
+ style: styles.emptyContainer,
408
+ children: /*#__PURE__*/_jsx(Text, {
409
+ style: [styles.emptyText, {
410
+ color: themeStyles.mutedTextColor
411
+ }],
412
+ children: t('privacySettings.noBlockedUsers') || 'No blocked users'
413
+ })
414
+ }) : blockedUsers.map(blocked => {
415
+ const {
416
+ userId
417
+ } = extractUserInfo(blocked, 'blockedId');
418
+ return /*#__PURE__*/_jsx(UserListItem, {
419
+ item: blocked,
420
+ idField: "blockedId",
421
+ onAction: handleUnblock,
422
+ actionLabel: t('privacySettings.unblock') || 'Unblock',
423
+ actionColor: "#FF3B30"
424
+ }, userId);
425
+ })
426
+ }), /*#__PURE__*/_jsx(Section, {
427
+ title: t('privacySettings.sections.restrictedUsers') || 'RESTRICTED USERS',
428
+ theme: theme,
429
+ children: isLoadingUsers ? /*#__PURE__*/_jsx(View, {
430
+ style: styles.loadingUsersContainer,
431
+ children: /*#__PURE__*/_jsx(ActivityIndicator, {
432
+ size: "small",
433
+ color: themeStyles.textColor
434
+ })
435
+ }) : restrictedUsers.length === 0 ? /*#__PURE__*/_jsx(View, {
436
+ style: styles.emptyContainer,
437
+ children: /*#__PURE__*/_jsx(Text, {
438
+ style: [styles.emptyText, {
439
+ color: themeStyles.mutedTextColor
440
+ }],
441
+ children: t('privacySettings.noRestrictedUsers') || 'No restricted users'
442
+ })
443
+ }) : restrictedUsers.map(restricted => {
444
+ const {
445
+ userId
446
+ } = extractUserInfo(restricted, 'restrictedId');
447
+ return /*#__PURE__*/_jsx(UserListItem, {
448
+ item: restricted,
449
+ idField: "restrictedId",
450
+ onAction: handleUnrestrict,
451
+ actionLabel: t('privacySettings.unrestrict') || 'Unrestrict',
452
+ actionColor: "#007AFF",
453
+ subtitle: t('privacySettings.restrictedDescription') || 'Limited interactions'
454
+ }, userId);
455
+ })
263
456
  })]
264
457
  })]
265
458
  });
@@ -296,6 +489,51 @@ const styles = StyleSheet.create({
296
489
  settingDescription: {
297
490
  fontSize: 14,
298
491
  opacity: 0.7
492
+ },
493
+ loadingUsersContainer: {
494
+ paddingVertical: 20,
495
+ alignItems: 'center'
496
+ },
497
+ emptyContainer: {
498
+ paddingVertical: 20,
499
+ alignItems: 'center'
500
+ },
501
+ emptyText: {
502
+ fontSize: 14
503
+ },
504
+ userRow: {
505
+ flexDirection: 'row',
506
+ justifyContent: 'space-between',
507
+ alignItems: 'center',
508
+ paddingVertical: 12,
509
+ borderBottomWidth: 1
510
+ },
511
+ userInfo: {
512
+ flexDirection: 'row',
513
+ alignItems: 'center',
514
+ flex: 1,
515
+ marginRight: 12
516
+ },
517
+ userDetails: {
518
+ marginLeft: 12,
519
+ flex: 1
520
+ },
521
+ username: {
522
+ fontSize: 16,
523
+ fontWeight: '500',
524
+ marginBottom: 2
525
+ },
526
+ userSubtext: {
527
+ fontSize: 13
528
+ },
529
+ actionButton: {
530
+ paddingHorizontal: 16,
531
+ paddingVertical: 8,
532
+ borderRadius: 8
533
+ },
534
+ actionButtonText: {
535
+ fontSize: 14,
536
+ fontWeight: '600'
299
537
  }
300
538
  });
301
539
  export default /*#__PURE__*/React.memo(PrivacySettingsScreen);