@cedros/login-react 0.0.12 → 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +68 -0
- package/dist/AdminDepositList-CyT4VBH8.js +311 -0
- package/dist/AdminDepositList-CyT4VBH8.js.map +1 -0
- package/dist/AdminDepositList-b2AXtLg0.cjs +1 -0
- package/dist/AdminDepositList-b2AXtLg0.cjs.map +1 -0
- package/dist/AdminWithdrawalHistory-Cud-yuWy.js +916 -0
- package/dist/AdminWithdrawalHistory-Cud-yuWy.js.map +1 -0
- package/dist/AdminWithdrawalHistory-DL9zbu2b.cjs +1 -0
- package/dist/AdminWithdrawalHistory-DL9zbu2b.cjs.map +1 -0
- package/dist/AuthenticationSettings-D739nNul.cjs +1 -0
- package/dist/AuthenticationSettings-D739nNul.cjs.map +1 -0
- package/dist/AuthenticationSettings-DtLoxQ2z.cjs +1 -0
- package/dist/AuthenticationSettings-DtLoxQ2z.cjs.map +1 -0
- package/dist/AuthenticationSettings-Dx3JCI3m.js +9 -0
- package/dist/AuthenticationSettings-Dx3JCI3m.js.map +1 -0
- package/dist/AuthenticationSettings-vowmQPXz.js +525 -0
- package/dist/AuthenticationSettings-vowmQPXz.js.map +1 -0
- package/dist/AutosaveStatus-CCrZszKA.cjs +1 -0
- package/dist/AutosaveStatus-CCrZszKA.cjs.map +1 -0
- package/dist/AutosaveStatus-Ciyt350A.js +1497 -0
- package/dist/AutosaveStatus-Ciyt350A.js.map +1 -0
- package/dist/CreditSystemSettings-BQ3h4CyM.js +210 -0
- package/dist/CreditSystemSettings-BQ3h4CyM.js.map +1 -0
- package/dist/CreditSystemSettings-C6dUsu72.cjs +1 -0
- package/dist/CreditSystemSettings-C6dUsu72.cjs.map +1 -0
- package/dist/CreditSystemSettings-CBot8EPW.cjs +1 -0
- package/dist/CreditSystemSettings-CBot8EPW.cjs.map +1 -0
- package/dist/CreditSystemSettings-bVuNLsqp.js +9 -0
- package/dist/CreditSystemSettings-bVuNLsqp.js.map +1 -0
- package/dist/DepositsSection-BkKUS4vk.cjs +1 -0
- package/dist/DepositsSection-BkKUS4vk.cjs.map +1 -0
- package/dist/{DepositsSection-0Hqr0yDm.js → DepositsSection-DD9MKUFt.js} +20 -14
- package/dist/DepositsSection-DD9MKUFt.js.map +1 -0
- package/dist/EmailRegisterForm-Pvm3I8GP.cjs +1 -0
- package/dist/EmailRegisterForm-Pvm3I8GP.cjs.map +1 -0
- package/dist/EmailRegisterForm-nI0BOIxR.js +927 -0
- package/dist/EmailRegisterForm-nI0BOIxR.js.map +1 -0
- package/dist/EmailSettings-B9qwPSiM.cjs +1 -0
- package/dist/EmailSettings-B9qwPSiM.cjs.map +1 -0
- package/dist/EmailSettings-CCA8dNCi.js +17 -0
- package/dist/EmailSettings-CCA8dNCi.js.map +1 -0
- package/dist/EmailSettings-RbgAq9FB.cjs +1 -0
- package/dist/EmailSettings-RbgAq9FB.cjs.map +1 -0
- package/dist/{AuthenticationSettings-BSoIQ58T.js → EmailSettings-mxlKNcPl.js} +3 -3
- package/dist/EmailSettings-mxlKNcPl.js.map +1 -0
- package/dist/EmbeddedWalletSettings-B4h-8rxB.cjs +1 -0
- package/dist/EmbeddedWalletSettings-B4h-8rxB.cjs.map +1 -0
- package/dist/EmbeddedWalletSettings-BInZvFZf.js +79 -0
- package/dist/EmbeddedWalletSettings-BInZvFZf.js.map +1 -0
- package/dist/{EmbeddedWalletSettings-iVf_3pn3.js → EmbeddedWalletSettings-CXlZFFDw.js} +3 -3
- package/dist/EmbeddedWalletSettings-CXlZFFDw.js.map +1 -0
- package/dist/EmbeddedWalletSettings-D5JXae1L.cjs +1 -0
- package/dist/EmbeddedWalletSettings-D5JXae1L.cjs.map +1 -0
- package/dist/ErrorMessage-CHbYbVi2.cjs +1 -0
- package/dist/ErrorMessage-CHbYbVi2.cjs.map +1 -0
- package/dist/ErrorMessage-CcEK0pYO.js +64 -0
- package/dist/ErrorMessage-CcEK0pYO.js.map +1 -0
- package/dist/{GoogleLoginButton-BzHr545L.js → GoogleLoginButton-CXwp4LsQ.js} +4 -3
- package/dist/{GoogleLoginButton-BzHr545L.js.map → GoogleLoginButton-CXwp4LsQ.js.map} +1 -1
- package/dist/GoogleLoginButton-zS_69-KV.cjs +1 -0
- package/dist/{GoogleLoginButton-DoAdOqb3.cjs.map → GoogleLoginButton-zS_69-KV.cjs.map} +1 -1
- package/dist/LoadingSpinner-6vml-zwr.js +79 -0
- package/dist/LoadingSpinner-6vml-zwr.js.map +1 -0
- package/dist/LoadingSpinner-d6sSxgQN.cjs +1 -0
- package/dist/LoadingSpinner-d6sSxgQN.cjs.map +1 -0
- package/dist/PermissionsSection-BPbE-hNx.cjs +1 -0
- package/dist/PermissionsSection-BPbE-hNx.cjs.map +1 -0
- package/dist/PermissionsSection-CighC1p6.js +1026 -0
- package/dist/PermissionsSection-CighC1p6.js.map +1 -0
- package/dist/ServerSettings-BE8fsE5k.js +84 -0
- package/dist/ServerSettings-BE8fsE5k.js.map +1 -0
- package/dist/ServerSettings-CYTlQ2xy.cjs +1 -0
- package/dist/ServerSettings-CYTlQ2xy.cjs.map +1 -0
- package/dist/ServerSettings-DFs9jQ3f.cjs +1 -0
- package/dist/ServerSettings-DFs9jQ3f.cjs.map +1 -0
- package/dist/{ServerSettings-C_osdbiX.js → ServerSettings-pSmWDC1d.js} +3 -3
- package/dist/ServerSettings-pSmWDC1d.js.map +1 -0
- package/dist/SettingsPageLayout--GZ_iHLc.js +50 -0
- package/dist/SettingsPageLayout--GZ_iHLc.js.map +1 -0
- package/dist/SettingsPageLayout-j5lMjEID.cjs +1 -0
- package/dist/SettingsPageLayout-j5lMjEID.cjs.map +1 -0
- package/dist/SolanaLoginButton-BjOxpE1C.cjs +1 -0
- package/dist/{SolanaLoginButton-CPzms0kf.cjs.map → SolanaLoginButton-BjOxpE1C.cjs.map} +1 -1
- package/dist/{SolanaLoginButton-C-CfZxAZ.js → SolanaLoginButton-P22QjBaO.js} +5 -4
- package/dist/{SolanaLoginButton-C-CfZxAZ.js.map → SolanaLoginButton-P22QjBaO.js.map} +1 -1
- package/dist/StatsBar-BX-hHtTq.js +66 -0
- package/dist/StatsBar-BX-hHtTq.js.map +1 -0
- package/dist/StatsBar-DTUZCwDD.cjs +1 -0
- package/dist/StatsBar-DTUZCwDD.cjs.map +1 -0
- package/dist/{TeamSection-Bjt72upx.js → TeamSection-BIECkp7g.js} +27 -26
- package/dist/TeamSection-BIECkp7g.js.map +1 -0
- package/dist/TeamSection-BOH9pv_E.cjs +1 -0
- package/dist/TeamSection-BOH9pv_E.cjs.map +1 -0
- package/dist/UsersSection-e6q7FHzx.cjs +1 -0
- package/dist/UsersSection-e6q7FHzx.cjs.map +1 -0
- package/dist/UsersSection-t-zm0jZW.js +33 -0
- package/dist/UsersSection-t-zm0jZW.js.map +1 -0
- package/dist/{WebhookSettings-IyhyTFes.js → WebhookSettings-Bb70MbFj.js} +4 -4
- package/dist/WebhookSettings-Bb70MbFj.js.map +1 -0
- package/dist/WebhookSettings-C-gvNAW1.cjs +1 -0
- package/dist/WebhookSettings-C-gvNAW1.cjs.map +1 -0
- package/dist/WebhookSettings-CGyDKjrm.cjs +1 -0
- package/dist/WebhookSettings-CGyDKjrm.cjs.map +1 -0
- package/dist/WebhookSettings-kIstSjZi.js +17 -0
- package/dist/WebhookSettings-kIstSjZi.js.map +1 -0
- package/dist/WithdrawalsSection-sljIyeaz.cjs +1 -0
- package/dist/WithdrawalsSection-sljIyeaz.cjs.map +1 -0
- package/dist/WithdrawalsSection-yRDTVFsb.js +27 -0
- package/dist/WithdrawalsSection-yRDTVFsb.js.map +1 -0
- package/dist/admin-only.cjs +1 -0
- package/dist/admin-only.cjs.map +1 -0
- package/dist/{admin/types.d.ts → admin-only.d.ts} +228 -167
- package/dist/admin-only.js +8 -0
- package/dist/admin-only.js.map +1 -0
- package/dist/assets/argon2Worker-Bi5TuQvD.js.map +1 -1
- package/dist/email-only.cjs +1 -1
- package/dist/email-only.d.ts +645 -16
- package/dist/email-only.js +16 -13
- package/dist/email-only.js.map +1 -1
- package/dist/google-only.cjs +1 -1
- package/dist/google-only.d.ts +554 -13
- package/dist/google-only.js +11 -8
- package/dist/google-only.js.map +1 -1
- package/dist/index.cjs +2061 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +5030 -144
- package/dist/index.js +13482 -117
- package/dist/index.js.map +1 -1
- package/dist/login-react.css +1 -1
- package/dist/plugin-8_dpq7tC.cjs +1 -0
- package/dist/plugin-8_dpq7tC.cjs.map +1 -0
- package/dist/plugin-D1NdppqC.js +596 -0
- package/dist/plugin-D1NdppqC.js.map +1 -0
- package/dist/sanitization-Bo_tn-L2.cjs +1 -0
- package/dist/sanitization-Bo_tn-L2.cjs.map +1 -0
- package/dist/sanitization-CQ-H1MSg.js +39 -0
- package/dist/sanitization-CQ-H1MSg.js.map +1 -0
- package/dist/shamir-4DyQMJCk.cjs +1 -0
- package/dist/shamir-4DyQMJCk.cjs.map +1 -0
- package/dist/{solanaKeypair-BlXol3nh.js → shamir-L-s-Tp1Z.js} +765 -757
- package/dist/shamir-L-s-Tp1Z.js.map +1 -0
- package/dist/silentWalletEnroll-BgTb4H5I.cjs +1 -0
- package/dist/silentWalletEnroll-BgTb4H5I.cjs.map +1 -0
- package/dist/silentWalletEnroll-DWt6Pr3B.js +41 -0
- package/dist/silentWalletEnroll-DWt6Pr3B.js.map +1 -0
- package/dist/solana-only.cjs +1 -1
- package/dist/solana-only.d.ts +605 -13
- package/dist/solana-only.js +12 -9
- package/dist/solana-only.js.map +1 -1
- package/dist/style.d.ts +1 -0
- package/dist/useAdminDeposits-BTSyeAfg.js +151 -0
- package/dist/useAdminDeposits-BTSyeAfg.js.map +1 -0
- package/dist/useAdminDeposits-BkkCwHWp.cjs +1 -0
- package/dist/useAdminDeposits-BkkCwHWp.cjs.map +1 -0
- package/dist/{ErrorMessage-DU2VBb85.js → useAuth-C3dpk0po.js} +1005 -1241
- package/dist/useAuth-C3dpk0po.js.map +1 -0
- package/dist/useAuth-D3Pk_H3z.cjs +1 -0
- package/dist/useAuth-D3Pk_H3z.cjs.map +1 -0
- package/dist/useCedrosLogin-C9MrcZvh.cjs +1 -0
- package/dist/useCedrosLogin-C9MrcZvh.cjs.map +1 -0
- package/dist/useCedrosLogin-_94MmGGq.js +216 -0
- package/dist/useCedrosLogin-_94MmGGq.js.map +1 -0
- package/dist/useOrgs-C3pzMA9h.js +215 -0
- package/dist/useOrgs-C3pzMA9h.js.map +1 -0
- package/dist/useOrgs-DDVRCaVi.cjs +1 -0
- package/dist/useOrgs-DDVRCaVi.cjs.map +1 -0
- package/dist/useSystemSettings-DBlAMjFi.js +97 -0
- package/dist/useSystemSettings-DBlAMjFi.js.map +1 -0
- package/dist/useSystemSettings-DRrreszl.cjs +1 -0
- package/dist/useSystemSettings-DRrreszl.cjs.map +1 -0
- package/dist/useUsersStatsSummary-8qY7iP4G.cjs +1 -0
- package/dist/useUsersStatsSummary-8qY7iP4G.cjs.map +1 -0
- package/dist/useUsersStatsSummary-NjEFvWuz.js +1246 -0
- package/dist/useUsersStatsSummary-NjEFvWuz.js.map +1 -0
- package/dist/{validation-BebL7hMF.js → validation-B8kMV3BL.js} +1 -1
- package/dist/{validation-BebL7hMF.js.map → validation-B8kMV3BL.js.map} +1 -1
- package/dist/{validation-BeXIfuHB.cjs → validation-BuGQrA-K.cjs} +1 -1
- package/dist/{validation-BeXIfuHB.cjs.map → validation-BuGQrA-K.cjs.map} +1 -1
- package/package.json +11 -1
- package/dist/AuthenticationSettings-BSoIQ58T.js.map +0 -1
- package/dist/AuthenticationSettings-CNmWEPFV.cjs +0 -1
- package/dist/AuthenticationSettings-CNmWEPFV.cjs.map +0 -1
- package/dist/CreditSystemSettings-BYxoFwaP.js +0 -9
- package/dist/CreditSystemSettings-BYxoFwaP.js.map +0 -1
- package/dist/CreditSystemSettings-D2fLorNx.cjs +0 -1
- package/dist/CreditSystemSettings-D2fLorNx.cjs.map +0 -1
- package/dist/DepositsSection-0Hqr0yDm.js.map +0 -1
- package/dist/DepositsSection-CGKCzM-H.cjs +0 -1
- package/dist/DepositsSection-CGKCzM-H.cjs.map +0 -1
- package/dist/EmailRegisterForm-C0PStlj5.js +0 -961
- package/dist/EmailRegisterForm-C0PStlj5.js.map +0 -1
- package/dist/EmailRegisterForm-DaPLGws2.cjs +0 -1
- package/dist/EmailRegisterForm-DaPLGws2.cjs.map +0 -1
- package/dist/EmailSettings-CiLDwzNb.cjs +0 -1
- package/dist/EmailSettings-CiLDwzNb.cjs.map +0 -1
- package/dist/EmailSettings-DTjpO65J.js +0 -9
- package/dist/EmailSettings-DTjpO65J.js.map +0 -1
- package/dist/EmbeddedWalletSettings-CX7sYiPy.cjs +0 -1
- package/dist/EmbeddedWalletSettings-CX7sYiPy.cjs.map +0 -1
- package/dist/EmbeddedWalletSettings-iVf_3pn3.js.map +0 -1
- package/dist/ErrorMessage-BXHiYibN.cjs +0 -1
- package/dist/ErrorMessage-BXHiYibN.cjs.map +0 -1
- package/dist/ErrorMessage-DU2VBb85.js.map +0 -1
- package/dist/GoogleLoginButton-DoAdOqb3.cjs +0 -1
- package/dist/ServerSettings-C_osdbiX.js.map +0 -1
- package/dist/ServerSettings-HqSb_VDj.cjs +0 -1
- package/dist/ServerSettings-HqSb_VDj.cjs.map +0 -1
- package/dist/SolanaLoginButton-CPzms0kf.cjs +0 -1
- package/dist/TeamSection-Bjt72upx.js.map +0 -1
- package/dist/TeamSection-DZeWHkLd.cjs +0 -1
- package/dist/TeamSection-DZeWHkLd.cjs.map +0 -1
- package/dist/UsersSection-DU86czWP.cjs +0 -1
- package/dist/UsersSection-DU86czWP.cjs.map +0 -1
- package/dist/UsersSection-hAcyfSZk.js +0 -81
- package/dist/UsersSection-hAcyfSZk.js.map +0 -1
- package/dist/WebhookSettings-Br9bakAL.cjs +0 -1
- package/dist/WebhookSettings-Br9bakAL.cjs.map +0 -1
- package/dist/WebhookSettings-IyhyTFes.js.map +0 -1
- package/dist/WithdrawalsSection-B1415d-G.js +0 -20
- package/dist/WithdrawalsSection-B1415d-G.js.map +0 -1
- package/dist/WithdrawalsSection-iZJBuZ7O.cjs +0 -1
- package/dist/WithdrawalsSection-iZJBuZ7O.cjs.map +0 -1
- package/dist/admin/AdminShell.d.ts +0 -38
- package/dist/admin/icons.d.ts +0 -2
- package/dist/admin/index.d.ts +0 -10
- package/dist/admin/plugin.d.ts +0 -3
- package/dist/admin/sections/AuthenticationSettings.d.ts +0 -3
- package/dist/admin/sections/CreditSystemSettings.d.ts +0 -3
- package/dist/admin/sections/DepositsSection.d.ts +0 -3
- package/dist/admin/sections/EmailSettings.d.ts +0 -3
- package/dist/admin/sections/EmbeddedWalletSettings.d.ts +0 -3
- package/dist/admin/sections/FeatureSettings.d.ts +0 -3
- package/dist/admin/sections/InvitesSection.d.ts +0 -3
- package/dist/admin/sections/MembersSection.d.ts +0 -3
- package/dist/admin/sections/ServerSettings.d.ts +0 -3
- package/dist/admin/sections/SettingsSections.d.ts +0 -7
- package/dist/admin/sections/TeamSection.d.ts +0 -3
- package/dist/admin/sections/UsersSection.d.ts +0 -3
- package/dist/admin/sections/WebhookSettings.d.ts +0 -3
- package/dist/admin/sections/WithdrawalsSection.d.ts +0 -3
- package/dist/components/LoginButton.d.ts +0 -23
- package/dist/components/LoginForm.d.ts +0 -9
- package/dist/components/LoginModal.d.ts +0 -9
- package/dist/components/admin/AdminUserDetail.d.ts +0 -23
- package/dist/components/admin/AdminUserList.d.ts +0 -21
- package/dist/components/admin/CedrosAdminDashboard.d.ts +0 -52
- package/dist/components/admin/PermissionsSection.d.ts +0 -7
- package/dist/components/admin/ProfileDropdown.d.ts +0 -34
- package/dist/components/admin/SetupWizard.d.ts +0 -30
- package/dist/components/admin/StatsBar.d.ts +0 -17
- package/dist/components/admin/SystemSettings.d.ts +0 -19
- package/dist/components/admin/settings/AuthenticationSettings.d.ts +0 -4
- package/dist/components/admin/settings/AutosaveStatus.d.ts +0 -6
- package/dist/components/admin/settings/CreditSystemSettings.d.ts +0 -6
- package/dist/components/admin/settings/EmailSettings.d.ts +0 -4
- package/dist/components/admin/settings/EmbeddedWalletSettings.d.ts +0 -4
- package/dist/components/admin/settings/FeatureSettings.d.ts +0 -4
- package/dist/components/admin/settings/MessagingSettings.d.ts +0 -4
- package/dist/components/admin/settings/SecuritySettings.d.ts +0 -4
- package/dist/components/admin/settings/ServerSettings.d.ts +0 -4
- package/dist/components/admin/settings/SettingsPageLayout.d.ts +0 -16
- package/dist/components/admin/settings/SsoProvidersSettings.d.ts +0 -4
- package/dist/components/admin/settings/WebhookSettings.d.ts +0 -4
- package/dist/components/admin/settings/index.d.ts +0 -31
- package/dist/components/admin/settings/settingsInputs.d.ts +0 -79
- package/dist/components/admin/settings/settingsMetadata.d.ts +0 -18
- package/dist/components/apple/AppleLoginButton.d.ts +0 -29
- package/dist/components/deposit/CreditBalance.d.ts +0 -19
- package/dist/components/deposit/DepositFlow.d.ts +0 -118
- package/dist/components/deposit/FeeConfigDisplay.d.ts +0 -15
- package/dist/components/deposit/History.d.ts +0 -21
- package/dist/components/deposit/TieredAmountSlider.d.ts +0 -19
- package/dist/components/deposit/TokenSelector.d.ts +0 -23
- package/dist/components/deposit/admin/AdminDepositList.d.ts +0 -21
- package/dist/components/deposit/admin/AdminDepositStats.d.ts +0 -15
- package/dist/components/deposit/admin/AdminPrivacyPeriodDeposits.d.ts +0 -19
- package/dist/components/deposit/admin/AdminWithdrawalHistory.d.ts +0 -19
- package/dist/components/deposit/admin/AdminWithdrawalQueue.d.ts +0 -23
- package/dist/components/deposit/admin/AdminWithdrawalStats.d.ts +0 -10
- package/dist/components/deposit/admin/FeatureDisabledMessage.d.ts +0 -15
- package/dist/components/deposit/admin/PrivacySystemStatus.d.ts +0 -15
- package/dist/components/deposit/admin/featureDisabled.d.ts +0 -14
- package/dist/components/deposit/admin/index.d.ts +0 -22
- package/dist/components/deposit/index.d.ts +0 -12
- package/dist/components/deposit/tierUtils.d.ts +0 -8
- package/dist/components/deposit/tokens.d.ts +0 -19
- package/dist/components/email/EmailLoginForm.d.ts +0 -11
- package/dist/components/email/EmailRegisterForm.d.ts +0 -14
- package/dist/components/email/ForgotPasswordForm.d.ts +0 -17
- package/dist/components/email/PasswordInput.d.ts +0 -14
- package/dist/components/email/ResetPasswordForm.d.ts +0 -22
- package/dist/components/google/GoogleLoginButton.d.ts +0 -12
- package/dist/components/invites/InviteForm.d.ts +0 -38
- package/dist/components/invites/InviteList.d.ts +0 -40
- package/dist/components/members/MemberList.d.ts +0 -47
- package/dist/components/org/CreateOrgForm.d.ts +0 -7
- package/dist/components/org/OrgAvatar.d.ts +0 -7
- package/dist/components/org/OrgListView.d.ts +0 -9
- package/dist/components/org/OrgSelector.d.ts +0 -52
- package/dist/components/org/OrgSwitcher.d.ts +0 -47
- package/dist/components/org/icons.d.ts +0 -8
- package/dist/components/profile/UserProfileSettings.d.ts +0 -35
- package/dist/components/profile/index.d.ts +0 -2
- package/dist/components/sessions/SessionList.d.ts +0 -33
- package/dist/components/shared/ErrorBoundary.d.ts +0 -38
- package/dist/components/shared/ErrorMessage.d.ts +0 -14
- package/dist/components/shared/LoadingSpinner.d.ts +0 -16
- package/dist/components/solana/SolanaLoginButton.d.ts +0 -49
- package/dist/components/templates/FullPageLayout.d.ts +0 -40
- package/dist/components/templates/SplitPageLayout.d.ts +0 -44
- package/dist/components/templates/index.d.ts +0 -4
- package/dist/components/totp/OtpInput.d.ts +0 -32
- package/dist/components/totp/QrCode.d.ts +0 -21
- package/dist/components/totp/TotpSettings.d.ts +0 -38
- package/dist/components/totp/TotpSetup.d.ts +0 -23
- package/dist/components/totp/TotpVerify.d.ts +0 -25
- package/dist/components/totp/index.d.ts +0 -10
- package/dist/components/wallet/CapabilityWarning.d.ts +0 -11
- package/dist/components/wallet/PasskeyPrompt.d.ts +0 -34
- package/dist/components/wallet/RecoveryPhraseDisplay.d.ts +0 -18
- package/dist/components/wallet/RecoveryPhraseInput.d.ts +0 -21
- package/dist/components/wallet/WalletAddressRow.d.ts +0 -10
- package/dist/components/wallet/WalletEnrollment.d.ts +0 -15
- package/dist/components/wallet/WalletManager.d.ts +0 -9
- package/dist/components/wallet/WalletRecovery.d.ts +0 -19
- package/dist/components/wallet/WalletStatus.d.ts +0 -28
- package/dist/components/wallet/WalletUnlock.d.ts +0 -23
- package/dist/components/wallet/index.d.ts +0 -23
- package/dist/components/webauthn/PasskeyLoginButton.d.ts +0 -8
- package/dist/context/CedrosLoginContext.d.ts +0 -24
- package/dist/context/CedrosLoginProvider.d.ts +0 -17
- package/dist/context/EmbeddedWalletExposure.d.ts +0 -19
- package/dist/context/useCedrosLogin.d.ts +0 -12
- package/dist/crypto/aesGcm.d.ts +0 -89
- package/dist/crypto/argon2.d.ts +0 -65
- package/dist/crypto/argon2Worker.d.ts +0 -1
- package/dist/crypto/argon2WorkerClient.d.ts +0 -28
- package/dist/crypto/bip39.d.ts +0 -106
- package/dist/crypto/capabilities.d.ts +0 -35
- package/dist/crypto/entropy.d.ts +0 -56
- package/dist/crypto/hkdf.d.ts +0 -38
- package/dist/crypto/index.d.ts +0 -30
- package/dist/crypto/secureWipe.d.ts +0 -71
- package/dist/crypto/shamir.d.ts +0 -52
- package/dist/crypto/solanaKeypair.d.ts +0 -63
- package/dist/crypto/types.d.ts +0 -134
- package/dist/crypto/webauthnPrf.d.ts +0 -108
- package/dist/hooks/useAdminDeposits.d.ts +0 -10
- package/dist/hooks/useAdminUsers.d.ts +0 -28
- package/dist/hooks/useAppleAuth.d.ts +0 -52
- package/dist/hooks/useAuth.d.ts +0 -34
- package/dist/hooks/useAuthSession.d.ts +0 -19
- package/dist/hooks/useAuthorize.d.ts +0 -62
- package/dist/hooks/useCredits.d.ts +0 -11
- package/dist/hooks/useDashboardPermissions.d.ts +0 -45
- package/dist/hooks/useDeposit.d.ts +0 -16
- package/dist/hooks/useEmailAuth.d.ts +0 -60
- package/dist/hooks/useGoogleAuth.d.ts +0 -67
- package/dist/hooks/useInstantLink.d.ts +0 -42
- package/dist/hooks/useInvites.d.ts +0 -57
- package/dist/hooks/useMembers.d.ts +0 -52
- package/dist/hooks/useOrgs.d.ts +0 -49
- package/dist/hooks/usePasswordReset.d.ts +0 -32
- package/dist/hooks/usePendingRecovery.d.ts +0 -34
- package/dist/hooks/useProfile.d.ts +0 -35
- package/dist/hooks/useRateLimiter.d.ts +0 -58
- package/dist/hooks/useServerFeatures.d.ts +0 -55
- package/dist/hooks/useSessions.d.ts +0 -45
- package/dist/hooks/useSettingsAutosave.d.ts +0 -29
- package/dist/hooks/useSetup.d.ts +0 -25
- package/dist/hooks/useSolanaAuth.d.ts +0 -30
- package/dist/hooks/useSsoProviders.d.ts +0 -52
- package/dist/hooks/useSystemSettings.d.ts +0 -47
- package/dist/hooks/useThemeManager.d.ts +0 -11
- package/dist/hooks/useTotp.d.ts +0 -52
- package/dist/hooks/useTotpVerify.d.ts +0 -38
- package/dist/hooks/useTransactionSigning.d.ts +0 -45
- package/dist/hooks/useWallet.d.ts +0 -10
- package/dist/hooks/useWalletDiscovery.d.ts +0 -24
- package/dist/hooks/useWalletEnrollment.d.ts +0 -9
- package/dist/hooks/useWalletMaterial.d.ts +0 -10
- package/dist/hooks/useWalletRecovery.d.ts +0 -9
- package/dist/hooks/useWalletSigning.d.ts +0 -31
- package/dist/hooks/useWebAuthn.d.ts +0 -25
- package/dist/i18n/I18nProvider.d.ts +0 -16
- package/dist/i18n/context.d.ts +0 -6
- package/dist/i18n/index.d.ts +0 -5
- package/dist/i18n/translations.d.ts +0 -66
- package/dist/i18n/useI18n.d.ts +0 -9
- package/dist/index-ZS9AwAal.cjs +0 -2061
- package/dist/index-ZS9AwAal.cjs.map +0 -1
- package/dist/index-dgg5tlO7.js +0 -19650
- package/dist/index-dgg5tlO7.js.map +0 -1
- package/dist/silentWalletEnroll-C3JRAD9_.js +0 -42
- package/dist/silentWalletEnroll-C3JRAD9_.js.map +0 -1
- package/dist/silentWalletEnroll-DRYQAQfg.cjs +0 -1
- package/dist/silentWalletEnroll-DRYQAQfg.cjs.map +0 -1
- package/dist/solanaKeypair-BlXol3nh.js.map +0 -1
- package/dist/solanaKeypair-C-lIR1JY.cjs +0 -1
- package/dist/solanaKeypair-C-lIR1JY.cjs.map +0 -1
- package/dist/types/adminUser.d.ts +0 -168
- package/dist/types/auth.d.ts +0 -122
- package/dist/types/config.d.ts +0 -266
- package/dist/types/deposit.d.ts +0 -490
- package/dist/types/index.d.ts +0 -13
- package/dist/types/invite.d.ts +0 -71
- package/dist/types/member.d.ts +0 -45
- package/dist/types/org.d.ts +0 -133
- package/dist/types/profile.d.ts +0 -56
- package/dist/types/session.d.ts +0 -28
- package/dist/types/setup.d.ts +0 -47
- package/dist/types/systemSettings.d.ts +0 -85
- package/dist/types/totp.d.ts +0 -52
- package/dist/types/wallet.d.ts +0 -309
- package/dist/utils/adminUserApi.d.ts +0 -60
- package/dist/utils/apiClient.d.ts +0 -78
- package/dist/utils/cryptoShim.d.ts +0 -17
- package/dist/utils/csrf.d.ts +0 -1
- package/dist/utils/deviceDetection.d.ts +0 -17
- package/dist/utils/embeddedWallet.d.ts +0 -75
- package/dist/utils/inviteApi.d.ts +0 -31
- package/dist/utils/memberApi.d.ts +0 -23
- package/dist/utils/orgApi.d.ts +0 -36
- package/dist/utils/profileApi.d.ts +0 -26
- package/dist/utils/sanitization.d.ts +0 -66
- package/dist/utils/sessionApi.d.ts +0 -16
- package/dist/utils/setupApi.d.ts +0 -21
- package/dist/utils/silentWalletEnroll.d.ts +0 -41
- package/dist/utils/systemSettingsApi.d.ts +0 -18
- package/dist/utils/tabSync.d.ts +0 -46
- package/dist/utils/tokenManager.d.ts +0 -107
- package/dist/utils/unlockCredential.d.ts +0 -5
- package/dist/utils/validation.d.ts +0 -48
- package/dist/utils/walletDetection.d.ts +0 -23
- package/dist/utils/webauthnJson.d.ts +0 -21
package/dist/solana-only.d.ts
CHANGED
|
@@ -1,13 +1,605 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
export
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
import { JSX } from 'react/jsx-runtime';
|
|
3
|
+
import { NamedExoticComponent } from 'react';
|
|
4
|
+
import { ReactNode } from 'react';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Authentication callbacks
|
|
8
|
+
*/
|
|
9
|
+
export declare interface AuthCallbacks {
|
|
10
|
+
/** Called after successful login */
|
|
11
|
+
onLoginSuccess?: (user: AuthUser, method: AuthMethod) => void;
|
|
12
|
+
/** Called when login fails */
|
|
13
|
+
onLoginError?: (error: AuthError) => void;
|
|
14
|
+
/** Called after logout */
|
|
15
|
+
onLogout?: () => void;
|
|
16
|
+
/** Called when session expires */
|
|
17
|
+
onSessionExpired?: () => void;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Authentication error response
|
|
22
|
+
*/
|
|
23
|
+
export declare interface AuthError {
|
|
24
|
+
code: AuthErrorCode;
|
|
25
|
+
message: string;
|
|
26
|
+
details?: Record<string, unknown>;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Standard error codes
|
|
31
|
+
*/
|
|
32
|
+
export declare type AuthErrorCode = 'INVALID_CREDENTIALS' | 'ACCOUNT_LOCKED' | 'EMAIL_EXISTS' | 'WALLET_EXISTS' | 'INVALID_TOKEN' | 'TOKEN_EXPIRED' | 'INVALID_SIGNATURE' | 'INVALID_PUBLIC_KEY' | 'CHALLENGE_EXPIRED' | 'VALIDATION_ERROR' | 'RATE_LIMITED' | 'NOT_FOUND' | 'FORBIDDEN' | 'UNAUTHORIZED' | 'STEP_UP_REQUIRED' | 'TOTP_REQUIRED' | 'INVALID_TOTP_CODE' | 'SERVICE_UNAVAILABLE' | 'SERVER_ERROR' | 'NETWORK_ERROR' | 'UNKNOWN_ERROR';
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Authentication method used for login/registration
|
|
36
|
+
* TYPE-01: Must match backend AuthMethod enum in server/src/models/mod.rs
|
|
37
|
+
*/
|
|
38
|
+
export declare type AuthMethod = 'email' | 'google' | 'apple' | 'solana' | 'webauthn' | 'sso';
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Authentication response from server
|
|
42
|
+
*/
|
|
43
|
+
export declare interface AuthResponse {
|
|
44
|
+
user: AuthUser;
|
|
45
|
+
tokens?: TokenPair;
|
|
46
|
+
isNewUser: boolean;
|
|
47
|
+
callbackData?: Record<string, unknown>;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Authentication state
|
|
52
|
+
*/
|
|
53
|
+
export declare type AuthState = 'idle' | 'loading' | 'authenticated' | 'unauthenticated' | 'error';
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Auth state context — changes only on login/logout/token refresh.
|
|
57
|
+
*
|
|
58
|
+
* Subscribing to this context alone avoids re-renders from UI state
|
|
59
|
+
* changes (modal open/close, error display).
|
|
60
|
+
*/
|
|
61
|
+
declare interface AuthStateContextValue {
|
|
62
|
+
config: CedrosLoginConfig;
|
|
63
|
+
user: AuthUser | null;
|
|
64
|
+
authState: AuthState;
|
|
65
|
+
logout: () => Promise<void>;
|
|
66
|
+
refreshUser: () => Promise<void>;
|
|
67
|
+
_internal?: CedrosLoginInternalAPI;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* UI state context — changes on modal/error state changes.
|
|
72
|
+
*
|
|
73
|
+
* Subscribing to this context alone avoids re-renders from auth state
|
|
74
|
+
* changes (login, token refresh).
|
|
75
|
+
*/
|
|
76
|
+
declare interface AuthUIContextValue {
|
|
77
|
+
error: AuthError | null;
|
|
78
|
+
isModalOpen: boolean;
|
|
79
|
+
openModal: () => void;
|
|
80
|
+
closeModal: () => void;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Authenticated user information
|
|
85
|
+
*/
|
|
86
|
+
export declare interface AuthUser {
|
|
87
|
+
id: string;
|
|
88
|
+
email?: string;
|
|
89
|
+
name?: string;
|
|
90
|
+
picture?: string;
|
|
91
|
+
walletAddress?: string;
|
|
92
|
+
authMethods: AuthMethod[];
|
|
93
|
+
emailVerified: boolean;
|
|
94
|
+
/** Whether TOTP 2FA is enabled for this user */
|
|
95
|
+
totpEnabled?: boolean;
|
|
96
|
+
createdAt: string;
|
|
97
|
+
updatedAt: string;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Full configuration for CedrosLoginProvider
|
|
102
|
+
*/
|
|
103
|
+
export declare interface CedrosLoginConfig {
|
|
104
|
+
/** Auth server base URL */
|
|
105
|
+
serverUrl: string;
|
|
106
|
+
/** App name for Solana message: "Login to {appName}". Default: window.location.hostname */
|
|
107
|
+
appName?: string;
|
|
108
|
+
/** Google OAuth client ID. Required if Google auth enabled */
|
|
109
|
+
googleClientId?: string;
|
|
110
|
+
/** Apple Sign In client ID (Services ID). Required if Apple auth enabled */
|
|
111
|
+
appleClientId?: string;
|
|
112
|
+
/** Solana configuration options */
|
|
113
|
+
solana?: SolanaConfig;
|
|
114
|
+
/** Enable/disable auth methods */
|
|
115
|
+
features?: FeatureFlags;
|
|
116
|
+
/** Form behavior configuration (forgot password, terms, email opt-in) */
|
|
117
|
+
forms?: FormConfig;
|
|
118
|
+
/** TOTP/2FA configuration (app-based authenticator) */
|
|
119
|
+
totp?: TotpConfig;
|
|
120
|
+
/** Embedded wallet configuration */
|
|
121
|
+
wallet?: WalletConfig;
|
|
122
|
+
/** Session/token configuration */
|
|
123
|
+
session?: SessionConfig;
|
|
124
|
+
/** Authentication event callbacks */
|
|
125
|
+
callbacks?: AuthCallbacks;
|
|
126
|
+
/** Theme mode. Default: 'auto' */
|
|
127
|
+
theme?: ThemeMode;
|
|
128
|
+
/** CSS variable overrides for custom theming */
|
|
129
|
+
themeOverrides?: ThemeOverrides;
|
|
130
|
+
/** API request timeout in ms. Default: 10000 */
|
|
131
|
+
requestTimeout?: number;
|
|
132
|
+
/** Retry attempts on transient errors. Default: 2 */
|
|
133
|
+
retryAttempts?: number;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Combined context value (backward-compatible with existing consumers)
|
|
138
|
+
*/
|
|
139
|
+
declare interface CedrosLoginContextValue extends AuthStateContextValue, AuthUIContextValue {
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Internal helpers for auth hooks (not part of public API)
|
|
144
|
+
*/
|
|
145
|
+
declare interface CedrosLoginInternalAPI {
|
|
146
|
+
handleLoginSuccess: (user: AuthUser, tokens?: TokenPair) => void;
|
|
147
|
+
getAccessToken: () => string | null;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Provider component that wraps your app and provides authentication context.
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* ```tsx
|
|
155
|
+
* <CedrosLoginProvider config={{ serverUrl: 'https://api.example.com' }}>
|
|
156
|
+
* <App />
|
|
157
|
+
* </CedrosLoginProvider>
|
|
158
|
+
* ```
|
|
159
|
+
*/
|
|
160
|
+
export declare function CedrosLoginProvider({ config, children }: CedrosLoginProviderProps): JSX.Element | null;
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Config accepted by CedrosLoginProvider.
|
|
164
|
+
* Same as CedrosLoginConfig but `features` also accepts `'auto'`
|
|
165
|
+
* to fetch enabled methods from the server at startup.
|
|
166
|
+
*/
|
|
167
|
+
declare type CedrosLoginProviderConfig = Omit<CedrosLoginConfig, 'features'> & {
|
|
168
|
+
features?: FeatureFlags | 'auto';
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
declare interface CedrosLoginProviderProps {
|
|
172
|
+
config: CedrosLoginProviderConfig;
|
|
173
|
+
children: ReactNode;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Solana challenge response
|
|
178
|
+
*/
|
|
179
|
+
export declare interface ChallengeResponse {
|
|
180
|
+
nonce: string;
|
|
181
|
+
message: string;
|
|
182
|
+
expiresAt: string;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* UI-08: Standardized error prop type for display components.
|
|
187
|
+
*
|
|
188
|
+
* Use this type for component props that display errors to users.
|
|
189
|
+
* Components should handle both AuthError objects and plain strings:
|
|
190
|
+
* - AuthError: structured error from API with code and message
|
|
191
|
+
* - string: simple error message for form validation or local errors
|
|
192
|
+
* - null: no error state
|
|
193
|
+
*
|
|
194
|
+
* @example
|
|
195
|
+
* ```tsx
|
|
196
|
+
* interface MyFormProps {
|
|
197
|
+
* error?: DisplayError;
|
|
198
|
+
* }
|
|
199
|
+
*
|
|
200
|
+
* // In component:
|
|
201
|
+
* const message = typeof error === 'string' ? error : error?.message;
|
|
202
|
+
* ```
|
|
203
|
+
*/
|
|
204
|
+
declare type DisplayError = AuthError | string | null;
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Email marketing opt-in checkbox configuration
|
|
208
|
+
*/
|
|
209
|
+
declare interface EmailOptInConfig {
|
|
210
|
+
/** Whether to show the checkbox. @default false */
|
|
211
|
+
show?: boolean;
|
|
212
|
+
/** Default checked state. @default false */
|
|
213
|
+
defaultChecked?: boolean;
|
|
214
|
+
/** Custom label text. @default "Send me updates and news" */
|
|
215
|
+
label?: string;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Error message display component with accessibility support.
|
|
220
|
+
* Announces errors to screen readers and optionally focuses the message.
|
|
221
|
+
* Wrapped with React.memo to prevent unnecessary re-renders.
|
|
222
|
+
*/
|
|
223
|
+
export declare const ErrorMessage: NamedExoticComponent<ErrorMessageProps>;
|
|
224
|
+
|
|
225
|
+
declare interface ErrorMessageProps {
|
|
226
|
+
error: DisplayError;
|
|
227
|
+
className?: string;
|
|
228
|
+
onDismiss?: () => void;
|
|
229
|
+
/** If true, focus the error message when it appears (for accessibility) */
|
|
230
|
+
autoFocus?: boolean;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
/**
|
|
234
|
+
* Feature flags to enable/disable auth methods
|
|
235
|
+
*/
|
|
236
|
+
export declare interface FeatureFlags {
|
|
237
|
+
/** Enable email/password auth. Default: true */
|
|
238
|
+
email?: boolean;
|
|
239
|
+
/** Enable Google OAuth. Default: true (requires googleClientId) */
|
|
240
|
+
google?: boolean;
|
|
241
|
+
/** Enable Apple Sign In. Default: true (requires appleClientId) */
|
|
242
|
+
apple?: boolean;
|
|
243
|
+
/** Enable Solana wallet sign-in. Default: true */
|
|
244
|
+
solana?: boolean;
|
|
245
|
+
/** Enable WebAuthn passkeys (server-managed). Default: true */
|
|
246
|
+
webauthn?: boolean;
|
|
247
|
+
/** Enable instant-link passwordless sign-in. Default: false */
|
|
248
|
+
instantLink?: boolean;
|
|
249
|
+
/** Enable embedded wallet auto-enrollment on registration. Default: true */
|
|
250
|
+
walletEnrollment?: boolean;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* Forgot password behavior configuration
|
|
255
|
+
*/
|
|
256
|
+
declare interface ForgotPasswordConfig {
|
|
257
|
+
/**
|
|
258
|
+
* Mode for handling "forgot password" clicks.
|
|
259
|
+
* - 'reset': Shows ForgotPasswordForm (traditional reset flow)
|
|
260
|
+
* - 'instantLink': Sends an instant link for passwordless sign-in
|
|
261
|
+
* @default 'reset'
|
|
262
|
+
*/
|
|
263
|
+
mode?: 'reset' | 'instantLink';
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* Form behavior configuration
|
|
268
|
+
*/
|
|
269
|
+
declare interface FormConfig {
|
|
270
|
+
/** Forgot password behavior on sign in form */
|
|
271
|
+
forgotPassword?: ForgotPasswordConfig;
|
|
272
|
+
/** Terms of service checkbox on register form */
|
|
273
|
+
termsOfService?: TermsOfServiceConfig;
|
|
274
|
+
/** Email marketing opt-in checkbox on register form */
|
|
275
|
+
emailOptIn?: EmailOptInConfig;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
/**
|
|
279
|
+
* Accessible loading spinner component.
|
|
280
|
+
* Announces loading state to screen readers when announce prop is true.
|
|
281
|
+
* Wrapped with React.memo to prevent unnecessary re-renders.
|
|
282
|
+
*/
|
|
283
|
+
export declare const LoadingSpinner: NamedExoticComponent<LoadingSpinnerProps>;
|
|
284
|
+
|
|
285
|
+
declare interface LoadingSpinnerProps {
|
|
286
|
+
size?: 'sm' | 'md' | 'lg' | 'xl';
|
|
287
|
+
className?: string;
|
|
288
|
+
style?: CSSProperties;
|
|
289
|
+
/** Custom label for screen readers (default: "Loading") */
|
|
290
|
+
label?: string;
|
|
291
|
+
/** If true, announce the loading state to screen readers */
|
|
292
|
+
announce?: boolean;
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
/**
|
|
296
|
+
* Session handling configuration
|
|
297
|
+
*
|
|
298
|
+
* @security For best security, use the default `cookie` storage with `autoRefresh: true`.
|
|
299
|
+
* Avoid `localStorage` in production unless absolutely necessary.
|
|
300
|
+
*/
|
|
301
|
+
export declare interface SessionConfig {
|
|
302
|
+
/**
|
|
303
|
+
* Where to store tokens. Default: 'cookie'
|
|
304
|
+
*
|
|
305
|
+
* @security `cookie` is strongly recommended for production use.
|
|
306
|
+
* See {@link SessionStorage} for security implications of each option.
|
|
307
|
+
*/
|
|
308
|
+
storage?: SessionStorage;
|
|
309
|
+
/** Auto-refresh tokens before expiry. Default: true */
|
|
310
|
+
autoRefresh?: boolean;
|
|
311
|
+
/** Sync auth state across browser tabs. Default: true */
|
|
312
|
+
syncTabs?: boolean;
|
|
313
|
+
/** Storage key for tokens when using web storage. Default: 'cedros_tokens' */
|
|
314
|
+
persistKey?: string;
|
|
315
|
+
/**
|
|
316
|
+
* Explicitly allow web storage for tokens.
|
|
317
|
+
*
|
|
318
|
+
* @security This is intentionally opt-in because `localStorage` and
|
|
319
|
+
* `sessionStorage` are vulnerable to XSS token theft.
|
|
320
|
+
*
|
|
321
|
+
* If you enable this, also implement a strict CSP and audit any third-party scripts.
|
|
322
|
+
*/
|
|
323
|
+
allowWebStorage?: boolean;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
/**
|
|
327
|
+
* Session storage mode
|
|
328
|
+
*
|
|
329
|
+
* **Security considerations:**
|
|
330
|
+
* - `cookie`: **Recommended.** HttpOnly cookies managed by server. Immune to XSS.
|
|
331
|
+
* - `memory`: Secure but lost on page refresh. Good for high-security applications.
|
|
332
|
+
* - `localStorage`: **Use with caution.** Tokens are accessible to any JavaScript
|
|
333
|
+
* on the page, making them vulnerable to XSS attacks. Only use when cookie-based
|
|
334
|
+
* auth is not possible (e.g., cross-origin scenarios without proper CORS).
|
|
335
|
+
*/
|
|
336
|
+
export declare type SessionStorage = 'cookie' | 'memory' | 'localStorage' | 'sessionStorage';
|
|
337
|
+
|
|
338
|
+
/**
|
|
339
|
+
* Solana configuration options
|
|
340
|
+
*/
|
|
341
|
+
export declare interface SolanaConfig {
|
|
342
|
+
/** Solana network to connect to. Default: 'mainnet-beta' */
|
|
343
|
+
network?: SolanaNetwork;
|
|
344
|
+
/** Auto-reconnect wallet on page load. Default: false */
|
|
345
|
+
autoConnect?: boolean;
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
/**
|
|
349
|
+
* Solana wallet login button with one-click authentication.
|
|
350
|
+
*
|
|
351
|
+
* Handles wallet connection and message signing automatically.
|
|
352
|
+
* If wallet is already connected, signs immediately.
|
|
353
|
+
* If not connected, connects first then auto-signs.
|
|
354
|
+
*/
|
|
355
|
+
export declare function SolanaLoginButton({ onSuccess, onError, className, variant, size, disabled, hideIfNoWallet, walletContext, }: SolanaLoginButtonProps): JSX.Element | null;
|
|
356
|
+
|
|
357
|
+
declare interface SolanaLoginButtonProps {
|
|
358
|
+
onSuccess?: () => void;
|
|
359
|
+
onError?: (error: Error) => void;
|
|
360
|
+
className?: string;
|
|
361
|
+
variant?: 'default' | 'outline';
|
|
362
|
+
size?: 'sm' | 'md' | 'lg';
|
|
363
|
+
disabled?: boolean;
|
|
364
|
+
/**
|
|
365
|
+
* Hide the button if no Solana wallets are detected.
|
|
366
|
+
* When true (default), button renders nothing if no wallets are installed.
|
|
367
|
+
* When false, button always renders (useful for showing "install wallet" prompts).
|
|
368
|
+
* @default true
|
|
369
|
+
*/
|
|
370
|
+
hideIfNoWallet?: boolean;
|
|
371
|
+
/**
|
|
372
|
+
* Solana wallet adapter context. Pass this from @solana/wallet-adapter-react's useWallet().
|
|
373
|
+
* The button will handle connection and signing automatically for a one-click experience.
|
|
374
|
+
*/
|
|
375
|
+
walletContext?: {
|
|
376
|
+
publicKey: {
|
|
377
|
+
toBase58: () => string;
|
|
378
|
+
} | null;
|
|
379
|
+
signMessage: ((message: Uint8Array) => Promise<Uint8Array>) | null;
|
|
380
|
+
connected: boolean;
|
|
381
|
+
connecting: boolean;
|
|
382
|
+
connect: () => Promise<void>;
|
|
383
|
+
wallet: {
|
|
384
|
+
adapter: {
|
|
385
|
+
name: string;
|
|
386
|
+
};
|
|
387
|
+
} | null;
|
|
388
|
+
select: (walletName: string) => void;
|
|
389
|
+
wallets: Array<{
|
|
390
|
+
adapter: {
|
|
391
|
+
name: string;
|
|
392
|
+
icon: string;
|
|
393
|
+
readyState: string;
|
|
394
|
+
};
|
|
395
|
+
}>;
|
|
396
|
+
};
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
/**
|
|
400
|
+
* Solana network configuration
|
|
401
|
+
*/
|
|
402
|
+
export declare type SolanaNetwork = 'mainnet-beta' | 'devnet';
|
|
403
|
+
|
|
404
|
+
/**
|
|
405
|
+
* Terms of service checkbox configuration
|
|
406
|
+
*/
|
|
407
|
+
declare interface TermsOfServiceConfig {
|
|
408
|
+
/** Whether to show the checkbox. @default false */
|
|
409
|
+
show?: boolean;
|
|
410
|
+
/** Whether agreement is required to register. @default true (when shown) */
|
|
411
|
+
required?: boolean;
|
|
412
|
+
/** Default checked state. @default false */
|
|
413
|
+
defaultChecked?: boolean;
|
|
414
|
+
/** URL to terms of service page */
|
|
415
|
+
url?: string;
|
|
416
|
+
/** Custom label text. @default "I agree to the Terms of Service" */
|
|
417
|
+
label?: string;
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
/**
|
|
421
|
+
* Theme mode
|
|
422
|
+
*/
|
|
423
|
+
export declare type ThemeMode = 'light' | 'dark' | 'auto';
|
|
424
|
+
|
|
425
|
+
/**
|
|
426
|
+
* CSS variable theme overrides
|
|
427
|
+
*/
|
|
428
|
+
export declare interface ThemeOverrides {
|
|
429
|
+
'--cedros-primary'?: string;
|
|
430
|
+
'--cedros-primary-foreground'?: string;
|
|
431
|
+
'--cedros-background'?: string;
|
|
432
|
+
'--cedros-foreground'?: string;
|
|
433
|
+
'--cedros-muted'?: string;
|
|
434
|
+
'--cedros-muted-foreground'?: string;
|
|
435
|
+
'--cedros-border'?: string;
|
|
436
|
+
'--cedros-input'?: string;
|
|
437
|
+
'--cedros-ring'?: string;
|
|
438
|
+
'--cedros-radius'?: string;
|
|
439
|
+
'--cedros-destructive'?: string;
|
|
440
|
+
'--cedros-destructive-foreground'?: string;
|
|
441
|
+
[key: string]: string | undefined;
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
/**
|
|
445
|
+
* JWT token pair returned from authentication
|
|
446
|
+
*/
|
|
447
|
+
export declare interface TokenPair {
|
|
448
|
+
accessToken: string;
|
|
449
|
+
refreshToken: string;
|
|
450
|
+
expiresIn: number;
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
/**
|
|
454
|
+
* Two-factor authentication (TOTP) configuration
|
|
455
|
+
*
|
|
456
|
+
* Admin-level settings for app-based 2FA using authenticator apps.
|
|
457
|
+
*/
|
|
458
|
+
declare interface TotpConfig {
|
|
459
|
+
/**
|
|
460
|
+
* Whether TOTP 2FA is enabled for the application.
|
|
461
|
+
* @default false
|
|
462
|
+
*/
|
|
463
|
+
enabled?: boolean;
|
|
464
|
+
/**
|
|
465
|
+
* Whether TOTP 2FA is required for all users.
|
|
466
|
+
* If false, users can optionally enable it for their account.
|
|
467
|
+
* @default false
|
|
468
|
+
*/
|
|
469
|
+
required?: boolean;
|
|
470
|
+
/**
|
|
471
|
+
* Issuer name shown in authenticator apps.
|
|
472
|
+
* @default appName or hostname
|
|
473
|
+
*/
|
|
474
|
+
issuer?: string;
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
/**
|
|
478
|
+
* Main authentication hook providing user state and actions.
|
|
479
|
+
*
|
|
480
|
+
* @example
|
|
481
|
+
* ```tsx
|
|
482
|
+
* function MyComponent() {
|
|
483
|
+
* const { user, isAuthenticated, logout, openLoginModal } = useAuth();
|
|
484
|
+
*
|
|
485
|
+
* if (!isAuthenticated) {
|
|
486
|
+
* return <button onClick={openLoginModal}>Login</button>;
|
|
487
|
+
* }
|
|
488
|
+
*
|
|
489
|
+
* return (
|
|
490
|
+
* <div>
|
|
491
|
+
* <p>Welcome, {user?.name}</p>
|
|
492
|
+
* <button onClick={logout}>Logout</button>
|
|
493
|
+
* </div>
|
|
494
|
+
* );
|
|
495
|
+
* }
|
|
496
|
+
* ```
|
|
497
|
+
*/
|
|
498
|
+
export declare function useAuth(): UseAuthReturn;
|
|
499
|
+
|
|
500
|
+
declare interface UseAuthReturn {
|
|
501
|
+
user: AuthUser | null;
|
|
502
|
+
authState: AuthState;
|
|
503
|
+
error: AuthError | null;
|
|
504
|
+
isAuthenticated: boolean;
|
|
505
|
+
isLoading: boolean;
|
|
506
|
+
logout: () => Promise<void>;
|
|
507
|
+
refreshUser: () => Promise<void>;
|
|
508
|
+
openLoginModal: () => void;
|
|
509
|
+
closeLoginModal: () => void;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
/**
|
|
513
|
+
* Hook to access the full Cedros Login context.
|
|
514
|
+
* Must be used within a CedrosLoginProvider.
|
|
515
|
+
*
|
|
516
|
+
* For better performance, prefer `useAuthState()` or `useAuthUI()` when you
|
|
517
|
+
* only need a subset of the context. This hook re-renders on any change.
|
|
518
|
+
*/
|
|
519
|
+
export declare function useCedrosLogin(): CedrosLoginContextValue;
|
|
520
|
+
|
|
521
|
+
/**
|
|
522
|
+
* Hook for Solana wallet authentication.
|
|
523
|
+
*
|
|
524
|
+
* @example
|
|
525
|
+
* ```tsx
|
|
526
|
+
* function SolanaLogin() {
|
|
527
|
+
* const { requestChallenge, signIn, isLoading } = useSolanaAuth();
|
|
528
|
+
* const { publicKey, signMessage } = useWallet();
|
|
529
|
+
*
|
|
530
|
+
* const handleLogin = async () => {
|
|
531
|
+
* const challenge = await requestChallenge(publicKey.toBase58());
|
|
532
|
+
* const signature = await signMessage(new TextEncoder().encode(challenge.message));
|
|
533
|
+
* const result = await signIn(
|
|
534
|
+
* publicKey.toBase58(),
|
|
535
|
+
* Buffer.from(signature).toString('base64'),
|
|
536
|
+
* challenge.message
|
|
537
|
+
* );
|
|
538
|
+
* };
|
|
539
|
+
* }
|
|
540
|
+
* ```
|
|
541
|
+
*/
|
|
542
|
+
export declare function useSolanaAuth(): UseSolanaAuthReturn;
|
|
543
|
+
|
|
544
|
+
declare interface UseSolanaAuthReturn {
|
|
545
|
+
requestChallenge: (publicKey: string) => Promise<ChallengeResponse>;
|
|
546
|
+
signIn: (publicKey: string, signature: string, message: string) => Promise<AuthResponse>;
|
|
547
|
+
isLoading: boolean;
|
|
548
|
+
error: AuthError | null;
|
|
549
|
+
clearError: () => void;
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
/**
|
|
553
|
+
* Embedded wallet configuration
|
|
554
|
+
*
|
|
555
|
+
* Controls whether the embedded wallet is advertised to other Cedros modules
|
|
556
|
+
* (like cedros-pay) running in the same application.
|
|
557
|
+
*/
|
|
558
|
+
declare interface WalletConfig {
|
|
559
|
+
/**
|
|
560
|
+
* Expose embedded wallet availability via window global.
|
|
561
|
+
*
|
|
562
|
+
* When enabled, sets `window.__CEDROS_EMBEDDED_WALLET__` with:
|
|
563
|
+
* - `available`: boolean - whether user has enrolled SSS wallet
|
|
564
|
+
* - `publicKey`: string | null - Solana public key if available
|
|
565
|
+
*
|
|
566
|
+
* This allows other modules (e.g., cedros-pay) to detect embedded wallet
|
|
567
|
+
* and offer crypto payment options to users without browser wallet extensions.
|
|
568
|
+
*
|
|
569
|
+
* @security The signing function is NOT exposed on window. Signing must go
|
|
570
|
+
* through React context (useTransactionSigning hook) to prevent unauthorized
|
|
571
|
+
* access by arbitrary scripts.
|
|
572
|
+
*
|
|
573
|
+
* @default false
|
|
574
|
+
*/
|
|
575
|
+
exposeAvailability?: boolean;
|
|
576
|
+
/**
|
|
577
|
+
* Whether to include the user's wallet public key in the window global.
|
|
578
|
+
*
|
|
579
|
+
* @security This is a privacy tradeoff: exposing a stable identifier on `window`
|
|
580
|
+
* makes it available to any script on the page.
|
|
581
|
+
*
|
|
582
|
+
* If you only need to know whether an embedded wallet exists, keep this `false`.
|
|
583
|
+
*
|
|
584
|
+
* @default false
|
|
585
|
+
*/
|
|
586
|
+
exposePublicKey?: boolean;
|
|
587
|
+
/**
|
|
588
|
+
* SEC-004: Allowed domains for WebAuthn RP ID validation.
|
|
589
|
+
*
|
|
590
|
+
* In production, passkey operations will be rejected if the current hostname
|
|
591
|
+
* is not in this list. This prevents passkey registration on malicious domains
|
|
592
|
+
* that might be serving the app.
|
|
593
|
+
*
|
|
594
|
+
* @security Without this, an attacker could phish users to a lookalike domain
|
|
595
|
+
* and get them to register passkeys that only work on the malicious domain.
|
|
596
|
+
* While this doesn't compromise real credentials, it can be used in social
|
|
597
|
+
* engineering attacks.
|
|
598
|
+
*
|
|
599
|
+
* @example ['myapp.com', 'app.myapp.com']
|
|
600
|
+
* @default [] (localhost/127.0.0.1 always allowed for development)
|
|
601
|
+
*/
|
|
602
|
+
allowedRpDomains?: string[];
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
export { }
|
package/dist/solana-only.js
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import { C as
|
|
2
|
-
import {
|
|
1
|
+
import { C as e, u as s } from "./useAuth-C3dpk0po.js";
|
|
2
|
+
import { u as n } from "./useCedrosLogin-_94MmGGq.js";
|
|
3
|
+
import { S as u, u as i } from "./SolanaLoginButton-P22QjBaO.js";
|
|
4
|
+
import { L as f } from "./LoadingSpinner-6vml-zwr.js";
|
|
5
|
+
import { E as m } from "./ErrorMessage-CcEK0pYO.js";
|
|
3
6
|
export {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
e as CedrosLoginProvider,
|
|
8
|
+
m as ErrorMessage,
|
|
9
|
+
f as LoadingSpinner,
|
|
10
|
+
u as SolanaLoginButton,
|
|
11
|
+
s as useAuth,
|
|
12
|
+
n as useCedrosLogin,
|
|
13
|
+
i as useSolanaAuth
|
|
11
14
|
};
|
package/dist/solana-only.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solana-only.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"solana-only.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|
package/dist/style.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { }
|