@cedros/login-react 0.0.28 → 0.0.30
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 +2 -0
- package/dist/{AdminDepositList-CyT4VBH8.js → AdminDepositList-BUm_ZcAW.js} +1 -1
- package/dist/{AdminDepositList-CyT4VBH8.js.map → AdminDepositList-BUm_ZcAW.js.map} +1 -1
- package/dist/{AdminDepositList-b2AXtLg0.cjs → AdminDepositList-B_z6x3j5.cjs} +1 -1
- package/dist/{AdminDepositList-b2AXtLg0.cjs.map → AdminDepositList-B_z6x3j5.cjs.map} +1 -1
- package/dist/{AdminWithdrawalHistory-DL9zbu2b.cjs → AdminWithdrawalHistory-B2EY2ZmH.cjs} +1 -1
- package/dist/{AdminWithdrawalHistory-DL9zbu2b.cjs.map → AdminWithdrawalHistory-B2EY2ZmH.cjs.map} +1 -1
- package/dist/{AdminWithdrawalHistory-Cud-yuWy.js → AdminWithdrawalHistory-C76bkbjX.js} +1 -1
- package/dist/{AdminWithdrawalHistory-Cud-yuWy.js.map → AdminWithdrawalHistory-C76bkbjX.js.map} +1 -1
- package/dist/{AuthenticationSettings-D6GvSw3g.cjs → AuthenticationSettings-C-aYDXNH.cjs} +1 -1
- package/dist/{AuthenticationSettings-D6GvSw3g.cjs.map → AuthenticationSettings-C-aYDXNH.cjs.map} +1 -1
- package/dist/AuthenticationSettings-CoTic-d_.cjs +1 -0
- package/dist/AuthenticationSettings-CoTic-d_.cjs.map +1 -0
- package/dist/{AuthenticationSettings-rb4Fksw5.js → AuthenticationSettings-CsPbxwP7.js} +1 -1
- package/dist/{AuthenticationSettings-rb4Fksw5.js.map → AuthenticationSettings-CsPbxwP7.js.map} +1 -1
- package/dist/AuthenticationSettings-DIVk0OP8.js +712 -0
- package/dist/AuthenticationSettings-DIVk0OP8.js.map +1 -0
- package/dist/AutosaveStatus-DGNI4lXn.cjs +1 -0
- package/dist/AutosaveStatus-DGNI4lXn.cjs.map +1 -0
- package/dist/{AutosaveStatus-vkJxtuEw.js → AutosaveStatus-f-jw25Ay.js} +141 -93
- package/dist/AutosaveStatus-f-jw25Ay.js.map +1 -0
- package/dist/{CreditSystemSettings-ChA_lbef.cjs → CreditSystemSettings-BNkvsgsk.cjs} +1 -1
- package/dist/{CreditSystemSettings-ChA_lbef.cjs.map → CreditSystemSettings-BNkvsgsk.cjs.map} +1 -1
- package/dist/{CreditSystemSettings-DsRipb2R.js → CreditSystemSettings-C6ed3yp7.js} +1 -1
- package/dist/{CreditSystemSettings-DsRipb2R.js.map → CreditSystemSettings-C6ed3yp7.js.map} +1 -1
- package/dist/{CreditSystemSettings-r3gnGjiU.cjs → CreditSystemSettings-DM9ep1TF.cjs} +1 -1
- package/dist/{CreditSystemSettings-r3gnGjiU.cjs.map → CreditSystemSettings-DM9ep1TF.cjs.map} +1 -1
- package/dist/{CreditSystemSettings-a31pqSYS.js → CreditSystemSettings-uinhzoha.js} +1 -1
- package/dist/{CreditSystemSettings-a31pqSYS.js.map → CreditSystemSettings-uinhzoha.js.map} +1 -1
- package/dist/{DepositsSection-DD9MKUFt.js → DepositsSection-Bb4ISzvE.js} +1 -1
- package/dist/{DepositsSection-DD9MKUFt.js.map → DepositsSection-Bb4ISzvE.js.map} +1 -1
- package/dist/{DepositsSection-BkKUS4vk.cjs → DepositsSection-uQUdGeVb.cjs} +1 -1
- package/dist/{DepositsSection-BkKUS4vk.cjs.map → DepositsSection-uQUdGeVb.cjs.map} +1 -1
- package/dist/EmailRegisterForm-B_TiJkD6.cjs +1 -0
- package/dist/EmailRegisterForm-B_TiJkD6.cjs.map +1 -0
- package/dist/EmailRegisterForm-CCEuQA-w.js +773 -0
- package/dist/EmailRegisterForm-CCEuQA-w.js.map +1 -0
- package/dist/{EmailSettings-BVJ4vz0Y.js → EmailSettings-BAuQtEfM.js} +1 -1
- package/dist/{EmailSettings-BVJ4vz0Y.js.map → EmailSettings-BAuQtEfM.js.map} +1 -1
- package/dist/{EmailSettings-Dg2SAiHj.cjs → EmailSettings-BC0f1PCI.cjs} +1 -1
- package/dist/{EmailSettings-Dg2SAiHj.cjs.map → EmailSettings-BC0f1PCI.cjs.map} +1 -1
- package/dist/{EmailSettings-CM5l8qqK.cjs → EmailSettings-BF5EiPl9.cjs} +1 -1
- package/dist/{EmailSettings-CM5l8qqK.cjs.map → EmailSettings-BF5EiPl9.cjs.map} +1 -1
- package/dist/{EmailSettings-xtVl4kXD.js → EmailSettings-BKuXy8sc.js} +1 -1
- package/dist/{EmailSettings-xtVl4kXD.js.map → EmailSettings-BKuXy8sc.js.map} +1 -1
- package/dist/{EmbeddedWalletSettings-Bmx8x21f.cjs → EmbeddedWalletSettings-BRjt2PAj.cjs} +1 -1
- package/dist/{EmbeddedWalletSettings-Bmx8x21f.cjs.map → EmbeddedWalletSettings-BRjt2PAj.cjs.map} +1 -1
- package/dist/{EmbeddedWalletSettings-BuDgqv-K.js → EmbeddedWalletSettings-C27X9He2.js} +1 -1
- package/dist/{EmbeddedWalletSettings-BuDgqv-K.js.map → EmbeddedWalletSettings-C27X9He2.js.map} +1 -1
- package/dist/{EmbeddedWalletSettings-BXN9VbNJ.cjs → EmbeddedWalletSettings-CJY39UZN.cjs} +1 -1
- package/dist/{EmbeddedWalletSettings-BXN9VbNJ.cjs.map → EmbeddedWalletSettings-CJY39UZN.cjs.map} +1 -1
- package/dist/{EmbeddedWalletSettings-DY5iJhS0.js → EmbeddedWalletSettings-Dmi-EQ7W.js} +1 -1
- package/dist/{EmbeddedWalletSettings-DY5iJhS0.js.map → EmbeddedWalletSettings-Dmi-EQ7W.js.map} +1 -1
- package/dist/GoogleLoginButton-CjBO3Rf1.cjs +1 -0
- package/dist/GoogleLoginButton-CjBO3Rf1.cjs.map +1 -0
- package/dist/{GoogleLoginButton-B6qnNMZp.js → GoogleLoginButton-DEbiQngr.js} +51 -51
- package/dist/GoogleLoginButton-DEbiQngr.js.map +1 -0
- package/dist/LoadingSpinner-6vml-zwr.js.map +1 -1
- package/dist/LoadingSpinner-d6sSxgQN.cjs.map +1 -1
- package/dist/{PermissionsSection-BPbE-hNx.cjs → PermissionsSection-DEMVp7X3.cjs} +1 -1
- package/dist/PermissionsSection-DEMVp7X3.cjs.map +1 -0
- package/dist/{PermissionsSection-CighC1p6.js → PermissionsSection-DNzOL1xW.js} +27 -25
- package/dist/PermissionsSection-DNzOL1xW.js.map +1 -0
- package/dist/{ServerSettings-BAstMKHS.js → ServerSettings-BT9weFPz.js} +1 -1
- package/dist/{ServerSettings-BAstMKHS.js.map → ServerSettings-BT9weFPz.js.map} +1 -1
- package/dist/{ServerSettings-LIIP5TPz.cjs → ServerSettings-CKfiLfXi.cjs} +1 -1
- package/dist/{ServerSettings-LIIP5TPz.cjs.map → ServerSettings-CKfiLfXi.cjs.map} +1 -1
- package/dist/{ServerSettings-9Q091f3o.js → ServerSettings-CZfBdMxG.js} +1 -1
- package/dist/{ServerSettings-9Q091f3o.js.map → ServerSettings-CZfBdMxG.js.map} +1 -1
- package/dist/{ServerSettings-PH7T8JKI.cjs → ServerSettings-rHrVN8O8.cjs} +1 -1
- package/dist/{ServerSettings-PH7T8JKI.cjs.map → ServerSettings-rHrVN8O8.cjs.map} +1 -1
- package/dist/SolanaLoginButton-DAV3r4oB.cjs +1 -0
- package/dist/SolanaLoginButton-DAV3r4oB.cjs.map +1 -0
- package/dist/{mobileWalletAdapter-Ds4-7Snb.js → SolanaLoginButton-DFOoLqoj.js} +80 -79
- package/dist/SolanaLoginButton-DFOoLqoj.js.map +1 -0
- package/dist/{TeamSection-BIECkp7g.js → TeamSection-CoMXyFtz.js} +2 -2
- package/dist/{TeamSection-BIECkp7g.js.map → TeamSection-CoMXyFtz.js.map} +1 -1
- package/dist/{TeamSection-BOH9pv_E.cjs → TeamSection-DopbZClq.cjs} +1 -1
- package/dist/{TeamSection-BOH9pv_E.cjs.map → TeamSection-DopbZClq.cjs.map} +1 -1
- package/dist/{UsersSection-t-zm0jZW.js → UsersSection--PAE1XRh.js} +1 -1
- package/dist/{UsersSection-t-zm0jZW.js.map → UsersSection--PAE1XRh.js.map} +1 -1
- package/dist/{UsersSection-e6q7FHzx.cjs → UsersSection-C7aRNkK2.cjs} +1 -1
- package/dist/{UsersSection-e6q7FHzx.cjs.map → UsersSection-C7aRNkK2.cjs.map} +1 -1
- package/dist/{WebhookSettings-D0F8ESlB.js → WebhookSettings-Bgld6D_T.js} +1 -1
- package/dist/{WebhookSettings-D0F8ESlB.js.map → WebhookSettings-Bgld6D_T.js.map} +1 -1
- package/dist/{WebhookSettings-2p9abGm5.cjs → WebhookSettings-DXjnq-c7.cjs} +1 -1
- package/dist/{WebhookSettings-2p9abGm5.cjs.map → WebhookSettings-DXjnq-c7.cjs.map} +1 -1
- package/dist/{WebhookSettings-CdFM7_V-.cjs → WebhookSettings-DnLk97Mr.cjs} +1 -1
- package/dist/{WebhookSettings-CdFM7_V-.cjs.map → WebhookSettings-DnLk97Mr.cjs.map} +1 -1
- package/dist/{WebhookSettings-CXMBju7N.js → WebhookSettings-ufiGTmbG.js} +1 -1
- package/dist/{WebhookSettings-CXMBju7N.js.map → WebhookSettings-ufiGTmbG.js.map} +1 -1
- package/dist/{WithdrawalsSection-yRDTVFsb.js → WithdrawalsSection-BN-FjTEV.js} +1 -1
- package/dist/{WithdrawalsSection-yRDTVFsb.js.map → WithdrawalsSection-BN-FjTEV.js.map} +1 -1
- package/dist/{WithdrawalsSection-sljIyeaz.cjs → WithdrawalsSection-BhuCwFat.cjs} +1 -1
- package/dist/{WithdrawalsSection-sljIyeaz.cjs.map → WithdrawalsSection-BhuCwFat.cjs.map} +1 -1
- package/dist/admin-only.cjs +1 -1
- package/dist/admin-only.js +1 -1
- package/dist/email-only.cjs +1 -1
- package/dist/email-only.d.ts +17 -1
- package/dist/email-only.js +3 -3
- package/dist/google-only.cjs +1 -1
- package/dist/google-only.d.ts +16 -0
- package/dist/google-only.js +3 -3
- package/dist/index.cjs +12 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +246 -10
- package/dist/index.js +3484 -2611
- package/dist/index.js.map +1 -1
- package/dist/login-react.css +1 -1
- package/dist/{plugin-DbkijwEV.js → plugin-BbExid4E.js} +1 -1
- package/dist/{plugin-DbkijwEV.js.map → plugin-BbExid4E.js.map} +1 -1
- package/dist/{plugin-PU2vAozn.cjs → plugin-Xca67fp7.cjs} +1 -1
- package/dist/{plugin-PU2vAozn.cjs.map → plugin-Xca67fp7.cjs.map} +1 -1
- package/dist/{shamir-CiBczzDN.cjs → shamir-DBpHm7WN.cjs} +1 -1
- package/dist/{shamir-CiBczzDN.cjs.map → shamir-DBpHm7WN.cjs.map} +1 -1
- package/dist/{shamir-OAB2zD9Y.js → shamir-R8ddesFt.js} +1 -1
- package/dist/{shamir-OAB2zD9Y.js.map → shamir-R8ddesFt.js.map} +1 -1
- package/dist/{silentWalletEnroll-FqXS7Rvh.js → silentWalletEnroll-Dp1GTeNr.js} +3 -3
- package/dist/{silentWalletEnroll-FqXS7Rvh.js.map → silentWalletEnroll-Dp1GTeNr.js.map} +1 -1
- package/dist/{silentWalletEnroll-wnkcB9HP.cjs → silentWalletEnroll-HPvsbd2J.cjs} +1 -1
- package/dist/{silentWalletEnroll-wnkcB9HP.cjs.map → silentWalletEnroll-HPvsbd2J.cjs.map} +1 -1
- package/dist/solana-only.cjs +1 -1
- package/dist/solana-only.d.ts +16 -0
- package/dist/solana-only.js +3 -3
- package/dist/{useAdminDeposits-BTSyeAfg.js → useAdminDeposits-C76B2Q_8.js} +1 -1
- package/dist/{useAdminDeposits-BTSyeAfg.js.map → useAdminDeposits-C76B2Q_8.js.map} +1 -1
- package/dist/{useAdminDeposits-BkkCwHWp.cjs → useAdminDeposits-CpLd68oP.cjs} +1 -1
- package/dist/{useAdminDeposits-BkkCwHWp.cjs.map → useAdminDeposits-CpLd68oP.cjs.map} +1 -1
- package/dist/{useAuth-m5Hf89v8.js → useAuth-CVLv2oKA.js} +547 -545
- package/dist/useAuth-CVLv2oKA.js.map +1 -0
- package/dist/useAuth-XZaciuLg.cjs +1 -0
- package/dist/useAuth-XZaciuLg.cjs.map +1 -0
- package/dist/useCedrosLogin-CFfID-0i.js +228 -0
- package/dist/useCedrosLogin-CFfID-0i.js.map +1 -0
- package/dist/useCedrosLogin-DtJorrE7.cjs +1 -0
- package/dist/useCedrosLogin-DtJorrE7.cjs.map +1 -0
- package/dist/{useOrgs-C3pzMA9h.js → useOrgs-C90KT9KP.js} +1 -1
- package/dist/{useOrgs-C3pzMA9h.js.map → useOrgs-C90KT9KP.js.map} +1 -1
- package/dist/{useOrgs-DDVRCaVi.cjs → useOrgs-CNqfn-fk.cjs} +1 -1
- package/dist/{useOrgs-DDVRCaVi.cjs.map → useOrgs-CNqfn-fk.cjs.map} +1 -1
- package/dist/{useSystemSettings-DRrreszl.cjs → useSystemSettings-B2jY51ob.cjs} +1 -1
- package/dist/{useSystemSettings-DRrreszl.cjs.map → useSystemSettings-B2jY51ob.cjs.map} +1 -1
- package/dist/{useSystemSettings-DBlAMjFi.js → useSystemSettings-rgskaDqP.js} +1 -1
- package/dist/{useSystemSettings-DBlAMjFi.js.map → useSystemSettings-rgskaDqP.js.map} +1 -1
- package/dist/{useUsersStatsSummary-NjEFvWuz.js → useUsersStatsSummary-5DJwzntC.js} +2 -2
- package/dist/{useUsersStatsSummary-NjEFvWuz.js.map → useUsersStatsSummary-5DJwzntC.js.map} +1 -1
- package/dist/{useUsersStatsSummary-8qY7iP4G.cjs → useUsersStatsSummary-DgKaUIfs.cjs} +1 -1
- package/dist/{useUsersStatsSummary-8qY7iP4G.cjs.map → useUsersStatsSummary-DgKaUIfs.cjs.map} +1 -1
- package/package.json +1 -1
- package/dist/AuthenticationSettings-C9f5MKgj.cjs +0 -1
- package/dist/AuthenticationSettings-C9f5MKgj.cjs.map +0 -1
- package/dist/AuthenticationSettings-DC64o_J6.js +0 -525
- package/dist/AuthenticationSettings-DC64o_J6.js.map +0 -1
- package/dist/AutosaveStatus-BFj5GIab.cjs +0 -1
- package/dist/AutosaveStatus-BFj5GIab.cjs.map +0 -1
- package/dist/AutosaveStatus-vkJxtuEw.js.map +0 -1
- package/dist/EmailRegisterForm-B1DB-bqe.cjs +0 -1
- package/dist/EmailRegisterForm-B1DB-bqe.cjs.map +0 -1
- package/dist/EmailRegisterForm-BAX_uBIt.js +0 -927
- package/dist/EmailRegisterForm-BAX_uBIt.js.map +0 -1
- package/dist/GoogleLoginButton-B6qnNMZp.js.map +0 -1
- package/dist/GoogleLoginButton-D7CoMXLq.cjs +0 -1
- package/dist/GoogleLoginButton-D7CoMXLq.cjs.map +0 -1
- package/dist/PermissionsSection-BPbE-hNx.cjs.map +0 -1
- package/dist/PermissionsSection-CighC1p6.js.map +0 -1
- package/dist/mobileWalletAdapter-BhzZHGIl.cjs +0 -1
- package/dist/mobileWalletAdapter-BhzZHGIl.cjs.map +0 -1
- package/dist/mobileWalletAdapter-Ds4-7Snb.js.map +0 -1
- package/dist/useAuth-X6Ds6WW4.cjs +0 -1
- package/dist/useAuth-X6Ds6WW4.cjs.map +0 -1
- package/dist/useAuth-m5Hf89v8.js.map +0 -1
- package/dist/useCedrosLogin-C9MrcZvh.cjs +0 -1
- package/dist/useCedrosLogin-C9MrcZvh.cjs.map +0 -1
- package/dist/useCedrosLogin-_94MmGGq.js +0 -216
- package/dist/useCedrosLogin-_94MmGGq.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -24,6 +24,19 @@ export declare interface AcceptInviteResponse {
|
|
|
24
24
|
role: OrgRole;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
+
export declare function AccountSettings({ defaultTab, onClose, onPasswordChange, onTotpChange, onLinkGoogle, onLinkApple, onAddPasskey, onLinkSolana, className, }: AccountSettingsProps): JSX.Element;
|
|
28
|
+
|
|
29
|
+
export declare interface AccountSettingsProps extends ProfileTabProps, LinkedAccountsProps {
|
|
30
|
+
/** Which tab to show initially */
|
|
31
|
+
defaultTab?: AccountTab;
|
|
32
|
+
/** Called when user requests to close the settings page */
|
|
33
|
+
onClose?: () => void;
|
|
34
|
+
/** Called when 2FA status changes */
|
|
35
|
+
onTotpChange?: (enabled: boolean) => void;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
declare type AccountTab = 'profile' | 'security' | 'linked';
|
|
39
|
+
|
|
27
40
|
/** Request to acknowledge receipt of recovery phrase */
|
|
28
41
|
export declare interface AcknowledgeRecoveryRequest {
|
|
29
42
|
/** Confirmation that user has saved the recovery phrase */
|
|
@@ -614,6 +627,8 @@ export declare interface AuthResponse {
|
|
|
614
627
|
tokens?: TokenPair;
|
|
615
628
|
isNewUser: boolean;
|
|
616
629
|
callbackData?: Record<string, unknown>;
|
|
630
|
+
/** Post-login action (welcome page, profile completion, or redirect) */
|
|
631
|
+
postLogin?: PostLoginAction;
|
|
617
632
|
}
|
|
618
633
|
|
|
619
634
|
/**
|
|
@@ -633,6 +648,8 @@ export declare interface AuthStateContextValue {
|
|
|
633
648
|
authState: AuthState;
|
|
634
649
|
logout: () => Promise<void>;
|
|
635
650
|
refreshUser: () => Promise<void>;
|
|
651
|
+
/** Display order for social login buttons (from server auto-discovery). */
|
|
652
|
+
socialButtonOrder?: string[];
|
|
636
653
|
_internal?: CedrosLoginInternalAPI;
|
|
637
654
|
}
|
|
638
655
|
|
|
@@ -664,6 +681,8 @@ export declare interface AuthUser {
|
|
|
664
681
|
totpEnabled?: boolean;
|
|
665
682
|
createdAt: string;
|
|
666
683
|
updatedAt: string;
|
|
684
|
+
/** When the user completed the one-time welcome flow */
|
|
685
|
+
welcomeCompletedAt?: string;
|
|
667
686
|
}
|
|
668
687
|
|
|
669
688
|
/** Multiple balances response */
|
|
@@ -894,6 +913,25 @@ export declare interface ChangePasswordResponse {
|
|
|
894
913
|
*/
|
|
895
914
|
declare type ChatMessageRole = 'user' | 'assistant' | 'system';
|
|
896
915
|
|
|
916
|
+
/**
|
|
917
|
+
* Prompts the user to fill in their display name.
|
|
918
|
+
*
|
|
919
|
+
* Shown when the server returns `postLogin.action === 'complete_profile'`,
|
|
920
|
+
* indicating the user is missing a name (e.g., passkey-only or Solana-only
|
|
921
|
+
* signups).
|
|
922
|
+
*
|
|
923
|
+
* Uses the existing `useProfile().updateProfile()` to save changes.
|
|
924
|
+
*/
|
|
925
|
+
export declare function CompleteAccountPrompt({ onComplete, onSkip, className, }: CompleteAccountPromptProps): JSX.Element;
|
|
926
|
+
|
|
927
|
+
export declare interface CompleteAccountPromptProps {
|
|
928
|
+
/** Called after the user saves their profile info */
|
|
929
|
+
onComplete?: () => void;
|
|
930
|
+
/** Called when the user chooses to skip */
|
|
931
|
+
onSkip?: () => void;
|
|
932
|
+
className?: string;
|
|
933
|
+
}
|
|
934
|
+
|
|
897
935
|
/** Request to create a derived wallet */
|
|
898
936
|
export declare interface CreateDerivedWalletRequest {
|
|
899
937
|
/** Human-readable label for the wallet (1-100 chars) */
|
|
@@ -938,6 +976,20 @@ export declare interface CreateOrgRequest {
|
|
|
938
976
|
slug?: string;
|
|
939
977
|
}
|
|
940
978
|
|
|
979
|
+
/** A single linked credential / sign-in method */
|
|
980
|
+
declare interface Credential_2 {
|
|
981
|
+
id: string;
|
|
982
|
+
credentialType: CredentialType;
|
|
983
|
+
label: string | null;
|
|
984
|
+
createdAt: string;
|
|
985
|
+
lastUsedAt: string | null;
|
|
986
|
+
isPrimary: boolean;
|
|
987
|
+
}
|
|
988
|
+
export { Credential_2 as Credential }
|
|
989
|
+
|
|
990
|
+
/** Supported credential types matching server enum */
|
|
991
|
+
export declare type CredentialType = 'password' | 'oauth_google' | 'oauth_apple' | 'solana' | 'webauthn_passkey' | 'webauthn_security_key' | 'totp' | 'sso_oidc';
|
|
992
|
+
|
|
941
993
|
/**
|
|
942
994
|
* Credit balance display
|
|
943
995
|
*
|
|
@@ -1368,7 +1420,7 @@ export declare function EmailLoginForm({ onSuccess, onSwitchToRegister, onForgot
|
|
|
1368
1420
|
export declare interface EmailLoginFormProps {
|
|
1369
1421
|
onSuccess?: () => void;
|
|
1370
1422
|
onSwitchToRegister?: () => void;
|
|
1371
|
-
/** Called when user clicks "Forgot password?"
|
|
1423
|
+
/** Called when user clicks "Forgot password?" — navigates to forgot-password screen */
|
|
1372
1424
|
onForgotPassword?: () => void;
|
|
1373
1425
|
className?: string;
|
|
1374
1426
|
}
|
|
@@ -1548,19 +1600,15 @@ export declare interface ForgotPasswordConfig {
|
|
|
1548
1600
|
}
|
|
1549
1601
|
|
|
1550
1602
|
/**
|
|
1551
|
-
* Form for requesting a password reset
|
|
1603
|
+
* Form for requesting a password reset or instant sign-in link.
|
|
1552
1604
|
*
|
|
1553
|
-
* @
|
|
1554
|
-
* ```tsx
|
|
1555
|
-
* <ForgotPasswordForm
|
|
1556
|
-
* onSuccess={() => console.log('Email sent!')}
|
|
1557
|
-
* onCancel={() => setShowForgotPassword(false)}
|
|
1558
|
-
* />
|
|
1559
|
-
* ```
|
|
1605
|
+
* @param mode - `'reset'` sends a password reset email; `'instantLink'` sends a passwordless sign-in link.
|
|
1560
1606
|
*/
|
|
1561
|
-
export declare function ForgotPasswordForm({ onSuccess, onCancel, className, }: ForgotPasswordFormProps): JSX.Element;
|
|
1607
|
+
export declare function ForgotPasswordForm({ mode, onSuccess, onCancel, className, }: ForgotPasswordFormProps): JSX.Element;
|
|
1562
1608
|
|
|
1563
1609
|
export declare interface ForgotPasswordFormProps {
|
|
1610
|
+
/** Which action to perform: password reset email or instant sign-in link */
|
|
1611
|
+
mode?: 'reset' | 'instantLink';
|
|
1564
1612
|
onSuccess?: () => void;
|
|
1565
1613
|
onCancel?: () => void;
|
|
1566
1614
|
className?: string;
|
|
@@ -1903,6 +1951,27 @@ export declare interface KdfParams {
|
|
|
1903
1951
|
pCost: number;
|
|
1904
1952
|
}
|
|
1905
1953
|
|
|
1954
|
+
export declare function LinkedAccounts({ onLinkGoogle, onLinkApple, onAddPasskey, onLinkSolana, className, }: LinkedAccountsProps): JSX.Element;
|
|
1955
|
+
|
|
1956
|
+
/**
|
|
1957
|
+
* LinkedAccounts — displays linked sign-in methods and allows unlinking.
|
|
1958
|
+
*
|
|
1959
|
+
* Each credential row shows an icon, display name, timestamps, and a remove button.
|
|
1960
|
+
* Linking new methods is handled via consumer-provided callbacks.
|
|
1961
|
+
*/
|
|
1962
|
+
export declare interface LinkedAccountsProps {
|
|
1963
|
+
/** Callback to start Google OAuth linking flow */
|
|
1964
|
+
onLinkGoogle?: () => void;
|
|
1965
|
+
/** Callback to start Apple OAuth linking flow */
|
|
1966
|
+
onLinkApple?: () => void;
|
|
1967
|
+
/** Override for passkey registration. If omitted, uses built-in registerPasskey(). */
|
|
1968
|
+
onAddPasskey?: () => void;
|
|
1969
|
+
/** Callback to start Solana wallet linking flow */
|
|
1970
|
+
onLinkSolana?: () => void;
|
|
1971
|
+
/** Additional CSS class */
|
|
1972
|
+
className?: string;
|
|
1973
|
+
}
|
|
1974
|
+
|
|
1906
1975
|
/**
|
|
1907
1976
|
* Response for listing users (admin)
|
|
1908
1977
|
*/
|
|
@@ -1913,6 +1982,11 @@ export declare interface ListAdminUsersResponse {
|
|
|
1913
1982
|
offset: number;
|
|
1914
1983
|
}
|
|
1915
1984
|
|
|
1985
|
+
/** Response from GET /credentials */
|
|
1986
|
+
export declare interface ListCredentialsResponse {
|
|
1987
|
+
credentials: Credential_2[];
|
|
1988
|
+
}
|
|
1989
|
+
|
|
1916
1990
|
/**
|
|
1917
1991
|
* Response from listing sessions
|
|
1918
1992
|
*/
|
|
@@ -2121,6 +2195,26 @@ declare interface MfaRequiredResult {
|
|
|
2121
2195
|
userId: string;
|
|
2122
2196
|
}
|
|
2123
2197
|
|
|
2198
|
+
/**
|
|
2199
|
+
* Post-login prompt for admin-enforced MFA setup.
|
|
2200
|
+
*
|
|
2201
|
+
* Shown when the server returns `postLogin.action === 'setup_mfa'`,
|
|
2202
|
+
* indicating the admin requires two-factor authentication and the user
|
|
2203
|
+
* has not yet enrolled. This prompt is **not skippable** — the user
|
|
2204
|
+
* must complete TOTP setup to proceed.
|
|
2205
|
+
*
|
|
2206
|
+
* Only applies to users with password credentials. OAuth, passkey,
|
|
2207
|
+
* and wallet users are not prompted (their providers handle strong auth).
|
|
2208
|
+
*/
|
|
2209
|
+
export declare function MfaSetupPrompt({ onComplete, className }: MfaSetupPromptProps): JSX.Element;
|
|
2210
|
+
|
|
2211
|
+
export declare interface MfaSetupPromptProps {
|
|
2212
|
+
/** Called after TOTP enrollment succeeds */
|
|
2213
|
+
onComplete: () => void;
|
|
2214
|
+
/** Additional CSS class */
|
|
2215
|
+
className?: string;
|
|
2216
|
+
}
|
|
2217
|
+
|
|
2124
2218
|
/** Request for POST /deposit/micro */
|
|
2125
2219
|
export declare interface MicroDepositRequest {
|
|
2126
2220
|
txSignature: string;
|
|
@@ -2462,6 +2556,16 @@ export declare interface PluginRegistry {
|
|
|
2462
2556
|
subscribe(listener: (plugins: AdminPlugin[]) => void): () => void;
|
|
2463
2557
|
}
|
|
2464
2558
|
|
|
2559
|
+
/**
|
|
2560
|
+
* Post-login action returned by the server after authentication
|
|
2561
|
+
*/
|
|
2562
|
+
export declare interface PostLoginAction {
|
|
2563
|
+
/** Action type: "welcome", "complete_profile", "redirect", or "setup_mfa" */
|
|
2564
|
+
action: 'welcome' | 'complete_profile' | 'redirect' | 'setup_mfa';
|
|
2565
|
+
/** URL/route for redirect or welcome page */
|
|
2566
|
+
redirectUrl?: string;
|
|
2567
|
+
}
|
|
2568
|
+
|
|
2465
2569
|
/** Privacy Cash system status response */
|
|
2466
2570
|
declare interface PrivacyStatusResponse {
|
|
2467
2571
|
enabled: boolean;
|
|
@@ -2550,6 +2654,27 @@ export declare interface ProfileDropdownProps {
|
|
|
2550
2654
|
className?: string;
|
|
2551
2655
|
}
|
|
2552
2656
|
|
|
2657
|
+
export declare function ProfileTab({ onPasswordChange, className }: ProfileTabProps): JSX.Element;
|
|
2658
|
+
|
|
2659
|
+
/**
|
|
2660
|
+
* ProfileTab — editable profile view with avatar, name, email, and password.
|
|
2661
|
+
*
|
|
2662
|
+
* Three internal states:
|
|
2663
|
+
* - "view": read-only display with edit pencil on name
|
|
2664
|
+
* - "edit": inline name editing with Save/Cancel
|
|
2665
|
+
* - "change-password": delegates to ChangePasswordForm
|
|
2666
|
+
*
|
|
2667
|
+
* Detects whether the user has a password credential:
|
|
2668
|
+
* - Has password → "Change" button → ChangePasswordForm
|
|
2669
|
+
* - No password → "Add password" button → sends forgot-password email
|
|
2670
|
+
*/
|
|
2671
|
+
export declare interface ProfileTabProps {
|
|
2672
|
+
/** Called after password is changed successfully */
|
|
2673
|
+
onPasswordChange?: () => void;
|
|
2674
|
+
/** Additional CSS class */
|
|
2675
|
+
className?: string;
|
|
2676
|
+
}
|
|
2677
|
+
|
|
2553
2678
|
/** Request for POST /deposit/public */
|
|
2554
2679
|
export declare interface PublicDepositRequest {
|
|
2555
2680
|
signedTransaction: string;
|
|
@@ -2754,6 +2879,14 @@ export declare interface ServerFeatures {
|
|
|
2754
2879
|
* admin dashboard visibility only.
|
|
2755
2880
|
*/
|
|
2756
2881
|
mfa: boolean;
|
|
2882
|
+
/**
|
|
2883
|
+
* Require email/password users to set up TOTP two-factor authentication.
|
|
2884
|
+
*
|
|
2885
|
+
* **Enforced** — the server returns a `setup_mfa` post-login action for
|
|
2886
|
+
* password users who haven't enrolled TOTP. Works independently of `mfa`
|
|
2887
|
+
* (which only controls UI visibility).
|
|
2888
|
+
*/
|
|
2889
|
+
mfaRequired: boolean;
|
|
2757
2890
|
/** Enable embedded wallet for transaction signing. Startup-config enforced. */
|
|
2758
2891
|
walletSigning: boolean;
|
|
2759
2892
|
/**
|
|
@@ -3873,6 +4006,47 @@ export declare function useAuthUI(): AuthUIContextValue;
|
|
|
3873
4006
|
*/
|
|
3874
4007
|
export declare function useCedrosLogin(): CedrosLoginContextValue;
|
|
3875
4008
|
|
|
4009
|
+
/**
|
|
4010
|
+
* Hook for managing user credentials (linked sign-in methods).
|
|
4011
|
+
*
|
|
4012
|
+
* Auto-fetches when authenticated. Provides list, unlink, and refresh operations.
|
|
4013
|
+
*
|
|
4014
|
+
* @example
|
|
4015
|
+
* ```tsx
|
|
4016
|
+
* function LinkedAccountsPage() {
|
|
4017
|
+
* const { credentials, isLoading, unlinkCredential } = useCredentials();
|
|
4018
|
+
*
|
|
4019
|
+
* return (
|
|
4020
|
+
* <ul>
|
|
4021
|
+
* {credentials.map(cred => (
|
|
4022
|
+
* <li key={cred.id}>
|
|
4023
|
+
* {cred.credentialType}
|
|
4024
|
+
* <button onClick={() => unlinkCredential(cred.id)}>Remove</button>
|
|
4025
|
+
* </li>
|
|
4026
|
+
* ))}
|
|
4027
|
+
* </ul>
|
|
4028
|
+
* );
|
|
4029
|
+
* }
|
|
4030
|
+
* ```
|
|
4031
|
+
*/
|
|
4032
|
+
export declare function useCredentials(): UseCredentialsReturn;
|
|
4033
|
+
|
|
4034
|
+
/** Return type for useCredentials hook */
|
|
4035
|
+
export declare interface UseCredentialsReturn {
|
|
4036
|
+
/** List of linked credentials */
|
|
4037
|
+
credentials: Credential_2[];
|
|
4038
|
+
/** Loading state */
|
|
4039
|
+
isLoading: boolean;
|
|
4040
|
+
/** Error state */
|
|
4041
|
+
error: AuthError | null;
|
|
4042
|
+
/** Fetch/refresh credentials list */
|
|
4043
|
+
fetchCredentials: () => Promise<void>;
|
|
4044
|
+
/** Unlink a credential by ID */
|
|
4045
|
+
unlinkCredential: (id: string) => Promise<void>;
|
|
4046
|
+
/** Clear error state */
|
|
4047
|
+
clearError: () => void;
|
|
4048
|
+
}
|
|
4049
|
+
|
|
3876
4050
|
/**
|
|
3877
4051
|
* Hook for credit balance and transaction history
|
|
3878
4052
|
*
|
|
@@ -4317,6 +4491,68 @@ export declare interface UsePendingRecoveryReturn {
|
|
|
4317
4491
|
clearError: () => void;
|
|
4318
4492
|
}
|
|
4319
4493
|
|
|
4494
|
+
/**
|
|
4495
|
+
* Hook for managing post-login flow actions.
|
|
4496
|
+
*
|
|
4497
|
+
* After authentication, the server may return a `postLogin` action indicating
|
|
4498
|
+
* the client should show a welcome page, prompt for profile completion, or
|
|
4499
|
+
* redirect to a specific URL.
|
|
4500
|
+
*
|
|
4501
|
+
* @example
|
|
4502
|
+
* ```tsx
|
|
4503
|
+
* function App() {
|
|
4504
|
+
* const { postLoginAction, markWelcomeCompleted, clearPostLogin } = usePostLogin();
|
|
4505
|
+
* const { login } = useEmailAuth();
|
|
4506
|
+
*
|
|
4507
|
+
* const handleLogin = async () => {
|
|
4508
|
+
* const response = await login(email, password);
|
|
4509
|
+
* if (response.postLogin) {
|
|
4510
|
+
* setPostLoginAction(response.postLogin);
|
|
4511
|
+
* }
|
|
4512
|
+
* };
|
|
4513
|
+
*
|
|
4514
|
+
* // MFA setup (highest priority — not skippable)
|
|
4515
|
+
* if (postLoginAction?.action === 'setup_mfa') {
|
|
4516
|
+
* return <MfaSetupPrompt onComplete={clearPostLogin} />;
|
|
4517
|
+
* }
|
|
4518
|
+
*
|
|
4519
|
+
* if (postLoginAction?.action === 'welcome') {
|
|
4520
|
+
* return <WelcomePage onComplete={async () => {
|
|
4521
|
+
* await markWelcomeCompleted();
|
|
4522
|
+
* clearPostLogin();
|
|
4523
|
+
* }} />;
|
|
4524
|
+
* }
|
|
4525
|
+
*
|
|
4526
|
+
* if (postLoginAction?.action === 'complete_profile') {
|
|
4527
|
+
* return <CompleteAccountPrompt onComplete={clearPostLogin} onSkip={clearPostLogin} />;
|
|
4528
|
+
* }
|
|
4529
|
+
*
|
|
4530
|
+
* if (postLoginAction?.action === 'redirect' && postLoginAction.redirectUrl) {
|
|
4531
|
+
* window.location.href = postLoginAction.redirectUrl;
|
|
4532
|
+
* }
|
|
4533
|
+
* }
|
|
4534
|
+
* ```
|
|
4535
|
+
*/
|
|
4536
|
+
export declare function usePostLogin(): UsePostLoginReturn;
|
|
4537
|
+
|
|
4538
|
+
/**
|
|
4539
|
+
* Return type for the usePostLogin hook
|
|
4540
|
+
*/
|
|
4541
|
+
export declare interface UsePostLoginReturn {
|
|
4542
|
+
/** The current post-login action from the last auth response, or null */
|
|
4543
|
+
postLoginAction: PostLoginAction | null;
|
|
4544
|
+
/** Set the post-login action (call after receiving an auth response with postLogin) */
|
|
4545
|
+
setPostLoginAction: (action: PostLoginAction | null) => void;
|
|
4546
|
+
/** Mark the welcome flow as completed on the server */
|
|
4547
|
+
markWelcomeCompleted: () => Promise<void>;
|
|
4548
|
+
/** Clear the post-login action (e.g., after handling it) */
|
|
4549
|
+
clearPostLogin: () => void;
|
|
4550
|
+
/** Whether a markWelcomeCompleted call is in progress */
|
|
4551
|
+
isLoading: boolean;
|
|
4552
|
+
/** Error from the last markWelcomeCompleted call */
|
|
4553
|
+
error: Error | null;
|
|
4554
|
+
}
|
|
4555
|
+
|
|
4320
4556
|
/**
|
|
4321
4557
|
* Hook for managing user profile operations.
|
|
4322
4558
|
*
|