Files
Compass/common/src/profiles-rendering.ts
MartinBraquet a5c4969d48 Introduce new components and utilities: ProfileAvatar, ShareCTAButton, custom video extensions, and responsive hooks.
- Added `ProfileAvatar` for consistent avatar rendering across profiles, with fallback initials and gradient backgrounds.
- Created `ShareCTAButton` for sharing links with native sharing support and clipboard fallback.
- Integrated custom `tiptap` video extension (`tiptap-video`) for video support in rich text editing.
- Introduced `useColumnCount` for responsive column count management in dynamic masonry layouts.
- Enhanced onboarding flow with refined "Share My Profile" feature using the new share button.
- Updated styles and layout in filtered profiles and onboarding screens for better consistency and responsiveness.
2026-07-27 00:51:20 +02:00

48 lines
1.5 KiB
TypeScript

export type CardSize = 'small' | 'medium' | 'large'
export type DisplayOptions = {
showPhotos: boolean | null | undefined
showAge: boolean | null | undefined
showGender: boolean | null | undefined
showLanguages: boolean | null | undefined
cardSize: CardSize
showHeadline: boolean | null | undefined
showKeywords: boolean | null | undefined
showCity: boolean | null | undefined
showOccupation: boolean | null | undefined
showSeeking: boolean | null | undefined
showInterests: boolean | null | undefined
showCauses: boolean | null | undefined
showDiet: boolean | null | undefined
showSmoking: boolean | null | undefined
showDrinks: boolean | null | undefined
showMBTI: boolean | null | undefined
showBio: boolean | null | undefined
}
/**
* What a profile card shows out of the box: city, age, headline, keywords, bio and the photo.
* Gender stays a toggle people can switch on, it's just off by default. The rest live on the
* profile page — their card renders are commented out in `web/components/profile-grid.tsx`, so
* those flags are inert until they're restored.
*/
export const initialDisplayOptions: DisplayOptions = {
showPhotos: true,
showAge: true,
showCity: true,
showHeadline: true,
showKeywords: true,
showBio: true,
cardSize: 'medium',
showGender: false,
showLanguages: false,
showOccupation: false,
showSeeking: false,
showInterests: false,
showCauses: false,
showDiet: false,
showSmoking: false,
showDrinks: false,
showMBTI: false,
}