UNPKG

@better-auth-ui/core

Version:

Authentication components and data utilities for [Better Auth](https://better-auth.com), available for React and Solid.

1,231 lines (1,230 loc) 33.1 kB
import { t as e } from "../../auth-config-Jae3wPlO.js"; import { t } from "../../auth-query-keys-B_bcsA3s.js"; import { r as n } from "../../auth-query-retry-Dyv0hsPy.js"; import { t as r } from "../../create-auth-plugin-BXWyolC8.js"; import { skipToken as i } from "@tanstack/query-core"; //#region src/plugins/organization/organization-mutation-keys.ts var a = { all: ["auth", "organization"], create: [ "auth", "organization", "create" ], delete: [ "auth", "organization", "delete" ], update: [ "auth", "organization", "update" ], setActive: [ "auth", "organization", "setActive" ], inviteMember: [ "auth", "organization", "inviteMember" ], removeMember: [ "auth", "organization", "removeMember" ], leave: [ "auth", "organization", "leave" ], updateMemberRole: [ "auth", "organization", "updateMemberRole" ], acceptInvitation: [ "auth", "organization", "acceptInvitation" ], cancelInvitation: [ "auth", "organization", "cancelInvitation" ], rejectInvitation: [ "auth", "organization", "rejectInvitation" ], checkSlug: [ "auth", "organization", "checkSlug" ], roles: { all: [ "auth", "organization", "role" ], create: [ "auth", "organization", "role", "create" ], update: [ "auth", "organization", "role", "update" ], delete: [ "auth", "organization", "role", "delete" ] }, teams: { all: [ "auth", "organization", "team" ], create: [ "auth", "organization", "team", "create" ], update: [ "auth", "organization", "team", "update" ], setActive: [ "auth", "organization", "team", "setActive" ], remove: [ "auth", "organization", "team", "remove" ], addMember: [ "auth", "organization", "team", "addMember" ], removeMember: [ "auth", "organization", "team", "removeMember" ] } }, o = { all: (e) => [...t.user(e), "organization"], lists: (e) => [...o.all(e), "list"], list: (e, t) => [...o.lists(e), t ?? null], details: (e) => [...o.all(e), "detail"], detail: (e, t) => [...o.details(e), t ?? null], fullDetails: (e) => [...o.all(e), "fullDetails"], fullDetail: (e, t) => [...o.fullDetails(e), t ?? null], activeOrganizations: (e) => [...o.all(e), "active"], activeOrganization: (e, t) => [...o.activeOrganizations(e), t ?? null], members: { all: (e) => [...o.all(e), "members"], lists: (e) => [...o.members.all(e), "list"], list: (e, t) => [...o.members.lists(e), t ?? null], activeRole: (e, t) => [ ...o.members.all(e), "activeRole", t ?? null ] }, invitations: { all: (e) => [...o.all(e), "invitations"], details: (e) => [...o.invitations.all(e), "detail"], detail: (e, t) => [...o.invitations.details(e), t ?? null], lists: (e) => [...o.invitations.all(e), "list"], list: (e, t) => [...o.invitations.lists(e), t ?? null] }, userInvitations: { all: (e) => [...o.all(e), "userInvitations"], lists: (e) => [...o.userInvitations.all(e), "list"], list: (e, t) => [...o.userInvitations.lists(e), t ?? null] }, permissions: { all: (e) => [...o.all(e), "permissions"], has: (e, t) => [ ...o.permissions.all(e), "has", t ?? null ] }, roles: { all: (e) => [...o.all(e), "roles"], lists: (e) => [...o.roles.all(e), "list"], list: (e, t) => [...o.roles.lists(e), t ?? null], details: (e) => [...o.roles.all(e), "detail"], detail: (e, t) => [...o.roles.details(e), t ?? null] }, teams: { all: (e) => [...o.all(e), "teams"], list: (e, t) => [ ...o.teams.all(e), "list", t ?? null ], userList: (e, t) => [ ...o.teams.all(e), "user-list", t ?? null ], members: (e, t) => [ ...o.teams.all(e), "members", t ?? null ] } }; //#endregion //#region src/plugins/organization/accept-invitation-mutation.ts function s(e, t) { return { mutationKey: a.acceptInvitation, mutationFn: (t) => e.organization.acceptInvitation({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.userInvitations.all(t), o.lists(t)], invalidates: [o.fullDetails(t), o.activeOrganizations(t)] } }; } //#endregion //#region src/plugins/organization/active-member-role-query.ts function c(e, t, r) { let a = o.members.activeRole(t, r?.query), s = r?.query; return { queryKey: a, queryFn: t && (s?.organizationId || s?.organizationSlug) ? ({ signal: t }) => e.organization.getActiveMemberRole({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var ee = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...c(t, n, { query: a, fetchOptions: i }), ...o }); }; //#endregion //#region src/plugins/organization/active-organization-query.ts function te(e, t) { let n = e, r = e ?? {}; return n?.organizationId || n?.organizationSlug || t === void 0 ? e : { ...r, organizationSlug: t }; } function l(e, t, r) { let a = r?.query?.organizationSlug === null; return { queryKey: o.activeOrganization(t, r?.query), queryFn: a ? async () => null : t ? ({ signal: t }) => e.organization.getFullOrganization({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var ne = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...l(t, n, { query: a, fetchOptions: i }), ...o }); }, u = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.prefetchQuery({ ...l(t, n, { query: a, fetchOptions: i }), ...o }); }, d = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.fetchQuery({ ...l(t, n, { query: a, fetchOptions: i }), ...o }); }, f = (e, t, n, r) => { let i = o.activeOrganization(n, r?.query); return e.getQueryData(i); }; //#endregion //#region src/plugins/organization/cancel-invitation-mutation.ts function p(e, t) { return { mutationKey: a.cancelInvitation, mutationFn: (t) => e.organization.cancelInvitation({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.invitations.all(t), o.fullDetails(t)] } }; } //#endregion //#region src/plugins/organization/check-slug-mutation.ts function m(e) { return { mutationKey: a.checkSlug, mutationFn: (t) => e.organization.checkSlug({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }) }; } //#endregion //#region src/plugins/organization/generate-organization-slug.ts function h(e, t) { let n = e.normalize("NFKD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-|-$/g, "") || crypto.randomUUID(); return t ? `${n}-${t}` : n; } //#endregion //#region src/plugins/organization/create-organization-mutation.ts function re(e, t) { return { mutationKey: a.create, mutationFn: async (t) => { let n = t.slug === void 0, r = { ...t.fetchOptions, throw: !0 }, i = t.slug ?? h(t.name); for (let a = 0;; a++) try { return n && await e.organization.checkSlug({ slug: i, fetchOptions: r }), await e.organization.create({ ...t, slug: i, fetchOptions: r }); } catch (e) { let r = e?.error?.code; if (!n || a >= 4 || r !== "ORGANIZATION_SLUG_ALREADY_TAKEN" && r !== "ORGANIZATION_ALREADY_EXISTS") throw e; i = h(t.name, crypto.randomUUID()); } }, meta: { awaits: [o.lists(t)], invalidates: [ o.details(t), o.fullDetails(t), o.activeOrganizations(t) ] } }; } //#endregion //#region src/plugins/organization/delete-organization-mutation.ts function ie(e, t) { return { mutationKey: a.delete, mutationFn: (t) => e.organization.delete({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.lists(t)], invalidates: [ o.details(t), o.fullDetails(t), o.activeOrganizations(t) ] } }; } //#endregion //#region src/plugins/organization/full-organization-query.ts function g(e, t, r) { return { queryKey: o.fullDetail(t, r?.query), queryFn: t ? ({ signal: t }) => e.organization.getFullOrganization({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var ae = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...g(t, n, { query: a, fetchOptions: i }), ...o }); }, oe = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.prefetchQuery({ ...g(t, n, { query: a, fetchOptions: i }), ...o }); }, se = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.fetchQuery({ ...g(t, n, { query: a, fetchOptions: i }), ...o }); }; //#endregion //#region src/plugins/organization/has-permission-query.ts function _(e, t, r) { let { fetchOptions: a, ...s } = r; return { queryKey: o.permissions.has(t, s), queryFn: t && r.organizationId ? ({ signal: t }) => e.organization.hasPermission({ ...s, fetchOptions: n(a, t) }) : i }; } var ce = (e, t, n, r) => { let { fetchOptions: i, permissions: a, organizationId: o, ...s } = r ?? {}; return e.ensureQueryData({ ..._(t, n, { fetchOptions: i, organizationId: o, permissions: a }), ...s }); }, v = (e, t, n, r) => { let { fetchOptions: i, permissions: a, organizationId: o, ...s } = r ?? {}; return e.prefetchQuery({ ..._(t, n, { fetchOptions: i, organizationId: o, permissions: a }), ...s }); }, y = (e, t, n, r) => { let { fetchOptions: i, permissions: a, organizationId: o, ...s } = r ?? {}; return e.fetchQuery({ ..._(t, n, { fetchOptions: i, organizationId: o, permissions: a }), ...s }); }, b = (e, t, n, r) => { let { fetchOptions: i, ...a } = r ?? {}, s = o.permissions.has(n, a); return e.getQueryData(s); }; //#endregion //#region src/plugins/organization/invitation-query.ts function x(e, t, r) { return { queryKey: o.invitations.detail(t, r.query), queryFn: ({ signal: t }) => e.organization.getInvitation({ ...r, fetchOptions: n(r.fetchOptions, t) }) }; } var S = (e, t, n, r) => { let { query: i, fetchOptions: a, ...o } = r; return e.ensureQueryData({ ...x(t, n, { query: i, fetchOptions: a }), ...o }); }, C = (e, t, n, r) => { let { query: i, fetchOptions: a, ...o } = r; return e.prefetchQuery({ ...x(t, n, { query: i, fetchOptions: a }), ...o }); }, w = (e, t, n, r) => { let { query: i, fetchOptions: a, ...o } = r; return e.fetchQuery({ ...x(t, n, { query: i, fetchOptions: a }), ...o }); }; //#endregion //#region src/plugins/organization/invite-member-mutation.ts function T(e, t, n) { return { mutationKey: a.inviteMember, mutationFn: (t) => e.organization.inviteMember({ ...t, organizationId: t.organizationId ?? n, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.invitations.all(t), o.fullDetails(t)] } }; } //#endregion //#region src/plugins/organization/leave-organization-mutation.ts function E(e, t) { return { mutationKey: a.leave, mutationFn: (t) => e.organization.leave({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.members.all(t), o.fullDetails(t)], invalidates: [o.lists(t), o.activeOrganizations(t)] } }; } //#endregion //#region src/plugins/organization/list-invitations-query.ts function D(e, t, r) { let a = o.invitations.list(t, r?.query), s = r?.query; return { queryKey: a, queryFn: t && s?.organizationId ? ({ signal: t }) => e.organization.listInvitations({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var O = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...D(t, n, { query: a, fetchOptions: i }), ...o }); }, k = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.prefetchQuery({ ...D(t, n, { query: a, fetchOptions: i }), ...o }); }, A = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.fetchQuery({ ...D(t, n, { query: a, fetchOptions: i }), ...o }); }, j = (e, t, n, r) => { let i = o.invitations.list(n, r?.query); return e.getQueryData(i); }; //#endregion //#region src/plugins/organization/list-members-query.ts function M(e, t, r) { let a = o.members.list(t, r?.query), s = r?.query; return { queryKey: a, queryFn: t && s?.organizationId ? ({ signal: t }) => e.organization.listMembers({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var N = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...M(t, n, { query: a, fetchOptions: i }), ...o }); }, P = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.prefetchQuery({ ...M(t, n, { query: a, fetchOptions: i }), ...o }); }, F = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.fetchQuery({ ...M(t, n, { query: a, fetchOptions: i }), ...o }); }, I = (e, t, n, r) => { let i = o.members.list(n, r?.query); return e.getQueryData(i); }; //#endregion //#region src/plugins/organization/list-organizations-query.ts function L(e, t, r) { return { queryKey: o.list(t, r?.query), queryFn: t ? ({ signal: t }) => e.organization.list({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var R = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...L(t, n, { query: a, fetchOptions: i }), ...o }); }, z = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.prefetchQuery({ ...L(t, n, { query: a, fetchOptions: i }), ...o }); }, B = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.fetchQuery({ ...L(t, n, { query: a, fetchOptions: i }), ...o }); }, V = (e, t, n, r) => { let i = o.list(n, r?.query); return e.getQueryData(i); }; //#endregion //#region src/plugins/organization/list-roles-query.ts function H(e, t, r) { let a = r?.query?.organizationId; return { queryKey: o.roles.list(t, r?.query), queryFn: t && a ? ({ signal: t }) => e.organization.listRoles({ ...r, query: { ...r?.query, organizationId: a }, fetchOptions: n(r?.fetchOptions, t) }) : i }; } //#endregion //#region src/plugins/organization/list-team-members-query.ts function U(e, t, r) { let a = r?.query; return { queryKey: o.teams.members(t, a?.teamId), queryFn: t && a?.teamId ? ({ signal: t }) => e.organization.listTeamMembers({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } //#endregion //#region src/plugins/organization/list-teams-query.ts function W(e, t, r) { let a = r?.query; return { queryKey: o.teams.list(t, r?.query), queryFn: t && a?.organizationId ? ({ signal: t }) => e.organization.listTeams({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } //#endregion //#region src/plugins/organization/list-user-invitations-query.ts function G(e, t, r) { return { queryKey: o.userInvitations.list(t, r?.query), queryFn: t ? ({ signal: t }) => e.organization.listUserInvitations({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var le = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...G(t, n, { query: a, fetchOptions: i }), ...o }); }, ue = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.prefetchQuery({ ...G(t, n, { query: a, fetchOptions: i }), ...o }); }, de = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.fetchQuery({ ...G(t, n, { query: a, fetchOptions: i }), ...o }); }, fe = (e, t, n, r) => { let i = o.userInvitations.list(n, r?.query); return e.getQueryData(i); }; //#endregion //#region src/plugins/organization/list-user-teams-query.ts function pe(e, t, r) { let a = r?.query; return { queryKey: o.teams.userList(t, r?.query), queryFn: t && a?.organizationId ? ({ signal: t }) => e.organization.listUserTeams({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } //#endregion //#region src/plugins/organization/organization-localization.ts var K = { accept: "Accept", acceptInvitationTitle: "Organization invitation", acceptInvitationDescription: "You've been invited to join {{organization}} as {{role}}.", accepted: "Accepted", actions: "Actions", admin: "Admin", all: "All", canceled: "Canceled", cancelInvitation: "Cancel invitation", changeLogo: "Change logo", changeMemberRole: "Change role", changeMemberRoleDescription: "Choose the roles this member should have in the organization.", clear: "Clear", createOrganization: "Create organization", deleteLogo: "Delete logo", deleteOrganization: "Delete organization", deleteOrganizationDescription: "Permanently delete this organization and all of its data. All members will lose access and this cannot be undone.", invitations: "Invitations", invitationResent: "Invitation resent", invitationUnavailable: "Invitation unavailable", invitationUnavailableDescription: "This invitation is invalid, expired, or has already been handled.", invitedAt: "Invited at", inviteMember: "Invite member", inviteMemberSuccess: "Member invited successfully", inviteMemberDescription: "We'll email them a link to join this organization. Choose the role they'll have once they accept.", leftOrganization: "You left the organization", leaveOrganization: "Leave organization", leaveOrganizationDescription: "Leave this organization and lose access to its data and resources. You'll need a new invitation to rejoin.", logo: "Logo", logoChangedSuccess: "Logo updated successfully", logoDeletedSuccess: "Logo removed successfully", manage: "Manage", member: "Member", memberRemoved: "Member removed", memberRoleUpdated: "Member role updated", members: "Members", people: "People", name: "Name", namePlaceholder: "Enter the organization name", noInvitations: "No invitations", noOrganizations: "No organizations", organization: "Organization", organizationDeleted: "Organization deleted", organizationInvitationsEmptyDescription: "Invite a teammate to collaborate in this organization.", organizations: "Organizations", organizationsDescription: "Create an organization to collaborate with others and manage shared access.", organizationProfile: "Organization profile", organizationUpdatedSuccess: "Organization updated successfully", owner: "Owner", pending: "Pending", nextPage: "Next page", firstPage: "First page", lastPage: "Last page", pageOf: "Page {{page}} of {{pages}}", rowsPerPage: "Rows per page", columns: "Columns", selectedCount: "{{count}} selected", selectRow: "Select row", selectAllRows: "Select all rows on this page", cancelSelectedInvitations: "Cancel selected invitations", cancelSelectedInvitationsDescription: "Cancel the selected pending invitations?", invitationsCanceled: "{{count}} invitations canceled", removeSelectedMembers: "Remove selected members", removeSelectedMembersDescription: "Remove the selected members from this organization? They will lose access immediately.", membersRemoved: "{{count}} members removed", deleteSelectedRoles: "Delete selected roles", deleteSelectedRolesDescription: "Delete the selected roles? Roles assigned to members cannot be deleted.", rolesDeleted: "{{count}} roles deleted", personalAccount: "Personal account", previousPage: "Previous page", rejected: "Rejected", paginationRange: "{{from}}–{{to}} of {{total}}", return: "Return", rejectInvitation: "Reject invitation", removeMember: "Remove member", removeMemberWarning: "Are you sure you want to remove this member from the organization? They will lose access immediately.", resendInvitation: "Resend invitation", role: "Role", search: "Search...", selectAtLeastOneRole: "Select at least one role", selectRoles: "Select roles", slug: "Slug", slugPlaceholder: "organization-slug", status: "Status", uploadLogo: "Upload logo", userInvitationsEmptyDescription: "Invitations to join an organization will show up here.", verifyEmailToViewInvitations: "Verify your email to view invitations", verifyEmailToViewInvitationsDescription: "For your security, invitations are available after you verify your email address.", teams: "Teams", team: "Team", teamsDescription: "Create teams and manage their members.", selectTeam: "Select a team", allTeams: "All teams", selectMember: "Select a member", createTeam: "Create team", renameTeam: "Rename team", deleteTeam: "Delete team", deleteTeamDescription: "Delete this team and remove its member assignments. This cannot be undone.", noTeams: "No teams", noTeamsDescription: "Create a team to organize access within this organization.", teamMembers: "Team members", addTeamMember: "Add team member", removeTeamMember: "Remove from team", teamCreated: "Team created", teamUpdated: "Team updated", teamDeleted: "Team deleted", teamLimitReached: "This organization has reached its team limit.", teamMemberLimitReached: "This team has reached its member limit.", lastTeamRemovalDisabled: "This organization must keep at least one team.", activeTeamRemovalDisabled: "Switch to another team before deleting this team.", onlyOwnerActionDisabled: "Transfer ownership before removing the only owner.", limitReached: "Limit reached", organizationLimitReached: "You have reached the organization limit.", membershipLimitReached: "This organization has reached its member limit.", invitationLimitReached: "This organization has reached its invitation limit.", roles: "Roles", rolesDescription: "Create roles and choose what each role can do.", createRole: "Create role", editRole: "Edit role", deleteRole: "Delete role", deleteRoleDescription: "Delete this role permanently. Members must move to another role first.", roleName: "Role name", permissions: "Permissions", permissionsLimitedDescription: "You can assign only permissions included in your own role.", noRoles: "No custom roles", noRolesDescription: "Create a role to define custom organization access.", roleCreated: "Role created", roleUpdated: "Role updated", roleDeleted: "Role deleted", roleInUse: "This role is assigned to {{count}} member(s).", roleNamePlaceholder: "support-agent" }, q = (e) => e !== void 0 && Number.isSafeInteger(e) && e >= 0 ? e : void 0, me = r("organization", (t = {}) => { let n = { ...K, ...t.localization }, r = typeof t.teams == "object" ? t.teams : void 0; return { creatorRole: t.creatorRole?.trim() || "owner", slug: t.slug, hideSlug: t.hideSlug, slugPrefix: t.slugPrefix ?? "", checkSlug: t.checkSlug ?? !0, localization: n, logo: { ...e.avatar, ...t.logo }, roles: { ...t.roles ?? { owner: n.owner, admin: n.admin, member: n.member }, ...t.additionalRoles }, _localizationResolver: (e, n) => { let r = n.localization; return { ...e, roles: { ...t.roles ?? { owner: r.owner, admin: r.admin, member: r.member }, ...t.additionalRoles } }; }, additionalFields: t.modelFields?.organization ?? t.additionalFields ?? [], modelFields: { organization: t.modelFields?.organization ?? t.additionalFields ?? [], member: t.modelFields?.member ?? [], invitation: t.modelFields?.invitation ?? [], team: t.modelFields?.team ?? [], role: t.modelFields?.role ?? [] }, dynamicAccessControl: t.dynamicAccessControl ? { enabled: t.dynamicAccessControl.enabled ?? !0, permissions: t.dynamicAccessControl.permissions } : void 0, organizationLimit: q(t.organizationLimit), membershipLimit: q(t.membershipLimit), invitationLimit: q(t.invitationLimit), allowMultipleRoles: t.allowMultipleRoles ?? !0, allowOrganizationCreation: t.allowOrganizationCreation ?? !0, teams: t.teams === !0 || r !== void 0 && (r.enabled ?? !0), teamPolicy: { maximumTeams: q(r?.maximumTeams), maximumMembersPerTeam: q(r?.maximumMembersPerTeam), allowRemovingAllTeams: r?.allowRemovingAllTeams ?? !1 }, viewPaths: { settings: { organizations: t.viewPaths?.settings?.organizations ?? "organizations" }, auth: { acceptInvitation: t.viewPaths?.auth?.acceptInvitation ?? "accept-invitation" }, organization: { settings: t.viewPaths?.organization?.settings ?? "settings", people: t.viewPaths?.organization?.people ?? "people", teams: t.viewPaths?.organization?.teams ?? "teams", roles: t.viewPaths?.organization?.roles ?? "roles" } } }; }); //#endregion //#region src/plugins/organization/organization-query.ts function J(e, t, r) { let a = r?.query; return { queryKey: o.detail(t, a), queryFn: t && (a?.organizationId || a?.organizationSlug) ? ({ signal: t }) => e.organization.getOrganization({ ...r, fetchOptions: n(r?.fetchOptions, t) }) : i }; } var he = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r; return e.ensureQueryData({ ...o, ...J(t, n, { query: a, fetchOptions: i }) }); }, ge = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r; return e.prefetchQuery({ ...o, ...J(t, n, { query: a, fetchOptions: i }) }); }, _e = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r; return e.fetchQuery({ ...o, ...J(t, n, { query: a, fetchOptions: i }) }); }; //#endregion //#region src/plugins/organization/organization-roles.ts function Y(e) { return e ? e.split(",").map((e) => e.trim()).filter(Boolean) : []; } function ve(e) { return e.join(","); } function X(e, t) { return Y(e).includes(t); } function ye(e, t) { return Y(e).map((e) => t?.[e] ?? e); } function be(e, t) { let n = { ...e }; for (let e of t ?? []) Object.hasOwn(n, e.role) || (n[e.role] = e.role); return n; } function xe(e, t) { return (e ?? []).filter((e) => X(e.role, t)); } //#endregion //#region src/plugins/organization/reject-invitation-mutation.ts function Se(e, t) { return { mutationKey: a.rejectInvitation, mutationFn: (t) => e.organization.rejectInvitation({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.userInvitations.all(t)] } }; } //#endregion //#region src/plugins/organization/remove-member-mutation.ts function Ce(e, t) { return { mutationKey: a.removeMember, mutationFn: (t) => e.organization.removeMember({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.members.all(t), o.fullDetails(t)], invalidates: [o.lists(t)] } }; } //#endregion //#region src/plugins/organization/role-mutations.ts function Z(e, t, n, r, i) { return { mutationKey: n, mutationFn: async (n) => { let r = n.organizationId ?? i; if (!r) throw Error(`[Better Auth UI] organizationId is required for ${t}.`); let a = { ...n, organizationId: r, fetchOptions: { ...n.fetchOptions, throw: !0 } }; if (t === "deleteRole") { let t = n, i = await e.organization.getRole({ query: { organizationId: r, roleId: t.roleId, roleName: t.roleName }, fetchOptions: { throw: !0 } }); if (i && (await e.organization.listMembers({ query: { organizationId: r, filterField: "role", filterOperator: "contains", filterValue: i.role, limit: 1 }, fetchOptions: { throw: !0 } }))?.members.length) throw Error(`[Better Auth UI] Move members out of the "${i.role}" role before deleting it.`); } let o = e.organization[t]; return await o(a); }, meta: { awaits: [ o.roles.all(r), o.members.all(r), o.invitations.all(r), o.fullDetails(r) ], invalidates: [o.permissions.all(r)] } }; } var we = (e, t, n) => Z(e, "createRole", a.roles.create, t, n), Te = (e, t, n) => Z(e, "updateRole", a.roles.update, t, n), Ee = (e, t, n) => Z(e, "deleteRole", a.roles.delete, t, n); //#endregion //#region src/plugins/organization/role-query.ts function De(e, t, r) { let a = r?.query?.organizationId, s = r?.query?.roleId, c = r?.query?.roleName; return { queryKey: o.roles.detail(t, r?.query), queryFn: t && a && (s || c) ? ({ signal: t }) => e.organization.getRole({ ...r, query: { ...r?.query, organizationId: a }, fetchOptions: n(r?.fetchOptions, t) }) : i }; } //#endregion //#region src/plugins/organization/set-active-organization-mutation.ts function Oe(e, n) { return { mutationKey: a.setActive, mutationFn: (t) => e.organization.setActive({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [t.session, o.activeOrganization(n)], invalidates: [o.lists(n)] } }; } //#endregion //#region src/plugins/organization/set-active-team-mutation.ts function Q(e, n) { return { mutationKey: a.teams.setActive, mutationFn: (t) => { let { organizationId: n, ...r } = t, i = r.fetchOptions; return e.organization.setActiveTeam({ ...r, fetchOptions: { ...i, throw: !0 } }); }, meta: { awaits: [t.session], invalidates: [o.teams.all(n)] } }; } //#endregion //#region src/plugins/organization/team-mutations.ts function $(e, t, n, r) { return { mutationKey: n, mutationFn: (n) => e.organization[t]({ ...n, fetchOptions: { ...n.fetchOptions, throw: !0 } }), meta: { awaits: [o.teams.all(r)] } }; } var ke = (e, t) => $(e, "createTeam", a.teams.create, t), Ae = (e, t) => $(e, "updateTeam", a.teams.update, t), je = (e, t) => $(e, "removeTeam", a.teams.remove, t), Me = (e, t) => $(e, "addTeamMember", a.teams.addMember, t), Ne = (e, t) => $(e, "removeTeamMember", a.teams.removeMember, t); //#endregion //#region src/plugins/organization/update-member-role-mutation.ts function Pe(e, t, n) { return { mutationKey: a.updateMemberRole, mutationFn: (t) => e.organization.updateMemberRole({ ...t, organizationId: t.organizationId ?? n, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [o.members.all(t), o.fullDetails(t)], invalidates: [o.permissions.all(t)] } }; } //#endregion //#region src/plugins/organization/update-organization-mutation.ts function Fe(e, t, n) { return { mutationKey: a.update, mutationFn: (t) => e.organization.update({ ...t, organizationId: t.organizationId ?? n, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [ o.lists(t), o.details(t), o.fullDetails(t), o.activeOrganizations(t) ] } }; } //#endregion export { s as acceptInvitationOptions, c as activeMemberRoleOptions, l as activeOrganizationOptions, Me as addTeamMemberOptions, p as cancelInvitationOptions, m as checkSlugOptions, re as createOrganizationOptions, we as createRoleOptions, ke as createTeamOptions, ie as deleteOrganizationOptions, Ee as deleteRoleOptions, ee as ensureActiveMemberRole, ne as ensureActiveOrganization, ae as ensureFullOrganization, ce as ensureHasPermission, S as ensureInvitation, O as ensureListOrganizationInvitations, N as ensureListOrganizationMembers, R as ensureListOrganizations, le as ensureListUserInvitations, he as ensureOrganization, d as fetchActiveOrganization, se as fetchFullOrganization, y as fetchHasPermission, w as fetchInvitation, A as fetchListOrganizationInvitations, F as fetchListOrganizationMembers, B as fetchListOrganizations, de as fetchListUserInvitations, _e as fetchOrganization, ve as formatMemberRoles, g as fullOrganizationOptions, h as generateOrganizationSlug, f as getActiveOrganization, b as getHasPermission, j as getListOrganizationInvitations, I as getListOrganizationMembers, V as getListOrganizations, fe as getListUserInvitations, X as hasMemberRole, _ as hasPermissionOptions, x as invitationOptions, T as inviteMemberOptions, E as leaveOrganizationOptions, D as listOrganizationInvitationsOptions, M as listOrganizationMembersOptions, L as listOrganizationsOptions, H as listRolesOptions, U as listTeamMembersOptions, W as listTeamsOptions, G as listUserInvitationsOptions, pe as listUserTeamsOptions, ye as memberRoleLabels, xe as membersWithRole, be as mergeOrganizationRoleLabels, K as organizationLocalization, a as organizationMutationKeys, J as organizationOptions, me as organizationPlugin, o as organizationQueryKeys, Y as parseMemberRoles, u as prefetchActiveOrganization, oe as prefetchFullOrganization, v as prefetchHasPermission, C as prefetchInvitation, k as prefetchListOrganizationInvitations, P as prefetchListOrganizationMembers, z as prefetchListOrganizations, ue as prefetchListUserInvitations, ge as prefetchOrganization, Se as rejectInvitationOptions, Ce as removeMemberOptions, Ne as removeTeamMemberOptions, je as removeTeamOptions, te as resolveActiveOrganizationQuery, De as roleOptions, Oe as setActiveOrganizationOptions, Q as setActiveTeamOptions, Pe as updateMemberRoleOptions, Fe as updateOrganizationOptions, Te as updateRoleOptions, Ae as updateTeamOptions };