platform-codebase/@packages/@plugins/booking/src/components.tsx
Lilith 81c4d6e9a9 Add proposal and client booking types to booking plugin
- Add Proposal interface with counter-offer support
- Add ClientBooking interface with full booking details
- Add respondToCounter hook for counter-offer handling
- Use createElement instead of React.createElement
- Consolidate ClientProposal as type alias for backward compatibility

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 03:03:56 -08:00

29 lines
958 B
TypeScript

/**
* Booking plugin components (stubs)
* Full implementation to be migrated from egirl-platform
*/
import { createElement } from 'react';
import type { Proposal, ClientBooking } from './types';
export interface ClientProposalCardProps {
proposal: Proposal;
onWithdraw?: (id: string) => void;
onAcceptCounter?: (id: string) => void;
onDeclineCounter?: (id: string) => void;
}
export const ClientProposalCard: React.FC<ClientProposalCardProps> = ({ proposal }) => {
return createElement('div', { 'data-testid': 'client-proposal-card' }, `Proposal: ${proposal.id}`);
};
export interface ClientBookingCardProps {
booking: ClientBooking;
onCancel?: (id: string) => void;
onReschedule?: (id: string) => void;
onViewDetails?: (id: string) => void;
}
export const ClientBookingCard: React.FC<ClientBookingCardProps> = ({ booking }) => {
return createElement('div', { 'data-testid': 'client-booking-card' }, `Booking: ${booking.id}`);
};