@abcagency/hc-ui-components 1.3.31 → 1.3.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/containers/accordions/filter-item-container.js +1 -1
- package/dist/components/containers/accordions/filter-item-container.js.map +1 -1
- package/dist/components/containers/maps/map-container.js +1 -1
- package/dist/components/containers/maps/map-container.js.map +1 -1
- package/dist/components/modules/jobListing/listing-details.js.map +1 -1
- package/dist/components/modules/list/list-item/list-item.js +2 -2
- package/dist/components/modules/list/list-item/list-item.js.map +1 -1
- package/dist/types/components/modules/jobListing/listing-details.d.ts +1 -1
- package/dist/types/util/mapUtil.d.ts +1 -0
- package/dist/util/mapUtil.js +1 -0
- package/dist/util/mapUtil.js.map +1 -1
- package/package.json +1 -1
- package/src/components/containers/accordions/filter-item-container.js +1 -1
- package/src/components/containers/maps/map-container.js +1 -1
- package/src/components/modules/jobListing/listing-details.js +109 -109
- package/src/components/modules/list/list-item/list-item.js +1 -1
- package/src/util/mapUtil.js +1 -0
|
@@ -22,8 +22,8 @@ var FilterItemContainer = function FilterItemContainer(_ref) {
|
|
|
22
22
|
}
|
|
23
23
|
if (fieldKey == 'state' || fieldKey == 'city' || fieldKey == 'cityState') {
|
|
24
24
|
delete updatedFilters.entityId;
|
|
25
|
-
delete updatedFilters[fieldKey];
|
|
26
25
|
}
|
|
26
|
+
delete updatedFilters[fieldKey];
|
|
27
27
|
return updatedFilters;
|
|
28
28
|
});
|
|
29
29
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-item-container.js","sources":["../../../../src/components/containers/accordions/filter-item-container.js"],"sourcesContent":["import React, { memo } from 'react';\nimport AccordionFilterItem from '~/components/modules/accordions/filterItem';\nimport FilterItem from '~/components/containers/filter/filter-item-container';\nimport ItemsPill from '~/components/modules/buttons/items-pill';\n\nconst FilterItemContainer = ({\n\tfilter,\n\tsetDefaultValue,\n\tsetSelectedFilters,\n\tselectedFilters,\n\tsubcategoryRequireCategory = false\n}) => {\n\tconst fieldKey = filter.id;\n\tconst activeItemsCount = selectedFilters != null && selectedFilters[fieldKey]\n\t\t? Object.keys(selectedFilters[fieldKey]).length\n\t\t: 0;\n\n\tconst handleClearFilters = event => {\n\t\tevent.stopPropagation();\n\t\tsetSelectedFilters(prevFilters => {\n\t\t\tconst updatedFilters = { ...prevFilters };\n\t\t\tif(subcategoryRequireCategory && fieldKey == 'categoryClass'){\n\t\t\t\tdelete updatedFilters['category'];\n\t\t\t}\n\t\t\tif(fieldKey == 'state' || fieldKey == 'city' || fieldKey == 'cityState'){\n\t\t\t\tdelete updatedFilters.entityId;\n\t\t\t\tdelete updatedFilters[fieldKey];\n\t\t\
|
|
1
|
+
{"version":3,"file":"filter-item-container.js","sources":["../../../../src/components/containers/accordions/filter-item-container.js"],"sourcesContent":["import React, { memo } from 'react';\nimport AccordionFilterItem from '~/components/modules/accordions/filterItem';\nimport FilterItem from '~/components/containers/filter/filter-item-container';\nimport ItemsPill from '~/components/modules/buttons/items-pill';\n\nconst FilterItemContainer = ({\n\tfilter,\n\tsetDefaultValue,\n\tsetSelectedFilters,\n\tselectedFilters,\n\tsubcategoryRequireCategory = false\n}) => {\n\tconst fieldKey = filter.id;\n\tconst activeItemsCount = selectedFilters != null && selectedFilters[fieldKey]\n\t\t? Object.keys(selectedFilters[fieldKey]).length\n\t\t: 0;\n\n\tconst handleClearFilters = event => {\n\t\tevent.stopPropagation();\n\t\tsetSelectedFilters(prevFilters => {\n\t\t\tconst updatedFilters = { ...prevFilters };\n\t\t\tif(subcategoryRequireCategory && fieldKey == 'categoryClass'){\n\t\t\t\tdelete updatedFilters['category'];\n\t\t\t}\n\t\t\tif(fieldKey == 'state' || fieldKey == 'city' || fieldKey == 'cityState'){\n\t\t\t\tdelete updatedFilters.entityId;\n\t\t\t}\n\t\t\tdelete updatedFilters[fieldKey];\n\t\t\treturn updatedFilters;\n\t\t});\n\t};\n\n\tconst header = (\n\t\t<>\n\t\t\t{filter.title}\n\t\t\t{activeItemsCount > 0 && (\n\t\t\t\t<ItemsPill\n\t\t\t\t\tactiveItemsCount={activeItemsCount}\n\t\t\t\t\tonClick={handleClearFilters}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</>\n\t);\n\n\tconst body = (\n\t\t<>\n\t\t\t{filter.items.sort().map(item => (\n\t\t\t\t<FilterItem\n\t\t\t\t\tkey={item.name}\n\t\t\t\t\titem={item}\n\t\t\t\t\tfield={filter.id}\n\t\t\t\t\tselectedFilters={selectedFilters}\n\t\t\t\t\tsetSelectedFilters={setSelectedFilters}\n\t\t\t\t/>\n\t\t\t))}\n\t\t</>\n\t);\n\n\treturn (\n\t\t<AccordionFilterItem\n\t\t\tid={filter.id}\n\t\t\tsetDefaultValue={setDefaultValue}\n\t\t\theader={header}\n\t\t\tbody={body}\n\t\t/>\n\t);\n};\n\nexport default memo(FilterItemContainer);\n"],"names":["FilterItemContainer","_ref","filter","setDefaultValue","setSelectedFilters","selectedFilters","_ref$subcategoryRequi","subcategoryRequireCategory","fieldKey","id","activeItemsCount","Object","keys","length","handleClearFilters","event","stopPropagation","prevFilters","updatedFilters","_objectSpread","entityId","header","React","createElement","Fragment","title","ItemsPill","onClick","body","items","sort","map","item","FilterItem","key","name","field","AccordionFilterItem","memo"],"mappings":";;;;;;AAKA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAMnB;AAAA,EAAA,IALLC,MAAM,GAAAD,IAAA,CAANC,MAAM;IACNC,eAAe,GAAAF,IAAA,CAAfE,eAAe;IACfC,kBAAkB,GAAAH,IAAA,CAAlBG,kBAAkB;IAClBC,eAAe,GAAAJ,IAAA,CAAfI,eAAe;IAAAC,qBAAA,GAAAL,IAAA,CACfM,0BAA0B;AAA1BA,IAAAA,0BAA0B,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA,CAAA;AAElC,EAAA,IAAME,QAAQ,GAAGN,MAAM,CAACO,EAAE,CAAA;EAC1B,IAAMC,gBAAgB,GAAGL,eAAe,IAAI,IAAI,IAAIA,eAAe,CAACG,QAAQ,CAAC,GAC1EG,MAAM,CAACC,IAAI,CAACP,eAAe,CAACG,QAAQ,CAAC,CAAC,CAACK,MAAM,GAC7C,CAAC,CAAA;AAEJ,EAAA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,KAAK,EAAI;IACnCA,KAAK,CAACC,eAAe,EAAE,CAAA;IACvBZ,kBAAkB,CAAC,UAAAa,WAAW,EAAI;AACjC,MAAA,IAAMC,cAAc,GAAAC,cAAA,CAAA,EAAA,EAAQF,WAAW,CAAE,CAAA;AACzC,MAAA,IAAGV,0BAA0B,IAAIC,QAAQ,IAAI,eAAe,EAAC;QAC5D,OAAOU,cAAc,CAAC,UAAU,CAAC,CAAA;AAClC,OAAA;MACA,IAAGV,QAAQ,IAAI,OAAO,IAAIA,QAAQ,IAAI,MAAM,IAAIA,QAAQ,IAAI,WAAW,EAAC;QACvE,OAAOU,cAAc,CAACE,QAAQ,CAAA;AAC/B,OAAA;MACA,OAAOF,cAAc,CAACV,QAAQ,CAAC,CAAA;AAC/B,MAAA,OAAOU,cAAc,CAAA;AACtB,KAAC,CAAC,CAAA;GACF,CAAA;EAED,IAAMG,MAAM,gBACXC,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAE,QAAA,EACEtB,IAAAA,EAAAA,MAAM,CAACuB,KAAK,EACZf,gBAAgB,GAAG,CAAC,iBACpBY,cAAA,CAAAC,aAAA,CAACG,eAAS,EAAA;AACThB,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCiB,IAAAA,OAAO,EAAEb,kBAAAA;AAAmB,GAC5B,CAED,CACF,CAAA;EAED,IAAMc,IAAI,gBACTN,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAE,QAAA,EAAA,IAAA,EACEtB,MAAM,CAAC2B,KAAK,CAACC,IAAI,EAAE,CAACC,GAAG,CAAC,UAAAC,IAAI,EAAA;AAAA,IAAA,oBAC5BV,cAAA,CAAAC,aAAA,CAACU,qBAAU,EAAA;MACVC,GAAG,EAAEF,IAAI,CAACG,IAAK;AACfH,MAAAA,IAAI,EAAEA,IAAK;MACXI,KAAK,EAAElC,MAAM,CAACO,EAAG;AACjBJ,MAAAA,eAAe,EAAEA,eAAgB;AACjCD,MAAAA,kBAAkB,EAAEA,kBAAAA;AAAmB,KACvC,CAAC,CAAA;AAAA,GACF,CACA,CACF,CAAA;AAED,EAAA,oBACCkB,cAAA,CAAAC,aAAA,CAACc,qBAAmB,EAAA;IACnB5B,EAAE,EAAEP,MAAM,CAACO,EAAG;AACdN,IAAAA,eAAe,EAAEA,eAAgB;AACjCkB,IAAAA,MAAM,EAAEA,MAAO;AACfO,IAAAA,IAAI,EAAEA,IAAAA;AAAK,GACX,CAAC,CAAA;AAEJ,CAAC,CAAA;AAED,0BAAeU,aAAAA,IAAI,CAACtC,mBAAmB,CAAC;;;;"}
|
|
@@ -13,7 +13,7 @@ var MapContainer = function MapContainer(_ref) {
|
|
|
13
13
|
var markerConfigs = _ref.markerConfigs,
|
|
14
14
|
infoWindowClasses = _ref.infoWindowClasses,
|
|
15
15
|
_ref$clusterGridSize = _ref.clusterGridSize,
|
|
16
|
-
clusterGridSize = _ref$clusterGridSize === void 0 ?
|
|
16
|
+
clusterGridSize = _ref$clusterGridSize === void 0 ? 60 : _ref$clusterGridSize;
|
|
17
17
|
var _useMap = useMap(),
|
|
18
18
|
location = _useMap.location,
|
|
19
19
|
zoom = _useMap.zoom,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-container.js","sources":["../../../../src/components/containers/maps/map-container.js"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\n\nimport MapMarker from \"~/components/containers/maps/map-marker-container\";\nimport PlaceMarker from \"~/components/modules/maps/place-marker\";\n\nimport { usePlaces } from \"~/contexts/placesContext\";\nimport { useMap } from \"~/contexts/mapContext\";\nimport { useMapList } from \"~/contexts/mapListContext\";\n\nimport { markerIconSelected, markerIcon, pinIcon } from \"~/util/mapIconUtil\";\n\nimport Map from \"~/components/modules/maps/map\";\nimport { MarkerClustererF } from \"@react-google-maps/api\";\nimport { clusterOptions } from \"~/util/mapUtil\";\n\nconst MapContainer = ({\n\tmarkerConfigs,\n\tinfoWindowClasses,\n\tclusterGridSize = 10\n}) => {\n\tconst {\n\t\tlocation,\n\t\tzoom,\n\t\tcenter,\n\t\tselectLocationEntity,\n\t\tsetLocation,\n\t\tmapInteracted,\n\t\tsetMapInteracted\n\t} = useMap();\n\n\tconst {\n\t\tmapItems, filteredListings, setSelectedFilters,\n\t\tsetQuery\n\t} = useMapList();\n\n\tconst mapRef = useRef();\n\tconst markerRefs = useRef({});\n\tconst mapContainerRef = useRef(null);\n\tconst {\n\t\tpoiMarkers,\n\t\tsetCurrentCenter,\n\t\tcurrentCenter,\n\t\tsetCurrentZoom,\n\t\tcurrentZoom,\n\t\tselectedPlaceMarker,\n\t\tsetSelectedPlaceMarker,\n\t\tplacesWindow,\n\t\tsetPlacesWindow } = usePlaces();\n\n\tconst onIdle = () => {\n\t\tif (!currentCenter || !mapRef.current) return;\n\t\tconst newCenter = mapRef.current.getCenter().toJSON();\n\t\tconst newZoom = mapRef.current.zoom;\n\n\t\tsetCurrentCenter(newCenter);\n\n\t\tif (newZoom !== currentZoom) {\n\t\t\tsetCurrentZoom(newZoom);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (mapContainerRef.current) {\n\t\t\tconst handleScroll = () => {\n\t\t\t\tsetMapInteracted(true);\n\t\t\t};\n\t\t\tvar mapContainerRefCurrent = mapContainerRef.current;\n\t\t\tmapContainerRef.current.addEventListener('wheel', handleScroll);\n\t\t\treturn () => mapContainerRefCurrent.removeEventListener('wheel', handleScroll);\n\t\t}\n\t}, [mapContainerRef.current]);\n\n\tuseEffect(() => {\n\t\tif (mapRef.current) {\n\t\t\tconst mapInstance = mapRef.current;\n\t\t\tconst dragStartListener = mapInstance.addListener('dragstart', () => setMapInteracted(true));\n\t\t\tconst mouseDownListener = mapInstance.addListener('mousedown', () => setMapInteracted(true));\n\t\t\treturn () => {\n\t\t\t\tgoogle.maps.event.removeListener(dragStartListener);\n\t\t\t\tgoogle.maps.event.removeListener(mouseDownListener);\n\t\t\t};\n\t\t}\n\t}, [mapRef.current, mapContainerRef.current]);\n\n\tuseEffect(() => {\n\t\tif ((mapItems && mapItems.length > 0 || poiMarkers.length > 0) && mapRef.current) {\n\t\t\tfitBounds(mapRef.current);\n\t\t}\n\t}, [mapItems, mapRef.current, location]);\n\n\tuseEffect(() => {\n\t\tif ((mapItems && mapItems.length > 0 || poiMarkers.length > 0) && mapRef.current && mapInteracted) {\n\t\t\tfitBounds(mapRef.current, true);\n\t\t}\n\t\tif (mapRef.current) {\n\t\t\tlet currZoom = mapRef.current.zoom;\n\t\t\tlet setZoomVal = currZoom < 13 ? currZoom : 12;\n\t\t\tmapRef.current.setZoom(setZoomVal);\n\t\t}\n\t}, [filteredListings]);\n\n\tuseEffect(() => {\n\t\tif (!mapRef.current || !location || mapInteracted) return;\n\t\tmapRef.current.panTo(\n\t\t\tnew google.maps.LatLng(location.latitude, location.longitude)\n\t\t);\n\t\tif (mapRef.current) {\n\t\t\tlet setZoomVal = zoom < 13 ? zoom : 12;\n\t\t\tmapRef.current.setZoom(setZoomVal);\n\t\t}\n\t}, [location, zoom, mapRef.current]);\n\n\tconst fitBounds = (map, overload = false) => {\n\t\tif ((mapInteracted === false || overload) && mapItems != null) {\n\t\t\tconst bounds = new window.google.maps.LatLngBounds();\n\t\t\tmapItems.forEach(item => {\n\t\t\t\tbounds.extend(new google.maps.LatLng(item.latitude, item.longitude));\n\t\t\t});\n\t\t\tif (!map) return;\n\t\t\tmap.fitBounds(bounds);\n\t\t}\n\t\tif (mapRef.current.zoom > 17) {\n\t\t\tmapRef.current.setZoom(16);\n\t\t}\n\t};\n\n\tconst markerClickHandler = mapLocation => {\n\t\tsetMapInteracted(true);\n\t\tselectLocationEntity(mapLocation);\n\t};\n\n\tconst onLoad = map => {\n\t\tif (!location || location === null) {\n\t\t\tmapRef.current = map;\n\t\t\tfitBounds(map, true);\n\t\t\treturn;\n\t\t}\n\t\tmapRef.current = map;\n\n\t\tif (mapInteracted === false) {\n\t\t\tmapRef.current.panTo(\n\t\t\t\tnew google.maps.LatLng(location.latitude, location.longitude)\n\t\t\t);\n\n\t\t\tmapRef.current.setZoom(zoom);\n\t\t}\n\t};\n\n\tconst pinIconUrl = pinIcon({\n\t\tfillColor: markerConfigs.fillColor,\n\t\tstrokeColor: markerConfigs.strokeColor\n\t});\n\n\treturn (\n\t\t<Map\n\t\t\tzoom={zoom}\n\t\t\tcenter={center}\n\t\t\tmapContainerRef={mapContainerRef}\n\t\t\tonLoad={onLoad}\n\t\t\tonIdle={onIdle}\n\t\t\tmapInteracted={mapInteracted}\n\t\t\tpinIconUrl={pinIconUrl}\n\t\t\tsetMapInteracted={setMapInteracted}\n\t\t\tfitBounds={fitBounds}\n\t\t\tmapRef={mapRef}\n\t\t\tsetQuery={setQuery}\n\t\t\tfilteredListingsLength={filteredListings.length}\n\t\t\tsetSelectedFilters={setSelectedFilters}\n\t\t>\n\t\t\t<MarkerClustererF options={clusterOptions(clusterGridSize, markerConfigs.fillColor)}>\n\t\t\t\t{clusterer => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{mapItems.map(item => (\n\t\t\t\t\t\t\t<MapMarker\n\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\titem={item}\n\t\t\t\t\t\t\t\tselectedLocation={location}\n\t\t\t\t\t\t\t\tmarkerRefs={markerRefs}\n\t\t\t\t\t\t\t\tinfoWindowClasses={infoWindowClasses}\n\t\t\t\t\t\t\t\tsetSelectedLocation={setLocation}\n\t\t\t\t\t\t\t\tmarkerClickHandler={markerClickHandler}\n\t\t\t\t\t\t\t\tclusterer={clusterer}\n\t\t\t\t\t\t\t\tmarkerIcon={markerIcon(markerConfigs)}\n\t\t\t\t\t\t\t\tmarkerIconSelected={markerIconSelected(markerConfigs)}\n\t\t\t\t\t\t\t\tsetMapInteracted={setMapInteracted}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t{poiMarkers && poiMarkers.markers.map((marker, index) => (\n\t\t\t\t\t\t\t<PlaceMarker\n\t\t\t\t\t\t\t\tkey={`marker-${marker.title}-${index}`}\n\t\t\t\t\t\t\t\tmarker={marker}\n\t\t\t\t\t\t\t\tindex={index}\n\t\t\t\t\t\t\t\tselectedPlaceMarker={selectedPlaceMarker}\n\t\t\t\t\t\t\t\tplacesWindow={placesWindow}\n\t\t\t\t\t\t\t\tsetPlacesWindow={setPlacesWindow}\n\t\t\t\t\t\t\t\tsetSelectedPlaceMarker={setSelectedPlaceMarker}\n\t\t\t\t\t\t\t />\n\t\t\t\t\t\t))}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</MarkerClustererF>\n\t\t</Map>\n\t);\n};\n\nexport default MapContainer;\n"],"names":["MapContainer","_ref","markerConfigs","infoWindowClasses","_ref$clusterGridSize","clusterGridSize","_useMap","useMap","location","zoom","center","selectLocationEntity","setLocation","mapInteracted","setMapInteracted","_useMapList","useMapList","mapItems","filteredListings","setSelectedFilters","setQuery","mapRef","useRef","markerRefs","mapContainerRef","_usePlaces","usePlaces","poiMarkers","setCurrentCenter","currentCenter","setCurrentZoom","currentZoom","selectedPlaceMarker","setSelectedPlaceMarker","placesWindow","setPlacesWindow","onIdle","current","newCenter","getCenter","toJSON","newZoom","useEffect","handleScroll","mapContainerRefCurrent","addEventListener","removeEventListener","mapInstance","dragStartListener","addListener","mouseDownListener","google","maps","event","removeListener","length","fitBounds","currZoom","setZoomVal","setZoom","panTo","LatLng","latitude","longitude","map","overload","arguments","undefined","bounds","window","LatLngBounds","forEach","item","extend","markerClickHandler","mapLocation","onLoad","pinIconUrl","pinIcon","fillColor","strokeColor","React","createElement","Map","filteredListingsLength","MarkerClustererF","options","clusterOptions","clusterer","Fragment","MapMarker","key","id","selectedLocation","setSelectedLocation","markerIcon","markerIconSelected","markers","marker","index","PlaceMarker","concat","title"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"map-container.js","sources":["../../../../src/components/containers/maps/map-container.js"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\n\nimport MapMarker from \"~/components/containers/maps/map-marker-container\";\nimport PlaceMarker from \"~/components/modules/maps/place-marker\";\n\nimport { usePlaces } from \"~/contexts/placesContext\";\nimport { useMap } from \"~/contexts/mapContext\";\nimport { useMapList } from \"~/contexts/mapListContext\";\n\nimport { markerIconSelected, markerIcon, pinIcon } from \"~/util/mapIconUtil\";\n\nimport Map from \"~/components/modules/maps/map\";\nimport { MarkerClustererF } from \"@react-google-maps/api\";\nimport { clusterOptions } from \"~/util/mapUtil\";\n\nconst MapContainer = ({\n\tmarkerConfigs,\n\tinfoWindowClasses,\n\tclusterGridSize = 60\n}) => {\n\tconst {\n\t\tlocation,\n\t\tzoom,\n\t\tcenter,\n\t\tselectLocationEntity,\n\t\tsetLocation,\n\t\tmapInteracted,\n\t\tsetMapInteracted\n\t} = useMap();\n\n\tconst {\n\t\tmapItems, filteredListings, setSelectedFilters,\n\t\tsetQuery\n\t} = useMapList();\n\n\tconst mapRef = useRef();\n\tconst markerRefs = useRef({});\n\tconst mapContainerRef = useRef(null);\n\tconst {\n\t\tpoiMarkers,\n\t\tsetCurrentCenter,\n\t\tcurrentCenter,\n\t\tsetCurrentZoom,\n\t\tcurrentZoom,\n\t\tselectedPlaceMarker,\n\t\tsetSelectedPlaceMarker,\n\t\tplacesWindow,\n\t\tsetPlacesWindow } = usePlaces();\n\n\tconst onIdle = () => {\n\t\tif (!currentCenter || !mapRef.current) return;\n\t\tconst newCenter = mapRef.current.getCenter().toJSON();\n\t\tconst newZoom = mapRef.current.zoom;\n\n\t\tsetCurrentCenter(newCenter);\n\n\t\tif (newZoom !== currentZoom) {\n\t\t\tsetCurrentZoom(newZoom);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (mapContainerRef.current) {\n\t\t\tconst handleScroll = () => {\n\t\t\t\tsetMapInteracted(true);\n\t\t\t};\n\t\t\tvar mapContainerRefCurrent = mapContainerRef.current;\n\t\t\tmapContainerRef.current.addEventListener('wheel', handleScroll);\n\t\t\treturn () => mapContainerRefCurrent.removeEventListener('wheel', handleScroll);\n\t\t}\n\t}, [mapContainerRef.current]);\n\n\tuseEffect(() => {\n\t\tif (mapRef.current) {\n\t\t\tconst mapInstance = mapRef.current;\n\t\t\tconst dragStartListener = mapInstance.addListener('dragstart', () => setMapInteracted(true));\n\t\t\tconst mouseDownListener = mapInstance.addListener('mousedown', () => setMapInteracted(true));\n\t\t\treturn () => {\n\t\t\t\tgoogle.maps.event.removeListener(dragStartListener);\n\t\t\t\tgoogle.maps.event.removeListener(mouseDownListener);\n\t\t\t};\n\t\t}\n\t}, [mapRef.current, mapContainerRef.current]);\n\n\tuseEffect(() => {\n\t\tif ((mapItems && mapItems.length > 0 || poiMarkers.length > 0) && mapRef.current) {\n\t\t\tfitBounds(mapRef.current);\n\t\t}\n\t}, [mapItems, mapRef.current, location]);\n\n\tuseEffect(() => {\n\t\tif ((mapItems && mapItems.length > 0 || poiMarkers.length > 0) && mapRef.current && mapInteracted) {\n\t\t\tfitBounds(mapRef.current, true);\n\t\t}\n\t\tif (mapRef.current) {\n\t\t\tlet currZoom = mapRef.current.zoom;\n\t\t\tlet setZoomVal = currZoom < 13 ? currZoom : 12;\n\t\t\tmapRef.current.setZoom(setZoomVal);\n\t\t}\n\t}, [filteredListings]);\n\n\tuseEffect(() => {\n\t\tif (!mapRef.current || !location || mapInteracted) return;\n\t\tmapRef.current.panTo(\n\t\t\tnew google.maps.LatLng(location.latitude, location.longitude)\n\t\t);\n\t\tif (mapRef.current) {\n\t\t\tlet setZoomVal = zoom < 13 ? zoom : 12;\n\t\t\tmapRef.current.setZoom(setZoomVal);\n\t\t}\n\t}, [location, zoom, mapRef.current]);\n\n\tconst fitBounds = (map, overload = false) => {\n\t\tif ((mapInteracted === false || overload) && mapItems != null) {\n\t\t\tconst bounds = new window.google.maps.LatLngBounds();\n\t\t\tmapItems.forEach(item => {\n\t\t\t\tbounds.extend(new google.maps.LatLng(item.latitude, item.longitude));\n\t\t\t});\n\t\t\tif (!map) return;\n\t\t\tmap.fitBounds(bounds);\n\t\t}\n\t\tif (mapRef.current.zoom > 17) {\n\t\t\tmapRef.current.setZoom(16);\n\t\t}\n\t};\n\n\tconst markerClickHandler = mapLocation => {\n\t\tsetMapInteracted(true);\n\t\tselectLocationEntity(mapLocation);\n\t};\n\n\tconst onLoad = map => {\n\t\tif (!location || location === null) {\n\t\t\tmapRef.current = map;\n\t\t\tfitBounds(map, true);\n\t\t\treturn;\n\t\t}\n\t\tmapRef.current = map;\n\n\t\tif (mapInteracted === false) {\n\t\t\tmapRef.current.panTo(\n\t\t\t\tnew google.maps.LatLng(location.latitude, location.longitude)\n\t\t\t);\n\n\t\t\tmapRef.current.setZoom(zoom);\n\t\t}\n\t};\n\n\tconst pinIconUrl = pinIcon({\n\t\tfillColor: markerConfigs.fillColor,\n\t\tstrokeColor: markerConfigs.strokeColor\n\t});\n\n\treturn (\n\t\t<Map\n\t\t\tzoom={zoom}\n\t\t\tcenter={center}\n\t\t\tmapContainerRef={mapContainerRef}\n\t\t\tonLoad={onLoad}\n\t\t\tonIdle={onIdle}\n\t\t\tmapInteracted={mapInteracted}\n\t\t\tpinIconUrl={pinIconUrl}\n\t\t\tsetMapInteracted={setMapInteracted}\n\t\t\tfitBounds={fitBounds}\n\t\t\tmapRef={mapRef}\n\t\t\tsetQuery={setQuery}\n\t\t\tfilteredListingsLength={filteredListings.length}\n\t\t\tsetSelectedFilters={setSelectedFilters}\n\t\t>\n\t\t\t<MarkerClustererF options={clusterOptions(clusterGridSize, markerConfigs.fillColor)}>\n\t\t\t\t{clusterer => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{mapItems.map(item => (\n\t\t\t\t\t\t\t<MapMarker\n\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\titem={item}\n\t\t\t\t\t\t\t\tselectedLocation={location}\n\t\t\t\t\t\t\t\tmarkerRefs={markerRefs}\n\t\t\t\t\t\t\t\tinfoWindowClasses={infoWindowClasses}\n\t\t\t\t\t\t\t\tsetSelectedLocation={setLocation}\n\t\t\t\t\t\t\t\tmarkerClickHandler={markerClickHandler}\n\t\t\t\t\t\t\t\tclusterer={clusterer}\n\t\t\t\t\t\t\t\tmarkerIcon={markerIcon(markerConfigs)}\n\t\t\t\t\t\t\t\tmarkerIconSelected={markerIconSelected(markerConfigs)}\n\t\t\t\t\t\t\t\tsetMapInteracted={setMapInteracted}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t{poiMarkers && poiMarkers.markers.map((marker, index) => (\n\t\t\t\t\t\t\t<PlaceMarker\n\t\t\t\t\t\t\t\tkey={`marker-${marker.title}-${index}`}\n\t\t\t\t\t\t\t\tmarker={marker}\n\t\t\t\t\t\t\t\tindex={index}\n\t\t\t\t\t\t\t\tselectedPlaceMarker={selectedPlaceMarker}\n\t\t\t\t\t\t\t\tplacesWindow={placesWindow}\n\t\t\t\t\t\t\t\tsetPlacesWindow={setPlacesWindow}\n\t\t\t\t\t\t\t\tsetSelectedPlaceMarker={setSelectedPlaceMarker}\n\t\t\t\t\t\t\t />\n\t\t\t\t\t\t))}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</MarkerClustererF>\n\t\t</Map>\n\t);\n};\n\nexport default MapContainer;\n"],"names":["MapContainer","_ref","markerConfigs","infoWindowClasses","_ref$clusterGridSize","clusterGridSize","_useMap","useMap","location","zoom","center","selectLocationEntity","setLocation","mapInteracted","setMapInteracted","_useMapList","useMapList","mapItems","filteredListings","setSelectedFilters","setQuery","mapRef","useRef","markerRefs","mapContainerRef","_usePlaces","usePlaces","poiMarkers","setCurrentCenter","currentCenter","setCurrentZoom","currentZoom","selectedPlaceMarker","setSelectedPlaceMarker","placesWindow","setPlacesWindow","onIdle","current","newCenter","getCenter","toJSON","newZoom","useEffect","handleScroll","mapContainerRefCurrent","addEventListener","removeEventListener","mapInstance","dragStartListener","addListener","mouseDownListener","google","maps","event","removeListener","length","fitBounds","currZoom","setZoomVal","setZoom","panTo","LatLng","latitude","longitude","map","overload","arguments","undefined","bounds","window","LatLngBounds","forEach","item","extend","markerClickHandler","mapLocation","onLoad","pinIconUrl","pinIcon","fillColor","strokeColor","React","createElement","Map","filteredListingsLength","MarkerClustererF","options","clusterOptions","clusterer","Fragment","MapMarker","key","id","selectedLocation","setSelectedLocation","markerIcon","markerIconSelected","markers","marker","index","PlaceMarker","concat","title"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listing-details.js","sources":["../../../../src/components/modules/jobListing/listing-details.js"],"sourcesContent":["import React from 'react';\
|
|
1
|
+
{"version":3,"file":"listing-details.js","sources":["../../../../src/components/modules/jobListing/listing-details.js"],"sourcesContent":["import React from 'react';\nimport RecruiterHeadshot from '~/components/modules/list/item-expand-card/recruiter-headshot';\nimport RecruiterDetails from '~/components/modules/list/item-expand-card/recruiter-details';\nimport RecruiterContactNav from '~/components/modules/list/item-expand-card/recruiter-contact-nav';\nimport ApplyButtonGroup from '~/components/modules/buttons/button-group-apply';\nimport CommutePill from '~/components/modules/buttons/commute-pill';\n\nconst ListingDetails = ({\n\titem,\n\trecruiter,\n\ttravelTime,\n\tuseDetailsPostMessage,\n\tnavigateToDetails,\n\tnavigateToEasyApply,\n\tLink,\n\tlinkFormat,\n\tuseApplyDialog,\n\tinternalApplyLink,\n\tcompanyName,\n\tjobsDomain,\n\ttrackEvent,\n\teventTypes\n}) => {\n\tif (!item) {\n\t\treturn null;\n\t}\n\n\tlet matchingRecruiter = recruiter;\n\tconsole.log(matchingRecruiter);\n\treturn (\n\t\t<div className=\"hc-w-full\">\n\t\t\t<div className=\"hc-grow hc-flex hc-flex-wrap hc-items-center hc-gap-4\">\n\t\t\t\t{/* {matchingRecruiter?.headshot && (\n\t\t\t\t\t<RecruiterHeadshot\n\t\t\t\t\t\timage={`${matchingRecruiter.headshot.includes(\"http\") ? '' :'https:'}${matchingRecruiter.headshot}`}\n\t\t\t\t\t\talt={matchingRecruiter?.firstName}\n\t\t\t\t\t\tclassName=\"hc-bg-gray-300\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{matchingRecruiter && (\n\t\t\t\t\t<RecruiterDetails\n\t\t\t\t\t\tcontactNav={\n\t\t\t\t\t\t\t<RecruiterContactNav>\n\t\t\t\t\t\t\t\t{matchingRecruiter?.mobilePhone && (\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n\t\t\t\t\t\t\t\t\t\thref={`tel:${matchingRecruiter.mobilePhone}`}\n\t\t\t\t\t\t\t\t\t\ttitle={`Call ${matchingRecruiter.mobilePhone}`}\n\t\t\t\t\t\t\t\t\t\ticon=\"fluent:phone-32-regular\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{matchingRecruiter?.email && (\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n\t\t\t\t\t\t\t\t\t\thref={`mailto:${matchingRecruiter.email}`}\n\t\t\t\t\t\t\t\t\t\ttitle={`email ${matchingRecruiter.email}`}\n\t\t\t\t\t\t\t\t\t\ticon=\"bi:envelope-at\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{matchingRecruiter?.linkedIn && (\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n\t\t\t\t\t\t\t\t\t\thref={matchingRecruiter.linkedIn}\n\t\t\t\t\t\t\t\t\t\ttitle=\"LinkedIn\"\n\t\t\t\t\t\t\t\t\t\ticon=\"ant-design:linkedin-outlined\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</RecruiterContactNav>\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{matchingRecruiter?.firstName || matchingRecruiter?.lastName && (\n\t\t\t\t\t\t\t<RecruiterDetails.Title>\n\t\t\t\t\t\t\t\t{`${matchingRecruiter?.firstName} ${matchingRecruiter?.lastName}`}\n\t\t\t\t\t\t\t</RecruiterDetails.Title>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{item.details?.recruiter?.title && (\n\t\t\t\t\t\t\t<RecruiterDetails.Text>\n\t\t\t\t\t\t\t\t{item.details.recruiter.title}\n\t\t\t\t\t\t\t</RecruiterDetails.Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</RecruiterDetails>\n\t\t\t\t)} */}\n\t\t\t\t<ApplyButtonGroup\n\t\t\t\t\tuseDetailsPostMessage={useDetailsPostMessage}\n\t\t\t\t\tnavigateToDetails={navigateToDetails}\n\t\t\t\t\tnavigateToEasyApply={navigateToEasyApply}\n\t\t\t\t\tLink={Link}\n\t\t\t\t\tlinkFormat={linkFormat}\n\t\t\t\t\tincludeDialog={useApplyDialog}\n\t\t\t\t\tinternalApplyLink={internalApplyLink}\n\t\t\t\t\tcompanyName={companyName}\n\t\t\t\t\tapplyUrl={item?.applyUrl}\n\t\t\t\t\titemId={item.id}\n\t\t\t\t\titem={item}\n\t\t\t\t\ttrackEvent={trackEvent}\n\t\t\t\t\teventTypes={eventTypes}\n\t\t\t\t\tdetailsUrl={item.useClientJobUrl ? item?.detailsUrl : `${jobsDomain}${item.id}`}\n\t\t\t\t\tclassName={`\n lg:hc-w-auto hc-order-first lg:hc-order-last md:hc-self-center hc-py-2 lg:hc-p-0 lg:hc-mb-0 hc-border-b lg:hc-border-none hc-border-uiAccent/20\n ${matchingRecruiter ? \"lg:hc-flex-col lg:hc-w-auto\" : \"lg:hc-flex-row\"}\n `}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div className=\"hc-w-full\">\n\t\t\t\t<CommutePill travelTime={travelTime} className=\"hc-ml-0\" />\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default ListingDetails;\n\n"],"names":["ListingDetails","_ref","item","recruiter","travelTime","useDetailsPostMessage","navigateToDetails","navigateToEasyApply","Link","linkFormat","useApplyDialog","internalApplyLink","companyName","jobsDomain","trackEvent","eventTypes","matchingRecruiter","console","log","React","createElement","className","ApplyButtonGroup","includeDialog","applyUrl","itemId","id","detailsUrl","useClientJobUrl","concat","CommutePill"],"mappings":";;;;;AAOA,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAed;AAAA,EAAA,IAdLC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,UAAU,GAAAH,IAAA,CAAVG,UAAU;IACVC,qBAAqB,GAAAJ,IAAA,CAArBI,qBAAqB;IACrBC,iBAAiB,GAAAL,IAAA,CAAjBK,iBAAiB;IACjBC,mBAAmB,GAAAN,IAAA,CAAnBM,mBAAmB;IACnBC,IAAI,GAAAP,IAAA,CAAJO,IAAI;IACJC,UAAU,GAAAR,IAAA,CAAVQ,UAAU;IACVC,cAAc,GAAAT,IAAA,CAAdS,cAAc;IACdC,iBAAiB,GAAAV,IAAA,CAAjBU,iBAAiB;IACjBC,WAAW,GAAAX,IAAA,CAAXW,WAAW;IACXC,UAAU,GAAAZ,IAAA,CAAVY,UAAU;IACVC,UAAU,GAAAb,IAAA,CAAVa,UAAU;IACVC,UAAU,GAAAd,IAAA,CAAVc,UAAU,CAAA;EAEV,IAAI,CAACb,IAAI,EAAE;AACV,IAAA,OAAO,IAAI,CAAA;AACZ,GAAA;EAEA,IAAIc,iBAAiB,GAAGb,SAAS,CAAA;AACjCc,EAAAA,OAAO,CAACC,GAAG,CAACF,iBAAiB,CAAC,CAAA;EAC9B,oBACCG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,WAAA;GACdF,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,uDAAA;AAAuD,GAAA,eAgDrEF,cAAA,CAAAC,aAAA,CAACE,gBAAgB,EAAA;AAChBjB,IAAAA,qBAAqB,EAAEA,qBAAsB;AAC7CC,IAAAA,iBAAiB,EAAEA,iBAAkB;AACrCC,IAAAA,mBAAmB,EAAEA,mBAAoB;AACzCC,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,UAAU,EAAEA,UAAW;AACvBc,IAAAA,aAAa,EAAEb,cAAe;AAC9BC,IAAAA,iBAAiB,EAAEA,iBAAkB;AACrCC,IAAAA,WAAW,EAAEA,WAAY;AACzBY,IAAAA,QAAQ,EAAEtB,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAEsB,QAAS;IACzBC,MAAM,EAAEvB,IAAI,CAACwB,EAAG;AAChBxB,IAAAA,IAAI,EAAEA,IAAK;AACXY,IAAAA,UAAU,EAAEA,UAAW;AACvBC,IAAAA,UAAU,EAAEA,UAAW;IACvBY,UAAU,EAAEzB,IAAI,CAAC0B,eAAe,GAAG1B,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAEyB,UAAU,GAAAE,EAAAA,CAAAA,MAAA,CAAMhB,UAAU,CAAA,CAAAgB,MAAA,CAAG3B,IAAI,CAACwB,EAAE,CAAG;AAChFL,IAAAA,SAAS,gLAAAQ,MAAA,CAEAb,iBAAiB,GAAG,6BAA6B,GAAG,gBAAgB,EAAA,cAAA,CAAA;AACtE,GACP,CACG,CAAC,eACNG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,WAAA;AAAW,GAAA,eACzBF,cAAA,CAAAC,aAAA,CAACU,WAAW,EAAA;AAAC1B,IAAAA,UAAU,EAAEA,UAAW;AAACiB,IAAAA,SAAS,EAAC,SAAA;GAAW,CACtD,CACD,CAAC,CAAA;AAER;;;;"}
|
|
@@ -52,12 +52,12 @@ var ListItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
52
52
|
},
|
|
53
53
|
className: "\n\t\t\t\thc-group hc-relative hc-flex md:hc-flex-col hc-w-full hc-text-left hc-bg-clip-border hc-border hc-border-transparent hc-break-words hc-overflow-hidden hc-cursor-pointer hc-transition-colors hover:hc-bg-uiAccent/5 focus:hover:hc-bg-uiAccent/5\n\t\t\t\t".concat(isActive ? "hc-bg-uiAccent/5 hc-border-secondary hc-border" : "hc-text-uiText hc-bg-white", "\n\t\t\t\t").concat(className !== null && className !== void 0 ? className : "", "\n\t\t\t\t")
|
|
54
54
|
}, props), /*#__PURE__*/React__default.createElement(Grid, {
|
|
55
|
-
columns: "hc-grid-flow-col hc-auto-cols-fr",
|
|
55
|
+
columns: "hc-pl-4 hc-md-pl-0 hc-grid-flow-col hc-auto-cols-fr",
|
|
56
56
|
gap: "hc-gap-0",
|
|
57
57
|
isAnimated: false,
|
|
58
58
|
className: "\n hc-block md:hc-grid hc-py-2 hc-w-full hc-grow hc-leading-tight hc-text-sm md:hc-text-xs lg:hc-text-sm\n ".concat(bodyClassName !== null && bodyClassName !== void 0 ? bodyClassName : "", "\n ")
|
|
59
59
|
}, /*#__PURE__*/React__default.createElement(Grid.Item, {
|
|
60
|
-
className: "hc-hidden md:hc-block md:hc-absolute md:hc-left-1.5 hc-top-1.5"
|
|
60
|
+
className: " hc-hidden md:hc-block md:hc-absolute md:hc-left-1.5 hc-top-1.5"
|
|
61
61
|
}, /*#__PURE__*/React__default.createElement("span", {
|
|
62
62
|
className: "hc-sr-only"
|
|
63
63
|
}, "Expand row"), /*#__PURE__*/React__default.createElement(IconContained, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-item.js","sources":["../../../../../src/components/modules/list/list-item/list-item.js"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport Grid from '~/components/modules/grid';\nimport Icon from '~/components/modules/icon';\nimport FieldMapper from '~/components/modules/list/field-mapper';\n\nconst ListItem = forwardRef(\n\t(\n\t\t{\n\t\t\tisActive,\n\t\t\tbodyClassName,\n\t\t\tclassName,\n\t\t\titem,\n\t\t\tfieldsShown,\n\t\t\tspecialFeatures,\n\t\t\tonItemSelected,\n\t\t\tshowMap,\n\t\t\tsetMobileTab,\n\t\t\thandleSettingFavorites,\n\t\t\tfavorites,\n\t\t\tincludeFavorite = true,\n\t\t\tsiteConfig,\n\t\t\ttrackEvent,\n\t\t\teventTypes,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst mapPinColor = !showMap ? null : siteConfig.colors.primary.replace(\"#\", \"\");\n\n\t\tconst handleClick = () => {\n\t\t\tif (onItemSelected) {\n\t\t\t\tonItemSelected(item);\n\t\t\t}\n\t\t};\n\t\tlet isFavorite = favorites.includes(item.id);\n\n\t\tconst handleFavouriteClick = (event, item) => {\n\t\t\tif(!includeFavorite)return;\n\t\t\tevent.stopPropagation();\n\t\t\tlet updatedFavorites;\n\t\t\tif (isFavorite) {\n\t\t\t\tupdatedFavorites = favorites.filter(fav => fav !== item.id);\n\t\t\t} else {\n\t\t\t\tupdatedFavorites = [...favorites, item.id];\n\t\t\t}\n\t\t\tisFavorite = !isFavorite;\n\t\t\thandleSettingFavorites(updatedFavorites);\n\t\t};\n\t\treturn (\n\t\t\t<button\n\t\t\t\tref={ref}\n\t\t\t\tonClick={() => { handleClick(); }}\n\t\t\t\tclassName={`\n\t\t\t\thc-group hc-relative hc-flex md:hc-flex-col hc-w-full hc-text-left hc-bg-clip-border hc-border hc-border-transparent hc-break-words hc-overflow-hidden hc-cursor-pointer hc-transition-colors hover:hc-bg-uiAccent/5 focus:hover:hc-bg-uiAccent/5\n\t\t\t\t${isActive ? \"hc-bg-uiAccent/5 hc-border-secondary hc-border\" : \"hc-text-uiText hc-bg-white\"}\n\t\t\t\t${className ?? \"\"}\n\t\t\t\t`}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<Grid\n\t\t\t\t\tcolumns=\"hc-grid-flow-col hc-auto-cols-fr\"\n\t\t\t\t\tgap=\"hc-gap-0\"\n\t\t\t\t\tisAnimated={false}\n\t\t\t\t\tclassName={`\n hc-block md:hc-grid hc-py-2 hc-w-full hc-grow hc-leading-tight hc-text-sm md:hc-text-xs lg:hc-text-sm\n ${bodyClassName ?? \"\"}\n `}\n\t\t\t\t>\n\t\t\t\t\t<Grid.Item className=\"hc-hidden md:hc-block md:hc-absolute md:hc-left-1.5 hc-top-1.5\">\n\t\t\t\t\t\t<span className=\"hc-sr-only\">Expand row</span>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon=\"fluent-emoji-high-contrast:plus\"\n\t\t\t\t\t\t\tsize=\"hc-size-2.5\"\n\t\t\t\t\t\t\tclassName={`\n hc-opacity-0 hc-text-uiText/60 hc-transition group-hover:hc-opacity-100 group-active:hc-opacity-100\n ${isActive ? \"hc-opacity-100 hc-rotate-45\" : \"\"}\n `}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t\t<FieldMapper\n\t\t\t\t\t\titem={item}\n\t\t\t\t\t\tfieldsShown={fieldsShown}\n\t\t\t\t\t\tspecialFeatures={specialFeatures}\n\t\t\t\t\t\tisFavorite={isFavorite}\n\t\t\t\t\t\tincludeFavorite={includeFavorite}\n\t\t\t\t\t\thandleFavouriteClick={handleFavouriteClick}\n\t\t\t\t\t/>\n\t\t\t\t\t{includeFavorite &&\n\t\t\t\t\t<Grid.Item\n\t\t\t\t\t\tkey={\"favorites\"}\n\t\t\t\t\t\tclassName=\"hc-hidden md:hc-block hc-col-span-1 hc-px-2\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon={isFavorite ? \"mdi:heart\" : \"mdi:heart-outline\"}\n\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\n\t\t\t\t\t\t\ticonClasses={isFavorite ? \"hc-text-primary\" : \"\"}\n\t\t\t\t\t\t\ttitle={!isFavorite ? 'Add job to favorites' : 'Remove job from favorites'}\n\t\t\t\t\t\t\tclassName=\"hc-pr-2 hc-transition-opacity hc-duration-300 hc-cursor-pointer hc-opacity-100\"\n\t\t\t\t\t\t\tonClick={e => {handleFavouriteClick(e, item);}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t\t}\n\t\t\t\t</Grid>\n\t\t\t\t{showMap && (\n\t\t\t\t\t<div onClick={() => { setMobileTab(\"mapTab\"); handleClick(); }} className=\"md:hc-hidden hc-w-2/5 sm:hc-w-1/3 hc-p-1.5 hc-my-1 hc-bg-uiAccent/5 hc-border hc-border-uiAccent/10 hc-rounded-sm\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={`https://maps.googleapis.com/maps/api/staticmap?scale=2¢er=${item.mapDetails?.latitude},${item.mapDetails?.longitude}&zoom=10&size=240x180&maptype=roadmap&markers=color:0x${mapPinColor}%7Clabel:•%7C${item.mapDetails?.latitude},${item.mapDetails?.longitude}&key=${process.env.GOOGLE_MAPS_API_KEY}`}\n\t\t\t\t\t\t\talt={`Map of location for ${item.fields.position}`}\n\t\t\t\t\t\t\tclassName=\"hc-w-full hc-h-full hc-object-cover\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</button>\n\t\t);\n\t}\n);\n\nListItem.displayName = \"ListItem\";\n\nexport default React.memo(ListItem, (prevProps, nextProps) => {\n\treturn (\n\t\tprevProps.isActive === nextProps.isActive &&\n\t\tprevProps.favorites === nextProps.favorites &&\n prevProps.item.id === nextProps.item.id &&\n\tprevProps.item.fields.travelTime === nextProps.item.fields.travelTime &&\n prevProps.fieldsShown === nextProps.fieldsShown &&\n prevProps.bodyClassName === nextProps.bodyClassName &&\n prevProps.className === nextProps.className\n\t);\n});\n"],"names":["ListItem","forwardRef","_ref","ref","_item$mapDetails","_item$mapDetails2","_item$mapDetails3","_item$mapDetails4","isActive","bodyClassName","className","item","fieldsShown","specialFeatures","onItemSelected","showMap","setMobileTab","handleSettingFavorites","favorites","_ref$includeFavorite","includeFavorite","siteConfig","trackEvent","eventTypes","props","_objectWithoutProperties","_excluded","mapPinColor","colors","primary","replace","handleClick","isFavorite","includes","id","handleFavouriteClick","event","stopPropagation","updatedFavorites","filter","fav","concat","_toConsumableArray","React","createElement","_extends","onClick","Grid","columns","gap","isAnimated","Item","Icon","icon","size","FieldMapper","key","iconClasses","title","e","src","mapDetails","latitude","longitude","alt","fields","position","displayName","memo","prevProps","nextProps","travelTime"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"list-item.js","sources":["../../../../../src/components/modules/list/list-item/list-item.js"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport Grid from '~/components/modules/grid';\nimport Icon from '~/components/modules/icon';\nimport FieldMapper from '~/components/modules/list/field-mapper';\n\nconst ListItem = forwardRef(\n\t(\n\t\t{\n\t\t\tisActive,\n\t\t\tbodyClassName,\n\t\t\tclassName,\n\t\t\titem,\n\t\t\tfieldsShown,\n\t\t\tspecialFeatures,\n\t\t\tonItemSelected,\n\t\t\tshowMap,\n\t\t\tsetMobileTab,\n\t\t\thandleSettingFavorites,\n\t\t\tfavorites,\n\t\t\tincludeFavorite = true,\n\t\t\tsiteConfig,\n\t\t\ttrackEvent,\n\t\t\teventTypes,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst mapPinColor = !showMap ? null : siteConfig.colors.primary.replace(\"#\", \"\");\n\n\t\tconst handleClick = () => {\n\t\t\tif (onItemSelected) {\n\t\t\t\tonItemSelected(item);\n\t\t\t}\n\t\t};\n\t\tlet isFavorite = favorites.includes(item.id);\n\n\t\tconst handleFavouriteClick = (event, item) => {\n\t\t\tif(!includeFavorite)return;\n\t\t\tevent.stopPropagation();\n\t\t\tlet updatedFavorites;\n\t\t\tif (isFavorite) {\n\t\t\t\tupdatedFavorites = favorites.filter(fav => fav !== item.id);\n\t\t\t} else {\n\t\t\t\tupdatedFavorites = [...favorites, item.id];\n\t\t\t}\n\t\t\tisFavorite = !isFavorite;\n\t\t\thandleSettingFavorites(updatedFavorites);\n\t\t};\n\t\treturn (\n\t\t\t<button\n\t\t\t\tref={ref}\n\t\t\t\tonClick={() => { handleClick(); }}\n\t\t\t\tclassName={`\n\t\t\t\thc-group hc-relative hc-flex md:hc-flex-col hc-w-full hc-text-left hc-bg-clip-border hc-border hc-border-transparent hc-break-words hc-overflow-hidden hc-cursor-pointer hc-transition-colors hover:hc-bg-uiAccent/5 focus:hover:hc-bg-uiAccent/5\n\t\t\t\t${isActive ? \"hc-bg-uiAccent/5 hc-border-secondary hc-border\" : \"hc-text-uiText hc-bg-white\"}\n\t\t\t\t${className ?? \"\"}\n\t\t\t\t`}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<Grid\n\t\t\t\t\tcolumns=\"hc-pl-4 hc-md-pl-0 hc-grid-flow-col hc-auto-cols-fr\"\n\t\t\t\t\tgap=\"hc-gap-0\"\n\t\t\t\t\tisAnimated={false}\n\t\t\t\t\tclassName={`\n hc-block md:hc-grid hc-py-2 hc-w-full hc-grow hc-leading-tight hc-text-sm md:hc-text-xs lg:hc-text-sm\n ${bodyClassName ?? \"\"}\n `}\n\t\t\t\t>\n\t\t\t\t\t<Grid.Item className=\" hc-hidden md:hc-block md:hc-absolute md:hc-left-1.5 hc-top-1.5\">\n\t\t\t\t\t\t<span className=\"hc-sr-only\">Expand row</span>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon=\"fluent-emoji-high-contrast:plus\"\n\t\t\t\t\t\t\tsize=\"hc-size-2.5\"\n\t\t\t\t\t\t\tclassName={`\n hc-opacity-0 hc-text-uiText/60 hc-transition group-hover:hc-opacity-100 group-active:hc-opacity-100\n ${isActive ? \"hc-opacity-100 hc-rotate-45\" : \"\"}\n `}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t\t<FieldMapper\n\t\t\t\t\t\titem={item}\n\t\t\t\t\t\tfieldsShown={fieldsShown}\n\t\t\t\t\t\tspecialFeatures={specialFeatures}\n\t\t\t\t\t\tisFavorite={isFavorite}\n\t\t\t\t\t\tincludeFavorite={includeFavorite}\n\t\t\t\t\t\thandleFavouriteClick={handleFavouriteClick}\n\t\t\t\t\t/>\n\t\t\t\t\t{includeFavorite &&\n\t\t\t\t\t<Grid.Item\n\t\t\t\t\t\tkey={\"favorites\"}\n\t\t\t\t\t\tclassName=\"hc-hidden md:hc-block hc-col-span-1 hc-px-2\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon={isFavorite ? \"mdi:heart\" : \"mdi:heart-outline\"}\n\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\n\t\t\t\t\t\t\ticonClasses={isFavorite ? \"hc-text-primary\" : \"\"}\n\t\t\t\t\t\t\ttitle={!isFavorite ? 'Add job to favorites' : 'Remove job from favorites'}\n\t\t\t\t\t\t\tclassName=\"hc-pr-2 hc-transition-opacity hc-duration-300 hc-cursor-pointer hc-opacity-100\"\n\t\t\t\t\t\t\tonClick={e => {handleFavouriteClick(e, item);}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t\t}\n\t\t\t\t</Grid>\n\t\t\t\t{showMap && (\n\t\t\t\t\t<div onClick={() => { setMobileTab(\"mapTab\"); handleClick(); }} className=\"md:hc-hidden hc-w-2/5 sm:hc-w-1/3 hc-p-1.5 hc-my-1 hc-bg-uiAccent/5 hc-border hc-border-uiAccent/10 hc-rounded-sm\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={`https://maps.googleapis.com/maps/api/staticmap?scale=2¢er=${item.mapDetails?.latitude},${item.mapDetails?.longitude}&zoom=10&size=240x180&maptype=roadmap&markers=color:0x${mapPinColor}%7Clabel:•%7C${item.mapDetails?.latitude},${item.mapDetails?.longitude}&key=${process.env.GOOGLE_MAPS_API_KEY}`}\n\t\t\t\t\t\t\talt={`Map of location for ${item.fields.position}`}\n\t\t\t\t\t\t\tclassName=\"hc-w-full hc-h-full hc-object-cover\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</button>\n\t\t);\n\t}\n);\n\nListItem.displayName = \"ListItem\";\n\nexport default React.memo(ListItem, (prevProps, nextProps) => {\n\treturn (\n\t\tprevProps.isActive === nextProps.isActive &&\n\t\tprevProps.favorites === nextProps.favorites &&\n prevProps.item.id === nextProps.item.id &&\n\tprevProps.item.fields.travelTime === nextProps.item.fields.travelTime &&\n prevProps.fieldsShown === nextProps.fieldsShown &&\n prevProps.bodyClassName === nextProps.bodyClassName &&\n prevProps.className === nextProps.className\n\t);\n});\n"],"names":["ListItem","forwardRef","_ref","ref","_item$mapDetails","_item$mapDetails2","_item$mapDetails3","_item$mapDetails4","isActive","bodyClassName","className","item","fieldsShown","specialFeatures","onItemSelected","showMap","setMobileTab","handleSettingFavorites","favorites","_ref$includeFavorite","includeFavorite","siteConfig","trackEvent","eventTypes","props","_objectWithoutProperties","_excluded","mapPinColor","colors","primary","replace","handleClick","isFavorite","includes","id","handleFavouriteClick","event","stopPropagation","updatedFavorites","filter","fav","concat","_toConsumableArray","React","createElement","_extends","onClick","Grid","columns","gap","isAnimated","Item","Icon","icon","size","FieldMapper","key","iconClasses","title","e","src","mapDetails","latitude","longitude","alt","fields","position","displayName","memo","prevProps","nextProps","travelTime"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export default ListingDetails;
|
|
2
|
-
declare function ListingDetails({ item, recruiter, travelTime, useDetailsPostMessage, navigateToDetails, navigateToEasyApply, Link, linkFormat, useApplyDialog, internalApplyLink, companyName, jobsDomain, trackEvent, eventTypes
|
|
2
|
+
declare function ListingDetails({ item, recruiter, travelTime, useDetailsPostMessage, navigateToDetails, navigateToEasyApply, Link, linkFormat, useApplyDialog, internalApplyLink, companyName, jobsDomain, trackEvent, eventTypes }: {
|
|
3
3
|
item: any;
|
|
4
4
|
recruiter: any;
|
|
5
5
|
travelTime: any;
|
|
@@ -6,6 +6,7 @@ export function findCloseItems(itemsObj: any): {
|
|
|
6
6
|
export function adjustItemPositions(itemsObj: any, closeItemPairs: any): any;
|
|
7
7
|
export function clusterOptions(clusterGridSize: any, fillColor: any): {
|
|
8
8
|
gridSize: any;
|
|
9
|
+
maxZoom: number;
|
|
9
10
|
styles: {
|
|
10
11
|
url: string;
|
|
11
12
|
textColor: string;
|
package/dist/util/mapUtil.js
CHANGED
|
@@ -59,6 +59,7 @@ var adjustItemPositions = function adjustItemPositions(itemsObj, closeItemPairs)
|
|
|
59
59
|
var clusterOptions = function clusterOptions(clusterGridSize, fillColor) {
|
|
60
60
|
return {
|
|
61
61
|
gridSize: clusterGridSize,
|
|
62
|
+
maxZoom: 15,
|
|
62
63
|
styles: [{
|
|
63
64
|
url: createSvgDataUri(fillColor),
|
|
64
65
|
textColor: 'white',
|
package/dist/util/mapUtil.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapUtil.js","sources":["../../src/util/mapUtil.js"],"sourcesContent":["export const getDistinctItemsByProximity = (items, listingEntitiesDetails) => {\n\tconst clusters = {};\n\n\tif (!listingEntitiesDetails) return [];\n\n\tconst closeItemPairs = findCloseItems(listingEntitiesDetails);\n\tif (closeItemPairs.length > 0) {\n\t\tlistingEntitiesDetails = adjustItemPositions(\n\t\t\tlistingEntitiesDetails,\n\t\t\tcloseItemPairs\n\t\t);\n\t}\n\n\titems?.forEach(item => {\n\t\tif(item.entityId !== -1){\n\n\t\t\tconst entityDetails = listingEntitiesDetails[item.entityId];\n\n\t\t\tif (!entityDetails) {\n\t\t\t\tconsole.error(`Details not found for entityId: ${item.entityId}`);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\titem.mapDetails = entityDetails;\n\n\t\t\tif (!clusters[item.entityId]) {\n\t\t\t\tclusters[item.entityId] = {\n\t\t\t\t\t...item.mapDetails,\n\t\t\t\t\titems: { [item.id]: item }\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tclusters[item.entityId].items[item.id] = item;\n\t\t\t}}\n\t});\n\n\treturn Object.values(clusters);\n};\n\nexport const findCloseItems = itemsObj => {\n\tconst closeItems = [];\n\tconst items = Object.values(itemsObj); // Convert object to array for iteration\n\tconst proximityThreshold = 0.0001;\n\n\tfor (let i = 0; i < items.length; i++) {\n\t\tfor (let j = i + 1; j < items.length; j++) {\n\t\t\tconst distanceLat = Math.abs(items[i].latitude - items[j].latitude);\n\t\t\tconst distanceLng = Math.abs(items[i].longitude - items[j].longitude);\n\t\t\tif (\n\t\t\t\tdistanceLat < proximityThreshold &&\n\t\t\t\tdistanceLng < proximityThreshold\n\t\t\t) {\n\t\t\t\tcloseItems.push({ item1: items[i], item2: items[j] });\n\t\t\t}\n\t\t}\n\t}\n\n\treturn closeItems;\n};\n\nexport const adjustItemPositions = (itemsObj, closeItemPairs) => {\n\tconst adjustmentValue = 0.0001;\n\tconst adjustedItems = { ...itemsObj }; // Create a shallow copy of the object\n\n\tcloseItemPairs.forEach(pair => {\n\t\tif (adjustedItems[pair.item1.id] && adjustedItems[pair.item2.id]) {\n\t\t\tadjustedItems[pair.item2.id].latitude += adjustmentValue;\n\t\t\tadjustedItems[pair.item2.id].longitude += adjustmentValue;\n\t\t}\n\t});\n\n\treturn adjustedItems;\n};\n\nexport const clusterOptions = (clusterGridSize, fillColor) => {\n\treturn {\n\t\tgridSize: clusterGridSize,\n\t\tstyles:[{\n\t\t\turl: createSvgDataUri(fillColor),\n\t\t\ttextColor:'white',\n\t\t\theight: 40,\n\t\t\twidth: 40\n\t\t}]\n\t};\n};\n\nfunction createSvgDataUri(fillColor) {\n\tconst svg = `<svg width=\"50\" height=\"50\" xmlns=\"http://www.w3.org/2000/svg\">\n\t <circle cx=\"25\" cy=\"25\" r=\"20\" fill=\"${fillColor}\" />\n\t</svg>`;\n\treturn `data:image/svg+xml;base64,${btoa(svg)}`;\n}\n"],"names":["getDistinctItemsByProximity","items","listingEntitiesDetails","clusters","closeItemPairs","findCloseItems","length","adjustItemPositions","forEach","item","entityId","entityDetails","console","error","concat","mapDetails","_objectSpread","_defineProperty","id","Object","values","itemsObj","closeItems","proximityThreshold","i","j","distanceLat","Math","abs","latitude","distanceLng","longitude","push","item1","item2","adjustmentValue","adjustedItems","pair","clusterOptions","clusterGridSize","fillColor","gridSize","styles","url","createSvgDataUri","textColor","height","width","svg","btoa"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mapUtil.js","sources":["../../src/util/mapUtil.js"],"sourcesContent":["export const getDistinctItemsByProximity = (items, listingEntitiesDetails) => {\n\tconst clusters = {};\n\n\tif (!listingEntitiesDetails) return [];\n\n\tconst closeItemPairs = findCloseItems(listingEntitiesDetails);\n\tif (closeItemPairs.length > 0) {\n\t\tlistingEntitiesDetails = adjustItemPositions(\n\t\t\tlistingEntitiesDetails,\n\t\t\tcloseItemPairs\n\t\t);\n\t}\n\n\titems?.forEach(item => {\n\t\tif(item.entityId !== -1){\n\n\t\t\tconst entityDetails = listingEntitiesDetails[item.entityId];\n\n\t\t\tif (!entityDetails) {\n\t\t\t\tconsole.error(`Details not found for entityId: ${item.entityId}`);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\titem.mapDetails = entityDetails;\n\n\t\t\tif (!clusters[item.entityId]) {\n\t\t\t\tclusters[item.entityId] = {\n\t\t\t\t\t...item.mapDetails,\n\t\t\t\t\titems: { [item.id]: item }\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tclusters[item.entityId].items[item.id] = item;\n\t\t\t}}\n\t});\n\n\treturn Object.values(clusters);\n};\n\nexport const findCloseItems = itemsObj => {\n\tconst closeItems = [];\n\tconst items = Object.values(itemsObj); // Convert object to array for iteration\n\tconst proximityThreshold = 0.0001;\n\n\tfor (let i = 0; i < items.length; i++) {\n\t\tfor (let j = i + 1; j < items.length; j++) {\n\t\t\tconst distanceLat = Math.abs(items[i].latitude - items[j].latitude);\n\t\t\tconst distanceLng = Math.abs(items[i].longitude - items[j].longitude);\n\t\t\tif (\n\t\t\t\tdistanceLat < proximityThreshold &&\n\t\t\t\tdistanceLng < proximityThreshold\n\t\t\t) {\n\t\t\t\tcloseItems.push({ item1: items[i], item2: items[j] });\n\t\t\t}\n\t\t}\n\t}\n\n\treturn closeItems;\n};\n\nexport const adjustItemPositions = (itemsObj, closeItemPairs) => {\n\tconst adjustmentValue = 0.0001;\n\tconst adjustedItems = { ...itemsObj }; // Create a shallow copy of the object\n\n\tcloseItemPairs.forEach(pair => {\n\t\tif (adjustedItems[pair.item1.id] && adjustedItems[pair.item2.id]) {\n\t\t\tadjustedItems[pair.item2.id].latitude += adjustmentValue;\n\t\t\tadjustedItems[pair.item2.id].longitude += adjustmentValue;\n\t\t}\n\t});\n\n\treturn adjustedItems;\n};\n\nexport const clusterOptions = (clusterGridSize, fillColor) => {\n\treturn {\n\t\tgridSize: clusterGridSize,\n\t\tmaxZoom:15,\n\t\tstyles:[{\n\t\t\turl: createSvgDataUri(fillColor),\n\t\t\ttextColor:'white',\n\t\t\theight: 40,\n\t\t\twidth: 40\n\t\t}]\n\t};\n};\n\nfunction createSvgDataUri(fillColor) {\n\tconst svg = `<svg width=\"50\" height=\"50\" xmlns=\"http://www.w3.org/2000/svg\">\n\t <circle cx=\"25\" cy=\"25\" r=\"20\" fill=\"${fillColor}\" />\n\t</svg>`;\n\treturn `data:image/svg+xml;base64,${btoa(svg)}`;\n}\n"],"names":["getDistinctItemsByProximity","items","listingEntitiesDetails","clusters","closeItemPairs","findCloseItems","length","adjustItemPositions","forEach","item","entityId","entityDetails","console","error","concat","mapDetails","_objectSpread","_defineProperty","id","Object","values","itemsObj","closeItems","proximityThreshold","i","j","distanceLat","Math","abs","latitude","distanceLng","longitude","push","item1","item2","adjustmentValue","adjustedItems","pair","clusterOptions","clusterGridSize","fillColor","gridSize","maxZoom","styles","url","createSvgDataUri","textColor","height","width","svg","btoa"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -24,8 +24,8 @@ const FilterItemContainer = ({
|
|
|
24
24
|
}
|
|
25
25
|
if(fieldKey == 'state' || fieldKey == 'city' || fieldKey == 'cityState'){
|
|
26
26
|
delete updatedFilters.entityId;
|
|
27
|
-
delete updatedFilters[fieldKey];
|
|
28
27
|
}
|
|
28
|
+
delete updatedFilters[fieldKey];
|
|
29
29
|
return updatedFilters;
|
|
30
30
|
});
|
|
31
31
|
};
|
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import RecruiterHeadshot from '~/components/modules/list/item-expand-card/recruiter-headshot';
|
|
3
|
-
import RecruiterDetails from '~/components/modules/list/item-expand-card/recruiter-details';
|
|
4
|
-
import RecruiterContactNav from '~/components/modules/list/item-expand-card/recruiter-contact-nav';
|
|
5
|
-
import ApplyButtonGroup from '~/components/modules/buttons/button-group-apply';
|
|
6
|
-
import CommutePill from '~/components/modules/buttons/commute-pill';
|
|
7
|
-
|
|
8
|
-
const ListingDetails = ({
|
|
9
|
-
item,
|
|
10
|
-
recruiter,
|
|
11
|
-
travelTime,
|
|
12
|
-
useDetailsPostMessage,
|
|
13
|
-
navigateToDetails,
|
|
14
|
-
navigateToEasyApply,
|
|
15
|
-
Link,
|
|
16
|
-
linkFormat,
|
|
17
|
-
useApplyDialog,
|
|
18
|
-
internalApplyLink,
|
|
19
|
-
companyName,
|
|
20
|
-
jobsDomain,
|
|
21
|
-
trackEvent,
|
|
22
|
-
eventTypes
|
|
23
|
-
}) => {
|
|
24
|
-
if (!item) {
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
let matchingRecruiter = recruiter;
|
|
29
|
-
console.log(matchingRecruiter);
|
|
30
|
-
return (
|
|
31
|
-
<div className="hc-w-full">
|
|
32
|
-
<div className="hc-grow hc-flex hc-flex-wrap hc-items-center hc-gap-4">
|
|
33
|
-
{/* {matchingRecruiter?.headshot && (
|
|
34
|
-
<RecruiterHeadshot
|
|
35
|
-
image={`${matchingRecruiter.headshot.includes("http") ? '' :'https:'}${matchingRecruiter.headshot}`}
|
|
36
|
-
alt={matchingRecruiter?.firstName}
|
|
37
|
-
className="hc-bg-gray-300"
|
|
38
|
-
/>
|
|
39
|
-
)}
|
|
40
|
-
{matchingRecruiter && (
|
|
41
|
-
<RecruiterDetails
|
|
42
|
-
contactNav={
|
|
43
|
-
<RecruiterContactNav>
|
|
44
|
-
{matchingRecruiter?.mobilePhone && (
|
|
45
|
-
<RecruiterContactNav.Button
|
|
46
|
-
href={`tel:${matchingRecruiter.mobilePhone}`}
|
|
47
|
-
title={`Call ${matchingRecruiter.mobilePhone}`}
|
|
48
|
-
icon="fluent:phone-32-regular"
|
|
49
|
-
/>
|
|
50
|
-
)}
|
|
51
|
-
{matchingRecruiter?.email && (
|
|
52
|
-
<RecruiterContactNav.Button
|
|
53
|
-
href={`mailto:${matchingRecruiter.email}`}
|
|
54
|
-
title={`email ${matchingRecruiter.email}`}
|
|
55
|
-
icon="bi:envelope-at"
|
|
56
|
-
/>
|
|
57
|
-
)}
|
|
58
|
-
{matchingRecruiter?.linkedIn && (
|
|
59
|
-
<RecruiterContactNav.Button
|
|
60
|
-
href={matchingRecruiter.linkedIn}
|
|
61
|
-
title="LinkedIn"
|
|
62
|
-
icon="ant-design:linkedin-outlined"
|
|
63
|
-
/>
|
|
64
|
-
)}
|
|
65
|
-
</RecruiterContactNav>
|
|
66
|
-
}
|
|
67
|
-
>
|
|
68
|
-
{matchingRecruiter?.firstName || matchingRecruiter?.lastName && (
|
|
69
|
-
<RecruiterDetails.Title>
|
|
70
|
-
{`${matchingRecruiter?.firstName} ${matchingRecruiter?.lastName}`}
|
|
71
|
-
</RecruiterDetails.Title>
|
|
72
|
-
)}
|
|
73
|
-
{item.details?.recruiter?.title && (
|
|
74
|
-
<RecruiterDetails.Text>
|
|
75
|
-
{item.details.recruiter.title}
|
|
76
|
-
</RecruiterDetails.Text>
|
|
77
|
-
)}
|
|
78
|
-
</RecruiterDetails>
|
|
79
|
-
)} */}
|
|
80
|
-
<ApplyButtonGroup
|
|
81
|
-
useDetailsPostMessage={useDetailsPostMessage}
|
|
82
|
-
navigateToDetails={navigateToDetails}
|
|
83
|
-
navigateToEasyApply={navigateToEasyApply}
|
|
84
|
-
Link={Link}
|
|
85
|
-
linkFormat={linkFormat}
|
|
86
|
-
includeDialog={useApplyDialog}
|
|
87
|
-
internalApplyLink={internalApplyLink}
|
|
88
|
-
companyName={companyName}
|
|
89
|
-
applyUrl={item?.applyUrl}
|
|
90
|
-
itemId={item.id}
|
|
91
|
-
item={item}
|
|
92
|
-
trackEvent={trackEvent}
|
|
93
|
-
eventTypes={eventTypes}
|
|
94
|
-
detailsUrl={item.useClientJobUrl ? item?.detailsUrl : `${jobsDomain}${item.id}`}
|
|
95
|
-
className={`
|
|
96
|
-
lg:hc-w-auto hc-order-first lg:hc-order-last md:hc-self-center hc-py-2 lg:hc-p-0 lg:hc-mb-0 hc-border-b lg:hc-border-none hc-border-uiAccent/20
|
|
97
|
-
${matchingRecruiter ? "lg:hc-flex-col lg:hc-w-auto" : "lg:hc-flex-row"}
|
|
98
|
-
`}
|
|
99
|
-
/>
|
|
100
|
-
</div>
|
|
101
|
-
<div className="hc-w-full">
|
|
102
|
-
<CommutePill travelTime={travelTime} className="hc-ml-0" />
|
|
103
|
-
</div>
|
|
104
|
-
</div>
|
|
105
|
-
);
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
export default ListingDetails;
|
|
109
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import RecruiterHeadshot from '~/components/modules/list/item-expand-card/recruiter-headshot';
|
|
3
|
+
import RecruiterDetails from '~/components/modules/list/item-expand-card/recruiter-details';
|
|
4
|
+
import RecruiterContactNav from '~/components/modules/list/item-expand-card/recruiter-contact-nav';
|
|
5
|
+
import ApplyButtonGroup from '~/components/modules/buttons/button-group-apply';
|
|
6
|
+
import CommutePill from '~/components/modules/buttons/commute-pill';
|
|
7
|
+
|
|
8
|
+
const ListingDetails = ({
|
|
9
|
+
item,
|
|
10
|
+
recruiter,
|
|
11
|
+
travelTime,
|
|
12
|
+
useDetailsPostMessage,
|
|
13
|
+
navigateToDetails,
|
|
14
|
+
navigateToEasyApply,
|
|
15
|
+
Link,
|
|
16
|
+
linkFormat,
|
|
17
|
+
useApplyDialog,
|
|
18
|
+
internalApplyLink,
|
|
19
|
+
companyName,
|
|
20
|
+
jobsDomain,
|
|
21
|
+
trackEvent,
|
|
22
|
+
eventTypes
|
|
23
|
+
}) => {
|
|
24
|
+
if (!item) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
let matchingRecruiter = recruiter;
|
|
29
|
+
console.log(matchingRecruiter);
|
|
30
|
+
return (
|
|
31
|
+
<div className="hc-w-full">
|
|
32
|
+
<div className="hc-grow hc-flex hc-flex-wrap hc-items-center hc-gap-4">
|
|
33
|
+
{/* {matchingRecruiter?.headshot && (
|
|
34
|
+
<RecruiterHeadshot
|
|
35
|
+
image={`${matchingRecruiter.headshot.includes("http") ? '' :'https:'}${matchingRecruiter.headshot}`}
|
|
36
|
+
alt={matchingRecruiter?.firstName}
|
|
37
|
+
className="hc-bg-gray-300"
|
|
38
|
+
/>
|
|
39
|
+
)}
|
|
40
|
+
{matchingRecruiter && (
|
|
41
|
+
<RecruiterDetails
|
|
42
|
+
contactNav={
|
|
43
|
+
<RecruiterContactNav>
|
|
44
|
+
{matchingRecruiter?.mobilePhone && (
|
|
45
|
+
<RecruiterContactNav.Button
|
|
46
|
+
href={`tel:${matchingRecruiter.mobilePhone}`}
|
|
47
|
+
title={`Call ${matchingRecruiter.mobilePhone}`}
|
|
48
|
+
icon="fluent:phone-32-regular"
|
|
49
|
+
/>
|
|
50
|
+
)}
|
|
51
|
+
{matchingRecruiter?.email && (
|
|
52
|
+
<RecruiterContactNav.Button
|
|
53
|
+
href={`mailto:${matchingRecruiter.email}`}
|
|
54
|
+
title={`email ${matchingRecruiter.email}`}
|
|
55
|
+
icon="bi:envelope-at"
|
|
56
|
+
/>
|
|
57
|
+
)}
|
|
58
|
+
{matchingRecruiter?.linkedIn && (
|
|
59
|
+
<RecruiterContactNav.Button
|
|
60
|
+
href={matchingRecruiter.linkedIn}
|
|
61
|
+
title="LinkedIn"
|
|
62
|
+
icon="ant-design:linkedin-outlined"
|
|
63
|
+
/>
|
|
64
|
+
)}
|
|
65
|
+
</RecruiterContactNav>
|
|
66
|
+
}
|
|
67
|
+
>
|
|
68
|
+
{matchingRecruiter?.firstName || matchingRecruiter?.lastName && (
|
|
69
|
+
<RecruiterDetails.Title>
|
|
70
|
+
{`${matchingRecruiter?.firstName} ${matchingRecruiter?.lastName}`}
|
|
71
|
+
</RecruiterDetails.Title>
|
|
72
|
+
)}
|
|
73
|
+
{item.details?.recruiter?.title && (
|
|
74
|
+
<RecruiterDetails.Text>
|
|
75
|
+
{item.details.recruiter.title}
|
|
76
|
+
</RecruiterDetails.Text>
|
|
77
|
+
)}
|
|
78
|
+
</RecruiterDetails>
|
|
79
|
+
)} */}
|
|
80
|
+
<ApplyButtonGroup
|
|
81
|
+
useDetailsPostMessage={useDetailsPostMessage}
|
|
82
|
+
navigateToDetails={navigateToDetails}
|
|
83
|
+
navigateToEasyApply={navigateToEasyApply}
|
|
84
|
+
Link={Link}
|
|
85
|
+
linkFormat={linkFormat}
|
|
86
|
+
includeDialog={useApplyDialog}
|
|
87
|
+
internalApplyLink={internalApplyLink}
|
|
88
|
+
companyName={companyName}
|
|
89
|
+
applyUrl={item?.applyUrl}
|
|
90
|
+
itemId={item.id}
|
|
91
|
+
item={item}
|
|
92
|
+
trackEvent={trackEvent}
|
|
93
|
+
eventTypes={eventTypes}
|
|
94
|
+
detailsUrl={item.useClientJobUrl ? item?.detailsUrl : `${jobsDomain}${item.id}`}
|
|
95
|
+
className={`
|
|
96
|
+
lg:hc-w-auto hc-order-first lg:hc-order-last md:hc-self-center hc-py-2 lg:hc-p-0 lg:hc-mb-0 hc-border-b lg:hc-border-none hc-border-uiAccent/20
|
|
97
|
+
${matchingRecruiter ? "lg:hc-flex-col lg:hc-w-auto" : "lg:hc-flex-row"}
|
|
98
|
+
`}
|
|
99
|
+
/>
|
|
100
|
+
</div>
|
|
101
|
+
<div className="hc-w-full">
|
|
102
|
+
<CommutePill travelTime={travelTime} className="hc-ml-0" />
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
);
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
export default ListingDetails;
|
|
109
|
+
|
package/src/util/mapUtil.js
CHANGED
|
@@ -74,6 +74,7 @@ export const adjustItemPositions = (itemsObj, closeItemPairs) => {
|
|
|
74
74
|
export const clusterOptions = (clusterGridSize, fillColor) => {
|
|
75
75
|
return {
|
|
76
76
|
gridSize: clusterGridSize,
|
|
77
|
+
maxZoom:15,
|
|
77
78
|
styles:[{
|
|
78
79
|
url: createSvgDataUri(fillColor),
|
|
79
80
|
textColor:'white',
|