@cedros/login-react 0.0.29 → 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-Cm_AUXhg.js → SolanaLoginButton-DFOoLqoj.js} +75 -74
- 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 +3384 -2508
- 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-B6ELaZp1.cjs +0 -1
- package/dist/mobileWalletAdapter-B6ELaZp1.cjs.map +0 -1
- package/dist/mobileWalletAdapter-Cm_AUXhg.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
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { jsx as t, jsxs as u, Fragment as f } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo as
|
|
3
|
-
import { u as E } from "./useSystemSettings-
|
|
4
|
-
function
|
|
5
|
-
const s = Math.floor(e / 86400), a = Math.floor(e % 86400 / 3600), r = Math.floor(e % 3600 / 60),
|
|
6
|
-
return { days: s, hours: a, minutes: r, seconds:
|
|
2
|
+
import { useMemo as S, useCallback as d, useState as w, useRef as T, useEffect as O } from "react";
|
|
3
|
+
import { u as E } from "./useSystemSettings-rgskaDqP.js";
|
|
4
|
+
function R(e) {
|
|
5
|
+
const s = Math.floor(e / 86400), a = Math.floor(e % 86400 / 3600), r = Math.floor(e % 3600 / 60), i = e % 60;
|
|
6
|
+
return { days: s, hours: a, minutes: r, seconds: i };
|
|
7
7
|
}
|
|
8
|
-
function
|
|
9
|
-
const { days: s, hours: a, minutes: r } =
|
|
10
|
-
return s > 0 &&
|
|
8
|
+
function I(e) {
|
|
9
|
+
const { days: s, hours: a, minutes: r } = R(e), i = [];
|
|
10
|
+
return s > 0 && i.push(`${s}d`), a > 0 && i.push(`${a}h`), r > 0 && i.push(`${r}m`), i.length === 0 && i.push(`${e}s`), i.join(" ");
|
|
11
11
|
}
|
|
12
|
-
const
|
|
12
|
+
const M = {
|
|
13
13
|
// ============= Authentication Providers =============
|
|
14
14
|
// Email auth
|
|
15
15
|
auth_email_enabled: {
|
|
@@ -155,7 +155,7 @@ const R = {
|
|
|
155
155
|
feature_mfa: {
|
|
156
156
|
key: "feature_mfa",
|
|
157
157
|
label: "Two-Factor Authentication",
|
|
158
|
-
description: "Allow users to enable TOTP-based two-factor authentication.",
|
|
158
|
+
description: "Allow users to enable TOTP-based two-factor authentication for email/password sign-in. OAuth (Google, Apple) and passkey logins are not affected — those providers handle their own verification.",
|
|
159
159
|
inputType: "boolean"
|
|
160
160
|
},
|
|
161
161
|
feature_wallet_signing: {
|
|
@@ -188,6 +188,12 @@ const R = {
|
|
|
188
188
|
inputType: "boolean"
|
|
189
189
|
},
|
|
190
190
|
// ============= Security Settings =============
|
|
191
|
+
security_require_mfa: {
|
|
192
|
+
key: "security_require_mfa",
|
|
193
|
+
label: "Require Two-Factor Authentication",
|
|
194
|
+
description: 'Require users with email/password credentials to set up TOTP two-factor authentication. Users will be prompted to enroll after their next sign-in. Does not affect OAuth, passkey, or wallet sign-in methods. Works independently of the "Two-Factor Authentication" feature flag (which controls UI visibility).',
|
|
195
|
+
inputType: "boolean"
|
|
196
|
+
},
|
|
191
197
|
security_cors_origins: {
|
|
192
198
|
key: "security_cors_origins",
|
|
193
199
|
label: "CORS Origins",
|
|
@@ -868,6 +874,33 @@ const R = {
|
|
|
868
874
|
below: 5e8,
|
|
869
875
|
message: "Very small withdrawals may lose significant value to fees."
|
|
870
876
|
}
|
|
877
|
+
},
|
|
878
|
+
// ============= Post-Login Flow =============
|
|
879
|
+
postlogin_redirect_url: {
|
|
880
|
+
key: "postlogin_redirect_url",
|
|
881
|
+
label: "Redirect URL",
|
|
882
|
+
description: "URL to redirect to after login. Leave empty for default behavior (consumer app decides).",
|
|
883
|
+
inputType: "text",
|
|
884
|
+
placeholder: "https://example.com/dashboard"
|
|
885
|
+
},
|
|
886
|
+
postlogin_welcome_enabled: {
|
|
887
|
+
key: "postlogin_welcome_enabled",
|
|
888
|
+
label: "Enable Welcome Page",
|
|
889
|
+
description: "Show a one-time welcome/onboarding page to new users after their first login.",
|
|
890
|
+
inputType: "boolean"
|
|
891
|
+
},
|
|
892
|
+
postlogin_welcome_route: {
|
|
893
|
+
key: "postlogin_welcome_route",
|
|
894
|
+
label: "Welcome Route",
|
|
895
|
+
description: "Route for the welcome/onboarding page.",
|
|
896
|
+
inputType: "text",
|
|
897
|
+
placeholder: "/welcome"
|
|
898
|
+
},
|
|
899
|
+
postlogin_complete_enabled: {
|
|
900
|
+
key: "postlogin_complete_enabled",
|
|
901
|
+
label: "Prompt Profile Completion",
|
|
902
|
+
description: "Prompt users to fill in missing name or email after login. Shows every login until the user completes or skips.",
|
|
903
|
+
inputType: "boolean"
|
|
871
904
|
}
|
|
872
905
|
}, X = {
|
|
873
906
|
// Auth providers (sorted alphabetically by subcategory)
|
|
@@ -906,6 +939,21 @@ const R = {
|
|
|
906
939
|
description: "Core deposit and credit system configuration.",
|
|
907
940
|
icon: ""
|
|
908
941
|
},
|
|
942
|
+
postlogin: {
|
|
943
|
+
label: "Post-Login",
|
|
944
|
+
description: "Configure what happens after a user logs in.",
|
|
945
|
+
icon: ""
|
|
946
|
+
},
|
|
947
|
+
"postlogin.welcome": {
|
|
948
|
+
label: "Welcome Page",
|
|
949
|
+
description: "One-time onboarding page shown to new users after first login.",
|
|
950
|
+
icon: ""
|
|
951
|
+
},
|
|
952
|
+
"postlogin.complete": {
|
|
953
|
+
label: "Profile Completion",
|
|
954
|
+
description: "Prompt users to fill in missing profile information.",
|
|
955
|
+
icon: ""
|
|
956
|
+
},
|
|
909
957
|
deposit: {
|
|
910
958
|
label: "Deposit Settings",
|
|
911
959
|
description: "Configure deposit tokens, fees, and related settings.",
|
|
@@ -951,7 +999,7 @@ const R = {
|
|
|
951
999
|
description: "Configure how the automated withdrawal processor handles pending withdrawals. These settings affect throughput and privacy.",
|
|
952
1000
|
icon: ""
|
|
953
1001
|
}
|
|
954
|
-
},
|
|
1002
|
+
}, A = [
|
|
955
1003
|
"SOL",
|
|
956
1004
|
"USDC",
|
|
957
1005
|
"USDT",
|
|
@@ -963,11 +1011,11 @@ const R = {
|
|
|
963
1011
|
"BONK",
|
|
964
1012
|
"ORE"
|
|
965
1013
|
];
|
|
966
|
-
function
|
|
1014
|
+
function N(e) {
|
|
967
1015
|
const s = e.split(/(<a\s[^>]*>.*?<\/a>)/g);
|
|
968
1016
|
return s.length === 1 ? e : s.map((a, r) => {
|
|
969
|
-
const
|
|
970
|
-
return
|
|
1017
|
+
const i = a.match(/^<a\s+href="([^"]+)"[^>]*>([^<]+)<\/a>$/);
|
|
1018
|
+
return i ? /* @__PURE__ */ t("a", { href: i[1], target: "_blank", rel: "noopener noreferrer", children: i[2] }, r) : a;
|
|
971
1019
|
});
|
|
972
1020
|
}
|
|
973
1021
|
function Q({
|
|
@@ -976,27 +1024,27 @@ function Q({
|
|
|
976
1024
|
onChange: a,
|
|
977
1025
|
externalWarnings: r
|
|
978
1026
|
}) {
|
|
979
|
-
return /* @__PURE__ */ t("div", { className: "cedros-settings-grid", children: e.map((
|
|
1027
|
+
return /* @__PURE__ */ t("div", { className: "cedros-settings-grid", children: e.map((i) => /* @__PURE__ */ t(
|
|
980
1028
|
U,
|
|
981
1029
|
{
|
|
982
|
-
setting:
|
|
983
|
-
editValue: s[
|
|
1030
|
+
setting: i,
|
|
1031
|
+
editValue: s[i.key],
|
|
984
1032
|
onChange: a,
|
|
985
|
-
externalWarning: r?.[
|
|
1033
|
+
externalWarning: r?.[i.key]
|
|
986
1034
|
},
|
|
987
|
-
|
|
1035
|
+
i.key
|
|
988
1036
|
)) });
|
|
989
1037
|
}
|
|
990
1038
|
function U({ setting: e, editValue: s, onChange: a, externalWarning: r }) {
|
|
991
|
-
const
|
|
1039
|
+
const i = M[e.key], l = s ?? e.value, p = s !== void 0 && s !== e.value, n = i?.inputType === "boolean", o = S(() => {
|
|
992
1040
|
if (r) return r;
|
|
993
|
-
if (!
|
|
994
|
-
const c = parseInt(
|
|
1041
|
+
if (!i?.warningThreshold) return null;
|
|
1042
|
+
const c = parseInt(l, 10);
|
|
995
1043
|
if (isNaN(c)) return null;
|
|
996
|
-
const { above: m, below: y, message: _ } =
|
|
1044
|
+
const { above: m, below: y, message: _ } = i.warningThreshold;
|
|
997
1045
|
return m !== void 0 && c > m || y !== void 0 && c < y ? _ : null;
|
|
998
|
-
}, [
|
|
999
|
-
return
|
|
1046
|
+
}, [l, i?.warningThreshold, r]);
|
|
1047
|
+
return i ? /* @__PURE__ */ t(
|
|
1000
1048
|
"div",
|
|
1001
1049
|
{
|
|
1002
1050
|
className: `cedros-setting-row ${p ? "cedros-setting-row-changed" : ""} ${o ? "cedros-setting-row-warning" : ""} ${n ? "cedros-setting-row-toggle" : ""}`,
|
|
@@ -1005,28 +1053,28 @@ function U({ setting: e, editValue: s, onChange: a, externalWarning: r }) {
|
|
|
1005
1053
|
/* @__PURE__ */ t(
|
|
1006
1054
|
x,
|
|
1007
1055
|
{
|
|
1008
|
-
meta:
|
|
1009
|
-
value:
|
|
1056
|
+
meta: i,
|
|
1057
|
+
value: l,
|
|
1010
1058
|
onChange: (c) => a(e.key, c)
|
|
1011
1059
|
}
|
|
1012
1060
|
),
|
|
1013
1061
|
o && /* @__PURE__ */ t("div", { className: "cedros-setting-warning", children: o })
|
|
1014
1062
|
] }),
|
|
1015
1063
|
/* @__PURE__ */ u("div", { className: "cedros-setting-label", children: [
|
|
1016
|
-
/* @__PURE__ */ t("span", { className: "cedros-setting-name", children:
|
|
1017
|
-
/* @__PURE__ */ t("span", { className: "cedros-setting-description", children:
|
|
1064
|
+
/* @__PURE__ */ t("span", { className: "cedros-setting-name", children: i.label }),
|
|
1065
|
+
/* @__PURE__ */ t("span", { className: "cedros-setting-description", children: N(i.description) })
|
|
1018
1066
|
] })
|
|
1019
1067
|
] }) : /* @__PURE__ */ u(f, { children: [
|
|
1020
1068
|
/* @__PURE__ */ u("div", { className: "cedros-setting-label", children: [
|
|
1021
|
-
/* @__PURE__ */ t("span", { className: "cedros-setting-name", children:
|
|
1022
|
-
/* @__PURE__ */ t("span", { className: "cedros-setting-description", children:
|
|
1069
|
+
/* @__PURE__ */ t("span", { className: "cedros-setting-name", children: i.label }),
|
|
1070
|
+
/* @__PURE__ */ t("span", { className: "cedros-setting-description", children: N(i.description) })
|
|
1023
1071
|
] }),
|
|
1024
1072
|
/* @__PURE__ */ u("div", { className: "cedros-setting-control", children: [
|
|
1025
1073
|
/* @__PURE__ */ t(
|
|
1026
1074
|
x,
|
|
1027
1075
|
{
|
|
1028
|
-
meta:
|
|
1029
|
-
value:
|
|
1076
|
+
meta: i,
|
|
1077
|
+
value: l,
|
|
1030
1078
|
onChange: (c) => a(e.key, c)
|
|
1031
1079
|
}
|
|
1032
1080
|
),
|
|
@@ -1043,7 +1091,7 @@ function U({ setting: e, editValue: s, onChange: a, externalWarning: r }) {
|
|
|
1043
1091
|
"input",
|
|
1044
1092
|
{
|
|
1045
1093
|
type: "text",
|
|
1046
|
-
value:
|
|
1094
|
+
value: l,
|
|
1047
1095
|
onChange: (c) => a(e.key, c.target.value),
|
|
1048
1096
|
className: "cedros-setting-input"
|
|
1049
1097
|
}
|
|
@@ -1088,7 +1136,7 @@ function x({ meta: e, value: s, onChange: a }) {
|
|
|
1088
1136
|
}
|
|
1089
1137
|
);
|
|
1090
1138
|
case "tokenList":
|
|
1091
|
-
return /* @__PURE__ */ t(
|
|
1139
|
+
return /* @__PURE__ */ t(G, { value: s, onChange: a });
|
|
1092
1140
|
case "text":
|
|
1093
1141
|
return /* @__PURE__ */ t(
|
|
1094
1142
|
"input",
|
|
@@ -1105,7 +1153,7 @@ function x({ meta: e, value: s, onChange: a }) {
|
|
|
1105
1153
|
case "secret":
|
|
1106
1154
|
return /* @__PURE__ */ t(J, { value: s, onChange: a, multiline: e.multiline });
|
|
1107
1155
|
case "tokenSymbolList":
|
|
1108
|
-
return /* @__PURE__ */ t(
|
|
1156
|
+
return /* @__PURE__ */ t(B, { value: s, onChange: a });
|
|
1109
1157
|
default:
|
|
1110
1158
|
return /* @__PURE__ */ t(
|
|
1111
1159
|
"input",
|
|
@@ -1119,7 +1167,7 @@ function x({ meta: e, value: s, onChange: a }) {
|
|
|
1119
1167
|
}
|
|
1120
1168
|
}
|
|
1121
1169
|
function F({ value: e, onChange: s, presets: a, min: r = 0 }) {
|
|
1122
|
-
const
|
|
1170
|
+
const i = parseInt(e, 10) || 0, l = I(i), p = d(
|
|
1123
1171
|
(o) => {
|
|
1124
1172
|
o.target.value && s(o.target.value);
|
|
1125
1173
|
},
|
|
@@ -1149,7 +1197,7 @@ function F({ value: e, onChange: s, presets: a, min: r = 0 }) {
|
|
|
1149
1197
|
"input",
|
|
1150
1198
|
{
|
|
1151
1199
|
type: "number",
|
|
1152
|
-
value:
|
|
1200
|
+
value: i,
|
|
1153
1201
|
onChange: n,
|
|
1154
1202
|
min: r,
|
|
1155
1203
|
className: "cedros-setting-input cedros-setting-input-sm"
|
|
@@ -1158,7 +1206,7 @@ function F({ value: e, onChange: s, presets: a, min: r = 0 }) {
|
|
|
1158
1206
|
/* @__PURE__ */ t("span", { className: "cedros-setting-unit", children: "seconds" }),
|
|
1159
1207
|
/* @__PURE__ */ u("span", { className: "cedros-duration-display", children: [
|
|
1160
1208
|
"= ",
|
|
1161
|
-
|
|
1209
|
+
l
|
|
1162
1210
|
] })
|
|
1163
1211
|
] })
|
|
1164
1212
|
] });
|
|
@@ -1168,8 +1216,8 @@ function W({
|
|
|
1168
1216
|
onChange: s,
|
|
1169
1217
|
min: a,
|
|
1170
1218
|
max: r,
|
|
1171
|
-
step:
|
|
1172
|
-
presets:
|
|
1219
|
+
step: i,
|
|
1220
|
+
presets: l
|
|
1173
1221
|
}) {
|
|
1174
1222
|
const p = parseInt(e, 10) || a, n = d(
|
|
1175
1223
|
(c) => {
|
|
@@ -1192,7 +1240,7 @@ function W({
|
|
|
1192
1240
|
onChange: n,
|
|
1193
1241
|
min: a,
|
|
1194
1242
|
max: r,
|
|
1195
|
-
step:
|
|
1243
|
+
step: i,
|
|
1196
1244
|
className: "cedros-percentage-slider"
|
|
1197
1245
|
}
|
|
1198
1246
|
),
|
|
@@ -1201,7 +1249,7 @@ function W({
|
|
|
1201
1249
|
"%"
|
|
1202
1250
|
] })
|
|
1203
1251
|
] }),
|
|
1204
|
-
|
|
1252
|
+
l && l.length > 0 && /* @__PURE__ */ t("div", { className: "cedros-preset-buttons", children: l.map((c) => /* @__PURE__ */ t(
|
|
1205
1253
|
"button",
|
|
1206
1254
|
{
|
|
1207
1255
|
type: "button",
|
|
@@ -1214,7 +1262,7 @@ function W({
|
|
|
1214
1262
|
] });
|
|
1215
1263
|
}
|
|
1216
1264
|
function q({ value: e, onChange: s, presets: a, unit: r }) {
|
|
1217
|
-
const
|
|
1265
|
+
const i = !a.some((n) => n.value === e), l = d(
|
|
1218
1266
|
(n) => {
|
|
1219
1267
|
n.target.value !== "__custom__" && s(n.target.value);
|
|
1220
1268
|
},
|
|
@@ -1229,8 +1277,8 @@ function q({ value: e, onChange: s, presets: a, unit: r }) {
|
|
|
1229
1277
|
/* @__PURE__ */ u(
|
|
1230
1278
|
"select",
|
|
1231
1279
|
{
|
|
1232
|
-
value:
|
|
1233
|
-
onChange:
|
|
1280
|
+
value: i ? "__custom__" : e,
|
|
1281
|
+
onChange: l,
|
|
1234
1282
|
className: "cedros-setting-select",
|
|
1235
1283
|
children: [
|
|
1236
1284
|
a.map((n) => /* @__PURE__ */ t("option", { value: n.value, children: n.label }, n.value)),
|
|
@@ -1238,7 +1286,7 @@ function q({ value: e, onChange: s, presets: a, unit: r }) {
|
|
|
1238
1286
|
]
|
|
1239
1287
|
}
|
|
1240
1288
|
),
|
|
1241
|
-
|
|
1289
|
+
i && /* @__PURE__ */ u("div", { className: "cedros-select-custom", children: [
|
|
1242
1290
|
/* @__PURE__ */ t(
|
|
1243
1291
|
"input",
|
|
1244
1292
|
{
|
|
@@ -1252,8 +1300,8 @@ function q({ value: e, onChange: s, presets: a, unit: r }) {
|
|
|
1252
1300
|
] })
|
|
1253
1301
|
] });
|
|
1254
1302
|
}
|
|
1255
|
-
function $({ value: e, onChange: s, min: a, max: r, unit:
|
|
1256
|
-
const
|
|
1303
|
+
function $({ value: e, onChange: s, min: a, max: r, unit: i }) {
|
|
1304
|
+
const l = d(
|
|
1257
1305
|
(p) => {
|
|
1258
1306
|
s(p.target.value);
|
|
1259
1307
|
},
|
|
@@ -1265,13 +1313,13 @@ function $({ value: e, onChange: s, min: a, max: r, unit: l }) {
|
|
|
1265
1313
|
{
|
|
1266
1314
|
type: "number",
|
|
1267
1315
|
value: e,
|
|
1268
|
-
onChange:
|
|
1316
|
+
onChange: l,
|
|
1269
1317
|
min: a,
|
|
1270
1318
|
max: r,
|
|
1271
1319
|
className: "cedros-setting-input"
|
|
1272
1320
|
}
|
|
1273
1321
|
),
|
|
1274
|
-
|
|
1322
|
+
i && /* @__PURE__ */ t("span", { className: "cedros-setting-unit", children: i })
|
|
1275
1323
|
] });
|
|
1276
1324
|
}
|
|
1277
1325
|
function j({ value: e, onChange: s }) {
|
|
@@ -1294,10 +1342,10 @@ function j({ value: e, onChange: s }) {
|
|
|
1294
1342
|
);
|
|
1295
1343
|
}
|
|
1296
1344
|
function J({ value: e, onChange: s, multiline: a }) {
|
|
1297
|
-
const [r,
|
|
1298
|
-
|
|
1345
|
+
const [r, i] = w(!1), [l, p] = w(!1), n = e && e.length > 0, o = d(() => {
|
|
1346
|
+
i(!0), p(!0);
|
|
1299
1347
|
}, []), c = d(() => {
|
|
1300
|
-
|
|
1348
|
+
i(!1), p(!1);
|
|
1301
1349
|
}, []), m = d(
|
|
1302
1350
|
(y) => {
|
|
1303
1351
|
s(y.target.value);
|
|
@@ -1320,7 +1368,7 @@ function J({ value: e, onChange: s, multiline: a }) {
|
|
|
1320
1368
|
) : /* @__PURE__ */ t(
|
|
1321
1369
|
"input",
|
|
1322
1370
|
{
|
|
1323
|
-
type:
|
|
1371
|
+
type: l ? "text" : "password",
|
|
1324
1372
|
value: e,
|
|
1325
1373
|
onChange: m,
|
|
1326
1374
|
className: "cedros-setting-input",
|
|
@@ -1333,16 +1381,16 @@ function J({ value: e, onChange: s, multiline: a }) {
|
|
|
1333
1381
|
{
|
|
1334
1382
|
type: "button",
|
|
1335
1383
|
className: "cedros-secret-toggle-btn",
|
|
1336
|
-
onClick: () => p(!
|
|
1337
|
-
children:
|
|
1384
|
+
onClick: () => p(!l),
|
|
1385
|
+
children: l ? "Hide" : "Show"
|
|
1338
1386
|
}
|
|
1339
1387
|
),
|
|
1340
1388
|
r && /* @__PURE__ */ t("button", { type: "button", className: "cedros-secret-done-btn", onClick: c, children: "Done" })
|
|
1341
1389
|
] })
|
|
1342
1390
|
] });
|
|
1343
1391
|
}
|
|
1344
|
-
function
|
|
1345
|
-
const a =
|
|
1392
|
+
function G({ value: e, onChange: s }) {
|
|
1393
|
+
const a = S(() => {
|
|
1346
1394
|
try {
|
|
1347
1395
|
return JSON.parse(e || "[]");
|
|
1348
1396
|
} catch {
|
|
@@ -1353,9 +1401,9 @@ function B({ value: e, onChange: s }) {
|
|
|
1353
1401
|
s(JSON.stringify(n));
|
|
1354
1402
|
},
|
|
1355
1403
|
[s]
|
|
1356
|
-
),
|
|
1404
|
+
), i = d(() => {
|
|
1357
1405
|
r([...a, { symbol: "", mint: "", decimals: 6 }]);
|
|
1358
|
-
}, [a, r]),
|
|
1406
|
+
}, [a, r]), l = d(
|
|
1359
1407
|
(n, o, c) => {
|
|
1360
1408
|
const m = [...a];
|
|
1361
1409
|
m[n] = { ...m[n], [o]: c }, r(m);
|
|
@@ -1370,7 +1418,7 @@ function B({ value: e, onChange: s }) {
|
|
|
1370
1418
|
return /* @__PURE__ */ u("div", { className: "cedros-token-list-input", children: [
|
|
1371
1419
|
/* @__PURE__ */ u("div", { className: "cedros-token-presets", children: [
|
|
1372
1420
|
/* @__PURE__ */ t("span", { className: "cedros-token-presets-label", children: "Built-in tokens:" }),
|
|
1373
|
-
/* @__PURE__ */ t("div", { className: "cedros-token-presets-list", children:
|
|
1421
|
+
/* @__PURE__ */ t("div", { className: "cedros-token-presets-list", children: A.map((n) => /* @__PURE__ */ t("span", { className: "cedros-token-preset-chip", children: n }, n)) })
|
|
1374
1422
|
] }),
|
|
1375
1423
|
a.length === 0 && /* @__PURE__ */ t("p", { className: "cedros-token-list-empty", children: "No custom tokens added. Use the built-in tokens above or add your own." }),
|
|
1376
1424
|
a.map((n, o) => /* @__PURE__ */ u("div", { className: "cedros-token-row", children: [
|
|
@@ -1381,7 +1429,7 @@ function B({ value: e, onChange: s }) {
|
|
|
1381
1429
|
type: "text",
|
|
1382
1430
|
placeholder: "Symbol",
|
|
1383
1431
|
value: n.symbol,
|
|
1384
|
-
onChange: (c) =>
|
|
1432
|
+
onChange: (c) => l(o, "symbol", c.target.value.toUpperCase()),
|
|
1385
1433
|
className: "cedros-setting-input cedros-token-input-symbol",
|
|
1386
1434
|
maxLength: 10
|
|
1387
1435
|
}
|
|
@@ -1392,7 +1440,7 @@ function B({ value: e, onChange: s }) {
|
|
|
1392
1440
|
type: "text",
|
|
1393
1441
|
placeholder: "Mint address",
|
|
1394
1442
|
value: n.mint,
|
|
1395
|
-
onChange: (c) =>
|
|
1443
|
+
onChange: (c) => l(o, "mint", c.target.value),
|
|
1396
1444
|
className: "cedros-setting-input cedros-token-input-mint"
|
|
1397
1445
|
}
|
|
1398
1446
|
),
|
|
@@ -1402,7 +1450,7 @@ function B({ value: e, onChange: s }) {
|
|
|
1402
1450
|
type: "number",
|
|
1403
1451
|
placeholder: "Decimals",
|
|
1404
1452
|
value: n.decimals,
|
|
1405
|
-
onChange: (c) =>
|
|
1453
|
+
onChange: (c) => l(o, "decimals", parseInt(c.target.value, 10) || 0),
|
|
1406
1454
|
className: "cedros-setting-input cedros-token-input-decimals",
|
|
1407
1455
|
min: 0,
|
|
1408
1456
|
max: 18
|
|
@@ -1414,7 +1462,7 @@ function B({ value: e, onChange: s }) {
|
|
|
1414
1462
|
type: "text",
|
|
1415
1463
|
placeholder: "Logo URL (optional)",
|
|
1416
1464
|
value: n.logoUrl || "",
|
|
1417
|
-
onChange: (c) =>
|
|
1465
|
+
onChange: (c) => l(o, "logoUrl", c.target.value || void 0),
|
|
1418
1466
|
className: "cedros-setting-input cedros-token-input-logo"
|
|
1419
1467
|
}
|
|
1420
1468
|
)
|
|
@@ -1430,20 +1478,20 @@ function B({ value: e, onChange: s }) {
|
|
|
1430
1478
|
}
|
|
1431
1479
|
)
|
|
1432
1480
|
] }, o)),
|
|
1433
|
-
/* @__PURE__ */ t("button", { type: "button", className: "cedros-token-add-btn", onClick:
|
|
1481
|
+
/* @__PURE__ */ t("button", { type: "button", className: "cedros-token-add-btn", onClick: i, children: "+ Add Token" })
|
|
1434
1482
|
] });
|
|
1435
1483
|
}
|
|
1436
|
-
function
|
|
1437
|
-
const a =
|
|
1438
|
-
(
|
|
1439
|
-
if (!
|
|
1440
|
-
const p = [...a,
|
|
1484
|
+
function B({ value: e, onChange: s }) {
|
|
1485
|
+
const a = S(() => e.split(",").map((l) => l.trim()).filter(Boolean), [e]), r = d(
|
|
1486
|
+
(l) => {
|
|
1487
|
+
if (!l || a.includes(l)) return;
|
|
1488
|
+
const p = [...a, l].join(", ");
|
|
1441
1489
|
s(p);
|
|
1442
1490
|
},
|
|
1443
1491
|
[a, s]
|
|
1444
|
-
),
|
|
1445
|
-
(
|
|
1446
|
-
const p = a.filter((n) => n !==
|
|
1492
|
+
), i = d(
|
|
1493
|
+
(l) => {
|
|
1494
|
+
const p = a.filter((n) => n !== l).join(", ");
|
|
1447
1495
|
s(p);
|
|
1448
1496
|
},
|
|
1449
1497
|
[a, s]
|
|
@@ -1451,21 +1499,21 @@ function G({ value: e, onChange: s }) {
|
|
|
1451
1499
|
return /* @__PURE__ */ u("div", { className: "cedros-token-symbol-list-input", children: [
|
|
1452
1500
|
/* @__PURE__ */ u("div", { className: "cedros-token-presets", children: [
|
|
1453
1501
|
/* @__PURE__ */ t("span", { className: "cedros-token-presets-label", children: "Click to add:" }),
|
|
1454
|
-
/* @__PURE__ */ t("div", { className: "cedros-token-presets-list", children:
|
|
1455
|
-
const p = a.includes(
|
|
1502
|
+
/* @__PURE__ */ t("div", { className: "cedros-token-presets-list", children: A.map((l) => {
|
|
1503
|
+
const p = a.includes(l);
|
|
1456
1504
|
return /* @__PURE__ */ u(
|
|
1457
1505
|
"button",
|
|
1458
1506
|
{
|
|
1459
1507
|
type: "button",
|
|
1460
1508
|
className: `cedros-token-preset-chip ${p ? "cedros-token-preset-chip-selected" : ""}`,
|
|
1461
|
-
onClick: () => p ? l
|
|
1462
|
-
title: p ? `Remove ${
|
|
1509
|
+
onClick: () => p ? i(l) : r(l),
|
|
1510
|
+
title: p ? `Remove ${l}` : `Add ${l}`,
|
|
1463
1511
|
children: [
|
|
1464
|
-
|
|
1512
|
+
l,
|
|
1465
1513
|
p && /* @__PURE__ */ t("span", { className: "cedros-token-chip-check", children: "✓" })
|
|
1466
1514
|
]
|
|
1467
1515
|
},
|
|
1468
|
-
|
|
1516
|
+
l
|
|
1469
1517
|
);
|
|
1470
1518
|
}) })
|
|
1471
1519
|
] }),
|
|
@@ -1474,7 +1522,7 @@ function G({ value: e, onChange: s }) {
|
|
|
1474
1522
|
{
|
|
1475
1523
|
type: "text",
|
|
1476
1524
|
value: e,
|
|
1477
|
-
onChange: (
|
|
1525
|
+
onChange: (l) => s(l.target.value),
|
|
1478
1526
|
className: "cedros-setting-input",
|
|
1479
1527
|
placeholder: "USDC, SOL, BONK..."
|
|
1480
1528
|
}
|
|
@@ -1483,11 +1531,11 @@ function G({ value: e, onChange: s }) {
|
|
|
1483
1531
|
}
|
|
1484
1532
|
const H = 800, V = 2e3;
|
|
1485
1533
|
function Z() {
|
|
1486
|
-
const { settings: e, isLoading: s, error: a, fetchSettings: r, updateSettings:
|
|
1534
|
+
const { settings: e, isLoading: s, error: a, fetchSettings: r, updateSettings: i } = E(), [l, p] = w({}), [n, o] = w("idle"), [c, m] = w(null), y = T(null), _ = T(null), k = T({});
|
|
1487
1535
|
O(() => () => {
|
|
1488
1536
|
y.current && clearTimeout(y.current), _.current && clearTimeout(_.current);
|
|
1489
1537
|
}, []);
|
|
1490
|
-
const
|
|
1538
|
+
const P = d(async () => {
|
|
1491
1539
|
const h = { ...k.current };
|
|
1492
1540
|
if (Object.keys(h).length === 0) {
|
|
1493
1541
|
o("idle");
|
|
@@ -1499,7 +1547,7 @@ function Z() {
|
|
|
1499
1547
|
value: g
|
|
1500
1548
|
}));
|
|
1501
1549
|
try {
|
|
1502
|
-
await
|
|
1550
|
+
await i(v), p((b) => {
|
|
1503
1551
|
const g = { ...b };
|
|
1504
1552
|
for (const D of Object.keys(h))
|
|
1505
1553
|
delete g[D];
|
|
@@ -1513,33 +1561,33 @@ function Z() {
|
|
|
1513
1561
|
} catch (b) {
|
|
1514
1562
|
o("error"), m(b instanceof Error ? b.message : "Failed to save");
|
|
1515
1563
|
}
|
|
1516
|
-
}, [
|
|
1564
|
+
}, [i]), C = d(
|
|
1517
1565
|
(h, v) => {
|
|
1518
1566
|
p((b) => ({ ...b, [h]: v })), k.current[h] = v, m(null), o("pending"), y.current && clearTimeout(y.current), y.current = setTimeout(() => {
|
|
1519
|
-
|
|
1567
|
+
P();
|
|
1520
1568
|
}, H);
|
|
1521
1569
|
},
|
|
1522
|
-
[
|
|
1570
|
+
[P]
|
|
1523
1571
|
), L = d(
|
|
1524
1572
|
(h) => {
|
|
1525
|
-
if (
|
|
1573
|
+
if (l[h] !== void 0) return l[h];
|
|
1526
1574
|
for (const v of Object.values(e)) {
|
|
1527
1575
|
const b = v.find((g) => g.key === h);
|
|
1528
1576
|
if (b) return b.value;
|
|
1529
1577
|
}
|
|
1530
1578
|
return "";
|
|
1531
1579
|
},
|
|
1532
|
-
[
|
|
1580
|
+
[l, e]
|
|
1533
1581
|
);
|
|
1534
1582
|
return {
|
|
1535
1583
|
settings: e,
|
|
1536
|
-
edits:
|
|
1584
|
+
edits: l,
|
|
1537
1585
|
isLoading: s,
|
|
1538
1586
|
autosaveStatus: n,
|
|
1539
1587
|
autosaveError: c,
|
|
1540
1588
|
error: a,
|
|
1541
1589
|
fetchSettings: r,
|
|
1542
|
-
handleChange:
|
|
1590
|
+
handleChange: C,
|
|
1543
1591
|
getEffectiveValue: L
|
|
1544
1592
|
};
|
|
1545
1593
|
}
|
|
@@ -1567,6 +1615,6 @@ export {
|
|
|
1567
1615
|
ee as A,
|
|
1568
1616
|
X as C,
|
|
1569
1617
|
Q as S,
|
|
1570
|
-
|
|
1618
|
+
M as a,
|
|
1571
1619
|
Z as u
|
|
1572
1620
|
};
|