{"version":3,"file":"static/chunks/1974-772378d372f1f9a4.js","mappings":"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","sources":["webpack://_N_E/./components/FeaturedExperiences/FeaturedNavSec.tsx","webpack://_N_E/./api/cityfilter.ts","webpack://_N_E/./api/featuredexperiences.ts","webpack://_N_E/./components/FeaturedExperiences/FeaturedExperiences.tsx","webpack://_N_E/"],"sourcesContent":["import { SetStateAction } from 'react';\nimport styled from 'styled-components';\n\ninterface IProps {\n currNav: string;\n setActiveNav: React.Dispatch>;\n navData: Record[];\n}\ninterface Props {\n isActive: boolean;\n isFirstOne: boolean;\n}\nconst NavMenu = styled.div`\n border-left: 1px solid '#C5C5C5';\n color: ${props => (props.isActive ? '#F15C5A' : '#333333')};\n border-left: ${props => (props.isFirstOne ? 'none' : '1px solid #C5C5C5')};\n font-weight: ${props => (props.isActive ? '600' : '400')};\n\n cursor: pointer;\n &:hover {\n /* box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.2); */\n /* border-radius: 5px; */\n transform: scale(1.1);\n transition: 0.3s ease;\n }\n @media (max-width: 375px) {\n font-size: 12px;\n padding: 4px 8px;\n }\n @media (min-width: 375px) and (max-width: 640px) {\n font-size: 14px;\n padding: 4px 8px;\n }\n`;\nconst FeaturedNavSection = ({ currNav, setActiveNav, navData }: IProps) => {\n return (\n \n \n \n );\n};\n\nexport default FeaturedNavSection;\n","import { gql } from '@apollo/client';\nimport {\n FRAGMENT_PRODUCT_ORDER,\n FRAGMENT_PRODUCT_ORDER_INTERFACE\n} from './fragments';\n\nconst CITIES_FILTER = gql`\n query CITIES_FILTER($filter: JSON!) {\n cities(where: $filter) {\n name\n allThings: all_things_to_do {\n product {\n ...FRAGMENT_PRODUCT_ORDER\n }\n }\n dayTours: day_tours {\n product {\n ...FRAGMENT_PRODUCT_ORDER\n }\n }\n privateTours: airport_transfer {\n product {\n ...FRAGMENT_PRODUCT_ORDER\n }\n }\n multiday: multi_day_tours {\n product {\n ...FRAGMENT_PRODUCT_ORDER\n }\n }\n }\n citiesList: cities {\n id\n name\n slug\n }\n }\n ${FRAGMENT_PRODUCT_ORDER}\n`;\ninterface CITY_FILTER_INTERFACE {\n cities: [\n {\n name: string;\n allThings: {\n product: [FRAGMENT_PRODUCT_ORDER_INTERFACE];\n };\n dayTours: {\n product: [FRAGMENT_PRODUCT_ORDER_INTERFACE];\n };\n multiday: {\n product: [FRAGMENT_PRODUCT_ORDER_INTERFACE];\n };\n airportTransfers: {\n product: [FRAGMENT_PRODUCT_ORDER_INTERFACE];\n };\n }\n ];\n citiesList: [\n {\n id: string;\n name: string;\n slug: string;\n }\n ];\n}\nexport { CITIES_FILTER };\nexport type { CITY_FILTER_INTERFACE };\n","import { gql } from '@apollo/client';\nimport { CARDMEDIAINTERFACE } from './commonInterfaces';\n\nconst FEATUREDEXPERIENCES = gql`\n query FEATUREDEXPERIENCES(\n $dayTours: Boolean!\n $multiday: Boolean!\n $airportTransfers: Boolean!\n ) {\n homePage {\n header\n subheader\n allThings: all_things_to_do {\n product {\n id: boat_id\n name\n private\n slug\n duration\n price\n cardMessage: card_message\n cardSnippet: snippet\n carousel: card_media {\n url\n type: provider_metadata\n }\n\n reviews {\n id\n rating\n }\n }\n }\n dayTours: one_day_tours @include(if: $dayTours) {\n product {\n id: boat_id\n name\n slug\n duration\n private\n price\n cardMessage: card_message\n cardSnippet: snippet\n carousel: card_media {\n url\n type: provider_metadata\n }\n reviews {\n id\n rating\n }\n }\n }\n multiday: multi_day_tours @include(if: $multiday) {\n product {\n id: boat_id\n name\n slug\n duration\n private\n price\n cardMessage: card_message\n cardSnippet: snippet\n carousel: card_media {\n url\n type: provider_metadata\n }\n reviews {\n id\n rating\n }\n }\n }\n privateTours: airport_transfer @include(if: $airportTransfers) {\n product {\n id: boat_id\n name\n slug\n duration\n private\n price\n cardMessage: card_message\n cardSnippet: snippet\n carousel: card_media {\n url\n type: provider_metadata\n }\n reviews {\n id\n rating\n }\n }\n }\n }\n citiesDropdown: cities {\n id\n name\n slug\n card_media(limit: 1) {\n url\n }\n }\n\n totalProducts: productsConnection {\n aggregate {\n totalCount\n }\n }\n totalDayTours: productsConnection(where: { type: \"DAYTOUR\" }) {\n aggregate {\n count\n }\n }\n totalMultiDay: productsConnection(where: { type: \"MULTIDAY\" }) {\n aggregate {\n count\n }\n }\n totalAirportPickup: productsConnection(where: { type: \"AIRPORTPICKUP\" }) {\n aggregate {\n count\n }\n }\n }\n`;\ninterface FEATURED_EXPERIENCES_INTERFACE {\n homePage: {\n header: string;\n subheader: string;\n allThings: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n carousel: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n dayTours: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n multiday: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n airportTransfers: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n };\n citiesDropdown: [\n {\n id: string;\n name: string;\n slug: string;\n }\n ];\n\n totalProducts: {\n aggregate: {\n totalCount: number;\n };\n };\n totalDayTours: {\n aggregate: {\n count: number;\n };\n };\n totalMultiDay: {\n aggregate: {\n count: number;\n };\n };\n totalAirportPickup: {\n aggregate: {\n count: number;\n };\n };\n}\ninterface HOMEPAFE {\n header: string;\n subheader: string;\n allThings: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n carousel: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n dayTours: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n multiday: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n airportTransfers: [\n {\n product: {\n id: string;\n name: string;\n slug: string;\n duration: string;\n price: string;\n cardMessage: string;\n cardSnippet: string;\n cardMedia: [CARDMEDIAINTERFACE];\n reviews: {\n id: string;\n rating: string;\n };\n };\n }\n ];\n}\nexport default FEATUREDEXPERIENCES;\nexport type { FEATURED_EXPERIENCES_INTERFACE, HOMEPAFE };\n","import { useState, useEffect, useRef } from 'react';\nimport FeaturedNavSection from './FeaturedNavSec';\nimport { useLazyQuery } from '@apollo/client';\nimport { CITIES_FILTER, CITY_FILTER_INTERFACE } from '../../api/cityfilter';\nimport FEATUREDEXPERIENCES, {\n FEATURED_EXPERIENCES_INTERFACE\n} from '../../api/featuredexperiences';\nimport { HOMEPAGEINTERFACE } from '../../api/homePage';\nimport TourCard from '../Tour/tourCard';\nimport { PAGE_OPTIONS } from '../Trust/Trustbar';\nimport { useRouter } from 'next/router';\n\nconst arr = [\n {\n filterClass: 'allThings',\n filterName: 'All Things To Do'\n },\n {\n filterClass: 'dayTours',\n filterName: 'Day Tours'\n },\n {\n filterClass: 'privateTours',\n filterName: 'Private Tours'\n }\n];\n\ninterface FeaturedExperiencesProps {\n featuredExp: {\n [key: string]: any;\n };\n citydropdown: any;\n selectedCity?: string | undefined;\n privateTourPage?: boolean;\n}\nconst FeaturedExperiences = ({\n featuredExp,\n citydropdown,\n selectedCity,\n privateTourPage\n}: FeaturedExperiencesProps) => {\n const [activeNav, setActiveNav] = useState(\n privateTourPage ? 'privateTours' : 'allThings'\n );\n\n const fexp_Ref = useRef(null);\n const [city, setCity] = useState(selectedCity || 'All Cities');\n const [cityToggle, setCityToggle] = useState(false);\n const [navArray, setNavArray] = useState(arr);\n const [featuredExperienceData, setFeaturedExperienceData] = useState<\n FEATURED_EXPERIENCES_INTERFACE | HOMEPAGEINTERFACE | any\n >([]);\n const router = useRouter();\n const [showAll, setShowAll] = useState(\n router.pathname === '/[slug]' ? true : false\n );\n //FETCHING QUERIES\n //fetch day & multiday\n const [fetchTourType, { data: tourData, loading: tourFilterLoading, error }] =\n useLazyQuery(FEATUREDEXPERIENCES);\n\n //fetch by city\n const [\n cityFilteredTours,\n {\n data: { cities: [filteredCity] = [] } = {} as CITY_FILTER_INTERFACE,\n loading: cityFilterLoading,\n error: cityFitlerError\n }\n ] = useLazyQuery(CITIES_FILTER);\n\n //USEFFECTS()\n\n //useffect-1\n useEffect(() => {\n filteredCity && setFeaturedExperienceData(filteredCity);\n }, [filteredCity]);\n\n //useffect-2\n useEffect(() => {\n if (\n !privateTourPage &&\n activeNav !== 'allThings' &&\n city === 'All Cities'\n ) {\n try {\n fetchTourType({\n variables: {\n dayTours: true,\n\n multiday: true,\n airportTransfers: true\n }\n });\n } catch (error) {}\n }\n }, [activeNav]);\n\n //useffect-3\n useEffect(() => {\n setFeaturedExperienceData(tourData?.homePage);\n }, [tourData]);\n\n //useffect-4\n useEffect(() => {\n const finalNavArray: Array> = [];\n let flag = true;\n arr.forEach(item => {\n finalNavArray.push(item);\n });\n\n if (city === 'All Cities') {\n setNavArray(arr);\n setFeaturedExperienceData(tourData?.homePage);\n } else {\n setNavArray(finalNavArray);\n finalNavArray?.forEach(item => {\n if (item.filterClass == activeNav) {\n flag = false;\n }\n });\n if (flag) {\n setActiveNav('allThings');\n }\n }\n }, [city, activeNav]);\n\n //usefffect-5\n useEffect(() => {\n if (!selectedCity) {\n cityFilteredTours({\n variables: {\n filter: {\n name: city\n }\n }\n });\n }\n }, [city, cityFilteredTours]);\n\n //FUNCTIONS\n const Drop_Down_options = () => {\n const options: Array> = [];\n const filteredCities = citydropdown ? citydropdown : [];\n filteredCities?.forEach((obj: Record) => {\n options.push({ value: [obj.name], label: [obj.name] });\n });\n\n return options.sort((a: any, b: any) => {\n const x = a.label[0].toUpperCase();\n const y = b.label[0].toUpperCase();\n return x === y ? 0 : x > y ? 1 : -1;\n });\n };\n const sortedCities = Drop_Down_options();\n const showActiveNav = () => {\n if (activeNav === 'allThings') return 'All Things To Do';\n else if (activeNav === 'dayTours') return 'Day Tours';\n else if (activeNav === 'multiday') return 'Multi Day Tours';\n else if (activeNav === 'privateTours') return 'Private Tours';\n };\n const dispLoading = () => {\n if (city !== 'All Cities' && cityFilterLoading) {\n return (\n \n \n \n \n \n \n );\n }\n if (tourFilterLoading) {\n return (\n \n \n \n \n \n \n );\n }\n };\n\n const displayProduct = () => {\n const filteredProduct = featuredExperienceData\n ? featuredExperienceData[activeNav]\n : featuredExp[activeNav];\n if (!filteredProduct || filteredProduct?.length === 0) {\n return (\n

{`${tourFilterLoading ? '' : `Tours coming to ${city} soon`}`}

\n );\n }\n\n // prevent null & duplicate items\n const uniquefilteredProduct = Array.isArray(filteredProduct)\n ? filteredProduct\n .filter((item: Record) => item?.product != null)\n .reduce((acc: Record[], curr: Record) => {\n const isdup = acc.find(\n (item: any) => item?.product?.id === curr?.product?.id\n );\n return !isdup ? [...acc, curr] : acc;\n }, [])\n : [];\n\n return uniquefilteredProduct\n ?.slice(0, showAll ? uniquefilteredProduct?.length : 6)\n .map((product: Record, index: number) => {\n return (\n 24\n ? PAGE_OPTIONS.MULTIDAY_TOUR_PAGE\n : PAGE_OPTIONS.DAY_TOUR_PAGED\n }\n />\n );\n });\n };\n const showProduct = () => {\n let selectedNav = '';\n const selectNum = featuredExperienceData\n ? //@ts-ignore\n featuredExperienceData[activeNav]?.length\n : featuredExp[activeNav]?.length;\n if (activeNav === 'allThings') {\n selectedNav = 'All Things To Do';\n }\n if (activeNav === 'dayTours') {\n selectedNav = 'All Day Tours ';\n }\n if (activeNav === 'multiday') {\n selectedNav = 'All Multi Day Tours';\n }\n if (activeNav === 'privateTours') {\n selectedNav = 'Private Tours';\n }\n\n if (!showAll && !tourFilterLoading && !cityFilterLoading) {\n return (\n
\n {selectNum > 6 && (\n setShowAll(true)}\n className=\"cursor-pointer flex items-center\"\n >\n {/*

{`See ${selectedNav} (${selectNum})`}

*/}\n {router.pathname !== '/[slug]' && (\n

\n See More\n

\n )}\n
\n )}\n \n );\n }\n if (showAll && !tourFilterLoading && !cityFilterLoading && selectNum > 6) {\n return (\n
\n {\n setShowAll(false);\n fexp_Ref.current?.scrollIntoView({\n behavior: 'smooth',\n block: 'start'\n });\n }}\n className=\"cursor-pointer\"\n >\n {router.pathname !== '/[slug]' && (\n

\n Show Less\n

\n )}\n
\n \n );\n }\n };\n\n return (\n
\n \n \n \n
\n

\n Search city:\n

\n {\n if (cityToggle) return setCityToggle(!cityToggle);\n }}\n className=\"relative \"\n >\n setCityToggle(!cityToggle)}\n className={\n cityToggle\n ? `flex justify-between items-center ${\n selectedCity ? 'opacity-60' : 'opacity-100'\n } border-[1px] border-[#F15C5A] cursor-pointer rounded-[8px] sm:rounded-[10px] w-[100%] px-1 xsm:px-2 sm:px-5 lg:px-2 2xl:px-3 py-1 text-[12px] sm:text-[14px] md:text-[16.92px] text-[#333333] font-[400] min-w-[150px]`\n : `flex justify-between items-center ${\n selectedCity ? 'opacity-60' : 'opacity-100'\n } border-[1px] border-[#4F4F4F] cursor-pointer rounded-[8px] sm:rounded-[10px] w-[100%] px-1 xsm:px-2 sm:px-5 lg:px-2 2xl:px-3 py-1 text-[12px] sm:text-[14px] md:text-[16.92px] text-[#333333] font-[400] min-w-[150px]`\n }\n >\n {selectedCity ? selectedCity : city}\n \n {/* */}\n \n \n {cityToggle && (\n \n setCity('All Cities')}\n >\n All Cities\n
\n {sortedCities.map((opt: Record, index) => {\n return (\n {\n setCity(opt.label[0]);\n setCityToggle(false);\n }}\n >\n {opt.label}\n \n );\n })}\n \n )}\n \n \n \n \n\n \n {cityFilterLoading && dispLoading()}\n {tourFilterLoading && dispLoading()}\n
\n {displayProduct()}\n
\n \n {showProduct()}\n
\n );\n};\n\nexport default FeaturedExperiences;\n"],"names":["NavMenu","styled","div","withConfig","props","isActive","isFirstOne","FeaturedNavSec","currNav","setActiveNav","navData","param","jsx_runtime","jsx","section","id","className","nav","map","navItem","index","filterClass","onClick","concat","filterName","CITIES_FILTER","gql","FRAGMENT_PRODUCT_ORDER","FEATUREDEXPERIENCES","arr","FeaturedExperiences_FeaturedExperiences","featuredExp","citydropdown","selectedCity","privateTourPage","activeNav","useState","fexp_Ref","useRef","city","setCity","cityToggle","setCityToggle","navArray","setNavArray","featuredExperienceData","setFeaturedExperienceData","router","useRouter","showAll","setShowAll","pathname","fetchTourType","data","tourData","loading","tourFilterLoading","error","useLazyQuery","cityFilteredTours","cities","filteredCity","cityFilterLoading","cityFitlerError","useEffect","variables","dayTours","multiday","airportTransfers","homePage","finalNavArray","flag","forEach","item","push","filter","name","sortedCities","Drop_Down_options","options","filteredCities","value","obj","label","sort","a","b","x","toUpperCase","y","dispLoading","role","jsxs","svg","aria-hidden","viewBox","fill","xmlns","path","d","ref","header","FeaturedNavSection","p","onMouseLeave","button","disabled","span","opt","displayProduct","filteredProduct","length","h3","uniquefilteredProduct","Array","isArray","product","reduce","acc","curr","isdup","find","slice","TourCard","productType","Number","duration","PAGE_OPTIONS","MULTIDAY_TOUR_PAGE","DAY_TOUR_PAGED","showProduct","selectNum","current","scrollIntoView","behavior","block","h2"],"sourceRoot":""}