@oxyhq/services 22.12.4 → 22.12.7

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 (639) hide show
  1. package/README.md +16 -46
  2. package/lib/commonjs/index.js +84 -10
  3. package/lib/commonjs/index.js.map +1 -1
  4. package/lib/commonjs/notifications/deviceNotifications.js +380 -0
  5. package/lib/commonjs/notifications/deviceNotifications.js.map +1 -0
  6. package/lib/commonjs/ui/boot/runProviderColdBoot.js +51 -9
  7. package/lib/commonjs/ui/boot/runProviderColdBoot.js.map +1 -1
  8. package/lib/commonjs/ui/client.js +0 -13
  9. package/lib/commonjs/ui/client.js.map +1 -1
  10. package/lib/commonjs/ui/components/AvatarCameraBadge.js +3 -2
  11. package/lib/commonjs/ui/components/AvatarCameraBadge.js.map +1 -1
  12. package/lib/commonjs/ui/components/OxyAccountDialogScreen.js +14 -3
  13. package/lib/commonjs/ui/components/OxyAccountDialogScreen.js.map +1 -1
  14. package/lib/commonjs/ui/components/OxyAuthChooser.js +70 -1121
  15. package/lib/commonjs/ui/components/OxyAuthChooser.js.map +1 -1
  16. package/lib/commonjs/ui/components/OxyConsentScreen.js +50 -12
  17. package/lib/commonjs/ui/components/OxyConsentScreen.js.map +1 -1
  18. package/lib/commonjs/ui/components/OxyProvider.js +4 -4
  19. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  20. package/lib/commonjs/ui/components/OxySignInButton.js +74 -40
  21. package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -1
  22. package/lib/commonjs/ui/components/OxySignInRequestSurface.js +147 -0
  23. package/lib/commonjs/ui/components/OxySignInRequestSurface.js.map +1 -0
  24. package/lib/commonjs/ui/components/ProfileButton.js +4 -3
  25. package/lib/commonjs/ui/components/ProfileButton.js.map +1 -1
  26. package/lib/commonjs/ui/components/SettingsIcon.js +3 -2
  27. package/lib/commonjs/ui/components/SettingsIcon.js.map +1 -1
  28. package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js +527 -0
  29. package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js.map +1 -0
  30. package/lib/commonjs/ui/components/authChooser/SignInEntryView.js +90 -0
  31. package/lib/commonjs/ui/components/authChooser/SignInEntryView.js.map +1 -0
  32. package/lib/commonjs/ui/components/authChooser/SignInRequestView.js +106 -0
  33. package/lib/commonjs/ui/components/authChooser/SignInRequestView.js.map +1 -0
  34. package/lib/commonjs/ui/components/authChooser/SignUpView.js +188 -0
  35. package/lib/commonjs/ui/components/authChooser/SignUpView.js.map +1 -0
  36. package/lib/commonjs/ui/components/authChooser/TroubleDisclosure.js +61 -0
  37. package/lib/commonjs/ui/components/authChooser/TroubleDisclosure.js.map +1 -0
  38. package/lib/commonjs/ui/components/authChooser/primitives.js +170 -0
  39. package/lib/commonjs/ui/components/authChooser/primitives.js.map +1 -0
  40. package/lib/commonjs/ui/components/authChooser/requestSurfaces.js +153 -0
  41. package/lib/commonjs/ui/components/authChooser/requestSurfaces.js.map +1 -0
  42. package/lib/commonjs/ui/components/authChooser/signInProgress.js +54 -0
  43. package/lib/commonjs/ui/components/authChooser/signInProgress.js.map +1 -0
  44. package/lib/commonjs/ui/components/{oxyAuthChooserStyles.js → authChooser/styles.js} +19 -1
  45. package/lib/commonjs/ui/components/authChooser/styles.js.map +1 -0
  46. package/lib/commonjs/ui/components/authChooser/types.js +70 -0
  47. package/lib/commonjs/ui/components/authChooser/types.js.map +1 -0
  48. package/lib/commonjs/ui/components/authChooser/useUsernameAvailability.js +50 -0
  49. package/lib/commonjs/ui/components/authChooser/useUsernameAvailability.js.map +1 -0
  50. package/lib/commonjs/ui/components/fileManagement/AnimatedButton.js +3 -2
  51. package/lib/commonjs/ui/components/fileManagement/AnimatedButton.js.map +1 -1
  52. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js +3 -2
  53. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  54. package/lib/commonjs/ui/components/fileManagement/FileViewer.js +15 -14
  55. package/lib/commonjs/ui/components/fileManagement/FileViewer.js.map +1 -1
  56. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js +6 -5
  57. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js.map +1 -1
  58. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +3 -2
  59. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -1
  60. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js +6 -6
  61. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js.map +1 -1
  62. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js +5 -5
  63. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js.map +1 -1
  64. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js +10 -9
  65. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js.map +1 -1
  66. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js +4 -3
  67. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js.map +1 -1
  68. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js +6 -5
  69. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js.map +1 -1
  70. package/lib/commonjs/ui/context/OxyContext.js +200 -29
  71. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  72. package/lib/commonjs/ui/context/commitSessionFlow.js +43 -0
  73. package/lib/commonjs/ui/context/commitSessionFlow.js.map +1 -1
  74. package/lib/commonjs/ui/context/useOxyAccountGraph.js +13 -5
  75. package/lib/commonjs/ui/context/useOxyAccountGraph.js.map +1 -1
  76. package/lib/commonjs/ui/hooks/useSwitchableAccounts.js +6 -1
  77. package/lib/commonjs/ui/hooks/useSwitchableAccounts.js.map +1 -1
  78. package/lib/commonjs/ui/index.js +0 -13
  79. package/lib/commonjs/ui/index.js.map +1 -1
  80. package/lib/commonjs/ui/oauth/browserAuthTransport.js +168 -0
  81. package/lib/commonjs/ui/oauth/browserAuthTransport.js.map +1 -0
  82. package/lib/commonjs/ui/oauth/completeOAuthCode.js +78 -0
  83. package/lib/commonjs/ui/oauth/completeOAuthCode.js.map +1 -0
  84. package/lib/commonjs/ui/oauth/legacyRedirectLanes.js +48 -0
  85. package/lib/commonjs/ui/oauth/legacyRedirectLanes.js.map +1 -0
  86. package/lib/commonjs/ui/oauth/oauthHandshake.js +53 -0
  87. package/lib/commonjs/ui/oauth/oauthHandshake.js.map +1 -0
  88. package/lib/commonjs/ui/oauth/oauthPopup.js +229 -0
  89. package/lib/commonjs/ui/oauth/oauthPopup.js.map +1 -0
  90. package/lib/commonjs/ui/oauth/oauthPopupMessages.js +141 -0
  91. package/lib/commonjs/ui/oauth/oauthPopupMessages.js.map +1 -0
  92. package/lib/commonjs/ui/oauth/types.js +2 -0
  93. package/lib/commonjs/ui/oauth/types.js.map +1 -0
  94. package/lib/commonjs/ui/screens/AccountMembersScreen.js +4 -3
  95. package/lib/commonjs/ui/screens/AccountMembersScreen.js.map +1 -1
  96. package/lib/commonjs/ui/screens/CreateAccountScreen.js +7 -6
  97. package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
  98. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +4 -3
  99. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  100. package/lib/commonjs/ui/screens/FAQScreen.js +3 -2
  101. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
  102. package/lib/commonjs/ui/screens/FeedbackScreen.js +11 -10
  103. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  104. package/lib/commonjs/ui/screens/FileManagementScreen.js +19 -18
  105. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  106. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +4 -3
  107. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  108. package/lib/commonjs/ui/screens/ManageAccountScreen.js +2 -2
  109. package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
  110. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +3 -3
  111. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  112. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +9 -8
  113. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  114. package/lib/commonjs/ui/screens/ProfileScreen.js +10 -10
  115. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  116. package/lib/commonjs/ui/screens/UserListScreen.js +3 -3
  117. package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
  118. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +3 -2
  119. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  120. package/lib/commonjs/ui/screens/fileManagement/FileLibraryError.js +4 -3
  121. package/lib/commonjs/ui/screens/fileManagement/FileLibraryError.js.map +1 -1
  122. package/lib/commonjs/ui/screens/fileManagement/FileListSection.js +4 -3
  123. package/lib/commonjs/ui/screens/fileManagement/FileListSection.js.map +1 -1
  124. package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js +4 -3
  125. package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
  126. package/lib/commonjs/ui/screens/fileManagement/UploadBar.js +3 -2
  127. package/lib/commonjs/ui/screens/fileManagement/UploadBar.js.map +1 -1
  128. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +3 -2
  129. package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  130. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +4 -3
  131. package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  132. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +4 -3
  133. package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  134. package/lib/commonjs/ui/server.js +2 -5
  135. package/lib/commonjs/ui/server.js.map +1 -1
  136. package/lib/commonjs/ui/session/authStore.js +6 -75
  137. package/lib/commonjs/ui/session/authStore.js.map +1 -1
  138. package/lib/commonjs/ui/session/createSessionClient.js +11 -3
  139. package/lib/commonjs/ui/session/createSessionClient.js.map +1 -1
  140. package/lib/commonjs/ui/session/identityBinding.js +95 -0
  141. package/lib/commonjs/ui/session/identityBinding.js.map +1 -0
  142. package/lib/commonjs/ui/session/index.js +13 -0
  143. package/lib/commonjs/ui/session/index.js.map +1 -1
  144. package/lib/commonjs/ui/session/nativeSecureStorage.js +90 -0
  145. package/lib/commonjs/ui/session/nativeSecureStorage.js.map +1 -0
  146. package/lib/commonjs/ui/session/tokenTransport.js +11 -1
  147. package/lib/commonjs/ui/session/tokenTransport.js.map +1 -1
  148. package/lib/commonjs/ui/utils/crossOriginRestore.js +3 -2
  149. package/lib/commonjs/ui/utils/crossOriginRestore.js.map +1 -1
  150. package/lib/commonjs/ui/utils/deliveryPlatform.js +58 -0
  151. package/lib/commonjs/ui/utils/deliveryPlatform.js.map +1 -0
  152. package/lib/commonjs/ui/utils/oauthReturn.js +70 -46
  153. package/lib/commonjs/ui/utils/oauthReturn.js.map +1 -1
  154. package/lib/module/index.js +27 -4
  155. package/lib/module/index.js.map +1 -1
  156. package/lib/module/notifications/deviceNotifications.js +371 -0
  157. package/lib/module/notifications/deviceNotifications.js.map +1 -0
  158. package/lib/module/ui/boot/runProviderColdBoot.js +51 -9
  159. package/lib/module/ui/boot/runProviderColdBoot.js.map +1 -1
  160. package/lib/module/ui/client.js +0 -1
  161. package/lib/module/ui/client.js.map +1 -1
  162. package/lib/module/ui/components/AvatarCameraBadge.js +1 -1
  163. package/lib/module/ui/components/AvatarCameraBadge.js.map +1 -1
  164. package/lib/module/ui/components/OxyAccountDialogScreen.js +14 -3
  165. package/lib/module/ui/components/OxyAccountDialogScreen.js.map +1 -1
  166. package/lib/module/ui/components/OxyAuthChooser.js +74 -1126
  167. package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
  168. package/lib/module/ui/components/OxyConsentScreen.js +50 -12
  169. package/lib/module/ui/components/OxyConsentScreen.js.map +1 -1
  170. package/lib/module/ui/components/OxyProvider.js +4 -4
  171. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  172. package/lib/module/ui/components/OxySignInButton.js +76 -42
  173. package/lib/module/ui/components/OxySignInButton.js.map +1 -1
  174. package/lib/module/ui/components/OxySignInRequestSurface.js +141 -0
  175. package/lib/module/ui/components/OxySignInRequestSurface.js.map +1 -0
  176. package/lib/module/ui/components/ProfileButton.js +1 -1
  177. package/lib/module/ui/components/ProfileButton.js.map +1 -1
  178. package/lib/module/ui/components/SettingsIcon.js +1 -1
  179. package/lib/module/ui/components/SettingsIcon.js.map +1 -1
  180. package/lib/module/ui/components/authChooser/AccountsMenuView.js +523 -0
  181. package/lib/module/ui/components/authChooser/AccountsMenuView.js.map +1 -0
  182. package/lib/module/ui/components/authChooser/SignInEntryView.js +85 -0
  183. package/lib/module/ui/components/authChooser/SignInEntryView.js.map +1 -0
  184. package/lib/module/ui/components/authChooser/SignInRequestView.js +101 -0
  185. package/lib/module/ui/components/authChooser/SignInRequestView.js.map +1 -0
  186. package/lib/module/ui/components/authChooser/SignUpView.js +184 -0
  187. package/lib/module/ui/components/authChooser/SignUpView.js.map +1 -0
  188. package/lib/module/ui/components/authChooser/TroubleDisclosure.js +57 -0
  189. package/lib/module/ui/components/authChooser/TroubleDisclosure.js.map +1 -0
  190. package/lib/module/ui/components/authChooser/primitives.js +163 -0
  191. package/lib/module/ui/components/authChooser/primitives.js.map +1 -0
  192. package/lib/module/ui/components/authChooser/requestSurfaces.js +143 -0
  193. package/lib/module/ui/components/authChooser/requestSurfaces.js.map +1 -0
  194. package/lib/module/ui/components/authChooser/signInProgress.js +50 -0
  195. package/lib/module/ui/components/authChooser/signInProgress.js.map +1 -0
  196. package/lib/module/ui/components/{oxyAuthChooserStyles.js → authChooser/styles.js} +19 -1
  197. package/lib/module/ui/components/authChooser/styles.js.map +1 -0
  198. package/lib/module/ui/components/authChooser/types.js +66 -0
  199. package/lib/module/ui/components/authChooser/types.js.map +1 -0
  200. package/lib/module/ui/components/authChooser/useUsernameAvailability.js +46 -0
  201. package/lib/module/ui/components/authChooser/useUsernameAvailability.js.map +1 -0
  202. package/lib/module/ui/components/fileManagement/AnimatedButton.js +1 -1
  203. package/lib/module/ui/components/fileManagement/AnimatedButton.js.map +1 -1
  204. package/lib/module/ui/components/fileManagement/FileDetailsModal.js +1 -1
  205. package/lib/module/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  206. package/lib/module/ui/components/fileManagement/FileViewer.js +1 -1
  207. package/lib/module/ui/components/fileManagement/FileViewer.js.map +1 -1
  208. package/lib/module/ui/components/fileManagement/UploadPreview.js +1 -1
  209. package/lib/module/ui/components/fileManagement/UploadPreview.js.map +1 -1
  210. package/lib/module/ui/components/modals/DeleteAccountModal.js +1 -1
  211. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -1
  212. package/lib/module/ui/components/payment/PaymentDetailsStep.js +1 -1
  213. package/lib/module/ui/components/payment/PaymentDetailsStep.js.map +1 -1
  214. package/lib/module/ui/components/payment/PaymentMethodStep.js +1 -1
  215. package/lib/module/ui/components/payment/PaymentMethodStep.js.map +1 -1
  216. package/lib/module/ui/components/payment/PaymentReviewStep.js +1 -1
  217. package/lib/module/ui/components/payment/PaymentReviewStep.js.map +1 -1
  218. package/lib/module/ui/components/payment/PaymentSuccessStep.js +1 -1
  219. package/lib/module/ui/components/payment/PaymentSuccessStep.js.map +1 -1
  220. package/lib/module/ui/components/payment/PaymentSummaryStep.js +1 -1
  221. package/lib/module/ui/components/payment/PaymentSummaryStep.js.map +1 -1
  222. package/lib/module/ui/context/OxyContext.js +203 -32
  223. package/lib/module/ui/context/OxyContext.js.map +1 -1
  224. package/lib/module/ui/context/commitSessionFlow.js +42 -0
  225. package/lib/module/ui/context/commitSessionFlow.js.map +1 -1
  226. package/lib/module/ui/context/useOxyAccountGraph.js +13 -5
  227. package/lib/module/ui/context/useOxyAccountGraph.js.map +1 -1
  228. package/lib/module/ui/hooks/useSwitchableAccounts.js +6 -1
  229. package/lib/module/ui/hooks/useSwitchableAccounts.js.map +1 -1
  230. package/lib/module/ui/index.js +0 -1
  231. package/lib/module/ui/index.js.map +1 -1
  232. package/lib/module/ui/oauth/browserAuthTransport.js +165 -0
  233. package/lib/module/ui/oauth/browserAuthTransport.js.map +1 -0
  234. package/lib/module/ui/oauth/completeOAuthCode.js +75 -0
  235. package/lib/module/ui/oauth/completeOAuthCode.js.map +1 -0
  236. package/lib/module/ui/oauth/legacyRedirectLanes.js +44 -0
  237. package/lib/module/ui/oauth/legacyRedirectLanes.js.map +1 -0
  238. package/lib/module/ui/oauth/oauthHandshake.js +50 -0
  239. package/lib/module/ui/oauth/oauthHandshake.js.map +1 -0
  240. package/lib/module/ui/oauth/oauthPopup.js +221 -0
  241. package/lib/module/ui/oauth/oauthPopup.js.map +1 -0
  242. package/lib/module/ui/oauth/oauthPopupMessages.js +135 -0
  243. package/lib/module/ui/oauth/oauthPopupMessages.js.map +1 -0
  244. package/lib/module/ui/oauth/types.js +2 -0
  245. package/lib/module/ui/oauth/types.js.map +1 -0
  246. package/lib/module/ui/screens/AccountMembersScreen.js +1 -1
  247. package/lib/module/ui/screens/AccountMembersScreen.js.map +1 -1
  248. package/lib/module/ui/screens/CreateAccountScreen.js +1 -1
  249. package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
  250. package/lib/module/ui/screens/EditProfileFieldScreen.js +1 -1
  251. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  252. package/lib/module/ui/screens/FAQScreen.js +1 -1
  253. package/lib/module/ui/screens/FAQScreen.js.map +1 -1
  254. package/lib/module/ui/screens/FeedbackScreen.js +1 -1
  255. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  256. package/lib/module/ui/screens/FileManagementScreen.js +2 -1
  257. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  258. package/lib/module/ui/screens/LanguageSelectorScreen.js +1 -1
  259. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  260. package/lib/module/ui/screens/ManageAccountScreen.js +1 -1
  261. package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
  262. package/lib/module/ui/screens/PaymentGatewayScreen.js +1 -1
  263. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  264. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +1 -1
  265. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  266. package/lib/module/ui/screens/ProfileScreen.js +1 -1
  267. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  268. package/lib/module/ui/screens/UserListScreen.js +1 -1
  269. package/lib/module/ui/screens/UserListScreen.js.map +1 -1
  270. package/lib/module/ui/screens/WelcomeNewUserScreen.js +1 -1
  271. package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  272. package/lib/module/ui/screens/fileManagement/FileLibraryError.js +1 -1
  273. package/lib/module/ui/screens/fileManagement/FileLibraryError.js.map +1 -1
  274. package/lib/module/ui/screens/fileManagement/FileListSection.js +1 -1
  275. package/lib/module/ui/screens/fileManagement/FileListSection.js.map +1 -1
  276. package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js +2 -1
  277. package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
  278. package/lib/module/ui/screens/fileManagement/UploadBar.js +1 -1
  279. package/lib/module/ui/screens/fileManagement/UploadBar.js.map +1 -1
  280. package/lib/module/ui/screens/trust/TrustCenterScreen.js +1 -1
  281. package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
  282. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +1 -1
  283. package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
  284. package/lib/module/ui/screens/trust/TrustRewardsScreen.js +1 -1
  285. package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
  286. package/lib/module/ui/server.js +0 -2
  287. package/lib/module/ui/server.js.map +1 -1
  288. package/lib/module/ui/session/authStore.js +5 -75
  289. package/lib/module/ui/session/authStore.js.map +1 -1
  290. package/lib/module/ui/session/createSessionClient.js +11 -3
  291. package/lib/module/ui/session/createSessionClient.js.map +1 -1
  292. package/lib/module/ui/session/identityBinding.js +89 -0
  293. package/lib/module/ui/session/identityBinding.js.map +1 -0
  294. package/lib/module/ui/session/index.js +5 -2
  295. package/lib/module/ui/session/index.js.map +1 -1
  296. package/lib/module/ui/session/nativeSecureStorage.js +88 -0
  297. package/lib/module/ui/session/nativeSecureStorage.js.map +1 -0
  298. package/lib/module/ui/session/tokenTransport.js +11 -1
  299. package/lib/module/ui/session/tokenTransport.js.map +1 -1
  300. package/lib/module/ui/utils/crossOriginRestore.js +4 -3
  301. package/lib/module/ui/utils/crossOriginRestore.js.map +1 -1
  302. package/lib/module/ui/utils/deliveryPlatform.js +55 -0
  303. package/lib/module/ui/utils/deliveryPlatform.js.map +1 -0
  304. package/lib/module/ui/utils/oauthReturn.js +70 -46
  305. package/lib/module/ui/utils/oauthReturn.js.map +1 -1
  306. package/lib/typescript/commonjs/index.d.ts +9 -1
  307. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  308. package/lib/typescript/commonjs/notifications/deviceNotifications.d.ts +141 -0
  309. package/lib/typescript/commonjs/notifications/deviceNotifications.d.ts.map +1 -0
  310. package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.d.ts +34 -2
  311. package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.d.ts.map +1 -1
  312. package/lib/typescript/commonjs/ui/client.d.ts +0 -1
  313. package/lib/typescript/commonjs/ui/client.d.ts.map +1 -1
  314. package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
  315. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts +16 -29
  316. package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts.map +1 -1
  317. package/lib/typescript/commonjs/ui/components/OxyConsentScreen.d.ts.map +1 -1
  318. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
  319. package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts +17 -12
  320. package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts.map +1 -1
  321. package/lib/typescript/commonjs/ui/components/OxySignInRequestSurface.d.ts +108 -0
  322. package/lib/typescript/commonjs/ui/components/OxySignInRequestSurface.d.ts.map +1 -0
  323. package/lib/typescript/commonjs/ui/components/SettingsIcon.d.ts +1 -1
  324. package/lib/typescript/commonjs/ui/components/SettingsIcon.d.ts.map +1 -1
  325. package/lib/typescript/commonjs/ui/components/authChooser/AccountsMenuView.d.ts +38 -0
  326. package/lib/typescript/commonjs/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -0
  327. package/lib/typescript/commonjs/ui/components/authChooser/SignInEntryView.d.ts +32 -0
  328. package/lib/typescript/commonjs/ui/components/authChooser/SignInEntryView.d.ts.map +1 -0
  329. package/lib/typescript/commonjs/ui/components/authChooser/SignInRequestView.d.ts +34 -0
  330. package/lib/typescript/commonjs/ui/components/authChooser/SignInRequestView.d.ts.map +1 -0
  331. package/lib/typescript/commonjs/ui/components/authChooser/SignUpView.d.ts +34 -0
  332. package/lib/typescript/commonjs/ui/components/authChooser/SignUpView.d.ts.map +1 -0
  333. package/lib/typescript/commonjs/ui/components/authChooser/TroubleDisclosure.d.ts +36 -0
  334. package/lib/typescript/commonjs/ui/components/authChooser/TroubleDisclosure.d.ts.map +1 -0
  335. package/lib/typescript/commonjs/ui/components/authChooser/primitives.d.ts +55 -0
  336. package/lib/typescript/commonjs/ui/components/authChooser/primitives.d.ts.map +1 -0
  337. package/lib/typescript/commonjs/ui/components/authChooser/requestSurfaces.d.ts +58 -0
  338. package/lib/typescript/commonjs/ui/components/authChooser/requestSurfaces.d.ts.map +1 -0
  339. package/lib/typescript/commonjs/ui/components/authChooser/signInProgress.d.ts +26 -0
  340. package/lib/typescript/commonjs/ui/components/authChooser/signInProgress.d.ts.map +1 -0
  341. package/lib/typescript/{module/ui/components/oxyAuthChooserStyles.d.ts → commonjs/ui/components/authChooser/styles.d.ts} +19 -1
  342. package/lib/typescript/commonjs/ui/components/authChooser/styles.d.ts.map +1 -0
  343. package/lib/typescript/commonjs/ui/components/authChooser/types.d.ts +103 -0
  344. package/lib/typescript/commonjs/ui/components/authChooser/types.d.ts.map +1 -0
  345. package/lib/typescript/commonjs/ui/components/authChooser/useUsernameAvailability.d.ts +16 -0
  346. package/lib/typescript/commonjs/ui/components/authChooser/useUsernameAvailability.d.ts.map +1 -0
  347. package/lib/typescript/commonjs/ui/components/payment/types.d.ts +1 -1
  348. package/lib/typescript/commonjs/ui/components/payment/types.d.ts.map +1 -1
  349. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  350. package/lib/typescript/commonjs/ui/context/commitSessionFlow.d.ts +40 -0
  351. package/lib/typescript/commonjs/ui/context/commitSessionFlow.d.ts.map +1 -1
  352. package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts +44 -1
  353. package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts.map +1 -1
  354. package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts +7 -1
  355. package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts.map +1 -1
  356. package/lib/typescript/commonjs/ui/hooks/useSwitchableAccounts.d.ts.map +1 -1
  357. package/lib/typescript/commonjs/ui/index.d.ts +0 -1
  358. package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
  359. package/lib/typescript/commonjs/ui/oauth/browserAuthTransport.d.ts +56 -0
  360. package/lib/typescript/commonjs/ui/oauth/browserAuthTransport.d.ts.map +1 -0
  361. package/lib/typescript/commonjs/ui/oauth/completeOAuthCode.d.ts +49 -0
  362. package/lib/typescript/commonjs/ui/oauth/completeOAuthCode.d.ts.map +1 -0
  363. package/lib/typescript/commonjs/ui/oauth/legacyRedirectLanes.d.ts +40 -0
  364. package/lib/typescript/commonjs/ui/oauth/legacyRedirectLanes.d.ts.map +1 -0
  365. package/lib/typescript/commonjs/ui/oauth/oauthHandshake.d.ts +50 -0
  366. package/lib/typescript/commonjs/ui/oauth/oauthHandshake.d.ts.map +1 -0
  367. package/lib/typescript/commonjs/ui/oauth/oauthPopup.d.ts +77 -0
  368. package/lib/typescript/commonjs/ui/oauth/oauthPopup.d.ts.map +1 -0
  369. package/lib/typescript/commonjs/ui/oauth/oauthPopupMessages.d.ts +67 -0
  370. package/lib/typescript/commonjs/ui/oauth/oauthPopupMessages.d.ts.map +1 -0
  371. package/lib/typescript/commonjs/ui/oauth/types.d.ts +176 -0
  372. package/lib/typescript/commonjs/ui/oauth/types.d.ts.map +1 -0
  373. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
  374. package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
  375. package/lib/typescript/commonjs/ui/screens/fileManagement/PhotoPickerSection.d.ts.map +1 -1
  376. package/lib/typescript/commonjs/ui/server.d.ts +0 -2
  377. package/lib/typescript/commonjs/ui/server.d.ts.map +1 -1
  378. package/lib/typescript/commonjs/ui/session/authStore.d.ts +3 -7
  379. package/lib/typescript/commonjs/ui/session/authStore.d.ts.map +1 -1
  380. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts +8 -1
  381. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts.map +1 -1
  382. package/lib/typescript/commonjs/ui/session/identityBinding.d.ts +66 -0
  383. package/lib/typescript/commonjs/ui/session/identityBinding.d.ts.map +1 -0
  384. package/lib/typescript/commonjs/ui/session/index.d.ts +6 -2
  385. package/lib/typescript/commonjs/ui/session/index.d.ts.map +1 -1
  386. package/lib/typescript/commonjs/ui/session/nativeSecureStorage.d.ts +25 -0
  387. package/lib/typescript/commonjs/ui/session/nativeSecureStorage.d.ts.map +1 -0
  388. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts +8 -1
  389. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts.map +1 -1
  390. package/lib/typescript/commonjs/ui/types/navigation.d.ts +44 -0
  391. package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
  392. package/lib/typescript/commonjs/ui/utils/crossOriginRestore.d.ts.map +1 -1
  393. package/lib/typescript/commonjs/ui/utils/deliveryPlatform.d.ts +33 -0
  394. package/lib/typescript/commonjs/ui/utils/deliveryPlatform.d.ts.map +1 -0
  395. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts +1 -1
  396. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts.map +1 -1
  397. package/lib/typescript/commonjs/ui/utils/oauthReturn.d.ts +30 -16
  398. package/lib/typescript/commonjs/ui/utils/oauthReturn.d.ts.map +1 -1
  399. package/lib/typescript/module/index.d.ts +9 -1
  400. package/lib/typescript/module/index.d.ts.map +1 -1
  401. package/lib/typescript/module/notifications/deviceNotifications.d.ts +141 -0
  402. package/lib/typescript/module/notifications/deviceNotifications.d.ts.map +1 -0
  403. package/lib/typescript/module/ui/boot/runProviderColdBoot.d.ts +34 -2
  404. package/lib/typescript/module/ui/boot/runProviderColdBoot.d.ts.map +1 -1
  405. package/lib/typescript/module/ui/client.d.ts +0 -1
  406. package/lib/typescript/module/ui/client.d.ts.map +1 -1
  407. package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
  408. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts +16 -29
  409. package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts.map +1 -1
  410. package/lib/typescript/module/ui/components/OxyConsentScreen.d.ts.map +1 -1
  411. package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
  412. package/lib/typescript/module/ui/components/OxySignInButton.d.ts +17 -12
  413. package/lib/typescript/module/ui/components/OxySignInButton.d.ts.map +1 -1
  414. package/lib/typescript/module/ui/components/OxySignInRequestSurface.d.ts +108 -0
  415. package/lib/typescript/module/ui/components/OxySignInRequestSurface.d.ts.map +1 -0
  416. package/lib/typescript/module/ui/components/SettingsIcon.d.ts +1 -1
  417. package/lib/typescript/module/ui/components/SettingsIcon.d.ts.map +1 -1
  418. package/lib/typescript/module/ui/components/authChooser/AccountsMenuView.d.ts +38 -0
  419. package/lib/typescript/module/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -0
  420. package/lib/typescript/module/ui/components/authChooser/SignInEntryView.d.ts +32 -0
  421. package/lib/typescript/module/ui/components/authChooser/SignInEntryView.d.ts.map +1 -0
  422. package/lib/typescript/module/ui/components/authChooser/SignInRequestView.d.ts +34 -0
  423. package/lib/typescript/module/ui/components/authChooser/SignInRequestView.d.ts.map +1 -0
  424. package/lib/typescript/module/ui/components/authChooser/SignUpView.d.ts +34 -0
  425. package/lib/typescript/module/ui/components/authChooser/SignUpView.d.ts.map +1 -0
  426. package/lib/typescript/module/ui/components/authChooser/TroubleDisclosure.d.ts +36 -0
  427. package/lib/typescript/module/ui/components/authChooser/TroubleDisclosure.d.ts.map +1 -0
  428. package/lib/typescript/module/ui/components/authChooser/primitives.d.ts +55 -0
  429. package/lib/typescript/module/ui/components/authChooser/primitives.d.ts.map +1 -0
  430. package/lib/typescript/module/ui/components/authChooser/requestSurfaces.d.ts +58 -0
  431. package/lib/typescript/module/ui/components/authChooser/requestSurfaces.d.ts.map +1 -0
  432. package/lib/typescript/module/ui/components/authChooser/signInProgress.d.ts +26 -0
  433. package/lib/typescript/module/ui/components/authChooser/signInProgress.d.ts.map +1 -0
  434. package/lib/typescript/{commonjs/ui/components/oxyAuthChooserStyles.d.ts → module/ui/components/authChooser/styles.d.ts} +19 -1
  435. package/lib/typescript/module/ui/components/authChooser/styles.d.ts.map +1 -0
  436. package/lib/typescript/module/ui/components/authChooser/types.d.ts +103 -0
  437. package/lib/typescript/module/ui/components/authChooser/types.d.ts.map +1 -0
  438. package/lib/typescript/module/ui/components/authChooser/useUsernameAvailability.d.ts +16 -0
  439. package/lib/typescript/module/ui/components/authChooser/useUsernameAvailability.d.ts.map +1 -0
  440. package/lib/typescript/module/ui/components/payment/types.d.ts +1 -1
  441. package/lib/typescript/module/ui/components/payment/types.d.ts.map +1 -1
  442. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  443. package/lib/typescript/module/ui/context/commitSessionFlow.d.ts +40 -0
  444. package/lib/typescript/module/ui/context/commitSessionFlow.d.ts.map +1 -1
  445. package/lib/typescript/module/ui/context/oxyContextTypes.d.ts +44 -1
  446. package/lib/typescript/module/ui/context/oxyContextTypes.d.ts.map +1 -1
  447. package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts +7 -1
  448. package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts.map +1 -1
  449. package/lib/typescript/module/ui/hooks/useSwitchableAccounts.d.ts.map +1 -1
  450. package/lib/typescript/module/ui/index.d.ts +0 -1
  451. package/lib/typescript/module/ui/index.d.ts.map +1 -1
  452. package/lib/typescript/module/ui/oauth/browserAuthTransport.d.ts +56 -0
  453. package/lib/typescript/module/ui/oauth/browserAuthTransport.d.ts.map +1 -0
  454. package/lib/typescript/module/ui/oauth/completeOAuthCode.d.ts +49 -0
  455. package/lib/typescript/module/ui/oauth/completeOAuthCode.d.ts.map +1 -0
  456. package/lib/typescript/module/ui/oauth/legacyRedirectLanes.d.ts +40 -0
  457. package/lib/typescript/module/ui/oauth/legacyRedirectLanes.d.ts.map +1 -0
  458. package/lib/typescript/module/ui/oauth/oauthHandshake.d.ts +50 -0
  459. package/lib/typescript/module/ui/oauth/oauthHandshake.d.ts.map +1 -0
  460. package/lib/typescript/module/ui/oauth/oauthPopup.d.ts +77 -0
  461. package/lib/typescript/module/ui/oauth/oauthPopup.d.ts.map +1 -0
  462. package/lib/typescript/module/ui/oauth/oauthPopupMessages.d.ts +67 -0
  463. package/lib/typescript/module/ui/oauth/oauthPopupMessages.d.ts.map +1 -0
  464. package/lib/typescript/module/ui/oauth/types.d.ts +176 -0
  465. package/lib/typescript/module/ui/oauth/types.d.ts.map +1 -0
  466. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  467. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  468. package/lib/typescript/module/ui/screens/fileManagement/PhotoPickerSection.d.ts.map +1 -1
  469. package/lib/typescript/module/ui/server.d.ts +0 -2
  470. package/lib/typescript/module/ui/server.d.ts.map +1 -1
  471. package/lib/typescript/module/ui/session/authStore.d.ts +3 -7
  472. package/lib/typescript/module/ui/session/authStore.d.ts.map +1 -1
  473. package/lib/typescript/module/ui/session/createSessionClient.d.ts +8 -1
  474. package/lib/typescript/module/ui/session/createSessionClient.d.ts.map +1 -1
  475. package/lib/typescript/module/ui/session/identityBinding.d.ts +66 -0
  476. package/lib/typescript/module/ui/session/identityBinding.d.ts.map +1 -0
  477. package/lib/typescript/module/ui/session/index.d.ts +6 -2
  478. package/lib/typescript/module/ui/session/index.d.ts.map +1 -1
  479. package/lib/typescript/module/ui/session/nativeSecureStorage.d.ts +25 -0
  480. package/lib/typescript/module/ui/session/nativeSecureStorage.d.ts.map +1 -0
  481. package/lib/typescript/module/ui/session/tokenTransport.d.ts +8 -1
  482. package/lib/typescript/module/ui/session/tokenTransport.d.ts.map +1 -1
  483. package/lib/typescript/module/ui/types/navigation.d.ts +44 -0
  484. package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
  485. package/lib/typescript/module/ui/utils/crossOriginRestore.d.ts.map +1 -1
  486. package/lib/typescript/module/ui/utils/deliveryPlatform.d.ts +33 -0
  487. package/lib/typescript/module/ui/utils/deliveryPlatform.d.ts.map +1 -0
  488. package/lib/typescript/module/ui/utils/fileManagement.d.ts +1 -1
  489. package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
  490. package/lib/typescript/module/ui/utils/oauthReturn.d.ts +30 -16
  491. package/lib/typescript/module/ui/utils/oauthReturn.d.ts.map +1 -1
  492. package/package.json +15 -7
  493. package/src/index.ts +50 -5
  494. package/src/notifications/deviceNotifications.ts +395 -0
  495. package/src/ui/boot/__tests__/coldBootWebAuthMode.test.ts +281 -0
  496. package/src/ui/boot/runProviderColdBoot.ts +83 -13
  497. package/src/ui/client.ts +0 -1
  498. package/src/ui/components/AvatarCameraBadge.tsx +1 -1
  499. package/src/ui/components/OxyAccountDialogScreen.tsx +20 -3
  500. package/src/ui/components/OxyAuthChooser.tsx +91 -1230
  501. package/src/ui/components/OxyConsentScreen.tsx +56 -13
  502. package/src/ui/components/OxyProvider.tsx +4 -4
  503. package/src/ui/components/OxySignInButton.tsx +119 -78
  504. package/src/ui/components/OxySignInRequestSurface.tsx +202 -0
  505. package/src/ui/components/ProfileButton.tsx +1 -1
  506. package/src/ui/components/SettingsIcon.tsx +1 -1
  507. package/src/ui/components/__tests__/OxyConsentScreen.test.tsx +27 -0
  508. package/src/ui/components/authChooser/AccountsMenuView.tsx +569 -0
  509. package/src/ui/components/authChooser/SignInEntryView.tsx +121 -0
  510. package/src/ui/components/authChooser/SignInRequestView.tsx +130 -0
  511. package/src/ui/components/authChooser/SignUpView.tsx +174 -0
  512. package/src/ui/components/authChooser/TroubleDisclosure.tsx +73 -0
  513. package/src/ui/components/authChooser/primitives.tsx +144 -0
  514. package/src/ui/components/authChooser/requestSurfaces.tsx +120 -0
  515. package/src/ui/components/authChooser/signInProgress.ts +54 -0
  516. package/src/ui/components/{oxyAuthChooserStyles.ts → authChooser/styles.ts} +18 -0
  517. package/src/ui/components/authChooser/types.ts +120 -0
  518. package/src/ui/components/authChooser/useUsernameAvailability.ts +60 -0
  519. package/src/ui/components/fileManagement/AnimatedButton.tsx +1 -1
  520. package/src/ui/components/fileManagement/FileDetailsModal.tsx +1 -1
  521. package/src/ui/components/fileManagement/FileViewer.tsx +1 -1
  522. package/src/ui/components/fileManagement/UploadPreview.tsx +1 -1
  523. package/src/ui/components/modals/DeleteAccountModal.tsx +1 -1
  524. package/src/ui/components/payment/PaymentDetailsStep.tsx +1 -1
  525. package/src/ui/components/payment/PaymentMethodStep.tsx +1 -1
  526. package/src/ui/components/payment/PaymentReviewStep.tsx +1 -1
  527. package/src/ui/components/payment/PaymentSuccessStep.tsx +1 -1
  528. package/src/ui/components/payment/PaymentSummaryStep.tsx +1 -1
  529. package/src/ui/components/payment/types.ts +1 -1
  530. package/src/ui/context/OxyContext.tsx +220 -24
  531. package/src/ui/context/__tests__/commitSessionFlow.test.ts +89 -0
  532. package/src/ui/context/commitSessionFlow.ts +61 -0
  533. package/src/ui/context/oxyContextTypes.ts +45 -1
  534. package/src/ui/context/useOxyAccountGraph.ts +19 -5
  535. package/src/ui/hooks/useSwitchableAccounts.ts +12 -1
  536. package/src/ui/index.ts +0 -1
  537. package/src/ui/oauth/__tests__/browserAuthTransport.test.ts +335 -0
  538. package/src/ui/oauth/__tests__/completeOAuthCode.test.ts +142 -0
  539. package/src/ui/oauth/__tests__/oauthPopup.test.ts +326 -0
  540. package/src/ui/oauth/__tests__/oauthPopupMessages.test.ts +189 -0
  541. package/src/ui/oauth/__tests__/sharedCompletionPath.test.ts +174 -0
  542. package/src/ui/oauth/browserAuthTransport.ts +187 -0
  543. package/src/ui/oauth/completeOAuthCode.ts +93 -0
  544. package/src/ui/oauth/legacyRedirectLanes.ts +43 -0
  545. package/src/ui/oauth/oauthHandshake.ts +74 -0
  546. package/src/ui/oauth/oauthPopup.ts +219 -0
  547. package/src/ui/oauth/oauthPopupMessages.ts +136 -0
  548. package/src/ui/oauth/types.ts +150 -0
  549. package/src/ui/screens/AccountMembersScreen.tsx +1 -1
  550. package/src/ui/screens/CreateAccountScreen.tsx +1 -1
  551. package/src/ui/screens/EditProfileFieldScreen.tsx +1 -1
  552. package/src/ui/screens/FAQScreen.tsx +1 -1
  553. package/src/ui/screens/FeedbackScreen.tsx +2 -1
  554. package/src/ui/screens/FileManagementScreen.tsx +2 -1
  555. package/src/ui/screens/LanguageSelectorScreen.tsx +1 -1
  556. package/src/ui/screens/ManageAccountScreen.tsx +1 -1
  557. package/src/ui/screens/PaymentGatewayScreen.tsx +1 -1
  558. package/src/ui/screens/PremiumSubscriptionScreen.tsx +1 -1
  559. package/src/ui/screens/ProfileScreen.tsx +1 -1
  560. package/src/ui/screens/UserListScreen.tsx +1 -1
  561. package/src/ui/screens/WelcomeNewUserScreen.tsx +1 -1
  562. package/src/ui/screens/fileManagement/FileLibraryError.tsx +1 -1
  563. package/src/ui/screens/fileManagement/FileListSection.tsx +1 -1
  564. package/src/ui/screens/fileManagement/PhotoPickerSection.tsx +2 -1
  565. package/src/ui/screens/fileManagement/UploadBar.tsx +1 -1
  566. package/src/ui/screens/trust/TrustCenterScreen.tsx +1 -1
  567. package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +1 -1
  568. package/src/ui/screens/trust/TrustRewardsScreen.tsx +1 -1
  569. package/src/ui/server.ts +0 -2
  570. package/src/ui/session/__tests__/createSessionClient.test.ts +26 -0
  571. package/src/ui/session/__tests__/tokenTransport.test.ts +34 -0
  572. package/src/ui/session/authStore.ts +5 -89
  573. package/src/ui/session/createSessionClient.ts +15 -2
  574. package/src/ui/session/identityBinding.ts +116 -0
  575. package/src/ui/session/index.ts +6 -2
  576. package/src/ui/session/nativeSecureStorage.ts +98 -0
  577. package/src/ui/session/tokenTransport.ts +14 -1
  578. package/src/ui/types/navigation.ts +44 -1
  579. package/src/ui/utils/crossOriginRestore.ts +4 -7
  580. package/src/ui/utils/deliveryPlatform.ts +65 -0
  581. package/src/ui/utils/fileManagement.ts +1 -1
  582. package/src/ui/utils/oauthReturn.ts +74 -65
  583. package/lib/commonjs/assets/assets/fonts/Inter/Inter_18pt-Black.ttf +0 -0
  584. package/lib/commonjs/assets/assets/fonts/Inter/Inter_18pt-Bold.ttf +0 -0
  585. package/lib/commonjs/assets/assets/fonts/Inter/Inter_18pt-ExtraBold.ttf +0 -0
  586. package/lib/commonjs/assets/assets/fonts/Inter/Inter_18pt-Light.ttf +0 -0
  587. package/lib/commonjs/assets/assets/fonts/Inter/Inter_18pt-Medium.ttf +0 -0
  588. package/lib/commonjs/assets/assets/fonts/Inter/Inter_18pt-Regular.ttf +0 -0
  589. package/lib/commonjs/assets/assets/fonts/Inter/Inter_18pt-SemiBold.ttf +0 -0
  590. package/lib/commonjs/assets/fonts/Inter/Inter_18pt-Black.ttf +0 -0
  591. package/lib/commonjs/assets/fonts/Inter/Inter_18pt-Bold.ttf +0 -0
  592. package/lib/commonjs/assets/fonts/Inter/Inter_18pt-ExtraBold.ttf +0 -0
  593. package/lib/commonjs/assets/fonts/Inter/Inter_18pt-Light.ttf +0 -0
  594. package/lib/commonjs/assets/fonts/Inter/Inter_18pt-Medium.ttf +0 -0
  595. package/lib/commonjs/assets/fonts/Inter/Inter_18pt-Regular.ttf +0 -0
  596. package/lib/commonjs/assets/fonts/Inter/Inter_18pt-SemiBold.ttf +0 -0
  597. package/lib/commonjs/ui/components/FontLoader.js +0 -35
  598. package/lib/commonjs/ui/components/FontLoader.js.map +0 -1
  599. package/lib/commonjs/ui/components/FontLoader.native.js +0 -88
  600. package/lib/commonjs/ui/components/FontLoader.native.js.map +0 -1
  601. package/lib/commonjs/ui/components/oxyAuthChooserStyles.js.map +0 -1
  602. package/lib/module/assets/assets/fonts/Inter/Inter_18pt-Black.ttf +0 -0
  603. package/lib/module/assets/assets/fonts/Inter/Inter_18pt-Bold.ttf +0 -0
  604. package/lib/module/assets/assets/fonts/Inter/Inter_18pt-ExtraBold.ttf +0 -0
  605. package/lib/module/assets/assets/fonts/Inter/Inter_18pt-Light.ttf +0 -0
  606. package/lib/module/assets/assets/fonts/Inter/Inter_18pt-Medium.ttf +0 -0
  607. package/lib/module/assets/assets/fonts/Inter/Inter_18pt-Regular.ttf +0 -0
  608. package/lib/module/assets/assets/fonts/Inter/Inter_18pt-SemiBold.ttf +0 -0
  609. package/lib/module/assets/fonts/Inter/Inter_18pt-Black.ttf +0 -0
  610. package/lib/module/assets/fonts/Inter/Inter_18pt-Bold.ttf +0 -0
  611. package/lib/module/assets/fonts/Inter/Inter_18pt-ExtraBold.ttf +0 -0
  612. package/lib/module/assets/fonts/Inter/Inter_18pt-Light.ttf +0 -0
  613. package/lib/module/assets/fonts/Inter/Inter_18pt-Medium.ttf +0 -0
  614. package/lib/module/assets/fonts/Inter/Inter_18pt-Regular.ttf +0 -0
  615. package/lib/module/assets/fonts/Inter/Inter_18pt-SemiBold.ttf +0 -0
  616. package/lib/module/ui/components/FontLoader.js +0 -29
  617. package/lib/module/ui/components/FontLoader.js.map +0 -1
  618. package/lib/module/ui/components/FontLoader.native.js +0 -83
  619. package/lib/module/ui/components/FontLoader.native.js.map +0 -1
  620. package/lib/module/ui/components/oxyAuthChooserStyles.js.map +0 -1
  621. package/lib/typescript/commonjs/ui/components/FontLoader.d.ts +0 -24
  622. package/lib/typescript/commonjs/ui/components/FontLoader.d.ts.map +0 -1
  623. package/lib/typescript/commonjs/ui/components/FontLoader.native.d.ts +0 -13
  624. package/lib/typescript/commonjs/ui/components/FontLoader.native.d.ts.map +0 -1
  625. package/lib/typescript/commonjs/ui/components/oxyAuthChooserStyles.d.ts.map +0 -1
  626. package/lib/typescript/module/ui/components/FontLoader.d.ts +0 -24
  627. package/lib/typescript/module/ui/components/FontLoader.d.ts.map +0 -1
  628. package/lib/typescript/module/ui/components/FontLoader.native.d.ts +0 -13
  629. package/lib/typescript/module/ui/components/FontLoader.native.d.ts.map +0 -1
  630. package/lib/typescript/module/ui/components/oxyAuthChooserStyles.d.ts.map +0 -1
  631. package/src/assets/fonts/Inter/Inter_18pt-Black.ttf +0 -0
  632. package/src/assets/fonts/Inter/Inter_18pt-Bold.ttf +0 -0
  633. package/src/assets/fonts/Inter/Inter_18pt-ExtraBold.ttf +0 -0
  634. package/src/assets/fonts/Inter/Inter_18pt-Light.ttf +0 -0
  635. package/src/assets/fonts/Inter/Inter_18pt-Medium.ttf +0 -0
  636. package/src/assets/fonts/Inter/Inter_18pt-Regular.ttf +0 -0
  637. package/src/assets/fonts/Inter/Inter_18pt-SemiBold.ttf +0 -0
  638. package/src/ui/components/FontLoader.native.tsx +0 -88
  639. package/src/ui/components/FontLoader.tsx +0 -27
