Skip to main content
Urbicon UI
source

InvitationManager

Admin panel for managing invitation-gated registration. Lists invitations with status, allows sending new ones and deleting unused ones.

01 Usage

Basic

The live preview runs against a mocked demo API (injected via the fetcher prop) — sending and deleting invitations works on demo data. The snippet shows the production setup.

Invitations

Loading...
<script lang="ts">
  import { InvitationManager } from '@urbicon-ui/auth';

  const roles = [
    { value: 'ADMIN', label: 'Admin' },
    { value: 'USER', label: 'User' }
  ];
</script>

<InvitationManager {roles} />

02 Accessibility

Every delete button names its invitation

As in PasskeyManager, each row's button carries an aria-label that appends the invitee's email to the visible "Delete", so a reader can tell the rows apart without first navigating into them.

Deliberately no autofill on the email field

This is the one email field in the auth package without an autoComplete hint — and that is correct. You are typing someone else's address, so offering the signed-in user's own email would be wrong every single time.

Status is text inside a badge

Pending and registered invitations differ by the localized word in the Badge, not only by its colour. The role Select and the send-email Checkbox take real labels through their label props, so the whole form is navigable by label.

One error region for the form and the list

Sending and deleting share the always-mounted aria-live="polite" region below the heading, so a failure from either path is announced without focus leaving where the user was working.

03 API Reference

8 props 1 required
Prop
Type
Default
Description

04 Types

Local type definitions used by this component.

6 types
Name
Kind
Category
Used by
Description

05 Installation

Import

import { InvitationManager } from '@urbicon-ui/auth';