diff --git a/ui/components/SessionsPage.tsx b/ui/components/SessionsPage.tsx index a4aaddb..64a2cf3 100644 --- a/ui/components/SessionsPage.tsx +++ b/ui/components/SessionsPage.tsx @@ -1,4 +1,8 @@ import { AuthenticatedLayout } from "./AuthenticatedLayout.tsx"; +import { EventCockpitDeck } from "./sessions/EventCockpitDeck.tsx"; +import { DirectPassDrawer } from "./sessions/DirectPassDrawer.tsx"; +import { WorkshopDrawer } from "./sessions/WorkshopDrawer.tsx"; +import { ScopeModal } from "./sessions/ScopeModal.tsx"; export const SessionsPage = ({ sessions, @@ -24,114 +28,7 @@ export const SessionsPage = ({ style="display: none; margin-bottom: 1rem; padding: 0.75rem 1rem; border-radius: var(--radius-md); font-size: 0.9rem;" /> - {eventPasses && eventPasses.length > 0 && ( -
-

- Event Cockpit Deck (Live Workshops) -

-
- {eventPasses.map((event) => ( -
-
-
-

- {event.name} -

-
- Expires: {new Date(event.expires_at).toLocaleString()} -
-
- Active -
- - {/* Progress Bar for Seats */} -
-
- Seats Claimed - - {event.seats_claimed} /{" "} - {event.max_seats === 0 ? "∞" : event.max_seats} - -
-
-
0 - ? Math.min( - (event.seats_claimed / event.max_seats) * 100, - 100, - ) - : 100 - }%;`} - > -
-
-
- - {/* Quick Copy Snippets */} -
-
- - PIN: - - - {event.pin_code} - - -
-
- - Link: - - - /e/{event.slug} - - -
-
- - {/* Cockpit Actions */} -
- - -
-
- ))} -
-
- )} +
@@ -199,703 +96,11 @@ export const SessionsPage = ({
-
-

- Mint an isolated, scoped child session for 1-click magic links, CLI - tools, team members, or AI assistants without exposing your primary - passkeys. -

- -
- {/* Label Input */} -
- - -
- - {/* Direct 1-Click Destination (App Selection) */} -
- - -

- Selecting an app scopes the pass and automatically redirects the - recipient to that app upon 1-click redemption. -

-
- - {/* Lifespan Presets */} -
- -
- - - - -
- -
- - {/* Access Mode Presets */} -
- -
- - - {isAdmin && ( - - )} - -
- -
- - {/* Progressive Disclosure: Specific App & Capability Scopes */} -
- - ▸ Customize Specific App Grants & Capabilities (Optional) - -
-

- Select which subsidiary microservices and IAM capabilities - this delegated token is permitted to access: -

- -
- - - - {apps.map((app) => ( - - ))} -
-
-
- -
- - -
-
- - {/* Hand-Off Card (Revealed upon generation) */} - -
- - + + - {/* Edit Scopes Modal */} - + {/* Desktop Table View (≥ 768px) */}