@cedros/login-react 0.0.11 → 0.0.13

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 (428) hide show
  1. package/README.md +68 -0
  2. package/dist/AdminDepositList-Cx0xRwES.js +305 -0
  3. package/dist/AdminDepositList-Cx0xRwES.js.map +1 -0
  4. package/dist/AdminDepositList-UEcyRZkA.cjs +1 -0
  5. package/dist/AdminDepositList-UEcyRZkA.cjs.map +1 -0
  6. package/dist/AdminUserDetail-BzEIdNJh.cjs +1 -0
  7. package/dist/AdminUserDetail-BzEIdNJh.cjs.map +1 -0
  8. package/dist/AdminUserDetail-DHFDzY8B.js +1195 -0
  9. package/dist/AdminUserDetail-DHFDzY8B.js.map +1 -0
  10. package/dist/AdminWithdrawalHistory-0yxtMh6q.cjs +1 -0
  11. package/dist/AdminWithdrawalHistory-0yxtMh6q.cjs.map +1 -0
  12. package/dist/AdminWithdrawalHistory-BGjfrIe3.js +904 -0
  13. package/dist/AdminWithdrawalHistory-BGjfrIe3.js.map +1 -0
  14. package/dist/AuthenticationSettings-5Vi7Ib_A.cjs +1 -0
  15. package/dist/AuthenticationSettings-5Vi7Ib_A.cjs.map +1 -0
  16. package/dist/AuthenticationSettings-BPAh1my6.cjs +1 -0
  17. package/dist/AuthenticationSettings-BPAh1my6.cjs.map +1 -0
  18. package/dist/AuthenticationSettings-CJg8CJY9.js +9 -0
  19. package/dist/AuthenticationSettings-CJg8CJY9.js.map +1 -0
  20. package/dist/AuthenticationSettings-CR_i6TTS.js +495 -0
  21. package/dist/AuthenticationSettings-CR_i6TTS.js.map +1 -0
  22. package/dist/AutosaveStatus-CYkC2aI_.cjs +1 -0
  23. package/dist/AutosaveStatus-CYkC2aI_.cjs.map +1 -0
  24. package/dist/AutosaveStatus-N4uNS6-2.js +1497 -0
  25. package/dist/AutosaveStatus-N4uNS6-2.js.map +1 -0
  26. package/dist/CreditSystemSettings-BnAOK_tT.cjs +1 -0
  27. package/dist/CreditSystemSettings-BnAOK_tT.cjs.map +1 -0
  28. package/dist/CreditSystemSettings-CIf_SfJq.js +210 -0
  29. package/dist/CreditSystemSettings-CIf_SfJq.js.map +1 -0
  30. package/dist/CreditSystemSettings-CePYGgev.js +9 -0
  31. package/dist/CreditSystemSettings-CePYGgev.js.map +1 -0
  32. package/dist/CreditSystemSettings-Ck5WIMp3.cjs +1 -0
  33. package/dist/CreditSystemSettings-Ck5WIMp3.cjs.map +1 -0
  34. package/dist/{DepositsSection-BH5K162Q.js → DepositsSection-DA89uR9A.js} +5 -5
  35. package/dist/{DepositsSection-BH5K162Q.js.map → DepositsSection-DA89uR9A.js.map} +1 -1
  36. package/dist/DepositsSection-i6XdhLNs.cjs +1 -0
  37. package/dist/{DepositsSection-DpRn0koq.cjs.map → DepositsSection-i6XdhLNs.cjs.map} +1 -1
  38. package/dist/EmailRegisterForm-BrDL3BZy.js +927 -0
  39. package/dist/EmailRegisterForm-BrDL3BZy.js.map +1 -0
  40. package/dist/EmailRegisterForm-CxktR-4J.cjs +1 -0
  41. package/dist/EmailRegisterForm-CxktR-4J.cjs.map +1 -0
  42. package/dist/EmailSettings-B8xwgd6_.cjs +1 -0
  43. package/dist/EmailSettings-B8xwgd6_.cjs.map +1 -0
  44. package/dist/{AuthenticationSettings-DlVILxY4.js → EmailSettings-Bna7Z53E.js} +3 -3
  45. package/dist/EmailSettings-Bna7Z53E.js.map +1 -0
  46. package/dist/EmailSettings-DZywTTRq.cjs +1 -0
  47. package/dist/EmailSettings-DZywTTRq.cjs.map +1 -0
  48. package/dist/EmailSettings-DbMDfVaM.js +17 -0
  49. package/dist/EmailSettings-DbMDfVaM.js.map +1 -0
  50. package/dist/{EmbeddedWalletSettings-Bff6raAT.js → EmbeddedWalletSettings-ANbhj3Lt.js} +3 -3
  51. package/dist/EmbeddedWalletSettings-ANbhj3Lt.js.map +1 -0
  52. package/dist/EmbeddedWalletSettings-BEztqO19.js +79 -0
  53. package/dist/EmbeddedWalletSettings-BEztqO19.js.map +1 -0
  54. package/dist/EmbeddedWalletSettings-D6M7pwgk.cjs +1 -0
  55. package/dist/EmbeddedWalletSettings-D6M7pwgk.cjs.map +1 -0
  56. package/dist/EmbeddedWalletSettings-DivEPn39.cjs +1 -0
  57. package/dist/EmbeddedWalletSettings-DivEPn39.cjs.map +1 -0
  58. package/dist/ErrorMessage-CHbYbVi2.cjs +1 -0
  59. package/dist/ErrorMessage-CHbYbVi2.cjs.map +1 -0
  60. package/dist/ErrorMessage-CcEK0pYO.js +64 -0
  61. package/dist/ErrorMessage-CcEK0pYO.js.map +1 -0
  62. package/dist/{GoogleLoginButton-BzHr545L.js → GoogleLoginButton-B3uRMJ_n.js} +4 -3
  63. package/dist/{GoogleLoginButton-BzHr545L.js.map → GoogleLoginButton-B3uRMJ_n.js.map} +1 -1
  64. package/dist/GoogleLoginButton-BydKswn4.cjs +1 -0
  65. package/dist/{GoogleLoginButton-DoAdOqb3.cjs.map → GoogleLoginButton-BydKswn4.cjs.map} +1 -1
  66. package/dist/LoadingSpinner-6vml-zwr.js +79 -0
  67. package/dist/LoadingSpinner-6vml-zwr.js.map +1 -0
  68. package/dist/LoadingSpinner-d6sSxgQN.cjs +1 -0
  69. package/dist/LoadingSpinner-d6sSxgQN.cjs.map +1 -0
  70. package/dist/PermissionsSection-BGaj_sI7.js +1026 -0
  71. package/dist/PermissionsSection-BGaj_sI7.js.map +1 -0
  72. package/dist/PermissionsSection-CKXXDfqi.cjs +1 -0
  73. package/dist/PermissionsSection-CKXXDfqi.cjs.map +1 -0
  74. package/dist/ServerSettings-B2RKhJtZ.js +84 -0
  75. package/dist/ServerSettings-B2RKhJtZ.js.map +1 -0
  76. package/dist/ServerSettings-BZXlm1BX.cjs +1 -0
  77. package/dist/ServerSettings-BZXlm1BX.cjs.map +1 -0
  78. package/dist/{ServerSettings-UIVR0R4l.js → ServerSettings-Bqm4-bt2.js} +3 -3
  79. package/dist/ServerSettings-Bqm4-bt2.js.map +1 -0
  80. package/dist/ServerSettings-DZUKo6By.cjs +1 -0
  81. package/dist/ServerSettings-DZUKo6By.cjs.map +1 -0
  82. package/dist/SettingsPageLayout-COSYLMu7.cjs +1 -0
  83. package/dist/SettingsPageLayout-COSYLMu7.cjs.map +1 -0
  84. package/dist/SettingsPageLayout-DpgNEkuu.js +50 -0
  85. package/dist/SettingsPageLayout-DpgNEkuu.js.map +1 -0
  86. package/dist/{SolanaLoginButton-C-CfZxAZ.js → SolanaLoginButton-C_u9OppS.js} +5 -4
  87. package/dist/{SolanaLoginButton-C-CfZxAZ.js.map → SolanaLoginButton-C_u9OppS.js.map} +1 -1
  88. package/dist/SolanaLoginButton-fAW7kRUu.cjs +1 -0
  89. package/dist/{SolanaLoginButton-CPzms0kf.cjs.map → SolanaLoginButton-fAW7kRUu.cjs.map} +1 -1
  90. package/dist/StatsBar-BX-hHtTq.js +66 -0
  91. package/dist/StatsBar-BX-hHtTq.js.map +1 -0
  92. package/dist/StatsBar-DTUZCwDD.cjs +1 -0
  93. package/dist/StatsBar-DTUZCwDD.cjs.map +1 -0
  94. package/dist/{TeamSection-DnJudC38.js → TeamSection-CvrCoa9D.js} +27 -26
  95. package/dist/TeamSection-CvrCoa9D.js.map +1 -0
  96. package/dist/TeamSection-DlUD5kp5.cjs +1 -0
  97. package/dist/TeamSection-DlUD5kp5.cjs.map +1 -0
  98. package/dist/UsersSection-C2U8Tb7V.cjs +1 -0
  99. package/dist/{UsersSection-Ce7xVKfp.cjs.map → UsersSection-C2U8Tb7V.cjs.map} +1 -1
  100. package/dist/{UsersSection-mOOjcUEv.js → UsersSection-Dbh9PTSA.js} +17 -15
  101. package/dist/{UsersSection-mOOjcUEv.js.map → UsersSection-Dbh9PTSA.js.map} +1 -1
  102. package/dist/WebhookSettings-BT5q6AZ8.js +17 -0
  103. package/dist/WebhookSettings-BT5q6AZ8.js.map +1 -0
  104. package/dist/WebhookSettings-BWl_wsvg.cjs +1 -0
  105. package/dist/WebhookSettings-BWl_wsvg.cjs.map +1 -0
  106. package/dist/WebhookSettings-DXNH5bal.cjs +1 -0
  107. package/dist/WebhookSettings-DXNH5bal.cjs.map +1 -0
  108. package/dist/{WebhookSettings-D0i0JhQD.js → WebhookSettings-bUg2u_p0.js} +4 -4
  109. package/dist/WebhookSettings-bUg2u_p0.js.map +1 -0
  110. package/dist/WithdrawalsSection-BL_LOUq8.cjs +1 -0
  111. package/dist/{WithdrawalsSection-igRQJfjj.cjs.map → WithdrawalsSection-BL_LOUq8.cjs.map} +1 -1
  112. package/dist/WithdrawalsSection-CN-lLnqX.js +20 -0
  113. package/dist/{WithdrawalsSection-Grebjjks.js.map → WithdrawalsSection-CN-lLnqX.js.map} +1 -1
  114. package/dist/admin-only.cjs +1 -0
  115. package/dist/admin-only.cjs.map +1 -0
  116. package/dist/{admin/types.d.ts → admin-only.d.ts} +228 -167
  117. package/dist/admin-only.js +8 -0
  118. package/dist/admin-only.js.map +1 -0
  119. package/dist/apiClient-B2JxVPlH.js +216 -0
  120. package/dist/apiClient-B2JxVPlH.js.map +1 -0
  121. package/dist/apiClient-CTTKhsYb.cjs +1 -0
  122. package/dist/apiClient-CTTKhsYb.cjs.map +1 -0
  123. package/dist/assets/argon2Worker-Bi5TuQvD.js.map +1 -1
  124. package/dist/email-only.cjs +1 -1
  125. package/dist/email-only.d.ts +634 -16
  126. package/dist/email-only.js +16 -13
  127. package/dist/email-only.js.map +1 -1
  128. package/dist/google-only.cjs +1 -1
  129. package/dist/google-only.d.ts +543 -13
  130. package/dist/google-only.js +11 -8
  131. package/dist/google-only.js.map +1 -1
  132. package/dist/index.cjs +2061 -1
  133. package/dist/index.cjs.map +1 -1
  134. package/dist/index.d.ts +5007 -144
  135. package/dist/index.js +13507 -116
  136. package/dist/index.js.map +1 -1
  137. package/dist/login-react.css +1 -1
  138. package/dist/plugin-5qRh-YhX.js +596 -0
  139. package/dist/plugin-5qRh-YhX.js.map +1 -0
  140. package/dist/plugin-BtYBW6JY.cjs +1 -0
  141. package/dist/plugin-BtYBW6JY.cjs.map +1 -0
  142. package/dist/sanitization-Bo_tn-L2.cjs +1 -0
  143. package/dist/sanitization-Bo_tn-L2.cjs.map +1 -0
  144. package/dist/sanitization-CQ-H1MSg.js +39 -0
  145. package/dist/sanitization-CQ-H1MSg.js.map +1 -0
  146. package/dist/shamir-AeLLfw0p.cjs +1 -0
  147. package/dist/shamir-AeLLfw0p.cjs.map +1 -0
  148. package/dist/{solanaKeypair-BlXol3nh.js → shamir-B0wConeK.js} +765 -757
  149. package/dist/shamir-B0wConeK.js.map +1 -0
  150. package/dist/silentWalletEnroll-B8pgdKZO.cjs +1 -0
  151. package/dist/silentWalletEnroll-B8pgdKZO.cjs.map +1 -0
  152. package/dist/silentWalletEnroll-DR2kPw7W.js +41 -0
  153. package/dist/silentWalletEnroll-DR2kPw7W.js.map +1 -0
  154. package/dist/solana-only.cjs +1 -1
  155. package/dist/solana-only.d.ts +594 -13
  156. package/dist/solana-only.js +12 -9
  157. package/dist/solana-only.js.map +1 -1
  158. package/dist/style.d.ts +1 -0
  159. package/dist/useAdminDeposits-BDY5KJ0-.js +151 -0
  160. package/dist/useAdminDeposits-BDY5KJ0-.js.map +1 -0
  161. package/dist/useAdminDeposits-Dvx3_UUE.cjs +1 -0
  162. package/dist/useAdminDeposits-Dvx3_UUE.cjs.map +1 -0
  163. package/dist/{ErrorMessage-DU2VBb85.js → useAuth-Bge6KaWN.js} +954 -1226
  164. package/dist/useAuth-Bge6KaWN.js.map +1 -0
  165. package/dist/useAuth-DhIDTLRd.cjs +1 -0
  166. package/dist/useAuth-DhIDTLRd.cjs.map +1 -0
  167. package/dist/useOrgs-Be3KH4ib.js +215 -0
  168. package/dist/useOrgs-Be3KH4ib.js.map +1 -0
  169. package/dist/useOrgs-CVbacmaQ.cjs +1 -0
  170. package/dist/useOrgs-CVbacmaQ.cjs.map +1 -0
  171. package/dist/useSystemSettings-D9Cr7ZTl.cjs +1 -0
  172. package/dist/useSystemSettings-D9Cr7ZTl.cjs.map +1 -0
  173. package/dist/useSystemSettings-DN5YqfNq.js +97 -0
  174. package/dist/useSystemSettings-DN5YqfNq.js.map +1 -0
  175. package/dist/{validation-BebL7hMF.js → validation-B8kMV3BL.js} +1 -1
  176. package/dist/{validation-BebL7hMF.js.map → validation-B8kMV3BL.js.map} +1 -1
  177. package/dist/{validation-BeXIfuHB.cjs → validation-BuGQrA-K.cjs} +1 -1
  178. package/dist/{validation-BeXIfuHB.cjs.map → validation-BuGQrA-K.cjs.map} +1 -1
  179. package/package.json +11 -1
  180. package/dist/AuthenticationSettings-D8oXHkM6.cjs +0 -1
  181. package/dist/AuthenticationSettings-D8oXHkM6.cjs.map +0 -1
  182. package/dist/AuthenticationSettings-DlVILxY4.js.map +0 -1
  183. package/dist/CreditSystemSettings-Bv6u9lTs.js +0 -9
  184. package/dist/CreditSystemSettings-Bv6u9lTs.js.map +0 -1
  185. package/dist/CreditSystemSettings-D45pwDZM.cjs +0 -1
  186. package/dist/CreditSystemSettings-D45pwDZM.cjs.map +0 -1
  187. package/dist/DepositsSection-DpRn0koq.cjs +0 -1
  188. package/dist/EmailRegisterForm-C0PStlj5.js +0 -961
  189. package/dist/EmailRegisterForm-C0PStlj5.js.map +0 -1
  190. package/dist/EmailRegisterForm-DaPLGws2.cjs +0 -1
  191. package/dist/EmailRegisterForm-DaPLGws2.cjs.map +0 -1
  192. package/dist/EmailSettings-DdjoMO_c.cjs +0 -1
  193. package/dist/EmailSettings-DdjoMO_c.cjs.map +0 -1
  194. package/dist/EmailSettings-khmiWqhx.js +0 -9
  195. package/dist/EmailSettings-khmiWqhx.js.map +0 -1
  196. package/dist/EmbeddedWalletSettings-Bff6raAT.js.map +0 -1
  197. package/dist/EmbeddedWalletSettings-C5qkJtAr.cjs +0 -1
  198. package/dist/EmbeddedWalletSettings-C5qkJtAr.cjs.map +0 -1
  199. package/dist/ErrorMessage-BXHiYibN.cjs +0 -1
  200. package/dist/ErrorMessage-BXHiYibN.cjs.map +0 -1
  201. package/dist/ErrorMessage-DU2VBb85.js.map +0 -1
  202. package/dist/GoogleLoginButton-DoAdOqb3.cjs +0 -1
  203. package/dist/ServerSettings-BpZhkxh6.cjs +0 -1
  204. package/dist/ServerSettings-BpZhkxh6.cjs.map +0 -1
  205. package/dist/ServerSettings-UIVR0R4l.js.map +0 -1
  206. package/dist/SolanaLoginButton-CPzms0kf.cjs +0 -1
  207. package/dist/TeamSection-BoGqQhD5.cjs +0 -1
  208. package/dist/TeamSection-BoGqQhD5.cjs.map +0 -1
  209. package/dist/TeamSection-DnJudC38.js.map +0 -1
  210. package/dist/UsersSection-Ce7xVKfp.cjs +0 -1
  211. package/dist/WebhookSettings-Cx-BxzNQ.cjs +0 -1
  212. package/dist/WebhookSettings-Cx-BxzNQ.cjs.map +0 -1
  213. package/dist/WebhookSettings-D0i0JhQD.js.map +0 -1
  214. package/dist/WithdrawalsSection-Grebjjks.js +0 -20
  215. package/dist/WithdrawalsSection-igRQJfjj.cjs +0 -1
  216. package/dist/admin/AdminShell.d.ts +0 -38
  217. package/dist/admin/icons.d.ts +0 -2
  218. package/dist/admin/index.d.ts +0 -10
  219. package/dist/admin/plugin.d.ts +0 -3
  220. package/dist/admin/sections/AuthenticationSettings.d.ts +0 -3
  221. package/dist/admin/sections/CreditSystemSettings.d.ts +0 -3
  222. package/dist/admin/sections/DepositsSection.d.ts +0 -3
  223. package/dist/admin/sections/EmailSettings.d.ts +0 -3
  224. package/dist/admin/sections/EmbeddedWalletSettings.d.ts +0 -3
  225. package/dist/admin/sections/FeatureSettings.d.ts +0 -3
  226. package/dist/admin/sections/InvitesSection.d.ts +0 -3
  227. package/dist/admin/sections/MembersSection.d.ts +0 -3
  228. package/dist/admin/sections/ServerSettings.d.ts +0 -3
  229. package/dist/admin/sections/SettingsSections.d.ts +0 -7
  230. package/dist/admin/sections/TeamSection.d.ts +0 -3
  231. package/dist/admin/sections/UsersSection.d.ts +0 -3
  232. package/dist/admin/sections/WebhookSettings.d.ts +0 -3
  233. package/dist/admin/sections/WithdrawalsSection.d.ts +0 -3
  234. package/dist/components/LoginButton.d.ts +0 -23
  235. package/dist/components/LoginForm.d.ts +0 -9
  236. package/dist/components/LoginModal.d.ts +0 -9
  237. package/dist/components/admin/AdminUserDetail.d.ts +0 -23
  238. package/dist/components/admin/AdminUserList.d.ts +0 -21
  239. package/dist/components/admin/CedrosAdminDashboard.d.ts +0 -52
  240. package/dist/components/admin/PermissionsSection.d.ts +0 -7
  241. package/dist/components/admin/ProfileDropdown.d.ts +0 -34
  242. package/dist/components/admin/SetupWizard.d.ts +0 -30
  243. package/dist/components/admin/StatsBar.d.ts +0 -17
  244. package/dist/components/admin/SystemSettings.d.ts +0 -19
  245. package/dist/components/admin/settings/AuthenticationSettings.d.ts +0 -4
  246. package/dist/components/admin/settings/AutosaveStatus.d.ts +0 -6
  247. package/dist/components/admin/settings/CreditSystemSettings.d.ts +0 -6
  248. package/dist/components/admin/settings/EmailSettings.d.ts +0 -4
  249. package/dist/components/admin/settings/EmbeddedWalletSettings.d.ts +0 -4
  250. package/dist/components/admin/settings/FeatureSettings.d.ts +0 -4
  251. package/dist/components/admin/settings/MessagingSettings.d.ts +0 -4
  252. package/dist/components/admin/settings/SecuritySettings.d.ts +0 -4
  253. package/dist/components/admin/settings/ServerSettings.d.ts +0 -4
  254. package/dist/components/admin/settings/SettingsPageLayout.d.ts +0 -16
  255. package/dist/components/admin/settings/SsoProvidersSettings.d.ts +0 -4
  256. package/dist/components/admin/settings/WebhookSettings.d.ts +0 -4
  257. package/dist/components/admin/settings/index.d.ts +0 -31
  258. package/dist/components/admin/settings/settingsInputs.d.ts +0 -79
  259. package/dist/components/admin/settings/settingsMetadata.d.ts +0 -18
  260. package/dist/components/apple/AppleLoginButton.d.ts +0 -29
  261. package/dist/components/deposit/CreditBalance.d.ts +0 -19
  262. package/dist/components/deposit/DepositFlow.d.ts +0 -118
  263. package/dist/components/deposit/FeeConfigDisplay.d.ts +0 -15
  264. package/dist/components/deposit/History.d.ts +0 -21
  265. package/dist/components/deposit/TieredAmountSlider.d.ts +0 -19
  266. package/dist/components/deposit/TokenSelector.d.ts +0 -23
  267. package/dist/components/deposit/admin/AdminDepositList.d.ts +0 -21
  268. package/dist/components/deposit/admin/AdminDepositStats.d.ts +0 -15
  269. package/dist/components/deposit/admin/AdminPrivacyPeriodDeposits.d.ts +0 -19
  270. package/dist/components/deposit/admin/AdminWithdrawalHistory.d.ts +0 -19
  271. package/dist/components/deposit/admin/AdminWithdrawalQueue.d.ts +0 -23
  272. package/dist/components/deposit/admin/AdminWithdrawalStats.d.ts +0 -10
  273. package/dist/components/deposit/admin/FeatureDisabledMessage.d.ts +0 -15
  274. package/dist/components/deposit/admin/PrivacySystemStatus.d.ts +0 -15
  275. package/dist/components/deposit/admin/featureDisabled.d.ts +0 -14
  276. package/dist/components/deposit/admin/index.d.ts +0 -22
  277. package/dist/components/deposit/index.d.ts +0 -12
  278. package/dist/components/deposit/tierUtils.d.ts +0 -8
  279. package/dist/components/deposit/tokens.d.ts +0 -19
  280. package/dist/components/email/EmailLoginForm.d.ts +0 -11
  281. package/dist/components/email/EmailRegisterForm.d.ts +0 -14
  282. package/dist/components/email/ForgotPasswordForm.d.ts +0 -17
  283. package/dist/components/email/PasswordInput.d.ts +0 -14
  284. package/dist/components/email/ResetPasswordForm.d.ts +0 -22
  285. package/dist/components/google/GoogleLoginButton.d.ts +0 -12
  286. package/dist/components/invites/InviteForm.d.ts +0 -38
  287. package/dist/components/invites/InviteList.d.ts +0 -40
  288. package/dist/components/members/MemberList.d.ts +0 -47
  289. package/dist/components/org/CreateOrgForm.d.ts +0 -7
  290. package/dist/components/org/OrgAvatar.d.ts +0 -7
  291. package/dist/components/org/OrgListView.d.ts +0 -9
  292. package/dist/components/org/OrgSelector.d.ts +0 -52
  293. package/dist/components/org/OrgSwitcher.d.ts +0 -47
  294. package/dist/components/org/icons.d.ts +0 -8
  295. package/dist/components/profile/UserProfileSettings.d.ts +0 -35
  296. package/dist/components/profile/index.d.ts +0 -2
  297. package/dist/components/sessions/SessionList.d.ts +0 -33
  298. package/dist/components/shared/ErrorBoundary.d.ts +0 -38
  299. package/dist/components/shared/ErrorMessage.d.ts +0 -14
  300. package/dist/components/shared/LoadingSpinner.d.ts +0 -16
  301. package/dist/components/solana/SolanaLoginButton.d.ts +0 -49
  302. package/dist/components/templates/FullPageLayout.d.ts +0 -40
  303. package/dist/components/templates/SplitPageLayout.d.ts +0 -44
  304. package/dist/components/templates/index.d.ts +0 -4
  305. package/dist/components/totp/OtpInput.d.ts +0 -32
  306. package/dist/components/totp/QrCode.d.ts +0 -21
  307. package/dist/components/totp/TotpSettings.d.ts +0 -38
  308. package/dist/components/totp/TotpSetup.d.ts +0 -23
  309. package/dist/components/totp/TotpVerify.d.ts +0 -25
  310. package/dist/components/totp/index.d.ts +0 -10
  311. package/dist/components/wallet/CapabilityWarning.d.ts +0 -11
  312. package/dist/components/wallet/PasskeyPrompt.d.ts +0 -34
  313. package/dist/components/wallet/RecoveryPhraseDisplay.d.ts +0 -18
  314. package/dist/components/wallet/RecoveryPhraseInput.d.ts +0 -21
  315. package/dist/components/wallet/WalletAddressRow.d.ts +0 -10
  316. package/dist/components/wallet/WalletEnrollment.d.ts +0 -15
  317. package/dist/components/wallet/WalletManager.d.ts +0 -9
  318. package/dist/components/wallet/WalletRecovery.d.ts +0 -19
  319. package/dist/components/wallet/WalletStatus.d.ts +0 -28
  320. package/dist/components/wallet/WalletUnlock.d.ts +0 -23
  321. package/dist/components/wallet/index.d.ts +0 -23
  322. package/dist/components/webauthn/PasskeyLoginButton.d.ts +0 -8
  323. package/dist/context/CedrosLoginContext.d.ts +0 -24
  324. package/dist/context/CedrosLoginProvider.d.ts +0 -17
  325. package/dist/context/EmbeddedWalletExposure.d.ts +0 -19
  326. package/dist/context/useCedrosLogin.d.ts +0 -12
  327. package/dist/crypto/aesGcm.d.ts +0 -89
  328. package/dist/crypto/argon2.d.ts +0 -65
  329. package/dist/crypto/argon2Worker.d.ts +0 -1
  330. package/dist/crypto/argon2WorkerClient.d.ts +0 -28
  331. package/dist/crypto/bip39.d.ts +0 -106
  332. package/dist/crypto/capabilities.d.ts +0 -35
  333. package/dist/crypto/entropy.d.ts +0 -56
  334. package/dist/crypto/hkdf.d.ts +0 -38
  335. package/dist/crypto/index.d.ts +0 -30
  336. package/dist/crypto/secureWipe.d.ts +0 -71
  337. package/dist/crypto/shamir.d.ts +0 -52
  338. package/dist/crypto/solanaKeypair.d.ts +0 -63
  339. package/dist/crypto/types.d.ts +0 -134
  340. package/dist/crypto/webauthnPrf.d.ts +0 -108
  341. package/dist/hooks/useAdminDeposits.d.ts +0 -10
  342. package/dist/hooks/useAdminUsers.d.ts +0 -28
  343. package/dist/hooks/useAppleAuth.d.ts +0 -52
  344. package/dist/hooks/useAuth.d.ts +0 -34
  345. package/dist/hooks/useAuthSession.d.ts +0 -19
  346. package/dist/hooks/useAuthorize.d.ts +0 -62
  347. package/dist/hooks/useCredits.d.ts +0 -11
  348. package/dist/hooks/useDashboardPermissions.d.ts +0 -45
  349. package/dist/hooks/useDeposit.d.ts +0 -16
  350. package/dist/hooks/useEmailAuth.d.ts +0 -60
  351. package/dist/hooks/useGoogleAuth.d.ts +0 -67
  352. package/dist/hooks/useInstantLink.d.ts +0 -42
  353. package/dist/hooks/useInvites.d.ts +0 -57
  354. package/dist/hooks/useMembers.d.ts +0 -52
  355. package/dist/hooks/useOrgs.d.ts +0 -49
  356. package/dist/hooks/usePasswordReset.d.ts +0 -32
  357. package/dist/hooks/usePendingRecovery.d.ts +0 -34
  358. package/dist/hooks/useProfile.d.ts +0 -35
  359. package/dist/hooks/useRateLimiter.d.ts +0 -58
  360. package/dist/hooks/useServerFeatures.d.ts +0 -55
  361. package/dist/hooks/useSessions.d.ts +0 -45
  362. package/dist/hooks/useSettingsAutosave.d.ts +0 -29
  363. package/dist/hooks/useSetup.d.ts +0 -25
  364. package/dist/hooks/useSolanaAuth.d.ts +0 -30
  365. package/dist/hooks/useSsoProviders.d.ts +0 -52
  366. package/dist/hooks/useSystemSettings.d.ts +0 -47
  367. package/dist/hooks/useThemeManager.d.ts +0 -11
  368. package/dist/hooks/useTotp.d.ts +0 -52
  369. package/dist/hooks/useTotpVerify.d.ts +0 -38
  370. package/dist/hooks/useTransactionSigning.d.ts +0 -45
  371. package/dist/hooks/useWallet.d.ts +0 -10
  372. package/dist/hooks/useWalletDiscovery.d.ts +0 -24
  373. package/dist/hooks/useWalletEnrollment.d.ts +0 -9
  374. package/dist/hooks/useWalletMaterial.d.ts +0 -10
  375. package/dist/hooks/useWalletRecovery.d.ts +0 -9
  376. package/dist/hooks/useWalletSigning.d.ts +0 -31
  377. package/dist/hooks/useWebAuthn.d.ts +0 -25
  378. package/dist/i18n/I18nProvider.d.ts +0 -16
  379. package/dist/i18n/context.d.ts +0 -6
  380. package/dist/i18n/index.d.ts +0 -5
  381. package/dist/i18n/translations.d.ts +0 -66
  382. package/dist/i18n/useI18n.d.ts +0 -9
  383. package/dist/index-BI9Bj9DF.js +0 -19650
  384. package/dist/index-BI9Bj9DF.js.map +0 -1
  385. package/dist/index-CDRTfEJz.cjs +0 -2061
  386. package/dist/index-CDRTfEJz.cjs.map +0 -1
  387. package/dist/silentWalletEnroll-C3JRAD9_.js +0 -42
  388. package/dist/silentWalletEnroll-C3JRAD9_.js.map +0 -1
  389. package/dist/silentWalletEnroll-DRYQAQfg.cjs +0 -1
  390. package/dist/silentWalletEnroll-DRYQAQfg.cjs.map +0 -1
  391. package/dist/solanaKeypair-BlXol3nh.js.map +0 -1
  392. package/dist/solanaKeypair-C-lIR1JY.cjs +0 -1
  393. package/dist/solanaKeypair-C-lIR1JY.cjs.map +0 -1
  394. package/dist/types/adminUser.d.ts +0 -168
  395. package/dist/types/auth.d.ts +0 -122
  396. package/dist/types/config.d.ts +0 -266
  397. package/dist/types/deposit.d.ts +0 -490
  398. package/dist/types/index.d.ts +0 -13
  399. package/dist/types/invite.d.ts +0 -71
  400. package/dist/types/member.d.ts +0 -45
  401. package/dist/types/org.d.ts +0 -133
  402. package/dist/types/profile.d.ts +0 -56
  403. package/dist/types/session.d.ts +0 -28
  404. package/dist/types/setup.d.ts +0 -47
  405. package/dist/types/systemSettings.d.ts +0 -85
  406. package/dist/types/totp.d.ts +0 -52
  407. package/dist/types/wallet.d.ts +0 -309
  408. package/dist/utils/adminUserApi.d.ts +0 -60
  409. package/dist/utils/apiClient.d.ts +0 -78
  410. package/dist/utils/cryptoShim.d.ts +0 -17
  411. package/dist/utils/csrf.d.ts +0 -1
  412. package/dist/utils/deviceDetection.d.ts +0 -17
  413. package/dist/utils/embeddedWallet.d.ts +0 -75
  414. package/dist/utils/inviteApi.d.ts +0 -31
  415. package/dist/utils/memberApi.d.ts +0 -23
  416. package/dist/utils/orgApi.d.ts +0 -36
  417. package/dist/utils/profileApi.d.ts +0 -26
  418. package/dist/utils/sanitization.d.ts +0 -66
  419. package/dist/utils/sessionApi.d.ts +0 -16
  420. package/dist/utils/setupApi.d.ts +0 -21
  421. package/dist/utils/silentWalletEnroll.d.ts +0 -41
  422. package/dist/utils/systemSettingsApi.d.ts +0 -18
  423. package/dist/utils/tabSync.d.ts +0 -46
  424. package/dist/utils/tokenManager.d.ts +0 -107
  425. package/dist/utils/unlockCredential.d.ts +0 -5
  426. package/dist/utils/validation.d.ts +0 -48
  427. package/dist/utils/walletDetection.d.ts +0 -23
  428. package/dist/utils/webauthnJson.d.ts +0 -21