@@ -4,11 +4,13 @@ import { createContext, useCallback, useContext, useEffect, useMemo, useRef, use
4
4
  import { Linking } from 'react-native';
5
5
  import { io } from 'socket.io-client';
6
6
  import { OxyServices, oxyClient } from '@oxyhq/core';
7
- import { KeyManager, installAuthRefreshHandler, startTokenRefreshScheduler, createAccountDialogController, logger as loggerUtil, syncHubAfterSignIn } from '@oxyhq/core';
7
+ import { KeyManager, establishIdentitySession, installAuthRefreshHandler, startTokenRefreshScheduler, createAccountDialogController, logger as loggerUtil, syncHubAfterSignIn } from '@oxyhq/core';
8
8
  import { registerAccountDialogControls, notifyAccountDialogVisibility } from "../navigation/accountDialogManager.js";
9
9
  import { redirectToAuthorize } from "../components/oauthNavigation.js";
10
10
  import { openPasskeyHubPopup } from "../components/passkeyHubPopup.js";
11
+ import { startWebOAuthSignIn } from "../oauth/browserAuthTransport.js";
11
12
  import { isWebBrowser } from "../utils/isWebBrowser.js";
13
+ import { resolveDeliveryPlatform } from "../utils/deliveryPlatform.js";
12
14
  import { runProviderColdBoot } from "../boot/runProviderColdBoot.js";
13
15
  import { loadPersistedDeviceCredential } from "../utils/deviceCredential.js";
14
16
  import { useAuthStore } from "../stores/authStore.js";
@@ -24,9 +26,9 @@ import { useQueryClient, onlineManager } from '@tanstack/react-query';
24
26
  import { clearQueryCache } from "../hooks/queryClient.js";
25
27
  import { useAvatarPicker } from "../hooks/useAvatarPicker.js";
26
28
  import { useAccountStore } from "../stores/accountStore.js";
27
- import { createSessionClient, createPlatformAuthStateStore, deviceStateToClientSessions, activeSessionIdOf, activeUserOf, accountIdsOf } from "../session/index.js";
29
+ import { createSessionClient, createIdentitySessionBinding, createPlatformAuthStateStore, deviceStateToClientSessions, activeSessionIdOf, activeUserOf, accountIdsOf, IdentityBoundSessionError } from "../session/index.js";
28
30
  import { DEFAULT_SESSION_VALIDITY_MS, loadUseFollowHook } from "./oxyContextHelpers.js";
29
- import { commitDeviceSetAndResolve } from "./commitSessionFlow.js";
31
+ import { commitDeviceSetAndResolve, maybeSyncHubAfterCommit } from "./commitSessionFlow.js";
30
32
  import { runPasskeyLogin, runPasskeyRegister, runPasskeyAdd } from "./passkeyFlow.js";
31
33
  import { isPasskeySupported, runRegistrationCeremony, runAuthenticationCeremony } from '../../webauthn/passkeyClient';
32
34
  import { queryKeys } from "../hooks/queries/queryKeys.js";
@@ -42,6 +44,8 @@ export const OxyProvider = ({
42
44
  authorizeBaseUrl,
43
45
  storageKeyPrefix = 'oxy_session',
44
46
  clientId: clientIdProp,
47
+ sessionMode = 'account',
48
+ webAuthMode = 'redirect',
45
49
  hubSync = true,
46
50
  onAuthStateChange,
47
51
  onError
@@ -72,6 +76,23 @@ export const OxyProvider = ({
72
76
  authStoreRef.current = createPlatformAuthStateStore();
73
77
  }
74
78
  const authStore = authStoreRef.current;
79
+
80
+ // Identity-bound session binding (`sessionMode: 'identity'`) — the platform pin
81
+ // store plus the memoised pinned account id every lane below binds to. Built
82
+ // ONCE per provider mount and ONLY in identity mode: an account-mode provider
83
+ // never constructs one, so `identity` is `null` there and every branch keyed on
84
+ // it collapses to today's behaviour.
85
+ //
86
+ // Like `oxyServices` / `baseURL`, `sessionMode` is mount-time configuration: it
87
+ // is read once and a later change does not re-bind the provider. Latching it
88
+ // this way also fails SAFE — a provider that started identity-bound can never
89
+ // be downgraded mid-flight into following the device's active account.
90
+ const identityRef = useRef(null);
91
+ if (sessionMode === 'identity' && !identityRef.current) {
92
+ identityRef.current = createIdentitySessionBinding();
93
+ }
94
+ const identity = identityRef.current;
95
+ const isIdentityBound = identity !== null;
75
96
  const {
76
97
  user,
77
98
  isAuthenticated,
@@ -258,13 +279,62 @@ export const OxyProvider = ({
258
279
  void clearSessionStateRef.current().catch(clearError => {
259
280
  logger('Failed to clear local state on remote sign-out', clearError);
260
281
  });
261
- });
282
+ },
283
+ // `null` for every account-mode provider — identical to omitting the
284
+ // option — and the pinned account id once an identity-bound provider has
285
+ // resolved its pin. Read through the ref so the resolver stays stable for
286
+ // the client's lifetime while still seeing later resolutions.
287
+ () => identityRef.current?.getPinnedAccountId() ?? null);
262
288
  }
263
289
  const {
264
290
  client: sessionClient,
265
291
  host: sessionClientHost
266
292
  } = sessionClientPairRef.current;
267
293
 
294
+ // Re-establishment lane for an identity-bound provider whose pin is missing or
295
+ // whose pinned account is no longer part of this device's session set (another
296
+ // app signed it out, or the device was re-provisioned). Adopting whichever
297
+ // account the device is currently switched to is exactly the drift
298
+ // `sessionMode: 'identity'` exists to prevent, so the only correct answer is to
299
+ // re-derive the session from the local identity key.
300
+ //
301
+ // Bounded on purpose: at most ONE attempt per applied device revision, and
302
+ // never two concurrently — a repeated failure (locked keychain, offline, no
303
+ // local identity) must never spin a sign-in loop against the server. Nothing
304
+ // awaits it, so it can never deadlock against the projection that triggers it;
305
+ // the `bootstrap()` below re-applies device state, whose notify re-runs the
306
+ // projection with the pin now resolved.
307
+ const identityEstablishRef = useRef({
308
+ revision: null,
309
+ inFlight: false
310
+ });
311
+ const reestablishIdentitySession = useCallback((binding, revision) => {
312
+ const tracker = identityEstablishRef.current;
313
+ if (tracker.inFlight || tracker.revision === revision) {
314
+ return;
315
+ }
316
+ tracker.revision = revision;
317
+ tracker.inFlight = true;
318
+ void (async () => {
319
+ const established = await establishIdentitySession({
320
+ oxy: oxyServices,
321
+ store: authStore,
322
+ binding: binding.binding
323
+ });
324
+ if (!established) {
325
+ return;
326
+ }
327
+ // The verify wrote a fresh pin; adopt it before re-reading device state
328
+ // so the notify that follows projects against the new binding.
329
+ await binding.refreshPinnedAccountId();
330
+ await sessionClient.bootstrap();
331
+ })().catch(establishError => {
332
+ logger('Failed to re-establish the identity-bound session', establishError);
333
+ }).finally(() => {
334
+ tracker.inFlight = false;
335
+ });
336
+ }, [oxyServices, authStore, sessionClient, logger]);
337
+
268
338
  // Projects `client.getState()` onto the exposed `sessions`/`activeSessionId`/
269
339
  // `user`. Sole authority for both locally-initiated mutations (switch/logout)
270
340
  // AND remotely-pushed `session_state` over the `device:<deviceId>` socket.
@@ -286,6 +356,13 @@ export const OxyProvider = ({
286
356
  // Last-write-wins guard: capture the revision this projection is for, then
287
357
  // after the async profile fetch bail if a fresher state has landed.
288
358
  const capturedRevision = state.revision;
359
+ // Resolve the pin BEFORE the profile fetch (memoised: one storage + keychain
360
+ // read per boot) so every projection below is bound on the FIRST pass over a
361
+ // freshly applied state. Deferring it would let a sibling app's switch render
362
+ // once as this client's user before the pin corrected it. `null` for every
363
+ // account-mode provider, where each projection falls back to the device's
364
+ // active account exactly as before.
365
+ const pinnedAccountId = identity ? await identity.ensurePinnedAccountId() : null;
289
366
  const ids = accountIdsOf(state);
290
367
  let users = [];
291
368
  try {
@@ -298,15 +375,26 @@ export const OxyProvider = ({
298
375
  if (!latest || latest.revision !== capturedRevision) {
299
376
  return;
300
377
  }
378
+ if (identity && (pinnedAccountId === null || activeSessionIdOf(latest, pinnedAccountId) === null)) {
379
+ // Either no verified pin, or the pinned account left this device's session
380
+ // set. Projecting anything here would mean projecting SOMEBODY ELSE's
381
+ // account, so leave the current projection untouched and re-derive the
382
+ // session from the local identity key instead.
383
+ reestablishIdentitySession(identity, latest.revision);
384
+ return;
385
+ }
301
386
  const usersById = new Map(users.map(resolvedUser => [resolvedUser.id, resolvedUser]));
302
- updateSessions(deviceStateToClientSessions(latest, usersById));
303
- setActiveSessionId(activeSessionIdOf(latest));
304
- const activeUser = activeUserOf(latest, usersById);
387
+ updateSessions(deviceStateToClientSessions(latest, usersById, pinnedAccountId));
388
+ setActiveSessionId(activeSessionIdOf(latest, pinnedAccountId));
389
+ const activeUser = activeUserOf(latest, usersById, pinnedAccountId);
305
390
  if (activeUser) {
306
391
  loginSuccess(activeUser);
307
392
  }
308
- sessionClientHost.setCurrentAccountId(latest.activeAccountId);
309
- }, [oxyServices, sessionClient, sessionClientHost, updateSessions, setActiveSessionId, loginSuccess, clearSessionState, logger]);
393
+ // The host's current account feeds the socket handshake and the bearer's
394
+ // token-account comparisons, so it tracks the PIN — never the account another
395
+ // app switched the device to.
396
+ sessionClientHost.setCurrentAccountId(pinnedAccountId ?? latest.activeAccountId);
397
+ }, [identity, oxyServices, reestablishIdentitySession, sessionClient, sessionClientHost, updateSessions, setActiveSessionId, loginSuccess, clearSessionState, logger]);
310
398
  const syncFromClientRef = useRef(syncFromClient);
311
399
  syncFromClientRef.current = syncFromClient;
312
400
  const syncDeviceCredentialToHost = useCallback(async () => {
@@ -426,17 +514,23 @@ export const OxyProvider = ({
426
514
  // credential via `POST /session/device/token`) plus the proactive scheduler
427
515
  // that refreshes ~60s before expiry and on tab-focus. Replaces the deleted
428
516
  // services-local `inSessionTokenRefresh` module.
517
+ // An identity binding turns every re-mint pinned: it targets the pinned
518
+ // account instead of the device's active one, and its recovery arm becomes the
519
+ // PRIMARY-key identity sign-in rather than the cross-app shared keychain.
429
520
  useEffect(() => {
430
521
  const dispose = installAuthRefreshHandler({
431
522
  oxy: oxyServices,
432
- store: authStore
523
+ store: authStore,
524
+ ...(identity ? {
525
+ identity: identity.binding
526
+ } : {})
433
527
  });
434
528
  const scheduler = startTokenRefreshScheduler(oxyServices);
435
529
  return () => {
436
530
  scheduler.dispose();
437
531
  dispose();
438
532
  };
439
- }, [oxyServices, authStore]);
533
+ }, [oxyServices, authStore, identity]);
440
534
 
441
535
  // ── Session commit funnel ────────────────────────────────────────────────
442
536
  // The single place a session becomes committed: plant tokens, persist the
@@ -513,21 +607,22 @@ export const OxyProvider = ({
513
607
  onAuthStateChange: onAuthStateChangeRef.current,
514
608
  markAuthResolved: markAuthResolvedRef.current
515
609
  });
516
- if (options.activate && options.hubSync && hubSync && isWebBrowser()) {
517
- try {
518
- await syncHubAfterSignIn(oxyServices, {
519
- enabled: hubSync
520
- });
521
- } catch (hubError) {
522
- if (__DEV__) {
523
- loggerUtil.debug('Hub sync after sign-in failed (non-fatal)', {
524
- component: 'OxyContext',
525
- method: 'commitSession'
526
- }, hubError);
527
- }
528
- }
529
- }
530
- }, [oxyServices, authStore, updateSessions, setActiveSessionId, sessionClient, sessionClientHost, syncFromClient, loginSuccess, logger, hubSync]);
610
+
611
+ // Post-sign-in hub sync — a full-page redirect to auth.oxy.so. Gated HERE,
612
+ // inside the ONE commit funnel, so NO commit path (QR device flow,
613
+ // password/2FA through the account dialog, passkey, popup OAuth, cold
614
+ // boot) can bounce a `webAuthMode: 'popup'` tab to the IdP. See
615
+ // `maybeSyncHubAfterCommit` for the full gate list.
616
+ await maybeSyncHubAfterCommit({
617
+ activate: options.activate,
618
+ hubSyncRequested: options.hubSync === true,
619
+ hubSyncEnabled: hubSync,
620
+ webAuthMode,
621
+ syncHub: () => syncHubAfterSignIn(oxyServices, {
622
+ enabled: hubSync
623
+ })
624
+ });
625
+ }, [oxyServices, authStore, updateSessions, setActiveSessionId, sessionClient, sessionClientHost, syncFromClient, loginSuccess, logger, hubSync, webAuthMode]);
531
626
  const commitSessionRef = useRef(commitSession);
532
627
  commitSessionRef.current = commitSession;
533
628
 
@@ -573,6 +668,28 @@ export const OxyProvider = ({
573
668
  });
574
669
  }, [commitSession]);
