@abcagency/hc-ui-components 1.9.21 → 1.9.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.
Files changed (35) hide show
  1. package/dist/components/HireControlMap.js +4 -1
  2. package/dist/components/HireControlMap.js.map +1 -1
  3. package/dist/components/containers/accordions/map-accordion-item-container.js +15 -3
  4. package/dist/components/containers/accordions/map-accordion-item-container.js.map +1 -1
  5. package/dist/components/containers/filter/filter-container.js +0 -8
  6. package/dist/components/containers/filter/filter-container.js.map +1 -1
  7. package/dist/components/modules/accordions/filters.js +1 -1
  8. package/dist/components/modules/accordions/filters.js.map +1 -1
  9. package/dist/components/modules/filter/index.js.map +1 -1
  10. package/dist/components/modules/list/field-mapper-mobile.js +62 -53
  11. package/dist/components/modules/list/field-mapper-mobile.js.map +1 -1
  12. package/dist/components/modules/list/list-item/list-item.js +9 -20
  13. package/dist/components/modules/list/list-item/list-item.js.map +1 -1
  14. package/dist/contexts/mapListContext.js +2 -2
  15. package/dist/contexts/mapListContext.js.map +1 -1
  16. package/dist/styles/index.css +1 -1
  17. package/dist/types/components/containers/accordions/map-accordion-item-container.d.ts +2 -1
  18. package/dist/types/contexts/mapListContext.d.ts +134 -0
  19. package/package.json +1 -1
  20. package/src/components/HireControlMap.js +4 -2
  21. package/src/components/containers/accordions/map-accordion-item-container.js +13 -2
  22. package/src/components/containers/filter/filter-container.js +0 -9
  23. package/src/components/modules/accordions/filters.js +1 -1
  24. package/src/components/modules/filter/index.js +2 -2
  25. package/src/components/modules/list/field-mapper-mobile.jsx +66 -70
  26. package/src/components/modules/list/list-item/list-item.jsx +4 -18
  27. package/src/contexts/mapListContext.tsx +5 -2
  28. package/src/index.js +1 -0
  29. package/src/styles/bundle.css +3 -1
  30. package/src/styles/index.css +9 -0
  31. package/dist/types/services/configService.d.ts +0 -6
  32. package/dist/types/services/listingAggregatorService.d.ts +0 -9
  33. package/dist/types/services/listingEntityService.d.ts +0 -5
  34. package/dist/types/services/listingService.d.ts +0 -9
  35. package/dist/types/services/recruiterService.d.ts +0 -6
