@cedros/login-react 0.0.41 → 0.0.42
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/dist/{AuthenticationSettings-D4ExU-2a.js → AuthenticationSettings-CheE3j7w.js} +1 -1
- package/dist/{AuthenticationSettings-D4ExU-2a.js.map → AuthenticationSettings-CheE3j7w.js.map} +1 -1
- package/dist/{AuthenticationSettings-Cu5Z2mTC.cjs → AuthenticationSettings-Dl41GbJL.cjs} +1 -1
- package/dist/{AuthenticationSettings-Cu5Z2mTC.cjs.map → AuthenticationSettings-Dl41GbJL.cjs.map} +1 -1
- package/dist/{AuthenticationSettings-CSoFp-_2.js → AuthenticationSettings-DwSxgjbH.js} +1 -1
- package/dist/{AuthenticationSettings-CSoFp-_2.js.map → AuthenticationSettings-DwSxgjbH.js.map} +1 -1
- package/dist/{AuthenticationSettings-DABzZHuI.cjs → AuthenticationSettings-JxHsBst9.cjs} +1 -1
- package/dist/{AuthenticationSettings-DABzZHuI.cjs.map → AuthenticationSettings-JxHsBst9.cjs.map} +1 -1
- package/dist/AutosaveStatus-BMXjH1XN.cjs +1 -0
- package/dist/AutosaveStatus-BMXjH1XN.cjs.map +1 -0
- package/dist/{AutosaveStatus-DMjvXzP2.js → AutosaveStatus-DNuCl59W.js} +578 -284
- package/dist/AutosaveStatus-DNuCl59W.js.map +1 -0
- package/dist/{CreditSystemSettings-DfSfQVE8.cjs → CreditSystemSettings-BVgl6uUg.cjs} +1 -1
- package/dist/{CreditSystemSettings-DfSfQVE8.cjs.map → CreditSystemSettings-BVgl6uUg.cjs.map} +1 -1
- package/dist/{CreditSystemSettings-Du3ac0ID.js → CreditSystemSettings-C-ksysSx.js} +1 -1
- package/dist/{CreditSystemSettings-Du3ac0ID.js.map → CreditSystemSettings-C-ksysSx.js.map} +1 -1
- package/dist/{CreditSystemSettings-BjQdysRS.js → CreditSystemSettings-HSdF2_CY.js} +1 -1
- package/dist/{CreditSystemSettings-BjQdysRS.js.map → CreditSystemSettings-HSdF2_CY.js.map} +1 -1
- package/dist/{CreditSystemSettings-BWuiRTtA.cjs → CreditSystemSettings-LvA8rb17.cjs} +1 -1
- package/dist/{CreditSystemSettings-BWuiRTtA.cjs.map → CreditSystemSettings-LvA8rb17.cjs.map} +1 -1
- package/dist/{EmailRegisterForm-CMXsa-_r.js → EmailRegisterForm-p2X5QP58.js} +147 -147
- package/dist/EmailRegisterForm-p2X5QP58.js.map +1 -0
- package/dist/EmailRegisterForm-xFb6MaVA.cjs +1 -0
- package/dist/EmailRegisterForm-xFb6MaVA.cjs.map +1 -0
- package/dist/{EmailSettings-CjngJwDS.js → EmailSettings-Cy1cuVUq.js} +1 -1
- package/dist/{EmailSettings-CjngJwDS.js.map → EmailSettings-Cy1cuVUq.js.map} +1 -1
- package/dist/{EmailSettings-BcHo0cqk.cjs → EmailSettings-DC_zT4nI.cjs} +1 -1
- package/dist/{EmailSettings-BcHo0cqk.cjs.map → EmailSettings-DC_zT4nI.cjs.map} +1 -1
- package/dist/{EmailSettings-CswtKXhb.cjs → EmailSettings-QBMzpbxv.cjs} +1 -1
- package/dist/{EmailSettings-CswtKXhb.cjs.map → EmailSettings-QBMzpbxv.cjs.map} +1 -1
- package/dist/{EmailSettings-ASDHfI0K.js → EmailSettings-hIhJzux0.js} +1 -1
- package/dist/{EmailSettings-ASDHfI0K.js.map → EmailSettings-hIhJzux0.js.map} +1 -1
- package/dist/{EmbeddedWalletSettings-BkwIbTkL.cjs → EmbeddedWalletSettings-4qC9KBwh.cjs} +1 -1
- package/dist/{EmbeddedWalletSettings-BkwIbTkL.cjs.map → EmbeddedWalletSettings-4qC9KBwh.cjs.map} +1 -1
- package/dist/{EmbeddedWalletSettings-BXlboZ9-.cjs → EmbeddedWalletSettings-C81QQMWz.cjs} +1 -1
- package/dist/{EmbeddedWalletSettings-BXlboZ9-.cjs.map → EmbeddedWalletSettings-C81QQMWz.cjs.map} +1 -1
- package/dist/{EmbeddedWalletSettings-CPLbqlxJ.js → EmbeddedWalletSettings-CvvTnRvt.js} +1 -1
- package/dist/{EmbeddedWalletSettings-CPLbqlxJ.js.map → EmbeddedWalletSettings-CvvTnRvt.js.map} +1 -1
- package/dist/{EmbeddedWalletSettings-CUY_X7Vj.js → EmbeddedWalletSettings-Cwiug0vR.js} +1 -1
- package/dist/{EmbeddedWalletSettings-CUY_X7Vj.js.map → EmbeddedWalletSettings-Cwiug0vR.js.map} +1 -1
- package/dist/GoogleLoginButton-2zNTIKMm.cjs +1 -0
- package/dist/GoogleLoginButton-2zNTIKMm.cjs.map +1 -0
- package/dist/{GoogleLoginButton-qf4A_A3G.js → GoogleLoginButton-C1WNu7W3.js} +41 -40
- package/dist/GoogleLoginButton-C1WNu7W3.js.map +1 -0
- package/dist/LoadingSpinner-6vml-zwr.js.map +1 -1
- package/dist/LoadingSpinner-d6sSxgQN.cjs.map +1 -1
- package/dist/{PermissionsSection-BeFhIgQy.js → PermissionsSection-BDDiEfho.js} +81 -77
- package/dist/{PermissionsSection-BeFhIgQy.js.map → PermissionsSection-BDDiEfho.js.map} +1 -1
- package/dist/PermissionsSection-CSB_Ikj9.cjs +1 -0
- package/dist/{PermissionsSection-B-6DJnN8.cjs.map → PermissionsSection-CSB_Ikj9.cjs.map} +1 -1
- package/dist/{ServerSettings-BygCxOTY.cjs → ServerSettings-BV0SipW1.cjs} +1 -1
- package/dist/{ServerSettings-BygCxOTY.cjs.map → ServerSettings-BV0SipW1.cjs.map} +1 -1
- package/dist/{ServerSettings-CgBdYspU.cjs → ServerSettings-Bf7gFE8r.cjs} +1 -1
- package/dist/{ServerSettings-CgBdYspU.cjs.map → ServerSettings-Bf7gFE8r.cjs.map} +1 -1
- package/dist/{ServerSettings-BLoWX7KG.js → ServerSettings-DPqHtsgV.js} +1 -1
- package/dist/{ServerSettings-BLoWX7KG.js.map → ServerSettings-DPqHtsgV.js.map} +1 -1
- package/dist/{ServerSettings-B9PNMse1.js → ServerSettings-Sfr0CG6K.js} +1 -1
- package/dist/{ServerSettings-B9PNMse1.js.map → ServerSettings-Sfr0CG6K.js.map} +1 -1
- package/dist/SolanaLoginButton-CqdzSSeJ.cjs +1 -0
- package/dist/SolanaLoginButton-CqdzSSeJ.cjs.map +1 -0
- package/dist/{SolanaLoginButton-B04dib6X.js → SolanaLoginButton-CyeX35eU.js} +41 -40
- package/dist/SolanaLoginButton-CyeX35eU.js.map +1 -0
- package/dist/{TeamSection-DbSYDRdI.js → TeamSection-BhsBEckR.js} +1 -1
- package/dist/{TeamSection-DbSYDRdI.js.map → TeamSection-BhsBEckR.js.map} +1 -1
- package/dist/{TeamSection-B1t1tU-_.cjs → TeamSection-DLxtRmta.cjs} +1 -1
- package/dist/{TeamSection-B1t1tU-_.cjs.map → TeamSection-DLxtRmta.cjs.map} +1 -1
- package/dist/{UsersSection-C7aRNkK2.cjs → UsersSection-BEKfbhQ4.cjs} +1 -1
- package/dist/{UsersSection-C7aRNkK2.cjs.map → UsersSection-BEKfbhQ4.cjs.map} +1 -1
- package/dist/{UsersSection--PAE1XRh.js → UsersSection-DbGkmxty.js} +1 -1
- package/dist/{UsersSection--PAE1XRh.js.map → UsersSection-DbGkmxty.js.map} +1 -1
- package/dist/{WebhookSettings-D19u9Uok.cjs → WebhookSettings-BPCKv5Or.cjs} +1 -1
- package/dist/{WebhookSettings-D19u9Uok.cjs.map → WebhookSettings-BPCKv5Or.cjs.map} +1 -1
- package/dist/{WebhookSettings-C923ZSKa.js → WebhookSettings-CMROMCFT.js} +1 -1
- package/dist/{WebhookSettings-C923ZSKa.js.map → WebhookSettings-CMROMCFT.js.map} +1 -1
- package/dist/{WebhookSettings-CbU3cfTJ.cjs → WebhookSettings-Cj-iELGa.cjs} +1 -1
- package/dist/{WebhookSettings-CbU3cfTJ.cjs.map → WebhookSettings-Cj-iELGa.cjs.map} +1 -1
- package/dist/{WebhookSettings-C-7Yxueu.js → WebhookSettings-D4mKAWAg.js} +1 -1
- package/dist/{WebhookSettings-C-7Yxueu.js.map → WebhookSettings-D4mKAWAg.js.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 +6 -0
- package/dist/email-only.js +2 -2
- package/dist/google-only.cjs +1 -1
- package/dist/google-only.d.ts +6 -0
- package/dist/google-only.js +2 -2
- package/dist/index.cjs +13 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +411 -1
- package/dist/index.js +5175 -4054
- package/dist/index.js.map +1 -1
- package/dist/plugin-BHGg7ius.cjs +1 -0
- package/dist/plugin-BHGg7ius.cjs.map +1 -0
- package/dist/{plugin-BiftIhZe.js → plugin-CK2d7aP5.js} +3 -2
- package/dist/plugin-CK2d7aP5.js.map +1 -0
- package/dist/solana-only.cjs +1 -1
- package/dist/solana-only.d.ts +6 -0
- package/dist/solana-only.js +2 -2
- package/dist/useAuth-B1yS_YiD.cjs +1 -0
- package/dist/{useAuth-U5CYsHEU.cjs.map → useAuth-B1yS_YiD.cjs.map} +1 -1
- package/dist/{useAuth-C-Vw-ggy.js → useAuth-l-itM5am.js} +440 -433
- package/dist/{useAuth-C-Vw-ggy.js.map → useAuth-l-itM5am.js.map} +1 -1
- package/dist/useUsersStatsSummary-9HQDKBU5.js +1879 -0
- package/dist/useUsersStatsSummary-9HQDKBU5.js.map +1 -0
- package/dist/useUsersStatsSummary-DiRC8sGs.cjs +1 -0
- package/dist/useUsersStatsSummary-DiRC8sGs.cjs.map +1 -0
- package/package.json +1 -1
- package/dist/AutosaveStatus-B1A1zORa.cjs +0 -1
- package/dist/AutosaveStatus-B1A1zORa.cjs.map +0 -1
- package/dist/AutosaveStatus-DMjvXzP2.js.map +0 -1
- package/dist/EmailRegisterForm-CMXsa-_r.js.map +0 -1
- package/dist/EmailRegisterForm-i7f4St2N.cjs +0 -1
- package/dist/EmailRegisterForm-i7f4St2N.cjs.map +0 -1
- package/dist/GoogleLoginButton-JtRViYWS.cjs +0 -1
- package/dist/GoogleLoginButton-JtRViYWS.cjs.map +0 -1
- package/dist/GoogleLoginButton-qf4A_A3G.js.map +0 -1
- package/dist/PermissionsSection-B-6DJnN8.cjs +0 -1
- package/dist/SolanaLoginButton-B04dib6X.js.map +0 -1
- package/dist/SolanaLoginButton-nSJHVFpZ.cjs +0 -1
- package/dist/SolanaLoginButton-nSJHVFpZ.cjs.map +0 -1
- package/dist/plugin-BiftIhZe.js.map +0 -1
- package/dist/plugin-BtQdI_Ay.cjs +0 -1
- package/dist/plugin-BtQdI_Ay.cjs.map +0 -1
- package/dist/useAuth-U5CYsHEU.cjs +0 -1
- package/dist/useUsersStatsSummary-5DJwzntC.js +0 -1246
- package/dist/useUsersStatsSummary-5DJwzntC.js.map +0 -1
- package/dist/useUsersStatsSummary-DgKaUIfs.cjs +0 -1
- package/dist/useUsersStatsSummary-DgKaUIfs.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TeamSection-B1t1tU-_.cjs","sources":["../src/admin/sections/TeamSection.tsx"],"sourcesContent":["/**\n * Team Section - Plugin wrapper\n *\n * Combined team member management and invites for organizations.\n */\n\nimport React, { useMemo, useState, useEffect } from 'react';\nimport type { AdminSectionProps } from '../types';\nimport { MemberList } from '../../components/members/MemberList';\nimport { InviteForm } from '../../components/invites/InviteForm';\nimport { InviteList } from '../../components/invites/InviteList';\nimport { StatsBar } from '../../components/admin/StatsBar';\nimport { PermissionsSection } from '../../components/admin/PermissionsSection';\nimport { useOrgs } from '../../hooks/useOrgs';\nimport { useMembers } from '../../hooks/useMembers';\nimport { useInvites } from '../../hooks/useInvites';\n\ntype TeamTab = 'members' | 'invites' | 'permissions';\n\nexport default function TeamSection({ pluginContext }: AdminSectionProps): React.JSX.Element {\n const [activeTab, setActiveTab] = useState<TeamTab>('members');\n const {\n activeOrg,\n hasPermission,\n role,\n isLoading: orgsLoading,\n error: orgsError,\n fetchOrgs,\n } = useOrgs();\n\n const {\n members,\n isLoading: membersLoading,\n error: membersError,\n fetchMembers,\n updateMemberRole,\n removeMember,\n } = useMembers(activeOrg?.id ?? '');\n const {\n invites,\n isLoading: invitesLoading,\n error: invitesError,\n fetchInvites,\n createInvite,\n cancelInvite,\n resendInvite,\n } = useInvites(activeOrg?.id ?? '');\n\n useEffect(() => {\n if (activeOrg?.id) {\n fetchMembers();\n fetchInvites();\n }\n }, [activeOrg?.id, fetchMembers, fetchInvites]);\n\n // P-01: Compute role counts BEFORE any early return to follow React Hooks rules\n const roleCounts = useMemo(\n () =>\n members.reduce(\n (acc, member) => {\n acc[member.role] = (acc[member.role] ?? 0) + 1;\n return acc;\n },\n {} as Record<string, number>\n ),\n [members]\n );\n\n if (orgsLoading && !activeOrg) {\n return (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__empty\">\n <span className=\"cedros-admin-loading-indicator\" />\n <span className=\"cedros-admin-loading-text\">Loading organization...</span>\n </div>\n </div>\n );\n }\n\n if (orgsError && !activeOrg) {\n return (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__empty\">\n <p className=\"cedros-admin-error\">{orgsError.message}</p>\n <button type=\"button\" className=\"cedros-button cedros-button-outline\" onClick={fetchOrgs}>\n Retry\n </button>\n </div>\n </div>\n );\n }\n\n if (!activeOrg) {\n return (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__empty\">No organizations found.</div>\n </div>\n );\n }\n\n const canInvite = hasPermission('invite:create');\n const canCancel = hasPermission('invite:cancel');\n const pendingCount = invites.length;\n const ownerCount = roleCounts.owner ?? 0;\n const adminCount = roleCounts.admin ?? 0;\n const memberCount = roleCounts.member ?? 0;\n\n return (\n <div className=\"cedros-dashboard__team\">\n <StatsBar\n stats={[\n { label: 'Owners', value: ownerCount },\n { label: 'Admins', value: adminCount },\n { label: 'Members', value: memberCount },\n { label: 'Pending Invites', value: pendingCount },\n ]}\n />\n {/* Tabs */}\n <div className=\"cedros-admin-tabs cedros-admin-tabs--line\">\n <button\n type=\"button\"\n className={`cedros-admin-tab ${activeTab === 'members' ? 'cedros-admin-tab-active' : ''}`}\n onClick={() => setActiveTab('members')}\n aria-selected={activeTab === 'members'}\n role=\"tab\"\n >\n Members\n </button>\n <button\n type=\"button\"\n className={`cedros-admin-tab ${activeTab === 'invites' ? 'cedros-admin-tab-active' : ''}`}\n onClick={() => setActiveTab('invites')}\n aria-selected={activeTab === 'invites'}\n role=\"tab\"\n >\n Pending Invites{pendingCount > 0 && ` (${pendingCount})`}\n </button>\n {role === 'owner' && (\n <button\n type=\"button\"\n className={`cedros-admin-tab ${activeTab === 'permissions' ? 'cedros-admin-tab-active' : ''}`}\n onClick={() => setActiveTab('permissions')}\n aria-selected={activeTab === 'permissions'}\n role=\"tab\"\n >\n Permissions\n </button>\n )}\n </div>\n\n {/* Tab content */}\n <div className=\"cedros-admin-tab-content\" role=\"tabpanel\">\n {activeTab === 'members' && (\n <MemberList\n members={members}\n currentUserId={pluginContext.userId}\n isLoading={membersLoading}\n error={membersError?.message}\n canManage={hasPermission('member:remove')}\n canChangeRoles={hasPermission('member:role_change')}\n onUpdateRole={updateMemberRole}\n onRemove={removeMember}\n />\n )}\n\n {activeTab === 'invites' && (\n <div className=\"cedros-dashboard__invites\">\n {canInvite && (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__section-header\">\n <h3 className=\"cedros-dashboard__section-title\">Send Invitation</h3>\n </div>\n <InviteForm\n onSubmit={createInvite}\n isLoading={invitesLoading}\n error={invitesError?.message}\n />\n </div>\n )}\n\n <div className=\"cedros-dashboard__section\">\n <InviteList\n invites={invites}\n isLoading={invitesLoading}\n error={invitesError?.message}\n canManage={canCancel || canInvite}\n onCancel={canCancel ? cancelInvite : undefined}\n onResend={canInvite ? resendInvite : undefined}\n />\n </div>\n </div>\n )}\n\n {activeTab === 'permissions' && role === 'owner' && <PermissionsSection userRole={role} />}\n </div>\n </div>\n );\n}\n"],"names":["TeamSection","pluginContext","activeTab","setActiveTab","useState","activeOrg","hasPermission","role","orgsLoading","orgsError","fetchOrgs","useOrgs","members","membersLoading","membersError","fetchMembers","updateMemberRole","removeMember","useMembers","invites","invitesLoading","invitesError","fetchInvites","createInvite","cancelInvite","resendInvite","useInvites","useEffect","roleCounts","useMemo","acc","member","jsxs","jsx","canInvite","canCancel","pendingCount","ownerCount","adminCount","memberCount","StatsBar","MemberList","InviteForm","InviteList","PermissionsSection"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TeamSection-DLxtRmta.cjs","sources":["../src/admin/sections/TeamSection.tsx"],"sourcesContent":["/**\n * Team Section - Plugin wrapper\n *\n * Combined team member management and invites for organizations.\n */\n\nimport React, { useMemo, useState, useEffect } from 'react';\nimport type { AdminSectionProps } from '../types';\nimport { MemberList } from '../../components/members/MemberList';\nimport { InviteForm } from '../../components/invites/InviteForm';\nimport { InviteList } from '../../components/invites/InviteList';\nimport { StatsBar } from '../../components/admin/StatsBar';\nimport { PermissionsSection } from '../../components/admin/PermissionsSection';\nimport { useOrgs } from '../../hooks/useOrgs';\nimport { useMembers } from '../../hooks/useMembers';\nimport { useInvites } from '../../hooks/useInvites';\n\ntype TeamTab = 'members' | 'invites' | 'permissions';\n\nexport default function TeamSection({ pluginContext }: AdminSectionProps): React.JSX.Element {\n const [activeTab, setActiveTab] = useState<TeamTab>('members');\n const {\n activeOrg,\n hasPermission,\n role,\n isLoading: orgsLoading,\n error: orgsError,\n fetchOrgs,\n } = useOrgs();\n\n const {\n members,\n isLoading: membersLoading,\n error: membersError,\n fetchMembers,\n updateMemberRole,\n removeMember,\n } = useMembers(activeOrg?.id ?? '');\n const {\n invites,\n isLoading: invitesLoading,\n error: invitesError,\n fetchInvites,\n createInvite,\n cancelInvite,\n resendInvite,\n } = useInvites(activeOrg?.id ?? '');\n\n useEffect(() => {\n if (activeOrg?.id) {\n fetchMembers();\n fetchInvites();\n }\n }, [activeOrg?.id, fetchMembers, fetchInvites]);\n\n // P-01: Compute role counts BEFORE any early return to follow React Hooks rules\n const roleCounts = useMemo(\n () =>\n members.reduce(\n (acc, member) => {\n acc[member.role] = (acc[member.role] ?? 0) + 1;\n return acc;\n },\n {} as Record<string, number>\n ),\n [members]\n );\n\n if (orgsLoading && !activeOrg) {\n return (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__empty\">\n <span className=\"cedros-admin-loading-indicator\" />\n <span className=\"cedros-admin-loading-text\">Loading organization...</span>\n </div>\n </div>\n );\n }\n\n if (orgsError && !activeOrg) {\n return (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__empty\">\n <p className=\"cedros-admin-error\">{orgsError.message}</p>\n <button type=\"button\" className=\"cedros-button cedros-button-outline\" onClick={fetchOrgs}>\n Retry\n </button>\n </div>\n </div>\n );\n }\n\n if (!activeOrg) {\n return (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__empty\">No organizations found.</div>\n </div>\n );\n }\n\n const canInvite = hasPermission('invite:create');\n const canCancel = hasPermission('invite:cancel');\n const pendingCount = invites.length;\n const ownerCount = roleCounts.owner ?? 0;\n const adminCount = roleCounts.admin ?? 0;\n const memberCount = roleCounts.member ?? 0;\n\n return (\n <div className=\"cedros-dashboard__team\">\n <StatsBar\n stats={[\n { label: 'Owners', value: ownerCount },\n { label: 'Admins', value: adminCount },\n { label: 'Members', value: memberCount },\n { label: 'Pending Invites', value: pendingCount },\n ]}\n />\n {/* Tabs */}\n <div className=\"cedros-admin-tabs cedros-admin-tabs--line\">\n <button\n type=\"button\"\n className={`cedros-admin-tab ${activeTab === 'members' ? 'cedros-admin-tab-active' : ''}`}\n onClick={() => setActiveTab('members')}\n aria-selected={activeTab === 'members'}\n role=\"tab\"\n >\n Members\n </button>\n <button\n type=\"button\"\n className={`cedros-admin-tab ${activeTab === 'invites' ? 'cedros-admin-tab-active' : ''}`}\n onClick={() => setActiveTab('invites')}\n aria-selected={activeTab === 'invites'}\n role=\"tab\"\n >\n Pending Invites{pendingCount > 0 && ` (${pendingCount})`}\n </button>\n {role === 'owner' && (\n <button\n type=\"button\"\n className={`cedros-admin-tab ${activeTab === 'permissions' ? 'cedros-admin-tab-active' : ''}`}\n onClick={() => setActiveTab('permissions')}\n aria-selected={activeTab === 'permissions'}\n role=\"tab\"\n >\n Permissions\n </button>\n )}\n </div>\n\n {/* Tab content */}\n <div className=\"cedros-admin-tab-content\" role=\"tabpanel\">\n {activeTab === 'members' && (\n <MemberList\n members={members}\n currentUserId={pluginContext.userId}\n isLoading={membersLoading}\n error={membersError?.message}\n canManage={hasPermission('member:remove')}\n canChangeRoles={hasPermission('member:role_change')}\n onUpdateRole={updateMemberRole}\n onRemove={removeMember}\n />\n )}\n\n {activeTab === 'invites' && (\n <div className=\"cedros-dashboard__invites\">\n {canInvite && (\n <div className=\"cedros-dashboard__section\">\n <div className=\"cedros-dashboard__section-header\">\n <h3 className=\"cedros-dashboard__section-title\">Send Invitation</h3>\n </div>\n <InviteForm\n onSubmit={createInvite}\n isLoading={invitesLoading}\n error={invitesError?.message}\n />\n </div>\n )}\n\n <div className=\"cedros-dashboard__section\">\n <InviteList\n invites={invites}\n isLoading={invitesLoading}\n error={invitesError?.message}\n canManage={canCancel || canInvite}\n onCancel={canCancel ? cancelInvite : undefined}\n onResend={canInvite ? resendInvite : undefined}\n />\n </div>\n </div>\n )}\n\n {activeTab === 'permissions' && role === 'owner' && <PermissionsSection userRole={role} />}\n </div>\n </div>\n );\n}\n"],"names":["TeamSection","pluginContext","activeTab","setActiveTab","useState","activeOrg","hasPermission","role","orgsLoading","orgsError","fetchOrgs","useOrgs","members","membersLoading","membersError","fetchMembers","updateMemberRole","removeMember","useMembers","invites","invitesLoading","invitesError","fetchInvites","createInvite","cancelInvite","resendInvite","useInvites","useEffect","roleCounts","useMemo","acc","member","jsxs","jsx","canInvite","canCancel","pendingCount","ownerCount","adminCount","memberCount","StatsBar","MemberList","InviteForm","InviteList","PermissionsSection"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),s=require("./useUsersStatsSummary-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),s=require("./useUsersStatsSummary-DiRC8sGs.cjs"),m=require("./StatsBar-DTUZCwDD.cjs");function S({pluginContext:r,pageSize:d=20}){const[t,i]=l.useState(null),{statsItems:n,isLoading:c,error:a,refresh:o}=s.useUsersStatsSummary();return t?e.jsx("div",{className:"cedros-dashboard__section",children:e.jsx(s.AdminUserDetail,{userId:t.id,onBack:()=>i(null),currentUserId:r.userId})}):e.jsxs("div",{className:"cedros-dashboard__section",children:[e.jsx(m.StatsBar,{stats:n,isLoading:c,onRefresh:o}),a&&e.jsx("p",{className:"cedros-admin-error-inline",children:a}),e.jsx("p",{className:"cedros-dashboard__text-muted",children:"All registered users in the system. Requires system admin privileges."}),e.jsx(s.AdminUserList,{pageSize:d,currentUserId:r.userId,onUserClick:u=>i(u)})]})}exports.default=S;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UsersSection-
|
|
1
|
+
{"version":3,"file":"UsersSection-BEKfbhQ4.cjs","sources":["../src/admin/sections/UsersSection.tsx"],"sourcesContent":["/**\n * Users Section - Plugin wrapper\n *\n * Admin user management with list and detail views.\n */\n\nimport React, { useState } from 'react';\nimport type { AdminSectionProps } from '../types';\nimport { AdminUserList } from '../../components/admin/AdminUserList';\nimport { AdminUserDetail } from '../../components/admin/AdminUserDetail';\nimport { StatsBar } from '../../components/admin/StatsBar';\nimport type { AdminUser } from '../../types';\nimport { useUsersStatsSummary } from '../../components/admin/hooks/useUsersStatsSummary';\n\nexport default function UsersSection({\n pluginContext,\n pageSize = 20,\n}: AdminSectionProps): React.JSX.Element {\n const [selectedUser, setSelectedUser] = useState<AdminUser | null>(null);\n const { statsItems, isLoading, error, refresh } = useUsersStatsSummary();\n\n if (selectedUser) {\n return (\n <div className=\"cedros-dashboard__section\">\n <AdminUserDetail\n userId={selectedUser.id}\n onBack={() => setSelectedUser(null)}\n currentUserId={pluginContext.userId}\n />\n </div>\n );\n }\n\n return (\n <div className=\"cedros-dashboard__section\">\n <StatsBar stats={statsItems} isLoading={isLoading} onRefresh={refresh} />\n {error && <p className=\"cedros-admin-error-inline\">{error}</p>}\n <p className=\"cedros-dashboard__text-muted\">\n All registered users in the system. Requires system admin privileges.\n </p>\n <AdminUserList\n pageSize={pageSize}\n currentUserId={pluginContext.userId}\n onUserClick={(user) => setSelectedUser(user)}\n />\n </div>\n );\n}\n"],"names":["UsersSection","pluginContext","pageSize","selectedUser","setSelectedUser","useState","statsItems","isLoading","error","refresh","useUsersStatsSummary","jsx","AdminUserDetail","jsxs","StatsBar","AdminUserList","user"],"mappings":"8NAcA,SAAwBA,EAAa,CACnC,cAAAC,EACA,SAAAC,EAAW,EACb,EAAyC,CACvC,KAAM,CAACC,EAAcC,CAAe,EAAIC,EAAAA,SAA2B,IAAI,EACjE,CAAE,WAAAC,EAAY,UAAAC,EAAW,MAAAC,EAAO,QAAAC,CAAA,EAAYC,EAAAA,qBAAA,EAElD,OAAIP,EAEAQ,EAAAA,IAAC,MAAA,CAAI,UAAU,4BACb,SAAAA,EAAAA,IAACC,EAAAA,gBAAA,CACC,OAAQT,EAAa,GACrB,OAAQ,IAAMC,EAAgB,IAAI,EAClC,cAAeH,EAAc,MAAA,CAAA,EAEjC,EAKFY,EAAAA,KAAC,MAAA,CAAI,UAAU,4BACb,SAAA,CAAAF,EAAAA,IAACG,EAAAA,SAAA,CAAS,MAAOR,EAAY,UAAAC,EAAsB,UAAWE,EAAS,EACtED,GAASG,EAAAA,IAAC,IAAA,CAAE,UAAU,4BAA6B,SAAAH,EAAM,EAC1DG,EAAAA,IAAC,IAAA,CAAE,UAAU,+BAA+B,SAAA,wEAE5C,EACAA,EAAAA,IAACI,EAAAA,cAAA,CACC,SAAAb,EACA,cAAeD,EAAc,OAC7B,YAAce,GAASZ,EAAgBY,CAAI,CAAA,CAAA,CAC7C,EACF,CAEJ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as s, jsxs as m } from "react/jsx-runtime";
|
|
2
2
|
import { useState as l } from "react";
|
|
3
|
-
import { u, A as h, a as f } from "./useUsersStatsSummary-
|
|
3
|
+
import { u, A as h, a as f } from "./useUsersStatsSummary-9HQDKBU5.js";
|
|
4
4
|
import { S as U } from "./StatsBar-BX-hHtTq.js";
|
|
5
5
|
function A({
|
|
6
6
|
pluginContext: e,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UsersSection
|
|
1
|
+
{"version":3,"file":"UsersSection-DbGkmxty.js","sources":["../src/admin/sections/UsersSection.tsx"],"sourcesContent":["/**\n * Users Section - Plugin wrapper\n *\n * Admin user management with list and detail views.\n */\n\nimport React, { useState } from 'react';\nimport type { AdminSectionProps } from '../types';\nimport { AdminUserList } from '../../components/admin/AdminUserList';\nimport { AdminUserDetail } from '../../components/admin/AdminUserDetail';\nimport { StatsBar } from '../../components/admin/StatsBar';\nimport type { AdminUser } from '../../types';\nimport { useUsersStatsSummary } from '../../components/admin/hooks/useUsersStatsSummary';\n\nexport default function UsersSection({\n pluginContext,\n pageSize = 20,\n}: AdminSectionProps): React.JSX.Element {\n const [selectedUser, setSelectedUser] = useState<AdminUser | null>(null);\n const { statsItems, isLoading, error, refresh } = useUsersStatsSummary();\n\n if (selectedUser) {\n return (\n <div className=\"cedros-dashboard__section\">\n <AdminUserDetail\n userId={selectedUser.id}\n onBack={() => setSelectedUser(null)}\n currentUserId={pluginContext.userId}\n />\n </div>\n );\n }\n\n return (\n <div className=\"cedros-dashboard__section\">\n <StatsBar stats={statsItems} isLoading={isLoading} onRefresh={refresh} />\n {error && <p className=\"cedros-admin-error-inline\">{error}</p>}\n <p className=\"cedros-dashboard__text-muted\">\n All registered users in the system. Requires system admin privileges.\n </p>\n <AdminUserList\n pageSize={pageSize}\n currentUserId={pluginContext.userId}\n onUserClick={(user) => setSelectedUser(user)}\n />\n </div>\n );\n}\n"],"names":["UsersSection","pluginContext","pageSize","selectedUser","setSelectedUser","useState","statsItems","isLoading","error","refresh","useUsersStatsSummary","jsx","AdminUserDetail","jsxs","StatsBar","AdminUserList","user"],"mappings":";;;;AAcA,SAAwBA,EAAa;AAAA,EACnC,eAAAC;AAAA,EACA,UAAAC,IAAW;AACb,GAAyC;AACvC,QAAM,CAACC,GAAcC,CAAe,IAAIC,EAA2B,IAAI,GACjE,EAAE,YAAAC,GAAY,WAAAC,GAAW,OAAAC,GAAO,SAAAC,EAAA,IAAYC,EAAA;AAElD,SAAIP,IAEA,gBAAAQ,EAAC,OAAA,EAAI,WAAU,6BACb,UAAA,gBAAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,QAAQT,EAAa;AAAA,MACrB,QAAQ,MAAMC,EAAgB,IAAI;AAAA,MAClC,eAAeH,EAAc;AAAA,IAAA;AAAA,EAAA,GAEjC,IAKF,gBAAAY,EAAC,OAAA,EAAI,WAAU,6BACb,UAAA;AAAA,IAAA,gBAAAF,EAACG,GAAA,EAAS,OAAOR,GAAY,WAAAC,GAAsB,WAAWE,GAAS;AAAA,IACtED,KAAS,gBAAAG,EAAC,KAAA,EAAE,WAAU,6BAA6B,UAAAH,GAAM;AAAA,IAC1D,gBAAAG,EAAC,KAAA,EAAE,WAAU,gCAA+B,UAAA,yEAE5C;AAAA,IACA,gBAAAA;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,UAAAb;AAAA,QACA,eAAeD,EAAc;AAAA,QAC7B,aAAa,CAACe,MAASZ,EAAgBY,CAAI;AAAA,MAAA;AAAA,IAAA;AAAA,EAC7C,GACF;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime");require("react");const t=require("./WebhookSettings-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime");require("react");const t=require("./WebhookSettings-Cj-iELGa.cjs");function o(){return e.jsx("div",{className:"cedros-dashboard__section",children:e.jsx(t.WebhookSettings,{})})}exports.default=o;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebhookSettings-
|
|
1
|
+
{"version":3,"file":"WebhookSettings-BPCKv5Or.cjs","sources":["../src/admin/sections/WebhookSettings.tsx"],"sourcesContent":["/**\n * Webhook Settings Section - Plugin wrapper\n */\n\nimport React from 'react';\nimport { WebhookSettings as Settings } from '../../components/admin/settings';\n\nexport default function WebhookSettings(): React.JSX.Element {\n return (\n <div className=\"cedros-dashboard__section\">\n <Settings />\n </div>\n );\n}\n"],"names":["WebhookSettings","jsx","Settings"],"mappings":"wLAOA,SAAwBA,GAAqC,CAC3D,aACG,MAAA,CAAI,UAAU,4BACb,SAAAC,MAACC,EAAAA,kBAAS,EACZ,CAEJ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import "react";
|
|
3
|
-
import { W as t } from "./WebhookSettings-
|
|
3
|
+
import { W as t } from "./WebhookSettings-D4mKAWAg.js";
|
|
4
4
|
function i() {
|
|
5
5
|
return /* @__PURE__ */ o("div", { className: "cedros-dashboard__section", children: /* @__PURE__ */ o(t, {}) });
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebhookSettings-
|
|
1
|
+
{"version":3,"file":"WebhookSettings-CMROMCFT.js","sources":["../src/admin/sections/WebhookSettings.tsx"],"sourcesContent":["/**\n * Webhook Settings Section - Plugin wrapper\n */\n\nimport React from 'react';\nimport { WebhookSettings as Settings } from '../../components/admin/settings';\n\nexport default function WebhookSettings(): React.JSX.Element {\n return (\n <div className=\"cedros-dashboard__section\">\n <Settings />\n </div>\n );\n}\n"],"names":["WebhookSettings","jsx","Settings"],"mappings":";;;AAOA,SAAwBA,IAAqC;AAC3D,2BACG,OAAA,EAAI,WAAU,6BACb,UAAA,gBAAAC,EAACC,KAAS,GACZ;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),S=require("react"),f=require("./LoadingSpinner-d6sSxgQN.cjs"),p=require("./ErrorMessage-CHbYbVi2.cjs"),r=require("./AutosaveStatus-
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),S=require("react"),f=require("./LoadingSpinner-d6sSxgQN.cjs"),p=require("./ErrorMessage-CHbYbVi2.cjs"),r=require("./AutosaveStatus-BMXjH1XN.cjs");function g({title:t,description:d,categories:u,className:n=""}){const{settings:i,edits:h,isLoading:l,autosaveStatus:j,autosaveError:x,error:o,fetchSettings:a,handleChange:m}=r.useSettingsAutosave();S.useEffect(()=>{a()},[a]);const c=u.filter(s=>i[s]?.length>0);return l&&Object.keys(i).length===0?e.jsxs("div",{className:`cedros-system-settings cedros-system-settings-loading ${n}`,children:[e.jsx(f.LoadingSpinner,{}),e.jsx("span",{children:"Loading settings..."})]}):o?e.jsx("div",{className:`cedros-system-settings ${n}`,children:e.jsx(p.ErrorMessage,{error:o.message})}):e.jsxs("div",{className:`cedros-system-settings ${n}`,children:[e.jsxs("div",{className:"cedros-settings-page-header",children:[e.jsxs("div",{className:"cedros-settings-page-header-content",children:[e.jsx("h2",{className:"cedros-settings-page-title",children:t}),e.jsx("p",{className:"cedros-settings-page-description",children:d})]}),e.jsx(r.AutosaveStatus,{status:j,error:x})]}),c.length===0?e.jsx("div",{className:"cedros-system-settings-empty",children:e.jsx("p",{children:"No settings found for this section."})}):c.map(s=>e.jsx(r.SettingsSection,{settings:i[s],edits:h,onChange:m},s))]})}const v=["webhook"];function y({className:t}){return e.jsx(g,{title:"Webhooks",description:"Configure HTTP webhook notifications for authentication events.",categories:v,className:t})}exports.SettingsPageLayout=g;exports.WebhookSettings=y;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebhookSettings-
|
|
1
|
+
{"version":3,"file":"WebhookSettings-Cj-iELGa.cjs","sources":["../src/components/admin/settings/SettingsPageLayout.tsx","../src/components/admin/settings/WebhookSettings.tsx"],"sourcesContent":["/**\n * Shared layout for settings pages with autosave\n */\nimport { useEffect } from 'react';\nimport { LoadingSpinner } from '../../shared/LoadingSpinner';\nimport { ErrorMessage } from '../../shared/ErrorMessage';\nimport { useSettingsAutosave } from '../../../hooks/useSettingsAutosave';\nimport { SettingsSection } from './settingsInputs';\nimport { AutosaveStatus } from './AutosaveStatus';\n\nexport interface SettingsPageLayoutProps {\n /** Page title */\n title: string;\n /** Page description */\n description: string;\n /** Categories to display on this page */\n categories: string[];\n /** Additional CSS class */\n className?: string;\n}\n\n/**\n * Shared layout component for settings pages.\n * Handles loading and displaying settings for specified categories.\n * Changes are automatically saved after a brief debounce.\n */\nexport function SettingsPageLayout({\n title,\n description,\n categories,\n className = '',\n}: SettingsPageLayoutProps) {\n const {\n settings,\n edits,\n isLoading,\n autosaveStatus,\n autosaveError,\n error,\n fetchSettings,\n handleChange,\n } = useSettingsAutosave();\n\n useEffect(() => {\n fetchSettings();\n }, [fetchSettings]);\n\n // Filter settings to only show relevant categories\n const relevantCategories = categories.filter((cat) => settings[cat]?.length > 0);\n\n if (isLoading && Object.keys(settings).length === 0) {\n return (\n <div className={`cedros-system-settings cedros-system-settings-loading ${className}`}>\n <LoadingSpinner />\n <span>Loading settings...</span>\n </div>\n );\n }\n\n if (error) {\n return (\n <div className={`cedros-system-settings ${className}`}>\n <ErrorMessage error={error.message} />\n </div>\n );\n }\n\n return (\n <div className={`cedros-system-settings ${className}`}>\n <div className=\"cedros-settings-page-header\">\n <div className=\"cedros-settings-page-header-content\">\n <h2 className=\"cedros-settings-page-title\">{title}</h2>\n <p className=\"cedros-settings-page-description\">{description}</p>\n </div>\n <AutosaveStatus status={autosaveStatus} error={autosaveError} />\n </div>\n\n {relevantCategories.length === 0 ? (\n <div className=\"cedros-system-settings-empty\">\n <p>No settings found for this section.</p>\n </div>\n ) : (\n relevantCategories.map((category) => (\n <SettingsSection\n key={category}\n settings={settings[category]}\n edits={edits}\n onChange={handleChange}\n />\n ))\n )}\n </div>\n );\n}\n","/**\n * Webhook settings page - HTTP webhook configuration\n */\nimport { SettingsPageLayout } from './SettingsPageLayout';\n\nconst CATEGORIES = ['webhook'];\n\nexport interface WebhookSettingsProps {\n className?: string;\n}\n\nexport function WebhookSettings({ className }: WebhookSettingsProps) {\n return (\n <SettingsPageLayout\n title=\"Webhooks\"\n description=\"Configure HTTP webhook notifications for authentication events.\"\n categories={CATEGORIES}\n className={className}\n />\n );\n}\n"],"names":["SettingsPageLayout","title","description","categories","className","settings","edits","isLoading","autosaveStatus","autosaveError","error","fetchSettings","handleChange","useSettingsAutosave","useEffect","relevantCategories","cat","jsxs","jsx","LoadingSpinner","ErrorMessage","AutosaveStatus","category","SettingsSection","CATEGORIES","WebhookSettings"],"mappings":"oMA0BO,SAASA,EAAmB,CACjC,MAAAC,EACA,YAAAC,EACA,WAAAC,EACA,UAAAC,EAAY,EACd,EAA4B,CAC1B,KAAM,CACJ,SAAAC,EACA,MAAAC,EACA,UAAAC,EACA,eAAAC,EACA,cAAAC,EACA,MAAAC,EACA,cAAAC,EACA,aAAAC,CAAA,EACEC,sBAAA,EAEJC,EAAAA,UAAU,IAAM,CACdH,EAAA,CACF,EAAG,CAACA,CAAa,CAAC,EAGlB,MAAMI,EAAqBZ,EAAW,OAAQa,GAAQX,EAASW,CAAG,GAAG,OAAS,CAAC,EAE/E,OAAIT,GAAa,OAAO,KAAKF,CAAQ,EAAE,SAAW,EAE9CY,EAAAA,KAAC,MAAA,CAAI,UAAW,yDAAyDb,CAAS,GAChF,SAAA,CAAAc,EAAAA,IAACC,EAAAA,eAAA,EAAe,EAChBD,EAAAA,IAAC,QAAK,SAAA,qBAAA,CAAmB,CAAA,EAC3B,EAIAR,EAEAQ,EAAAA,IAAC,MAAA,CAAI,UAAW,0BAA0Bd,CAAS,GACjD,SAAAc,EAAAA,IAACE,EAAAA,aAAA,CAAa,MAAOV,EAAM,OAAA,CAAS,EACtC,EAKFO,EAAAA,KAAC,MAAA,CAAI,UAAW,0BAA0Bb,CAAS,GACjD,SAAA,CAAAa,EAAAA,KAAC,MAAA,CAAI,UAAU,8BACb,SAAA,CAAAA,EAAAA,KAAC,MAAA,CAAI,UAAU,sCACb,SAAA,CAAAC,EAAAA,IAAC,KAAA,CAAG,UAAU,6BAA8B,SAAAjB,EAAM,EAClDiB,EAAAA,IAAC,IAAA,CAAE,UAAU,mCAAoC,SAAAhB,CAAA,CAAY,CAAA,EAC/D,EACAgB,EAAAA,IAACG,EAAAA,eAAA,CAAe,OAAQb,EAAgB,MAAOC,CAAA,CAAe,CAAA,EAChE,EAECM,EAAmB,SAAW,EAC7BG,EAAAA,IAAC,OAAI,UAAU,+BACb,SAAAA,EAAAA,IAAC,IAAA,CAAE,+CAAmC,CAAA,CACxC,EAEAH,EAAmB,IAAKO,GACtBJ,EAAAA,IAACK,EAAAA,gBAAA,CAEC,SAAUlB,EAASiB,CAAQ,EAC3B,MAAAhB,EACA,SAAUM,CAAA,EAHLU,CAAA,CAKR,CAAA,EAEL,CAEJ,CCxFA,MAAME,EAAa,CAAC,SAAS,EAMtB,SAASC,EAAgB,CAAE,UAAArB,GAAmC,CACnE,OACEc,EAAAA,IAAClB,EAAA,CACC,MAAM,WACN,YAAY,kEACZ,WAAYwB,EACZ,UAAApB,CAAA,CAAA,CAGN"}
|
|
@@ -2,7 +2,7 @@ import { jsxs as t, jsx as e } from "react/jsx-runtime";
|
|
|
2
2
|
import { useEffect as p } from "react";
|
|
3
3
|
import { L as v } from "./LoadingSpinner-6vml-zwr.js";
|
|
4
4
|
import { E as S } from "./ErrorMessage-CcEK0pYO.js";
|
|
5
|
-
import { u as y, A as N, S as E } from "./AutosaveStatus-
|
|
5
|
+
import { u as y, A as N, S as E } from "./AutosaveStatus-DNuCl59W.js";
|
|
6
6
|
function b({
|
|
7
7
|
title: i,
|
|
8
8
|
description: d,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebhookSettings-
|
|
1
|
+
{"version":3,"file":"WebhookSettings-D4mKAWAg.js","sources":["../src/components/admin/settings/SettingsPageLayout.tsx","../src/components/admin/settings/WebhookSettings.tsx"],"sourcesContent":["/**\n * Shared layout for settings pages with autosave\n */\nimport { useEffect } from 'react';\nimport { LoadingSpinner } from '../../shared/LoadingSpinner';\nimport { ErrorMessage } from '../../shared/ErrorMessage';\nimport { useSettingsAutosave } from '../../../hooks/useSettingsAutosave';\nimport { SettingsSection } from './settingsInputs';\nimport { AutosaveStatus } from './AutosaveStatus';\n\nexport interface SettingsPageLayoutProps {\n /** Page title */\n title: string;\n /** Page description */\n description: string;\n /** Categories to display on this page */\n categories: string[];\n /** Additional CSS class */\n className?: string;\n}\n\n/**\n * Shared layout component for settings pages.\n * Handles loading and displaying settings for specified categories.\n * Changes are automatically saved after a brief debounce.\n */\nexport function SettingsPageLayout({\n title,\n description,\n categories,\n className = '',\n}: SettingsPageLayoutProps) {\n const {\n settings,\n edits,\n isLoading,\n autosaveStatus,\n autosaveError,\n error,\n fetchSettings,\n handleChange,\n } = useSettingsAutosave();\n\n useEffect(() => {\n fetchSettings();\n }, [fetchSettings]);\n\n // Filter settings to only show relevant categories\n const relevantCategories = categories.filter((cat) => settings[cat]?.length > 0);\n\n if (isLoading && Object.keys(settings).length === 0) {\n return (\n <div className={`cedros-system-settings cedros-system-settings-loading ${className}`}>\n <LoadingSpinner />\n <span>Loading settings...</span>\n </div>\n );\n }\n\n if (error) {\n return (\n <div className={`cedros-system-settings ${className}`}>\n <ErrorMessage error={error.message} />\n </div>\n );\n }\n\n return (\n <div className={`cedros-system-settings ${className}`}>\n <div className=\"cedros-settings-page-header\">\n <div className=\"cedros-settings-page-header-content\">\n <h2 className=\"cedros-settings-page-title\">{title}</h2>\n <p className=\"cedros-settings-page-description\">{description}</p>\n </div>\n <AutosaveStatus status={autosaveStatus} error={autosaveError} />\n </div>\n\n {relevantCategories.length === 0 ? (\n <div className=\"cedros-system-settings-empty\">\n <p>No settings found for this section.</p>\n </div>\n ) : (\n relevantCategories.map((category) => (\n <SettingsSection\n key={category}\n settings={settings[category]}\n edits={edits}\n onChange={handleChange}\n />\n ))\n )}\n </div>\n );\n}\n","/**\n * Webhook settings page - HTTP webhook configuration\n */\nimport { SettingsPageLayout } from './SettingsPageLayout';\n\nconst CATEGORIES = ['webhook'];\n\nexport interface WebhookSettingsProps {\n className?: string;\n}\n\nexport function WebhookSettings({ className }: WebhookSettingsProps) {\n return (\n <SettingsPageLayout\n title=\"Webhooks\"\n description=\"Configure HTTP webhook notifications for authentication events.\"\n categories={CATEGORIES}\n className={className}\n />\n );\n}\n"],"names":["SettingsPageLayout","title","description","categories","className","settings","edits","isLoading","autosaveStatus","autosaveError","error","fetchSettings","handleChange","useSettingsAutosave","useEffect","relevantCategories","cat","jsxs","jsx","LoadingSpinner","ErrorMessage","AutosaveStatus","category","SettingsSection","CATEGORIES","WebhookSettings"],"mappings":";;;;;AA0BO,SAASA,EAAmB;AAAA,EACjC,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAAC,IAAY;AACd,GAA4B;AAC1B,QAAM;AAAA,IACJ,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,OAAAC;AAAA,IACA,eAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,IACEC,EAAA;AAEJ,EAAAC,EAAU,MAAM;AACd,IAAAH,EAAA;AAAA,EACF,GAAG,CAACA,CAAa,CAAC;AAGlB,QAAMI,IAAqBZ,EAAW,OAAO,CAACa,MAAQX,EAASW,CAAG,GAAG,SAAS,CAAC;AAE/E,SAAIT,KAAa,OAAO,KAAKF,CAAQ,EAAE,WAAW,IAE9C,gBAAAY,EAAC,OAAA,EAAI,WAAW,yDAAyDb,CAAS,IAChF,UAAA;AAAA,IAAA,gBAAAc,EAACC,GAAA,EAAe;AAAA,IAChB,gBAAAD,EAAC,UAAK,UAAA,sBAAA,CAAmB;AAAA,EAAA,GAC3B,IAIAR,IAEA,gBAAAQ,EAAC,OAAA,EAAI,WAAW,0BAA0Bd,CAAS,IACjD,UAAA,gBAAAc,EAACE,GAAA,EAAa,OAAOV,EAAM,QAAA,CAAS,GACtC,IAKF,gBAAAO,EAAC,OAAA,EAAI,WAAW,0BAA0Bb,CAAS,IACjD,UAAA;AAAA,IAAA,gBAAAa,EAAC,OAAA,EAAI,WAAU,+BACb,UAAA;AAAA,MAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,uCACb,UAAA;AAAA,QAAA,gBAAAC,EAAC,MAAA,EAAG,WAAU,8BAA8B,UAAAjB,GAAM;AAAA,QAClD,gBAAAiB,EAAC,KAAA,EAAE,WAAU,oCAAoC,UAAAhB,EAAA,CAAY;AAAA,MAAA,GAC/D;AAAA,MACA,gBAAAgB,EAACG,GAAA,EAAe,QAAQb,GAAgB,OAAOC,EAAA,CAAe;AAAA,IAAA,GAChE;AAAA,IAECM,EAAmB,WAAW,IAC7B,gBAAAG,EAAC,SAAI,WAAU,gCACb,UAAA,gBAAAA,EAAC,KAAA,EAAE,iDAAmC,EAAA,CACxC,IAEAH,EAAmB,IAAI,CAACO,MACtB,gBAAAJ;AAAA,MAACK;AAAA,MAAA;AAAA,QAEC,UAAUlB,EAASiB,CAAQ;AAAA,QAC3B,OAAAhB;AAAA,QACA,UAAUM;AAAA,MAAA;AAAA,MAHLU;AAAA,IAAA,CAKR;AAAA,EAAA,GAEL;AAEJ;ACxFA,MAAME,IAAa,CAAC,SAAS;AAMtB,SAASC,EAAgB,EAAE,WAAArB,KAAmC;AACnE,SACE,gBAAAc;AAAA,IAAClB;AAAA,IAAA;AAAA,MACC,OAAM;AAAA,MACN,aAAY;AAAA,MACZ,YAAYwB;AAAA,MACZ,WAAApB;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
package/dist/admin-only.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./plugin-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./plugin-BHGg7ius.cjs");exports.AdminShell=e.AdminShell;exports.CEDROS_LOGIN_SECTION_IDS=e.CEDROS_LOGIN_SECTION_IDS;exports.Icons=e.Icons;exports.cedrosLoginPlugin=e.cedrosLoginPlugin;exports.loginPlugin=e.cedrosLoginPlugin;exports.useAdminShell=e.useAdminShell;
|
package/dist/admin-only.js
CHANGED
package/dist/email-only.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./useAuth-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./useAuth-B1yS_YiD.cjs"),o=require("./useCedrosLogin-DtJorrE7.cjs"),e=require("./EmailRegisterForm-xFb6MaVA.cjs"),i=require("./LoadingSpinner-d6sSxgQN.cjs"),s=require("./ErrorMessage-CHbYbVi2.cjs"),n=require("./validation-BuGQrA-K.cjs");exports.CedrosLoginProvider=r.CedrosLoginProvider;exports.useAuth=r.useAuth;exports.useCedrosLogin=o.useCedrosLogin;exports.EmailLoginForm=e.EmailLoginForm;exports.EmailRegisterForm=e.EmailRegisterForm;exports.PasswordInput=e.PasswordInput;exports.useEmailAuth=e.useEmailAuth;exports.LoadingSpinner=i.LoadingSpinner;exports.ErrorMessage=s.ErrorMessage;exports.validatePassword=n.validatePassword;
|
package/dist/email-only.d.ts
CHANGED
|
@@ -103,6 +103,10 @@ export declare interface AuthUser {
|
|
|
103
103
|
updatedAt: string;
|
|
104
104
|
/** When the user completed the one-time welcome flow */
|
|
105
105
|
welcomeCompletedAt?: string;
|
|
106
|
+
/** User's unique referral code */
|
|
107
|
+
referralCode?: string;
|
|
108
|
+
/** Wallet address to receive direct referral payouts */
|
|
109
|
+
payoutWalletAddress?: string;
|
|
106
110
|
}
|
|
107
111
|
|
|
108
112
|
/**
|
|
@@ -181,6 +185,8 @@ declare interface CedrosLoginContextValue extends AuthStateContextValue, AuthUIC
|
|
|
181
185
|
declare interface CedrosLoginInternalAPI {
|
|
182
186
|
handleLoginSuccess: (user: AuthUser, tokens?: TokenPair) => void;
|
|
183
187
|
getAccessToken: () => string | null;
|
|
188
|
+
/** Get the referral code captured from the ?ref= URL parameter (if any) */
|
|
189
|
+
getReferralCode: () => string | null;
|
|
184
190
|
}
|
|
185
191
|
|
|
186
192
|
/**
|
package/dist/email-only.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { C as s, u as a } from "./useAuth-
|
|
1
|
+
import { C as s, u as a } from "./useAuth-l-itM5am.js";
|
|
2
2
|
import { u as i } from "./useCedrosLogin-CFfID-0i.js";
|
|
3
|
-
import { E as t, a as u, P as p, u as d } from "./EmailRegisterForm-
|
|
3
|
+
import { E as t, a as u, P as p, u as d } from "./EmailRegisterForm-p2X5QP58.js";
|
|
4
4
|
import { L as f } from "./LoadingSpinner-6vml-zwr.js";
|
|
5
5
|
import { E as x } from "./ErrorMessage-CcEK0pYO.js";
|
|
6
6
|
import { v as L } from "./validation-B8kMV3BL.js";
|
package/dist/google-only.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useAuth-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useAuth-B1yS_YiD.cjs"),r=require("./useCedrosLogin-DtJorrE7.cjs"),o=require("./GoogleLoginButton-2zNTIKMm.cjs"),n=require("./LoadingSpinner-d6sSxgQN.cjs"),s=require("./ErrorMessage-CHbYbVi2.cjs");exports.CedrosLoginProvider=e.CedrosLoginProvider;exports.useAuth=e.useAuth;exports.useCedrosLogin=r.useCedrosLogin;exports.GoogleLoginButton=o.GoogleLoginButton;exports.useGoogleAuth=o.useGoogleAuth;exports.LoadingSpinner=n.LoadingSpinner;exports.ErrorMessage=s.ErrorMessage;
|
package/dist/google-only.d.ts
CHANGED
|
@@ -102,6 +102,10 @@ export declare interface AuthUser {
|
|
|
102
102
|
updatedAt: string;
|
|
103
103
|
/** When the user completed the one-time welcome flow */
|
|
104
104
|
welcomeCompletedAt?: string;
|
|
105
|
+
/** User's unique referral code */
|
|
106
|
+
referralCode?: string;
|
|
107
|
+
/** Wallet address to receive direct referral payouts */
|
|
108
|
+
payoutWalletAddress?: string;
|
|
105
109
|
}
|
|
106
110
|
|
|
107
111
|
/**
|
|
@@ -180,6 +184,8 @@ declare interface CedrosLoginContextValue extends AuthStateContextValue, AuthUIC
|
|
|
180
184
|
declare interface CedrosLoginInternalAPI {
|
|
181
185
|
handleLoginSuccess: (user: AuthUser, tokens?: TokenPair) => void;
|
|
182
186
|
getAccessToken: () => string | null;
|
|
187
|
+
/** Get the referral code captured from the ?ref= URL parameter (if any) */
|
|
188
|
+
getReferralCode: () => string | null;
|
|
183
189
|
}
|
|
184
190
|
|
|
185
191
|
/**
|
package/dist/google-only.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { C as e, u as s } from "./useAuth-
|
|
1
|
+
import { C as e, u as s } from "./useAuth-l-itM5am.js";
|
|
2
2
|
import { u as t } from "./useCedrosLogin-CFfID-0i.js";
|
|
3
|
-
import { G as g, u as n } from "./GoogleLoginButton-
|
|
3
|
+
import { G as g, u as n } from "./GoogleLoginButton-C1WNu7W3.js";
|
|
4
4
|
import { L as p } from "./LoadingSpinner-6vml-zwr.js";
|
|
5
5
|
import { E as m } from "./ErrorMessage-CcEK0pYO.js";
|
|
6
6
|
export {
|