@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
JavaScript
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 };