@@ -92,6 +92,8 @@ var HireControlMap = function HireControlMap(_ref2) {
92
92
  hideFilters = _ref2$hideFilters === void 0 ? false : _ref2$hideFilters,
93
93
  _ref2$noEntities = _ref2.noEntities,
94
94
  noEntities = _ref2$noEntities === void 0 ? false : _ref2$noEntities,
95
+ _ref2$mobileDetailsCa = _ref2.mobileDetailsCallback,
96
+ mobileDetailsCallback = _ref2$mobileDetailsCa === void 0 ? null : _ref2$mobileDetailsCa,
95
97
  _ref2$trackEvent = _ref2.trackEvent,
96
98
  trackEvent = _ref2$trackEvent === void 0 ? function (eventType, eventObj) {
97
99
  console.log(eventType);
@@ -242,7 +244,8 @@ var HireControlMap = function HireControlMap(_ref2) {
242
244
  hideMap: hideMap,
243
245
  hideFilters: hideFilters,
244
246
  noEntities: noEntities,
245
- filterConfig: filterConfig
247
+ filterConfig: filterConfig,
248
+ mobileDetailsCallback: mobileDetailsCallback
246
249
  };
247
250
 
248
251
  // Calculate effective showMap value
@@ -1 +1 @@
1
- {"version":3,"file":"HireControlMap.js","sources":["../../src/components/HireControlMap.js"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { useLoadScript } from '@react-google-maps/api';\n\nimport Grid from '~/components/modules/grid';\nimport Filter from '~/components/containers/filter/filter-container';\nimport MapList from '~/components/containers/maps/map-list-container';\n\n// Context imports\nimport { MapProvider } from '~/contexts/mapContext';\nimport { PlacesProvider } from '~/contexts/placesContext';\nimport { MapListProvider } from '~/contexts/mapListContext';\nimport { TrackEventProvider } from '~/contexts/trackEventContext';\nimport { ThemeProvider } from '~/contexts/themeContext';\n\nimport { initializeAlgoliaSearch } from '~/util/algoliaSearchUtil';\n\n// Libraries for Google Maps\nconst LIBRARIES = ['places'];\n\n// Since all data is now passed in statically, no need to fetch config\n\n// Component to handle all context providers\nconst ContextProviders = ({ children, siteConfig, trackEvent, googleMapsApiKey, ...mapListProps }) => { return(\n\t<TrackEventProvider trackEvent={trackEvent}>\n\t\t<ThemeProvider\n\t\t\tuiText={siteConfig.colors.uiText}\n\t\t\tuiAccent={siteConfig.colors.uiAccent}\n\t\t\tprimary={siteConfig.colors.primary}\n\t\t\tprimaryDark={siteConfig.colors.primaryDark}\n\t\t\tsecondary={siteConfig.colors.secondary}\n\t\t\tsecondaryDark={siteConfig.colors.secondaryDark}\n\t\t>\n\t\t\t<MapListProvider siteConfig={siteConfig} googleMapsApiKey={googleMapsApiKey} {...mapListProps}>\n\t\t\t\t<MapProvider resetFilters={mapListProps.resetFilters} defaultZoomOverride={mapListProps.defaultZoomOverride} localStorageKey={mapListProps.localStorageKey}>\n\t\t\t\t\t<PlacesProvider\n\t\t\t\t\t\tplaceMappings={siteConfig.pointsOfInterestConfig.placeMappings ?? {}}\n\t\t\t\t\t\tadditionalMapMarkers={mapListProps.additionalMapMarkers}\n\t\t\t\t\t\tgoogleMapsApiKey={googleMapsApiKey}\n\t\t\t\t\t\tshowAtZoomLevel={siteConfig.pointsOfInterestConfig.showAtZoomLevel ?? 12}\n\t\t\t\t\t\tmarkerColors={{\n\t\t\t\t\t\t\tfillColor: siteConfig.colors.primary,\n\t\t\t\t\t\t\tstrokeColor: siteConfig.colors.primaryDark,\n\t\t\t\t\t\t\tselectedFillColor: siteConfig.colors.secondary,\n\t\t\t\t\t\t\tselectedStrokeColor: siteConfig.colors.secondaryDark,\n\t\t\t\t\t\t\tplaceMarkers: {\n\t\t\t\t\t\t\t\tcolors: siteConfig.pointsOfInterestConfig.placeMarkerColors,\n\t\t\t\t\t\t\t\tsize: siteConfig.pointsOfInterestConfig.placeMarkerSize\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</PlacesProvider>\n\t\t\t\t</MapProvider>\n\t\t\t</MapListProvider>\n\t\t</ThemeProvider>\n\t</TrackEventProvider>\n);};\n\n// Main component\n//\nexport const HireControlMap = ({\n\tclientToken,\n\tgoogleMapsApiKey, // Required: Google Maps API key from Next.js\n\tcontainerStyle = { height: '100vh' },\n\tnavigateToDetails = null,\n\tnavigateToEasyApply = null,\n\thandleUrlUpdate = null,\n\tLink = null,\n\tlinkFormat = '/jobs/[slug]',\n\teasyApplyUrl = null,\n\teasyApplyText = 'Easy Apply',\n\tisIframe = false,\n\thideMap = false, // Override to hide map even if siteConfig.showMap is true\n\thideFilters = false, // Hide the entire filter section\n\tnoEntities = false, // Skip entity fetching and hide entity-related filters\n\ttrackEvent = (eventType, eventObj) => {\n\t\tconsole.log(eventType);\n\t\tconsole.log(eventObj);\n\t},\n\t//providing listings entities and a getListingEntities function should negate the need for map code to fetch data\n\tlistings = [],\n\tentities = [],\n\tgetListingEntitiesCallback = null,\n\tdefaultFilters = null,\n\thiddenFilters = null,\n\tsetFiltersUrl = null,\n\tExpandListComponent = null,\n\tadditionalMapMarkers = [],\n\tdefaultZoomOverride = null,\n\t//Default site configuration file passed here stops need to fetch from api\n\tsiteConfiguration = null,\n\tlocalStorageKey = 'defaultKey.',\n\t// Algolia search configuration (optional)\n\talgoliaAppId = null,\n\talgoliaApiKey = null,\n\talgoliaIndexName = null,\n\t/**\n\t * Filter configuration (optional)\n\t * @param {boolean} hideZeroResults - Hide filter options with 0 results (default: false)\n\t * @param {boolean} dynamicCounts - Update counts based on active filters.\n\t * If false, shows initial/total counts (default: true)\n\t * @param {boolean} showFavorites - Show favorites special feature filter (default: true)\n\t * @param {boolean} collapsedByDefault - Start with all filter sections collapsed (default: false)\n\t * @param {boolean} sortAlphabetically - Sort filter options alphabetically instead of by count (default: false)\n\t * @param {object} classNames - Custom Tailwind classes to apply to filter components\n\t * @param {string} classNames.filterContainer - Classes for the main filter container wrapper\n\t * @param {string} classNames.filterContent - Classes for the scrollable filter content area\n\t * @param {string} classNames.filterAccordion - Classes for each filter accordion section\n\t * @param {string} classNames.filterAccordionHeader - Classes for accordion header/trigger\n\t * @param {string} classNames.filterAccordionContent - Classes for accordion content area\n\t * @param {string} classNames.filterItem - Classes for individual filter items (checkboxes/options)\n\t * @param {string} classNames.filterItemLabel - Classes for filter item labels\n\t * @param {string} classNames.filterItemCheckbox - Classes for filter item checkboxes\n\t * @param {string} classNames.filterItemCount - Classes for filter item count badges\n\t * @param {string} classNames.searchInput - Classes for search input field\n\t * @param {string} classNames.resetButton - Classes for reset all button\n\t * @param {string} classNames.showJobsButton - Classes for show jobs button\n\t * @param {string} classNames.filterFooter - Classes for the footer containing buttons\n\t */\n\tfilterConfig = {\n\t\thideZeroResults: false, // Hide filter options with 0 results\n\t\tdynamicCounts: true, // Update counts based on other active filters (false = show initial counts only)\n\t\tshowFavorites: true, // Show favorites filter\n\t\tcollapsedByDefault: false, // Start with all filter sections collapsed\n\t\tsortAlphabetically: false, // Sort filter options alphabetically instead of by count\n\t\tclassNames: {\n\t\t\tfilterContainer: '', // Main filter container wrapper\n\t\t\tfilterContent: '', // Scrollable content area\n\t\t\tfilterAccordion: '', // Filter accordion section\n\t\t\tfilterAccordionHeader: '', // Accordion header/trigger\n\t\t\tfilterAccordionContent: '', // Accordion content body\n\t\t\tfilterItem: '', // Individual filter items\n\t\t\tfilterItemLabel: '', // Filter item labels\n\t\t\tfilterItemCheckbox: '', // Filter item checkboxes\n\t\t\tfilterItemCount: '', // Filter item count badges\n\t\t\tsearchInput: '', // Search input field\n\t\t\tresetButton: '', // Reset all button\n\t\t\tshowJobsButton: '', // Show jobs button\n\t\t\tfilterFooter: '' // Footer with buttons\n\t\t}\n\t}\n}) => {\n\t// Initialize Algolia when credentials are provided (client-side only)\n\tconst [algoliaInitialized, setAlgoliaInitialized] = useState(false);\n\t\n\tuseEffect(() => {\n\t\tif (algoliaAppId && algoliaApiKey && algoliaIndexName && typeof window !== 'undefined') {\n\t\t\tinitializeAlgoliaSearch(algoliaAppId, algoliaApiKey, algoliaIndexName).then(initialized => {\n\t\t\t\tsetAlgoliaInitialized(initialized);\n\t\t\t\tif (initialized) {\n\t\t\t\t\tconsole.log('Algolia search initialized successfully');\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}, [algoliaAppId, algoliaApiKey, algoliaIndexName]);\n\n\t// Load Google Maps (non-blocking - map component will handle this)\n\tconst { isLoaded: isMapsLoaded, loadError } = useLoadScript({\n\t\tgoogleMapsApiKey: googleMapsApiKey,\n\t\tversion: 'quarterly',\n\t\tlibraries: LIBRARIES\n\t});\n\n\t// Only show errors for critical failures\n\tif (!googleMapsApiKey) {\n\t\tconsole.error('Google Maps API key is required');\n\t\treturn <div className=\"hc-p-4\">Google Maps API key is required</div>;\n\t}\n\n\tif (loadError) {\n\t\tconsole.error('Google Maps failed to load:', loadError);\n\t\treturn <div className=\"hc-p-4\">Error loading Google Maps</div>;\n\t}\n\n\t// Don't block rendering - let filters and list show immediately\n\t// Map container will handle its own loading state\n\n\t// siteConfiguration is now required - all data passed in statically\n\tif (!siteConfiguration) {\n\t\tconsole.error('Site configuration is required');\n\t\treturn <div className=\"hc-p-4\">Site configuration is required</div>;\n\t}\n\n\t// Prepare props for MapListProvider\n\tconst mapListProps = {\n\t\tresetFilters: false,\n\t\tnavigateToDetails,\n\t\tnavigateToEasyApply,\n\t\tLink,\n\t\tlinkFormat,\n\t\teasyApplyUrl,\n\t\teasyApplyText,\n\t\tlistings,\n\t\tentities,\n\t\tsiteConfig: siteConfiguration,\n\t\tgetListingEntitiesCallback,\n\t\tsetFiltersUrl,\n\t\thiddenFilters,\n\t\thandleUrlUpdate,\n\t\tdefaultFilters,\n\t\tdefaultZoomOverride, // will usually fit bounds\n\t\tcontainerStyle,\n\t\tExpandListComponent: ExpandListComponent ?? null,\n\t\tadditionalMapMarkers,\n\t\tisIframe,\n\t\tlocalStorageKey,\n\t\thideMap,\n\t\thideFilters,\n\t\tnoEntities,\n\t\tfilterConfig\n\t};\n\n\t// Calculate effective showMap value\n\tconst effectiveShowMap = hideMap ? false : siteConfiguration.showMap;\n\n\t// Prepare marker configuration\n\tconst markerConfigs = {\n\t\tfillColor: siteConfiguration.colors.primary,\n\t\tstrokeColor: siteConfiguration.colors.primaryDark,\n\t\tselectedFillColor: siteConfiguration.colors.secondary,\n\t\tselectedStrokeColor: siteConfiguration.colors.secondaryDark,\n\t\tplaceMarkers: {\n\t\t\tcolors: siteConfiguration.pointsOfInterestConfig.placeMarkerColors,\n\t\t\tsize: siteConfiguration.pointsOfInterestConfig.placeMarkerSize\n\t\t}\n\t};\n\n\t// Render immediately - individual components handle their own loading\n\t// Only Google Maps components will wait for isMapsLoaded\n\treturn (\n\t\t<ContextProviders\n\t\t\tsiteConfig={siteConfiguration}\n\t\t\ttrackEvent={trackEvent}\n\t\t\tgoogleMapsApiKey={googleMapsApiKey || process.env.GOOGLE_MAPS_API_KEY}\n\t\t\t{...mapListProps}\n\t\t>\n\t\t\t<Grid\n\t\t\t\tas='section'\n\t\t\t\tid='job-search-interface'\n\t\t\t\tcolumns={hideFilters ? 'hc-grid-cols-1' : 'md:hc-grid-cols-[1fr_2.5fr] lg:hc-grid-cols-[1fr_3.5fr]'}\n\t\t\t\tgap='hc-gap-0'\n\t\t\t\tautoRows={false}\n\t\t\t\tclassName={'hc-bundle hc-items-stretch hc-divide-x hc-divide-uiAccent/20'}\n\t\t\t>\n\t\t\t\t{!hideFilters && (\n\t\t\t\t\t<Grid.Item className='hc-bg-gray-100'>\n\t\t\t\t\t\t<Filter isDesktop={true} showMap={effectiveShowMap} className='hc-hidden md:hc-block' />\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t)}\n\t\t\t\t<MapList\n\t\t\t\t\tcontainerStyle={containerStyle}\n\t\t\t\t\tmapPosition={siteConfiguration.mapPosition}\n\t\t\t\t\tshowMap={effectiveShowMap}\n\t\t\t\t\tfieldsShown={siteConfiguration.fieldsShown}\n\t\t\t\t\tspecialFeatures={siteConfiguration.specialFeatures}\n\t\t\t\t\tfieldNames={siteConfiguration.fieldNames}\n\t\t\t\t\tplaceMappings={siteConfiguration.pointsOfInterestConfig.placeMappings ?? {}}\n\t\t\t\t\tmarkerConfigs={markerConfigs}\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t</ContextProviders>\n\t);\n};\n\nexport default HireControlMap;\n"],"names":["LIBRARIES","ContextProviders","_ref","_siteConfig$pointsOfI","_siteConfig$pointsOfI2","children","siteConfig","trackEvent","googleMapsApiKey","mapListProps","_objectWithoutProperties","_excluded","React","createElement","TrackEventProvider","ThemeProvider","uiText","colors","uiAccent","primary","primaryDark","secondary","secondaryDark","MapListProvider","_extends","MapProvider","resetFilters","defaultZoomOverride","localStorageKey","PlacesProvider","placeMappings","pointsOfInterestConfig","additionalMapMarkers","showAtZoomLevel","markerColors","fillColor","strokeColor","selectedFillColor","selectedStrokeColor","placeMarkers","placeMarkerColors","size","placeMarkerSize","HireControlMap","_ref2","_siteConfiguration$po","clientToken","_ref2$containerStyle","containerStyle","height","_ref2$navigateToDetai","navigateToDetails","_ref2$navigateToEasyA","navigateToEasyApply","_ref2$handleUrlUpdate","handleUrlUpdate","_ref2$Link","Link","_ref2$linkFormat","linkFormat","_ref2$easyApplyUrl","easyApplyUrl","_ref2$easyApplyText","easyApplyText","_ref2$isIframe","isIframe","_ref2$hideMap","hideMap","_ref2$hideFilters","hideFilters","_ref2$noEntities","noEntities","_ref2$trackEvent","eventType","eventObj","console","log","_ref2$listings","listings","_ref2$entities","entities","_ref2$getListingEntit","getListingEntitiesCallback","_ref2$defaultFilters","defaultFilters","_ref2$hiddenFilters","hiddenFilters","_ref2$setFiltersUrl","setFiltersUrl","_ref2$ExpandListCompo","ExpandListComponent","_ref2$additionalMapMa","_ref2$defaultZoomOver","_ref2$siteConfigurati","siteConfiguration","_ref2$localStorageKey","_ref2$algoliaAppId","algoliaAppId","_ref2$algoliaApiKey","algoliaApiKey","_ref2$algoliaIndexNam","algoliaIndexName","_ref2$filterConfig","filterConfig","hideZeroResults","dynamicCounts","showFavorites","collapsedByDefault","sortAlphabetically","classNames","filterContainer","filterContent","filterAccordion","filterAccordionHeader","filterAccordionContent","filterItem","filterItemLabel","filterItemCheckbox","filterItemCount","searchInput","resetButton","showJobsButton","filterFooter","_useState","useState","_useState2","_slicedToArray","algoliaInitialized","setAlgoliaInitialized","useEffect","window","initializeAlgoliaSearch","then","initialized","_useLoadScript","useLoadScript","version","libraries","isLoaded","loadError","error","className","effectiveShowMap","showMap","markerConfigs","process","env","GOOGLE_MAPS_API_KEY","Grid","as","id","columns","gap","autoRows","Item","Filter","isDesktop","MapList","mapPosition","fieldsShown","specialFeatures","fieldNames"],"mappings":"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"}
1
+ {"version":3,"file":"HireControlMap.js","sources":["../../src/components/HireControlMap.js"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { useLoadScript } from '@react-google-maps/api';\n\nimport Grid from '~/components/modules/grid';\nimport Filter from '~/components/containers/filter/filter-container';\nimport MapList from '~/components/containers/maps/map-list-container';\n\n// Context imports\nimport { MapProvider } from '~/contexts/mapContext';\nimport { PlacesProvider } from '~/contexts/placesContext';\nimport { MapListProvider } from '~/contexts/mapListContext';\nimport { TrackEventProvider } from '~/contexts/trackEventContext';\nimport { ThemeProvider } from '~/contexts/themeContext';\n\nimport { initializeAlgoliaSearch } from '~/util/algoliaSearchUtil';\n\n// Libraries for Google Maps\nconst LIBRARIES = ['places'];\n\n// Since all data is now passed in statically, no need to fetch config\n\n// Component to handle all context providers\nconst ContextProviders = ({ children, siteConfig, trackEvent, googleMapsApiKey, ...mapListProps }) => { return(\n\t<TrackEventProvider trackEvent={trackEvent}>\n\t\t<ThemeProvider\n\t\t\tuiText={siteConfig.colors.uiText}\n\t\t\tuiAccent={siteConfig.colors.uiAccent}\n\t\t\tprimary={siteConfig.colors.primary}\n\t\t\tprimaryDark={siteConfig.colors.primaryDark}\n\t\t\tsecondary={siteConfig.colors.secondary}\n\t\t\tsecondaryDark={siteConfig.colors.secondaryDark}\n\t\t>\n\t\t\t<MapListProvider siteConfig={siteConfig} googleMapsApiKey={googleMapsApiKey} {...mapListProps}>\n\t\t\t\t<MapProvider resetFilters={mapListProps.resetFilters} defaultZoomOverride={mapListProps.defaultZoomOverride} localStorageKey={mapListProps.localStorageKey}>\n\t\t\t\t\t<PlacesProvider\n\t\t\t\t\t\tplaceMappings={siteConfig.pointsOfInterestConfig.placeMappings ?? {}}\n\t\t\t\t\t\tadditionalMapMarkers={mapListProps.additionalMapMarkers}\n\t\t\t\t\t\tgoogleMapsApiKey={googleMapsApiKey}\n\t\t\t\t\t\tshowAtZoomLevel={siteConfig.pointsOfInterestConfig.showAtZoomLevel ?? 12}\n\t\t\t\t\t\tmarkerColors={{\n\t\t\t\t\t\t\tfillColor: siteConfig.colors.primary,\n\t\t\t\t\t\t\tstrokeColor: siteConfig.colors.primaryDark,\n\t\t\t\t\t\t\tselectedFillColor: siteConfig.colors.secondary,\n\t\t\t\t\t\t\tselectedStrokeColor: siteConfig.colors.secondaryDark,\n\t\t\t\t\t\t\tplaceMarkers: {\n\t\t\t\t\t\t\t\tcolors: siteConfig.pointsOfInterestConfig.placeMarkerColors,\n\t\t\t\t\t\t\t\tsize: siteConfig.pointsOfInterestConfig.placeMarkerSize\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</PlacesProvider>\n\t\t\t\t</MapProvider>\n\t\t\t</MapListProvider>\n\t\t</ThemeProvider>\n\t</TrackEventProvider>\n);};\n\n// Main component\n//\nexport const HireControlMap = ({\n\tclientToken,\n\tgoogleMapsApiKey, // Required: Google Maps API key from Next.js\n\tcontainerStyle = { height: '100vh' },\n\tnavigateToDetails = null,\n\tnavigateToEasyApply = null,\n\thandleUrlUpdate = null,\n\tLink = null,\n\tlinkFormat = '/jobs/[slug]',\n\teasyApplyUrl = null,\n\teasyApplyText = 'Easy Apply',\n\tisIframe = false,\n\thideMap = false, // Override to hide map even if siteConfig.showMap is true\n\thideFilters = false, // Hide the entire filter section\n\tnoEntities = false, // Skip entity fetching and hide entity-related filters\n\tmobileDetailsCallback = null, // Optional callback for mobile job listing clicks - called instead of expanding accordion\n\ttrackEvent = (eventType, eventObj) => {\n\t\tconsole.log(eventType);\n\t\tconsole.log(eventObj);\n\t},\n\t//providing listings entities and a getListingEntities function should negate the need for map code to fetch data\n\tlistings = [],\n\tentities = [],\n\tgetListingEntitiesCallback = null,\n\tdefaultFilters = null,\n\thiddenFilters = null,\n\tsetFiltersUrl = null,\n\tExpandListComponent = null,\n\tadditionalMapMarkers = [],\n\tdefaultZoomOverride = null,\n\t//Default site configuration file passed here stops need to fetch from api\n\tsiteConfiguration = null,\n\tlocalStorageKey = 'defaultKey.',\n\t// Algolia search configuration (optional)\n\talgoliaAppId = null,\n\talgoliaApiKey = null,\n\talgoliaIndexName = null,\n\t/**\n\t * Filter configuration (optional)\n\t * @param {boolean} hideZeroResults - Hide filter options with 0 results (default: false)\n\t * @param {boolean} dynamicCounts - Update counts based on active filters.\n\t * If false, shows initial/total counts (default: true)\n\t * @param {boolean} showFavorites - Show favorites special feature filter (default: true)\n\t * @param {boolean} collapsedByDefault - Start with all filter sections collapsed (default: false)\n\t * @param {boolean} sortAlphabetically - Sort filter options alphabetically instead of by count (default: false)\n\t * @param {object} classNames - Custom Tailwind classes to apply to filter components\n\t * @param {string} classNames.filterContainer - Classes for the main filter container wrapper\n\t * @param {string} classNames.filterContent - Classes for the scrollable filter content area\n\t * @param {string} classNames.filterAccordion - Classes for each filter accordion section\n\t * @param {string} classNames.filterAccordionHeader - Classes for accordion header/trigger\n\t * @param {string} classNames.filterAccordionContent - Classes for accordion content area\n\t * @param {string} classNames.filterItem - Classes for individual filter items (checkboxes/options)\n\t * @param {string} classNames.filterItemLabel - Classes for filter item labels\n\t * @param {string} classNames.filterItemCheckbox - Classes for filter item checkboxes\n\t * @param {string} classNames.filterItemCount - Classes for filter item count badges\n\t * @param {string} classNames.searchInput - Classes for search input field\n\t * @param {string} classNames.resetButton - Classes for reset all button\n\t * @param {string} classNames.showJobsButton - Classes for show jobs button\n\t * @param {string} classNames.filterFooter - Classes for the footer containing buttons\n\t */\n\tfilterConfig = {\n\t\thideZeroResults: false, // Hide filter options with 0 results\n\t\tdynamicCounts: true, // Update counts based on other active filters (false = show initial counts only)\n\t\tshowFavorites: true, // Show favorites filter\n\t\tcollapsedByDefault: false, // Start with all filter sections collapsed\n\t\tsortAlphabetically: false, // Sort filter options alphabetically instead of by count\n\t\tclassNames: {\n\t\t\tfilterContainer: '', // Main filter container wrapper\n\t\t\tfilterContent: '', // Scrollable content area\n\t\t\tfilterAccordion: '', // Filter accordion section\n\t\t\tfilterAccordionHeader: '', // Accordion header/trigger\n\t\t\tfilterAccordionContent: '', // Accordion content body\n\t\t\tfilterItem: '', // Individual filter items\n\t\t\tfilterItemLabel: '', // Filter item labels\n\t\t\tfilterItemCheckbox: '', // Filter item checkboxes\n\t\t\tfilterItemCount: '', // Filter item count badges\n\t\t\tsearchInput: '', // Search input field\n\t\t\tresetButton: '', // Reset all button\n\t\t\tshowJobsButton: '', // Show jobs button\n\t\t\tfilterFooter: '' // Footer with buttons\n\t\t}\n\t}\n}) => {\n\t// Initialize Algolia when credentials are provided (client-side only)\n\tconst [algoliaInitialized, setAlgoliaInitialized] = useState(false);\n\n\tuseEffect(() => {\n\t\tif (algoliaAppId && algoliaApiKey && algoliaIndexName && typeof window !== 'undefined') {\n\t\t\tinitializeAlgoliaSearch(algoliaAppId, algoliaApiKey, algoliaIndexName).then(initialized => {\n\t\t\t\tsetAlgoliaInitialized(initialized);\n\t\t\t\tif (initialized) {\n\t\t\t\t\tconsole.log('Algolia search initialized successfully');\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}, [algoliaAppId, algoliaApiKey, algoliaIndexName]);\n\n\t// Load Google Maps (non-blocking - map component will handle this)\n\tconst { isLoaded: isMapsLoaded, loadError } = useLoadScript({\n\t\tgoogleMapsApiKey: googleMapsApiKey,\n\t\tversion: 'quarterly',\n\t\tlibraries: LIBRARIES\n\t});\n\n\t// Only show errors for critical failures\n\tif (!googleMapsApiKey) {\n\t\tconsole.error('Google Maps API key is required');\n\t\treturn <div className=\"hc-p-4\">Google Maps API key is required</div>;\n\t}\n\n\tif (loadError) {\n\t\tconsole.error('Google Maps failed to load:', loadError);\n\t\treturn <div className=\"hc-p-4\">Error loading Google Maps</div>;\n\t}\n\n\t// Don't block rendering - let filters and list show immediately\n\t// Map container will handle its own loading state\n\n\t// siteConfiguration is now required - all data passed in statically\n\tif (!siteConfiguration) {\n\t\tconsole.error('Site configuration is required');\n\t\treturn <div className=\"hc-p-4\">Site configuration is required</div>;\n\t}\n\n\t// Prepare props for MapListProvider\n\tconst mapListProps = {\n\t\tresetFilters: false,\n\t\tnavigateToDetails,\n\t\tnavigateToEasyApply,\n\t\tLink,\n\t\tlinkFormat,\n\t\teasyApplyUrl,\n\t\teasyApplyText,\n\t\tlistings,\n\t\tentities,\n\t\tsiteConfig: siteConfiguration,\n\t\tgetListingEntitiesCallback,\n\t\tsetFiltersUrl,\n\t\thiddenFilters,\n\t\thandleUrlUpdate,\n\t\tdefaultFilters,\n\t\tdefaultZoomOverride, // will usually fit bounds\n\t\tcontainerStyle,\n\t\tExpandListComponent: ExpandListComponent ?? null,\n\t\tadditionalMapMarkers,\n\t\tisIframe,\n\t\tlocalStorageKey,\n\t\thideMap,\n\t\thideFilters,\n\t\tnoEntities,\n\t\tfilterConfig,\n\t\tmobileDetailsCallback\n\t};\n\n\t// Calculate effective showMap value\n\tconst effectiveShowMap = hideMap ? false : siteConfiguration.showMap;\n\n\t// Prepare marker configuration\n\tconst markerConfigs = {\n\t\tfillColor: siteConfiguration.colors.primary,\n\t\tstrokeColor: siteConfiguration.colors.primaryDark,\n\t\tselectedFillColor: siteConfiguration.colors.secondary,\n\t\tselectedStrokeColor: siteConfiguration.colors.secondaryDark,\n\t\tplaceMarkers: {\n\t\t\tcolors: siteConfiguration.pointsOfInterestConfig.placeMarkerColors,\n\t\t\tsize: siteConfiguration.pointsOfInterestConfig.placeMarkerSize\n\t\t}\n\t};\n\n\t// Render immediately - individual components handle their own loading\n\t// Only Google Maps components will wait for isMapsLoaded\n\treturn (\n\t\t<ContextProviders\n\t\t\tsiteConfig={siteConfiguration}\n\t\t\ttrackEvent={trackEvent}\n\t\t\tgoogleMapsApiKey={googleMapsApiKey || process.env.GOOGLE_MAPS_API_KEY}\n\t\t\t{...mapListProps}\n\t\t>\n\t\t\t<Grid\n\t\t\t\tas='section'\n\t\t\t\tid='job-search-interface'\n\t\t\t\tcolumns={hideFilters ? 'hc-grid-cols-1' : 'md:hc-grid-cols-[1fr_2.5fr] lg:hc-grid-cols-[1fr_3.5fr]'}\n\t\t\t\tgap='hc-gap-0'\n\t\t\t\tautoRows={false}\n\t\t\t\tclassName={'hc-bundle hc-items-stretch hc-divide-x hc-divide-uiAccent/20'}\n\t\t\t>\n\t\t\t\t{!hideFilters && (\n\t\t\t\t\t<Grid.Item className='hc-bg-gray-100'>\n\t\t\t\t\t\t<Filter isDesktop={true} showMap={effectiveShowMap} className='hc-hidden md:hc-block' />\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t)}\n\t\t\t\t<MapList\n\t\t\t\t\tcontainerStyle={containerStyle}\n\t\t\t\t\tmapPosition={siteConfiguration.mapPosition}\n\t\t\t\t\tshowMap={effectiveShowMap}\n\t\t\t\t\tfieldsShown={siteConfiguration.fieldsShown}\n\t\t\t\t\tspecialFeatures={siteConfiguration.specialFeatures}\n\t\t\t\t\tfieldNames={siteConfiguration.fieldNames}\n\t\t\t\t\tplaceMappings={siteConfiguration.pointsOfInterestConfig.placeMappings ?? {}}\n\t\t\t\t\tmarkerConfigs={markerConfigs}\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t</ContextProviders>\n\t);\n};\n\nexport default HireControlMap;\n"],"names":["LIBRARIES","ContextProviders","_ref","_siteConfig$pointsOfI","_siteConfig$pointsOfI2","children","siteConfig","trackEvent","googleMapsApiKey","mapListProps","_objectWithoutProperties","_excluded","React","createElement","TrackEventProvider","ThemeProvider","uiText","colors","uiAccent","primary","primaryDark","secondary","secondaryDark","MapListProvider","_extends","MapProvider","resetFilters","defaultZoomOverride","localStorageKey","PlacesProvider","placeMappings","pointsOfInterestConfig","additionalMapMarkers","showAtZoomLevel","markerColors","fillColor","strokeColor","selectedFillColor","selectedStrokeColor","placeMarkers","placeMarkerColors","size","placeMarkerSize","HireControlMap","_ref2","_siteConfiguration$po","clientToken","_ref2$containerStyle","containerStyle","height","_ref2$navigateToDetai","navigateToDetails","_ref2$navigateToEasyA","navigateToEasyApply","_ref2$handleUrlUpdate","handleUrlUpdate","_ref2$Link","Link","_ref2$linkFormat","linkFormat","_ref2$easyApplyUrl","easyApplyUrl","_ref2$easyApplyText","easyApplyText","_ref2$isIframe","isIframe","_ref2$hideMap","hideMap","_ref2$hideFilters","hideFilters","_ref2$noEntities","noEntities","_ref2$mobileDetailsCa","mobileDetailsCallback","_ref2$trackEvent","eventType","eventObj","console","log","_ref2$listings","listings","_ref2$entities","entities","_ref2$getListingEntit","getListingEntitiesCallback","_ref2$defaultFilters","defaultFilters","_ref2$hiddenFilters","hiddenFilters","_ref2$setFiltersUrl","setFiltersUrl","_ref2$ExpandListCompo","ExpandListComponent","_ref2$additionalMapMa","_ref2$defaultZoomOver","_ref2$siteConfigurati","siteConfiguration","_ref2$localStorageKey","_ref2$algoliaAppId","algoliaAppId","_ref2$algoliaApiKey","algoliaApiKey","_ref2$algoliaIndexNam","algoliaIndexName","_ref2$filterConfig","filterConfig","hideZeroResults","dynamicCounts","showFavorites","collapsedByDefault","sortAlphabetically","classNames","filterContainer","filterContent","filterAccordion","filterAccordionHeader","filterAccordionContent","filterItem","filterItemLabel","filterItemCheckbox","filterItemCount","searchInput","resetButton","showJobsButton","filterFooter","_useState","useState","_useState2","_slicedToArray","algoliaInitialized","setAlgoliaInitialized","useEffect","window","initializeAlgoliaSearch","then","initialized","_useLoadScript","useLoadScript","version","libraries","isLoaded","loadError","error","className","effectiveShowMap","showMap","markerConfigs","process","env","GOOGLE_MAPS_API_KEY","Grid","as","id","columns","gap","autoRows","Item","Filter","isDesktop","MapList","mapPosition","fieldsShown","specialFeatures","fieldNames"],"mappings":"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"}
@@ -14,11 +14,13 @@ var MapAccordionItemContainer = function MapAccordionItemContainer(_ref) {
14
14
  fieldsShown = _ref.fieldsShown,
15
15
  itemExpandedContent = _ref.itemExpandedContent,
16
16
  specialFeatures = _ref.specialFeatures,
17
- isActive = _ref.isActive;
17
+ isActive = _ref.isActive,
18
+ index = _ref.index;
18
19
  var _useMapList = useMapList(),
19
20
  mapItems = _useMapList.mapItems,
20
21
  recruiters = _useMapList.recruiters,
21
- siteConfig = _useMapList.siteConfig;
22
+ siteConfig = _useMapList.siteConfig,
23
+ mobileDetailsCallback = _useMapList.mobileDetailsCallback;
22
24
  var _useMap = useMap(),
23
25
  selectItem = _useMap.selectItem;
24
26
  var _useTrackEvent = useTrackEvent(),
@@ -57,6 +59,15 @@ var MapAccordionItemContainer = function MapAccordionItemContainer(_ref) {
57
59
  jobCategory: item.fields.category,
58
60
  entityDisplayName: item === null || item === void 0 || (_item$mapDetails = item.mapDetails) === null || _item$mapDetails === void 0 ? void 0 : _item$mapDetails.entityDisplayName
59
61
  });
62
+
63
+ // Check if mobile and mobileDetailsCallback is provided
64
+ if (mobileDetailsCallback) {
65
+ var isMobile = typeof window !== 'undefined' && window.innerWidth < 768;
66
+ if (isMobile) {
67
+ mobileDetailsCallback(item);
68
+ return;
69
+ }
70
+ }
60
71
  setSelectedItemAndZoomMap(item, isActive);
61
72
  };
62
73
  return /*#__PURE__*/React.createElement(MapAccordionItem, {
@@ -73,7 +84,8 @@ var MapAccordionItemContainer = function MapAccordionItemContainer(_ref) {
73
84
  isActive: isActive,
74
85
  onClick: function onClick() {
75
86
  return handleItemClick(item);
76
- }
87
+ },
88
+ index: index
77
89
  }));
78
90
  };
79
91
 
@@ -1 +1 @@
1
- {"version":3,"file":"map-accordion-item-container.js","sources":["../../../../src/components/containers/accordions/map-accordion-item-container.js"],"sourcesContent":["import React from 'react';\nimport { useMap } from '~/contexts/mapContext';\nimport { useMapList } from '~/contexts/mapListContext';\nimport { useTrackEvent } from '~/contexts/trackEventContext';\nimport { setStorageObject } from '~/util/localStorageUtil';\nimport MapAccordionItem from '~/components/modules/accordions/MapAccordionItem';\nimport ListItemContainer from '~/components/containers/list/list-item/list-item-container';\n\nconst MapAccordionItemContainer = ({\n\tshowMap,\n\titem,\n\titemRefs,\n\tfieldsShown,\n\titemExpandedContent,\n\tspecialFeatures,\n\tisActive\n}) => {\n\tconst { mapItems, recruiters, siteConfig } = useMapList();\n\tconst { selectItem } = useMap();\n\tconst { trackEvent, eventTypes } = useTrackEvent();\n\tconst jobPinZoomLevel = siteConfig?.jobPinZoomLevel ?? 12;\n\n\tconst setSelectedItemAndZoomMap = (item, isActive) => {\n\t\tif (isActive) {\n\t\t\tif (typeof window !== 'undefined') {\n\t\t\t\tlocalStorage.removeItem(\"selectedListItem\");\n\t\t\t}\n\t\t\tselectItem(null, null, 9, { lat: 39.8283, lng: -98.5795 });\n\t\t} else {\n\t\t\tsetStorageObject(\"selectedListItem\", item);\n\t\t\tconsole.log('mapItems here', mapItems);\n\t\t\t//edited here for new structure of entity key\n\t\t\tconsole.log('the item in questions is',item);\n\t\t\tconst location = mapItems.find(x => x.entityKey?.toLowerCase() === item.fields.entityKey?.toLowerCase()) || null;\n\t\t\tconsole.log('location is', location);\n\t\t\tselectItem(item, location, jobPinZoomLevel, {\n\t\t\t\tlat: location?.latitude,\n\t\t\t\tlng: location?.longitude\n\t\t\t});\n\t\t}\n\t};\n\n\tconst handleItemClick = item => {\n\t\ttrackEvent(eventTypes.JOB_LISTING_SELECTED, {\n\t\t\tjobTitle: item.fields.title,\n\t\t\tjobCategory: item.fields.category,\n\t\t\tentityDisplayName: item?.mapDetails?.entityDisplayName\n\t\t});\n\n\t\tsetSelectedItemAndZoomMap(item, isActive);\n\t};\n\n\treturn (\n\t\t<MapAccordionItem\n\t\t\titem={item}\n\t\t\titemRefs={itemRefs}\n\t\t\titemExpandedContent={itemExpandedContent}\n\t\t\tisActive={isActive}\n\t\t\trecruiter={recruiters[item.recruiterId]}\n\t\t>\n\t\t\t<ListItemContainer\n\t\t\t\tshowMap={showMap}\n\t\t\t\titem={item}\n\t\t\t\tfieldsShown={fieldsShown}\n\t\t\t\tspecialFeatures={specialFeatures}\n\t\t\t\tisActive={isActive}\n\t\t\t\tonClick={() => handleItemClick(item)}\n\t\t\t/>\n\t\t</MapAccordionItem>\n\t);\n};\n\nexport default MapAccordionItemContainer;\n"],"names":["MapAccordionItemContainer","_ref","_siteConfig$jobPinZoo","showMap","item","itemRefs","fieldsShown","itemExpandedContent","specialFeatures","isActive","_useMapList","useMapList","mapItems","recruiters","siteConfig","_useMap","useMap","selectItem","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","jobPinZoomLevel","setSelectedItemAndZoomMap","window","localStorage","removeItem","lat","lng","setStorageObject","console","log","location","find","x","_x$entityKey","_item$fields$entityKe","entityKey","toLowerCase","fields","latitude","longitude","handleItemClick","_item$mapDetails","JOB_LISTING_SELECTED","jobTitle","title","jobCategory","category","entityDisplayName","mapDetails","React","createElement","MapAccordionItem","recruiter","recruiterId","ListItemContainer","onClick"],"mappings":"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"}
1
+ {"version":3,"file":"map-accordion-item-container.js","sources":["../../../../src/components/containers/accordions/map-accordion-item-container.js"],"sourcesContent":["import React from 'react';\nimport { useMap } from '~/contexts/mapContext';\nimport { useMapList } from '~/contexts/mapListContext';\nimport { useTrackEvent } from '~/contexts/trackEventContext';\nimport { setStorageObject } from '~/util/localStorageUtil';\nimport MapAccordionItem from '~/components/modules/accordions/MapAccordionItem';\nimport ListItemContainer from '~/components/containers/list/list-item/list-item-container';\n\nconst MapAccordionItemContainer = ({\n\tshowMap,\n\titem,\n\titemRefs,\n\tfieldsShown,\n\titemExpandedContent,\n\tspecialFeatures,\n\tisActive,\n\tindex\n}) => {\n\tconst { mapItems, recruiters, siteConfig, mobileDetailsCallback } = useMapList();\n\tconst { selectItem } = useMap();\n\tconst { trackEvent, eventTypes } = useTrackEvent();\n\tconst jobPinZoomLevel = siteConfig?.jobPinZoomLevel ?? 12;\n\n\tconst setSelectedItemAndZoomMap = (item, isActive) => {\n\t\tif (isActive) {\n\t\t\tif (typeof window !== 'undefined') {\n\t\t\t\tlocalStorage.removeItem(\"selectedListItem\");\n\t\t\t}\n\t\t\tselectItem(null, null, 9, { lat: 39.8283, lng: -98.5795 });\n\t\t} else {\n\t\t\tsetStorageObject(\"selectedListItem\", item);\n\t\t\tconsole.log('mapItems here', mapItems);\n\t\t\t//edited here for new structure of entity key\n\t\t\tconsole.log('the item in questions is',item);\n\t\t\tconst location = mapItems.find(x => x.entityKey?.toLowerCase() === item.fields.entityKey?.toLowerCase()) || null;\n\t\t\tconsole.log('location is', location);\n\t\t\tselectItem(item, location, jobPinZoomLevel, {\n\t\t\t\tlat: location?.latitude,\n\t\t\t\tlng: location?.longitude\n\t\t\t});\n\t\t}\n\t};\n\n\tconst handleItemClick = item => {\n\t\ttrackEvent(eventTypes.JOB_LISTING_SELECTED, {\n\t\t\tjobTitle: item.fields.title,\n\t\t\tjobCategory: item.fields.category,\n\t\t\tentityDisplayName: item?.mapDetails?.entityDisplayName\n\t\t});\n\n\t\t// Check if mobile and mobileDetailsCallback is provided\n\t\tif (mobileDetailsCallback) {\n\t\t\tconst isMobile = typeof window !== 'undefined' && window.innerWidth < 768;\n\t\t\tif (isMobile) {\n\t\t\t\tmobileDetailsCallback(item);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tsetSelectedItemAndZoomMap(item, isActive);\n\t};\n\n\treturn (\n\t\t<MapAccordionItem\n\t\t\titem={item}\n\t\t\titemRefs={itemRefs}\n\t\t\titemExpandedContent={itemExpandedContent}\n\t\t\tisActive={isActive}\n\t\t\trecruiter={recruiters[item.recruiterId]}\n\t\t>\n\t\t\t<ListItemContainer\n\t\t\t\tshowMap={showMap}\n\t\t\t\titem={item}\n\t\t\t\tfieldsShown={fieldsShown}\n\t\t\t\tspecialFeatures={specialFeatures}\n\t\t\t\tisActive={isActive}\n\t\t\t\tonClick={() => handleItemClick(item)}\n\t\t\t\tindex={index}\n\t\t\t/>\n\t\t</MapAccordionItem>\n\t);\n};\n\nexport default MapAccordionItemContainer;\n"],"names":["MapAccordionItemContainer","_ref","_siteConfig$jobPinZoo","showMap","item","itemRefs","fieldsShown","itemExpandedContent","specialFeatures","isActive","index","_useMapList","useMapList","mapItems","recruiters","siteConfig","mobileDetailsCallback","_useMap","useMap","selectItem","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","jobPinZoomLevel","setSelectedItemAndZoomMap","window","localStorage","removeItem","lat","lng","setStorageObject","console","log","location","find","x","_x$entityKey","_item$fields$entityKe","entityKey","toLowerCase","fields","latitude","longitude","handleItemClick","_item$mapDetails","JOB_LISTING_SELECTED","jobTitle","title","jobCategory","category","entityDisplayName","mapDetails","isMobile","innerWidth","React","createElement","MapAccordionItem","recruiter","recruiterId","ListItemContainer","onClick"],"mappings":"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"}
@@ -49,19 +49,11 @@ var FilterContainer = function FilterContainer(_ref) {
49
49
  };
50
50
  return /*#__PURE__*/React.createElement(Filter, {
51
51
  className: className,
52
- showMap: showMap,
53
52
  isDesktop: isDesktop,
54
53
  hasActiveFilters: hasActiveFilters,
55
- setHasActiveFilters: setHasActiveFilters,
56
- defaultValue: defaultValue,
57
- setDefaultValue: _setDefaultValue,
58
- setSelectedListItem: setSelectedListItem,
59
- setLocation: setLocation,
60
54
  filteredListings: filteredListings,
61
55
  selectedFilters: selectedFilters,
62
- setSelectedFilters: setSelectedFilters,
63
56
  setMobileTab: setMobileTab,
64
- siteConfig: siteConfig,
65
57
  style: containerStyle
66
58
  }, /*#__PURE__*/React.createElement(AccordionFiltersContainer, {
67
59
  setHasActiveFilters: setHasActiveFilters,
@@ -1 +1 @@
1
- {"version":3,"file":"filter-container.js","sources":["../../../../src/components/containers/filter/filter-container.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { useMap } from '~/contexts/mapContext';\nimport { useMapList } from '~/contexts/mapListContext';\nimport { useTrackEvent } from '~/contexts/trackEventContext';\nimport Filter from '~/components/modules/filter/index';\nimport FilterSearch from '~/components/containers/filter/search-container';\nimport FiltersAccordion from '~/components/containers/accordions/filter-container';\nimport FilterLocations from '~/components/containers/filter/location-container';\n\nconst FilterContainer = ({\n\tclassName,\n\tshowMap,\n\tisDesktop = false\n}) => {\n\tconst { trackEvent, eventTypes } = useTrackEvent();\n\tconst [hasActiveFilters, setHasActiveFilters] = useState(false);\n\n\tconst { setSelectedListItem, setLocation, filterReset } = useMap();\n\tconst {\n\t\tfilteredListings,\n\t\tselectedFilters,\n\t\tsetSelectedFilters,\n\t\tsetMobileTab,\n\t\thandleSettingFavorites,\n\t\tsetQuery,\n\t\tsiteConfig,\n\t\tcontainerStyle,\n\t\tnoEntities\n\t} = useMapList();\n\tconst [defaultValue, setDefaultValue] = useState(siteConfig?.defaultFilterOpen ? siteConfig?.defaultFilterOpen : null);\n\tconst handleReset = () => {\n\t\ttrackEvent(eventTypes.FILTERS_RESET, { filtersRemoved: selectedFilters });\n\t\tfilterReset();\n\t\tsetSelectedFilters({});\n\t\tsetQuery(null);\n\t\thandleSettingFavorites(null);\n\t};\n\n\treturn (\n\t\t<Filter\n\t\t\tclassName={className}\n\t\t\tshowMap={showMap}\n\t\t\tisDesktop={isDesktop}\n\t\t\thasActiveFilters={hasActiveFilters}\n\t\t\tsetHasActiveFilters={setHasActiveFilters}\n\t\t\tdefaultValue={defaultValue}\n\t\t\tsetDefaultValue={setDefaultValue}\n\t\t\tsetSelectedListItem={setSelectedListItem}\n\t\t\tsetLocation={setLocation}\n\t\t\tfilteredListings={filteredListings}\n\t\t\tselectedFilters={selectedFilters}\n\t\t\tsetSelectedFilters={setSelectedFilters}\n\t\t\tsetMobileTab={setMobileTab}\n\t\t\tsiteConfig={siteConfig}\n\t\t\tstyle={containerStyle}\n\n\t\t>\n\t\t\t<FiltersAccordion\n\t\t\t\tsetHasActiveFilters={setHasActiveFilters}\n\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\tsetDefaultValue={value => { setDefaultValue(value === defaultValue ? \"\" : value); }}\n\t\t\t\tsetLocation={setLocation}\n\t\t\t\tsetSelectedListItem={setSelectedListItem}\n\t\t\t\tSubcategoryRequireCategory={siteConfig.subcategoryRequireCategory}\n\t\t\t\thandleReset={handleReset}\n\t\t\t/>\n\t\t\t<FilterSearch />\n\t\t\t{siteConfig.hideLocations !== true && !noEntities &&\n\t\t\t<FilterLocations\n\t\t\t\tsetHasActiveFilters={setHasActiveFilters}\n\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\tshowMap={showMap}\n\t\t\t\tsetDefaultValue={value => { setDefaultValue(value === defaultValue ? \"\" : value); }}\n\t\t\t\tsetLocation={setLocation}\n\t\t\t\tsetSelectedListItem={setSelectedListItem}\n\t\t\t/>\n\t\t\t}\n\t\t</Filter>\n\t);\n};\n\nexport default FilterContainer;\n"],"names":["FilterContainer","_ref","className","showMap","_ref$isDesktop","isDesktop","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","_useState","useState","_useState2","_slicedToArray","hasActiveFilters","setHasActiveFilters","_useMap","useMap","setSelectedListItem","setLocation","filterReset","_useMapList","useMapList","filteredListings","selectedFilters","setSelectedFilters","setMobileTab","handleSettingFavorites","setQuery","siteConfig","containerStyle","noEntities","_useState3","defaultFilterOpen","_useState4","defaultValue","setDefaultValue","handleReset","FILTERS_RESET","filtersRemoved","React","createElement","Filter","style","FiltersAccordion","value","SubcategoryRequireCategory","subcategoryRequireCategory","FilterSearch","hideLocations","FilterLocations"],"mappings":"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"}
1
+ {"version":3,"file":"filter-container.js","sources":["../../../../src/components/containers/filter/filter-container.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { useMap } from '~/contexts/mapContext';\nimport { useMapList } from '~/contexts/mapListContext';\nimport { useTrackEvent } from '~/contexts/trackEventContext';\nimport Filter from '~/components/modules/filter/index';\nimport FilterSearch from '~/components/containers/filter/search-container';\nimport FiltersAccordion from '~/components/containers/accordions/filter-container';\nimport FilterLocations from '~/components/containers/filter/location-container';\n\nconst FilterContainer = ({\n\tclassName,\n\tshowMap,\n\tisDesktop = false\n}) => {\n\tconst { trackEvent, eventTypes } = useTrackEvent();\n\tconst [hasActiveFilters, setHasActiveFilters] = useState(false);\n\n\tconst { setSelectedListItem, setLocation, filterReset } = useMap();\n\tconst {\n\t\tfilteredListings,\n\t\tselectedFilters,\n\t\tsetSelectedFilters,\n\t\tsetMobileTab,\n\t\thandleSettingFavorites,\n\t\tsetQuery,\n\t\tsiteConfig,\n\t\tcontainerStyle,\n\t\tnoEntities\n\t} = useMapList();\n\tconst [defaultValue, setDefaultValue] = useState(siteConfig?.defaultFilterOpen ? siteConfig?.defaultFilterOpen : null);\n\tconst handleReset = () => {\n\t\ttrackEvent(eventTypes.FILTERS_RESET, { filtersRemoved: selectedFilters });\n\t\tfilterReset();\n\t\tsetSelectedFilters({});\n\t\tsetQuery(null);\n\t\thandleSettingFavorites(null);\n\t};\n\n\treturn (\n\t\t<Filter\n\t\t\tclassName={className}\n\t\t\tisDesktop={isDesktop}\n\t\t\thasActiveFilters={hasActiveFilters}\n\t\t\tfilteredListings={filteredListings}\n\t\t\tselectedFilters={selectedFilters}\n\t\t\tsetMobileTab={setMobileTab}\n\t\t\tstyle={containerStyle}\n\t\t>\n\t\t\t<FiltersAccordion\n\t\t\t\tsetHasActiveFilters={setHasActiveFilters}\n\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\tsetDefaultValue={value => { setDefaultValue(value === defaultValue ? \"\" : value); }}\n\t\t\t\tsetLocation={setLocation}\n\t\t\t\tsetSelectedListItem={setSelectedListItem}\n\t\t\t\tSubcategoryRequireCategory={siteConfig.subcategoryRequireCategory}\n\t\t\t\thandleReset={handleReset}\n\t\t\t/>\n\t\t\t<FilterSearch />\n\t\t\t{siteConfig.hideLocations !== true && !noEntities &&\n\t\t\t<FilterLocations\n\t\t\t\tsetHasActiveFilters={setHasActiveFilters}\n\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\tshowMap={showMap}\n\t\t\t\tsetDefaultValue={value => { setDefaultValue(value === defaultValue ? \"\" : value); }}\n\t\t\t\tsetLocation={setLocation}\n\t\t\t\tsetSelectedListItem={setSelectedListItem}\n\t\t\t/>\n\t\t\t}\n\t\t</Filter>\n\t);\n};\n\nexport default FilterContainer;\n"],"names":["FilterContainer","_ref","className","showMap","_ref$isDesktop","isDesktop","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","_useState","useState","_useState2","_slicedToArray","hasActiveFilters","setHasActiveFilters","_useMap","useMap","setSelectedListItem","setLocation","filterReset","_useMapList","useMapList","filteredListings","selectedFilters","setSelectedFilters","setMobileTab","handleSettingFavorites","setQuery","siteConfig","containerStyle","noEntities","_useState3","defaultFilterOpen","_useState4","defaultValue","setDefaultValue","handleReset","FILTERS_RESET","filtersRemoved","React","createElement","Filter","style","FiltersAccordion","value","SubcategoryRequireCategory","subcategoryRequireCategory","FilterSearch","hideLocations","FilterLocations"],"mappings":"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"}
@@ -23,7 +23,7 @@ var AccordionFilters = function AccordionFilters(_ref) {
23
23
  variant: "outline",
24
24
  size: "none",
25
25
  onClick: handleReset,
26
- className: "hc-ml-auto hc-text-xs hc-px-1.5 hc-py-0.5"
26
+ className: "hc-ml-auto hc-text-xs hc-px-2 hc-py-0.5"
27
27
  }, "Reset"))), /*#__PURE__*/React.createElement(Accordion, {
28
28
  defaultValue: defaultValue,
29
29
  className: "hc-space-y-4"
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sources":["../../../../src/components/modules/accordions/filters.js"],"sourcesContent":["import React from 'react';\nimport Accordion from '~/components/modules/accordions/default';\nimport FilterCard from '~/components/modules/cards/filter';\nimport Loading from '~/util/loading';\nimport Button from '~/components/modules/buttons/default';\n\nconst AccordionFilters = ({\n\tclassName,\n\tdefaultValue,\n\tchildren,\n\tfilterOptions,\n\thandleReset\n}) => {\n\treturn (\n\t\t<FilterCard className={className ?? \"\"}>\n\t\t\t<FilterCard.Title icon=\"fa-solid:sliders-h\">\n\t\t\t\t<div className=\"hc-flex hc-items-center hc-justify-between hc-w-full\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\tFilter <span className=\"md:hc-hidden lg:hc-inline\">your search</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t{handleReset && (\n\t\t\t\t\t\t<Button.Btn\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\t\t\tsize=\"none\"\n\t\t\t\t\t\t\tonClick={handleReset}\n\t\t\t\t\t\t\tclassName=\"hc-ml-auto hc-text-xs hc-px-1.5 hc-py-0.5\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tReset\n\t\t\t\t\t\t</Button.Btn>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</FilterCard.Title>\n\n\t\t\t<Accordion defaultValue={defaultValue} className=\"hc-space-y-4\" >\n\t\t\t\t{!filterOptions?.filters && (\n\t\t\t\t\t<Accordion.Item>\n\t\t\t\t\t\t<Loading />\n\t\t\t\t\t</Accordion.Item>\n\t\t\t\t)}\n\t\t\t\t{filterOptions?.filters && children}\n\t\t\t</Accordion>\n\t\t</FilterCard>\n\t);\n};\n\nexport default AccordionFilters;\n"],"names":["AccordionFilters","_ref","className","defaultValue","children","filterOptions","handleReset","React","createElement","FilterCard","Title","icon","Button","Btn","type","variant","size","onClick","Accordion","filters","Item","Loading"],"mappings":";;;;;;AAMA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAMhB;AAAA,EAAA,IALLC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IACbC,WAAW,GAAAL,IAAA,CAAXK,WAAW,CAAA;AAEX,EAAA,oBACCC,KAAA,CAAAC,aAAA,CAACC,UAAU,EAAA;AAACP,IAAAA,SAAS,EAAEA,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAA;AAAG,GAAA,eACtCK,KAAA,CAAAC,aAAA,CAACC,UAAU,CAACC,KAAK,EAAA;AAACC,IAAAA,IAAI,EAAC,oBAAA;GACtBJ,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKN,IAAAA,SAAS,EAAC,sDAAA;GACdK,eAAAA,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA,IAAA,EAAM,SACE,eAAAD,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMN,IAAAA,SAAS,EAAC,2BAAA;AAA2B,GAAA,EAAC,aAAiB,CAC/D,CAAC,EACNI,WAAW,iBACXC,KAAA,CAAAC,aAAA,CAACI,MAAM,CAACC,GAAG,EAAA;AACVC,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,OAAO,EAAC,SAAS;AACjBC,IAAAA,IAAI,EAAC,MAAM;AACXC,IAAAA,OAAO,EAAEX,WAAY;AACrBJ,IAAAA,SAAS,EAAC,2CAAA;GACV,EAAA,OAEW,CAET,CACY,CAAC,eAEnBK,KAAA,CAAAC,aAAA,CAACU,SAAS,EAAA;AAACf,IAAAA,YAAY,EAAEA,YAAa;AAACD,IAAAA,SAAS,EAAC,cAAA;AAAc,GAAA,EAC7D,EAACG,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,IAAbA,aAAa,CAAEc,OAAO,CACvBZ,iBAAAA,KAAA,CAAAC,aAAA,CAACU,SAAS,CAACE,IAAI,EACdb,IAAAA,eAAAA,KAAA,CAAAC,aAAA,CAACa,OAAO,EAAA,IAAE,CACK,CAChB,EACA,CAAAhB,aAAa,KAAbA,IAAAA,IAAAA,aAAa,uBAAbA,aAAa,CAAEc,OAAO,KAAIf,QACjB,CACA,CAAC,CAAA;AAEf;;;;"}
1
+ {"version":3,"file":"filters.js","sources":["../../../../src/components/modules/accordions/filters.js"],"sourcesContent":["import React from 'react';\nimport Accordion from '~/components/modules/accordions/default';\nimport FilterCard from '~/components/modules/cards/filter';\nimport Loading from '~/util/loading';\nimport Button from '~/components/modules/buttons/default';\n\nconst AccordionFilters = ({\n\tclassName,\n\tdefaultValue,\n\tchildren,\n\tfilterOptions,\n\thandleReset\n}) => {\n\treturn (\n\t\t<FilterCard className={className ?? \"\"}>\n\t\t\t<FilterCard.Title icon=\"fa-solid:sliders-h\">\n\t\t\t\t<div className=\"hc-flex hc-items-center hc-justify-between hc-w-full\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\tFilter <span className=\"md:hc-hidden lg:hc-inline\">your search</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t{handleReset && (\n\t\t\t\t\t\t<Button.Btn\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\t\t\tsize=\"none\"\n\t\t\t\t\t\t\tonClick={handleReset}\n\t\t\t\t\t\t\tclassName=\"hc-ml-auto hc-text-xs hc-px-2 hc-py-0.5\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tReset\n\t\t\t\t\t\t</Button.Btn>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</FilterCard.Title>\n\n\t\t\t<Accordion defaultValue={defaultValue} className=\"hc-space-y-4\" >\n\t\t\t\t{!filterOptions?.filters && (\n\t\t\t\t\t<Accordion.Item>\n\t\t\t\t\t\t<Loading />\n\t\t\t\t\t</Accordion.Item>\n\t\t\t\t)}\n\t\t\t\t{filterOptions?.filters && children}\n\t\t\t</Accordion>\n\t\t</FilterCard>\n\t);\n};\n\nexport default AccordionFilters;\n"],"names":["AccordionFilters","_ref","className","defaultValue","children","filterOptions","handleReset","React","createElement","FilterCard","Title","icon","Button","Btn","type","variant","size","onClick","Accordion","filters","Item","Loading"],"mappings":";;;;;;AAMA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAMhB;AAAA,EAAA,IALLC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IACbC,WAAW,GAAAL,IAAA,CAAXK,WAAW,CAAA;AAEX,EAAA,oBACCC,KAAA,CAAAC,aAAA,CAACC,UAAU,EAAA;AAACP,IAAAA,SAAS,EAAEA,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAA;AAAG,GAAA,eACtCK,KAAA,CAAAC,aAAA,CAACC,UAAU,CAACC,KAAK,EAAA;AAACC,IAAAA,IAAI,EAAC,oBAAA;GACtBJ,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKN,IAAAA,SAAS,EAAC,sDAAA;GACdK,eAAAA,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA,IAAA,EAAM,SACE,eAAAD,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMN,IAAAA,SAAS,EAAC,2BAAA;AAA2B,GAAA,EAAC,aAAiB,CAC/D,CAAC,EACNI,WAAW,iBACXC,KAAA,CAAAC,aAAA,CAACI,MAAM,CAACC,GAAG,EAAA;AACVC,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,OAAO,EAAC,SAAS;AACjBC,IAAAA,IAAI,EAAC,MAAM;AACXC,IAAAA,OAAO,EAAEX,WAAY;AACrBJ,IAAAA,SAAS,EAAC,yCAAA;GACV,EAAA,OAEW,CAET,CACY,CAAC,eAEnBK,KAAA,CAAAC,aAAA,CAACU,SAAS,EAAA;AAACf,IAAAA,YAAY,EAAEA,YAAa;AAACD,IAAAA,SAAS,EAAC,cAAA;AAAc,GAAA,EAC7D,EAACG,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,IAAbA,aAAa,CAAEc,OAAO,CACvBZ,iBAAAA,KAAA,CAAAC,aAAA,CAACU,SAAS,CAACE,IAAI,EACdb,IAAAA,eAAAA,KAAA,CAAAC,aAAA,CAACa,OAAO,EAAA,IAAE,CACK,CAChB,EACA,CAAAhB,aAAa,KAAbA,IAAAA,IAAAA,aAAa,uBAAbA,aAAa,CAAEc,OAAO,KAAIf,QACjB,CACA,CAAC,CAAA;AAEf;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/modules/filter/index.js"],"sourcesContent":["\"use client\";\nimport Button from \"~/components/modules/buttons/default\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { twMerge } from '~/util/twMerge';\nimport { useMapList } from \"~/contexts/mapListContext\";\n\nconst Filter = ({\n\tclassName,\n\thasActiveFilters,\n\tfilteredListings,\n\tselectedFilters,\n\tsetMobileTab,\n\tisDesktop = false,\n\tstyle,\n\tchildren\n}) => {\n\tconst { filterConfig } = useMapList();\n\tconst contentRef = useRef(null);\n\tconst containerRef = useRef(null);\n\tconst [hasOverflow, setHasOverflow] = useState(false);\n\tconst [showFixedFooter, setShowFixedFooter] = useState(false);\n\tconst [hasMounted, setHasMounted] = useState(false);\n\tconst transitionTimeoutRef = useRef(null);\n\n\t// Set mounted state to avoid hydration mismatch\n\tuseEffect(() => {\n\t\tsetHasMounted(true);\n\t}, []);\n\n\tuseEffect(() => {\n\t\tif (typeof window === 'undefined' || !hasMounted) return;\n\t\t\n\t\tconst checkOverflow = () => {\n\t\t\tif (contentRef.current) {\n\t\t\t\t// Add a small tolerance (5px) to avoid false positives from rounding/padding\n\t\t\t\tconst hasScroll = contentRef.current.scrollHeight > contentRef.current.clientHeight + 5;\n\n\t\t\t\tif (hasScroll !== hasOverflow) {\n\t\t\t\t\tsetHasOverflow(hasScroll);\n\n\t\t\t\t\t// Clear any pending transitions\n\t\t\t\t\tif (transitionTimeoutRef.current) {\n\t\t\t\t\t\tclearTimeout(transitionTimeoutRef.current);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Add a delay when transitioning to fixed footer to smooth the transition\n\t\t\t\t\tif (hasScroll) {\n\t\t\t\t\t\ttransitionTimeoutRef.current = setTimeout(() => setShowFixedFooter(true), 200);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Delay hiding fixed footer to allow animation to complete and prevent flashing\n\t\t\t\t\t\ttransitionTimeoutRef.current = setTimeout(() => setShowFixedFooter(false), 200);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t// Delay initial check to ensure layout is complete\n\t\tsetTimeout(checkOverflow, 100);\n\n\t\t// Check on resize\n\t\twindow.addEventListener('resize', checkOverflow);\n\n\t\t// Use ResizeObserver to detect container size changes\n\t\tconst resizeObserver = new ResizeObserver(() => {\n\t\t\tsetTimeout(checkOverflow, 50);\n\t\t});\n\t\tif (containerRef.current) {\n\t\t\tresizeObserver.observe(containerRef.current);\n\t\t}\n\t\tif (contentRef.current) {\n\t\t\tresizeObserver.observe(contentRef.current);\n\t\t}\n\n\t\t// Use MutationObserver to detect content changes\n\t\tconst mutationObserver = new MutationObserver(() => {\n\t\t\tsetTimeout(checkOverflow, 50);\n\t\t});\n\t\tif (contentRef.current) {\n\t\t\tmutationObserver.observe(contentRef.current, { childList: true, subtree: true, attributes: true });\n\t\t}\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('resize', checkOverflow);\n\t\t\tresizeObserver.disconnect();\n\t\t\tmutationObserver.disconnect();\n\t\t\t// Clear timeout on unmount\n\t\t\tif (transitionTimeoutRef.current) {\n\t\t\t\tclearTimeout(transitionTimeoutRef.current);\n\t\t\t}\n\t\t};\n\t}, [children, hasOverflow, hasMounted]);\n\n\t// Reusable button component\n\tconst MobileButtons = () => (\n\t\t<>\n\t\t\t{selectedFilters && Object.keys(selectedFilters).length > 0 && (\n\t\t\t\t<Button.Btn\n\t\t\t\t\tonClick={() => setMobileTab(\"listTab\")}\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\tclassName={twMerge(\n\t\t\t\t\t\t`${hasActiveFilters ? \"hc-opacity-0 hc-pointer-events-none\" : \"hc-opacity-100\"}`,\n\t\t\t\t\t\tfilterConfig?.classNames?.showJobsButton\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<Button.Body>\n\t\t\t\t\t\t<Button.Icon icon=\"fluent:search-12-filled\" size=\"hc-size-3.5\" />\n\t\t\t\t\t\tShow {filteredListings.length} Jobs\n\t\t\t\t\t</Button.Body>\n\t\t\t\t</Button.Btn>\n\t\t\t)}\n\t\t</>\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tref={containerRef}\n\t\t\tstyle={isDesktop ? style : undefined}\n\t\t\tclassName={twMerge(\n\t\t\t\t`/* Mobile layout */\n\t\t\t\thc-relative hc-w-full hc-h-full hc-flex hc-flex-col\n\n\t\t\t\t/* Desktop layout */\n\t\t\t\tmd:hc-relative md:hc-flex md:hc-flex-col md:hc-max-h-[100%]\n\n\t\t\t\t${className ?? \"\"}`,\n\t\t\t\tfilterConfig?.classNames?.filterContainer\n\t\t\t)}\n\t\t>\n\t\t\t{/* Content area with scroll */}\n\t\t\t<div\n\t\t\t\tref={contentRef}\n\t\t\t\tclassName={twMerge(\n\t\t\t\t\t`hc-w-full hc-flex-grow hc-max-h-full hc-overflow-auto ${hasOverflow ? 'hc-pb-16' : ''} md:hc-overflow-y-auto ${hasOverflow ? 'md:hc-pb-16' : 'md:hc-pb-0'}`,\n\t\t\t\t\tfilterConfig?.classNames?.filterContent\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<div className=\"hc-px-4 md:hc-pt-4 hc-space-y-4\">\n\t\t\t\t\t{children}\n\n\t\t\t\t\t{/* Inline buttons when no overflow - mobile only */}\n\t\t\t\t\t{!hasOverflow && !showFixedFooter && (\n\t\t\t\t\t\t<div className={twMerge(\n\t\t\t\t\t\t\t\"hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-border-t hc-border-gray-200 hc-animate-in hc-fade-in hc-duration-300 md:hc-hidden\",\n\t\t\t\t\t\t\tfilterConfig?.classNames?.filterFooter\n\t\t\t\t\t\t)}>\n\t\t\t\t\t\t\t<MobileButtons />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t{/* Mobile Footer - fixed at bottom (only when overflow) */}\n\t\t\t{showFixedFooter && (\n\t\t\t\t<div className=\"hc-w-full hc-absolute hc-bottom-0 hc-left-0 hc-right-0 hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-px-4 hc-bg-gray-100 hc-border-t hc-border-gray-200 hc-z-50 md:hc-hidden hc-animate-in hc-fade-in hc-slide-in-from-bottom-2 hc-duration-200\">\n\t\t\t\t\t<MobileButtons />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n\nexport default Filter;"],"names":["Filter","_ref","_filterConfig$classNa2","_filterConfig$classNa3","_filterConfig$classNa4","className","hasActiveFilters","filteredListings","selectedFilters","setMobileTab","_ref$isDesktop","isDesktop","style","children","_useMapList","useMapList","filterConfig","contentRef","useRef","containerRef","_useState","useState","_useState2","_slicedToArray","hasOverflow","setHasOverflow","_useState3","_useState4","showFixedFooter","setShowFixedFooter","_useState5","_useState6","hasMounted","setHasMounted","transitionTimeoutRef","useEffect","window","checkOverflow","current","hasScroll","scrollHeight","clientHeight","clearTimeout","setTimeout","addEventListener","resizeObserver","ResizeObserver","observe","mutationObserver","MutationObserver","childList","subtree","attributes","removeEventListener","disconnect","MobileButtons","_filterConfig$classNa","React","createElement","Fragment","Object","keys","length","Button","Btn","onClick","variant","size","twMerge","concat","classNames","showJobsButton","Body","Icon","icon","ref","undefined","filterContainer","filterContent","filterFooter"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/modules/filter/index.js"],"sourcesContent":["\"use client\";\nimport Button from \"~/components/modules/buttons/default\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { twMerge } from '~/util/twMerge';\nimport { useMapList } from \"~/contexts/mapListContext\";\n\nconst Filter = ({\n\tclassName,\n\thasActiveFilters,\n\tfilteredListings,\n\tselectedFilters,\n\tsetMobileTab,\n\tisDesktop = false,\n\tstyle,\n\tchildren\n}) => {\n\tconst { filterConfig } = useMapList();\n\tconst contentRef = useRef(null);\n\tconst containerRef = useRef(null);\n\tconst [hasOverflow, setHasOverflow] = useState(false);\n\tconst [showFixedFooter, setShowFixedFooter] = useState(false);\n\tconst [hasMounted, setHasMounted] = useState(false);\n\tconst transitionTimeoutRef = useRef(null);\n\n\t// Set mounted state to avoid hydration mismatch\n\tuseEffect(() => {\n\t\tsetHasMounted(true);\n\t}, []);\n\n\tuseEffect(() => {\n\t\tif (typeof window === 'undefined' || !hasMounted) return;\n\n\t\tconst checkOverflow = () => {\n\t\t\tif (contentRef.current) {\n\t\t\t\t// Add a small tolerance (5px) to avoid false positives from rounding/padding\n\t\t\t\tconst hasScroll = contentRef.current.scrollHeight > contentRef.current.clientHeight + 5;\n\n\t\t\t\tif (hasScroll !== hasOverflow) {\n\t\t\t\t\tsetHasOverflow(hasScroll);\n\n\t\t\t\t\t// Clear any pending transitions\n\t\t\t\t\tif (transitionTimeoutRef.current) {\n\t\t\t\t\t\tclearTimeout(transitionTimeoutRef.current);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Add a delay when transitioning to fixed footer to smooth the transition\n\t\t\t\t\tif (hasScroll) {\n\t\t\t\t\t\ttransitionTimeoutRef.current = setTimeout(() => setShowFixedFooter(true), 200);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Delay hiding fixed footer to allow animation to complete and prevent flashing\n\t\t\t\t\t\ttransitionTimeoutRef.current = setTimeout(() => setShowFixedFooter(false), 200);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t// Delay initial check to ensure layout is complete\n\t\tsetTimeout(checkOverflow, 100);\n\n\t\t// Check on resize\n\t\twindow.addEventListener('resize', checkOverflow);\n\n\t\t// Use ResizeObserver to detect container size changes\n\t\tconst resizeObserver = new ResizeObserver(() => {\n\t\t\tsetTimeout(checkOverflow, 50);\n\t\t});\n\t\tif (containerRef.current) {\n\t\t\tresizeObserver.observe(containerRef.current);\n\t\t}\n\t\tif (contentRef.current) {\n\t\t\tresizeObserver.observe(contentRef.current);\n\t\t}\n\n\t\t// Use MutationObserver to detect content changes\n\t\tconst mutationObserver = new MutationObserver(() => {\n\t\t\tsetTimeout(checkOverflow, 50);\n\t\t});\n\t\tif (contentRef.current) {\n\t\t\tmutationObserver.observe(contentRef.current, { childList: true, subtree: true, attributes: true });\n\t\t}\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('resize', checkOverflow);\n\t\t\tresizeObserver.disconnect();\n\t\t\tmutationObserver.disconnect();\n\t\t\t// Clear timeout on unmount\n\t\t\tif (transitionTimeoutRef.current) {\n\t\t\t\tclearTimeout(transitionTimeoutRef.current);\n\t\t\t}\n\t\t};\n\t}, [children, hasOverflow, hasMounted]);\n\n\t// Reusable button component\n\tconst MobileButtons = () => (\n\t\t<>\n\t\t\t{selectedFilters && Object.keys(selectedFilters).length > 0 && (\n\t\t\t\t<Button.Btn\n\t\t\t\t\tonClick={() => setMobileTab(\"listTab\")}\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\tclassName={twMerge(\n\t\t\t\t\t\t`${hasActiveFilters ? \"hc-opacity-0 hc-pointer-events-none\" : \"hc-opacity-100\"}`,\n\t\t\t\t\t\tfilterConfig?.classNames?.showJobsButton\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<Button.Body>\n\t\t\t\t\t\t<Button.Icon icon=\"fluent:search-12-filled\" size=\"hc-size-3.5\" />\n\t\t\t\t\t\tShow {filteredListings.length} Jobs\n\t\t\t\t\t</Button.Body>\n\t\t\t\t</Button.Btn>\n\t\t\t)}\n\t\t</>\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tref={containerRef}\n\t\t\tstyle={isDesktop ? style : undefined}\n\t\t\tclassName={twMerge(\n\t\t\t\t`/* Mobile layout */\n\t\t\t\thc-relative hc-w-full hc-h-full hc-flex hc-flex-col\n\n\t\t\t\t/* Desktop layout */\n\t\t\t\tmd:hc-relative md:hc-flex md:hc-flex-col md:hc-max-h-[100%]\n\n\t\t\t\t${className ?? \"\"}`,\n\t\t\t\tfilterConfig?.classNames?.filterContainer\n\t\t\t)}\n\t\t>\n\t\t\t{/* Content area with scroll */}\n\t\t\t<div\n\t\t\t\tref={contentRef}\n\t\t\t\tclassName={twMerge(\n\t\t\t\t\t`hc-w-full hc-flex-grow hc-max-h-full hc-overflow-auto ${hasOverflow ? 'hc-pb-16' : ''} md:hc-overflow-y-auto ${hasOverflow ? 'md:hc-pb-16' : 'md:hc-pb-0'}`,\n\t\t\t\t\tfilterConfig?.classNames?.filterContent\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<div className=\"hc-px-4 md:hc-pt-4 hc-space-y-4\">\n\t\t\t\t\t{children}\n\n\t\t\t\t\t{/* Inline buttons when no overflow - mobile only */}\n\t\t\t\t\t{!hasOverflow && !showFixedFooter && (\n\t\t\t\t\t\t<div className={twMerge(\n\t\t\t\t\t\t\t\"hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-border-t hc-border-gray-200 hc-animate-in hc-fade-in hc-duration-300 md:hc-hidden\",\n\t\t\t\t\t\t\tfilterConfig?.classNames?.filterFooter\n\t\t\t\t\t\t)}>\n\t\t\t\t\t\t\t<MobileButtons />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t{/* Mobile Footer - fixed at bottom (only when overflow) */}\n\t\t\t{showFixedFooter && (\n\t\t\t\t<div className=\"hc-w-full hc-absolute hc-bottom-0 hc-left-0 hc-right-0 hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-px-4 hc-bg-gray-100 hc-border-t hc-border-gray-200 hc-z-50 md:hc-hidden hc-animate-in hc-fade-in hc-slide-in-from-bottom-2 hc-duration-200\">\n\t\t\t\t\t<MobileButtons />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n\nexport default Filter;\n"],"names":["Filter","_ref","_filterConfig$classNa2","_filterConfig$classNa3","_filterConfig$classNa4","className","hasActiveFilters","filteredListings","selectedFilters","setMobileTab","_ref$isDesktop","isDesktop","style","children","_useMapList","useMapList","filterConfig","contentRef","useRef","containerRef","_useState","useState","_useState2","_slicedToArray","hasOverflow","setHasOverflow","_useState3","_useState4","showFixedFooter","setShowFixedFooter","_useState5","_useState6","hasMounted","setHasMounted","transitionTimeoutRef","useEffect","window","checkOverflow","current","hasScroll","scrollHeight","clientHeight","clearTimeout","setTimeout","addEventListener","resizeObserver","ResizeObserver","observe","mutationObserver","MutationObserver","childList","subtree","attributes","removeEventListener","disconnect","MobileButtons","_filterConfig$classNa","React","createElement","Fragment","Object","keys","length","Button","Btn","onClick","variant","size","twMerge","concat","classNames","showJobsButton","Body","Icon","icon","ref","undefined","filterContainer","filterContent","filterFooter"],"mappings":"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"}
@@ -45,67 +45,76 @@ var FieldMapperMobile = function FieldMapperMobile(_ref) {
45
45
  });
46
46
  };
47
47
  return /*#__PURE__*/React.createElement(Grid.Item, {
48
- className: "md:hc-hidden"
48
+ className: "md:hc-hidden hc-text-[#5d5e5e]"
49
49
  }, fieldsShown.includes("title") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
50
- className: "hc-flex hc-items-start"
50
+ className: "hc-flex hc-items-start hc-justify-between"
51
51
  }, /*#__PURE__*/React.createElement("div", {
52
- className: "hc-flex hc-justify-between hc-items-center hc-min-w-[100%]"
53
- }, /*#__PURE__*/React.createElement("h3", {
54
- className: "hc-font-bold hc-mb-3 hc-flex-1 hc-text-primary hc-underline"
55
- }, getFieldValue(item, "title")), includeFavorite && /*#__PURE__*/React.createElement("div", {
56
- className: "hc-flex hc-justify-end hc-pb-2"
52
+ className: "hc-flex-1"
53
+ }, /*#__PURE__*/React.createElement("div", {
54
+ className: "hc-font-bold hc-text-primary hc-leading-tight hc-text-sm"
55
+ }, getFieldValue(item, "title")), /*#__PURE__*/React.createElement("div", {
56
+ className: "hc-pl-2px"
57
+ }, fieldsShown.includes("category") && getFieldValue(item, "category") && /*#__PURE__*/React.createElement("div", {
58
+ className: "hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px"
59
+ }, /*#__PURE__*/React.createElement(IconContained, {
60
+ icon: "icon-park-solid:tree-list",
61
+ size: "hc-size-3.5",
62
+ className: "hc-text-[#5d5e5e]"
63
+ }), /*#__PURE__*/React.createElement("span", {
64
+ className: "hc-sr-only"
65
+ }, "category"), getFieldValue(item, "category")), fieldsShown.includes("subCategory") && getFieldValue(item, "subCategory") && /*#__PURE__*/React.createElement("div", {
66
+ className: "hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px"
67
+ }, /*#__PURE__*/React.createElement(IconContained, {
68
+ icon: "icon-park-solid:tree-list",
69
+ size: "hc-size-3.5",
70
+ className: "hc-text-[#5d5e5e]"
71
+ }), /*#__PURE__*/React.createElement("span", {
72
+ className: "hc-sr-only"
73
+ }, "subCategory"), getFieldValue(item, "subCategory")), fieldsShown.includes("cityState") && getFieldValue(item, "cityState") && /*#__PURE__*/React.createElement("div", {
74
+ className: "hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px"
75
+ }, /*#__PURE__*/React.createElement(IconContained, {
76
+ icon: "fluent:location-16-filled",
77
+ size: "hc-size-3.5",
78
+ className: "hc-text-[#5d5e5e]"
79
+ }), /*#__PURE__*/React.createElement("span", {
80
+ className: "hc-sr-only"
81
+ }, "Location"), getFieldValue(item, "cityState")), !(fieldsShown.includes("cityState") && getFieldValue(item, "cityState")) && (fieldsShown.includes("city") && getFieldValue(item, "city") || fieldsShown.includes("state") && getFieldValue(item, "state")) && /*#__PURE__*/React.createElement("div", {
82
+ className: "hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px"
83
+ }, /*#__PURE__*/React.createElement(IconContained, {
84
+ icon: "fluent:location-16-filled",
85
+ size: "hc-size-3.5",
86
+ className: "hc-text-[#5d5e5e]"
87
+ }), /*#__PURE__*/React.createElement("span", {
88
+ className: "hc-sr-only"
89
+ }, "Location"), getFieldValue(item, "city") && getFieldValue(item, "state") ? "".concat(getFieldValue(item, "city"), ", ").concat(getFieldValue(item, "state")) : getFieldValue(item, "city") || getFieldValue(item, "state")), fieldsShown.includes("schedule") && getFieldValue(item, "schedule") && /*#__PURE__*/React.createElement("div", {
90
+ className: "hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px"
91
+ }, /*#__PURE__*/React.createElement(IconContained, {
92
+ icon: "gravity-ui:clock-fill",
93
+ size: "hc-size-3.5",
94
+ className: "hc-text-[#5d5e5e]"
95
+ }), /*#__PURE__*/React.createElement("span", {
96
+ className: "hc-sr-only"
97
+ }, "Schedule"), getFieldValue(item, "schedule")), fieldsShown.includes("travelTime") && getFieldValue(item, "travelTime") && /*#__PURE__*/React.createElement("div", {
98
+ className: "hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px"
99
+ }, /*#__PURE__*/React.createElement(IconContained, {
100
+ icon: "ri:pin-distance-fill",
101
+ size: "hc-size-3.5",
102
+ className: "hc-text-[#5d5e5e]"
103
+ }), /*#__PURE__*/React.createElement("span", {
104
+ className: "hc-sr-only"
105
+ }, "Commute"), getFieldValue(item, "travelTime")))), includeFavorite && /*#__PURE__*/React.createElement("div", {
106
+ className: "hc-flex hc-justify-end"
57
107
  }, /*#__PURE__*/React.createElement(IconContained, {
58
108
  icon: isFavorite ? "mdi:heart" : "mdi:heart-outline",
59
109
  size: "hc-size-3.5",
60
- iconClasses: isFavorite ? "hc-text-primary" : "",
61
- className: "hc-transition-opacity hc-duration-300 hc-cursor-pointer\n ".concat(isFavorite ? "hc-opacity-100" : "hc-text-uiText/60 group-hover:hc-opacity-100", "\n "),
110
+ iconClasses: isFavorite ? "hc-text-primary" : "hc-text-[#5d5e5e]",
111
+ className: "hc-transition-opacity hc-duration-300 hc-cursor-pointer ".concat(isFavorite ? "hc-opacity-100" : ""),
62
112
  onClick: function onClick(e) {
63
113
  return handleFavouriteClick(e, item);
64
114
  }
65
- })))), specialFeatures && /*#__PURE__*/React.createElement("div", {
66
- className: "hc-pb-4"
67
- }, specialFeaturePillsRender(), " "), /*#__PURE__*/React.createElement("ul", {
68
- className: "hc-space-y-2 hc-text-xs"
69
- }, [{
70
- field: "category",
71
- name: "category",
72
- icon: "icon-park-solid:tree-list"
73
- }, {
74
- field: "subCategory",
75
- name: "subCategory",
76
- icon: "icon-park-solid:tree-list"
77
- }, {
78
- field: "schedule",
79
- name: "Schedule",
80
- icon: "gravity-ui:clock-fill"
81
- }, {
82
- field: "city",
83
- name: "Location",
84
- icon: "fluent:location-16-filled"
85
- }, {
86
- field: "state",
87
- name: "Location",
88
- icon: "fluent:location-16-filled"
89
- }, {
90
- field: "cityState",
91
- name: "Location",
92
- icon: "fluent:location-16-filled"
93
- }, {
94
- field: "travelTime",
95
- name: "Commute",
96
- icon: "ri:pin-distance-fill"
97
- }].map(function (listItem) {
98
- return fieldsShown.includes(listItem.field) && getFieldValue(item, listItem.field) && /*#__PURE__*/React.createElement("li", {
99
- key: listItem.field,
100
- className: "hc-flex hc-gap-2"
101
- }, /*#__PURE__*/React.createElement(IconContained, {
102
- icon: listItem.icon,
103
- size: "hc-size-3.5",
104
- className: "hc-text-uiAccent/30"
105
- }), /*#__PURE__*/React.createElement("span", {
106
- className: "hc-sr-only"
107
- }, listItem.name), getFieldValue(item, listItem.field));
108
- }))));
115
+ }))), specialFeatures && /*#__PURE__*/React.createElement("div", {
116
+ className: "hc-pb-0"
117
+ }, specialFeaturePillsRender(), " ")));
109
118
  };