575
670
 
671
+ // ── Web third-party OAuth sign-in ──────────────────────────────────────────
672
+ // The shared operation `OxySignInButton` (and any RP-owned button) delegates
673
+ // to, so no consumer ever writes popup listeners or a token exchange. The
674
+ // transport picks popup vs redirect from `webAuthMode`; both lanes land on the
675
+ // SAME completion path (`completeOAuthCode`) and the same commit funnel here.
676
+ //
677
+ // `hubSync: false` is deliberate: hub sync is a full-page redirect to
678
+ // auth.oxy.so, which would undo the one thing popup mode exists to guarantee —
679
+ // that the relying party never leaves its route. It matches how the redirect
680
+ // lane's return leg commits (see `runProviderColdBoot`).
681
+ const startWebOAuthSignInForContext = useCallback(options => startWebOAuthSignIn({
682
+ mode: webAuthMode,
683
+ oxyServices,
684
+ clientId,
685
+ authorizeBaseUrl,
686
+ identityBound: isIdentityBound,
687
+ commitSession: input => commitSessionRef.current(input, {
688
+ activate: true,
689
+ hubSync: false
690
+ })
691
+ }, options), [webAuthMode, oxyServices, clientId, authorizeBaseUrl, isIdentityBound]);
692
+
576
693
  // ── Unified account dialog ─────────────────────────────────────────────────