@@ -0,0 +1,1195 @@
1
+ import { jsxs as t, jsx as e, Fragment as B } from "react/jsx-runtime";
2
+ import { useState as N, useMemo as re, useCallback as v, useEffect as W } from "react";
3
+ import { A as we, h as D, u as ve } from "./apiClient-B2JxVPlH.js";
4
+ class Ce {
5
+ client;
6
+ constructor(a, n, r, g) {
7
+ this.client = new we({ baseUrl: a, timeoutMs: n, retryAttempts: r, getAccessToken: g });
8
+ }
9
+ /**
10
+ * List all users in the system
11
+ */
12
+ async listUsers(a) {
13
+ try {
14
+ const n = new URLSearchParams();
15
+ a?.limit && n.set("limit", String(a.limit)), a?.offset && n.set("offset", String(a.offset));
16
+ const r = n.toString(), g = `/admin/users${r ? `?${r}` : ""}`;
17
+ return await this.client.get(g);
18
+ } catch (n) {
19
+ throw D(n, "Failed to list users");
20
+ }
21
+ }
22
+ /**
23
+ * Get a specific user by ID
24
+ */
25
+ async getUser(a) {
26
+ try {
27
+ return await this.client.get(`/admin/users/${a}`);
28
+ } catch (n) {
29
+ throw D(n, "Failed to get user");
30
+ }
31
+ }
32
+ /**
33
+ * Set a user's system admin status
34
+ */
35
+ async setSystemAdmin(a, n) {
36
+ try {
37
+ await this.client.patch(`/admin/users/${a}/system-admin`, { isAdmin: n });
38
+ } catch (r) {
39
+ throw D(r, "Failed to update system admin status");
40
+ }
41
+ }
42
+ /**
43
+ * Update a user's profile
44
+ */
45
+ async updateUser(a, n) {
46
+ try {
47
+ return await this.client.patch(`/admin/users/${a}`, n);
48
+ } catch (r) {
49
+ throw D(r, "Failed to update user");
50
+ }
51
+ }
52
+ /**
53
+ * Delete a user
54
+ */
55
+ async deleteUser(a) {
56
+ try {
57
+ await this.client.delete(`/admin/users/${a}`);
58
+ } catch (n) {
59
+ throw D(n, "Failed to delete user");
60
+ }
61
+ }
62
+ /**
63
+ * Send a password reset email to a user
64
+ */
65
+ async forcePasswordReset(a) {
66
+ try {
67
+ await this.client.post(`/admin/users/${a}/force-password-reset`, {});
68
+ } catch (n) {
69
+ throw D(n, "Failed to send password reset email");
70
+ }
71
+ }
72
+ /**
73
+ * Adjust a user's credits
74
+ */
75
+ async adjustCredits(a, n) {
76
+ try {
77
+ await this.client.post(`/admin/users/${a}/credits`, n);
78
+ } catch (r) {
79
+ throw D(r, "Failed to adjust credits");
80
+ }
81
+ }
82
+ /**
83
+ * Get a user's deposit history
84
+ */
85
+ async getUserDeposits(a, n) {
86
+ try {
87
+ const r = new URLSearchParams();
88
+ n?.limit && r.set("limit", String(n.limit)), n?.offset && r.set("offset", String(n.offset));
89
+ const g = r.toString(), b = `/admin/users/${a}/deposits${g ? `?${g}` : ""}`;
90
+ return await this.client.get(b);
91
+ } catch (r) {
92
+ throw D(r, "Failed to get user deposits");
93
+ }
94
+ }
95
+ /**
96
+ * Get a user's credit stats and transaction history
97
+ */
98
+ async getUserCredits(a, n) {
99
+ try {
100
+ const r = new URLSearchParams();
101
+ n?.limit && r.set("limit", String(n.limit)), n?.offset && r.set("offset", String(n.offset));
102
+ const g = r.toString(), b = `/admin/users/${a}/credits${g ? `?${g}` : ""}`;
103
+ return await this.client.get(b);
104
+ } catch (r) {
105
+ throw D(r, "Failed to get user credits");
106
+ }
107
+ }
108
+ /**
109
+ * Get a user's withdrawal history
110
+ */
111
+ async getUserWithdrawalHistory(a, n) {
112
+ try {
113
+ const r = new URLSearchParams();
114
+ n?.limit && r.set("limit", String(n.limit)), n?.offset && r.set("offset", String(n.offset));
115
+ const g = r.toString(), b = `/admin/users/${a}/withdrawal-history${g ? `?${g}` : ""}`;
116
+ return await this.client.get(b);
117
+ } catch (r) {
118
+ throw D(r, "Failed to get user withdrawal history");
119
+ }
120
+ }
121
+ /**
122
+ * Get a user's chat history (from cedros-pay)
123
+ * Only available when cedros-pay is enabled.
124
+ */
125
+ async getUserChats(a, n) {
126
+ try {
127
+ const r = new URLSearchParams();
128
+ n?.limit && r.set("limit", String(n.limit)), n?.offset && r.set("offset", String(n.offset));
129
+ const g = r.toString(), b = `/admin/users/${a}/chats${g ? `?${g}` : ""}`;
130
+ return await this.client.get(b);
131
+ } catch (r) {
132
+ throw D(r, "Failed to get user chat history");
133
+ }
134
+ }
135
+ /**
136
+ * Get user statistics by auth method
137
+ */
138
+ async getStats() {
139
+ try {
140
+ return await this.client.get("/admin/users/stats");
141
+ } catch (a) {
142
+ throw D(a, "Failed to get user stats");
143
+ }
144
+ }
145
+ }
146
+ function ne() {
147
+ const { config: s, _internal: a } = ve(), [n, r] = N([]), [g, b] = N(0), [w, l] = N(!1), [u, h] = N(null), [F, O] = N({}), f = re(
148
+ () => new Ce(
149
+ s.serverUrl,
150
+ s.requestTimeout,
151
+ s.retryAttempts,
152
+ a?.getAccessToken
153
+ ),
154
+ [s.serverUrl, s.requestTimeout, s.retryAttempts, a]
155
+ ), P = v(
156
+ async (c) => {
157
+ l(!0), h(null), O(c || {});
158
+ try {
159
+ const i = await f.listUsers(c);
160
+ return r(i.users), b(i.total), i;
161
+ } catch (i) {
162
+ const o = i instanceof Error ? i : new Error("Failed to list users");
163
+ throw h(o), o;
164
+ } finally {
165
+ l(!1);
166
+ }
167
+ },
168
+ [f]
169
+ ), q = v(
170
+ async (c) => {
171
+ l(!0), h(null);
172
+ try {
173
+ return await f.getUser(c);
174
+ } catch (i) {
175
+ const o = i instanceof Error ? i : new Error("Failed to get user");
176
+ throw h(o), o;
177
+ } finally {
178
+ l(!1);
179
+ }
180
+ },
181
+ [f]
182
+ ), m = v(
183
+ async (c, i) => {
184
+ l(!0), h(null);
185
+ try {
186
+ await f.setSystemAdmin(c, i), r(
187
+ (o) => o.map((p) => p.id === c ? { ...p, isSystemAdmin: i } : p)
188
+ );
189
+ } catch (o) {
190
+ const p = o instanceof Error ? o : new Error("Failed to update admin status");
191
+ throw h(p), p;
192
+ } finally {
193
+ l(!1);
194
+ }
195
+ },
196
+ [f]
197
+ ), C = v(
198
+ async (c, i) => {
199
+ l(!0), h(null);
200
+ try {
201
+ const o = await f.updateUser(c, i);
202
+ return r((p) => p.map((x) => x.id === c ? o : x)), o;
203
+ } catch (o) {
204
+ const p = o instanceof Error ? o : new Error("Failed to update user");
205
+ throw h(p), p;
206
+ } finally {
207
+ l(!1);
208
+ }
209
+ },
210
+ [f]
211
+ ), S = v(
212
+ async (c) => {
213
+ l(!0), h(null);
214
+ try {
215
+ await f.deleteUser(c), r((i) => i.filter((o) => o.id !== c)), b((i) => i - 1);
216
+ } catch (i) {
217
+ const o = i instanceof Error ? i : new Error("Failed to delete user");
218
+ throw h(o), o;
219
+ } finally {
220
+ l(!1);
221
+ }
222
+ },
223
+ [f]
224
+ ), U = v(
225
+ async (c) => {
226
+ l(!0), h(null);
227
+ try {
228
+ await f.forcePasswordReset(c);
229
+ } catch (i) {
230
+ const o = i instanceof Error ? i : new Error("Failed to send password reset");
231
+ throw h(o), o;
232
+ } finally {
233
+ l(!1);
234
+ }
235
+ },
236
+ [f]
237
+ ), $ = v(
238
+ async (c, i, o) => {
239
+ l(!0), h(null);
240
+ try {
241
+ await f.adjustCredits(c, { amount: i, reason: o });
242
+ } catch (p) {
243
+ const x = p instanceof Error ? p : new Error("Failed to adjust credits");
244
+ throw h(x), x;
245
+ } finally {
246
+ l(!1);
247
+ }
248
+ },
249
+ [f]
250
+ ), R = v(
251
+ async (c, i) => {
252
+ l(!0), h(null);
253
+ try {
254
+ return await f.getUserDeposits(c, i);
255
+ } catch (o) {
256
+ const p = o instanceof Error ? o : new Error("Failed to get user deposits");
257
+ throw h(p), p;
258
+ } finally {
259
+ l(!1);
260
+ }
261
+ },
262
+ [f]
263
+ ), k = v(
264
+ async (c, i) => {
265
+ l(!0), h(null);
266
+ try {
267
+ return await f.getUserCredits(c, i);
268
+ } catch (o) {
269
+ const p = o instanceof Error ? o : new Error("Failed to get user credits");
270
+ throw h(p), p;
271
+ } finally {
272
+ l(!1);
273
+ }
274
+ },
275
+ [f]
276
+ ), T = v(
277
+ async (c, i) => {
278
+ l(!0), h(null);
279
+ try {
280
+ return await f.getUserWithdrawalHistory(c, i);
281
+ } catch (o) {
282
+ const p = o instanceof Error ? o : new Error("Failed to get user withdrawal history");
283
+ throw h(p), p;
284
+ } finally {
285
+ l(!1);
286
+ }
287
+ },
288
+ [f]
289
+ ), A = v(
290
+ async (c, i) => {
291
+ l(!0), h(null);
292
+ try {
293
+ return await f.getUserChats(c, i);
294
+ } catch (o) {
295
+ const p = o instanceof Error ? o : new Error("Failed to get user chat history");
296
+ throw h(p), p;
297
+ } finally {
298
+ l(!1);
299
+ }
300
+ },
301
+ [f]
302
+ ), E = v(async () => {
303
+ l(!0), h(null);
304
+ try {
305
+ return await f.getStats();
306
+ } catch (c) {
307
+ const i = c instanceof Error ? c : new Error("Failed to get user stats");
308
+ throw h(i), i;
309
+ } finally {
310
+ l(!1);
311
+ }
312
+ }, [f]), M = v(async () => {
313
+ await P(F);
314
+ }, [P, F]), d = v(() => {
315
+ h(null);
316
+ }, []);
317
+ return {
318
+ users: n,
319
+ total: g,
320
+ isLoading: w,
321
+ error: u,
322
+ listUsers: P,
323
+ getUser: q,
324
+ setSystemAdmin: m,
325
+ updateUser: C,
326
+ deleteUser: S,
327
+ forcePasswordReset: U,
328
+ adjustCredits: $,
329
+ getUserDeposits: R,
330
+ getUserCredits: k,
331
+ getUserWithdrawalHistory: T,
332
+ getUserChats: A,
333
+ getStats: E,
334
+ refresh: M,
335
+ clearError: d
336
+ };
337
+ }
338
+ function se(s) {
339
+ return new Date(s).toLocaleDateString(void 0, {
340
+ year: "numeric",
341
+ month: "short",
342
+ day: "numeric"
343
+ });
344
+ }
345
+ function Se(s) {
346
+ return s.length <= 12 ? s : `${s.slice(0, 6)}...${s.slice(-4)}`;
347
+ }
348
+ function Ue(s) {
349
+ return s == null ? "-" : (s / 1e9).toFixed(4);
350
+ }
351
+ function Re({
352
+ pageSize: s = 20,
353
+ refreshInterval: a = 0,
354
+ currentUserId: n,
355
+ className: r = "",
356
+ onLoad: g,
357
+ onUserClick: b
358
+ }) {
359
+ const { users: w, total: l, isLoading: u, error: h, listUsers: F, clearError: O } = ne(), [f, P] = N(0), [q, m] = N(null), [C, S] = N("createdAt"), [U, $] = N("desc"), R = (d) => {
360
+ C === d ? $(U === "asc" ? "desc" : "asc") : (S(d), $("desc"));
361
+ }, k = re(() => [...w].sort((d, c) => {
362
+ let i, o;
363
+ switch (C) {
364
+ case "name":
365
+ i = (d.name || d.email || "").toLowerCase(), o = (c.name || c.email || "").toLowerCase();
366
+ break;
367
+ case "createdAt":
368
+ i = new Date(d.createdAt).getTime(), o = new Date(c.createdAt).getTime();
369
+ break;
370
+ case "lastLoginAt":
371
+ i = d.lastLoginAt ? new Date(d.lastLoginAt).getTime() : 0, o = c.lastLoginAt ? new Date(c.lastLoginAt).getTime() : 0;
372
+ break;
373
+ case "balanceLamports":
374
+ i = d.balanceLamports ?? 0, o = c.balanceLamports ?? 0;
375
+ break;
376
+ default:
377
+ return 0;
378
+ }
379
+ return i < o ? U === "asc" ? -1 : 1 : i > o ? U === "asc" ? 1 : -1 : 0;
380
+ }), [w, C, U]), T = v(async () => {
381
+ try {
382
+ const d = await F({ limit: s, offset: f });
383
+ g?.(d), m(null);
384
+ } catch (d) {
385
+ m(d instanceof Error ? d.message : "Failed to load users");
386
+ }
387
+ }, [s, f, F, g]);
388
+ W(() => {
389
+ P(0);
390
+ }, [s]), W(() => {
391
+ T();
392
+ }, [T]), W(() => {
393
+ if (a <= 0) return;
394
+ const d = setInterval(T, a);
395
+ return () => clearInterval(d);
396
+ }, [a, T]);
397
+ const A = Math.ceil(l / s), E = Math.floor(f / s) + 1, M = (d) => {
398
+ const c = (d - 1) * s;
399
+ P(Math.max(0, Math.min(c, Math.max(0, l - 1))));
400
+ };
401
+ return q || h ? /* @__PURE__ */ t("div", { className: `cedros-admin-user-list cedros-admin-user-list-error ${r}`, children: [
402
+ /* @__PURE__ */ e("p", { className: "cedros-admin-error", children: q || h?.message }),
403
+ /* @__PURE__ */ e(
404
+ "button",
405
+ {
406
+ type: "button",
407
+ className: "cedros-button cedros-button-outline",
408
+ onClick: () => {
409
+ O(), m(null), T();
410
+ },
411
+ children: "Retry"
412
+ }
413
+ )
414
+ ] }) : u && w.length === 0 ? /* @__PURE__ */ t("div", { className: `cedros-admin-user-list cedros-admin-user-list-loading ${r}`, children: [
415
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-indicator" }),
416
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-text", children: "Loading users..." })
417
+ ] }) : /* @__PURE__ */ t("div", { className: `cedros-admin-user-list ${r}`, children: [
418
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-list-header", children: [
419
+ /* @__PURE__ */ e("h4", { className: "cedros-admin-user-list-title", children: "All Users" }),
420
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-list-actions", children: [
421
+ /* @__PURE__ */ t("span", { className: "cedros-admin-queue-count", children: [
422
+ l,
423
+ " user",
424
+ l !== 1 ? "s" : ""
425
+ ] }),
426
+ /* @__PURE__ */ e(
427
+ "button",
428
+ {
429
+ type: "button",
430
+ className: "cedros-admin__stats-bar-refresh",
431
+ onClick: T,
432
+ disabled: u,
433
+ title: "Refresh list",
434
+ "aria-label": "Refresh list",
435
+ children: u ? "..." : "↻"
436
+ }
437
+ )
438
+ ] })
439
+ ] }),
440
+ w.length === 0 ? /* @__PURE__ */ e("div", { className: "cedros-admin-empty", children: /* @__PURE__ */ e("p", { className: "cedros-admin-empty-message", children: "No users found." }) }) : /* @__PURE__ */ t(B, { children: [
441
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-table", children: [
442
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-thead", children: [
443
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-th", children: /* @__PURE__ */ t(
444
+ "button",
445
+ {
446
+ type: "button",
447
+ className: `cedros-admin-sort-button ${C === "name" ? "cedros-admin-sort-active" : ""}`,
448
+ onClick: () => R("name"),
449
+ "aria-label": "Sort by user",
450
+ children: [
451
+ "User",
452
+ " ",
453
+ /* @__PURE__ */ e("span", { className: "cedros-admin-sort-icon", children: C === "name" ? U === "asc" ? "↑" : "↓" : "↕" })
454
+ ]
455
+ }
456
+ ) }),
457
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-th", children: /* @__PURE__ */ t(
458
+ "button",
459
+ {
460
+ type: "button",
461
+ className: `cedros-admin-sort-button ${C === "createdAt" ? "cedros-admin-sort-active" : ""}`,
462
+ onClick: () => R("createdAt"),
463
+ "aria-label": "Sort by registered date",
464
+ children: [
465
+ "Registered",
466
+ " ",
467
+ /* @__PURE__ */ e("span", { className: "cedros-admin-sort-icon", children: C === "createdAt" ? U === "asc" ? "↑" : "↓" : "↕" })
468
+ ]
469
+ }
470
+ ) }),
471
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-th", children: /* @__PURE__ */ t(
472
+ "button",
473
+ {
474
+ type: "button",
475
+ className: `cedros-admin-sort-button ${C === "lastLoginAt" ? "cedros-admin-sort-active" : ""}`,
476
+ onClick: () => R("lastLoginAt"),
477
+ "aria-label": "Sort by last login",
478
+ children: [
479
+ "Last Login",
480
+ " ",
481
+ /* @__PURE__ */ e("span", { className: "cedros-admin-sort-icon", children: C === "lastLoginAt" ? U === "asc" ? "↑" : "↓" : "↕" })
482
+ ]
483
+ }
484
+ ) }),
485
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-th", children: /* @__PURE__ */ t(
486
+ "button",
487
+ {
488
+ type: "button",
489
+ className: `cedros-admin-sort-button ${C === "balanceLamports" ? "cedros-admin-sort-active" : ""}`,
490
+ onClick: () => R("balanceLamports"),
491
+ "aria-label": "Sort by balance",
492
+ children: [
493
+ "Balance",
494
+ " ",
495
+ /* @__PURE__ */ e("span", { className: "cedros-admin-sort-icon", children: C === "balanceLamports" ? U === "asc" ? "↑" : "↓" : "↕" })
496
+ ]
497
+ }
498
+ ) })
499
+ ] }),
500
+ k.map((d) => {
501
+ const c = d.id === n;
502
+ return /* @__PURE__ */ t(
503
+ "div",
504
+ {
505
+ className: `cedros-admin-user-row ${c ? "cedros-admin-user-row-current" : ""}`,
506
+ onClick: () => b?.(d),
507
+ onKeyDown: (i) => {
508
+ (i.key === "Enter" || i.key === " ") && (i.preventDefault(), b?.(d));
509
+ },
510
+ role: b ? "button" : void 0,
511
+ tabIndex: b ? 0 : void 0,
512
+ children: [
513
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-td cedros-admin-user-info", children: [
514
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-avatar", children: d.picture ? /* @__PURE__ */ e(
515
+ "img",
516
+ {
517
+ src: d.picture,
518
+ alt: d.name || d.email || "User",
519
+ className: "cedros-admin-user-avatar-img",
520
+ referrerPolicy: "no-referrer"
521
+ }
522
+ ) : /* @__PURE__ */ e("span", { className: "cedros-admin-user-avatar-placeholder", children: (d.name?.[0] || d.email?.[0] || "?").toUpperCase() }) }),
523
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-details", children: [
524
+ /* @__PURE__ */ t("span", { className: "cedros-admin-user-name", children: [
525
+ d.name || "Unknown",
526
+ c && /* @__PURE__ */ e("span", { className: "cedros-admin-user-you", children: "(you)" })
527
+ ] }),
528
+ /* @__PURE__ */ e("span", { className: "cedros-admin-user-email", title: d.email, children: d.email || Se(d.id) })
529
+ ] })
530
+ ] }),
531
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-td", children: se(d.createdAt) }),
532
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-td", children: d.lastLoginAt ? se(d.lastLoginAt) : "-" }),
533
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-td", children: Ue(d.balanceLamports) })
534
+ ]
535
+ },
536
+ d.id
537
+ );
538
+ })
539
+ ] }),
540
+ A > 1 && /* @__PURE__ */ t("div", { className: "cedros-admin-pagination", children: [
541
+ /* @__PURE__ */ e(
542
+ "button",
543
+ {
544
+ type: "button",
545
+ className: "cedros-button cedros-button-outline cedros-button-sm",
546
+ onClick: () => M(E - 1),
547
+ disabled: E <= 1,
548
+ children: "Previous"
549
+ }
550
+ ),
551
+ /* @__PURE__ */ t("span", { className: "cedros-admin-page-info", children: [
552
+ "Page ",
553
+ E,
554
+ " of ",
555
+ A,
556
+ " (",
557
+ l,
558
+ " total)"
559
+ ] }),
560
+ /* @__PURE__ */ e(
561
+ "button",
562
+ {
563
+ type: "button",
564
+ className: "cedros-button cedros-button-outline cedros-button-sm",
565
+ onClick: () => M(E + 1),
566
+ disabled: E >= A,
567
+ children: "Next"
568
+ }
569
+ )
570
+ ] })
571
+ ] })
572
+ ] });
573
+ }
574
+ function ae(s) {
575
+ return new Date(s).toLocaleDateString(void 0, {
576
+ year: "numeric",
577
+ month: "short",
578
+ day: "numeric"
579
+ });
580
+ }
581
+ function z(s) {
582
+ return new Date(s).toLocaleString(void 0, {
583
+ year: "numeric",
584
+ month: "short",
585
+ day: "numeric",
586
+ hour: "2-digit",
587
+ minute: "2-digit"
588
+ });
589
+ }
590
+ function Ae(s) {
591
+ return s == null ? "—" : `${(s / 1e9).toFixed(4)} SOL`;
592
+ }
593
+ function J(s) {
594
+ return s == null ? "—" : (s / 1e9).toFixed(4);
595
+ }
596
+ function Le(s) {
597
+ return {
598
+ DEPOSIT: "Deposit",
599
+ SPEND: "Spend",
600
+ ADJUSTMENT: "Adjustment",
601
+ REFUND: "Refund"
602
+ }[s.toUpperCase()] || s;
603
+ }
604
+ function De(s, a) {
605
+ return a ? {
606
+ deposit: "Credit deposit",
607
+ purchase: "Purchase",
608
+ api_call: "API usage",
609
+ subscription: "Subscription",
610
+ refund: "Refund",
611
+ bonus: "Bonus credit",
612
+ promo: "Promotional credit",
613
+ correction: "Balance correction"
614
+ }[a.toLowerCase()] || a : {
615
+ DEPOSIT: "Credit added",
616
+ SPEND: "Credit used",
617
+ ADJUSTMENT: "Manual adjustment",
618
+ REFUND: "Credit refunded"
619
+ }[s.toUpperCase()] || "—";
620
+ }
621
+ function Me({
622
+ userId: s,
623
+ onBack: a,
624
+ currentUserId: n,
625
+ onEditUser: r,
626
+ onAdjustCredits: g,
627
+ cedrosPayEnabled: b = !1,
628
+ className: w = ""
629
+ }) {
630
+ const {
631
+ isLoading: l,
632
+ getUser: u,
633
+ getUserDeposits: h,
634
+ getUserCredits: F,
635
+ getUserChats: O,
636
+ deleteUser: f,
637
+ forcePasswordReset: P,
638
+ clearError: q
639
+ } = ne(), [m, C] = N(null), [S, U] = N(null), [$, R] = N(null), [k, T] = N(null), [A, E] = N("deposits"), [M, d] = N(null), [c, i] = N(null), [o, p] = N(null), [x, K] = N(null), [V, _] = N(!1), [Y, ie] = N(0), [G, oe] = N(0), [Q, ce] = N(0), L = 10, X = v(async () => {
640
+ try {
641
+ const y = await u(s);
642
+ C(y), d(null);
643
+ } catch (y) {
644
+ d(y instanceof Error ? y.message : "Failed to load user");
645
+ }
646
+ }, [s, u]), Z = v(async () => {
647
+ try {
648
+ const j = await h(s, { limit: L, offset: Y });
649
+ R(j), p(null);
650
+ } catch (y) {
651
+ p(y instanceof Error ? y.message : "Failed to load deposits");
652
+ }
653
+ }, [s, h, Y]), H = v(async () => {
654
+ try {
655
+ const j = await F(s, { limit: L, offset: G });
656
+ U(j), i(null);
657
+ } catch (y) {
658
+ i(y instanceof Error ? y.message : "Failed to load credits");
659
+ }
660
+ }, [s, F, G]), I = v(async () => {
661
+ if (b)
662
+ try {
663
+ const j = await O(s, { limit: L, offset: Q });
664
+ T(j), K(null);
665
+ } catch (y) {
666
+ K(y instanceof Error ? y.message : "Failed to load chat history");
667
+ }
668
+ }, [s, O, Q, b]);
669
+ W(() => {
670
+ X(), Z(), H(), b && I();
671
+ }, [X, Z, H, I, b]);
672
+ const de = async () => {
673
+ if (!m) return;
674
+ if (m.id === n) {
675
+ alert("You cannot delete your own account");
676
+ return;
677
+ }
678
+ if (m.isSystemAdmin) {
679
+ alert("Cannot delete a system admin. Remove admin status first.");
680
+ return;
681
+ }
682
+ if (window.confirm(
683
+ `Are you sure you want to delete ${m.name || m.email || "this user"}? This action cannot be undone.`
684
+ )) {
685
+ _(!0);
686
+ try {
687
+ await f(m.id), a();
688
+ } catch {
689
+ } finally {
690
+ _(!1);
691
+ }
692
+ }
693
+ }, le = async () => {
694
+ if (!m?.email) {
695
+ alert("User has no email address");
696
+ return;
697
+ }
698
+ if (window.confirm(`Send a password reset email to ${m.email}?`)) {
699
+ _(!0);
700
+ try {
701
+ await P(m.id), alert("Password reset email sent");
702
+ } catch {
703
+ } finally {
704
+ _(!1);
705
+ }
706
+ }
707
+ }, me = $ ? Math.ceil($.total / L) : 0, ue = Math.floor(Y / L) + 1, he = S ? Math.ceil(S.totalTransactions / L) : 0, fe = Math.floor(G / L) + 1, pe = (y) => {
708
+ ie((y - 1) * L);
709
+ }, ge = (y) => {
710
+ oe((y - 1) * L);
711
+ }, be = k ? Math.ceil(k.total / L) : 0, ye = Math.floor(Q / L) + 1, Ne = (y) => {
712
+ ce((y - 1) * L);
713
+ };
714
+ if (M)
715
+ return /* @__PURE__ */ t("div", { className: `cedros-admin-user-detail cedros-admin-user-detail-error ${w}`, children: [
716
+ /* @__PURE__ */ e(
717
+ "button",
718
+ {
719
+ type: "button",
720
+ className: "cedros-button cedros-button-outline cedros-button-sm",
721
+ onClick: a,
722
+ children: "Back"
723
+ }
724
+ ),
725
+ /* @__PURE__ */ e("p", { className: "cedros-admin-error", children: M }),
726
+ /* @__PURE__ */ e(
727
+ "button",
728
+ {
729
+ type: "button",
730
+ className: "cedros-button cedros-button-outline",
731
+ onClick: () => {
732
+ q(), d(null), X();
733
+ },
734
+ children: "Retry"
735
+ }
736
+ )
737
+ ] });
738
+ if (l && !m)
739
+ return /* @__PURE__ */ t("div", { className: `cedros-admin-user-detail cedros-admin-user-detail-loading ${w}`, children: [
740
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-indicator" }),
741
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-text", children: "Loading user..." })
742
+ ] });
743
+ if (!m)
744
+ return /* @__PURE__ */ t("div", { className: `cedros-admin-user-detail ${w}`, children: [
745
+ /* @__PURE__ */ e(
746
+ "button",
747
+ {
748
+ type: "button",
749
+ className: "cedros-button cedros-button-outline cedros-button-sm",
750
+ onClick: a,
751
+ children: "Back"
752
+ }
753
+ ),
754
+ /* @__PURE__ */ e("p", { className: "cedros-admin-empty-message", children: "User not found." })
755
+ ] });
756
+ const te = m.id === n;
757
+ return /* @__PURE__ */ t("div", { className: `cedros-admin-user-detail ${w}`, children: [
758
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-header", children: [
759
+ /* @__PURE__ */ e(
760
+ "button",
761
+ {
762
+ type: "button",
763
+ className: "cedros-button cedros-button-outline cedros-button-sm cedros-admin-back-btn",
764
+ onClick: a,
765
+ children: "Back to Users"
766
+ }
767
+ ),
768
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-actions", children: [
769
+ r && /* @__PURE__ */ e(
770
+ "button",
771
+ {
772
+ type: "button",
773
+ className: "cedros-button cedros-button-outline cedros-button-sm",
774
+ onClick: () => r(m),
775
+ disabled: V,
776
+ children: "Edit"
777
+ }
778
+ ),
779
+ m.email && /* @__PURE__ */ e(
780
+ "button",
781
+ {
782
+ type: "button",
783
+ className: "cedros-button cedros-button-outline cedros-button-sm",
784
+ onClick: le,
785
+ disabled: V,
786
+ children: "Reset Password"
787
+ }
788
+ ),
789
+ g && /* @__PURE__ */ e(
790
+ "button",
791
+ {
792
+ type: "button",
793
+ className: "cedros-button cedros-button-outline cedros-button-sm",
794
+ onClick: () => g(m),
795
+ disabled: V,
796
+ children: "Adjust Credits"
797
+ }
798
+ ),
799
+ !te && !m.isSystemAdmin && /* @__PURE__ */ e(
800
+ "button",
801
+ {
802
+ type: "button",
803
+ className: "cedros-button cedros-button-outline cedros-button-sm cedros-admin-btn-danger",
804
+ onClick: de,
805
+ disabled: V,
806
+ children: "Delete"
807
+ }
808
+ )
809
+ ] })
810
+ ] }),
811
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-info", children: [
812
+ /* @__PURE__ */ e("div", { className: "cedros-admin-user-detail-avatar", children: m.picture ? /* @__PURE__ */ e(
813
+ "img",
814
+ {
815
+ src: m.picture,
816
+ alt: m.name || m.email || "User",
817
+ className: "cedros-admin-user-detail-avatar-img",
818
+ referrerPolicy: "no-referrer"
819
+ }
820
+ ) : /* @__PURE__ */ e("span", { className: "cedros-admin-user-detail-avatar-placeholder", children: (m.name?.[0] || m.email?.[0] || "?").toUpperCase() }) }),
821
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-meta", children: [
822
+ /* @__PURE__ */ t("h2", { className: "cedros-admin-user-detail-name", children: [
823
+ m.name || "Unknown",
824
+ te && /* @__PURE__ */ e("span", { className: "cedros-admin-user-you", children: "(you)" })
825
+ ] }),
826
+ /* @__PURE__ */ t("p", { className: "cedros-admin-user-detail-email", children: [
827
+ m.email || "No email",
828
+ m.emailVerified && /* @__PURE__ */ e("span", { className: "cedros-admin-verified-badge", title: "Email verified", children: "Verified" })
829
+ ] }),
830
+ m.isSystemAdmin && /* @__PURE__ */ e("div", { className: "cedros-admin-user-detail-badges", children: /* @__PURE__ */ e("span", { className: "cedros-admin-admin-badge cedros-admin-admin-badge-yes", children: "System Admin" }) }),
831
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-methods", children: [
832
+ /* @__PURE__ */ e("span", { className: "cedros-admin-user-detail-methods-label", children: "Auth Methods:" }),
833
+ m.authMethods.length > 0 ? m.authMethods.map((y) => /* @__PURE__ */ e(
834
+ "span",
835
+ {
836
+ className: `cedros-admin-auth-badge cedros-admin-auth-badge-${y}`,
837
+ children: y
838
+ },
839
+ y
840
+ )) : /* @__PURE__ */ e("span", { className: "cedros-admin-auth-badge cedros-admin-auth-badge-none", children: "none" })
841
+ ] }),
842
+ /* @__PURE__ */ t("p", { className: "cedros-admin-user-detail-dates", children: [
843
+ "Registered: ",
844
+ ae(m.createdAt),
845
+ " | Updated: ",
846
+ ae(m.updatedAt)
847
+ ] })
848
+ ] })
849
+ ] }),
850
+ c ? /* @__PURE__ */ t("div", { className: "cedros-admin-stats-error", children: [
851
+ /* @__PURE__ */ e("p", { className: "cedros-admin-error-inline", children: c }),
852
+ /* @__PURE__ */ e(
853
+ "button",
854
+ {
855
+ type: "button",
856
+ className: "cedros-button cedros-button-outline cedros-button-sm",
857
+ onClick: () => {
858
+ i(null), H();
859
+ },
860
+ children: "Retry"
861
+ }
862
+ )
863
+ ] }) : S ? /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-stats", children: [
864
+ /* @__PURE__ */ t("div", { className: "cedros-admin-stat-card", children: [
865
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-label", children: "Credit Balance" }),
866
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-value", children: J(S.stats.currentBalanceLamports) })
867
+ ] }),
868
+ /* @__PURE__ */ t("div", { className: "cedros-admin-stat-card", children: [
869
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-label", children: "Total Credited" }),
870
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-value", children: J(S.stats.totalDepositedLamports) })
871
+ ] }),
872
+ /* @__PURE__ */ t("div", { className: "cedros-admin-stat-card", children: [
873
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-label", children: "Total Spent" }),
874
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-value", children: J(S.stats.totalSpentLamports) })
875
+ ] }),
876
+ /* @__PURE__ */ t("div", { className: "cedros-admin-stat-card", children: [
877
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-label", children: "Deposits" }),
878
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-value", children: S.stats.depositCount })
879
+ ] }),
880
+ /* @__PURE__ */ t("div", { className: "cedros-admin-stat-card", children: [
881
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-label", children: "Transactions" }),
882
+ /* @__PURE__ */ e("span", { className: "cedros-admin-stat-value", children: S.stats.spendCount })
883
+ ] })
884
+ ] }) : /* @__PURE__ */ t("div", { className: "cedros-admin-stats-loading", children: [
885
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-indicator" }),
886
+ /* @__PURE__ */ e("span", { children: "Loading credit stats..." })
887
+ ] }),
888
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-tabs", children: [
889
+ /* @__PURE__ */ t(
890
+ "button",
891
+ {
892
+ type: "button",
893
+ className: `cedros-admin-tab ${A === "deposits" ? "cedros-admin-tab-active" : ""}`,
894
+ onClick: () => E("deposits"),
895
+ children: [
896
+ "Deposits (",
897
+ $?.total ?? 0,
898
+ ")"
899
+ ]
900
+ }
901
+ ),
902
+ /* @__PURE__ */ t(
903
+ "button",
904
+ {
905
+ type: "button",
906
+ className: `cedros-admin-tab ${A === "transactions" ? "cedros-admin-tab-active" : ""}`,
907
+ onClick: () => E("transactions"),
908
+ children: [
909
+ "Credits (",
910
+ S?.totalTransactions ?? 0,
911
+ ")"
912
+ ]
913
+ }
914
+ ),
915
+ b && /* @__PURE__ */ t(
916
+ "button",
917
+ {
918
+ type: "button",
919
+ className: `cedros-admin-tab ${A === "chats" ? "cedros-admin-tab-active" : ""}`,
920
+ onClick: () => E("chats"),
921
+ children: [
922
+ "Chats (",
923
+ k?.total ?? 0,
924
+ ")"
925
+ ]
926
+ }
927
+ )
928
+ ] }),
929
+ /* @__PURE__ */ t("div", { className: "cedros-admin-user-detail-content", children: [
930
+ A === "deposits" && /* @__PURE__ */ e(
931
+ Ee,
932
+ {
933
+ deposits: $?.deposits ?? [],
934
+ total: $?.total ?? 0,
935
+ currentPage: ue,
936
+ totalPages: me,
937
+ onPageChange: pe,
938
+ isLoading: l,
939
+ error: o,
940
+ onRetry: () => {
941
+ p(null), Z();
942
+ }
943
+ }
944
+ ),
945
+ A === "transactions" && /* @__PURE__ */ e(
946
+ $e,
947
+ {
948
+ transactions: S?.transactions ?? [],
949
+ total: S?.totalTransactions ?? 0,
950
+ currentPage: fe,
951
+ totalPages: he,
952
+ onPageChange: ge,
953
+ error: c,
954
+ onRetry: () => {
955
+ i(null), H();
956
+ },
957
+ isLoading: l
958
+ }
959
+ ),
960
+ A === "chats" && b && /* @__PURE__ */ e(
961
+ Te,
962
+ {
963
+ sessions: k?.sessions ?? [],
964
+ total: k?.total ?? 0,
965
+ currentPage: ye,
966
+ totalPages: be,
967
+ onPageChange: Ne,
968
+ error: x,
969
+ onRetry: () => {
970
+ K(null), I();
971
+ },
972
+ isLoading: l
973
+ }
974
+ )
975
+ ] })
976
+ ] });
977
+ }
978
+ function Ee({
979
+ deposits: s,
980
+ total: a,
981
+ currentPage: n,
982
+ totalPages: r,
983
+ onPageChange: g,
984
+ isLoading: b,
985
+ error: w,
986
+ onRetry: l
987
+ }) {
988
+ return w ? /* @__PURE__ */ t("div", { className: "cedros-admin-tab-error", children: [
989
+ /* @__PURE__ */ e("p", { className: "cedros-admin-error-inline", children: w }),
990
+ /* @__PURE__ */ e(
991
+ "button",
992
+ {
993
+ type: "button",
994
+ className: "cedros-button cedros-button-outline cedros-button-sm",
995
+ onClick: l,
996
+ children: "Retry"
997
+ }
998
+ )
999
+ ] }) : b && s.length === 0 ? /* @__PURE__ */ t("div", { className: "cedros-admin-tab-loading", children: [
1000
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-indicator" }),
1001
+ /* @__PURE__ */ e("span", { children: "Loading deposits..." })
1002
+ ] }) : a === 0 ? /* @__PURE__ */ e("div", { className: "cedros-admin-empty-message", children: "No deposits found." }) : /* @__PURE__ */ t(B, { children: [
1003
+ /* @__PURE__ */ t("div", { className: "cedros-admin-list-table", children: [
1004
+ /* @__PURE__ */ t("div", { className: "cedros-admin-list-thead", children: [
1005
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Date" }),
1006
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Amount" }),
1007
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Status" }),
1008
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Transaction" })
1009
+ ] }),
1010
+ s.map((u) => /* @__PURE__ */ t("div", { className: "cedros-admin-list-row", children: [
1011
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: z(u.createdAt) }),
1012
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: Ae(u.amountLamports) }),
1013
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: /* @__PURE__ */ e("span", { className: `cedros-admin-status-badge cedros-admin-status-${u.status}`, children: u.status }) }),
1014
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td cedros-admin-list-td-actions", children: u.txSignature ? /* @__PURE__ */ t(B, { children: [
1015
+ /* @__PURE__ */ t("span", { className: "cedros-admin-list-td-mono", title: u.txSignature, children: [
1016
+ u.txSignature.slice(0, 8),
1017
+ "..."
1018
+ ] }),
1019
+ /* @__PURE__ */ e(
1020
+ "a",
1021
+ {
1022
+ href: `https://orbmarkets.io/tx/${u.txSignature}`,
1023
+ target: "_blank",
1024
+ rel: "noopener noreferrer",
1025
+ className: "cedros-admin-icon-link",
1026
+ title: "View on Orbmarkets",
1027
+ "aria-label": "View transaction on Orbmarkets",
1028
+ children: "↗"
1029
+ }
1030
+ )
1031
+ ] }) : /* @__PURE__ */ e("span", { className: "cedros-admin-list-td-muted", children: "—" }) })
1032
+ ] }, u.id))
1033
+ ] }),
1034
+ r > 1 && /* @__PURE__ */ e(
1035
+ ee,
1036
+ {
1037
+ currentPage: n,
1038
+ totalPages: r,
1039
+ total: a,
1040
+ onPageChange: g
1041
+ }
1042
+ )
1043
+ ] });
1044
+ }
1045
+ function $e({
1046
+ transactions: s,
1047
+ total: a,
1048
+ currentPage: n,
1049
+ totalPages: r,
1050
+ onPageChange: g,
1051
+ isLoading: b,
1052
+ error: w,
1053
+ onRetry: l
1054
+ }) {
1055
+ return w ? /* @__PURE__ */ t("div", { className: "cedros-admin-tab-error", children: [
1056
+ /* @__PURE__ */ e("p", { className: "cedros-admin-error-inline", children: w }),
1057
+ /* @__PURE__ */ e(
1058
+ "button",
1059
+ {
1060
+ type: "button",
1061
+ className: "cedros-button cedros-button-outline cedros-button-sm",
1062
+ onClick: l,
1063
+ children: "Retry"
1064
+ }
1065
+ )
1066
+ ] }) : b && s.length === 0 ? /* @__PURE__ */ t("div", { className: "cedros-admin-tab-loading", children: [
1067
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-indicator" }),
1068
+ /* @__PURE__ */ e("span", { children: "Loading transactions..." })
1069
+ ] }) : a === 0 ? /* @__PURE__ */ e("div", { className: "cedros-admin-empty-message", children: "No credit transactions found." }) : /* @__PURE__ */ t(B, { children: [
1070
+ /* @__PURE__ */ t("div", { className: "cedros-admin-list-table", children: [
1071
+ /* @__PURE__ */ t("div", { className: "cedros-admin-list-thead", children: [
1072
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Date" }),
1073
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Type" }),
1074
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Description" }),
1075
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Amount" })
1076
+ ] }),
1077
+ s.map((u) => /* @__PURE__ */ t("div", { className: "cedros-admin-list-row", children: [
1078
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: z(u.createdAt) }),
1079
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: /* @__PURE__ */ e(
1080
+ "span",
1081
+ {
1082
+ className: `cedros-admin-tx-type cedros-admin-tx-type-${u.txType.toLowerCase()}`,
1083
+ children: Le(u.txType)
1084
+ }
1085
+ ) }),
1086
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: De(u.txType, u.referenceType) }),
1087
+ /* @__PURE__ */ t(
1088
+ "div",
1089
+ {
1090
+ className: `cedros-admin-list-td ${u.amountLamports >= 0 ? "cedros-admin-amount-positive" : "cedros-admin-amount-negative"}`,
1091
+ children: [
1092
+ u.amountLamports >= 0 ? "+" : "",
1093
+ J(u.amountLamports)
1094
+ ]
1095
+ }
1096
+ )
1097
+ ] }, u.id))
1098
+ ] }),
1099
+ r > 1 && /* @__PURE__ */ e(
1100
+ ee,
1101
+ {
1102
+ currentPage: n,
1103
+ totalPages: r,
1104
+ total: a,
1105
+ onPageChange: g
1106
+ }
1107
+ )
1108
+ ] });
1109
+ }
1110
+ function Te({
1111
+ sessions: s,
1112
+ total: a,
1113
+ currentPage: n,
1114
+ totalPages: r,
1115
+ onPageChange: g,
1116
+ isLoading: b,
1117
+ error: w,
1118
+ onRetry: l
1119
+ }) {
1120
+ return w ? /* @__PURE__ */ t("div", { className: "cedros-admin-tab-error", children: [
1121
+ /* @__PURE__ */ e("p", { className: "cedros-admin-error-inline", children: w }),
1122
+ /* @__PURE__ */ e(
1123
+ "button",
1124
+ {
1125
+ type: "button",
1126
+ className: "cedros-button cedros-button-outline cedros-button-sm",
1127
+ onClick: l,
1128
+ children: "Retry"
1129
+ }
1130
+ )
1131
+ ] }) : b && s.length === 0 ? /* @__PURE__ */ t("div", { className: "cedros-admin-tab-loading", children: [
1132
+ /* @__PURE__ */ e("span", { className: "cedros-admin-loading-indicator" }),
1133
+ /* @__PURE__ */ e("span", { children: "Loading chat history..." })
1134
+ ] }) : a === 0 ? /* @__PURE__ */ e("div", { className: "cedros-admin-empty-message", children: "No chat sessions found." }) : /* @__PURE__ */ t(B, { children: [
1135
+ /* @__PURE__ */ t("div", { className: "cedros-admin-list-table", children: [
1136
+ /* @__PURE__ */ t("div", { className: "cedros-admin-list-thead", children: [
1137
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Date" }),
1138
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Session" }),
1139
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-th", children: "Messages" })
1140
+ ] }),
1141
+ s.map((u) => /* @__PURE__ */ t("div", { className: "cedros-admin-list-row", children: [
1142
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: z(u.createdAt) }),
1143
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: u.title || `Chat ${u.id.slice(0, 8)}...` }),
1144
+ /* @__PURE__ */ e("div", { className: "cedros-admin-list-td", children: u.messageCount })
1145
+ ] }, u.id))
1146
+ ] }),
1147
+ r > 1 && /* @__PURE__ */ e(
1148
+ ee,
1149
+ {
1150
+ currentPage: n,
1151
+ totalPages: r,
1152
+ total: a,
1153
+ onPageChange: g
1154
+ }
1155
+ )
1156
+ ] });
1157
+ }
1158
+ function ee({ currentPage: s, totalPages: a, total: n, onPageChange: r }) {
1159
+ return /* @__PURE__ */ t("div", { className: "cedros-admin-pagination", children: [
1160
+ /* @__PURE__ */ e(
1161
+ "button",
1162
+ {
1163
+ type: "button",
1164
+ className: "cedros-button cedros-button-outline cedros-button-sm",
1165
+ onClick: () => r(s - 1),
1166
+ disabled: s <= 1,
1167
+ children: "Previous"
1168
+ }
1169
+ ),
1170
+ /* @__PURE__ */ t("span", { className: "cedros-admin-page-info", children: [
1171
+ "Page ",
1172
+ s,
1173
+ " of ",
1174
+ a,
1175
+ " (",
1176
+ n,
1177
+ " total)"
1178
+ ] }),
1179
+ /* @__PURE__ */ e(
1180
+ "button",
1181
+ {
1182
+ type: "button",
1183
+ className: "cedros-button cedros-button-outline cedros-button-sm",
1184
+ onClick: () => r(s + 1),
1185
+ disabled: s >= a,
1186
+ children: "Next"
1187
+ }
1188
+ )
1189
+ ] });
1190
+ }
1191
+ export {
1192
+ Me as A,
1193
+ Re as a,
1194
+ ne as u
1195
+ };