Invitation

Invitation acceptance and decline interface

SaaSAuth

Overview

The invitation components display tenant invitations to users. InvitationPreview shows invitation details (inviter, tenant, expiration). InvitationAcceptDecline combines the preview with accept/decline action buttons, supporting loading states, errors, expired invitations, and optional decline.

Usage

import {
  InvitationAcceptDecline,
  InvitationPreviewComponent,
} from "@leanicon/web-builder-library/saas";

{
  /* Preview only */
}
<InvitationPreviewComponent
  invitation={{
    tenantId: "t-123",
    tenantName: "Acme Corp",
    inviterName: "John Doe",
    inviteeEmail: "[email protected]",
    expiresAt: new Date(Date.now() + 7 * 24 * 60 * 60 * 1000),
    isExpired: false,
  }}
/>;

{
  /* With accept/decline actions */
}
<InvitationAcceptDecline
  invitation={invitation}
  onAccept={() => acceptInvitation()}
  onDecline={() => declineInvitation()}
/>;

Variants

Default Preview

You've been invited

Invited by John Doe

to join Acme Corporation

Invitation for

[email protected]

Expires Oct 9, 2026, 10:23 PM

Expired Preview

Accept and Decline

You've been invited

Invited by John Doe

to join Acme Corporation

Invitation for

[email protected]

Expires Oct 9, 2026, 10:23 PM

Accept/Decline Loading

You've been invited

Invited by John Doe

to join Acme Corporation

Invitation for

[email protected]

Expires Oct 9, 2026, 10:23 PM

Accept/Decline With Error

You've been invited

Invited by John Doe

to join Acme Corporation

Invitation for

[email protected]

Expires Oct 9, 2026, 10:23 PM

Accept/Decline Expired

Accept Only (No Decline)

You've been invited

Invited by John Doe

to join Acme Corporation

Invitation for

[email protected]

Expires Oct 9, 2026, 10:23 PM