110
119
 
111
120
  export { FieldMapperMobile as default };
@@ -1 +1 @@
1
- {"version":3,"file":"field-mapper-mobile.js","sources":["../../../../src/components/modules/list/field-mapper-mobile.jsx"],"sourcesContent":["import React from 'react';\nimport Grid from '~/components/modules/grid';\nimport Icon from '~/components/modules/icon';\nimport PillWrapper from '~/components/modules/buttons/pill-wrapper';\nimport { getFieldValue } from '~/util/filterUtil';\nimport { twMerge } from 'tailwind-merge';\n\nconst FieldMapperMobile = ({\n\titem,\n\tfieldsShown,\n\tspecialFeatures,\n\tspecialFeaturePills,\n\thandleFavouriteClick,\n\tisFavorite,\n\tincludeFavorite = true\n}) => {\n\tconst specialFeaturePillsRender = field => {\n\t\tif (field !== 'title' || !specialFeatures || !specialFeaturePills) return null;\n\n\t\treturn Object.entries(specialFeatures).map(([featureKey, featureLabel]) => {\n\t\t\t// Only show pill if it's configured in specialFeaturePills\n\t\t\tif (!specialFeaturePills[featureKey]) return null;\n\n\t\t\tconst value = getFieldValue(item, featureKey);\n\t\t\tconst customClassName = specialFeaturePills[featureKey]?.className || '';\n\n\t\t\t// Handle boolean fields (value == 1 or \"true\")\n\t\t\tif (value == 1 || value === 1 || value === '1' || value === 'true' || value === 'True' || value === true) {\n\t\t\t\treturn <PillWrapper key={featureKey} className={customClassName}>{featureLabel}</PillWrapper>;\n\t\t\t}\n\t\t\t// Handle multi-value custom fields - show the value if it's not empty/false\n\t\t\tif (value && value !== '' && value !== 'false' && value !== 'False' && value !== '0' && value !== 0) {\n\t\t\t\treturn <PillWrapper key={featureKey} className={customClassName}>{featureLabel}: {value}</PillWrapper>;\n\t\t\t}\n\t\t\treturn null;\n\t\t});\n\t};\n\n\treturn (\n\t\t<Grid.Item className=\"md:hc-hidden\">\n\t\t\t{fieldsShown.includes(\"title\") &&\n <>\n \t<div className=\"hc-flex hc-items-start\">\n \t\t<div className=\"hc-flex hc-justify-between hc-items-center hc-min-w-[100%]\">\n \t\t\t<h3 className=\"hc-font-bold hc-mb-3 hc-flex-1 hc-text-primary hc-underline\">{getFieldValue(item, \"title\")}</h3>\n \t\t\t{includeFavorite && <div className=\"hc-flex hc-justify-end hc-pb-2\">\n \t\t\t\t<Icon\n \t\t\t\t\ticon={isFavorite ? \"mdi:heart\" : \"mdi:heart-outline\"}\n \t\t\t\t\tsize=\"hc-size-3.5\"\n \t\t\t\t\ticonClasses={isFavorite ? \"hc-text-primary\" : \"\"}\n \t\t\t\t\tclassName={`hc-transition-opacity hc-duration-300 hc-cursor-pointer\n ${isFavorite ? \"hc-opacity-100\" : \"hc-text-uiText/60 group-hover:hc-opacity-100\"}\n `}\n \t\t\t\t\tonClick={e => handleFavouriteClick(e, item)}\n \t\t\t\t/>\n \t\t\t</div>\n \t\t\t}\n \t\t</div>\n \t</div>\n \t{specialFeatures && <div className='hc-pb-4'>{specialFeaturePillsRender(\"title\")} </div>}\n\n \t<ul className=\"hc-space-y-2 hc-text-xs\">\n \t\t{[\n \t\t\t{\n \t\t\t\tfield: \"category\",\n \t\t\t\tname: \"category\",\n \t\t\t\ticon: \"icon-park-solid:tree-list\"\n \t\t\t},\n \t\t\t{\n \t\t\t\tfield: \"subCategory\",\n \t\t\t\tname: \"subCategory\",\n \t\t\t\ticon: \"icon-park-solid:tree-list\"\n \t\t\t},\n \t\t\t{\n \t\t\t\tfield: \"schedule\",\n \t\t\t\tname: \"Schedule\",\n \t\t\t\ticon: \"gravity-ui:clock-fill\"\n \t\t\t},\n \t\t\t{\n \t\t\t\tfield: \"city\",\n \t\t\t\tname: \"Location\",\n \t\t\t\ticon: \"fluent:location-16-filled\"\n \t\t\t},\n \t\t\t{\n \t\t\t\tfield: \"state\",\n \t\t\t\tname: \"Location\",\n \t\t\t\ticon: \"fluent:location-16-filled\"\n \t\t\t},\n \t\t\t{\n \t\t\t\tfield: \"cityState\",\n \t\t\t\tname: \"Location\",\n \t\t\t\ticon: \"fluent:location-16-filled\"\n \t\t\t},\n \t\t\t{\n \t\t\t\tfield: \"travelTime\",\n \t\t\t\tname: \"Commute\",\n \t\t\t\ticon: \"ri:pin-distance-fill\"\n \t\t\t}\n \t\t].map(listItem => (\n \t\t\t(fieldsShown.includes(listItem.field) && getFieldValue(item, listItem.field)) &&\n <li\n \tkey={listItem.field}\n \tclassName=\"hc-flex hc-gap-2\"\n >\n \t<Icon\n \t\ticon={listItem.icon}\n \t\tsize=\"hc-size-3.5\"\n \t\tclassName=\"hc-text-uiAccent/30\"\n \t/>\n \t<span className=\"hc-sr-only\">{listItem.name}</span>\n \t{getFieldValue(item, listItem.field)}\n </li>\n \t\t))}\n \t</ul>\n </>\n\t\t\t}\n\t\t</Grid.Item>\n\t);\n};\n\nexport default FieldMapperMobile;\n"],"names":["FieldMapperMobile","_ref","item","fieldsShown","specialFeatures","specialFeaturePills","handleFavouriteClick","isFavorite","_ref$includeFavorite","includeFavorite","specialFeaturePillsRender","field","Object","entries","map","_ref2","_specialFeaturePills$","_ref3","_slicedToArray","featureKey","featureLabel","value","getFieldValue","customClassName","className","React","createElement","PillWrapper","key","Grid","Item","includes","Fragment","Icon","icon","size","iconClasses","concat","onClick","e","name","listItem"],"mappings":"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"}
1
+ {"version":3,"file":"field-mapper-mobile.js","sources":["../../../../src/components/modules/list/field-mapper-mobile.jsx"],"sourcesContent":["import React from 'react';\nimport Grid from '~/components/modules/grid';\nimport Icon from '~/components/modules/icon';\nimport PillWrapper from '~/components/modules/buttons/pill-wrapper';\nimport { getFieldValue } from '~/util/filterUtil';\nimport { twMerge } from 'tailwind-merge';\n\nconst FieldMapperMobile = ({\n\titem,\n\tfieldsShown,\n\tspecialFeatures,\n\tspecialFeaturePills,\n\thandleFavouriteClick,\n\tisFavorite,\n\tincludeFavorite = true\n}) => {\n\tconst specialFeaturePillsRender = field => {\n\t\tif (field !== 'title' || !specialFeatures || !specialFeaturePills) return null;\n\n\t\treturn Object.entries(specialFeatures).map(([featureKey, featureLabel]) => {\n\t\t\t// Only show pill if it's configured in specialFeaturePills\n\t\t\tif (!specialFeaturePills[featureKey]) return null;\n\n\t\t\tconst value = getFieldValue(item, featureKey);\n\t\t\tconst customClassName = specialFeaturePills[featureKey]?.className || '';\n\n\t\t\t// Handle boolean fields (value == 1 or \"true\")\n\t\t\tif (value == 1 || value === 1 || value === '1' || value === 'true' || value === 'True' || value === true) {\n\t\t\t\treturn <PillWrapper key={featureKey} className={customClassName}>{featureLabel}</PillWrapper>;\n\t\t\t}\n\t\t\t// Handle multi-value custom fields - show the value if it's not empty/false\n\t\t\tif (value && value !== '' && value !== 'false' && value !== 'False' && value !== '0' && value !== 0) {\n\t\t\t\treturn <PillWrapper key={featureKey} className={customClassName}>{featureLabel}: {value}</PillWrapper>;\n\t\t\t}\n\t\t\treturn null;\n\t\t});\n\t};\n\n\treturn (\n\t\t<Grid.Item className=\"md:hc-hidden hc-text-[#5d5e5e]\">\n\t\t\t{fieldsShown.includes(\"title\") &&\n <>\n \t<div className=\"hc-flex hc-items-start hc-justify-between\">\n \t\t<div className=\"hc-flex-1\">\n \t\t\t<div className=\"hc-font-bold hc-text-primary hc-leading-tight hc-text-sm\">{getFieldValue(item, \"title\")}</div>\n \t\t\t{/* Category */}\n \t\t\t<div className='hc-pl-2px'>\n \t\t\t{fieldsShown.includes(\"category\") && getFieldValue(item, \"category\") && (\n \t\t\t\t<div className=\"hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px\">\n \t\t\t\t\t<Icon icon=\"icon-park-solid:tree-list\" size=\"hc-size-3.5\" className=\"hc-text-[#5d5e5e]\" />\n \t\t\t\t\t<span className=\"hc-sr-only\">category</span>\n \t\t\t\t\t{getFieldValue(item, \"category\")}\n \t\t\t\t</div>\n \t\t\t)}\n \t\t\t{/* SubCategory */}\n \t\t\t{fieldsShown.includes(\"subCategory\") && getFieldValue(item, \"subCategory\") && (\n \t\t\t\t<div className=\"hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px\">\n \t\t\t\t\t<Icon icon=\"icon-park-solid:tree-list\" size=\"hc-size-3.5\" className=\"hc-text-[#5d5e5e]\" />\n \t\t\t\t\t<span className=\"hc-sr-only\">subCategory</span>\n \t\t\t\t\t{getFieldValue(item, \"subCategory\")}\n \t\t\t\t</div>\n \t\t\t)}\n \t\t\t{/* Location: cityState OR city, state OR just city OR just state */}\n \t\t\t{(fieldsShown.includes(\"cityState\") && getFieldValue(item, \"cityState\")) && (\n \t\t\t\t<div className=\"hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px\">\n \t\t\t\t\t<Icon icon=\"fluent:location-16-filled\" size=\"hc-size-3.5\" className=\"hc-text-[#5d5e5e]\" />\n \t\t\t\t\t<span className=\"hc-sr-only\">Location</span>\n \t\t\t\t\t{getFieldValue(item, \"cityState\")}\n \t\t\t\t</div>\n \t\t\t)}\n \t\t\t{!(fieldsShown.includes(\"cityState\") && getFieldValue(item, \"cityState\")) && ((fieldsShown.includes(\"city\") && getFieldValue(item, \"city\")) || (fieldsShown.includes(\"state\") && getFieldValue(item, \"state\"))) && (\n \t\t\t\t<div className=\"hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px\">\n \t\t\t\t\t<Icon icon=\"fluent:location-16-filled\" size=\"hc-size-3.5\" className=\"hc-text-[#5d5e5e]\" />\n \t\t\t\t\t<span className=\"hc-sr-only\">Location</span>\n \t\t\t\t\t{getFieldValue(item, \"city\") && getFieldValue(item, \"state\")\n \t\t\t\t\t\t? `${getFieldValue(item, \"city\")}, ${getFieldValue(item, \"state\")}`\n \t\t\t\t\t\t: getFieldValue(item, \"city\") || getFieldValue(item, \"state\")}\n \t\t\t\t</div>\n \t\t\t)}\n \t\t\t{/* Schedule */}\n \t\t\t{fieldsShown.includes(\"schedule\") && getFieldValue(item, \"schedule\") && (\n \t\t\t\t<div className=\"hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px\">\n \t\t\t\t\t<Icon icon=\"gravity-ui:clock-fill\" size=\"hc-size-3.5\" className=\"hc-text-[#5d5e5e]\" />\n \t\t\t\t\t<span className=\"hc-sr-only\">Schedule</span>\n \t\t\t\t\t{getFieldValue(item, \"schedule\")}\n \t\t\t\t</div>\n \t\t\t)}\n \t\t\t{/* Travel Time */}\n \t\t\t{fieldsShown.includes(\"travelTime\") && getFieldValue(item, \"travelTime\") && (\n \t\t\t\t<div className=\"hc-flex hc-gap-1 hc-items-center hc-text-xs hc-my-px\">\n \t\t\t\t\t<Icon icon=\"ri:pin-distance-fill\" size=\"hc-size-3.5\" className=\"hc-text-[#5d5e5e]\" />\n \t\t\t\t\t<span className=\"hc-sr-only\">Commute</span>\n \t\t\t\t\t{getFieldValue(item, \"travelTime\")}\n \t\t\t\t</div>\n \t\t\t)}\n \t\t\t</div>\n \t\t</div>\n \t\t{includeFavorite && <div className=\"hc-flex hc-justify-end\">\n \t\t\t<Icon\n \t\t\t\ticon={isFavorite ? \"mdi:heart\" : \"mdi:heart-outline\"}\n \t\t\t\tsize=\"hc-size-3.5\"\n \t\t\t\ticonClasses={isFavorite ? \"hc-text-primary\" : \"hc-text-[#5d5e5e]\"}\n \t\t\t\tclassName={`hc-transition-opacity hc-duration-300 hc-cursor-pointer ${isFavorite ? \"hc-opacity-100\" : \"\"}`}\n \t\t\t\tonClick={e => handleFavouriteClick(e, item)}\n \t\t\t/>\n \t\t</div>\n \t\t}\n \t\t</div>\n\n \t{specialFeatures && <div className='hc-pb-0'>{specialFeaturePillsRender(\"title\")} </div>}\n </>\n\t\t\t}\n\t\t</Grid.Item>\n\t);\n};\n\nexport default FieldMapperMobile;\n"],"names":["FieldMapperMobile","_ref","item","fieldsShown","specialFeatures","specialFeaturePills","handleFavouriteClick","isFavorite","_ref$includeFavorite","includeFavorite","specialFeaturePillsRender","field","Object","entries","map","_ref2","_specialFeaturePills$","_ref3","_slicedToArray","featureKey","featureLabel","value","getFieldValue","customClassName","className","React","createElement","PillWrapper","key","Grid","Item","includes","Fragment","Icon","icon","size","concat","iconClasses","onClick","e"],"mappings":"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"}