diff --git a/src/app/(user)/user/profiles/page.tsx b/src/app/(user)/user/profiles/page.tsx new file mode 100644 index 0000000..e7dc15f --- /dev/null +++ b/src/app/(user)/user/profiles/page.tsx @@ -0,0 +1,409 @@ +'use client'; + +import { useState } from 'react'; +import { useSearchParams } from 'next/navigation'; +import Image from 'next/image'; +import Link from 'next/link'; + +// Sample profile data +const profilesData = [ + { + id: '1', + name: 'Brian Noseland', + verified: true, + title: 'Licensed Real Estate Agent', + location: 'Colorado', + memberSince: 'March 2020', + bio: 'Brian has eight years of experience helping clients buy, sell, and invest in properties. He combines strong analytical skills with market insight to deliver smooth, data-driven real estate transactions.', + expertise: ['Buyers', 'Sellers', 'Divorce', 'Luxury', 'Retirement', 'Historical', 'condo', 'Rural'], + certifications: ['FHA', 'Conventional', 'USDA'], + matchPercentage: 95, + imageUrl: '/assets/images/professional-1.jpg', + }, + { + id: '2', + name: 'Brian Noseland', + verified: true, + title: 'Licensed Real Estate Agent', + location: 'Colorado', + memberSince: 'March 2020', + bio: 'Brian has eight years of experience helping clients buy, sell, and invest in properties. He combines strong analytical skills with market insight to deliver smooth, data-driven real estate transactions.', + expertise: ['Buyers', 'Sellers', 'Divorce', 'Luxury', 'Retirement', 'Historical', 'condo'], + certifications: ['FHA', 'Conventional', 'USDA'], + matchPercentage: 95, + imageUrl: '/assets/images/professional-2.jpg', + }, + { + id: '3', + name: 'Brian Noseland', + verified: true, + title: 'Licensed Real Estate Agent', + location: 'Colorado', + memberSince: 'March 2020', + bio: 'Brian has eight years of experience helping clients buy, sell, and invest in properties. He combines strong analytical skills with market insight to deliver smooth, data-driven real estate transactions.', + expertise: ['Buyers', 'Sellers', 'Divorce', 'Luxury', 'Retirement', 'Historical', 'condo', 'Rural'], + certifications: ['FHA', 'Conventional', 'USDA'], + matchPercentage: 95, + imageUrl: '/assets/images/professional-3.jpg', + }, + { + id: '4', + name: 'Brian Noseland', + verified: true, + title: 'Licensed Real Estate Agent', + location: 'Colorado', + memberSince: 'March 2020', + bio: 'Brian has eight years of experience helping clients buy, sell, and invest in properties. He combines strong analytical skills with market insight to deliver smooth, data-driven real estate transactions.', + expertise: ['Buyers', 'Sellers', 'Divorce', 'Luxury', 'Retirement', 'Historical', 'condo', 'Rural'], + certifications: ['FHA', 'Conventional', 'USDA'], + matchPercentage: 95, + imageUrl: '/assets/images/professional-1.jpg', + }, + { + id: '5', + name: 'Brian Noseland', + verified: true, + title: 'Licensed Real Estate Agent', + location: 'Colorado', + memberSince: 'March 2020', + bio: 'Brian has eight years of experience helping clients buy, sell, and invest in properties. He combines strong analytical skills with market insight to deliver smooth, data-driven real estate transactions.', + expertise: ['Buyers', 'Sellers', 'Divorce', 'Luxury', 'Retirement', 'Historical', 'condo', 'Rural'], + certifications: ['FHA', 'Conventional', 'USDA'], + matchPercentage: 95, + imageUrl: '/assets/images/professional-2.jpg', + }, +]; + +// Filter options +const clientSpecializations = [ + 'Buyers', 'Sellers', 'Divorce', 'First time buyers', 'First time sellers', 'Estate' +]; + +const loanTypes = [ + 'Conventional', 'FHA', 'VA', 'USDA', 'Downpayment Assistance Programs' +]; + +const propertyTypes = [ + 'SFR', 'Townhome', 'condo', 'Manufactured', 'Apartment / Multifamily', + 'Rural', 'Luxury', 'Retirement', 'Investment/ Income Producing', + 'Duplex / Tri-plex / 4-plex', 'Historical', 'Mountain Property' +]; + +const pricePoints = [ + 'Under $100K', '$100K - $300K', '$300K - $500K', '$500K - $1M', '$1M and above' +]; + +const categoryTabs = [ + { id: 'residential', label: 'Residential' }, + { id: 'analytics', label: 'Analytics' }, + { id: 'commercial', label: 'Commercial' }, + { id: 'property', label: 'Property' }, +]; + +interface FilterSectionProps { + title: string; + options: string[]; + selectedOptions: string[]; + onToggle: (option: string) => void; + showMore?: boolean; +} + +function FilterSection({ title, options, selectedOptions, onToggle, showMore }: FilterSectionProps) { + const [expanded, setExpanded] = useState(false); + const displayOptions = expanded ? options : options.slice(0, 6); + + return ( +
{profile.title}
++ {showFullBio ? profile.bio : truncatedBio} + {profile.bio.length > 150 && ( + + )} +
+ + {/* Expertise */} +Expertise:
+