@igamingcareer/igaming-components 1.1.21 → 1.1.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +26 -26
- package/dist/index.mjs +2634 -2604
- package/dist/types/components/ui/alert-dialog.d.ts +20 -0
- package/dist/types/components/ui/alert.d.ts +8 -0
- package/dist/types/components/ui/avatar.d.ts +6 -0
- package/dist/types/components/ui/badge.d.ts +9 -0
- package/dist/types/components/ui/button.d.ts +11 -0
- package/dist/types/components/ui/card.d.ts +8 -0
- package/dist/types/components/ui/checkbox.d.ts +4 -0
- package/dist/types/components/ui/collapsible.d.ts +5 -0
- package/dist/types/components/ui/command.d.ts +82 -0
- package/dist/types/components/ui/dialog.d.ts +19 -0
- package/dist/types/components/ui/drawer.d.ts +22 -0
- package/dist/types/components/ui/dropdown-menu.d.ts +27 -0
- package/dist/types/components/ui/input.d.ts +3 -0
- package/dist/types/components/ui/label.d.ts +5 -0
- package/dist/types/components/ui/popover.d.ts +7 -0
- package/dist/types/components/ui/progress.d.ts +4 -0
- package/dist/types/components/ui/radio-group.d.ts +5 -0
- package/dist/types/components/ui/scroll-area.d.ts +5 -0
- package/dist/types/components/ui/select.d.ts +13 -0
- package/dist/types/components/ui/separator.d.ts +4 -0
- package/dist/types/components/ui/slider.d.ts +4 -0
- package/dist/types/components/ui/switch.d.ts +4 -0
- package/dist/types/components/ui/tabs.d.ts +7 -0
- package/dist/types/components/ui/textarea.d.ts +5 -0
- package/dist/types/components/ui/toast.d.ts +15 -0
- package/dist/types/hooks/use-toast.d.ts +45 -0
- package/dist/types/lib/utils.d.ts +2 -0
- package/dist/types/src/components/App/App.d.ts +2 -0
- package/dist/types/src/components/Auth/ForgotPassword.d.ts +26 -0
- package/dist/types/src/components/Auth/ForgotPasswordForm.d.ts +16 -0
- package/dist/types/src/components/Auth/Login.d.ts +36 -0
- package/dist/types/src/components/Auth/LoginForm.d.ts +23 -0
- package/dist/types/src/components/Auth/Register.d.ts +33 -0
- package/dist/types/src/components/Auth/RegisterForm.d.ts +29 -0
- package/dist/types/src/components/Auth/RegisterFormV2.d.ts +20 -0
- package/dist/types/src/components/Auth/RegisterV2.d.ts +18 -0
- package/dist/types/src/components/Auth/SignInPromptModal.d.ts +23 -0
- package/dist/types/src/components/Auth/VerificationBanner.d.ts +11 -0
- package/dist/types/src/components/Button/Button.d.ts +5 -0
- package/dist/types/src/components/CandidateProfile/CandidateProfile.d.ts +49 -0
- package/dist/types/src/components/CareerAssistant/CareerAssistant.d.ts +11 -0
- package/dist/types/src/components/CareerAssistant/MessageBubble.d.ts +15 -0
- package/dist/types/src/components/CareerAssistant/WelcomeScreen.d.ts +7 -0
- package/dist/types/src/components/CareerAssistant/mockCareerAssistant.d.ts +8 -0
- package/dist/types/src/components/Companies/CompaniesList.d.ts +30 -0
- package/dist/types/src/components/Companies/CompanyAdminPage.d.ts +0 -0
- package/dist/types/src/components/Companies/CompanyDetail.d.ts +33 -0
- package/dist/types/src/components/Companies/CompanyDetail.similarCompanies.test.d.ts +1 -0
- package/dist/types/src/components/Companies/CompanyDirectory.d.ts +27 -0
- package/dist/types/src/components/Companies/CompanyDirectoryContainer.d.ts +23 -0
- package/dist/types/src/components/Companies/CompanyFilters.test.d.ts +1 -0
- package/dist/types/src/components/Companies/CompanyGroupDetail.d.ts +6 -0
- package/dist/types/src/components/Companies/CompanyPublicPage.d.ts +0 -0
- package/dist/types/src/components/Companies/CompanyReviewsTab.d.ts +13 -0
- package/dist/types/src/components/Companies/admin/CompanyJobsAdmin.d.ts +0 -0
- package/dist/types/src/components/Companies/admin/CompanyPeopleAdmin.d.ts +0 -0
- package/dist/types/src/components/Companies/admin/CompanyProfileEditor.d.ts +0 -0
- package/dist/types/src/components/Companies/companiesListFilters.d.ts +19 -0
- package/dist/types/src/components/Companies/companiesListFilters.test.d.ts +1 -0
- package/dist/types/src/components/Companies/components/ClaimProfileDialog.d.ts +10 -0
- package/dist/types/src/components/Companies/components/CompaniesHeader.d.ts +2 -0
- package/dist/types/src/components/Companies/components/CompanyAdminEditDialog.d.ts +15 -0
- package/dist/types/src/components/Companies/components/CompanyAdminShell.d.ts +38 -0
- package/dist/types/src/components/Companies/components/CompanyCard.d.ts +25 -0
- package/dist/types/src/components/Companies/components/CompanyClaim.d.ts +7 -0
- package/dist/types/src/components/Companies/components/CompanyComparison.d.ts +12 -0
- package/dist/types/src/components/Companies/components/CompanyFilters.d.ts +10 -0
- package/dist/types/src/components/Companies/components/CompanyHeader.d.ts +34 -0
- package/dist/types/src/components/Companies/components/CompanyMetaHighlights.d.ts +11 -0
- package/dist/types/src/components/Companies/components/LoadingCompanyShadowCard.d.ts +5 -0
- package/dist/types/src/components/Companies/components/ViewControls.d.ts +14 -0
- package/dist/types/src/components/Companies/components/admin/CandidateCard.d.ts +11 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminCandidates.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminEvents.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminJobs.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminNews.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminOverview.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminPeople.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminProducts.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/CompanyAdminSettings.d.ts +10 -0
- package/dist/types/src/components/Companies/components/admin/modals/AddEventModal.d.ts +16 -0
- package/dist/types/src/components/Companies/components/admin/modals/AddJobModal.d.ts +17 -0
- package/dist/types/src/components/Companies/components/admin/modals/AddPersonModal.d.ts +15 -0
- package/dist/types/src/components/Companies/components/admin/modals/AddProductModal.d.ts +15 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyEventsTab.d.ts +8 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyInsightsTab.d.ts +2 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyJobsTab.d.ts +9 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyNewsTab.d.ts +8 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyOverviewTab.d.ts +9 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyPeopleTab.d.ts +6 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyProductsTab.d.ts +6 -0
- package/dist/types/src/components/Companies/components/tabs/CompanySidebar.d.ts +7 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyTabsList.d.ts +7 -0
- package/dist/types/src/components/Companies/components/tabs/CompanyTrustTab.d.ts +7 -0
- package/dist/types/src/components/Companies/data/companies.d.ts +18 -0
- package/dist/types/src/components/Companies/data/company-group-preview.d.ts +3 -0
- package/dist/types/src/components/Companies/hooks/useCompaniesQuery.d.ts +10 -0
- package/dist/types/src/components/Companies/reviews/LeaveReviewModal.d.ts +11 -0
- package/dist/types/src/components/Companies/reviews/ReviewCard.d.ts +9 -0
- package/dist/types/src/components/Companies/reviews/ReviewStars.d.ts +9 -0
- package/dist/types/src/components/Companies/reviews/ReviewSummaryBar.d.ts +7 -0
- package/dist/types/src/components/Companies/reviews/index.d.ts +4 -0
- package/dist/types/src/components/Companies/types/companyAdmin.d.ts +30 -0
- package/dist/types/src/components/Companies/types/index.d.ts +379 -0
- package/dist/types/src/components/Companies/utils/companiesQuery.d.ts +6 -0
- package/dist/types/src/components/Companies/utils/companyFilters.d.ts +53 -0
- package/dist/types/src/components/Companies/utils/companyFilters.test.d.ts +1 -0
- package/dist/types/src/components/Companies/utils/normalizeCompanies.d.ts +15 -0
- package/dist/types/src/components/Companies/utils/normalizeCompaniesResponse.test.d.ts +1 -0
- package/dist/types/src/components/Companies/utils/permissions.d.ts +9 -0
- package/dist/types/src/components/Companies/utils/similarCompanies.d.ts +2 -0
- package/dist/types/src/components/CompanyOnboarding/CompanyOnboardingModal.d.ts +18 -0
- package/dist/types/src/components/CompanyOnboarding/index.d.ts +1 -0
- package/dist/types/src/components/Complaints/Complaints.d.ts +8 -0
- package/dist/types/src/components/Complaints/SubmitComplaintModal.d.ts +16 -0
- package/dist/types/src/components/Consent/Analytics.d.ts +9 -0
- package/dist/types/src/components/Consent/ConsentBanner.d.ts +11 -0
- package/dist/types/src/components/Consent/ConsentContext.d.ts +20 -0
- package/dist/types/src/components/ContactForm/ContactFormHybrid.d.ts +8 -0
- package/dist/types/src/components/Courses/CoursesList.d.ts +9 -0
- package/dist/types/src/components/Dashboard/AddExperienceModal.d.ts +33 -0
- package/dist/types/src/components/Dashboard/AddJobDetailModal.d.ts +9 -0
- package/dist/types/src/components/Dashboard/AddLanguageModal.d.ts +10 -0
- package/dist/types/src/components/Dashboard/AddPreferenceTopicModal.d.ts +7 -0
- package/dist/types/src/components/Dashboard/AddSkillModal.d.ts +7 -0
- package/dist/types/src/components/Dashboard/Alerts/AlertCard.d.ts +12 -0
- package/dist/types/src/components/Dashboard/Alerts/AlertEmptyState.d.ts +5 -0
- package/dist/types/src/components/Dashboard/Alerts/AlertForm.d.ts +10 -0
- package/dist/types/src/components/Dashboard/Alerts/AlertInsightsWidget.d.ts +8 -0
- package/dist/types/src/components/Dashboard/Alerts/AlertStatusBadge.d.ts +8 -0
- package/dist/types/src/components/Dashboard/Alerts/DashboardAlerts.d.ts +11 -0
- package/dist/types/src/components/Dashboard/CVUploadDialog.d.ts +8 -0
- package/dist/types/src/components/Dashboard/CompanyDashboard.d.ts +15 -0
- package/dist/types/src/components/Dashboard/CompanyEmployeeOverview.d.ts +29 -0
- package/dist/types/src/components/Dashboard/CompanyOwnerOverview.d.ts +20 -0
- package/dist/types/src/components/Dashboard/CompanyRecruiterOverview.d.ts +31 -0
- package/dist/types/src/components/Dashboard/Dashboard.d.ts +56 -0
- package/dist/types/src/components/Dashboard/DashboardCourses.d.ts +32 -0
- package/dist/types/src/components/Dashboard/DashboardJobCard.d.ts +13 -0
- package/dist/types/src/components/Dashboard/DashboardJobs.d.ts +17 -0
- package/dist/types/src/components/Dashboard/DashboardLayout.d.ts +15 -0
- package/dist/types/src/components/Dashboard/DashboardNews.d.ts +15 -0
- package/dist/types/src/components/Dashboard/DashboardNewsCard.d.ts +12 -0
- package/dist/types/src/components/Dashboard/DashboardOverview.d.ts +46 -0
- package/dist/types/src/components/Dashboard/DashboardProfile.d.ts +64 -0
- package/dist/types/src/components/Dashboard/DashboardSettings.d.ts +84 -0
- package/dist/types/src/components/Dashboard/DashboardStats.d.ts +17 -0
- package/dist/types/src/components/Dashboard/FreelancerActivationCard.d.ts +6 -0
- package/dist/types/src/components/Dashboard/FreelancerDashboardSection.d.ts +10 -0
- package/dist/types/src/components/Dashboard/FreelancerOnboardingModal.d.ts +10 -0
- package/dist/types/src/components/Dashboard/OnboardingChecklist.d.ts +16 -0
- package/dist/types/src/components/Dashboard/OnboardingDashboard.d.ts +19 -0
- package/dist/types/src/components/Events/EventCalendarCard.d.ts +7 -0
- package/dist/types/src/components/Events/EventsList.d.ts +11 -0
- package/dist/types/src/components/Events/SubmitEventModal.d.ts +22 -0
- package/dist/types/src/components/Events/mockEvents.d.ts +2 -0
- package/dist/types/src/components/Events/types.d.ts +22 -0
- package/dist/types/src/components/Footer/Footer.d.ts +32 -0
- package/dist/types/src/components/Freelancer/FreelancerProfile.d.ts +19 -0
- package/dist/types/src/components/Freelancer/FreelancerProfileContainer.d.ts +2 -0
- package/dist/types/src/components/Freelancer/Freelancers.d.ts +30 -0
- package/dist/types/src/components/Freelancer/FreelancersContainer.d.ts +2 -0
- package/dist/types/src/components/Freelancer/FreelancersList.d.ts +10 -0
- package/dist/types/src/components/Freelancer/mockFreelancers.d.ts +6 -0
- package/dist/types/src/components/GenericListing/Banner.d.ts +9 -0
- package/dist/types/src/components/GenericListing/DateFilter.d.ts +13 -0
- package/dist/types/src/components/GenericListing/LastVisitedJobs.d.ts +7 -0
- package/dist/types/src/components/GenericListing/Listing.d.ts +32 -0
- package/dist/types/src/components/GenericListing/ListingGrid.d.ts +15 -0
- package/dist/types/src/components/GenericListing/ListingHeader.d.ts +5 -0
- package/dist/types/src/components/GenericListing/ListingSort.d.ts +14 -0
- package/dist/types/src/components/GenericListing/MobileFilterDrawer.d.ts +21 -0
- package/dist/types/src/components/GenericListing/MobileNav.d.ts +3 -0
- package/dist/types/src/components/GenericListing/Pagination.d.ts +8 -0
- package/dist/types/src/components/GenericListing/PaginationControls.d.ts +8 -0
- package/dist/types/src/components/GenericListing/SearchBar.d.ts +10 -0
- package/dist/types/src/components/GenericListing/SearchableSelect.d.ts +10 -0
- package/dist/types/src/components/GenericListing/Sidebar.d.ts +11 -0
- package/dist/types/src/components/GenericListing/SidebarFilter.d.ts +31 -0
- package/dist/types/src/components/GenericListing/SidebarFilters.d.ts +12 -0
- package/dist/types/src/components/GenericListing/accessControl.d.ts +22 -0
- package/dist/types/src/components/GenericListing/generateMockJobs.d.ts +2 -0
- package/dist/types/src/components/GenericListing/useJobDataHook.d.ts +5 -0
- package/dist/types/src/components/GenericListing/useLocalStorageState.d.ts +1 -0
- package/dist/types/src/components/Header/Header.d.ts +2 -0
- package/dist/types/src/components/Header/HeaderAlternative.d.ts +13 -0
- package/dist/types/src/components/HomePage/Advantages.d.ts +15 -0
- package/dist/types/src/components/HomePage/Cart.d.ts +12 -0
- package/dist/types/src/components/HomePage/Chatbot.d.ts +6 -0
- package/dist/types/src/components/HomePage/Contact.d.ts +22 -0
- package/dist/types/src/components/HomePage/CourseTypes.d.ts +26 -0
- package/dist/types/src/components/HomePage/Courses.d.ts +16 -0
- package/dist/types/src/components/HomePage/Destinations.d.ts +12 -0
- package/dist/types/src/components/HomePage/FAQ.d.ts +11 -0
- package/dist/types/src/components/HomePage/FeatureJobs.d.ts +19 -0
- package/dist/types/src/components/HomePage/Features.d.ts +13 -0
- package/dist/types/src/components/HomePage/ForEmployers.d.ts +10 -0
- package/dist/types/src/components/HomePage/Gallery.d.ts +13 -0
- package/dist/types/src/components/HomePage/Hero.d.ts +11 -0
- package/dist/types/src/components/HomePage/HeroAlternative.d.ts +11 -0
- package/dist/types/src/components/HomePage/HeroSection.d.ts +2 -0
- package/dist/types/src/components/HomePage/HomePage.d.ts +3 -0
- package/dist/types/src/components/HomePage/IgamingCareerHome.d.ts +33 -0
- package/dist/types/src/components/HomePage/ImageSlider.d.ts +11 -0
- package/dist/types/src/components/HomePage/JobSearch.d.ts +2 -0
- package/dist/types/src/components/HomePage/JobsSearchWidget.d.ts +22 -0
- package/dist/types/src/components/HomePage/Navbar.d.ts +19 -0
- package/dist/types/src/components/HomePage/Newsletter.d.ts +11 -0
- package/dist/types/src/components/HomePage/NewsletterV2.d.ts +21 -0
- package/dist/types/src/components/HomePage/NotificationModal.d.ts +7 -0
- package/dist/types/src/components/HomePage/Partners.d.ts +2 -0
- package/dist/types/src/components/HomePage/Services.d.ts +13 -0
- package/dist/types/src/components/HomePage/ServicesNoIcons.d.ts +16 -0
- package/dist/types/src/components/HomePage/SidebarNewsletter.d.ts +9 -0
- package/dist/types/src/components/HomePage/SidebarNewsletterV2.d.ts +18 -0
- package/dist/types/src/components/HomePage/Testimonials.d.ts +14 -0
- package/dist/types/src/components/HomePage/TestimonialsVariant.d.ts +2 -0
- package/dist/types/src/components/HomePage/TrustSignals.d.ts +18 -0
- package/dist/types/src/components/HomePage/ValueProposition.d.ts +12 -0
- package/dist/types/src/components/HomePage/Videos.d.ts +13 -0
- package/dist/types/src/components/HomePage/context/CartContext.d.ts +22 -0
- package/dist/types/src/components/IgamingCoursesPage/CourseCard.d.ts +12 -0
- package/dist/types/src/components/IgamingCoursesPage/CourseFilters.d.ts +19 -0
- package/dist/types/src/components/IgamingCoursesPage/CourseNavigation.d.ts +11 -0
- package/dist/types/src/components/IgamingCoursesPage/CourseSearch.d.ts +10 -0
- package/dist/types/src/components/IgamingCoursesPage/CourseSidebarFilters.d.ts +23 -0
- package/dist/types/src/components/IgamingCoursesPage/CoursesListingCards.d.ts +17 -0
- package/dist/types/src/components/IgamingCoursesPage/FeaturedCourses.d.ts +12 -0
- package/dist/types/src/components/IgamingCoursesPage/HeroSection.d.ts +9 -0
- package/dist/types/src/components/IgamingCoursesPage/IgamingCoursesPage.d.ts +12 -0
- package/dist/types/src/components/IgamingCoursesPage/MobileCourseSearch.d.ts +10 -0
- package/dist/types/src/components/IgamingCoursesPage/Statistics.d.ts +8 -0
- package/dist/types/src/components/IgamingCoursesPage/data/courses.d.ts +3 -0
- package/dist/types/src/components/IgamingCoursesPage/types/course.d.ts +63 -0
- package/dist/types/src/components/JobListing/JobListing.d.ts +24 -0
- package/dist/types/src/components/JobListing/components/Filters.d.ts +17 -0
- package/dist/types/src/components/JobListing/components/Footer.d.ts +12 -0
- package/dist/types/src/components/JobListing/components/JobCard.d.ts +14 -0
- package/dist/types/src/components/JobListing/components/JobList.d.ts +11 -0
- package/dist/types/src/components/JobListing/components/MobileFilterDrawer.d.ts +21 -0
- package/dist/types/src/components/JobListing/components/Navbar.d.ts +13 -0
- package/dist/types/src/components/JobListing/components/PromoCard.d.ts +11 -0
- package/dist/types/src/components/JobListing/components/SearchBar.d.ts +10 -0
- package/dist/types/src/components/JobListing/types/Job.d.ts +23 -0
- package/dist/types/src/components/Jobs/JobsList.d.ts +38 -0
- package/dist/types/src/components/Jobs/jobsListFilters.d.ts +12 -0
- package/dist/types/src/components/Jobs/jobsListFilters.test.d.ts +1 -0
- package/dist/types/src/components/JobsDetails/JobDetail.d.ts +9 -0
- package/dist/types/src/components/JobsDetails/utils/navigation.d.ts +2 -0
- package/dist/types/src/components/JobsDetails/utils/types.d.ts +37 -0
- package/dist/types/src/components/JobsDetails/utils/useJobSlug.d.ts +1 -0
- package/dist/types/src/components/MarketDetail/MarketDetail.d.ts +6 -0
- package/dist/types/src/components/Markets/MarketsList.d.ts +9 -0
- package/dist/types/src/components/Markets/SuggestMarketModal.d.ts +8 -0
- package/dist/types/src/components/Markets/mockMarkets.d.ts +3 -0
- package/dist/types/src/components/Modal/Modal.d.ts +10 -0
- package/dist/types/src/components/News/NewsList.d.ts +7 -0
- package/dist/types/src/components/NewsPage/BreakingNews.d.ts +7 -0
- package/dist/types/src/components/NewsPage/NewsCard.d.ts +15 -0
- package/dist/types/src/components/NewsPage/NewsFilters.d.ts +14 -0
- package/dist/types/src/components/NewsPage/NewsPage.d.ts +19 -0
- package/dist/types/src/components/NewsPage/NewsSearch.d.ts +9 -0
- package/dist/types/src/components/NewsPage/NewsSidebarFilters.d.ts +19 -0
- package/dist/types/src/components/NewsPage/TrendingNews.d.ts +8 -0
- package/dist/types/src/components/NewsPage/data/news.d.ts +3 -0
- package/dist/types/src/components/NewsPage/types/news.d.ts +35 -0
- package/dist/types/src/components/Notification/NotificationItem.d.ts +15 -0
- package/dist/types/src/components/Notification/NotificationProvider.d.ts +20 -0
- package/dist/types/src/components/Notification/NotificationTester.d.ts +21 -0
- package/dist/types/src/components/Notification/NotificationViewport.d.ts +20 -0
- package/dist/types/src/components/Notification/index.d.ts +4 -0
- package/dist/types/src/components/Notification/notificationStore.d.ts +51 -0
- package/dist/types/src/components/Onboarding/DashboardOnboardingSection.d.ts +12 -0
- package/dist/types/src/components/Onboarding/OnboardingChecklist.d.ts +8 -0
- package/dist/types/src/components/Onboarding/OnboardingContext.d.ts +6 -0
- package/dist/types/src/components/Onboarding/OnboardingDashboard.d.ts +11 -0
- package/dist/types/src/components/Onboarding/OnboardingModal.d.ts +19 -0
- package/dist/types/src/components/Onboarding/OnboardingPopup.d.ts +6 -0
- package/dist/types/src/components/Onboarding/ShieldedActionButton.d.ts +15 -0
- package/dist/types/src/components/Onboarding/VerificationBanner.d.ts +12 -0
- package/dist/types/src/components/Onboarding/index.d.ts +13 -0
- package/dist/types/src/components/Places/PlacesList.d.ts +7 -0
- package/dist/types/src/components/Places/mockPlaces.d.ts +2 -0
- package/dist/types/src/components/Places/types.d.ts +16 -0
- package/dist/types/src/components/Prices/Group/GroupPrices.d.ts +10 -0
- package/dist/types/src/components/Prices/Summary/SlidingSummary.d.ts +7 -0
- package/dist/types/src/components/ProductCategories/ProductCategoriesList.d.ts +9 -0
- package/dist/types/src/components/ProductCategories/ProductCategoryDetail.d.ts +7 -0
- package/dist/types/src/components/ProductCategories/mockProductCategories.d.ts +3 -0
- package/dist/types/src/components/ProductCategories/types.d.ts +47 -0
- package/dist/types/src/components/RegulatorDetail/RegulatorDetail.d.ts +6 -0
- package/dist/types/src/components/Regulators/JurisdictionsList.d.ts +6 -0
- package/dist/types/src/components/Regulators/RegulatorsList.d.ts +9 -0
- package/dist/types/src/components/Regulators/mockJurisdictions.d.ts +3 -0
- package/dist/types/src/components/Regulators/mockRegulators.d.ts +3 -0
- package/dist/types/src/components/Regulators/types.d.ts +55 -0
- package/dist/types/src/components/Reviews/LeaveReviewStandaloneModal.d.ts +23 -0
- package/dist/types/src/components/Reviews/Reviews.d.ts +8 -0
- package/dist/types/src/components/Shared/ActiveFiltersDisplay.d.ts +15 -0
- package/dist/types/src/components/Shared/Cards/CareerPathCard.d.ts +20 -0
- package/dist/types/src/components/Shared/Cards/ChannelCard.d.ts +9 -0
- package/dist/types/src/components/Shared/Cards/CompanyCardMobile.d.ts +30 -0
- package/dist/types/src/components/Shared/Cards/CompanyTypeCard.d.ts +9 -0
- package/dist/types/src/components/Shared/Cards/CourseCard.d.ts +37 -0
- package/dist/types/src/components/Shared/Cards/DepartmentCard.d.ts +15 -0
- package/dist/types/src/components/Shared/Cards/DepartmentEntityCard.d.ts +9 -0
- package/dist/types/src/components/Shared/Cards/DirectoryDetailCard.d.ts +13 -0
- package/dist/types/src/components/Shared/Cards/DirectoryInfoPanel.d.ts +25 -0
- package/dist/types/src/components/Shared/Cards/DirectoryKeyRolesList.d.ts +11 -0
- package/dist/types/src/components/Shared/Cards/EventsCard.d.ts +19 -0
- package/dist/types/src/components/Shared/Cards/FreelancerCard.d.ts +23 -0
- package/dist/types/src/components/Shared/Cards/GamblingVerticalCard.d.ts +9 -0
- package/dist/types/src/components/Shared/Cards/JobCard.d.ts +31 -0
- package/dist/types/src/components/Shared/Cards/JurisdictionCard.d.ts +8 -0
- package/dist/types/src/components/Shared/Cards/MarketsCard.d.ts +8 -0
- package/dist/types/src/components/Shared/Cards/NewsCard.d.ts +32 -0
- package/dist/types/src/components/Shared/Cards/PlacesCard.d.ts +18 -0
- package/dist/types/src/components/Shared/Cards/PlaybookCard.d.ts +17 -0
- package/dist/types/src/components/Shared/Cards/ProductCategoriesCard.d.ts +26 -0
- package/dist/types/src/components/Shared/Cards/RegulatorsCard.d.ts +21 -0
- package/dist/types/src/components/Shared/Cards/RoleGuideCard.d.ts +17 -0
- package/dist/types/src/components/Shared/Cards/TermCard.d.ts +14 -0
- package/dist/types/src/components/Shared/Cards/VideoCard.d.ts +21 -0
- package/dist/types/src/components/Shared/Cards/index.d.ts +10 -0
- package/dist/types/src/components/Shared/Directory/DirectoryBanner.d.ts +8 -0
- package/dist/types/src/components/Shared/Directory/DirectoryShell.d.ts +30 -0
- package/dist/types/src/components/Shared/Directory/DirectoryShowcase.d.ts +3 -0
- package/dist/types/src/components/Shared/Directory/DirectoryToolbar.d.ts +20 -0
- package/dist/types/src/components/Shared/Directory/ViewModeToggle.d.ts +1 -0
- package/dist/types/src/components/Shared/Directory/index.d.ts +5 -0
- package/dist/types/src/components/Shared/Directory/types.d.ts +73 -0
- package/dist/types/src/components/Shared/GenericFilter.d.ts +17 -0
- package/dist/types/src/components/Shared/GenericPagination.d.ts +8 -0
- package/dist/types/src/components/Shared/ItemsPerPageSelector.d.ts +10 -0
- package/dist/types/src/components/Shared/Listing/ListingActiveFilters.d.ts +16 -0
- package/dist/types/src/components/Shared/Listing/ListingEmptyState.d.ts +16 -0
- package/dist/types/src/components/Shared/Listing/ListingHeader.d.ts +17 -0
- package/dist/types/src/components/Shared/Listing/ListingMobileFilters.d.ts +24 -0
- package/dist/types/src/components/Shared/Listing/ListingPagination.d.ts +15 -0
- package/dist/types/src/components/Shared/Listing/ListingSearchBar.d.ts +20 -0
- package/dist/types/src/components/Shared/Listing/ListingSidebar.d.ts +25 -0
- package/dist/types/src/components/Shared/Listing/ListingToolbar.d.ts +24 -0
- package/dist/types/src/components/Shared/Listing/index.d.ts +9 -0
- package/dist/types/src/components/Shared/Listing/types.d.ts +50 -0
- package/dist/types/src/components/Shared/LoadingShadowCard.d.ts +5 -0
- package/dist/types/src/components/Shared/Mobile/BottomSheetFilter.d.ts +23 -0
- package/dist/types/src/components/Shared/Mobile/FloatingActionButton.d.ts +22 -0
- package/dist/types/src/components/Shared/Mobile/HorizontalTagSlider.d.ts +22 -0
- package/dist/types/src/components/Shared/Mobile/StickyFilterChips.d.ts +20 -0
- package/dist/types/src/components/Shared/Mobile/UserIdentityMenu.d.ts +36 -0
- package/dist/types/src/components/Shared/Mobile/index.d.ts +5 -0
- package/dist/types/src/components/Shared/MobileDrawer.d.ts +9 -0
- package/dist/types/src/components/Shared/PageTitleHeader.d.ts +16 -0
- package/dist/types/src/components/Shared/SearchBox.d.ts +11 -0
- package/dist/types/src/components/Shared/ShieldedActionButton.d.ts +14 -0
- package/dist/types/src/components/Shared/SubscriptionModal.d.ts +10 -0
- package/dist/types/src/components/Shared/Taxonomy/ExamplesPanel.d.ts +7 -0
- package/dist/types/src/components/Shared/Taxonomy/TaxonomyApproveForm.d.ts +15 -0
- package/dist/types/src/components/Shared/Taxonomy/TaxonomySuggestionDetail.d.ts +11 -0
- package/dist/types/src/components/Shared/Taxonomy/TaxonomySuggestionTable.d.ts +12 -0
- package/dist/types/src/components/Shared/Taxonomy/types.d.ts +18 -0
- package/dist/types/src/components/Shared/ViewControls.d.ts +13 -0
- package/dist/types/src/components/Shared/ViewModeToggle.d.ts +9 -0
- package/dist/types/src/components/Shared/extractTagsFromTitle.d.ts +3 -0
- package/dist/types/src/components/Shared/helpers/api.d.ts +21 -0
- package/dist/types/src/components/Shared/helpers/filters.d.ts +10 -0
- package/dist/types/src/components/Shared/helpers/jobsHelpers.d.ts +6 -0
- package/dist/types/src/components/Shared/types/shared-types.d.ts +125 -0
- package/dist/types/src/components/Shared/useSavedJobs.d.ts +5 -0
- package/dist/types/src/components/TagBadge/TagBadge.d.ts +12 -0
- package/dist/types/src/components/TagPicker/TagPicker.d.ts +20 -0
- package/dist/types/src/components/hooks/useFilters.d.ts +5 -0
- package/dist/types/src/components/hooks/useOnboarding.d.ts +19 -0
- package/dist/types/src/components/hooks/usePagination.d.ts +6 -0
- package/dist/types/src/components/hooks/useSubscription.d.ts +4 -0
- package/dist/types/src/data/mockCandidates.d.ts +2 -0
- package/dist/types/src/data/mockCareerAssistant.d.ts +6 -0
- package/dist/types/src/data/mockComplaints.d.ts +2 -0
- package/dist/types/src/data/mockReviews.d.ts +6 -0
- package/dist/types/src/hooks/useCareerAssistant.d.ts +7 -0
- package/dist/types/src/index.d.ts +152 -0
- package/dist/types/src/main.d.ts +7 -0
- package/dist/types/src/services/careerAssistant.mock.d.ts +53 -0
- package/dist/types/src/stories/Button.stories.d.ts +7 -0
- package/dist/types/src/stories/CompanyGroupDetail.stories.d.ts +6 -0
- package/dist/types/src/stories/ConsentAnalytics.stories.d.ts +9 -0
- package/dist/types/src/stories/Footer.stories.d.ts +7 -0
- package/dist/types/src/stories/GenericPagination.stories.d.ts +7 -0
- package/dist/types/src/stories/Header.stories.d.ts +6 -0
- package/dist/types/src/stories/ItemsPerPageSelector.stories.d.ts +7 -0
- package/dist/types/src/stories/LoadingCompanyShadowCard.stories.d.ts +7 -0
- package/dist/types/src/stories/LoadingShadowCard.stories.d.ts +7 -0
- package/dist/types/src/stories/Login.stories.d.ts +7 -0
- package/dist/types/src/stories/Notification.stories.d.ts +6 -0
- package/dist/types/src/stories/NotificationTester.stories.d.ts +6 -0
- package/dist/types/src/stories/OnboardingChecklist.stories.d.ts +8 -0
- package/dist/types/src/stories/OnboardingDashboard.stories.d.ts +9 -0
- package/dist/types/src/stories/PageComponents.stories.d.ts +7 -0
- package/dist/types/src/stories/PricingComponents.stories.d.ts +6 -0
- package/dist/types/src/stories/ShieldedActionButton.stories.d.ts +8 -0
- package/dist/types/src/stories/SignInPromptModal.stories.d.ts +7 -0
- package/dist/types/src/stories/VerificationBanner.stories.d.ts +9 -0
- package/dist/types/src/types/candidate.d.ts +27 -0
- package/dist/types/src/types/chat-messages.d.ts +6 -0
- package/dist/types/src/types/company-user.d.ts +33 -0
- package/dist/types/src/types/company-user.test.d.ts +1 -0
- package/dist/types/src/types/complaint.d.ts +21 -0
- package/dist/types/src/types/conference.d.ts +21 -0
- package/dist/types/src/types/dashboard.d.ts +252 -0
- package/dist/types/src/types/events.courses.d.ts +49 -0
- package/dist/types/src/types/events.d.ts +23 -0
- package/dist/types/src/types/events.freelancers.d.ts +11 -0
- package/dist/types/src/types/events.jobs.d.ts +70 -0
- package/dist/types/src/types/events.news.d.ts +57 -0
- package/dist/types/src/types/events.newsletter.d.ts +6 -0
- package/dist/types/src/types/freelancer.d.ts +128 -0
- package/dist/types/src/types/general.d.ts +15 -0
- package/dist/types/src/types/icon-utils.d.ts +3 -0
- package/dist/types/src/types/item.d.ts +10 -0
- package/dist/types/src/types/job-alert.d.ts +64 -0
- package/dist/types/src/types/job.d.ts +30 -0
- package/dist/types/src/types/market.d.ts +78 -0
- package/dist/types/src/types/news.d.ts +15 -0
- package/dist/types/src/types/onboarding.d.ts +42 -0
- package/dist/types/src/types/review.d.ts +61 -0
- package/dist/types/src/types/user.d.ts +34 -0
- package/package.json +8 -8
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { FilterSection } from "./types";
|
|
3
|
+
interface FilterSectionData extends FilterSection {
|
|
4
|
+
selectedValues: string[];
|
|
5
|
+
}
|
|
6
|
+
interface ListingMobileFiltersProps {
|
|
7
|
+
isOpen: boolean;
|
|
8
|
+
onClose: () => void;
|
|
9
|
+
title?: string;
|
|
10
|
+
sections: FilterSectionData[];
|
|
11
|
+
onFilterChange: (key: string, values: string[]) => void;
|
|
12
|
+
onApply: () => void;
|
|
13
|
+
onClearAll: () => void;
|
|
14
|
+
savedCount?: number;
|
|
15
|
+
showSavedOnly?: boolean;
|
|
16
|
+
onToggleSavedOnly?: () => void;
|
|
17
|
+
savedLabel?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* ListingMobileFilters - Full-screen mobile filter drawer
|
|
21
|
+
* STATELESS: All state and actions handled by parent page
|
|
22
|
+
*/
|
|
23
|
+
declare const ListingMobileFilters: React.FC<ListingMobileFiltersProps>;
|
|
24
|
+
export default ListingMobileFilters;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { PaginationInfo } from "./types";
|
|
3
|
+
interface ListingPaginationProps {
|
|
4
|
+
pagination: PaginationInfo;
|
|
5
|
+
onPageChange: (page: number) => void;
|
|
6
|
+
maxPagesToShow?: number;
|
|
7
|
+
showFirstLast?: boolean;
|
|
8
|
+
className?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* ListingPagination - Page navigation controls
|
|
12
|
+
* STATELESS: All state and actions handled by parent page
|
|
13
|
+
*/
|
|
14
|
+
declare const ListingPagination: React.FC<ListingPaginationProps>;
|
|
15
|
+
export default ListingPagination;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface ListingSearchBarProps {
|
|
3
|
+
value: string;
|
|
4
|
+
onChange: (value: string) => void;
|
|
5
|
+
onSubmit: (value: string) => void;
|
|
6
|
+
onClear?: () => void;
|
|
7
|
+
onFilterClick?: () => void;
|
|
8
|
+
placeholder?: string;
|
|
9
|
+
suggestions?: string[];
|
|
10
|
+
onSuggestionSelect?: (suggestion: string) => void;
|
|
11
|
+
showFilterButton?: boolean;
|
|
12
|
+
filterCount?: number;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* ListingSearchBar - Search input with suggestions and filter toggle
|
|
17
|
+
* STATELESS: All state and actions handled by parent page
|
|
18
|
+
*/
|
|
19
|
+
declare const ListingSearchBar: React.FC<ListingSearchBarProps>;
|
|
20
|
+
export default ListingSearchBar;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { FilterSection, RangeConfig } from "./types";
|
|
3
|
+
interface FilterSectionData extends FilterSection {
|
|
4
|
+
selectedValues: string[];
|
|
5
|
+
}
|
|
6
|
+
interface ListingSidebarProps {
|
|
7
|
+
title?: string;
|
|
8
|
+
sections: FilterSectionData[];
|
|
9
|
+
onFilterChange: (key: string, values: string[]) => void;
|
|
10
|
+
onClearAll: () => void;
|
|
11
|
+
activeFiltersCount: number;
|
|
12
|
+
maxVisible?: number;
|
|
13
|
+
rangeConfig?: RangeConfig;
|
|
14
|
+
savedCount?: number;
|
|
15
|
+
showSavedOnly?: boolean;
|
|
16
|
+
onToggleSavedOnly?: () => void;
|
|
17
|
+
savedLabel?: string;
|
|
18
|
+
className?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* ListingSidebar - Collapsible filter sections with search within long filters
|
|
22
|
+
* STATELESS: All state and actions handled by parent page
|
|
23
|
+
*/
|
|
24
|
+
declare const ListingSidebar: React.FC<ListingSidebarProps>;
|
|
25
|
+
export default ListingSidebar;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { LucideIcon } from "lucide-react";
|
|
3
|
+
import { ViewMode, SortOption, PaginationInfo } from "./types";
|
|
4
|
+
interface ListingToolbarProps {
|
|
5
|
+
viewMode: ViewMode;
|
|
6
|
+
onViewModeChange: (mode: ViewMode) => void;
|
|
7
|
+
itemsPerPage: number;
|
|
8
|
+
onItemsPerPageChange: (value: number) => void;
|
|
9
|
+
itemsPerPageOptions?: number[];
|
|
10
|
+
sortBy: string;
|
|
11
|
+
onSortChange: (value: string) => void;
|
|
12
|
+
sortOptions: SortOption[];
|
|
13
|
+
pagination: PaginationInfo;
|
|
14
|
+
title?: string;
|
|
15
|
+
itemLabel?: string;
|
|
16
|
+
icon?: LucideIcon;
|
|
17
|
+
className?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* ListingToolbar - View mode toggle, items per page, sort by, count display
|
|
21
|
+
* STATELESS: All state and actions handled by parent page
|
|
22
|
+
*/
|
|
23
|
+
declare const ListingToolbar: React.FC<ListingToolbarProps>;
|
|
24
|
+
export default ListingToolbar;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { default as ListingHeader } from "./ListingHeader";
|
|
2
|
+
export { default as ListingSearchBar } from "./ListingSearchBar";
|
|
3
|
+
export { default as ListingToolbar } from "./ListingToolbar";
|
|
4
|
+
export { default as ListingSidebar } from "./ListingSidebar";
|
|
5
|
+
export { default as ListingPagination } from "./ListingPagination";
|
|
6
|
+
export { default as ListingEmptyState } from "./ListingEmptyState";
|
|
7
|
+
export { default as ListingMobileFilters } from "./ListingMobileFilters";
|
|
8
|
+
export { default as ListingActiveFilters } from "./ListingActiveFilters";
|
|
9
|
+
export type { ViewMode, SortOption, PopularTag, FilterOption, FilterSection, ActiveFilter, PaginationInfo, } from "./types";
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
export type ViewMode = "grid" | "list";
|
|
2
|
+
export type SortOption = {
|
|
3
|
+
value: string;
|
|
4
|
+
label: string;
|
|
5
|
+
};
|
|
6
|
+
export interface PopularTag {
|
|
7
|
+
label: string;
|
|
8
|
+
value: string;
|
|
9
|
+
color?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface FilterOption {
|
|
12
|
+
value: string;
|
|
13
|
+
label: string;
|
|
14
|
+
count?: number;
|
|
15
|
+
}
|
|
16
|
+
export interface RangeConfig {
|
|
17
|
+
min: number;
|
|
18
|
+
max: number;
|
|
19
|
+
step?: number;
|
|
20
|
+
unit?: string;
|
|
21
|
+
unitPosition?: "prefix" | "suffix";
|
|
22
|
+
formatLabel?: (value: number) => string;
|
|
23
|
+
}
|
|
24
|
+
export interface FilterSection {
|
|
25
|
+
key: string;
|
|
26
|
+
label: string;
|
|
27
|
+
type: "checkbox" | "select" | "searchable-select" | "range" | "toggle";
|
|
28
|
+
options?: FilterOption[];
|
|
29
|
+
searchable?: boolean;
|
|
30
|
+
collapsible?: boolean;
|
|
31
|
+
defaultExpanded?: boolean;
|
|
32
|
+
/** Max visible items before "View more" button */
|
|
33
|
+
maxVisible?: number;
|
|
34
|
+
/** Config for range type filters */
|
|
35
|
+
rangeConfig?: RangeConfig;
|
|
36
|
+
}
|
|
37
|
+
export interface ActiveFilter {
|
|
38
|
+
key: string;
|
|
39
|
+
label: string;
|
|
40
|
+
value: string;
|
|
41
|
+
displayValue?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface PaginationInfo {
|
|
44
|
+
currentPage: number;
|
|
45
|
+
totalPages: number;
|
|
46
|
+
totalItems: number;
|
|
47
|
+
itemsPerPage: number;
|
|
48
|
+
startIndex: number;
|
|
49
|
+
endIndex: number;
|
|
50
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface FilterOption {
|
|
3
|
+
value: string;
|
|
4
|
+
label: string;
|
|
5
|
+
count?: number;
|
|
6
|
+
}
|
|
7
|
+
interface BottomSheetFilterProps {
|
|
8
|
+
isOpen: boolean;
|
|
9
|
+
onClose: () => void;
|
|
10
|
+
title: string;
|
|
11
|
+
options: FilterOption[];
|
|
12
|
+
selectedValues: string[];
|
|
13
|
+
onApply: (values: string[]) => void;
|
|
14
|
+
multiSelect?: boolean;
|
|
15
|
+
searchable?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* BottomSheetFilter - Bottom sheet for filter selection
|
|
19
|
+
* Replaces heavy modals with lighter bottom sheets
|
|
20
|
+
* Each tag in HorizontalTagSlider opens a bottom sheet, not a full modal
|
|
21
|
+
*/
|
|
22
|
+
declare const BottomSheetFilter: React.FC<BottomSheetFilterProps>;
|
|
23
|
+
export default BottomSheetFilter;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface QuickAction {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
icon: React.ReactNode;
|
|
6
|
+
onClick: () => void;
|
|
7
|
+
color?: string;
|
|
8
|
+
}
|
|
9
|
+
interface FloatingActionButtonProps {
|
|
10
|
+
actions: QuickAction[];
|
|
11
|
+
mainIcon?: React.ReactNode;
|
|
12
|
+
className?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* FloatingActionButton - Context-aware FAB for quick actions
|
|
16
|
+
* Inspired by Instagram/TikTok patterns
|
|
17
|
+
* Possible actions: Save search, Create alert, Quick apply, Claim company
|
|
18
|
+
*/
|
|
19
|
+
declare const FloatingActionButton: React.FC<FloatingActionButtonProps>;
|
|
20
|
+
export declare const JobsQuickActions: QuickAction[];
|
|
21
|
+
export declare const CompaniesQuickActions: QuickAction[];
|
|
22
|
+
export default FloatingActionButton;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface Tag {
|
|
3
|
+
label: string;
|
|
4
|
+
value: string;
|
|
5
|
+
icon?: React.ReactNode;
|
|
6
|
+
category?: "popular" | "role" | "location" | "company" | "more";
|
|
7
|
+
}
|
|
8
|
+
interface HorizontalTagSliderProps {
|
|
9
|
+
tags: Tag[];
|
|
10
|
+
selectedTags: string[];
|
|
11
|
+
onTagClick: (tag: string) => void;
|
|
12
|
+
onTagRemove?: (tag: string) => void;
|
|
13
|
+
onMoreClick?: () => void;
|
|
14
|
+
showCategoryIcons?: boolean;
|
|
15
|
+
className?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* HorizontalTagSlider - Instagram-style horizontal scrolling tags
|
|
19
|
+
* MVP improvement: Replace static vertical tags with horizontal slider
|
|
20
|
+
*/
|
|
21
|
+
declare const HorizontalTagSlider: React.FC<HorizontalTagSliderProps>;
|
|
22
|
+
export default HorizontalTagSlider;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface FilterChip {
|
|
3
|
+
key: string;
|
|
4
|
+
label?: string;
|
|
5
|
+
value: string;
|
|
6
|
+
displayValue: string;
|
|
7
|
+
}
|
|
8
|
+
interface StickyFilterChipsProps {
|
|
9
|
+
chips: FilterChip[];
|
|
10
|
+
onRemove: (key: string, value: string) => void;
|
|
11
|
+
onClearAll?: () => void;
|
|
12
|
+
showCount?: boolean;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* StickyFilterChips - Selected filters displayed as sticky chips under search
|
|
17
|
+
* MVP behavior: Chips removable with ✕, result counts update live
|
|
18
|
+
*/
|
|
19
|
+
declare const StickyFilterChips: React.FC<StickyFilterChipsProps>;
|
|
20
|
+
export default StickyFilterChips;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { LucideIcon } from "lucide-react";
|
|
3
|
+
interface UserData {
|
|
4
|
+
name?: string;
|
|
5
|
+
email?: string;
|
|
6
|
+
avatar?: string;
|
|
7
|
+
initials?: string;
|
|
8
|
+
}
|
|
9
|
+
interface SavedCounts {
|
|
10
|
+
jobs?: number;
|
|
11
|
+
companies?: number;
|
|
12
|
+
courses?: number;
|
|
13
|
+
alerts?: number;
|
|
14
|
+
}
|
|
15
|
+
interface UserIdentityMenuProps {
|
|
16
|
+
user?: UserData | null;
|
|
17
|
+
savedCounts?: SavedCounts;
|
|
18
|
+
menuItems?: UserIdentityMenuItem[];
|
|
19
|
+
onNavigate?: (path: string) => void;
|
|
20
|
+
onLogout?: () => void;
|
|
21
|
+
onSignIn?: () => void;
|
|
22
|
+
className?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface UserIdentityMenuItem {
|
|
25
|
+
id: string;
|
|
26
|
+
label: string;
|
|
27
|
+
icon: LucideIcon;
|
|
28
|
+
path: string;
|
|
29
|
+
countKey?: keyof SavedCounts;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* UserIdentityMenu - Always-visible avatar with bottom sheet menu
|
|
33
|
+
* Critical UX gap fix: Identity should always be visible
|
|
34
|
+
*/
|
|
35
|
+
declare const UserIdentityMenu: React.FC<UserIdentityMenuProps>;
|
|
36
|
+
export default UserIdentityMenu;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { default as HorizontalTagSlider } from "./HorizontalTagSlider";
|
|
2
|
+
export { default as FloatingActionButton, JobsQuickActions, CompaniesQuickActions } from "./FloatingActionButton";
|
|
3
|
+
export { default as UserIdentityMenu } from "./UserIdentityMenu";
|
|
4
|
+
export { default as BottomSheetFilter } from "./BottomSheetFilter";
|
|
5
|
+
export { default as StickyFilterChips } from "./StickyFilterChips";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface NewsHeaderProps {
|
|
3
|
+
onSearchChange: (query: string) => void;
|
|
4
|
+
title?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
popularTags?: string[];
|
|
7
|
+
searchPlaceholder?: string;
|
|
8
|
+
generateHref?: (tag: string) => string;
|
|
9
|
+
onTagClick?: (tag: string) => void;
|
|
10
|
+
onTagRemove?: (tag: string) => void;
|
|
11
|
+
popularTagColor?: string;
|
|
12
|
+
allowTagRemoval?: boolean;
|
|
13
|
+
sponsoredSlot?: React.ReactNode;
|
|
14
|
+
}
|
|
15
|
+
declare const PageTitleHeader: React.FC<NewsHeaderProps>;
|
|
16
|
+
export default PageTitleHeader;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface SearchBoxProps {
|
|
2
|
+
data: string[];
|
|
3
|
+
onSelect: (value: string) => void;
|
|
4
|
+
placeholder?: string;
|
|
5
|
+
debounceMs?: number;
|
|
6
|
+
onTyping?: (value: string) => void;
|
|
7
|
+
className?: string;
|
|
8
|
+
showSubmitButton?: boolean;
|
|
9
|
+
}
|
|
10
|
+
declare const SearchBox: React.FC<SearchBoxProps>;
|
|
11
|
+
export default SearchBox;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export type ShieldedActionButtonProps = {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
onClick?: () => void;
|
|
5
|
+
emailVerified?: boolean;
|
|
6
|
+
profileComplete?: boolean;
|
|
7
|
+
requiredSteps?: string[];
|
|
8
|
+
isBlocked?: boolean;
|
|
9
|
+
blockedReason?: string;
|
|
10
|
+
ctaLabel?: string;
|
|
11
|
+
onCtaClick?: () => void;
|
|
12
|
+
variant?: "tooltip" | "modal";
|
|
13
|
+
};
|
|
14
|
+
export default function ShieldedActionButton({ children, onClick, emailVerified, profileComplete, requiredSteps, isBlocked, blockedReason, ctaLabel, onCtaClick, variant, }: ShieldedActionButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
interface SubscriptionModalProps {
|
|
2
|
+
open: boolean;
|
|
3
|
+
onOpenChange: (open: boolean) => void;
|
|
4
|
+
onSubscriptionSuccess?: () => void;
|
|
5
|
+
searchQuery?: string;
|
|
6
|
+
filters?: any;
|
|
7
|
+
apiUrl?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function SubscriptionModal({ open, onOpenChange, onSubscriptionSuccess, searchQuery, filters, apiUrl }: SubscriptionModalProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { TaxonomyApprovalPayload } from "./types";
|
|
2
|
+
interface TaxonomyApproveFormProps {
|
|
3
|
+
namespaceOptions: string[];
|
|
4
|
+
scopeOptions: string[];
|
|
5
|
+
defaultNamespace?: string;
|
|
6
|
+
defaultCanonical?: string;
|
|
7
|
+
defaultScopes?: string[];
|
|
8
|
+
isSubmitting?: boolean;
|
|
9
|
+
onApprove: (payload: TaxonomyApprovalPayload) => void | Promise<void>;
|
|
10
|
+
onReject: () => void | Promise<void>;
|
|
11
|
+
approveLabel?: string;
|
|
12
|
+
rejectLabel?: string;
|
|
13
|
+
}
|
|
14
|
+
declare const TaxonomyApproveForm: ({ namespaceOptions, scopeOptions, defaultNamespace, defaultCanonical, defaultScopes, isSubmitting, onApprove, onReject, approveLabel, rejectLabel, }: TaxonomyApproveFormProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export default TaxonomyApproveForm;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { TaxonomySuggestion } from "./types";
|
|
3
|
+
interface TaxonomySuggestionDetailProps {
|
|
4
|
+
suggestion: TaxonomySuggestion | null;
|
|
5
|
+
title?: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
emptyState?: string;
|
|
8
|
+
approveForm?: React.ReactNode;
|
|
9
|
+
}
|
|
10
|
+
declare const TaxonomySuggestionDetail: ({ suggestion, title, description, emptyState, approveForm, }: TaxonomySuggestionDetailProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export default TaxonomySuggestionDetail;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TaxonomySuggestion } from "./types";
|
|
2
|
+
interface TaxonomySuggestionTableProps {
|
|
3
|
+
suggestions: TaxonomySuggestion[];
|
|
4
|
+
selectedId?: string;
|
|
5
|
+
onSelect?: (suggestion: TaxonomySuggestion) => void;
|
|
6
|
+
onApprove?: (suggestion: TaxonomySuggestion) => void;
|
|
7
|
+
onReject?: (suggestion: TaxonomySuggestion) => void;
|
|
8
|
+
emptyState?: string;
|
|
9
|
+
title?: string;
|
|
10
|
+
}
|
|
11
|
+
declare const TaxonomySuggestionTable: ({ suggestions, selectedId, onSelect, onApprove, onReject, emptyState, title, }: TaxonomySuggestionTableProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export default TaxonomySuggestionTable;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface TaxonomySuggestion {
|
|
2
|
+
id: string;
|
|
3
|
+
term: string;
|
|
4
|
+
namespace?: string;
|
|
5
|
+
canonical?: string;
|
|
6
|
+
scopes: string[];
|
|
7
|
+
count?: number;
|
|
8
|
+
status?: "pending" | "approved" | "rejected";
|
|
9
|
+
createdAt?: string;
|
|
10
|
+
updatedAt?: string;
|
|
11
|
+
examples?: string[];
|
|
12
|
+
source?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface TaxonomyApprovalPayload {
|
|
15
|
+
namespace: string;
|
|
16
|
+
canonical: string;
|
|
17
|
+
scopes: string[];
|
|
18
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface ViewControlsProps {
|
|
3
|
+
viewMode: "grid" | "list";
|
|
4
|
+
onToggleViewMode: () => void;
|
|
5
|
+
selectedItemsPerPage: number;
|
|
6
|
+
onItemsPerPageChange: (value: number) => void;
|
|
7
|
+
totalCount: number;
|
|
8
|
+
startIndex: number;
|
|
9
|
+
endIndex: number;
|
|
10
|
+
title: string;
|
|
11
|
+
}
|
|
12
|
+
declare const ViewControls: React.FC<ViewControlsProps>;
|
|
13
|
+
export default ViewControls;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface ViewModeToggleProps {
|
|
3
|
+
viewMode: "grid" | "list";
|
|
4
|
+
onToggle?: () => void;
|
|
5
|
+
onViewModeChange?: (mode: "grid" | "list") => void;
|
|
6
|
+
className?: string;
|
|
7
|
+
}
|
|
8
|
+
declare const ViewModeToggle: React.FC<ViewModeToggleProps>;
|
|
9
|
+
export default ViewModeToggle;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type Ok<T> = {
|
|
2
|
+
ok: true;
|
|
3
|
+
data: T;
|
|
4
|
+
};
|
|
5
|
+
export type Err = {
|
|
6
|
+
ok: false;
|
|
7
|
+
error: AppError;
|
|
8
|
+
};
|
|
9
|
+
export type Result<T> = Ok<T> | Err;
|
|
10
|
+
export type AppErrorCode = "BAD_REQUEST" | "UNAUTHORIZED" | "FORBIDDEN" | "NOT_FOUND" | "CONFLICT" | "RATE_LIMITED" | "SERVER" | "NETWORK" | "TIMEOUT" | "PARSING" | "UNKNOWN";
|
|
11
|
+
export type AppError = {
|
|
12
|
+
code: AppErrorCode;
|
|
13
|
+
message: string;
|
|
14
|
+
friendly?: string;
|
|
15
|
+
status?: number;
|
|
16
|
+
details?: unknown;
|
|
17
|
+
};
|
|
18
|
+
export declare function friendlyMessage(err: AppError): string;
|
|
19
|
+
export declare function apiFetch<T>(url: string, init?: RequestInit & {
|
|
20
|
+
timeoutMs?: number;
|
|
21
|
+
}): Promise<Result<T>>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DateFilterOption } from "../../GenericListing/DateFilter";
|
|
2
|
+
import { JobFilters } from "../../GenericListing/SidebarFilter";
|
|
3
|
+
import { FilterableItem } from "../types/shared-types";
|
|
4
|
+
export declare const applyDateFilter: <T extends FilterableItem>(items: T[], dateFilterOption: DateFilterOption, dateField?: string) => T[];
|
|
5
|
+
export declare const applyAdvancedFilters: <T extends FilterableItem>(items: T[], filters: JobFilters) => T[];
|
|
6
|
+
export declare const populateFilters: <T extends Record<string, any>>(items: T[], filterKeys: string[]) => Record<string, string[]>;
|
|
7
|
+
export declare const updateUrlWithDateFilter: (filter: DateFilterOption) => void;
|
|
8
|
+
export declare const applyAllFilters: <T extends FilterableItem>(items: T[], dropdownFilters: Record<string, string>, textFilters: string[], dateFilter: DateFilterOption, dateField?: string) => T[];
|
|
9
|
+
export type SortOptionKey = "date_desc" | "date_asc" | "views_desc" | "views_asc" | "relevance" | "title_asc";
|
|
10
|
+
export declare const sortItems: <T extends FilterableItem>(items: T[], sortBy: SortOptionKey, searchTerms?: string[], dateField?: string) => T[];
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { JobDetail, SimilarJob } from "../../JobsDetails/utils/types";
|
|
2
|
+
declare function normalizeJob(jobLike?: Partial<JobDetail> | null): JobDetail;
|
|
3
|
+
declare function normalizeSimilar(list?: Partial<SimilarJob>[] | null): SimilarJob[];
|
|
4
|
+
declare const mockJobDetail: JobDetail;
|
|
5
|
+
declare const mockSimilarJobs: SimilarJob[];
|
|
6
|
+
export { normalizeJob, normalizeSimilar, mockJobDetail, mockSimilarJobs };
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
export type FilterOption = {
|
|
2
|
+
label: string;
|
|
3
|
+
value: string;
|
|
4
|
+
};
|
|
5
|
+
export type FilterType = "checkbox" | "dropdown" | "search" | "radio";
|
|
6
|
+
export interface FilterConfig {
|
|
7
|
+
type: FilterType;
|
|
8
|
+
label: string;
|
|
9
|
+
options?: FilterOption[];
|
|
10
|
+
}
|
|
11
|
+
export type FilterState = {
|
|
12
|
+
[key: string]: string | string[] | [string, string] | [number, number];
|
|
13
|
+
};
|
|
14
|
+
export type FilterableItem = {
|
|
15
|
+
title?: string;
|
|
16
|
+
overview?: string;
|
|
17
|
+
date?: string;
|
|
18
|
+
[key: string]: any;
|
|
19
|
+
};
|
|
20
|
+
export interface CompanyTypeSubtype {
|
|
21
|
+
slug: string;
|
|
22
|
+
name: string;
|
|
23
|
+
}
|
|
24
|
+
export interface CompanyTypeKeyRole {
|
|
25
|
+
role: string;
|
|
26
|
+
demand: "High" | "Medium" | "Low";
|
|
27
|
+
}
|
|
28
|
+
export interface CompanyType {
|
|
29
|
+
id: string;
|
|
30
|
+
slug: string;
|
|
31
|
+
name: string;
|
|
32
|
+
label: string;
|
|
33
|
+
description: string;
|
|
34
|
+
businessModel: "b2b" | "b2c" | "both";
|
|
35
|
+
isB2b: boolean;
|
|
36
|
+
isB2c: boolean;
|
|
37
|
+
isRegulated: boolean;
|
|
38
|
+
parentType: string | null;
|
|
39
|
+
subtypes: CompanyTypeSubtype[];
|
|
40
|
+
synonyms: string[];
|
|
41
|
+
relatedTypes: string[];
|
|
42
|
+
jobCount: number;
|
|
43
|
+
companyCount: number;
|
|
44
|
+
colorHex: string;
|
|
45
|
+
icon: string;
|
|
46
|
+
careerImplications: string;
|
|
47
|
+
keyRoles: CompanyTypeKeyRole[];
|
|
48
|
+
isFeatured: boolean;
|
|
49
|
+
isActive: boolean;
|
|
50
|
+
}
|
|
51
|
+
export interface GamblingVerticalKeyRole {
|
|
52
|
+
role: string;
|
|
53
|
+
demand: "High" | "Medium" | "Low";
|
|
54
|
+
}
|
|
55
|
+
export interface GamblingVertical {
|
|
56
|
+
id: string;
|
|
57
|
+
slug: string;
|
|
58
|
+
name: string;
|
|
59
|
+
label: string;
|
|
60
|
+
description: string;
|
|
61
|
+
channel: string;
|
|
62
|
+
parentVertical: string | null;
|
|
63
|
+
subVerticals: string[];
|
|
64
|
+
synonyms: string[];
|
|
65
|
+
regulationLevel: "low" | "medium" | "high";
|
|
66
|
+
isFastGrowing: boolean;
|
|
67
|
+
companyCount: number;
|
|
68
|
+
jobCount: number;
|
|
69
|
+
topMarkets: string[];
|
|
70
|
+
keyRegulators: string[];
|
|
71
|
+
relatedCompanyTypes: string[];
|
|
72
|
+
careerImplications: string;
|
|
73
|
+
keyRoles: GamblingVerticalKeyRole[];
|
|
74
|
+
colorHex: string;
|
|
75
|
+
icon: string;
|
|
76
|
+
isFeatured: boolean;
|
|
77
|
+
isActive: boolean;
|
|
78
|
+
}
|
|
79
|
+
export interface Channel {
|
|
80
|
+
id: string;
|
|
81
|
+
slug: string;
|
|
82
|
+
name: string;
|
|
83
|
+
label: string;
|
|
84
|
+
description: string;
|
|
85
|
+
channelType: string;
|
|
86
|
+
synonyms: string[];
|
|
87
|
+
isDigital: boolean;
|
|
88
|
+
isRegulatedDifferently: boolean;
|
|
89
|
+
typicalCompanyTypes: string[];
|
|
90
|
+
notes: string;
|
|
91
|
+
companyCount: number;
|
|
92
|
+
isActive: boolean;
|
|
93
|
+
}
|
|
94
|
+
export interface DepartmentSubDept {
|
|
95
|
+
slug: string;
|
|
96
|
+
name: string;
|
|
97
|
+
}
|
|
98
|
+
export interface DepartmentEntity {
|
|
99
|
+
id: string;
|
|
100
|
+
slug: string;
|
|
101
|
+
name: string;
|
|
102
|
+
label: string;
|
|
103
|
+
description: string;
|
|
104
|
+
parentDepartment: string | null;
|
|
105
|
+
subDepartments: DepartmentSubDept[];
|
|
106
|
+
scraperAliases: string[];
|
|
107
|
+
synonyms: string[];
|
|
108
|
+
isTechnical: boolean;
|
|
109
|
+
isRegulated: boolean;
|
|
110
|
+
isIgamingSpecific: boolean;
|
|
111
|
+
typicalSeniority: string;
|
|
112
|
+
companyTypes: string[];
|
|
113
|
+
topSkills: string[];
|
|
114
|
+
avgSalaryRange: {
|
|
115
|
+
min: number;
|
|
116
|
+
max: number;
|
|
117
|
+
currency: string;
|
|
118
|
+
};
|
|
119
|
+
jobCount: number;
|
|
120
|
+
growthTrend: "growing" | "stable" | "declining";
|
|
121
|
+
careerImplications: string;
|
|
122
|
+
icon: string;
|
|
123
|
+
colorHex: string;
|
|
124
|
+
isActive: boolean;
|
|
125
|
+
}
|