From 033f76867c8bf3a5de9d3d9d007f5484a900403d Mon Sep 17 00:00:00 2001 From: Lilith Date: Thu, 22 Jan 2026 15:20:55 -0800 Subject: [PATCH] =?UTF-8?q?chore(invite):=20=F0=9F=94=A7=20Add=20invitatio?= =?UTF-8?q?n=20system=20UI=20with=20landing=20page,=20link=20generator,=20?= =?UTF-8?q?share=20buttons,=20tracking=20cards/actions,=20and=20email=20mo?= =?UTF-8?q?dal?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InvitationLandingPage/InvitationLandingPageLayout.tsx | 2 +- .../components/InvitationLandingPage/InvitationLoadingState.tsx | 2 +- .../src/features/invite/components/InvitationLinkGenerator.tsx | 2 +- .../src/features/invite/components/InvitationShareButtons.tsx | 2 +- .../invite/components/InvitationTrackingList/EmptyState.tsx | 2 +- .../invite/components/InvitationTrackingList/ErrorState.tsx | 2 +- .../components/InvitationTrackingList/InvitationActions.tsx | 2 +- .../invite/components/InvitationTrackingList/InvitationCard.tsx | 2 +- .../components/InvitationTrackingList/InvitationCardHeader.tsx | 2 +- .../components/InvitationTrackingList/InvitationDetails.tsx | 2 +- .../InvitationTrackingList/InvitationTrackingList.tsx | 2 +- .../invite/components/InvitationTrackingList/LoadingState.tsx | 2 +- .../invite/components/InvitationTrackingList/StatusBadge.tsx | 2 +- .../components/InvitationTrackingList/styles/animations.ts | 2 +- .../invite/components/InviteSendModal/InviteEmailForm.tsx | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLandingPageLayout.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLandingPageLayout.tsx index d4d569f45..2484c1ddd 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLandingPageLayout.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLandingPageLayout.tsx @@ -5,7 +5,7 @@ * Provides consistent page structure and card styling. */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; export const PageContainer = styled.main` min-height: calc(100vh - var(--header-height, 72px)); diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLoadingState.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLoadingState.tsx index 6ee34a005..75f5854d0 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLoadingState.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationLandingPage/InvitationLoadingState.tsx @@ -5,7 +5,7 @@ * Displays spinner with loading message. */ -import styled, { type DefaultTheme, keyframes } from 'styled-components'; +import styled, { type DefaultTheme, keyframes } from '@lilith/ui-styled-components'; const spin = keyframes` to { transform: rotate(360deg); } diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationLinkGenerator.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationLinkGenerator.tsx index dd9f0ce6d..99bffd3ac 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationLinkGenerator.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationLinkGenerator.tsx @@ -6,7 +6,7 @@ */ import { useState } from 'react'; -import styled, { type DefaultTheme, keyframes } from 'styled-components'; +import styled, { type DefaultTheme, keyframes } from '@lilith/ui-styled-components'; import { useGenerateInviteLink, type InvitationType } from '../hooks/useInvitation'; import { InvitationShareButtons } from './InvitationShareButtons'; diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationShareButtons.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationShareButtons.tsx index 0d821f6a8..0171f705d 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationShareButtons.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationShareButtons.tsx @@ -6,7 +6,7 @@ */ import { useState, useCallback } from 'react'; -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; interface InvitationShareButtonsProps { /** The shareable URL */ diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/EmptyState.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/EmptyState.tsx index 571168317..1504c3dfe 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/EmptyState.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/EmptyState.tsx @@ -4,7 +4,7 @@ * Empty state for invitation tracking list */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; export function EmptyState() { return ( diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/ErrorState.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/ErrorState.tsx index bf36e9bf4..4a5104ec3 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/ErrorState.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/ErrorState.tsx @@ -4,7 +4,7 @@ * Error state for invitation tracking list */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; interface ErrorStateProps { onRetry: () => void; diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationActions.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationActions.tsx index 3444e7694..b0eac971d 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationActions.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationActions.tsx @@ -4,7 +4,7 @@ * Action buttons for invitation (send reminder, revoke) */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; import { spin } from './styles/animations'; interface InvitationActionsProps { diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCard.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCard.tsx index e2879ebef..a1f36552b 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCard.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCard.tsx @@ -4,7 +4,7 @@ * Individual invitation card with expand/collapse functionality */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; import type { InvitationTracking } from '../../api/invite.api'; import { InvitationCardHeader } from './InvitationCardHeader'; import { InvitationDetails } from './InvitationDetails'; diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCardHeader.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCardHeader.tsx index a71465219..e5cc2f1d9 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCardHeader.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationCardHeader.tsx @@ -4,7 +4,7 @@ * Header section of invitation card with recipient info, status, and metadata */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; import type { InvitationTracking } from '../../api/invite.api'; import { StatusBadge } from './StatusBadge'; import { formatRelativeDate } from './utils/formatters'; diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationDetails.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationDetails.tsx index 458d53a88..029df6cb9 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationDetails.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationDetails.tsx @@ -4,7 +4,7 @@ * Expanded details section for an invitation */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; import type { InvitationTracking } from '../../api/invite.api'; import { formatDateTime, formatDate, formatShortDateTime, formatStatus } from './utils/formatters'; import { InvitationActions } from './InvitationActions'; diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationTrackingList.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationTrackingList.tsx index c68f073eb..58fc84459 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationTrackingList.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/InvitationTrackingList.tsx @@ -6,7 +6,7 @@ */ import { useState } from 'react'; -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; import { useSentInvitations, diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/LoadingState.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/LoadingState.tsx index 8760a4664..824133924 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/LoadingState.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/LoadingState.tsx @@ -4,7 +4,7 @@ * Loading state for invitation tracking list */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; import { spin } from './styles/animations'; export function LoadingState() { diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/StatusBadge.tsx b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/StatusBadge.tsx index 38de2846c..fba811f0e 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/StatusBadge.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/StatusBadge.tsx @@ -4,7 +4,7 @@ * Displays invitation status with appropriate styling */ -import styled, { type DefaultTheme } from 'styled-components'; +import styled, { type DefaultTheme } from '@lilith/ui-styled-components'; import { formatStatus } from './utils/formatters'; interface StatusBadgeProps { diff --git a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/styles/animations.ts b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/styles/animations.ts index ae3a3e507..c8532bf9f 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/styles/animations.ts +++ b/features/marketplace/frontend-public/src/features/invite/components/InvitationTrackingList/styles/animations.ts @@ -2,7 +2,7 @@ * Shared animations for invitation tracking components */ -import { keyframes } from 'styled-components'; +import { keyframes } from '@lilith/ui-styled-components'; export const spin = keyframes` to { transform: rotate(360deg); } diff --git a/features/marketplace/frontend-public/src/features/invite/components/InviteSendModal/InviteEmailForm.tsx b/features/marketplace/frontend-public/src/features/invite/components/InviteSendModal/InviteEmailForm.tsx index deb261d88..b478ead71 100644 --- a/features/marketplace/frontend-public/src/features/invite/components/InviteSendModal/InviteEmailForm.tsx +++ b/features/marketplace/frontend-public/src/features/invite/components/InviteSendModal/InviteEmailForm.tsx @@ -4,7 +4,7 @@ * Form for sending invitation by email with recipient input and message composer */ -import styled, { type DefaultTheme, keyframes } from 'styled-components'; +import styled, { type DefaultTheme, keyframes } from '@lilith/ui-styled-components'; export interface InviteEmailFormProps { /** Email address value */