577
694
  // The single account-chooser + sign-in surface. Built ONCE per provider mount
578
695
  // and bound to the live `oxyServices` + `sessionClient` + this provider's
@@ -613,8 +730,14 @@ export const OxyProvider = ({
613
730
  }
614
731
  accountDialogSurfaceRef.current?.dismiss();
615
732
  }, []);
733
+
734
+ // Never built while identity-bound: the dialog exists to CHOOSE an account,
735
+ // and an identity-bound client has exactly one — the owner of the local
736
+ // identity key. Leaving it `null` (the same shape consumers see with no
737
+ // provider mounted) keeps its QR/polling machinery off entirely instead of
738
+ // relying on UI-level filtering to hide it.
616
739
  const accountDialogControllerRef = useRef(null);
617
- if (!accountDialogControllerRef.current) {
740
+ if (!isIdentityBound && !accountDialogControllerRef.current) {
618
741
  accountDialogControllerRef.current = createAccountDialogController({
619
742
  oxyServices,
620
743
  sessionClient,
@@ -647,11 +770,27 @@ export const OxyProvider = ({
647
770
  // popup (b2) for a non-Oxy origin. `undefined` on native — there is no
648
771
  // popup concept there, and off-origin passkey sign-in isn't reachable
649
772
  // (Commons owns the native flow).
650
- openPopup: isWebBrowser() ? openPasskeyHubPopup : undefined
773
+ openPopup: isWebBrowser() ? openPasskeyHubPopup : undefined,
774
+ // Which surface a sign-in starts from — a FACT only this consumer can
775
+ // supply (headless core never touches a platform global). It decides
776
+ // whether automatic delivery may take the same-device Commons deep link;
777
+ // without it the controller stays `'unknown'` and that route never fires.
778
+ platform: resolveDeliveryPlatform()
651
779
  });
652
780
  }
653
781
  const accountDialogController = accountDialogControllerRef.current;
654
782
  const openAccountDialog = useCallback(view => {
783
+ if (isIdentityBound) {
784
+ // No controller was built, and there is nothing to choose: this app's user
785
+ // is fixed to the owner of the local identity key.
786
+ if (__DEV__) {
787
+ loggerUtil.warn('openAccountDialog ignored: the session is identity-bound (sessionMode: "identity")', {
788
+ component: 'OxyContext',
789
+ method: 'openAccountDialog'
790
+ });
791
+ }
792
+ return;
793
+ }
655
794
  const nextView = view ?? 'accounts';
656
795
  accountDialogControllerRef.current?.setView(nextView);
657
796
 
@@ -701,7 +840,7 @@ export const OxyProvider = ({
701
840
  }
702
841
  });
703
842
  setAccountDialogOpen(true);
704
- }, []);
843
+ }, [isIdentityBound]);
705
844
  const closeAccountDialog = useCallback(() => {
706
845
  accountDialogControllerRef.current?.cancelSignIn();
707
846
  dismissAccountDialogSurface();
@@ -803,19 +942,38 @@ export const OxyProvider = ({
803
942
  // ── Cold boot ────────────────────────────────────────────────────────────
804
943
  // Device-first session restore via `runProviderColdBoot` (see boot/runProviderColdBoot.ts).
805
944
  const runColdBoot = useCallback(async () => {
945
+ // Resolve the pin BEFORE any boot lane runs: `getPinnedAccountId()` is a
946
+ // SYNCHRONOUS read on `SessionClient`'s apply path, and a stale `null` there
947
+ // would let a pinned client behave like an account-mode one for the first
948
+ // state it applies (including re-electing the device's active account).
949
+ if (identity) {
950
+ await identity.ensurePinnedAccountId();
951
+ }
806
952
  await runProviderColdBoot({
807
953
  oxyServices,
808
954
  authStore,
809
955
  clientId: clientIdProp,
810
956
  authRedirectUri,
811
957
  authorizeBaseUrl,
958
+ sessionMode,
959
+ identity: identity?.binding,
960
+ // Popup mode forbids the boot's automatic full-page `prompt=none` restore:
961
+ // a domain with no local credential resolves signed out instead of
962
+ // navigating the tab to the IdP (see `allowsAutomaticIdpRedirect`).
963
+ webAuthMode,
812
964
  sessionClient,
813
965
  syncDeviceCredentialToHost,
814
966
  commitSession: (input, options) => commitSessionRef.current(input, options),
815
967
  markAuthResolved: () => markAuthResolvedRef.current(),
816
968
  setTokenReady
817
969
  });
818
- }, [oxyServices, authStore, clientIdProp, authRedirectUri, authorizeBaseUrl, syncDeviceCredentialToHost, sessionClient]);
970
+ // The boot may have (re-)established the identity session or cleared a pin
971
+ // whose key no longer exists, so re-resolve rather than trusting the memo
972
+ // taken before it ran.
973
+ if (identity) {
974
+ await identity.refreshPinnedAccountId();
975
+ }
976
+ }, [oxyServices, authStore, clientIdProp, authRedirectUri, authorizeBaseUrl, sessionMode, identity, webAuthMode, syncDeviceCredentialToHost, sessionClient]);
819
977
  useEffect(() => {
820
978
  if (initialized) {
821
979
  return;
@@ -901,7 +1059,13 @@ export const OxyProvider = ({
901
1059
  // Exposed `switchSession`: route through the server-authoritative
902
1060
  // `SessionClient`. Resolve the target account from the current device state,
903
1061
  // ask the server to switch, reproject, and return the now-active user.
1062
+ //
1063
+ // Identity-bound providers reject: this is the session-keyed twin of
1064
+ // `switchToAccount`, so leaving it live would be a bypass around the same rule.
904
1065
  const switchSessionForContext = useCallback(async sessionId => {
1066
+ if (isIdentityBound) {
1067
+ throw new IdentityBoundSessionError('switchSession');
1068
+ }
905
1069
  const targetAccountId = sessionClient.getState()?.accounts.find(account => account.sessionId === sessionId)?.accountId;
906
1070
  if (!targetAccountId) {
907
1071
  throw new Error(`No device account found for session "${sessionId}"`);
@@ -913,7 +1077,7 @@ export const OxyProvider = ({
913
1077
  throw new Error('Active account profile could not be resolved after switch');
914
1078
  }
915
1079
  return activeUser;
916
- }, [sessionClient, syncFromClient]);
1080
+ }, [isIdentityBound, sessionClient, syncFromClient]);
917
1081
 
918
1082
  // Thin passthroughs to the platform-agnostic KeyManager. NOTE: both now THROW
919
1083
  // `IdentityUnavailableError` (from `@oxyhq/core`) when identity storage is
@@ -944,6 +1108,7 @@ export const OxyProvider = ({
944
1108
  isAuthenticated,
945
1109
  tokenReady,
946
1110
  initialized,
1111
+ identityBound: isIdentityBound,
947
1112
  oxyServices,
948
1113
  sessionClient,
949
1114
  syncFromClient,
@@ -966,6 +1131,8 @@ export const OxyProvider = ({
966
1131
  isPrivateApiPending,
967
1132
  isAuthResolved: authResolved,
968
1133
  isStorageReady: storage !== null,
1134
+ sessionMode: isIdentityBound ? 'identity' : 'account',
1135
+ webAuthMode,
969
1136
  error,
970
1137
  currentLanguage,
971
1138
  currentLanguages,
@@ -981,6 +1148,7 @@ export const OxyProvider = ({
981
1148
  removePasskey,
982
1149
  revokeSuspiciousSignIn,
983
1150
  handleWebSession,
1151
+ startWebOAuthSignIn: startWebOAuthSignInForContext,
984
1152
  logout,
985
1153
  logoutAll,
986
1154
  switchSession: switchSessionForContext,
@@ -1007,7 +1175,7 @@ export const OxyProvider = ({
1007
1175
  switchToAccount,
1008
1176
  refreshAccounts,
1009
1177
  createAccount: createAccountFn
1010
- }), [user, sessions, activeSessionId, isAuthenticated, isLoading, tokenReady, hasAccessToken, canUsePrivateApi, isPrivateApiPending, authResolved, storage, error, currentLanguage, currentLanguages, currentLanguageMetadata, currentLanguageName, currentNativeLanguageName, hasIdentity, getPublicKey, signIn, signInWithPasskey, registerWithPasskey, addPasskey, removePasskey, revokeSuspiciousSignIn, handleWebSession, logout, logoutAll, switchSessionForContext, refreshSessionsForContext, setLanguage, getDeviceSessions, logoutAllDeviceSessions, updateDeviceName, clearSessionState, clearAllAccountData, storageKeyPrefix, clientId, oxyServices, sessionClient, useFollowHook, showBottomSheetForContext, openAvatarPicker, accountDialogController, accountDialogOpen, openAccountDialog, closeAccountDialog, accounts, switchToAccount, refreshAccounts, createAccountFn]);
1178
+ }), [user, sessions, activeSessionId, isAuthenticated, isLoading, tokenReady, hasAccessToken, canUsePrivateApi, isPrivateApiPending, authResolved, storage, isIdentityBound, webAuthMode, error, currentLanguage, currentLanguages, currentLanguageMetadata, currentLanguageName, currentNativeLanguageName, hasIdentity, getPublicKey, signIn, signInWithPasskey, registerWithPasskey, addPasskey, removePasskey, revokeSuspiciousSignIn, handleWebSession, startWebOAuthSignInForContext, logout, logoutAll, switchSessionForContext, refreshSessionsForContext, setLanguage, getDeviceSessions, logoutAllDeviceSessions, updateDeviceName, clearSessionState, clearAllAccountData, storageKeyPrefix, clientId, oxyServices, sessionClient, useFollowHook, showBottomSheetForContext, openAvatarPicker, accountDialogController, accountDialogOpen, openAccountDialog, closeAccountDialog, accounts, switchToAccount, refreshAccounts, createAccountFn]);
1011
1179
  return /*#__PURE__*/_jsx(OxyContext.Provider, {
1012
1180
  value: contextValue,
1013
1181
  children: children
@@ -1036,6 +1204,8 @@ const LOADING_STATE = {
1036
1204
  isPrivateApiPending: true,
1037
1205
  isAuthResolved: false,
1038
1206
  isStorageReady: false,
1207
+ sessionMode: 'account',
1208
+ webAuthMode: 'redirect',
1039
1209
  error: null,
1040
1210
  currentLanguage: 'en-US',
1041
1211
  currentLanguages: [],
@@ -1051,6 +1221,7 @@ const LOADING_STATE = {
1051
1221
  removePasskey: () => rejectMissingProvider(),
1052
1222
  revokeSuspiciousSignIn: () => rejectMissingProvider(),
1053
1223
  handleWebSession: () => rejectMissingProvider(),
1224
+ startWebOAuthSignIn: () => rejectMissingProvider(),
1054
1225
  logout: () => rejectMissingProvider(),
1055
1226
  logoutAll: () => rejectMissingProvider(),
1056
1227
  switchSession: () => rejectMissingProvider(),
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","Linking","io","OxyServices","oxyClient","KeyManager","installAuthRefreshHandler","startTokenRefreshScheduler","createAccountDialogController","logger","loggerUtil","syncHubAfterSignIn","registerAccountDialogControls","notifyAccountDialogVisibility","redirectToAuthorize","openPasskeyHubPopup","isWebBrowser","runProviderColdBoot","loadPersistedDeviceCredential","useAuthStore","useShallow","useLanguageManagement","useSessionManagement","useAuthOperations","clearPersistedAuthSafe","useDeviceManagement","getStorageKeys","createPlatformStorage","showBottomSheet","globalShowBottomSheet","presentDetached","topRouteSurface","useQueryClient","onlineManager","clearQueryCache","useAvatarPicker","useAccountStore","createSessionClient","createPlatformAuthStateStore","deviceStateToClientSessions","activeSessionIdOf","activeUserOf","accountIdsOf","DEFAULT_SESSION_VALIDITY_MS","loadUseFollowHook","commitDeviceSetAndResolve","runPasskeyLogin","runPasskeyRegister","runPasskeyAdd","isPasskeySupported","runRegistrationCeremony","runAuthenticationCeremony","queryKeys","useOxyAccountGraph","jsx","_jsx","OxyContext","OxyProvider","children","oxyServices","providedOxyServices","baseURL","authWebUrl","authRedirectUri","authorizeBaseUrl","storageKeyPrefix","clientId","clientIdProp","hubSync","onAuthStateChange","onError","oxyServicesRef","current","Error","authStoreRef","authStore","user","isAuthenticated","isLoading","error","loginSuccess","loginFailure","logoutStore","state","logout","tokenReady","setTokenReady","hasAccessToken","setHasAccessToken","Boolean","getAccessToken","authResolved","setAuthResolved","authResolvedRef","userRef","isAuthenticatedRef","initialized","setInitialized","accountDialogOpen","setAccountDialogOpen","setAuthState","setState","applyToSingleton","accessToken","setTokens","clearTokens","onTokensChanged","message","err","__DEV__","warn","component","storageKeys","trimmed","trim","storageRef","storage","setStorage","buildStorageDeferred","resolve","undefined","promise","Promise","res","storageReadyRef","storageReady","mounted","then","storageInstance","catch","code","status","currentLanguage","languages","currentLanguages","metadata","currentLanguageMetadata","languageName","currentLanguageName","nativeLanguageName","currentNativeLanguageName","setLanguage","languageKey","language","queryClient","sessions","activeSessionId","setActiveSessionId","updateSessions","switchSession","clearSessionState","saveActiveSessionId","setAuthError","switchSessionRef","clearSessionStateRef","setActiveSessionIdRef","loginSuccessRef","onAuthStateChangeRef","markAuthResolved","markAuthResolvedRef","sessionClientPairRef","origin","clearError","client","sessionClient","host","sessionClientHost","syncFromClient","getState","accounts","length","setCurrentAccountId","capturedRevision","revision","ids","users","getUsersByIds","fetchError","latest","usersById","Map","map","resolvedUser","id","activeUser","activeAccountId","syncFromClientRef","syncDeviceCredentialToHost","cred","setDeviceCredential","subscribe","signIn","logoutAll","store","revokeSuspiciousSignIn","clearAllAccountData","clear","reset","clearCache","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","useFollowHook","clearingInvalidTokenRef","handleTokenChange","finally","dispose","oxy","scheduler","commitSession","input","options","deviceId","deviceSecret","prior","load","next","sessionId","userId","expiresAt","save","persistError","now","Date","getTime","toISOString","lastActive","isCurrent","merge","activate","fallbackUser","registerAndActivate","addCurrentAccount","startSocket","start","getCurrentUser","enabled","hubError","debug","method","commitSessionRef","handleWebSession","session","commitSwitchedSession","handleWebSessionRef","commitSwitchedSessionRef","accountDialogSurfaceRef","accountDialogHostRef","dismissAccountDialogSurface","goBack","dismiss","accountDialogControllerRef","locale","socketFactory","onSignedIn","openUrl","url","openURL","canOpenApp","canOpenURL","openPopup","accountDialogController","openAccountDialog","view","nextView","setView","navigate","initialView","instance","placement","base","md","dismissOnBackdrop","maxWidth","result","closeAccountDialog","cancelSignIn","controller","destroy","open","close","signInWithPasskey","opts","persisted","isSupported","getLoginOptions","username","webauthnLoginOptions","runCeremony","loginVerify","response","envelope","webauthnLoginVerify","commit","deviceName","deviceFingerprint","registerWithPasskey","params","getRegisterOptions","webauthnRegisterOptions","registerVerify","webauthnRegisterVerify","addPasskey","onLinked","invalidateQueries","queryKey","authMethods","all","removePasskey","credentialId","runColdBoot","onVisibility","document","visibilityState","reconcile","getDeviceCredential","httpService","refreshAccessToken","bootstrap","addEventListener","removeEventListener","previousOnline","isOnline","online","wasOffline","refreshSessionsForContext","switchSessionForContext","targetAccountId","find","account","accountId","switchAccount","hasIdentity","getPublicKey","showBottomSheetForContext","screenOrConfig","openAvatarPicker","refreshAccounts","switchToAccount","createAccount","createAccountFn","canUsePrivateApi","isPrivateApiPending","contextValue","isTokenReady","isAuthResolved","isStorageReady","removeSession","refreshSessions","useFollow","isAccountDialogOpen","Provider","value","OxyContextProvider","PROVIDER_MISSING_ERROR_MESSAGE","rejectMissingProvider","reject","LOADING_STATE_OXY_SERVICES","LOADING_STATE","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","Linking","io","OxyServices","oxyClient","KeyManager","establishIdentitySession","installAuthRefreshHandler","startTokenRefreshScheduler","createAccountDialogController","logger","loggerUtil","syncHubAfterSignIn","registerAccountDialogControls","notifyAccountDialogVisibility","redirectToAuthorize","openPasskeyHubPopup","startWebOAuthSignIn","isWebBrowser","resolveDeliveryPlatform","runProviderColdBoot","loadPersistedDeviceCredential","useAuthStore","useShallow","useLanguageManagement","useSessionManagement","useAuthOperations","clearPersistedAuthSafe","useDeviceManagement","getStorageKeys","createPlatformStorage","showBottomSheet","globalShowBottomSheet","presentDetached","topRouteSurface","useQueryClient","onlineManager","clearQueryCache","useAvatarPicker","useAccountStore","createSessionClient","createIdentitySessionBinding","createPlatformAuthStateStore","deviceStateToClientSessions","activeSessionIdOf","activeUserOf","accountIdsOf","IdentityBoundSessionError","DEFAULT_SESSION_VALIDITY_MS","loadUseFollowHook","commitDeviceSetAndResolve","maybeSyncHubAfterCommit","runPasskeyLogin","runPasskeyRegister","runPasskeyAdd","isPasskeySupported","runRegistrationCeremony","runAuthenticationCeremony","queryKeys","useOxyAccountGraph","jsx","_jsx","OxyContext","OxyProvider","children","oxyServices","providedOxyServices","baseURL","authWebUrl","authRedirectUri","authorizeBaseUrl","storageKeyPrefix","clientId","clientIdProp","sessionMode","webAuthMode","hubSync","onAuthStateChange","onError","oxyServicesRef","current","Error","authStoreRef","authStore","identityRef","identity","isIdentityBound","user","isAuthenticated","isLoading","error","loginSuccess","loginFailure","logoutStore","state","logout","tokenReady","setTokenReady","hasAccessToken","setHasAccessToken","Boolean","getAccessToken","authResolved","setAuthResolved","authResolvedRef","userRef","isAuthenticatedRef","initialized","setInitialized","accountDialogOpen","setAccountDialogOpen","setAuthState","setState","applyToSingleton","accessToken","setTokens","clearTokens","onTokensChanged","message","err","__DEV__","warn","component","storageKeys","trimmed","trim","storageRef","storage","setStorage","buildStorageDeferred","resolve","undefined","promise","Promise","res","storageReadyRef","storageReady","mounted","then","storageInstance","catch","code","status","currentLanguage","languages","currentLanguages","metadata","currentLanguageMetadata","languageName","currentLanguageName","nativeLanguageName","currentNativeLanguageName","setLanguage","languageKey","language","queryClient","sessions","activeSessionId","setActiveSessionId","updateSessions","switchSession","clearSessionState","saveActiveSessionId","setAuthError","switchSessionRef","clearSessionStateRef","setActiveSessionIdRef","loginSuccessRef","onAuthStateChangeRef","markAuthResolved","markAuthResolvedRef","sessionClientPairRef","origin","clearError","getPinnedAccountId","client","sessionClient","host","sessionClientHost","identityEstablishRef","revision","inFlight","reestablishIdentitySession","binding","tracker","established","oxy","store","refreshPinnedAccountId","bootstrap","establishError","finally","syncFromClient","getState","accounts","length","setCurrentAccountId","capturedRevision","pinnedAccountId","ensurePinnedAccountId","ids","users","getUsersByIds","fetchError","latest","usersById","Map","map","resolvedUser","id","activeUser","activeAccountId","syncFromClientRef","syncDeviceCredentialToHost","cred","setDeviceCredential","subscribe","signIn","logoutAll","revokeSuspiciousSignIn","clearAllAccountData","clear","reset","clearCache","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","useFollowHook","clearingInvalidTokenRef","handleTokenChange","dispose","scheduler","commitSession","input","options","deviceId","deviceSecret","prior","load","next","sessionId","userId","expiresAt","save","persistError","now","Date","getTime","toISOString","lastActive","isCurrent","merge","activate","fallbackUser","registerAndActivate","addCurrentAccount","startSocket","start","getCurrentUser","hubSyncRequested","hubSyncEnabled","syncHub","enabled","commitSessionRef","handleWebSession","session","commitSwitchedSession","startWebOAuthSignInForContext","mode","identityBound","handleWebSessionRef","commitSwitchedSessionRef","accountDialogSurfaceRef","accountDialogHostRef","dismissAccountDialogSurface","goBack","dismiss","accountDialogControllerRef","locale","socketFactory","onSignedIn","openUrl","url","openURL","canOpenApp","canOpenURL","openPopup","platform","accountDialogController","openAccountDialog","view","method","nextView","setView","navigate","initialView","instance","placement","base","md","dismissOnBackdrop","maxWidth","result","closeAccountDialog","cancelSignIn","controller","destroy","open","close","signInWithPasskey","opts","persisted","isSupported","getLoginOptions","username","webauthnLoginOptions","runCeremony","loginVerify","response","envelope","webauthnLoginVerify","commit","deviceName","deviceFingerprint","registerWithPasskey","params","getRegisterOptions","webauthnRegisterOptions","registerVerify","webauthnRegisterVerify","addPasskey","onLinked","invalidateQueries","queryKey","authMethods","all","removePasskey","credentialId","runColdBoot","onVisibility","document","visibilityState","reconcile","getDeviceCredential","httpService","refreshAccessToken","addEventListener","removeEventListener","previousOnline","isOnline","online","wasOffline","refreshSessionsForContext","switchSessionForContext","targetAccountId","find","account","accountId","switchAccount","hasIdentity","getPublicKey","showBottomSheetForContext","screenOrConfig","openAvatarPicker","refreshAccounts","switchToAccount","createAccount","createAccountFn","canUsePrivateApi","isPrivateApiPending","contextValue","isTokenReady","isAuthResolved","isStorageReady","removeSession","refreshSessions","useFollow","isAccountDialogOpen","Provider","value","OxyContextProvider","PROVIDER_MISSING_ERROR_MESSAGE","rejectMissingProvider","reject","LOADING_STATE_OXY_SERVICES","LOADING_STATE","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":";;AACA,SACEA,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,EAAE,QAAQ,kBAAkB;AACrC,SAASC,WAAW,EAAEC,SAAS,QAAQ,aAAa;AASpD,SACEC,UAAU,EACVC,wBAAwB,EACxBC,yBAAyB,EACzBC,0BAA0B,EAC1BC,6BAA6B,EAC7BC,MAAM,IAAIC,UAAU,EACpBC,kBAAkB,QACb,aAAa;AACpB,SACEC,6BAA6B,EAC7BC,6BAA6B,QACxB,uCAAoC;AAC3C,SAASC,mBAAmB,QAAQ,kCAA+B;AACnE,SAASC,mBAAmB,QAAQ,kCAA+B;AACnE,SACEC,mBAAmB,QAEd,kCAA+B;AAEtC,SAASC,YAAY,QAAQ,0BAAuB;AACpD,SAASC,uBAAuB,QAAQ,8BAA2B;AACnE,SAASC,mBAAmB,QAAQ,gCAA6B;AACjE,SAASC,6BAA6B,QAAQ,8BAA2B;AACzE,SAASC,YAAY,QAAwB,wBAAqB;AAClE,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,qBAAqB,QAAQ,mCAAgC;AACtE,SAASC,oBAAoB,QAAQ,kCAA+B;AACpE,SAASC,iBAAiB,EAAEC,sBAAsB,QAAQ,8BAA2B;AACrF,SAASC,mBAAmB,QAAQ,iCAA8B;AAClE,SAASC,cAAc,EAAEC,qBAAqB,QAA+B,4BAAyB;AAEtG,SAASC,eAAe,IAAIC,qBAAqB,QAAQ,qCAAkC;AAC3F,SACEC,eAAe,EACfC,eAAe,QAGV,2BAAwB;AAC/B,SAASC,cAAc,EAAEC,aAAa,QAAQ,uBAAuB;AACrE,SAASC,eAAe,QAAQ,yBAAsB;AACtD,SAASC,eAAe,QAAQ,6BAA0B;AAC1D,SAASC,eAAe,QAAQ,2BAAwB;AACxD,SACEC,mBAAmB,EACnBC,4BAA4B,EAC5BC,4BAA4B,EAC5BC,2BAA2B,EAC3BC,iBAAiB,EACjBC,YAAY,EACZC,YAAY,EACZC,yBAAyB,QAEpB,qBAAY;AAMnB,SAASC,2BAA2B,EAAEC,iBAAiB,QAAQ,wBAAqB;AACpF,SAASC,yBAAyB,EAAEC,uBAAuB,QAAQ,wBAAqB;AACxF,SAASC,eAAe,EAAEC,kBAAkB,EAAEC,aAAa,QAAQ,kBAAe;AAClF,SACEC,kBAAkB,EAClBC,uBAAuB,EACvBC,yBAAyB,QACpB,8BAA8B;AACrC,SAASC,SAAS,QAAQ,+BAA4B;AACtD,SAASC,kBAAkB,QAAQ,yBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAI1D,MAAMC,UAAU,gBAAGpE,aAAa,CAAyB,IAAI,CAAC;AAE9D,OAAO,MAAMqE,WAA8C,GAAGA,CAAC;EAC7DC,QAAQ;EACRC,WAAW,EAAEC,mBAAmB;EAChCC,OAAO;EACPC,UAAU;EACVC,eAAe;EACfC,gBAAgB;EAChBC,gBAAgB,GAAG,aAAa;EAChCC,QAAQ,EAAEC,YAAY;EACtBC,WAAW,GAAG,SAAS;EACvBC,WAAW,GAAG,UAAU;EACxBC,OAAO,GAAG,IAAI;EACdC,iBAAiB;EACjBC;AACF,CAAC,KAAK;EACJ,MAAMC,cAAc,GAAGhF,MAAM,CAAqB,IAAI,CAAC;EACvD,IAAI,CAACgF,cAAc,CAACC,OAAO,EAAE;IAC3B,IAAId,mBAAmB,EAAE;MACvBa,cAAc,CAACC,OAAO,GAAGd,mBAAmB;IAC9C,CAAC,MAAM,IAAIC,OAAO,EAAE;MAClB;MACA;MACAY,cAAc,CAACC,OAAO,GAAG,IAAI7E,WAAW,CAAC;QAAEgE,OAAO;QAAEC,UAAU;QAAEC;MAAgB,CAAC,CAAC;IACpF,CAAC,MAAM;MACL,MAAM,IAAIY,KAAK,CAAC,sEAAsE,CAAC;IACzF;EACF;EACA,MAAMhB,WAAW,GAAGc,cAAc,CAACC,OAAO;;EAE1C;EACA;EACA;EACA,MAAME,YAAY,GAAGnF,MAAM,CAAwB,IAAI,CAAC;EACxD,IAAI,CAACmF,YAAY,CAACF,OAAO,EAAE;IACzBE,YAAY,CAACF,OAAO,GAAGtC,4BAA4B,CAAC,CAAC;EACvD;EACA,MAAMyC,SAAS,GAAGD,YAAY,CAACF,OAAO;;EAEtC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMI,WAAW,GAAGrF,MAAM,CAAgC,IAAI,CAAC;EAC/D,IAAI2E,WAAW,KAAK,UAAU,IAAI,CAACU,WAAW,CAACJ,OAAO,EAAE;IACtDI,WAAW,CAACJ,OAAO,GAAGvC,4BAA4B,CAAC,CAAC;EACtD;EACA,MAAM4C,QAAQ,GAAGD,WAAW,CAACJ,OAAO;EACpC,MAAMM,eAAe,GAAGD,QAAQ,KAAK,IAAI;EAEzC,MAAM;IACJE,IAAI;IACJC,eAAe;IACfC,SAAS;IACTC,KAAK;IACLC,YAAY;IACZC,YAAY;IACZC;EACF,CAAC,GAAGvE,YAAY,CACdC,UAAU,CAAEuE,KAAgB,KAAM;IAChCP,IAAI,EAAEO,KAAK,CAACP,IAAI;IAChBC,eAAe,EAAEM,KAAK,CAACN,eAAe;IACtCC,SAAS,EAAEK,KAAK,CAACL,SAAS;IAC1BC,KAAK,EAAEI,KAAK,CAACJ,KAAK;IAClBC,YAAY,EAAEG,KAAK,CAACH,YAAY;IAChCC,YAAY,EAAEE,KAAK,CAACF,YAAY;IAChCC,WAAW,EAAEC,KAAK,CAACC;EACrB,CAAC,CAAC,CACJ,CAAC;EAED,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGjG,QAAQ,CAAC,IAAI,CAAC;EAClD,MAAM,CAACkG,cAAc,EAAEC,iBAAiB,CAAC,GAAGnG,QAAQ,CAAC,MAAMoG,OAAO,CAACnC,WAAW,CAACoC,cAAc,CAAC,CAAC,CAAC,CAAC;EACjG,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGvG,QAAQ,CAAC,KAAK,CAAC;EACvD,MAAMwG,eAAe,GAAGzG,MAAM,CAAC,KAAK,CAAC;EACrC,MAAM0G,OAAO,GAAG1G,MAAM,CAAcwF,IAAI,CAAC;EACzC,MAAMmB,kBAAkB,GAAG3G,MAAM,CAACyF,eAAe,CAAC;EAClDiB,OAAO,CAACzB,OAAO,GAAGO,IAAI;EACtBmB,kBAAkB,CAAC1B,OAAO,GAAGQ,eAAe;EAC5C,MAAM,CAACmB,WAAW,EAAEC,cAAc,CAAC,GAAG5G,QAAQ,CAAC,KAAK,CAAC;EACrD,MAAM,CAAC6G,iBAAiB,EAAEC,oBAAoB,CAAC,GAAG9G,QAAQ,CAAC,KAAK,CAAC;EACjE,MAAM+G,YAAY,GAAGzF,YAAY,CAAC0F,QAAQ;;EAE1C;EACA;EACA;EACA;EACAnH,SAAS,CAAC,MAAM;IACd,IAAIoE,WAAW,KAAK7D,SAAS,EAAE;MAC7B;IACF;IACA,MAAM6G,gBAAgB,GAAIC,WAA0B,IAAK;MACvD,IAAIA,WAAW,EAAE;QACf9G,SAAS,CAAC+G,SAAS,CAACD,WAAW,CAAC;MAClC,CAAC,MAAM;QACL9G,SAAS,CAACgH,WAAW,CAAC,CAAC;MACzB;IACF,CAAC;IACDH,gBAAgB,CAAChD,WAAW,CAACoC,cAAc,CAAC,CAAC,CAAC;IAC9C,OAAOpC,WAAW,CAACoD,eAAe,CAACJ,gBAAgB,CAAC;EACtD,CAAC,EAAE,CAAChD,WAAW,CAAC,CAAC;EAEjB,MAAMvD,MAAM,GAAGf,WAAW,CAAC,CAAC2H,OAAe,EAAEC,GAAa,KAAK;IAC7D,IAAIC,OAAO,EAAE;MACX7G,UAAU,CAAC8G,IAAI,CAACH,OAAO,EAAE;QAAEI,SAAS,EAAE;MAAa,CAAC,EAAEH,GAAG,CAAC;IAC5D;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMI,WAAW,GAAG7H,OAAO,CAAC,MAAM+B,cAAc,CAAC0C,gBAAgB,CAAC,EAAE,CAACA,gBAAgB,CAAC,CAAC;EAEvF,MAAMC,QAAQ,GAAG1E,OAAO,CAAC,MAAM;IAC7B,MAAM8H,OAAO,GAAGnD,YAAY,EAAEoD,IAAI,CAAC,CAAC;IACpC,OAAOD,OAAO,GAAGA,OAAO,GAAG,IAAI;EACjC,CAAC,EAAE,CAACnD,YAAY,CAAC,CAAC;;EAElB;EACA;EACA;EACA,MAAMqD,UAAU,GAAG/H,MAAM,CAA0B,IAAI,CAAC;EACxD,MAAM,CAACgI,OAAO,EAAEC,UAAU,CAAC,GAAGhI,QAAQ,CAA0B,IAAI,CAAC;EACrE,MAAMiI,oBAAoB,GAAGA,CAAA,KAAM;IACjC,IAAIC,OAA4C,GAAGA,CAAA,KAAMC,SAAS;IAClE,MAAMC,OAAO,GAAG,IAAIC,OAAO,CAAoBC,GAAG,IAAK;MACrDJ,OAAO,GAAGI,GAAG;IACf,CAAC,CAAC;IACF,OAAO;MAAEF,OAAO;MAAEF;IAAQ,CAAC;EAC7B,CAAC;EACD,MAAMK,eAAe,GAAGxI,MAAM,CAAiD,IAAI,CAAC;EACpF,IAAIwI,eAAe,CAACvD,OAAO,KAAK,IAAI,EAAE;IACpCuD,eAAe,CAACvD,OAAO,GAAGiD,oBAAoB,CAAC,CAAC;EAClD;EACA,MAAMO,YAAY,GAAGD,eAAe,CAACvD,OAAO;EAE5CnF,SAAS,CAAC,MAAM;IACd,IAAI4I,OAAO,GAAG,IAAI;IAClB3G,qBAAqB,CAAC,CAAC,CACpB4G,IAAI,CAAEC,eAAe,IAAK;MACzBb,UAAU,CAAC9C,OAAO,GAAG2D,eAAe;MACpCH,YAAY,CAACN,OAAO,CAACS,eAAe,CAAC;MACrC,IAAIF,OAAO,EAAE;QACXT,UAAU,CAACW,eAAe,CAAC;MAC7B;IACF,CAAC,CAAC,CACDC,KAAK,CAAErB,GAAG,IAAK;MACd,IAAIkB,OAAO,EAAE;QACX/H,MAAM,CAAC,8BAA8B,EAAE6G,GAAG,CAAC;QAC3CzC,OAAO,GAAG;UAAEwC,OAAO,EAAE,8BAA8B;UAAEuB,IAAI,EAAE,oBAAoB;UAAEC,MAAM,EAAE;QAAI,CAAC,CAAC;MACjG;IACF,CAAC,CAAC;IACJ,OAAO,MAAM;MACXL,OAAO,GAAG,KAAK;IACjB,CAAC;EACH,CAAC,EAAE,CAAC/H,MAAM,EAAEoE,OAAO,EAAE0D,YAAY,CAAC,CAAC;EAEnC,MAAM;IACJO,eAAe;IACfC,SAAS,EAAEC,gBAAgB;IAC3BC,QAAQ,EAAEC,uBAAuB;IACjCC,YAAY,EAAEC,mBAAmB;IACjCC,kBAAkB,EAAEC,yBAAyB;IAC7CC;EACF,CAAC,GAAGhI,qBAAqB,CAAC;IACxBuG,OAAO;IACP0B,WAAW,EAAE9B,WAAW,CAAC+B,QAAQ;IACjCnE,IAAI;IACJT,OAAO;IACPpE;EACF,CAAC,CAAC;EAEF,MAAMiJ,WAAW,GAAGxH,cAAc,CAAC,CAAC;EAEpC,MAAM;IACJyH,QAAQ;IACRC,eAAe;IACfC,kBAAkB;IAClBC,cAAc;IACdC,aAAa;IACbC,iBAAiB;IACjBC;EACF,CAAC,GAAGzI,oBAAoB,CAAC;IACvBwC,WAAW;IACX8D,OAAO;IACPxD,gBAAgB;IAChBoB,YAAY;IACZE,WAAW;IACXhB,iBAAiB;IACjBC,OAAO;IACPqF,YAAY,EAAG7C,OAAO,IAAKP,YAAY,CAAC;MAAErB,KAAK,EAAE4B;IAAQ,CAAC,CAAC;IAC3D5G,MAAM;IACNuF,aAAa;IACb0D;EACF,CAAC,CAAC;;EAEF;EACA;EACA,MAAMS,gBAAgB,GAAGrK,MAAM,CAACiK,aAAa,CAAC;EAC9CI,gBAAgB,CAACpF,OAAO,GAAGgF,aAAa;EACxC,MAAMK,oBAAoB,GAAGtK,MAAM,CAACkK,iBAAiB,CAAC;EACtDI,oBAAoB,CAACrF,OAAO,GAAGiF,iBAAiB;EAChD,MAAMK,qBAAqB,GAAGvK,MAAM,CAAC+J,kBAAkB,CAAC;EACxDQ,qBAAqB,CAACtF,OAAO,GAAG8E,kBAAkB;EAClD,MAAMS,eAAe,GAAGxK,MAAM,CAAC4F,YAAY,CAAC;EAC5C4E,eAAe,CAACvF,OAAO,GAAGW,YAAY;EACtC,MAAM6E,oBAAoB,GAAGzK,MAAM,CAAC8E,iBAAiB,CAAC;EACtD2F,oBAAoB,CAACxF,OAAO,GAAGH,iBAAiB;;EAEhD;EACA;EACA,MAAM4F,gBAAgB,GAAG9K,WAAW,CAAC,MAAM;IACzC,IAAI6G,eAAe,CAACxB,OAAO,EAAE;MAC3B;IACF;IACAwB,eAAe,CAACxB,OAAO,GAAG,IAAI;IAC9BiB,aAAa,CAAC,IAAI,CAAC;IACnBM,eAAe,CAAC,IAAI,CAAC;EACvB,CAAC,EAAE,EAAE,CAAC;EACN,MAAMmE,mBAAmB,GAAG3K,MAAM,CAAC0K,gBAAgB,CAAC;EACpDC,mBAAmB,CAAC1F,OAAO,GAAGyF,gBAAgB;;EAE9C;EACA;EACA;EACA;EACA,MAAME,oBAAoB,GAAG5K,MAAM,CAAgD,IAAI,CAAC;EACxF,IAAI,CAAC4K,oBAAoB,CAAC3F,OAAO,EAAE;IACjC2F,oBAAoB,CAAC3F,OAAO,GAAGxC,mBAAmB,CAChDyB,WAAW,EACV2G,MAAM,IAAK;MACV;MACA;MACA;MACA;MACA;MACA;MACA,IAAIA,MAAM,KAAK,SAAS,EAAE;QACxBjJ,sBAAsB,CAACwD,SAAS,EAAEzE,MAAM,CAAC;MAC3C;MACA,KAAK2J,oBAAoB,CAACrF,OAAO,CAAC,CAAC,CAAC4D,KAAK,CAAEiC,UAAU,IAAK;QACxDnK,MAAM,CAAC,gDAAgD,EAAEmK,UAAU,CAAC;MACtE,CAAC,CAAC;IACJ,CAAC;IACD;IACA;IACA;IACA;IACA,MAAMzF,WAAW,CAACJ,OAAO,EAAE8F,kBAAkB,CAAC,CAAC,IAAI,IACrD,CAAC;EACH;EACA,MAAM;IAAEC,MAAM,EAAEC,aAAa;IAAEC,IAAI,EAAEC;EAAkB,CAAC,GAAGP,oBAAoB,CAAC3F,OAAO;;EAEvF;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMmG,oBAAoB,GAAGpL,MAAM,CAAiD;IAClFqL,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE;EACZ,CAAC,CAAC;EAEF,MAAMC,0BAA0B,GAAG3L,WAAW,CAC5C,CAAC4L,OAA+B,EAAEH,QAAgB,KAAW;IAC3D,MAAMI,OAAO,GAAGL,oBAAoB,CAACnG,OAAO;IAC5C,IAAIwG,OAAO,CAACH,QAAQ,IAAIG,OAAO,CAACJ,QAAQ,KAAKA,QAAQ,EAAE;MACrD;IACF;IACAI,OAAO,CAACJ,QAAQ,GAAGA,QAAQ;IAC3BI,OAAO,CAACH,QAAQ,GAAG,IAAI;IACvB,KAAK,CAAC,YAAY;MAChB,MAAMI,WAAW,GAAG,MAAMnL,wBAAwB,CAAC;QACjDoL,GAAG,EAAEzH,WAAW;QAChB0H,KAAK,EAAExG,SAAS;QAChBoG,OAAO,EAAEA,OAAO,CAACA;MACnB,CAAC,CAAC;MACF,IAAI,CAACE,WAAW,EAAE;QAChB;MACF;MACA;MACA;MACA,MAAMF,OAAO,CAACK,sBAAsB,CAAC,CAAC;MACtC,MAAMZ,aAAa,CAACa,SAAS,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,CACDjD,KAAK,CAAEkD,cAAc,IAAK;MACzBpL,MAAM,CAAC,mDAAmD,EAAEoL,cAAc,CAAC;IAC7E,CAAC,CAAC,CACDC,OAAO,CAAC,MAAM;MACbP,OAAO,CAACH,QAAQ,GAAG,KAAK;IAC1B,CAAC,CAAC;EACN,CAAC,EACD,CAACpH,WAAW,EAAEkB,SAAS,EAAE6F,aAAa,EAAEtK,MAAM,CAChD,CAAC;;EAED;EACA;EACA;EACA,MAAMsL,cAAc,GAAGrM,WAAW,CAAC,YAA2B;IAC5D,MAAMmG,KAAK,GAAGkF,aAAa,CAACiB,QAAQ,CAAC,CAAC;IACtC,IAAInG,KAAK,KAAK,IAAI,EAAE;MAClB;IACF;IACA,IAAIA,KAAK,CAACoG,QAAQ,CAACC,MAAM,KAAK,CAAC,EAAE;MAC/B;MACA;MACA;MACA;MACA;MACAjB,iBAAiB,CAACkB,mBAAmB,CAAC,IAAI,CAAC;MAC3C,MAAMnC,iBAAiB,CAAC,CAAC;MACzB;IACF;IACA;IACA;IACA,MAAMoC,gBAAgB,GAAGvG,KAAK,CAACsF,QAAQ;IACvC;IACA;IACA;IACA;IACA;IACA;IACA,MAAMkB,eAAe,GAAGjH,QAAQ,GAAG,MAAMA,QAAQ,CAACkH,qBAAqB,CAAC,CAAC,GAAG,IAAI;IAChF,MAAMC,GAAG,GAAG1J,YAAY,CAACgD,KAAK,CAAC;IAC/B,IAAI2G,KAAa,GAAG,EAAE;IACtB,IAAI;MACFA,KAAK,GAAGD,GAAG,CAACL,MAAM,GAAG,CAAC,GAAG,MAAMlI,WAAW,CAACyI,aAAa,CAACF,GAAG,CAAC,GAAG,EAAE;IACpE,CAAC,CAAC,OAAOG,UAAU,EAAE;MACnBjM,MAAM,CAAC,0DAA0D,EAAEiM,UAAU,CAAC;MAC9E;IACF;IACA,MAAMC,MAAM,GAAG5B,aAAa,CAACiB,QAAQ,CAAC,CAAC;IACvC,IAAI,CAACW,MAAM,IAAIA,MAAM,CAACxB,QAAQ,KAAKiB,gBAAgB,EAAE;MACnD;IACF;IACA,IAAIhH,QAAQ,KAAKiH,eAAe,KAAK,IAAI,IAAI1J,iBAAiB,CAACgK,MAAM,EAAEN,eAAe,CAAC,KAAK,IAAI,CAAC,EAAE;MACjG;MACA;MACA;MACA;MACAhB,0BAA0B,CAACjG,QAAQ,EAAEuH,MAAM,CAACxB,QAAQ,CAAC;MACrD;IACF;IACA,MAAMyB,SAAS,GAAG,IAAIC,GAAG,CAACL,KAAK,CAACM,GAAG,CAAEC,YAAY,IAAK,CAACA,YAAY,CAACC,EAAE,EAAED,YAAY,CAAC,CAAC,CAAC;IACvFjD,cAAc,CAACpH,2BAA2B,CAACiK,MAAM,EAAEC,SAAS,EAAEP,eAAe,CAAC,CAAC;IAC/ExC,kBAAkB,CAAClH,iBAAiB,CAACgK,MAAM,EAAEN,eAAe,CAAC,CAAC;IAC9D,MAAMY,UAAU,GAAGrK,YAAY,CAAC+J,MAAM,EAAEC,SAAS,EAAEP,eAAe,CAAC;IACnE,IAAIY,UAAU,EAAE;MACdvH,YAAY,CAACuH,UAAU,CAAC;IAC1B;IACA;IACA;IACA;IACAhC,iBAAiB,CAACkB,mBAAmB,CAACE,eAAe,IAAIM,MAAM,CAACO,eAAe,CAAC;EAClF,CAAC,EAAE,CACD9H,QAAQ,EACRpB,WAAW,EACXqH,0BAA0B,EAC1BN,aAAa,EACbE,iBAAiB,EACjBnB,cAAc,EACdD,kBAAkB,EAClBnE,YAAY,EACZsE,iBAAiB,EACjBvJ,MAAM,CACP,CAAC;EACF,MAAM0M,iBAAiB,GAAGrN,MAAM,CAACiM,cAAc,CAAC;EAChDoB,iBAAiB,CAACpI,OAAO,GAAGgH,cAAc;EAE1C,MAAMqB,0BAA0B,GAAG1N,WAAW,CAAC,YAA2B;IACxE,MAAM2N,IAAI,GAAG,MAAMjM,6BAA6B,CAAC8D,SAAS,CAAC;IAC3D+F,iBAAiB,CAACqC,mBAAmB,CAACD,IAAI,CAAC;EAC7C,CAAC,EAAE,CAACnI,SAAS,EAAE+F,iBAAiB,CAAC,CAAC;EAElCrL,SAAS,CAAC,MAAM;IACd,OAAOmL,aAAa,CAACwC,SAAS,CAAC,MAAM;MACnC,KAAKxB,cAAc,CAAC,CAAC;IACvB,CAAC,CAAC;EACJ,CAAC,EAAE,CAAChB,aAAa,EAAEgB,cAAc,CAAC,CAAC;EAEnC,MAAM;IAAEyB,MAAM;IAAE1H,MAAM;IAAE2H;EAAU,CAAC,GAAGhM,iBAAiB,CAAC;IACtDuC,WAAW;IACX0H,KAAK,EAAExG,SAAS;IAChB4C,OAAO;IACP8B,eAAe;IACfC,kBAAkB;IAClBC,cAAc;IACdG,mBAAmB;IACnBD,iBAAiB;IACjBD,aAAa;IACbgB,aAAa;IACbgB,cAAc;IACdnH,iBAAiB;IACjBC,OAAO;IACPa,YAAY;IACZC,YAAY;IACZC,WAAW;IACXkB,YAAY;IACZrG;EACF,CAAC,CAAC;;EAEF;EACA;EACA;EACA;EACA;EACA,MAAMiN,sBAAsB,GAAGhO,WAAW,CAAC,YAA2B;IACpE,MAAMoG,MAAM,CAAC,CAAC;EAChB,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,MAAM6H,mBAAmB,GAAGjO,WAAW,CAAC,YAA2B;IACjEgK,WAAW,CAACkE,KAAK,CAAC,CAAC;IACnB,IAAI9F,OAAO,EAAE;MACX,IAAI;QACF,MAAM1F,eAAe,CAAC0F,OAAO,CAAC;MAChC,CAAC,CAAC,OAAOrC,KAAK,EAAE;QACdhF,MAAM,CAAC,uCAAuC,EAAEgF,KAAK,CAAC;MACxD;IACF;IACA,MAAMuE,iBAAiB,CAAC,CAAC;IACzB;IACA;IACA,MAAM9E,SAAS,CAAC0I,KAAK,CAAC,CAAC;IACvBtL,eAAe,CAAC0J,QAAQ,CAAC,CAAC,CAAC6B,KAAK,CAAC,CAAC;IAClC7J,WAAW,CAAC8J,UAAU,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACpE,WAAW,EAAE5B,OAAO,EAAEkC,iBAAiB,EAAE9E,SAAS,EAAEzE,MAAM,EAAEuD,WAAW,CAAC,CAAC;EAE7E,MAAM;IAAE+J,iBAAiB;IAAEC,uBAAuB;IAAEC;EAAiB,CAAC,GAAGtM,mBAAmB,CAAC;IAC3FqC,WAAW;IACX4F,eAAe;IACf/E,OAAO;IACPmF,iBAAiB;IACjBvJ;EACF,CAAC,CAAC;EAEF,MAAMyN,aAAa,GAAGlL,iBAAiB,CAAC,CAAC;;EAEzC;EACA;EACA;EACA;EACA;EACA;EACA,MAAMmL,uBAAuB,GAAGrO,MAAM,CAAC,KAAK,CAAC;EAC7CF,SAAS,CAAC,MAAM;IACd,MAAMwO,iBAAiB,GAAInH,WAA0B,IAAK;MACxDf,iBAAiB,CAACC,OAAO,CAACc,WAAW,CAAC,CAAC;MACvC,IAAIA,WAAW,EAAE;QACfjB,aAAa,CAAC,IAAI,CAAC;QACnB,IAAI+E,aAAa,CAACiB,QAAQ,CAAC,CAAC,EAAEC,QAAQ,CAACC,MAAM,EAAE;UAC7C,KAAKiB,iBAAiB,CAACpI,OAAO,CAAC,CAAC;QAClC;QACA;MACF;MACA,IAAIyB,OAAO,CAACzB,OAAO,IAAI0B,kBAAkB,CAAC1B,OAAO,EAAE;QACjDiB,aAAa,CAAC,KAAK,CAAC;QACpB,IAAImI,uBAAuB,CAACpJ,OAAO,EAAE;UACnC;QACF;QACAoJ,uBAAuB,CAACpJ,OAAO,GAAG,IAAI;QACtCqF,oBAAoB,CAACrF,OAAO,CAAC,CAAC,CAC3B4D,KAAK,CAAEiC,UAAU,IAAK;UACrBnK,MAAM,CAAC,0CAA0C,EAAEmK,UAAU,CAAC;QAChE,CAAC,CAAC,CACDkB,OAAO,CAAC,MAAM;UACbqC,uBAAuB,CAACpJ,OAAO,GAAG,KAAK;UACvC,IAAIwB,eAAe,CAACxB,OAAO,EAAE;YAC3BiB,aAAa,CAAC,IAAI,CAAC;UACrB;QACF,CAAC,CAAC;QACJ;MACF;MACA,IAAIO,eAAe,CAACxB,OAAO,EAAE;QAC3BiB,aAAa,CAAC,IAAI,CAAC;MACrB;IACF,CAAC;IACDoI,iBAAiB,CAACpK,WAAW,CAACoC,cAAc,CAAC,CAAC,CAAC;IAC/C,OAAOpC,WAAW,CAACoD,eAAe,CAACgH,iBAAiB,CAAC;EACvD,CAAC,EAAE,CAAC3N,MAAM,EAAEuD,WAAW,CAAC,CAAC;;EAEzB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACApE,SAAS,CAAC,MAAM;IACd,MAAMyO,OAAO,GAAG/N,yBAAyB,CAAC;MACxCmL,GAAG,EAAEzH,WAAW;MAChB0H,KAAK,EAAExG,SAAS;MAChB,IAAIE,QAAQ,GAAG;QAAEA,QAAQ,EAAEA,QAAQ,CAACkG;MAAQ,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC,CAAC;IACF,MAAMgD,SAAS,GAAG/N,0BAA0B,CAACyD,WAAW,CAAC;IACzD,OAAO,MAAM;MACXsK,SAAS,CAACD,OAAO,CAAC,CAAC;MACnBA,OAAO,CAAC,CAAC;IACX,CAAC;EACH,CAAC,EAAE,CAACrK,WAAW,EAAEkB,SAAS,EAAEE,QAAQ,CAAC,CAAC;;EAEtC;EACA;EACA;EACA;EACA;EACA;EACA,MAAMmJ,aAAa,GAAG7O,WAAW,CAC/B,OACE8O,KAAkB,EAClBC,OAAiD,KAC/B;IAClB,IAAID,KAAK,CAACvH,WAAW,EAAE;MACrBjD,WAAW,CAACkD,SAAS,CAACsH,KAAK,CAACvH,WAAW,CAAC;IAC1C;;IAEA;IACA,IAAIuH,KAAK,CAACE,QAAQ,IAAIF,KAAK,CAACG,YAAY,EAAE;MACxC,IAAI;QACF,MAAMC,KAAK,GAAG,MAAM1J,SAAS,CAAC2J,IAAI,CAAC,CAAC;QACpC,MAAMC,IAAwB,GAAG;UAC/BC,SAAS,EAAEP,KAAK,CAACO,SAAS,IAAIH,KAAK,EAAEG,SAAS,IAAI,EAAE;UACpDC,MAAM,EAAER,KAAK,CAACQ,MAAM,IAAIJ,KAAK,EAAEI,MAAM,IAAI,EAAE;UAC3CN,QAAQ,EAAEF,KAAK,CAACE,QAAQ;UACxBC,YAAY,EAAEH,KAAK,CAACG,YAAY;UAChC,IAAIH,KAAK,CAACvH,WAAW,GAAG;YAAEA,WAAW,EAAEuH,KAAK,CAACvH;UAAY,CAAC,GAAG,CAAC,CAAC,CAAC;UAChE,IAAIuH,KAAK,CAACS,SAAS,GAAG;YAAEA,SAAS,EAAET,KAAK,CAACS;UAAU,CAAC,GAAG,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM/J,SAAS,CAACgK,IAAI,CAACJ,IAAI,CAAC;QAC1B7D,iBAAiB,CAACqC,mBAAmB,CAAC;UACpCoB,QAAQ,EAAEF,KAAK,CAACE,QAAQ;UACxBC,YAAY,EAAEH,KAAK,CAACG;QACtB,CAAC,CAAC;MACJ,CAAC,CAAC,OAAOQ,YAAY,EAAE;QACrB1O,MAAM,CAAC,wCAAwC,EAAE0O,YAAY,CAAC;MAChE;IACF;;IAEA;IACA;IACA,IAAIX,KAAK,CAACQ,MAAM,EAAE;MAChB,MAAMI,GAAG,GAAG,IAAIC,IAAI,CAAC,CAAC;MACtBvF,cAAc,CACZ,CACE;QACEiF,SAAS,EAAEP,KAAK,CAACO,SAAS;QAC1BL,QAAQ,EAAEF,KAAK,CAACE,QAAQ,IAAI,EAAE;QAC9BO,SAAS,EAAET,KAAK,CAACS,SAAS,IAAI,IAAII,IAAI,CAACD,GAAG,CAACE,OAAO,CAAC,CAAC,GAAGvM,2BAA2B,CAAC,CAACwM,WAAW,CAAC,CAAC;QACjGC,UAAU,EAAEJ,GAAG,CAACG,WAAW,CAAC,CAAC;QAC7BP,MAAM,EAAER,KAAK,CAACQ,MAAM;QACpBS,SAAS,EAAE;MACb,CAAC,CACF,EACD;QAAEC,KAAK,EAAE;MAAK,CAChB,CAAC;MACD7F,kBAAkB,CAAC2E,KAAK,CAACO,SAAS,CAAC;IACrC;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAM9L,yBAAyB,CAAC;MAC9B0M,QAAQ,EAAElB,OAAO,CAACkB,QAAQ;MAC1BX,MAAM,EAAER,KAAK,CAACQ,MAAM;MACpBY,YAAY,EAAGpB,KAAK,CAAClJ,IAAI,IAAwB,IAAI;MACrDuK,mBAAmB,EAAGb,MAAM,IAAKjE,aAAa,CAAC8E,mBAAmB,CAACb,MAAM,CAAC;MAC1Ec,iBAAiB,EAAEA,CAAA,KAAM/E,aAAa,CAAC+E,iBAAiB,CAAC,CAAC;MAC1DC,WAAW,EAAEA,CAAA,KAAMhF,aAAa,CAACiF,KAAK,CAAC,CAAC;MACxCjE,cAAc;MACdkE,cAAc,EAAEA,CAAA,KAAMjM,WAAW,CAACiM,cAAc,CAAC,CAAC;MAClDvK,YAAY;MACZd,iBAAiB,EAAE2F,oBAAoB,CAACxF,OAAO;MAC/CyF,gBAAgB,EAAEC,mBAAmB,CAAC1F;IACxC,CAAC,CAAC;;IAEF;IACA;IACA;IACA;IACA;IACA,MAAM7B,uBAAuB,CAAC;MAC5ByM,QAAQ,EAAElB,OAAO,CAACkB,QAAQ;MAC1BO,gBAAgB,EAAEzB,OAAO,CAAC9J,OAAO,KAAK,IAAI;MAC1CwL,cAAc,EAAExL,OAAO;MACvBD,WAAW;MACX0L,OAAO,EAAEA,CAAA,KAAMzP,kBAAkB,CAACqD,WAAW,EAAE;QAAEqM,OAAO,EAAE1L;MAAQ,CAAC;IACrE,CAAC,CAAC;EACJ,CAAC,EACD,CAACX,WAAW,EAAEkB,SAAS,EAAE4E,cAAc,EAAED,kBAAkB,EAAEkB,aAAa,EAAEE,iBAAiB,EAAEc,cAAc,EAAErG,YAAY,EAAEjF,MAAM,EAAEkE,OAAO,EAAED,WAAW,CAC3J,CAAC;EACD,MAAM4L,gBAAgB,GAAGxQ,MAAM,CAACyO,aAAa,CAAC;EAC9C+B,gBAAgB,CAACvL,OAAO,GAAGwJ,aAAa;;EAExC;EACA;EACA,MAAMgC,gBAAgB,GAAG7Q,WAAW,CAClC,MAAO8Q,OAA6B,IAAoB;IACtD,IAAI,CAACA,OAAO,EAAElL,IAAI,IAAI,CAACkL,OAAO,EAAEzB,SAAS,IAAI,CAACyB,OAAO,CAACvJ,WAAW,EAAE;MACjE,MAAM,IAAIjC,KAAK,CAAC,mDAAmD,CAAC;IACtE;IACA,MAAMuJ,aAAa,CACjB;MACEQ,SAAS,EAAEyB,OAAO,CAACzB,SAAS;MAC5B9H,WAAW,EAAEuJ,OAAO,CAACvJ,WAAW;MAChC0H,YAAY,EAAE6B,OAAO,CAAC7B,YAAY;MAClCD,QAAQ,EAAE8B,OAAO,CAAC9B,QAAQ;MAC1BO,SAAS,EAAEuB,OAAO,CAACvB,SAAS;MAC5BD,MAAM,EAAEwB,OAAO,CAAClL,IAAI,CAAC0H,EAAE;MACvB1H,IAAI,EAAEkL,OAAO,CAAClL;IAChB,CAAC,EACD;MAAEqK,QAAQ,EAAE,IAAI;MAAEhL,OAAO,EAAE;IAAK,CAClC,CAAC;EACH,CAAC,EACD,CAAC4J,aAAa,CAChB,CAAC;;EAED;EACA;EACA;EACA;EACA,MAAMkC,qBAAqB,GAAG/Q,WAAW,CACvC,MAAO8Q,OAA6B,IAAoB;IACtD,IAAI,CAACA,OAAO,EAAElL,IAAI,IAAI,CAACkL,OAAO,EAAEzB,SAAS,IAAI,CAACyB,OAAO,CAACvJ,WAAW,EAAE;MACjE,MAAM,IAAIjC,KAAK,CAAC,mDAAmD,CAAC;IACtE;IACA,MAAMuJ,aAAa,CACjB;MACEQ,SAAS,EAAEyB,OAAO,CAACzB,SAAS;MAC5B9H,WAAW,EAAEuJ,OAAO,CAACvJ,WAAW;MAChC0H,YAAY,EAAE6B,OAAO,CAAC7B,YAAY;MAClCD,QAAQ,EAAE8B,OAAO,CAAC9B,QAAQ;MAC1BO,SAAS,EAAEuB,OAAO,CAACvB,SAAS;MAC5BD,MAAM,EAAEwB,OAAO,CAAClL,IAAI,CAAC0H,EAAE;MACvB1H,IAAI,EAAEkL,OAAO,CAAClL;IAChB,CAAC,EACD;MAAEqK,QAAQ,EAAE,IAAI;MAAEhL,OAAO,EAAE;IAAM,CACnC,CAAC;EACH,CAAC,EACD,CAAC4J,aAAa,CAChB,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMmC,6BAA6B,GAAGhR,WAAW,CAC9C+O,OAAmC,IAClCzN,mBAAmB,CACjB;IACE2P,IAAI,EAAEjM,WAAW;IACjBV,WAAW;IACXO,QAAQ;IACRF,gBAAgB;IAChBuM,aAAa,EAAEvL,eAAe;IAC9BkJ,aAAa,EAAGC,KAAK,IACnB8B,gBAAgB,CAACvL,OAAO,CAACyJ,KAAK,EAAE;MAAEmB,QAAQ,EAAE,IAAI;MAAEhL,OAAO,EAAE;IAAM,CAAC;EACtE,CAAC,EACD8J,OACF,CAAC,EACH,CAAC/J,WAAW,EAAEV,WAAW,EAAEO,QAAQ,EAAEF,gBAAgB,EAAEgB,eAAe,CACxE,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA,MAAMwL,mBAAmB,GAAG/Q,MAAM,CAACyQ,gBAAgB,CAAC;EACpDM,mBAAmB,CAAC9L,OAAO,GAAGwL,gBAAgB;EAC9C,MAAMO,wBAAwB,GAAGhR,MAAM,CAAC2Q,qBAAqB,CAAC;EAC9DK,wBAAwB,CAAC/L,OAAO,GAAG0L,qBAAqB;;EAExD;EACA;EACA;EACA;EACA;EACA;EACA,MAAMM,uBAAuB,GAAGjR,MAAM,CAA0C,IAAI,CAAC;;EAErF;EACA;EACA;EACA;EACA;EACA,MAAMkR,oBAAoB,GAAGlR,MAAM,CAAwB,IAAI,CAAC;;EAEhE;EACA;EACA;EACA;EACA,MAAMmR,2BAA2B,GAAGvR,WAAW,CAAC,MAAY;IAC1D,MAAMsL,IAAI,GAAGgG,oBAAoB,CAACjM,OAAO;IACzC,IAAIiG,IAAI,EAAE;MACRgG,oBAAoB,CAACjM,OAAO,GAAG,IAAI;MACnC8B,oBAAoB,CAAC,KAAK,CAAC;MAC3BmE,IAAI,CAACkG,MAAM,CAAC,CAAC;MACb;IACF;IACAH,uBAAuB,CAAChM,OAAO,EAAEoM,OAAO,CAAC,CAAC;EAC5C,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACA;EACA;EACA;EACA,MAAMC,0BAA0B,GAAGtR,MAAM,CAAiC,IAAI,CAAC;EAC/E,IAAI,CAACuF,eAAe,IAAI,CAAC+L,0BAA0B,CAACrM,OAAO,EAAE;IAC3DqM,0BAA0B,CAACrM,OAAO,GAAGvE,6BAA6B,CAAC;MACjEwD,WAAW;MACX+G,aAAa;MACbxG,QAAQ;MACR8M,MAAM,EAAEvI,eAAe;MACvB;MACA;MACAwI,aAAa,EAAErR,EAAE;MACjBsO,aAAa,EAAGiC,OAAO,IAAKK,mBAAmB,CAAC9L,OAAO,CAACyL,OAAO,CAAC;MAChEC,qBAAqB,EAAGD,OAAO,IAAKM,wBAAwB,CAAC/L,OAAO,CAACyL,OAAO,CAAC;MAC7Ee,UAAU,EAAEA,CAAA,KAAM;QAChB;QACA;QACAN,2BAA2B,CAAC,CAAC;MAC/B,CAAC;MACDO,OAAO,EAAGC,GAAG,IAAK;QAChB,IAAIxQ,YAAY,CAAC,CAAC,EAAE;UAClBH,mBAAmB,CAAC2Q,GAAG,CAAC;UACxB;QACF;QACA,KAAKzR,OAAO,CAAC0R,OAAO,CAACD,GAAG,CAAC;MAC3B,CAAC;MACD;MACA;MACA;MACA;MACA;MACAE,UAAU,EAAE1Q,YAAY,CAAC,CAAC,GAAGiH,SAAS,GAAIuJ,GAAG,IAAKzR,OAAO,CAAC4R,UAAU,CAACH,GAAG,CAAC;MACzE;MACA;MACA;MACA;MACAI,SAAS,EAAE5Q,YAAY,CAAC,CAAC,GAAGF,mBAAmB,GAAGmH,SAAS;MAC3D;MACA;MACA;MACA;MACA4J,QAAQ,EAAE5Q,uBAAuB,CAAC;IACpC,CAAC,CAAC;EACJ;EACA,MAAM6Q,uBAAuB,GAAGX,0BAA0B,CAACrM,OAAO;EAElE,MAAMiN,iBAAiB,GAAGtS,WAAW,CAAEuS,IAAwB,IAAW;IACxE,IAAI5M,eAAe,EAAE;MACnB;MACA;MACA,IAAIkC,OAAO,EAAE;QACX7G,UAAU,CAAC8G,IAAI,CACb,oFAAoF,EACpF;UAAEC,SAAS,EAAE,YAAY;UAAEyK,MAAM,EAAE;QAAoB,CACzD,CAAC;MACH;MACA;IACF;IACA,MAAMC,QAAQ,GAAGF,IAAI,IAAI,UAAU;IACnCb,0BAA0B,CAACrM,OAAO,EAAEqN,OAAO,CAACD,QAAQ,CAAC;;IAErD;IACA,IAAIpB,uBAAuB,CAAChM,OAAO,EAAE;MACnC8B,oBAAoB,CAAC,IAAI,CAAC;MAC1B;IACF;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMmE,IAAI,GAAG/I,eAAe,CAAC,CAAC;IAC9B,IAAI+I,IAAI,EAAE;MACRgG,oBAAoB,CAACjM,OAAO,GAAGiG,IAAI;MACnCA,IAAI,CAACqH,QAAQ,CAAC,eAAe,EAAE;QAAEC,WAAW,EAAEH;MAAS,CAAC,CAAC;MACzDtL,oBAAoB,CAAC,IAAI,CAAC;MAC1B;IACF;IAEA,MAAM0L,QAAQ,GAAGvQ,eAAe,CAC9B,eAAe,EACf;MAAEsQ,WAAW,EAAEH;IAAS,CAAC,EACzB;MAAEK,SAAS,EAAE;QAAEC,IAAI,EAAE,QAAQ;QAAEC,EAAE,EAAE;MAAS,CAAC;MAAEC,iBAAiB,EAAE,KAAK;MAAEC,QAAQ,EAAE;IAAI,CACzF,CAAC;IACD7B,uBAAuB,CAAChM,OAAO,GAAGwN,QAAQ;IAC1C;IACA;IACA;IACA;IACAA,QAAQ,CAACM,MAAM,CAAC/G,OAAO,CAAC,MAAM;MAC5B,IAAIiF,uBAAuB,CAAChM,OAAO,KAAKwN,QAAQ,EAAE;QAChDxB,uBAAuB,CAAChM,OAAO,GAAG,IAAI;QACtC8B,oBAAoB,CAAC,KAAK,CAAC;MAC7B;IACF,CAAC,CAAC;IACFA,oBAAoB,CAAC,IAAI,CAAC;EAC5B,CAAC,EAAE,CAACxB,eAAe,CAAC,CAAC;EAErB,MAAMyN,kBAAkB,GAAGpT,WAAW,CAAC,MAAY;IACjD0R,0BAA0B,CAACrM,OAAO,EAAEgO,YAAY,CAAC,CAAC;IAClD9B,2BAA2B,CAAC,CAAC;EAC/B,CAAC,EAAE,CAACA,2BAA2B,CAAC,CAAC;;EAEjC;EACArR,SAAS,CAAC,MAAM;IACd,MAAMoT,UAAU,GAAG5B,0BAA0B,CAACrM,OAAO;IACrDiO,UAAU,EAAEhD,KAAK,CAAC,CAAC;IACnB,OAAO,MAAMgD,UAAU,EAAEC,OAAO,CAAC,CAAC;EACpC,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACArT,SAAS,CACP,MAAMgB,6BAA6B,CAAC;IAAEsS,IAAI,EAAElB,iBAAiB;IAAEmB,KAAK,EAAEL;EAAmB,CAAC,CAAC,EAC3F,CAACd,iBAAiB,EAAEc,kBAAkB,CACxC,CAAC;;EAED;EACA;EACAlT,SAAS,CAAC,MAAM;IACdiB,6BAA6B,CAAC+F,iBAAiB,CAAC;EAClD,CAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC;;EAEvB;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA,MAAMwM,iBAAiB,GAAG1T,WAAW,CACnC,MAAO2T,IAA6E,IAAoB;IACtG,MAAMC,SAAS,GAAG,MAAMpO,SAAS,CAAC2J,IAAI,CAAC,CAAC;IACxC,MAAM1L,eAAe,CAAC;MACpBoQ,WAAW,EAAEjQ,kBAAkB;MAC/BkQ,eAAe,EAAGC,QAAQ,IAAKzP,WAAW,CAAC0P,oBAAoB,CAACD,QAAQ,CAAC;MACzEE,WAAW,EAAEnQ,yBAAyB;MACtCoQ,WAAW,EAAEA,CAACC,QAAQ,EAAEC,QAAQ,KAAK9P,WAAW,CAAC+P,mBAAmB,CAACF,QAAQ,EAAEC,QAAQ,CAAC;MACxFE,MAAM,EAAGxF,KAAK,IAAKD,aAAa,CAACC,KAAK,EAAE;QAAEmB,QAAQ,EAAE,IAAI;QAAEhL,OAAO,EAAE;MAAK,CAAC,CAAC;MAC1E8O,QAAQ,EAAEJ,IAAI,EAAEI,QAAQ;MACxB/E,QAAQ,EAAE4E,SAAS,EAAE5E,QAAQ;MAC7BuF,UAAU,EAAEZ,IAAI,EAAEY,UAAU;MAC5BC,iBAAiB,EAAEb,IAAI,EAAEa;IAC3B,CAAC,CAAC;EACJ,CAAC,EACD,CAAClQ,WAAW,EAAEkB,SAAS,EAAEqJ,aAAa,CACxC,CAAC;;EAED;EACA,MAAM4F,mBAAmB,GAAGzU,WAAW,CACrC,MAAO0U,MAAiD,IAAoB;IAC1E,MAAMhR,kBAAkB,CAAC;MACvBmQ,WAAW,EAAEjQ,kBAAkB;MAC/B+Q,kBAAkB,EAAGZ,QAAQ,IAAKzP,WAAW,CAACsQ,uBAAuB,CAACb,QAAQ,CAAC;MAC/EE,WAAW,EAAEpQ,uBAAuB;MACpCgR,cAAc,EAAEA,CAACV,QAAQ,EAAEC,QAAQ,KAAK9P,WAAW,CAACwQ,sBAAsB,CAACX,QAAQ,EAAEC,QAAQ,CAAC;MAC9FE,MAAM,EAAGxF,KAAK,IAAKD,aAAa,CAACC,KAAK,EAAE;QAAEmB,QAAQ,EAAE,IAAI;QAAEhL,OAAO,EAAE;MAAK,CAAC,CAAC;MAC1E8O,QAAQ,EAAEW,MAAM,CAACX,QAAQ;MACzBQ,UAAU,EAAEG,MAAM,CAACH;IACrB,CAAC,CAAC;EACJ,CAAC,EACD,CAACjQ,WAAW,EAAEuK,aAAa,CAC7B,CAAC;;EAED;EACA;EACA,MAAMkG,UAAU,GAAG/U,WAAW,CAC5B,MAAO0U,MAAgC,IAAoB;IACzD,MAAM/Q,aAAa,CAAC;MAClBkQ,WAAW,EAAEjQ,kBAAkB;MAC/B+Q,kBAAkB,EAAEA,CAAA,KAAMrQ,WAAW,CAACsQ,uBAAuB,CAAC,CAAC;MAC/DX,WAAW,EAAEpQ,uBAAuB;MACpCgR,cAAc,EAAEA,CAACV,QAAQ,EAAEC,QAAQ,KAAK9P,WAAW,CAACwQ,sBAAsB,CAACX,QAAQ,EAAEC,QAAQ,CAAC;MAC9FY,QAAQ,EAAEA,CAAA,KAAM;QACd,KAAKhL,WAAW,CAACiL,iBAAiB,CAAC;UAAEC,QAAQ,EAAEnR,SAAS,CAACoR,WAAW,CAACC;QAAI,CAAC,CAAC;MAC7E,CAAC;MACDb,UAAU,EAAEG,MAAM,EAAEH;IACtB,CAAC,CAAC;EACJ,CAAC,EACD,CAACjQ,WAAW,EAAE0F,WAAW,CAC3B,CAAC;;EAED;EACA;EACA;EACA,MAAMqL,aAAa,GAAGrV,WAAW,CAC/B,MAAOsV,YAAoB,IAAoB;IAC7C,MAAMhR,WAAW,CAAC+Q,aAAa,CAACC,YAAY,CAAC;IAC7C,KAAKtL,WAAW,CAACiL,iBAAiB,CAAC;MAAEC,QAAQ,EAAEnR,SAAS,CAACoR,WAAW,CAACC;IAAI,CAAC,CAAC;EAC7E,CAAC,EACD,CAAC9Q,WAAW,EAAE0F,WAAW,CAC3B,CAAC;;EAED;EACA;EACA,MAAMuL,WAAW,GAAGvV,WAAW,CAAC,YAA2B;IACzD;IACA;IACA;IACA;IACA,IAAI0F,QAAQ,EAAE;MACZ,MAAMA,QAAQ,CAACkH,qBAAqB,CAAC,CAAC;IACxC;IACA,MAAMnL,mBAAmB,CAAC;MACxB6C,WAAW;MACXkB,SAAS;MACTX,QAAQ,EAAEC,YAAY;MACtBJ,eAAe;MACfC,gBAAgB;MAChBI,WAAW;MACXW,QAAQ,EAAEA,QAAQ,EAAEkG,OAAO;MAC3B;MACA;MACA;MACA5G,WAAW;MACXqG,aAAa;MACbqC,0BAA0B;MAC1BmB,aAAa,EAAEA,CAACC,KAAK,EAAEC,OAAO,KAAK6B,gBAAgB,CAACvL,OAAO,CAACyJ,KAAK,EAAEC,OAAO,CAAC;MAC3EjE,gBAAgB,EAAEA,CAAA,KAAMC,mBAAmB,CAAC1F,OAAO,CAAC,CAAC;MACrDiB;IACF,CAAC,CAAC;IACF;IACA;IACA;IACA,IAAIZ,QAAQ,EAAE;MACZ,MAAMA,QAAQ,CAACuG,sBAAsB,CAAC,CAAC;IACzC;EACF,CAAC,EAAE,CACD3H,WAAW,EACXkB,SAAS,EACTV,YAAY,EACZJ,eAAe,EACfC,gBAAgB,EAChBI,WAAW,EACXW,QAAQ,EACRV,WAAW,EACX0I,0BAA0B,EAC1BrC,aAAa,CACd,CAAC;EAEFnL,SAAS,CAAC,MAAM;IACd,IAAI8G,WAAW,EAAE;MACf;IACF;IACA,IAAI,CAACoB,OAAO,EAAE;MACZ;IACF;IACAnB,cAAc,CAAC,IAAI,CAAC;IACpBsO,WAAW,CAAC,CAAC,CAACtM,KAAK,CAAElD,KAAK,IAAK;MAC7B,IAAI8B,OAAO,EAAE;QACX9G,MAAM,CAAC,kBAAkB,EAAEgF,KAAK,CAAC;MACnC;IACF,CAAC,CAAC;EACJ,CAAC,EAAE,CAACwP,WAAW,EAAEnN,OAAO,EAAEpB,WAAW,EAAEjG,MAAM,CAAC,CAAC;;EAE/C;EACA;EACAb,SAAS,CAAC,MAAM;IACd,IAAI,CAACqB,YAAY,CAAC,CAAC,EAAE;IACrB,MAAMiU,YAAY,GAAGA,CAAA,KAAY;MAC/B,IAAIC,QAAQ,CAACC,eAAe,KAAK,SAAS,EAAE;MAC5C,MAAMC,SAAS,GAAG,MAAAA,CAAA,KAA2B;QAC3C,IAAI,CAACrR,WAAW,CAACoC,cAAc,CAAC,CAAC,IAAI6E,iBAAiB,CAACqK,mBAAmB,CAAC,CAAC,EAAE;UAC5E;UACA;UACA;UACA,MAAMtR,WAAW,CAACuR,WAAW,CAACC,kBAAkB,CAAC,WAAW,CAAC;QAC/D;QACA,IAAI,CAACxR,WAAW,CAACoC,cAAc,CAAC,CAAC,IAAI,CAAC6E,iBAAiB,CAACqK,mBAAmB,CAAC,CAAC,EAAE;UAC7E;QACF;QACA,MAAMvK,aAAa,CAACa,SAAS,CAAC,CAAC;QAC/B,MAAMG,cAAc,CAAC,CAAC;MACxB,CAAC;MACD,KAAKsJ,SAAS,CAAC,CAAC,CAAC1M,KAAK,CAAC,MAAMT,SAAS,CAAC;IACzC,CAAC;IACDiN,QAAQ,CAACM,gBAAgB,CAAC,kBAAkB,EAAEP,YAAY,CAAC;IAC3D,OAAO,MAAMC,QAAQ,CAACO,mBAAmB,CAAC,kBAAkB,EAAER,YAAY,CAAC;EAC7E,CAAC,EAAE,CAAClR,WAAW,EAAE+G,aAAa,EAAEE,iBAAiB,EAAEc,cAAc,CAAC,CAAC;;EAEnE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACAnM,SAAS,CAAC,MAAM;IACd;IACA;IACA,IAAI+V,cAAc,GAAGxT,aAAa,CAACyT,QAAQ,CAAC,CAAC;IAC7C,OAAOzT,aAAa,CAACoL,SAAS,CAAEsI,MAAe,IAAK;MAClD,MAAMC,UAAU,GAAGH,cAAc,KAAK,KAAK;MAC3CA,cAAc,GAAGE,MAAM;MACvB,IAAI,CAACA,MAAM,IAAI,CAACC,UAAU,EAAE;QAC1B;MACF;MACA,KAAK,CAAC,YAAY;QAChB,IAAI9R,WAAW,CAACoC,cAAc,CAAC,CAAC,IAAI,CAAC6E,iBAAiB,CAACqK,mBAAmB,CAAC,CAAC,EAAE;UAC5E;QACF;QACA,MAAMtR,WAAW,CAACuR,WAAW,CAACC,kBAAkB,CAAC,WAAW,CAAC;QAC7D,IAAI,CAACxR,WAAW,CAACoC,cAAc,CAAC,CAAC,EAAE;UACjC;QACF;QACA,MAAM2E,aAAa,CAACa,SAAS,CAAC,CAAC;QAC/B,MAAMG,cAAc,CAAC,CAAC;MACxB,CAAC,EAAE,CAAC,CAACpD,KAAK,CAAC,MAAMT,SAAS,CAAC;IAC7B,CAAC,CAAC;EACJ,CAAC,EAAE,CAAClE,WAAW,EAAE+G,aAAa,EAAEE,iBAAiB,EAAEc,cAAc,CAAC,CAAC;;EAEnE;EACA;EACA,MAAMgK,yBAAyB,GAAGrW,WAAW,CAAC,YAA2B;IACvE,MAAMqL,aAAa,CAACa,SAAS,CAAC,CAAC;IAC/B,MAAMG,cAAc,CAAC,CAAC;EACxB,CAAC,EAAE,CAAChB,aAAa,EAAEgB,cAAc,CAAC,CAAC;;EAEnC;EACA;EACA;EACA;EACA;EACA;EACA,MAAMiK,uBAAuB,GAAGtW,WAAW,CACzC,MAAOqP,SAAiB,IAAoB;IAC1C,IAAI1J,eAAe,EAAE;MACnB,MAAM,IAAIvC,yBAAyB,CAAC,eAAe,CAAC;IACtD;IACA,MAAMmT,eAAe,GAAGlL,aAAa,CAClCiB,QAAQ,CAAC,CAAC,EACTC,QAAQ,CAACiK,IAAI,CAAEC,OAAO,IAAKA,OAAO,CAACpH,SAAS,KAAKA,SAAS,CAAC,EAAEqH,SAAS;IAC1E,IAAI,CAACH,eAAe,EAAE;MACpB,MAAM,IAAIjR,KAAK,CAAC,wCAAwC+J,SAAS,GAAG,CAAC;IACvE;IACA,MAAMhE,aAAa,CAACsL,aAAa,CAACJ,eAAe,CAAC;IAClD,MAAMlK,cAAc,CAAC,CAAC;IACtB,MAAMkB,UAAU,GAAG5L,YAAY,CAAC2K,QAAQ,CAAC,CAAC,CAAC1G,IAAI;IAC/C,IAAI,CAAC2H,UAAU,EAAE;MACf,MAAM,IAAIjI,KAAK,CAAC,2DAA2D,CAAC;IAC9E;IACA,OAAOiI,UAAU;EACnB,CAAC,EACD,CAAC5H,eAAe,EAAE0F,aAAa,EAAEgB,cAAc,CACjD,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMuK,WAAW,GAAG5W,WAAW,CAAC,YAA8BU,UAAU,CAACkW,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC;EAC3F,MAAMC,YAAY,GAAG7W,WAAW,CAAC,YAAoCU,UAAU,CAACmW,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC;EAEnG,MAAMC,yBAAyB,GAAG9W,WAAW,CAC1C+W,cAAkF,IAAK;IACtF1U,qBAAqB,CAAC0U,cAAc,CAAC;EACvC,CAAC,EACD,EACF,CAAC;EAED,MAAM;IAAEC;EAAiB,CAAC,GAAGrU,eAAe,CAAC;IAC3C2B,WAAW;IACX8E,eAAe;IACfc,eAAe;IACfF;EACF,CAAC,CAAC;EAEF,MAAM;IAAEuC,QAAQ;IAAE0K,eAAe;IAAEC,eAAe;IAAEC,aAAa,EAAEC;EAAgB,CAAC,GAAGpT,kBAAkB,CAAC;IACxG6B,eAAe;IACfQ,UAAU;IACVW,WAAW;IACXkK,aAAa,EAAEvL,eAAe;IAC9BrB,WAAW;IACX+G,aAAa;IACbgB,cAAc;IACdwC,aAAa;IACb7E,WAAW;IACX0H,0BAA0B;IAC1BhH;EACF,CAAC,CAAC;EAEF,MAAM2M,gBAAgB,GAAG1Q,YAAY,IAAId,eAAe,IAAIQ,UAAU,IAAIE,cAAc;EACxF,MAAM+Q,mBAAmB,GAAG,CAAC3Q,YAAY,IAAKd,eAAe,KAAK,CAACQ,UAAU,IAAI,CAACE,cAAc,CAAE;EAElG,MAAMgR,YAA6B,GAAGpX,OAAO,CAC3C,OAAO;IACLyF,IAAI;IACJqE,QAAQ;IACRC,eAAe;IACfrE,eAAe;IACfC,SAAS;IACT0R,YAAY,EAAEnR,UAAU;IACxBE,cAAc;IACd8Q,gBAAgB;IAChBC,mBAAmB;IACnBG,cAAc,EAAE9Q,YAAY;IAC5B+Q,cAAc,EAAEtP,OAAO,KAAK,IAAI;IAChCrD,WAAW,EAAEY,eAAe,GAAG,UAAU,GAAG,SAAS;IACrDX,WAAW;IACXe,KAAK;IACLqD,eAAe;IACfE,gBAAgB;IAChBE,uBAAuB;IACvBE,mBAAmB;IACnBE,yBAAyB;IACzBgN,WAAW;IACXC,YAAY;IACZ/I,MAAM;IACN4F,iBAAiB;IACjBe,mBAAmB;IACnBM,UAAU;IACVM,aAAa;IACbrH,sBAAsB;IACtB6C,gBAAgB;IAChBvP,mBAAmB,EAAE0P,6BAA6B;IAClD5K,MAAM;IACN2H,SAAS;IACT1D,aAAa,EAAEiM,uBAAuB;IACtCqB,aAAa,EAAEvR,MAAM;IACrBwR,eAAe,EAAEvB,yBAAyB;IAC1CxM,WAAW;IACXwE,iBAAiB;IACjBC,uBAAuB;IACvBC,gBAAgB;IAChBjE,iBAAiB;IACjB2D,mBAAmB;IACnBrJ,gBAAgB;IAChBC,QAAQ;IACRP,WAAW;IACX+G,aAAa;IACbwM,SAAS,EAAErJ,aAAa;IACxBpM,eAAe,EAAE0U,yBAAyB;IAC1CE,gBAAgB;IAChB3E,uBAAuB;IACvByF,mBAAmB,EAAE5Q,iBAAiB;IACtCoL,iBAAiB;IACjBc,kBAAkB;IAClB7G,QAAQ;IACR2K,eAAe;IACfD,eAAe;IACfE,aAAa,EAAEC;EACjB,CAAC,CAAC,EACF,CACExR,IAAI,EACJqE,QAAQ,EACRC,eAAe,EACfrE,eAAe,EACfC,SAAS,EACTO,UAAU,EACVE,cAAc,EACd8Q,gBAAgB,EAChBC,mBAAmB,EACnB3Q,YAAY,EACZyB,OAAO,EACPzC,eAAe,EACfX,WAAW,EACXe,KAAK,EACLqD,eAAe,EACfE,gBAAgB,EAChBE,uBAAuB,EACvBE,mBAAmB,EACnBE,yBAAyB,EACzBgN,WAAW,EACXC,YAAY,EACZ/I,MAAM,EACN4F,iBAAiB,EACjBe,mBAAmB,EACnBM,UAAU,EACVM,aAAa,EACbrH,sBAAsB,EACtB6C,gBAAgB,EAChBG,6BAA6B,EAC7B5K,MAAM,EACN2H,SAAS,EACTuI,uBAAuB,EACvBD,yBAAyB,EACzBxM,WAAW,EACXwE,iBAAiB,EACjBC,uBAAuB,EACvBC,gBAAgB,EAChBjE,iBAAiB,EACjB2D,mBAAmB,EACnBrJ,gBAAgB,EAChBC,QAAQ,EACRP,WAAW,EACX+G,aAAa,EACbmD,aAAa,EACbsI,yBAAyB,EACzBE,gBAAgB,EAChB3E,uBAAuB,EACvBnL,iBAAiB,EACjBoL,iBAAiB,EACjBc,kBAAkB,EAClB7G,QAAQ,EACR2K,eAAe,EACfD,eAAe,EACfG,eAAe,CAEnB,CAAC;EAED,oBAAOlT,IAAA,CAACC,UAAU,CAAC4T,QAAQ;IAACC,KAAK,EAAET,YAAa;IAAAlT,QAAA,EAAEA;EAAQ,CAAsB,CAAC;AACnF,CAAC;AAED,OAAO,MAAM4T,kBAAkB,GAAG7T,WAAW;;AAE7C;AACA;AACA;AACA;AACA,MAAM8T,8BAA8B,GAClC,6FAA6F;AAE/F,MAAMC,qBAAqB,GAAGA,CAAA,KAC5BzP,OAAO,CAAC0P,MAAM,CAAC,IAAI9S,KAAK,CAAC4S,8BAA8B,CAAC,CAAC;AAE3D,MAAMG,0BAA0B,GAAG,IAAI7X,WAAW,CAAC;EAAEgE,OAAO,EAAE;AAAc,CAAC,CAAC;AAE9E,MAAM8T,aAA8B,GAAG;EACrC1S,IAAI,EAAE,IAAI;EACVqE,QAAQ,EAAE,EAAE;EACZC,eAAe,EAAE,IAAI;EACrBrE,eAAe,EAAE,KAAK;EACtBC,SAAS,EAAE,IAAI;EACf0R,YAAY,EAAE,KAAK;EACnBjR,cAAc,EAAE,KAAK;EACrB8Q,gBAAgB,EAAE,KAAK;EACvBC,mBAAmB,EAAE,IAAI;EACzBG,cAAc,EAAE,KAAK;EACrBC,cAAc,EAAE,KAAK;EACrB3S,WAAW,EAAE,SAAS;EACtBC,WAAW,EAAE,UAAU;EACvBe,KAAK,EAAE,IAAI;EACXqD,eAAe,EAAE,OAAO;EACxBE,gBAAgB,EAAE,EAAE;EACpBE,uBAAuB,EAAE,IAAI;EAC7BE,mBAAmB,EAAE,yBAAyB;EAC9CE,yBAAyB,EAAE,yBAAyB;EACpDgN,WAAW,EAAEA,CAAA,KAAMlO,OAAO,CAACH,OAAO,CAAC,KAAK,CAAC;EACzCsO,YAAY,EAAEA,CAAA,KAAMnO,OAAO,CAACH,OAAO,CAAC,IAAI,CAAC;EACzCuF,MAAM,EAAEA,CAAA,KAAMqK,qBAAqB,CAAO,CAAC;EAC3CzE,iBAAiB,EAAEA,CAAA,KAAMyE,qBAAqB,CAAO,CAAC;EACtD1D,mBAAmB,EAAEA,CAAA,KAAM0D,qBAAqB,CAAO,CAAC;EACxDpD,UAAU,EAAEA,CAAA,KAAMoD,qBAAqB,CAAO,CAAC;EAC/C9C,aAAa,EAAEA,CAAA,KAAM8C,qBAAqB,CAAO,CAAC;EAClDnK,sBAAsB,EAAEA,CAAA,KAAMmK,qBAAqB,CAAO,CAAC;EAC3DtH,gBAAgB,EAAEA,CAAA,KAAMsH,qBAAqB,CAAO,CAAC;EACrD7W,mBAAmB,EAAEA,CAAA,KAAM6W,qBAAqB,CAAuB,CAAC;EACxE/R,MAAM,EAAEA,CAAA,KAAM+R,qBAAqB,CAAO,CAAC;EAC3CpK,SAAS,EAAEA,CAAA,KAAMoK,qBAAqB,CAAO,CAAC;EAC9C9N,aAAa,EAAEA,CAAA,KAAM8N,qBAAqB,CAAO,CAAC;EAClDR,aAAa,EAAEA,CAAA,KAAMQ,qBAAqB,CAAO,CAAC;EAClDP,eAAe,EAAEA,CAAA,KAAMO,qBAAqB,CAAO,CAAC;EACpDtO,WAAW,EAAEA,CAAA,KAAMsO,qBAAqB,CAAO,CAAC;EAChD9J,iBAAiB,EAAEA,CAAA,KAAM3F,OAAO,CAACH,OAAO,CAAC,EAAE,CAAC;EAC5C+F,uBAAuB,EAAEA,CAAA,KAAM6J,qBAAqB,CAAO,CAAC;EAC5D5J,gBAAgB,EAAEA,CAAA,KAAM4J,qBAAqB,CAAO,CAAC;EACrD7N,iBAAiB,EAAEA,CAAA,KAAM6N,qBAAqB,CAAO,CAAC;EACtDlK,mBAAmB,EAAEA,CAAA,KAAMkK,qBAAqB,CAAO,CAAC;EACxDvT,gBAAgB,EAAE,aAAa;EAC/BC,QAAQ,EAAE,IAAI;EACdP,WAAW,EAAE+T,0BAA0B;EACvChN,aAAa,EAAE,IAAI;EACnB2L,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1B3E,uBAAuB,EAAE,IAAI;EAC7ByF,mBAAmB,EAAE,KAAK;EAC1BxF,iBAAiB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC3Bc,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5B7G,QAAQ,EAAE,EAAE;EACZ2K,eAAe,EAAEA,CAAA,KAAMiB,qBAAqB,CAAO,CAAC;EACpDlB,eAAe,EAAEA,CAAA,KAAMkB,qBAAqB,CAAO,CAAC;EACpDhB,aAAa,EAAEA,CAAA,KAAMgB,qBAAqB,CAAoC;AAChF,CAAC;AAED,OAAO,MAAMI,MAAM,GAAGA,CAAA,KAAuB;EAC3C,MAAMC,OAAO,GAAGvY,UAAU,CAACkE,UAAU,CAAC;EACtC,IAAI,CAACqU,OAAO,EAAE;IACZ,OAAOF,aAAa;EACtB;EACA,OAAOE,OAAO;AAChB,CAAC","ignoreList":[]}