@abcagency/hc-ui-components 1.3.92 → 1.3.93
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/HireControlMap.js +1 -1
- package/dist/components/containers/filter/commute-container.js +1 -1
- package/dist/components/containers/maps/map-container.js +2 -1
- package/dist/components/containers/maps/map-container.js.map +1 -1
- package/dist/components/containers/maps/map-marker-container.js +1 -1
- package/dist/components/modules/accordions/default.js +2 -2
- package/dist/components/modules/buttons/button-group-apply.js +1 -1
- package/dist/components/modules/buttons/default.js +2 -2
- package/dist/components/modules/cards/default.js +2 -2
- package/dist/components/modules/dialogs/apply-dialog.js +1 -1
- package/dist/components/modules/filter/commute.js +2 -2
- package/dist/components/modules/filter/index.js +9 -3
- package/dist/components/modules/filter/index.js.map +1 -1
- package/dist/components/modules/filter/sort.js +2 -2
- package/dist/components/modules/grid.js +1 -1
- package/dist/components/modules/icon.js +1 -1
- package/dist/components/modules/list/field-mapper-mobile.js.map +1 -1
- package/dist/components/modules/list/header.js +1 -1
- package/dist/components/modules/list/item-expand-card/index.js +1 -1
- package/dist/components/modules/maps/map-list.js +0 -1
- package/dist/components/modules/maps/map-list.js.map +1 -1
- package/dist/components/modules/maps/map-marker.js +1 -1
- package/dist/components/modules/maps/map.js +1 -1
- package/dist/components/modules/maps/place-marker.js +1 -1
- package/dist/components/modules/maps/tabs.js +1 -1
- package/dist/styles/index.css +1 -1
- package/dist/util/filterUtil.js +1 -1
- package/package.json +1 -1
- package/src/components/containers/maps/map-container.js +1 -0
- package/src/components/modules/filter/index.js +14 -9
- package/src/components/modules/list/field-mapper-mobile.jsx +84 -84
- package/src/components/modules/maps/map-list.js +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { extends as _extends, slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default, { useState, useEffect } from 'react';
|
|
3
|
-
import { useLoadScript } from '../node_modules/@react-google-maps/api/dist/esm.js';
|
|
3
|
+
import { useLoadScript } from '../packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js';
|
|
4
4
|
import Grid from './modules/grid.js';
|
|
5
5
|
import FilterContainer from './containers/filter/filter-container.js';
|
|
6
6
|
import MapListContainer from './containers/maps/map-list-container.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default, { useState, useRef, useEffect } from 'react';
|
|
3
|
-
import usePlacesAutocomplete, { getLatLng, getGeocode } from '../../../node_modules/use-places-autocomplete/dist/index.esm.js';
|
|
3
|
+
import usePlacesAutocomplete, { getLatLng, getGeocode } from '../../../packages/hc-ui-components/node_modules/use-places-autocomplete/dist/index.esm.js';
|
|
4
4
|
import { useMapList } from '../../../contexts/mapListContext.js';
|
|
5
5
|
import { useTrackEvent } from '../../../contexts/trackEventContext.js';
|
|
6
6
|
import { getStorageItem } from '../../../util/localStorageUtil.js';
|
|
@@ -7,7 +7,7 @@ import { useMap } from '../../../contexts/mapContext.js';
|
|
|
7
7
|
import { useMapList } from '../../../contexts/mapListContext.js';
|
|
8
8
|
import { pinIcon, markerIcon, markerIconSelected } from '../../../util/mapIconUtil.js';
|
|
9
9
|
import Map from '../../modules/maps/map.js';
|
|
10
|
-
import { MarkerClustererF, Marker } from '../../../node_modules/@react-google-maps/api/dist/esm.js';
|
|
10
|
+
import { MarkerClustererF, Marker } from '../../../packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js';
|
|
11
11
|
import { clusterOptions } from '../../../util/mapUtil.js';
|
|
12
12
|
|
|
13
13
|
var MapContainer = function MapContainer(_ref) {
|
|
@@ -223,6 +223,7 @@ var MapContainer = function MapContainer(_ref) {
|
|
|
223
223
|
var mapItemsKey = mapItems.map(function (item) {
|
|
224
224
|
return item.id;
|
|
225
225
|
}).join("-");
|
|
226
|
+
console.log(location);
|
|
226
227
|
return /*#__PURE__*/React__default.createElement(Map, {
|
|
227
228
|
zoom: zoom,
|
|
228
229
|
center: center,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-container.js","sources":["../../../../src/components/containers/maps/map-container.js"],"sourcesContent":["\"use client\";\n\nimport React, { useEffect, useRef, useState } 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, Marker } from \"@react-google-maps/api\";\nimport { clusterOptions } from \"~/util/mapUtil\";\n\nconst MapContainer = ({ markerConfigs, infoWindowClasses, clusterGridSize = 60 }) => {\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\tdefaultZoomOverride\n\t} = useMap();\n\n\tconst {\n\t\tmapItems: oldMapItems,\n\t\tfilteredListings,\n\t\tselectedFilters,\n\t\tsetSelectedFilters,\n\t\tsetQuery,\n\t\tsiteConfig\n\t} = useMapList();\n\tconst [mapItems, setMapItems] = useState(null);\n\tconst [markersToHideFromBounds, setMarkersToHideFromBounds] = useState([]);\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,\n\t\tadditionalMapMarkers\n\t} = 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\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 (!oldMapItems || oldMapItems.length === 0) return;\n\n\t\tif (!siteConfig.defaultMapState || mapInteracted || selectedFilters?.state || selectedFilters?.city) {\n\t\t\tsetMapItems(oldMapItems);\n\t\t\tsetMarkersToHideFromBounds([]);\n\t\t\treturn;\n\t\t}\n\n\t\tconst markersToHide = oldMapItems\n\t\t\t.filter(x => x.address.state !== siteConfig.defaultMapState)\n\t\t\t.map(item => item.id);\n\n\t\tsetMarkersToHideFromBounds(markersToHide);\n\t\tsetMapItems(oldMapItems);\n\t}, [oldMapItems, selectedFilters, siteConfig, mapInteracted]);\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 && defaultZoomOverride && !mapInteracted && !location) {\n\t\t\tmapRef.current.setZoom(defaultZoomOverride);\n\t\t}\n\t}, [mapInteracted]);\n\n\tuseEffect(() => {\n\t\tif (mapRef.current) {\n\t\t\tconst mapInstance = mapRef.current;\n\t\t\tconst dragStartListener = mapInstance.addListener(\"dragstart\", () => {\n\t\t\t\tsetMapInteracted(true);\n\t\t\t\tsetMarkersToHideFromBounds([]);\n\t\t\t});\n\t\t\tconst mouseDownListener = mapInstance.addListener(\"mousedown\", () => {\n\t\t\t\tsetMapInteracted(true);\n\t\t\t\tsetMarkersToHideFromBounds([]);\n\t\t\t});\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 && !mapInteracted) {\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 && !mapInteracted) {\n\t\t\tconst currZoom = mapRef.current.zoom;\n\t\t\tconst 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(new google.maps.LatLng(location.latitude, location.longitude));\n\t\tif (mapRef.current) {\n\t\t\tconst 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\n\t\t\tmapItems.forEach(item => {\n\t\t\t\tif (!mapInteracted && markersToHideFromBounds.includes(item.id)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tbounds.extend(new google.maps.LatLng(item.latitude, item.longitude));\n\t\t\t});\n\n\t\t\tif (siteConfig.optionalShowLocationClusterConfig) {\n\t\t\t\tconst configLocation = new google.maps.LatLng(\n\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.latitude,\n\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.longitude\n\t\t\t\t);\n\t\t\t\tmap.panTo(configLocation);\n\t\t\t\tbounds.extend(\n\t\t\t\t\tnew google.maps.LatLng(\n\t\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.latitude,\n\t\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.longitude\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (!map) return;\n\t\t\tconst currentCenter = map.getCenter();\n\t\t\tmap.fitBounds(bounds);\n\t\t\tconst newCenter = bounds.getCenter();\n\t\t\tif (currentCenter && newCenter) {\n\t\t\t\tmap.panTo(newCenter);\n\t\t\t}\n\t\t}\n\t\tif (defaultZoomOverride && !mapInteracted && !location) {\n\t\t\tmapRef.current.setZoom(defaultZoomOverride);\n\t\t} else if (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\tsetMarkersToHideFromBounds([]);\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(new google.maps.LatLng(location.latitude, location.longitude));\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\tconst onClusterClick = cluster => {\n\t\tif (\n\t\t\t!siteConfig.optionalShowLocationClusterConfig ||\n mapRef.current.zoom > siteConfig.optionalShowLocationClusterConfig.showForZoomLevelLessThan\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!cluster || typeof cluster.getMarkers !== \"function\") {\n\t\t\tconsole.error(\"Cluster object or getMarkers method not available.\");\n\t\t\treturn;\n\t\t}\n\n\t\tconst markers = cluster.getMarkers();\n\n\t\tif (!markers || markers.length === 0) {\n\t\t\tconsole.error(\"No markers found in the cluster.\");\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tconst bounds = new window.google.maps.LatLngBounds();\n\n\t\t\tmarkers.forEach(marker => {\n\t\t\t\tbounds.extend(marker.getPosition());\n\t\t\t});\n\t\t\tconst clusterCenter = bounds.getCenter();\n\n\t\t\tconst configLat = siteConfig.optionalShowLocationClusterConfig.latitude;\n\t\t\tconst configLng = siteConfig.optionalShowLocationClusterConfig.longitude;\n\n\t\t\tconst latDiff = clusterCenter.lat() - configLat;\n\t\t\tconst lngDiff = clusterCenter.lng() - configLng;\n\t\t\tconst distance = Math.sqrt(latDiff * latDiff + lngDiff * lngDiff);\n\n\t\t\tconst distanceThreshold = 1;\n\t\t\tif (distance <= distanceThreshold) {\n\t\t\t\tbounds.extend(new google.maps.LatLng(configLat, configLng));\n\t\t\t}\n\n\t\t\tif (mapRef.current) {\n\t\t\t\tmapRef.current.fitBounds(bounds);\n\t\t\t}\n\t\t}, 300);\n\t};\n\tif (!mapItems) {\n\t\treturn null;\n\t}\n\tconst mapItemsKey = mapItems.map(item => item.id).join(\"-\");\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\n\t\t\t\tkey={mapItemsKey}\n\t\t\t\tcalculator={markers => {\n\t\t\t\t\tconst totalCount = markers.reduce((sum, marker) => sum + (marker.get(\"count\") || 1), 0);\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttext: totalCount.toString(),\n\t\t\t\t\t\tindex: Math.min(5, Math.floor(totalCount / 10))\n\t\t\t\t\t};\n\t\t\t\t}}\n\t\t\t\toptions={{\n\t\t\t\t\t...clusterOptions(clusterGridSize, markerConfigs.fillColor)\n\t\t\t\t}}\n\t\t\t\tonClick={onClusterClick}\n\t\t\t>\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\tconst markerCount = Object.values(item.items).length;\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<MapMarker\n\t\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\t\titem={item}\n\t\t\t\t\t\t\t\t\tselectedLocation={location}\n\t\t\t\t\t\t\t\t\tmarkerRefs={markerRefs}\n\t\t\t\t\t\t\t\t\tinfoWindowClasses={infoWindowClasses}\n\t\t\t\t\t\t\t\t\tsetSelectedLocation={setLocation}\n\t\t\t\t\t\t\t\t\tmarkerClickHandler={markerClickHandler}\n\t\t\t\t\t\t\t\t\tclusterer={clusterer}\n\t\t\t\t\t\t\t\t\tmarkerIcon={markerIcon(markerConfigs, markerCount)}\n\t\t\t\t\t\t\t\t\tmarkerIconSelected={markerIconSelected(markerConfigs, markerCount)}\n\t\t\t\t\t\t\t\t\tsetMapInteracted={setMapInteracted}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\n\t\t\t\t\t\t{additionalMapMarkers &&\n additionalMapMarkers.map(\n \t(marker, index) =>\n \t\tcurrentZoom >= marker.minZoom &&\n currentZoom <= marker.maxZoom && (\n \t\t\t<Marker\n \t\t\t\tkey={`marker-${marker.title}-${index}`}\n \t\t\t\tposition={marker.position}\n \t\t\t\ttitle={marker.title}\n \t\t\t\ticon={{\n \t\t\t\t\turl: marker.iconUrl,\n \t\t\t\t\tscaledSize: new window.google.maps.Size(40, 40)\n \t\t\t\t}}\n \t\t\t/>\n \t\t)\n )}\n\n\t\t\t\t\t\t{poiMarkers &&\n poiMarkers.markers.map((marker, index) => (\n \t<PlaceMarker\n \t\tkey={`marker-${marker.title}-${index}`}\n \t\tmarker={marker}\n \t\tindex={index}\n \t\tselectedPlaceMarker={selectedPlaceMarker}\n \t\tplacesWindow={placesWindow}\n \t\tsetPlacesWindow={setPlacesWindow}\n \t\tsetSelectedPlaceMarker={setSelectedPlaceMarker}\n \t/>\n ))}\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\n"],"names":["MapContainer","_ref","markerConfigs","infoWindowClasses","_ref$clusterGridSize","clusterGridSize","_useMap","useMap","location","zoom","center","selectLocationEntity","setLocation","mapInteracted","setMapInteracted","defaultZoomOverride","_useMapList","useMapList","oldMapItems","mapItems","filteredListings","selectedFilters","setSelectedFilters","setQuery","siteConfig","_useState","useState","_useState2","_slicedToArray","setMapItems","_useState3","_useState4","markersToHideFromBounds","setMarkersToHideFromBounds","mapRef","useRef","markerRefs","mapContainerRef","_usePlaces","usePlaces","poiMarkers","setCurrentCenter","currentCenter","setCurrentZoom","currentZoom","selectedPlaceMarker","setSelectedPlaceMarker","placesWindow","setPlacesWindow","additionalMapMarkers","onIdle","current","newCenter","getCenter","toJSON","newZoom","useEffect","length","defaultMapState","state","city","markersToHide","filter","x","address","map","item","id","handleScroll","mapContainerRefCurrent","addEventListener","removeEventListener","setZoom","mapInstance","dragStartListener","addListener","mouseDownListener","google","maps","event","removeListener","fitBounds","currZoom","setZoomVal","panTo","LatLng","latitude","longitude","overload","arguments","undefined","bounds","window","LatLngBounds","forEach","includes","extend","optionalShowLocationClusterConfig","configLocation","markerClickHandler","mapLocation","onLoad","pinIconUrl","pinIcon","fillColor","strokeColor","onClusterClick","cluster","showForZoomLevelLessThan","getMarkers","console","error","markers","setTimeout","marker","getPosition","clusterCenter","configLat","configLng","latDiff","lat","lngDiff","lng","distance","Math","sqrt","distanceThreshold","mapItemsKey","join","React","createElement","Map","filteredListingsLength","MarkerClustererF","key","calculator","totalCount","reduce","sum","get","text","toString","index","min","floor","options","_objectSpread","clusterOptions","onClick","clusterer","Fragment","markerCount","Object","values","items","MapMarker","selectedLocation","setSelectedLocation","markerIcon","markerIconSelected","minZoom","maxZoom","Marker","concat","title","position","icon","url","iconUrl","scaledSize","Size","PlaceMarker"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"map-container.js","sources":["../../../../src/components/containers/maps/map-container.js"],"sourcesContent":["\"use client\";\n\nimport React, { useEffect, useRef, useState } 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, Marker } from \"@react-google-maps/api\";\nimport { clusterOptions } from \"~/util/mapUtil\";\n\nconst MapContainer = ({ markerConfigs, infoWindowClasses, clusterGridSize = 60 }) => {\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\tdefaultZoomOverride\n\t} = useMap();\n\n\tconst {\n\t\tmapItems: oldMapItems,\n\t\tfilteredListings,\n\t\tselectedFilters,\n\t\tsetSelectedFilters,\n\t\tsetQuery,\n\t\tsiteConfig\n\t} = useMapList();\n\tconst [mapItems, setMapItems] = useState(null);\n\tconst [markersToHideFromBounds, setMarkersToHideFromBounds] = useState([]);\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,\n\t\tadditionalMapMarkers\n\t} = 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\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 (!oldMapItems || oldMapItems.length === 0) return;\n\n\t\tif (!siteConfig.defaultMapState || mapInteracted || selectedFilters?.state || selectedFilters?.city) {\n\t\t\tsetMapItems(oldMapItems);\n\t\t\tsetMarkersToHideFromBounds([]);\n\t\t\treturn;\n\t\t}\n\n\t\tconst markersToHide = oldMapItems\n\t\t\t.filter(x => x.address.state !== siteConfig.defaultMapState)\n\t\t\t.map(item => item.id);\n\n\t\tsetMarkersToHideFromBounds(markersToHide);\n\t\tsetMapItems(oldMapItems);\n\t}, [oldMapItems, selectedFilters, siteConfig, mapInteracted]);\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 && defaultZoomOverride && !mapInteracted && !location) {\n\t\t\tmapRef.current.setZoom(defaultZoomOverride);\n\t\t}\n\t}, [mapInteracted]);\n\n\tuseEffect(() => {\n\t\tif (mapRef.current) {\n\t\t\tconst mapInstance = mapRef.current;\n\t\t\tconst dragStartListener = mapInstance.addListener(\"dragstart\", () => {\n\t\t\t\tsetMapInteracted(true);\n\t\t\t\tsetMarkersToHideFromBounds([]);\n\t\t\t});\n\t\t\tconst mouseDownListener = mapInstance.addListener(\"mousedown\", () => {\n\t\t\t\tsetMapInteracted(true);\n\t\t\t\tsetMarkersToHideFromBounds([]);\n\t\t\t});\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 && !mapInteracted) {\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 && !mapInteracted) {\n\t\t\tconst currZoom = mapRef.current.zoom;\n\t\t\tconst 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(new google.maps.LatLng(location.latitude, location.longitude));\n\t\tif (mapRef.current) {\n\t\t\tconst 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\n\t\t\tmapItems.forEach(item => {\n\t\t\t\tif (!mapInteracted && markersToHideFromBounds.includes(item.id)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tbounds.extend(new google.maps.LatLng(item.latitude, item.longitude));\n\t\t\t});\n\n\t\t\tif (siteConfig.optionalShowLocationClusterConfig) {\n\t\t\t\tconst configLocation = new google.maps.LatLng(\n\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.latitude,\n\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.longitude\n\t\t\t\t);\n\t\t\t\tmap.panTo(configLocation);\n\t\t\t\tbounds.extend(\n\t\t\t\t\tnew google.maps.LatLng(\n\t\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.latitude,\n\t\t\t\t\t\tsiteConfig.optionalShowLocationClusterConfig.longitude\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (!map) return;\n\t\t\tconst currentCenter = map.getCenter();\n\t\t\tmap.fitBounds(bounds);\n\t\t\tconst newCenter = bounds.getCenter();\n\t\t\tif (currentCenter && newCenter) {\n\t\t\t\tmap.panTo(newCenter);\n\t\t\t}\n\t\t}\n\t\tif (defaultZoomOverride && !mapInteracted && !location) {\n\t\t\tmapRef.current.setZoom(defaultZoomOverride);\n\t\t} else if (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\tsetMarkersToHideFromBounds([]);\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(new google.maps.LatLng(location.latitude, location.longitude));\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\tconst onClusterClick = cluster => {\n\t\tif (\n\t\t\t!siteConfig.optionalShowLocationClusterConfig ||\n mapRef.current.zoom > siteConfig.optionalShowLocationClusterConfig.showForZoomLevelLessThan\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!cluster || typeof cluster.getMarkers !== \"function\") {\n\t\t\tconsole.error(\"Cluster object or getMarkers method not available.\");\n\t\t\treturn;\n\t\t}\n\n\t\tconst markers = cluster.getMarkers();\n\n\t\tif (!markers || markers.length === 0) {\n\t\t\tconsole.error(\"No markers found in the cluster.\");\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tconst bounds = new window.google.maps.LatLngBounds();\n\n\t\t\tmarkers.forEach(marker => {\n\t\t\t\tbounds.extend(marker.getPosition());\n\t\t\t});\n\t\t\tconst clusterCenter = bounds.getCenter();\n\n\t\t\tconst configLat = siteConfig.optionalShowLocationClusterConfig.latitude;\n\t\t\tconst configLng = siteConfig.optionalShowLocationClusterConfig.longitude;\n\n\t\t\tconst latDiff = clusterCenter.lat() - configLat;\n\t\t\tconst lngDiff = clusterCenter.lng() - configLng;\n\t\t\tconst distance = Math.sqrt(latDiff * latDiff + lngDiff * lngDiff);\n\n\t\t\tconst distanceThreshold = 1;\n\t\t\tif (distance <= distanceThreshold) {\n\t\t\t\tbounds.extend(new google.maps.LatLng(configLat, configLng));\n\t\t\t}\n\n\t\t\tif (mapRef.current) {\n\t\t\t\tmapRef.current.fitBounds(bounds);\n\t\t\t}\n\t\t}, 300);\n\t};\n\tif (!mapItems) {\n\t\treturn null;\n\t}\n\tconst mapItemsKey = mapItems.map(item => item.id).join(\"-\");\n\n\tconsole.log(location);\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\n\t\t\t\tkey={mapItemsKey}\n\t\t\t\tcalculator={markers => {\n\t\t\t\t\tconst totalCount = markers.reduce((sum, marker) => sum + (marker.get(\"count\") || 1), 0);\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttext: totalCount.toString(),\n\t\t\t\t\t\tindex: Math.min(5, Math.floor(totalCount / 10))\n\t\t\t\t\t};\n\t\t\t\t}}\n\t\t\t\toptions={{\n\t\t\t\t\t...clusterOptions(clusterGridSize, markerConfigs.fillColor)\n\t\t\t\t}}\n\t\t\t\tonClick={onClusterClick}\n\t\t\t>\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\tconst markerCount = Object.values(item.items).length;\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<MapMarker\n\t\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\t\titem={item}\n\t\t\t\t\t\t\t\t\tselectedLocation={location}\n\t\t\t\t\t\t\t\t\tmarkerRefs={markerRefs}\n\t\t\t\t\t\t\t\t\tinfoWindowClasses={infoWindowClasses}\n\t\t\t\t\t\t\t\t\tsetSelectedLocation={setLocation}\n\t\t\t\t\t\t\t\t\tmarkerClickHandler={markerClickHandler}\n\t\t\t\t\t\t\t\t\tclusterer={clusterer}\n\t\t\t\t\t\t\t\t\tmarkerIcon={markerIcon(markerConfigs, markerCount)}\n\t\t\t\t\t\t\t\t\tmarkerIconSelected={markerIconSelected(markerConfigs, markerCount)}\n\t\t\t\t\t\t\t\t\tsetMapInteracted={setMapInteracted}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\n\t\t\t\t\t\t{additionalMapMarkers &&\n additionalMapMarkers.map(\n \t(marker, index) =>\n \t\tcurrentZoom >= marker.minZoom &&\n currentZoom <= marker.maxZoom && (\n \t\t\t<Marker\n \t\t\t\tkey={`marker-${marker.title}-${index}`}\n \t\t\t\tposition={marker.position}\n \t\t\t\ttitle={marker.title}\n \t\t\t\ticon={{\n \t\t\t\t\turl: marker.iconUrl,\n \t\t\t\t\tscaledSize: new window.google.maps.Size(40, 40)\n \t\t\t\t}}\n \t\t\t/>\n \t\t)\n )}\n\n\t\t\t\t\t\t{poiMarkers &&\n poiMarkers.markers.map((marker, index) => (\n \t<PlaceMarker\n \t\tkey={`marker-${marker.title}-${index}`}\n \t\tmarker={marker}\n \t\tindex={index}\n \t\tselectedPlaceMarker={selectedPlaceMarker}\n \t\tplacesWindow={placesWindow}\n \t\tsetPlacesWindow={setPlacesWindow}\n \t\tsetSelectedPlaceMarker={setSelectedPlaceMarker}\n \t/>\n ))}\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\n"],"names":["MapContainer","_ref","markerConfigs","infoWindowClasses","_ref$clusterGridSize","clusterGridSize","_useMap","useMap","location","zoom","center","selectLocationEntity","setLocation","mapInteracted","setMapInteracted","defaultZoomOverride","_useMapList","useMapList","oldMapItems","mapItems","filteredListings","selectedFilters","setSelectedFilters","setQuery","siteConfig","_useState","useState","_useState2","_slicedToArray","setMapItems","_useState3","_useState4","markersToHideFromBounds","setMarkersToHideFromBounds","mapRef","useRef","markerRefs","mapContainerRef","_usePlaces","usePlaces","poiMarkers","setCurrentCenter","currentCenter","setCurrentZoom","currentZoom","selectedPlaceMarker","setSelectedPlaceMarker","placesWindow","setPlacesWindow","additionalMapMarkers","onIdle","current","newCenter","getCenter","toJSON","newZoom","useEffect","length","defaultMapState","state","city","markersToHide","filter","x","address","map","item","id","handleScroll","mapContainerRefCurrent","addEventListener","removeEventListener","setZoom","mapInstance","dragStartListener","addListener","mouseDownListener","google","maps","event","removeListener","fitBounds","currZoom","setZoomVal","panTo","LatLng","latitude","longitude","overload","arguments","undefined","bounds","window","LatLngBounds","forEach","includes","extend","optionalShowLocationClusterConfig","configLocation","markerClickHandler","mapLocation","onLoad","pinIconUrl","pinIcon","fillColor","strokeColor","onClusterClick","cluster","showForZoomLevelLessThan","getMarkers","console","error","markers","setTimeout","marker","getPosition","clusterCenter","configLat","configLng","latDiff","lat","lngDiff","lng","distance","Math","sqrt","distanceThreshold","mapItemsKey","join","log","React","createElement","Map","filteredListingsLength","MarkerClustererF","key","calculator","totalCount","reduce","sum","get","text","toString","index","min","floor","options","_objectSpread","clusterOptions","onClick","clusterer","Fragment","markerCount","Object","values","items","MapMarker","selectedLocation","setSelectedLocation","markerIcon","markerIconSelected","minZoom","maxZoom","Marker","concat","title","position","icon","url","iconUrl","scaledSize","Size","PlaceMarker"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React__default, { useRef, useEffect } from 'react';
|
|
2
2
|
import MapMarker from '../../modules/maps/map-marker.js';
|
|
3
|
-
import { InfoWindow } from '../../../node_modules/@react-google-maps/api/dist/esm.js';
|
|
3
|
+
import { InfoWindow } from '../../../packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js';
|
|
4
4
|
import CardInfoWindow from '../../modules/maps/info-window-card.js';
|
|
5
5
|
import InfoWindowContentContainer from './info-window-content-container.js';
|
|
6
6
|
import { useMap } from '../../../contexts/mapContext.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default, { forwardRef } from 'react';
|
|
3
|
-
import { Root as Root2, Item, Header, Trigger as Trigger2, Content as Content2 } from '../../../node_modules/@radix-ui/react-accordion/dist/index.js';
|
|
4
|
-
import { twMerge } from '../../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { Root as Root2, Item, Header, Trigger as Trigger2, Content as Content2 } from '../../../packages/hc-ui-components/node_modules/@radix-ui/react-accordion/dist/index.js';
|
|
4
|
+
import { twMerge } from '../../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
5
5
|
import IconContained from '../icon.js';
|
|
6
6
|
|
|
7
7
|
var _excluded = ["id", "children", "className"],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { taggedTemplateLiteral as _taggedTemplateLiteral } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { twMerge } from '../../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { twMerge } from '../../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
4
4
|
import Button from './default.js';
|
|
5
5
|
import ApplyDialog from '../dialogs/apply-dialog.js';
|
|
6
6
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default, { forwardRef } from 'react';
|
|
3
|
-
import { Link } from '../../../node_modules/react-router-dom/dist/index.js';
|
|
4
|
-
import { twMerge } from '../../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { Link } from '../../../packages/hc-ui-components/node_modules/react-router-dom/dist/index.js';
|
|
4
|
+
import { twMerge } from '../../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
5
5
|
import IconContained from '../icon.js';
|
|
6
6
|
|
|
7
7
|
var _excluded = ["children", "href", "className", "size", "variant", "isBlock", "hasUnderline", "target", "execOnClick", "isIframe", "iframeMsgType"],
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default, { forwardRef } from 'react';
|
|
3
|
-
import { Link } from '../../../node_modules/react-router-dom/dist/index.js';
|
|
4
|
-
import { twMerge } from '../../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { Link } from '../../../packages/hc-ui-components/node_modules/react-router-dom/dist/index.js';
|
|
4
|
+
import { twMerge } from '../../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
5
5
|
|
|
6
6
|
var _excluded = ["as", "className", "hasShadow", "image", "body", "children", "footer"],
|
|
7
7
|
_excluded2 = ["as", "href", "className", "hasShadow", "image", "body", "children", "footer"],
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
|
-
import { Root, Trigger, Portal, Overlay, Content, Title, Description, Close } from '../../../node_modules/@radix-ui/react-dialog/dist/index.js';
|
|
2
|
+
import { Root, Trigger, Portal, Overlay, Content, Title, Description, Close } from '../../../packages/hc-ui-components/node_modules/@radix-ui/react-dialog/dist/index.js';
|
|
3
3
|
import Button from '../buttons/default.js';
|
|
4
4
|
import IconContained from '../icon.js';
|
|
5
5
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React__default, { Fragment } from 'react';
|
|
2
2
|
import Button from '../buttons/default.js';
|
|
3
3
|
import IconContained from '../icon.js';
|
|
4
|
-
import { Combobox as qt } from '../../../node_modules/@headlessui/react/dist/components/combobox/combobox.js';
|
|
5
|
-
import { Transition as qe } from '../../../node_modules/@headlessui/react/dist/components/transitions/transition.js';
|
|
4
|
+
import { Combobox as qt } from '../../../packages/hc-ui-components/node_modules/@headlessui/react/dist/components/combobox/combobox.js';
|
|
5
|
+
import { Transition as qe } from '../../../packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/transition.js';
|
|
6
6
|
|
|
7
7
|
var FilterCommute = function FilterCommute(_ref) {
|
|
8
8
|
var className = _ref.className,
|
|
@@ -16,11 +16,17 @@ var Filter = function Filter(_ref) {
|
|
|
16
16
|
style: isDesktop ? style : undefined,
|
|
17
17
|
className: "\n /* Mobile layout */\n hc-relative hc-w-full hc-h-full hc-flex hc-flex-col\n\n /* Desktop layout */\n md:hc-block md:hc-max-h-[100%] md:hc-overflow-y-auto md:hc-overflow-x-auto\n\n ".concat(className !== null && className !== void 0 ? className : "", "\n ")
|
|
18
18
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
19
|
-
className: "hc-w-full hc-flex-grow hc-overflow-auto hc-pb-16"
|
|
19
|
+
className: "hc-w-full hc-flex-grow hc-overflow-auto hc-pb-16 md:hc-pb-0"
|
|
20
20
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
21
21
|
className: "hc-px-4 md:hc-pt-4 hc-space-y-4"
|
|
22
22
|
}, children)), /*#__PURE__*/React__default.createElement("div", {
|
|
23
|
-
className: "
|
|
23
|
+
className: "hc-hidden md:hc-flex md:hc-justify-start hc-px-4 hc-py-4"
|
|
24
|
+
}, /*#__PURE__*/React__default.createElement(Button.Btn, {
|
|
25
|
+
onClick: handleReset,
|
|
26
|
+
variant: "outline",
|
|
27
|
+
size: "sm"
|
|
28
|
+
}, "Reset All")), /*#__PURE__*/React__default.createElement("div", {
|
|
29
|
+
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-white hc-border-t hc-border-gray-200 hc-z-10 /* Hide on desktop */ md:hc-hidden "
|
|
24
30
|
}, /*#__PURE__*/React__default.createElement(Button.Btn, {
|
|
25
31
|
onClick: handleReset,
|
|
26
32
|
variant: "outline",
|
|
@@ -31,7 +37,7 @@ var Filter = function Filter(_ref) {
|
|
|
31
37
|
},
|
|
32
38
|
variant: "primary",
|
|
33
39
|
size: "sm",
|
|
34
|
-
className: "\n
|
|
40
|
+
className: "\n ".concat(hasActiveFilters ? "hc-opacity-0 hc-pointer-events-none" : "hc-opacity-100", "\n ")
|
|
35
41
|
}, /*#__PURE__*/React__default.createElement(Button.Body, null, /*#__PURE__*/React__default.createElement(Button.Icon, {
|
|
36
42
|
icon: "fluent:search-12-filled",
|
|
37
43
|
size: "hc-size-3.5"
|
|
@@ -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 from \"react\";\nconst Filter = ({\n\tclassName,\n\thasActiveFilters,\n\tfilteredListings,\n\tselectedFilters,\n\tsetMobileTab,\n\thandleReset,\n\tisDesktop = false,\n\tstyle,\n\tchildren\n}) => {\n\treturn (\n\t\t<div\n\t\t\tstyle={isDesktop ? style : undefined}\n\t\t\tclassName={`\n /* Mobile layout */\n hc-relative hc-w-full hc-h-full hc-flex hc-flex-col\n\n /* Desktop layout */\n md:hc-block md:hc-max-h-[100%] md:hc-overflow-y-auto md:hc-overflow-x-auto\n\n ${className ?? \"\"}\n `}\n\t\t>\n\t\t\t{/* Content area with scroll */}\n\t\t\t<div className=\"hc-w-full hc-flex-grow hc-overflow-auto hc-pb-16\">\n\t\t\t\t<div className=\"hc-px-4 md:hc-pt-4 hc-space-y-4\">{children}</div>\n\t\t\t</div>\n\n\t\t\t{/* Footer - fixed at bottom */}\n\t\t\t<div\n\t\t\t\tclassName=\"\n hc-w-full\n hc-absolute hc-bottom-0 hc-left-0 hc-right-0\n hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-px-4\n hc-bg-white
|
|
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 from \"react\";\nconst Filter = ({\n\tclassName,\n\thasActiveFilters,\n\tfilteredListings,\n\tselectedFilters,\n\tsetMobileTab,\n\thandleReset,\n\tisDesktop = false,\n\tstyle,\n\tchildren\n}) => {\n\treturn (\n\t\t<div\n\t\t\tstyle={isDesktop ? style : undefined}\n\t\t\tclassName={`\n /* Mobile layout */\n hc-relative hc-w-full hc-h-full hc-flex hc-flex-col\n\n /* Desktop layout */\n md:hc-block md:hc-max-h-[100%] md:hc-overflow-y-auto md:hc-overflow-x-auto\n\n ${className ?? \"\"}\n `}\n\t\t>\n\t\t\t{/* Content area with scroll */}\n\t\t\t<div className=\"hc-w-full hc-flex-grow hc-overflow-auto hc-pb-16 md:hc-pb-0\">\n\t\t\t\t<div className=\"hc-px-4 md:hc-pt-4 hc-space-y-4\">{children}</div>\n\t\t\t</div>\n\n\t\t\t{/* Desktop Reset Button - left aligned */}\n\t\t\t<div className=\"hc-hidden md:hc-flex md:hc-justify-start hc-px-4 hc-py-4\">\n\t\t\t\t<Button.Btn onClick={handleReset} variant=\"outline\" size=\"sm\">\n\t\t\t\t\tReset All\n\t\t\t\t</Button.Btn>\n\t\t\t</div>\n\n\t\t\t{/* Mobile Footer - fixed at bottom */}\n\t\t\t<div\n\t\t\t\tclassName=\"\n hc-w-full\n hc-absolute hc-bottom-0 hc-left-0 hc-right-0\n hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-px-4\n hc-bg-white hc-border-t hc-border-gray-200\n hc-z-10\n\n /* Hide on desktop */\n md:hc-hidden\n \"\n\t\t\t>\n\t\t\t\t<Button.Btn onClick={handleReset} variant=\"outline\" size=\"sm\">\n\t\t\t\t\tReset All\n\t\t\t\t</Button.Btn>\n\t\t\t\t{selectedFilters && Object.keys(selectedFilters).length > 0 && (\n\t\t\t\t\t<Button.Btn\n\t\t\t\t\t\tonClick={() => setMobileTab(\"listTab\")}\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\tclassName={`\n ${hasActiveFilters ? \"hc-opacity-0 hc-pointer-events-none\" : \"hc-opacity-100\"}\n `}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button.Body>\n\t\t\t\t\t\t\t<Button.Icon icon=\"fluent:search-12-filled\" size=\"hc-size-3.5\" />\n Show {filteredListings.length} Jobs\n\t\t\t\t\t\t</Button.Body>\n\t\t\t\t\t</Button.Btn>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default Filter;"],"names":["Filter","_ref","className","hasActiveFilters","filteredListings","selectedFilters","setMobileTab","handleReset","_ref$isDesktop","isDesktop","style","children","React","createElement","undefined","concat","Button","Btn","onClick","variant","size","Object","keys","length","Body","Icon","icon"],"mappings":";;;AAGA,IAAMA,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAUN;AAAA,EAAA,IATLC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,gBAAgB,GAAAF,IAAA,CAAhBE,gBAAgB;IAChBC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAChBC,eAAe,GAAAJ,IAAA,CAAfI,eAAe;IACfC,YAAY,GAAAL,IAAA,CAAZK,YAAY;IACZC,WAAW,GAAAN,IAAA,CAAXM,WAAW;IAAAC,cAAA,GAAAP,IAAA,CACXQ,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IACjBE,KAAK,GAAAT,IAAA,CAALS,KAAK;IACLC,QAAQ,GAAAV,IAAA,CAARU,QAAQ,CAAA;EAER,oBACCC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACCH,IAAAA,KAAK,EAAED,SAAS,GAAGC,KAAK,GAAGI,SAAU;IACrCZ,SAAS,EAAA,4NAAA,CAAAa,MAAA,CAOFb,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAE,EAAA,UAAA,CAAA;GAItBU,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKX,IAAAA,SAAS,EAAC,6DAAA;GACdU,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKX,IAAAA,SAAS,EAAC,iCAAA;AAAiC,GAAA,EAAES,QAAc,CAC5D,CAAC,eAGNC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKX,IAAAA,SAAS,EAAC,0DAAA;AAA0D,GAAA,eACxEU,cAAA,CAAAC,aAAA,CAACG,MAAM,CAACC,GAAG,EAAA;AAACC,IAAAA,OAAO,EAAEX,WAAY;AAACY,IAAAA,OAAO,EAAC,SAAS;AAACC,IAAAA,IAAI,EAAC,IAAA;AAAI,GAAA,EAAC,WAElD,CACR,CAAC,eAGNR,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACCX,IAAAA,SAAS,EAAC,oNAAA;AASP,GAAA,eAEHU,cAAA,CAAAC,aAAA,CAACG,MAAM,CAACC,GAAG,EAAA;AAACC,IAAAA,OAAO,EAAEX,WAAY;AAACY,IAAAA,OAAO,EAAC,SAAS;AAACC,IAAAA,IAAI,EAAC,IAAA;GAAK,EAAA,WAElD,CAAC,EACZf,eAAe,IAAIgB,MAAM,CAACC,IAAI,CAACjB,eAAe,CAAC,CAACkB,MAAM,GAAG,CAAC,iBAC1DX,cAAA,CAAAC,aAAA,CAACG,MAAM,CAACC,GAAG,EAAA;IACVC,OAAO,EAAE,SAAAA,OAAA,GAAA;MAAA,OAAMZ,YAAY,CAAC,SAAS,CAAC,CAAA;KAAC;AACvCa,IAAAA,OAAO,EAAC,SAAS;AACjBC,IAAAA,IAAI,EAAC,IAAI;AACTlB,IAAAA,SAAS,qBAAAa,MAAA,CACCZ,gBAAgB,GAAG,qCAAqC,GAAG,gBAAgB,EAAA,gBAAA,CAAA;AAC7E,GAAA,eAERS,cAAA,CAAAC,aAAA,CAACG,MAAM,CAACQ,IAAI,EACXZ,IAAAA,eAAAA,cAAA,CAAAC,aAAA,CAACG,MAAM,CAACS,IAAI,EAAA;AAACC,IAAAA,IAAI,EAAC,yBAAyB;AAACN,IAAAA,IAAI,EAAC,aAAA;GAAe,CAAC,EACrD,OAAA,EAAChB,gBAAgB,CAACmB,MAAM,EAAC,OACzB,CACF,CAET,CACD,CAAC,CAAA;AAER;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends, slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default, { forwardRef } from 'react';
|
|
3
|
-
import { Item, ItemText, ItemIndicator, Root as Root2, Trigger, Value, Icon, Portal, Content as Content2, ScrollUpButton, Viewport, Group, ScrollDownButton } from '../../../node_modules/@radix-ui/react-select/dist/index.js';
|
|
4
|
-
import { twMerge } from '../../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { Item, ItemText, ItemIndicator, Root as Root2, Trigger, Value, Icon, Portal, Content as Content2, ScrollUpButton, Viewport, Group, ScrollDownButton } from '../../../packages/hc-ui-components/node_modules/@radix-ui/react-select/dist/index.js';
|
|
4
|
+
import { twMerge } from '../../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
5
5
|
import IconContained from '../icon.js';
|
|
6
6
|
import Button from '../buttons/default.js';
|
|
7
7
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default, { forwardRef } from 'react';
|
|
3
|
-
import { twMerge } from '../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { twMerge } from '../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
4
4
|
|
|
5
5
|
var _excluded = ["as", "children", "className", "autoRows", "columns", "gap"];
|
|
6
6
|
var Grid = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { Icon } from '../../node_modules/@iconify/react/dist/iconify.js';
|
|
3
|
+
import { Icon } from '../../packages/hc-ui-components/node_modules/@iconify/react/dist/iconify.js';
|
|
4
4
|
|
|
5
5
|
var _excluded = ["className", "size", "icon", "iconClasses", "title"];
|
|
6
6
|
var IconContained = function IconContained(_ref) {
|
|
@@ -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';\n\nconst FieldMapperMobile = ({\n
|
|
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';\n\nconst FieldMapperMobile = ({\n\titem,\n\tfieldsShown,\n\tspecialFeatures,\n\thandleFavouriteClick,\n\tisFavorite,\n\tincludeFavorite = true\n}) => {\n\tconst specialFeaturePills = field => {\n\t\treturn field === 'position' && specialFeatures &&\n Object.entries(specialFeatures).map(([featureKey, featureLabel]) => {\n \treturn item.fields[featureKey] == 1 && (\n \t\t<PillWrapper key={featureKey}>{featureLabel}</PillWrapper>\n \t);\n });\n\t};\n\n\treturn (\n\t\t<Grid.Item className=\"md:hc-hidden\">\n\t\t\t{fieldsShown.includes(\"position\") &&\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\">{item.fields.position}</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'>{specialFeaturePills(\"position\", true)} </div>}\n </>\n\t\t\t}\n\n\t\t\t<ul className=\"hc-space-y-2 hc-text-xs\">\n\t\t\t\t{[\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"categoryClass\",\n\t\t\t\t\t\tname: \"categoryClass\",\n\t\t\t\t\t\ticon: \"icon-park-solid:tree-list\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"category\",\n\t\t\t\t\t\tname: \"Category\",\n\t\t\t\t\t\ticon: \"icon-park-solid:tree-list\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"schedule\",\n\t\t\t\t\t\tname: \"Schedule\",\n\t\t\t\t\t\ticon: \"gravity-ui:clock-fill\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"city\",\n\t\t\t\t\t\tname: \"Location\",\n\t\t\t\t\t\ticon: \"fluent:location-16-filled\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"state\",\n\t\t\t\t\t\tname: \"Location\",\n\t\t\t\t\t\ticon: \"fluent:location-16-filled\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"cityState\",\n\t\t\t\t\t\tname: \"Location\",\n\t\t\t\t\t\ticon: \"fluent:location-16-filled\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"travelTime\",\n\t\t\t\t\t\tname: \"Commute\",\n\t\t\t\t\t\ticon: \"ri:pin-distance-fill\"\n\t\t\t\t\t}\n\t\t\t\t].map(listItem => (\n\t\t\t\t\t(fieldsShown.includes(listItem.field) && item.fields[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{item.fields[listItem.field]}\n </li>\n\t\t\t\t))}\n\t\t\t</ul>\n\t\t</Grid.Item>\n\t);\n};\n\nexport default FieldMapperMobile;"],"names":["FieldMapperMobile","_ref","item","fieldsShown","specialFeatures","handleFavouriteClick","isFavorite","_ref$includeFavorite","includeFavorite","specialFeaturePills","field","Object","entries","map","_ref2","_ref3","_slicedToArray","featureKey","featureLabel","fields","React","createElement","PillWrapper","key","Grid","Item","className","includes","Fragment","position","Icon","icon","size","iconClasses","concat","onClick","e","name","listItem"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { taggedTemplateLiteral as _taggedTemplateLiteral } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { twMerge } from '../../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { twMerge } from '../../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
4
4
|
import Grid from '../grid.js';
|
|
5
5
|
import HeaderItem from './header-item.js';
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { twMerge } from '../../../../node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
3
|
+
import { twMerge } from '../../../../packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js';
|
|
4
4
|
|
|
5
5
|
var _excluded = ["className", "content"];
|
|
6
6
|
var CardItemExpand = function CardItemExpand(_ref) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-list.js","sources":["../../../../src/components/modules/maps/map-list.js"],"sourcesContent":["import React from 'react';\nimport Tabs from '~/components/modules/maps/tabs';\n
|
|
1
|
+
{"version":3,"file":"map-list.js","sources":["../../../../src/components/modules/maps/map-list.js"],"sourcesContent":["import React from 'react';\nimport Tabs from '~/components/modules/maps/tabs';\n\nconst MapList = ({ showMap, loading, list, map, filter, mapPosition, containerStyle }) => {\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tstyle={containerStyle}\n\t\t\t\tclassName={`\n\t\t\t\t\t${showMap === false ? \"md:hc-grid-rows-[100%]\" : \"md:hc-grid-rows-[50%_50%]\"}\n\t\t\t\t\thc-hidden md:hc-grid md:hc-pt-4 hc-overflow-hidden hc-relative bg-gray-100\n\t\t\t\t`}\n\t\t\t>\n\t\t\t\t{mapPosition && mapPosition === 'top' && showMap ? (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<div>{map}</div>\n\t\t\t\t\t\t<div>{list}</div>\n\t\t\t\t\t</>\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<div>{list}</div>\n\t\t\t\t\t\t<div>{showMap && map}</div>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\n\t\t\t</div>\n\t\t\t<div className=\"md:hc-hidden\">\n\t\t\t\t<Tabs\n\t\t\t\t\tshowMap={showMap}\n\t\t\t\t\tlist={list}\n\t\t\t\t\tmap={!loading && showMap && map}\n\t\t\t\t\tfilter={filter}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</>\n\t);\n};\n\nexport default MapList;\n"],"names":["MapList","_ref","showMap","loading","list","map","filter","mapPosition","containerStyle","React","createElement","Fragment","style","className","concat","Tabs"],"mappings":";;;AAGA,IAAMA,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAA6E;AAAA,EAAA,IAAvEC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IAAEC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IAAEC,GAAG,GAAAJ,IAAA,CAAHI,GAAG;IAAEC,MAAM,GAAAL,IAAA,CAANK,MAAM;IAAEC,WAAW,GAAAN,IAAA,CAAXM,WAAW;IAAEC,cAAc,GAAAP,IAAA,CAAdO,cAAc,CAAA;EAClF,oBACCC,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAE,QAAA,EAAA,IAAA,eACCF,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACCE,IAAAA,KAAK,EAAEJ,cAAe;IACtBK,SAAS,EAAA,cAAA,CAAAC,MAAA,CACNZ,OAAO,KAAK,KAAK,GAAG,wBAAwB,GAAG,2BAA2B,EAAA,kGAAA,CAAA;GAI5EK,EAAAA,WAAW,IAAIA,WAAW,KAAK,KAAK,IAAIL,OAAO,gBAC/CO,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAE,QAAA,EACCF,IAAAA,eAAAA,cAAA,CAAAC,aAAA,CAAML,KAAAA,EAAAA,IAAAA,EAAAA,GAAS,CAAC,eAChBI,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,IAAA,EAAMN,IAAU,CACf,CAAC,gBAEHK,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAE,QAAA,EAAA,IAAA,eACCF,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,IAAA,EAAMN,IAAU,CAAC,eACjBK,cAAA,CAAAC,aAAA,CAAMR,KAAAA,EAAAA,IAAAA,EAAAA,OAAO,IAAIG,GAAS,CACzB,CAGC,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKG,IAAAA,SAAS,EAAC,cAAA;AAAc,GAAA,eAC5BJ,cAAA,CAAAC,aAAA,CAACK,OAAI,EAAA;AACJb,IAAAA,OAAO,EAAEA,OAAQ;AACjBE,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,GAAG,EAAE,CAACF,OAAO,IAAID,OAAO,IAAIG,GAAI;AAChCC,IAAAA,MAAM,EAAEA,MAAAA;GACR,CACG,CACJ,CAAC,CAAA;AAEL;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
|
-
import { MarkerF } from '../../../node_modules/@react-google-maps/api/dist/esm.js';
|
|
2
|
+
import { MarkerF } from '../../../packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js';
|
|
3
3
|
|
|
4
4
|
var MapMarker = function MapMarker(_ref) {
|
|
5
5
|
var position = _ref.position,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
|
-
import { GoogleMap } from '../../../node_modules/@react-google-maps/api/dist/esm.js';
|
|
2
|
+
import { GoogleMap } from '../../../packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js';
|
|
3
3
|
import ShowAllButton from '../buttons/show-all-button.js';
|
|
4
4
|
|
|
5
5
|
var Map = function Map(_ref) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
|
-
import { Marker, InfoWindowF } from '../../../node_modules/@react-google-maps/api/dist/esm.js';
|
|
2
|
+
import { Marker, InfoWindowF } from '../../../packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js';
|
|
3
3
|
|
|
4
4
|
var PlaceMarker = function PlaceMarker(_ref) {
|
|
5
5
|
var marker = _ref.marker,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
|
-
import { Root as Root2, List, Trigger, Content } from '../../../node_modules/@radix-ui/react-tabs/dist/index.js';
|
|
2
|
+
import { Root as Root2, List, Trigger, Content } from '../../../packages/hc-ui-components/node_modules/@radix-ui/react-tabs/dist/index.js';
|
|
3
3
|
import Button from '../buttons/default.js';
|
|
4
4
|
import { useMapList } from '../../../contexts/mapListContext.js';
|
|
5
5
|
|
package/dist/styles/index.css
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*
|
|
2
2
|
! tailwindcss v3.4.4 | MIT License | https://tailwindcss.com
|
|
3
|
-
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:var(--font-roboto-flex),ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af}input::placeholder,textarea::placeholder{color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{--tw-shadow:0 0 transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-radius:0;border-width:1px;font-size:1rem;line-height:1.5rem;padding:.5rem .75rem}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:#2563eb;box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 1px #2563eb,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-bottom:0;padding-top:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:repeat;background-size:auto auto;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:inherit;print-color-adjust:inherit}[type=checkbox],[type=radio]{--tw-shadow:0 0 transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-origin:border-box;border-color:#6b7280;border-width:1px;color:#2563eb;display:inline-block;flex-shrink:0;height:1rem;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:1rem}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 4px #2563eb,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}[type=checkbox]:checked,[type=radio]:checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E")}@media (forced-colors:active){[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active){[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{background-color:currentColor;border-color:transparent}[type=checkbox]:indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}@media (forced-colors:active){[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{background-color:currentColor;border-color:transparent}[type=file]{background:transparent none repeat 0 0/auto auto padding-box border-box scroll;background:initial;border-color:inherit;border-radius:0;border-width:0;font-size:inherit;line-height:inherit;padding:0}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}html{color:#000;color:var(--ui-text);font-size:clamp(.88rem,.83rem + .24vw,1rem);scroll-behavior:smooth}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 transparent;--tw-ring-shadow:0 0 transparent;--tw-shadow:0 0 transparent;--tw-shadow-colored:0 0 transparent;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 transparent;--tw-ring-shadow:0 0 transparent;--tw-shadow:0 0 transparent;--tw-shadow-colored:0 0 transparent;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.hc-sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.hc-pointer-events-none{pointer-events:none}.hc-invisible{visibility:hidden}.hc-fixed{position:fixed}.hc-absolute{position:absolute}.hc-relative{position:relative}.hc-sticky{position:sticky}.hc-inset-0{bottom:0;left:0;right:0;top:0}.hc-bottom-0{bottom:0}.hc-bottom-10{bottom:2.5rem}.hc-left-0{left:0}.hc-left-2{left:.5rem}.hc-left-2\.5{left:.625rem}.hc-right-0{right:0}.hc-right-\[10px\]{right:10px}.hc-top-0{top:0}.hc-top-1{top:.25rem}.hc-top-1\.5{top:.375rem}.hc-top-\[10px\]{top:10px}.hc-z-10{z-index:10}.hc-z-20{z-index:20}.hc-z-\[1000\]{z-index:1000}.hc-z-\[200\]{z-index:200}.hc-z-\[2\]{z-index:2}.hc-order-first{order:-9999}.hc-order-last{order:9999}.hc-col-span-1{grid-column:span 1/span 1}.hc-col-span-2{grid-column:span 2/span 2}.hc-col-span-4{grid-column:span 4/span 4}.hc-float-right{float:right}.hc-m-auto{margin:auto}.hc-my-1{margin-bottom:.25rem;margin-top:.25rem}.hc-mb-2{margin-bottom:.5rem}.hc-mb-3{margin-bottom:.75rem}.hc-mb-5{margin-bottom:1.25rem}.hc-ml-auto{margin-left:auto}.hc-mr-1{margin-right:.25rem}.hc-mr-1\.5{margin-right:.375rem}.hc-mr-2{margin-right:.5rem}.hc-mt-1{margin-top:.25rem}.hc-mt-2{margin-top:.5rem}.hc-mt-4{margin-top:1rem}.hc-mt-6{margin-top:1.5rem}.hc-mt-px{margin-top:1px}.hc-block{display:block}.hc-inline-block{display:inline-block}.hc-inline{display:inline}.hc-flex{display:flex}.hc-inline-flex{display:inline-flex}.hc-grid{display:grid}.hc-hidden{display:none}.hc-size-2{height:.5rem;width:.5rem}.hc-size-2\.5{height:.625rem;width:.625rem}.hc-size-3{height:.75rem;width:.75rem}.hc-size-3\.5{height:.875rem;width:.875rem}.hc-size-4{height:1rem;width:1rem}.hc-size-5{height:1.25rem;width:1.25rem}.hc-size-8{height:2rem;width:2rem}.hc-h-5{height:1.25rem}.hc-h-\[100\%\]{height:100%}.hc-h-\[25px\]{height:25px}.hc-h-\[calc\(100\%-48px\)\]{height:calc(100% - 48px)}.hc-h-auto{height:auto}.hc-h-fit{height:-moz-fit-content;height:fit-content}.hc-h-full{height:100%}.hc-max-h-60{max-height:15rem}.hc-max-h-\[20vh\]{max-height:20vh}.hc-max-h-\[85vh\]{max-height:85vh}.hc-max-h-\[88\%\]{max-height:88%}.hc-max-h-\[95\%\]{max-height:95%}.hc-w-2\/5{width:40%}.hc-w-8{width:2rem}.hc-w-\[25px\]{width:25px}.hc-w-\[90vw\]{width:90vw}.hc-w-full{width:100%}.hc-min-w-\[100\%\]{min-width:100%}.hc-max-w-\[450px\]{max-width:450px}.hc-flex-1{flex:1 1 0%}.hc-flex-auto{flex:1 1 auto}.hc-shrink-0{flex-shrink:0}.hc-flex-grow,.hc-grow{flex-grow:1}.hc-rotate-45{--tw-rotate:45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(45deg) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes hc-contentShow{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.hc-animate-contentShow{animation:hc-contentShow .15s cubic-bezier(.16,1,.3,1)}@keyframes hc-overlayShow{0%{opacity:0}to{opacity:1}}.hc-animate-overlayShow{animation:hc-overlayShow .15s cubic-bezier(.16,1,.3,1)}.hc-cursor-default{cursor:default}.hc-cursor-not-allowed{cursor:not-allowed}.hc-cursor-pointer{cursor:pointer}.hc-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.hc-auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.hc-grid-flow-col{grid-auto-flow:column}.hc-auto-rows-min{grid-auto-rows:min-content}.hc-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.hc-flex-row{flex-direction:row}.hc-flex-col{flex-direction:column}.hc-flex-wrap{flex-wrap:wrap}.hc-items-start{align-items:flex-start}.hc-items-center{align-items:center}.hc-items-stretch{align-items:stretch}.hc-justify-end{justify-content:flex-end}.hc-justify-center{justify-content:center}.hc-justify-between{justify-content:space-between}.hc-gap-0{gap:0}.hc-gap-1{gap:.25rem}.hc-gap-1\.5{gap:.375rem}.hc-gap-12{gap:3rem}.hc-gap-2{gap:.5rem}.hc-gap-4{gap:1rem}.hc-gap-px{gap:1px}.hc-gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.hc-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:1rem;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:0;margin-right:calc(1rem*var(--tw-space-x-reverse))}.hc-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:.5rem;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.hc-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:1rem;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.hc-divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-left-width:1px;border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)));border-right-width:0;border-right-width:calc(1px*var(--tw-divide-x-reverse))}.hc-divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:1px;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.hc-divide-primary>:not([hidden])~:not([hidden]){border-color:#959595;border-color:var(--primary)}.hc-overflow-auto{overflow:auto}.hc-overflow-hidden{overflow:hidden}.hc-overflow-y-auto{overflow-y:auto}.hc-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hc-text-balance{text-wrap:balance}.hc-break-words{word-wrap:break-word}.hc-rounded{border-radius:.25rem}.hc-rounded-\[6px\]{border-radius:6px}.hc-rounded-full{border-radius:9999px}.hc-rounded-md{border-radius:.375rem}.hc-rounded-none{border-radius:0}.hc-rounded-sm{border-radius:.125rem}.hc-rounded-b{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.hc-border{border-width:1px}.hc-border-0{border-width:0}.hc-border-x-0{border-left-width:0;border-right-width:0}.hc-border-b{border-bottom-width:1px}.hc-border-b-0{border-bottom-width:0}.hc-border-t{border-top-width:1px}.hc-border-t-0{border-top-width:0}.hc-border-none{border-style:none}.\!hc-border-secondary{border-color:#959595!important;border-color:var(--secondary)!important}.hc-border-gray-100{--tw-border-opacity:1;border-color:#f3f4f6;border-color:rgba(243,244,246,var(--tw-border-opacity))}.hc-border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgba(229,231,235,var(--tw-border-opacity))}.hc-border-primary{border-color:#959595;border-color:var(--primary)}.hc-border-secondary{border-color:#959595;border-color:var(--secondary)}.hc-border-transparent{border-color:transparent}.hc-bg-black\/50{background-color:rgba(0,0,0,.5)}.hc-bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgba(243,244,246,var(--tw-bg-opacity))}.hc-bg-primary{background-color:#959595;background-color:var(--primary)}.hc-bg-secondary{background-color:#959595;background-color:var(--secondary)}.hc-bg-transparent{background-color:transparent}.hc-bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.hc-bg-clip-border{background-clip:border-box}.hc-object-cover{-o-object-fit:cover;object-fit:cover}.\!hc-p-0{padding:0!important}.\!hc-p-3{padding:.75rem!important}.hc-p-1{padding:.25rem}.hc-p-1\.5{padding:.375rem}.hc-p-2{padding:.5rem}.hc-p-2\.5{padding:.625rem}.hc-p-3{padding:.75rem}.hc-p-4{padding:1rem}.hc-p-\[25px\]{padding:25px}.hc-px-0{padding-left:0;padding-right:0}.hc-px-10{padding-left:2.5rem;padding-right:2.5rem}.hc-px-2{padding-left:.5rem;padding-right:.5rem}.hc-px-3{padding-left:.75rem;padding-right:.75rem}.hc-px-4{padding-left:1rem;padding-right:1rem}.hc-px-6{padding-left:1.5rem;padding-right:1.5rem}.hc-py-0{padding-bottom:0;padding-top:0}.hc-py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.hc-py-1{padding-bottom:.25rem;padding-top:.25rem}.hc-py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.hc-py-2{padding-bottom:.5rem;padding-top:.5rem}.hc-py-4{padding-bottom:1rem;padding-top:1rem}.hc-pb-1{padding-bottom:.25rem}.hc-pb-16{padding-bottom:4rem}.hc-pb-2{padding-bottom:.5rem}.hc-pb-4{padding-bottom:1rem}.hc-pl-1{padding-left:.25rem}.hc-pl-1\.5{padding-left:.375rem}.hc-pl-2{padding-left:.5rem}.hc-pl-4{padding-left:1rem}.hc-pl-7{padding-left:1.75rem}.hc-pr-1{padding-right:.25rem}.hc-pr-2{padding-right:.5rem}.hc-pr-3{padding-right:.75rem}.hc-pr-4{padding-right:1rem}.hc-pt-0{padding-top:0}.hc-pt-0\.5{padding-top:.125rem}.hc-pt-1{padding-top:.25rem}.hc-pt-1\.5{padding-top:.375rem}.hc-pt-2{padding-top:.5rem}.hc-pt-20{padding-top:5rem}.hc-text-left{text-align:left}.hc-text-center{text-align:center}.hc-align-middle{vertical-align:middle}.\!hc-font-\[inherit\]{font-family:inherit!important}.hc-text-2xl{font-size:1.5rem;line-height:2rem}.hc-text-\[15px\]{font-size:15px}.hc-text-\[17px\]{font-size:17px}.hc-text-base{font-size:1rem;line-height:1.5rem}.hc-text-lg{font-size:1.125rem;line-height:1.75rem}.hc-text-sm{font-size:.875rem;line-height:1.25rem}.hc-text-xs{font-size:.75rem;line-height:1rem}.hc-font-bold{font-weight:700}.hc-font-medium{font-weight:500}.hc-font-semibold{font-weight:600}.hc-uppercase{text-transform:uppercase}.hc-capitalize{text-transform:capitalize}.hc-normal-case{text-transform:none}.hc-leading-5{line-height:1.25rem}.hc-leading-none{line-height:1}.hc-leading-normal{line-height:1.5}.hc-leading-tight{line-height:1.25}.hc-text-black{--tw-text-opacity:1;color:#000;color:rgba(0,0,0,var(--tw-text-opacity))}.hc-text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgba(59,130,246,var(--tw-text-opacity))}.hc-text-current{color:currentColor}.hc-text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgba(107,114,128,var(--tw-text-opacity))}.hc-text-gray-900{--tw-text-opacity:1;color:#111827;color:rgba(17,24,39,var(--tw-text-opacity))}.hc-text-inherit{color:inherit}.hc-text-primary{color:#959595;color:var(--primary)}.hc-text-uiAccent{color:#959595;color:var(--ui-accent)}.hc-text-uiText{color:#000;color:var(--ui-text)}.hc-text-white{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.hc-opacity-0{opacity:0}.hc-opacity-100{opacity:1}.hc-opacity-30{opacity:.3}.hc-opacity-85{opacity:.85}.hc-shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.hc-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.hc-outline-none{outline:2px solid transparent;outline-offset:2px}.hc-ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 1px #2563eb,0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.hc-ring-inset{--tw-ring-inset:inset}.hc-transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-duration-100{transition-duration:.1s}.hc-duration-300{transition-duration:.3s}.hc-ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}@keyframes enter{0%{opacity:1;opacity:var(--tw-enter-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:1;opacity:var(--tw-exit-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.hc-duration-100{animation-duration:.1s}.hc-duration-300{animation-duration:.3s}.hc-ease-in{animation-timing-function:cubic-bezier(.4,0,1,1)}.fit-content{height:-moz-fit-content;height:fit-content}:root{--ui-text:#000;--ui-accent:#959595;--primary:#959595;--primary-dark:#959595;--secondary:#959595;--secondary-dark:#959595}.placeholder\:hc-text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:#9ca3af;color:rgba(156,163,175,var(--tw-text-opacity))}.placeholder\:hc-text-gray-400::placeholder{--tw-text-opacity:1;color:#9ca3af;color:rgba(156,163,175,var(--tw-text-opacity))}.focus-within\:hc-ring-1:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 1px #2563eb,0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-within\:hc-ring-uiAccent:focus-within{--tw-ring-color:var(--ui-accent)}.hover\:hc-border-indigo-300:hover{--tw-border-opacity:1;border-color:#a5b4fc;border-color:rgba(165,180,252,var(--tw-border-opacity))}.hover\:hc-border-primaryDark:hover{border-color:#959595;border-color:var(--primary-dark)}.hover\:hc-bg-primaryDark:hover{background-color:#959595;background-color:var(--primary-dark)}.hover\:hc-bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:hc-text-gray-500:hover{--tw-text-opacity:1;color:#6b7280;color:rgba(107,114,128,var(--tw-text-opacity))}.hover\:hc-text-primary:hover{color:#959595;color:var(--primary)}.hover\:hc-text-uiText:hover{color:#000;color:var(--ui-text)}.hover\:hc-text-white:hover{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.hover\:hc-opacity-70:hover{opacity:.7}.hover\:hc-opacity-75:hover{opacity:.75}.hover\:hc-shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.focus\:hc-border-indigo-300:focus{--tw-border-opacity:1;border-color:#a5b4fc;border-color:rgba(165,180,252,var(--tw-border-opacity))}.focus\:hc-border-primaryDark:focus{border-color:#959595;border-color:var(--primary-dark)}.focus\:hc-bg-primaryDark:focus{background-color:#959595;background-color:var(--primary-dark)}.focus\:hc-bg-opacity-70:focus{--tw-bg-opacity:0.7}.focus\:hc-text-primary:focus{color:#959595;color:var(--primary)}.focus\:hc-text-uiText:focus{color:#000;color:var(--ui-text)}.focus\:hc-text-white:focus{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.focus\:hc-opacity-70:focus{opacity:.7}.focus\:hc-shadow-xl:focus{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.focus\:hc-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:hc-ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,var(--tw-ring-shadow),0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:hc-ring:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,var(--tw-ring-shadow),0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:hc-ring-uiAccent:focus-visible{--tw-ring-color:var(--ui-accent)}.focus-visible\:hc-ring-opacity-75:focus-visible{--tw-ring-opacity:0.75}.hc-group:active .group-active\:hc-opacity-100,.hc-group:hover .group-hover\:hc-opacity-100{opacity:1}.data-\[disabled\]\:hc-pointer-events-none[data-disabled]{pointer-events:none}@keyframes hc-slideUp{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:hc-animate-slideUp[data-state=closed]{animation:hc-slideUp .3s cubic-bezier(.87,0,.13,1)}@keyframes hc-slideDown{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:hc-animate-slideDown[data-state=open]{animation:hc-slideDown .3s cubic-bezier(.87,0,.13,1)}.data-\[state\=open\]\:hc-rounded-b-none[data-state=open]{border-bottom-left-radius:0;border-bottom-right-radius:0}.data-\[state\=open\]\:hc-border-b-transparent[data-state=open]{border-bottom-color:transparent}.data-\[highlighted\]\:hc-bg-primary[data-highlighted],.data-\[state\=active\]\:hc-bg-primary[data-state=active]{background-color:#959595;background-color:var(--primary)}.data-\[disabled\]\:hc-text-gray-500[data-disabled]{--tw-text-opacity:1;color:#6b7280;color:rgba(107,114,128,var(--tw-text-opacity))}.data-\[highlighted\]\:hc-text-white[data-highlighted],.data-\[state\=active\]\:hc-text-white[data-state=active]{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.data-\[state\=open\]\:hc-text-primary[data-state=open]{color:#959595;color:var(--primary)}.data-\[highlighted\]\:hc-outline-none[data-highlighted]{outline:2px solid transparent;outline-offset:2px}.hc-group[data-state=open] .group-data-\[state\=open\]\:\!hc-rotate-180{--tw-rotate:180deg!important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(180deg) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}@media (min-width:640px){.sm\:hc-w-1\/3{width:33.333333%}.sm\:hc-text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:768px){.md\:hc-static{position:static}.md\:hc-absolute{position:absolute}.md\:hc-left-1{left:.25rem}.md\:hc-left-1\.5{left:.375rem}.md\:hc-mb-2{margin-bottom:.5rem}.md\:hc-mt-2{margin-top:.5rem}.md\:hc-block{display:block}.md\:hc-grid{display:grid}.md\:hc-hidden{display:none}.md\:hc-max-h-\[100\%\]{max-height:100%}.md\:hc-max-h-\[25vh\]{max-height:25vh}.md\:hc-max-h-\[95\%\]{max-height:95%}.md\:hc-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:hc-grid-cols-\[1fr_2\.5fr\]{grid-template-columns:1fr 2.5fr}.md\:hc-grid-rows-\[100\%\]{grid-template-rows:100%}.md\:hc-grid-rows-\[50\%_50\%\]{grid-template-rows:50% 50%}.md\:hc-flex-col{flex-direction:column}.md\:hc-self-center{align-self:center}.md\:hc-overflow-x-auto{overflow-x:auto}.md\:hc-overflow-y-auto{overflow-y:auto}.md\:hc-border-none{border-style:none}.md\:hc-bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgba(243,244,246,var(--tw-bg-opacity))}.md\:hc-bg-transparent{background-color:transparent}.md\:hc-p-0{padding:0}.md\:hc-px-4{padding-left:1rem;padding-right:1rem}.md\:hc-px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:hc-pt-4{padding-top:1rem}.md\:hc-text-sm{font-size:.875rem;line-height:1.25rem}.md\:hc-text-xs{font-size:.75rem;line-height:1rem}}@media (min-width:1024px){.lg\:hc-order-last{order:9999}.lg\:hc-mb-0{margin-bottom:0}.lg\:hc-inline{display:inline}.lg\:hc-w-auto{width:auto}.lg\:hc-grid-cols-\[1fr_3\.5fr\]{grid-template-columns:1fr 3.5fr}.lg\:hc-flex-row{flex-direction:row}.lg\:hc-gap-16{gap:4rem}.lg\:hc-border-none{border-style:none}.lg\:hc-p-0{padding:0}.lg\:hc-px-8{padding-left:2rem;padding-right:2rem}.lg\:hc-pt-2{padding-top:.5rem}.lg\:hc-text-sm{font-size:.875rem;line-height:1.25rem}}
|
|
3
|
+
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:var(--font-roboto-flex),ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af}input::placeholder,textarea::placeholder{color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{--tw-shadow:0 0 transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-radius:0;border-width:1px;font-size:1rem;line-height:1.5rem;padding:.5rem .75rem}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:#2563eb;box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 1px #2563eb,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-bottom:0;padding-top:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:repeat;background-size:auto auto;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:inherit;print-color-adjust:inherit}[type=checkbox],[type=radio]{--tw-shadow:0 0 transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-origin:border-box;border-color:#6b7280;border-width:1px;color:#2563eb;display:inline-block;flex-shrink:0;height:1rem;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:1rem}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 4px #2563eb,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}[type=checkbox]:checked,[type=radio]:checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E")}@media (forced-colors:active){[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active){[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{background-color:currentColor;border-color:transparent}[type=checkbox]:indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}@media (forced-colors:active){[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{background-color:currentColor;border-color:transparent}[type=file]{background:transparent none repeat 0 0/auto auto padding-box border-box scroll;background:initial;border-color:inherit;border-radius:0;border-width:0;font-size:inherit;line-height:inherit;padding:0}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}html{color:#000;color:var(--ui-text);font-size:clamp(.88rem,.83rem + .24vw,1rem);scroll-behavior:smooth}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 transparent;--tw-ring-shadow:0 0 transparent;--tw-shadow:0 0 transparent;--tw-shadow-colored:0 0 transparent;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 transparent;--tw-ring-shadow:0 0 transparent;--tw-shadow:0 0 transparent;--tw-shadow-colored:0 0 transparent;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.hc-sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.hc-pointer-events-none{pointer-events:none}.hc-invisible{visibility:hidden}.hc-fixed{position:fixed}.hc-absolute{position:absolute}.hc-relative{position:relative}.hc-sticky{position:sticky}.hc-inset-0{bottom:0;left:0;right:0;top:0}.hc-bottom-0{bottom:0}.hc-bottom-10{bottom:2.5rem}.hc-left-0{left:0}.hc-left-2{left:.5rem}.hc-left-2\.5{left:.625rem}.hc-right-0{right:0}.hc-right-\[10px\]{right:10px}.hc-top-0{top:0}.hc-top-1{top:.25rem}.hc-top-1\.5{top:.375rem}.hc-top-\[10px\]{top:10px}.hc-z-10{z-index:10}.hc-z-20{z-index:20}.hc-z-\[1000\]{z-index:1000}.hc-z-\[200\]{z-index:200}.hc-z-\[2\]{z-index:2}.hc-order-first{order:-9999}.hc-order-last{order:9999}.hc-col-span-1{grid-column:span 1/span 1}.hc-col-span-2{grid-column:span 2/span 2}.hc-col-span-4{grid-column:span 4/span 4}.hc-float-right{float:right}.hc-m-auto{margin:auto}.hc-my-1{margin-bottom:.25rem;margin-top:.25rem}.hc-mb-2{margin-bottom:.5rem}.hc-mb-3{margin-bottom:.75rem}.hc-mb-5{margin-bottom:1.25rem}.hc-ml-auto{margin-left:auto}.hc-mr-1{margin-right:.25rem}.hc-mr-1\.5{margin-right:.375rem}.hc-mr-2{margin-right:.5rem}.hc-mt-1{margin-top:.25rem}.hc-mt-2{margin-top:.5rem}.hc-mt-4{margin-top:1rem}.hc-mt-6{margin-top:1.5rem}.hc-mt-px{margin-top:1px}.hc-block{display:block}.hc-inline-block{display:inline-block}.hc-inline{display:inline}.hc-flex{display:flex}.hc-inline-flex{display:inline-flex}.hc-grid{display:grid}.hc-hidden{display:none}.hc-size-2{height:.5rem;width:.5rem}.hc-size-2\.5{height:.625rem;width:.625rem}.hc-size-3{height:.75rem;width:.75rem}.hc-size-3\.5{height:.875rem;width:.875rem}.hc-size-4{height:1rem;width:1rem}.hc-size-5{height:1.25rem;width:1.25rem}.hc-size-8{height:2rem;width:2rem}.hc-h-5{height:1.25rem}.hc-h-\[100\%\]{height:100%}.hc-h-\[25px\]{height:25px}.hc-h-\[calc\(100\%-48px\)\]{height:calc(100% - 48px)}.hc-h-auto{height:auto}.hc-h-fit{height:-moz-fit-content;height:fit-content}.hc-h-full{height:100%}.hc-max-h-60{max-height:15rem}.hc-max-h-\[20vh\]{max-height:20vh}.hc-max-h-\[85vh\]{max-height:85vh}.hc-max-h-\[88\%\]{max-height:88%}.hc-max-h-\[95\%\]{max-height:95%}.hc-w-2\/5{width:40%}.hc-w-8{width:2rem}.hc-w-\[25px\]{width:25px}.hc-w-\[90vw\]{width:90vw}.hc-w-full{width:100%}.hc-min-w-\[100\%\]{min-width:100%}.hc-max-w-\[450px\]{max-width:450px}.hc-flex-1{flex:1 1 0%}.hc-flex-auto{flex:1 1 auto}.hc-shrink-0{flex-shrink:0}.hc-flex-grow,.hc-grow{flex-grow:1}.hc-rotate-45{--tw-rotate:45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(45deg) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes hc-contentShow{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.hc-animate-contentShow{animation:hc-contentShow .15s cubic-bezier(.16,1,.3,1)}@keyframes hc-overlayShow{0%{opacity:0}to{opacity:1}}.hc-animate-overlayShow{animation:hc-overlayShow .15s cubic-bezier(.16,1,.3,1)}.hc-cursor-default{cursor:default}.hc-cursor-not-allowed{cursor:not-allowed}.hc-cursor-pointer{cursor:pointer}.hc-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.hc-auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.hc-grid-flow-col{grid-auto-flow:column}.hc-auto-rows-min{grid-auto-rows:min-content}.hc-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.hc-flex-row{flex-direction:row}.hc-flex-col{flex-direction:column}.hc-flex-wrap{flex-wrap:wrap}.hc-items-start{align-items:flex-start}.hc-items-center{align-items:center}.hc-items-stretch{align-items:stretch}.hc-justify-end{justify-content:flex-end}.hc-justify-center{justify-content:center}.hc-justify-between{justify-content:space-between}.hc-gap-0{gap:0}.hc-gap-1{gap:.25rem}.hc-gap-1\.5{gap:.375rem}.hc-gap-12{gap:3rem}.hc-gap-2{gap:.5rem}.hc-gap-4{gap:1rem}.hc-gap-px{gap:1px}.hc-gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.hc-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:1rem;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:0;margin-right:calc(1rem*var(--tw-space-x-reverse))}.hc-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:.5rem;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.hc-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:1rem;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.hc-divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-left-width:1px;border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)));border-right-width:0;border-right-width:calc(1px*var(--tw-divide-x-reverse))}.hc-divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:1px;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.hc-divide-primary>:not([hidden])~:not([hidden]){border-color:#959595;border-color:var(--primary)}.hc-overflow-auto{overflow:auto}.hc-overflow-hidden{overflow:hidden}.hc-overflow-y-auto{overflow-y:auto}.hc-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hc-text-balance{text-wrap:balance}.hc-break-words{word-wrap:break-word}.hc-rounded{border-radius:.25rem}.hc-rounded-\[6px\]{border-radius:6px}.hc-rounded-full{border-radius:9999px}.hc-rounded-md{border-radius:.375rem}.hc-rounded-none{border-radius:0}.hc-rounded-sm{border-radius:.125rem}.hc-rounded-b{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.hc-border{border-width:1px}.hc-border-0{border-width:0}.hc-border-x-0{border-left-width:0;border-right-width:0}.hc-border-b{border-bottom-width:1px}.hc-border-b-0{border-bottom-width:0}.hc-border-t{border-top-width:1px}.hc-border-t-0{border-top-width:0}.hc-border-none{border-style:none}.\!hc-border-secondary{border-color:#959595!important;border-color:var(--secondary)!important}.hc-border-gray-100{--tw-border-opacity:1;border-color:#f3f4f6;border-color:rgba(243,244,246,var(--tw-border-opacity))}.hc-border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgba(229,231,235,var(--tw-border-opacity))}.hc-border-primary{border-color:#959595;border-color:var(--primary)}.hc-border-secondary{border-color:#959595;border-color:var(--secondary)}.hc-border-transparent{border-color:transparent}.hc-bg-black\/50{background-color:rgba(0,0,0,.5)}.hc-bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgba(243,244,246,var(--tw-bg-opacity))}.hc-bg-primary{background-color:#959595;background-color:var(--primary)}.hc-bg-secondary{background-color:#959595;background-color:var(--secondary)}.hc-bg-transparent{background-color:transparent}.hc-bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.hc-bg-clip-border{background-clip:border-box}.hc-object-cover{-o-object-fit:cover;object-fit:cover}.\!hc-p-0{padding:0!important}.\!hc-p-3{padding:.75rem!important}.hc-p-1{padding:.25rem}.hc-p-1\.5{padding:.375rem}.hc-p-2{padding:.5rem}.hc-p-2\.5{padding:.625rem}.hc-p-3{padding:.75rem}.hc-p-4{padding:1rem}.hc-p-\[25px\]{padding:25px}.hc-px-0{padding-left:0;padding-right:0}.hc-px-10{padding-left:2.5rem;padding-right:2.5rem}.hc-px-2{padding-left:.5rem;padding-right:.5rem}.hc-px-3{padding-left:.75rem;padding-right:.75rem}.hc-px-4{padding-left:1rem;padding-right:1rem}.hc-px-6{padding-left:1.5rem;padding-right:1.5rem}.hc-py-0{padding-bottom:0;padding-top:0}.hc-py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.hc-py-1{padding-bottom:.25rem;padding-top:.25rem}.hc-py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.hc-py-2{padding-bottom:.5rem;padding-top:.5rem}.hc-py-4{padding-bottom:1rem;padding-top:1rem}.hc-pb-1{padding-bottom:.25rem}.hc-pb-16{padding-bottom:4rem}.hc-pb-2{padding-bottom:.5rem}.hc-pb-4{padding-bottom:1rem}.hc-pl-1{padding-left:.25rem}.hc-pl-1\.5{padding-left:.375rem}.hc-pl-2{padding-left:.5rem}.hc-pl-4{padding-left:1rem}.hc-pl-7{padding-left:1.75rem}.hc-pr-1{padding-right:.25rem}.hc-pr-2{padding-right:.5rem}.hc-pr-3{padding-right:.75rem}.hc-pr-4{padding-right:1rem}.hc-pt-0{padding-top:0}.hc-pt-0\.5{padding-top:.125rem}.hc-pt-1{padding-top:.25rem}.hc-pt-1\.5{padding-top:.375rem}.hc-pt-2{padding-top:.5rem}.hc-pt-20{padding-top:5rem}.hc-text-left{text-align:left}.hc-text-center{text-align:center}.hc-align-middle{vertical-align:middle}.\!hc-font-\[inherit\]{font-family:inherit!important}.hc-text-2xl{font-size:1.5rem;line-height:2rem}.hc-text-\[15px\]{font-size:15px}.hc-text-\[17px\]{font-size:17px}.hc-text-base{font-size:1rem;line-height:1.5rem}.hc-text-lg{font-size:1.125rem;line-height:1.75rem}.hc-text-sm{font-size:.875rem;line-height:1.25rem}.hc-text-xs{font-size:.75rem;line-height:1rem}.hc-font-bold{font-weight:700}.hc-font-medium{font-weight:500}.hc-font-semibold{font-weight:600}.hc-uppercase{text-transform:uppercase}.hc-capitalize{text-transform:capitalize}.hc-normal-case{text-transform:none}.hc-leading-5{line-height:1.25rem}.hc-leading-none{line-height:1}.hc-leading-normal{line-height:1.5}.hc-leading-tight{line-height:1.25}.hc-text-black{--tw-text-opacity:1;color:#000;color:rgba(0,0,0,var(--tw-text-opacity))}.hc-text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgba(59,130,246,var(--tw-text-opacity))}.hc-text-current{color:currentColor}.hc-text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgba(107,114,128,var(--tw-text-opacity))}.hc-text-gray-900{--tw-text-opacity:1;color:#111827;color:rgba(17,24,39,var(--tw-text-opacity))}.hc-text-inherit{color:inherit}.hc-text-primary{color:#959595;color:var(--primary)}.hc-text-uiAccent{color:#959595;color:var(--ui-accent)}.hc-text-uiText{color:#000;color:var(--ui-text)}.hc-text-white{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.hc-opacity-0{opacity:0}.hc-opacity-100{opacity:1}.hc-opacity-30{opacity:.3}.hc-opacity-85{opacity:.85}.hc-shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.hc-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.hc-outline-none{outline:2px solid transparent;outline-offset:2px}.hc-ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 1px #2563eb,0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.hc-ring-inset{--tw-ring-inset:inset}.hc-transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hc-duration-100{transition-duration:.1s}.hc-duration-300{transition-duration:.3s}.hc-ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}@keyframes enter{0%{opacity:1;opacity:var(--tw-enter-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:1;opacity:var(--tw-exit-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.hc-duration-100{animation-duration:.1s}.hc-duration-300{animation-duration:.3s}.hc-ease-in{animation-timing-function:cubic-bezier(.4,0,1,1)}.fit-content{height:-moz-fit-content;height:fit-content}:root{--ui-text:#000;--ui-accent:#959595;--primary:#959595;--primary-dark:#959595;--secondary:#959595;--secondary-dark:#959595}.placeholder\:hc-text-gray-400::-moz-placeholder{--tw-text-opacity:1;color:#9ca3af;color:rgba(156,163,175,var(--tw-text-opacity))}.placeholder\:hc-text-gray-400::placeholder{--tw-text-opacity:1;color:#9ca3af;color:rgba(156,163,175,var(--tw-text-opacity))}.focus-within\:hc-ring-1:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,/*!*/ /*!*/ 0 0 0 1px #2563eb,0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-within\:hc-ring-uiAccent:focus-within{--tw-ring-color:var(--ui-accent)}.hover\:hc-border-indigo-300:hover{--tw-border-opacity:1;border-color:#a5b4fc;border-color:rgba(165,180,252,var(--tw-border-opacity))}.hover\:hc-border-primaryDark:hover{border-color:#959595;border-color:var(--primary-dark)}.hover\:hc-bg-primaryDark:hover{background-color:#959595;background-color:var(--primary-dark)}.hover\:hc-bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:hc-text-gray-500:hover{--tw-text-opacity:1;color:#6b7280;color:rgba(107,114,128,var(--tw-text-opacity))}.hover\:hc-text-primary:hover{color:#959595;color:var(--primary)}.hover\:hc-text-uiText:hover{color:#000;color:var(--ui-text)}.hover\:hc-text-white:hover{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.hover\:hc-opacity-70:hover{opacity:.7}.hover\:hc-opacity-75:hover{opacity:.75}.hover\:hc-shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.focus\:hc-border-indigo-300:focus{--tw-border-opacity:1;border-color:#a5b4fc;border-color:rgba(165,180,252,var(--tw-border-opacity))}.focus\:hc-border-primaryDark:focus{border-color:#959595;border-color:var(--primary-dark)}.focus\:hc-bg-primaryDark:focus{background-color:#959595;background-color:var(--primary-dark)}.focus\:hc-bg-opacity-70:focus{--tw-bg-opacity:0.7}.focus\:hc-text-primary:focus{color:#959595;color:var(--primary)}.focus\:hc-text-uiText:focus{color:#000;color:var(--ui-text)}.focus\:hc-text-white:focus{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.focus\:hc-opacity-70:focus{opacity:.7}.focus\:hc-shadow-xl:focus{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 transparent,0 0 transparent,0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.focus\:hc-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:hc-ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,var(--tw-ring-shadow),0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:hc-ring:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 0 #fff,var(--tw-ring-shadow),0 0 transparent;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:hc-ring-uiAccent:focus-visible{--tw-ring-color:var(--ui-accent)}.focus-visible\:hc-ring-opacity-75:focus-visible{--tw-ring-opacity:0.75}.hc-group:active .group-active\:hc-opacity-100,.hc-group:hover .group-hover\:hc-opacity-100{opacity:1}.data-\[disabled\]\:hc-pointer-events-none[data-disabled]{pointer-events:none}@keyframes hc-slideUp{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:hc-animate-slideUp[data-state=closed]{animation:hc-slideUp .3s cubic-bezier(.87,0,.13,1)}@keyframes hc-slideDown{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:hc-animate-slideDown[data-state=open]{animation:hc-slideDown .3s cubic-bezier(.87,0,.13,1)}.data-\[state\=open\]\:hc-rounded-b-none[data-state=open]{border-bottom-left-radius:0;border-bottom-right-radius:0}.data-\[state\=open\]\:hc-border-b-transparent[data-state=open]{border-bottom-color:transparent}.data-\[highlighted\]\:hc-bg-primary[data-highlighted],.data-\[state\=active\]\:hc-bg-primary[data-state=active]{background-color:#959595;background-color:var(--primary)}.data-\[disabled\]\:hc-text-gray-500[data-disabled]{--tw-text-opacity:1;color:#6b7280;color:rgba(107,114,128,var(--tw-text-opacity))}.data-\[highlighted\]\:hc-text-white[data-highlighted],.data-\[state\=active\]\:hc-text-white[data-state=active]{--tw-text-opacity:1;color:#fff;color:rgba(255,255,255,var(--tw-text-opacity))}.data-\[state\=open\]\:hc-text-primary[data-state=open]{color:#959595;color:var(--primary)}.data-\[highlighted\]\:hc-outline-none[data-highlighted]{outline:2px solid transparent;outline-offset:2px}.hc-group[data-state=open] .group-data-\[state\=open\]\:\!hc-rotate-180{--tw-rotate:180deg!important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(180deg) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}@media (min-width:640px){.sm\:hc-w-1\/3{width:33.333333%}.sm\:hc-text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:768px){.md\:hc-absolute{position:absolute}.md\:hc-left-1{left:.25rem}.md\:hc-left-1\.5{left:.375rem}.md\:hc-mb-2{margin-bottom:.5rem}.md\:hc-block{display:block}.md\:hc-flex{display:flex}.md\:hc-grid{display:grid}.md\:hc-hidden{display:none}.md\:hc-max-h-\[100\%\]{max-height:100%}.md\:hc-max-h-\[25vh\]{max-height:25vh}.md\:hc-max-h-\[95\%\]{max-height:95%}.md\:hc-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:hc-grid-cols-\[1fr_2\.5fr\]{grid-template-columns:1fr 2.5fr}.md\:hc-grid-rows-\[100\%\]{grid-template-rows:100%}.md\:hc-grid-rows-\[50\%_50\%\]{grid-template-rows:50% 50%}.md\:hc-flex-col{flex-direction:column}.md\:hc-justify-start{justify-content:flex-start}.md\:hc-self-center{align-self:center}.md\:hc-overflow-x-auto{overflow-x:auto}.md\:hc-overflow-y-auto{overflow-y:auto}.md\:hc-border-none{border-style:none}.md\:hc-bg-transparent{background-color:transparent}.md\:hc-p-0{padding:0}.md\:hc-px-4{padding-left:1rem;padding-right:1rem}.md\:hc-px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:hc-pb-0{padding-bottom:0}.md\:hc-pt-4{padding-top:1rem}.md\:hc-text-sm{font-size:.875rem;line-height:1.25rem}.md\:hc-text-xs{font-size:.75rem;line-height:1rem}}@media (min-width:1024px){.lg\:hc-order-last{order:9999}.lg\:hc-mb-0{margin-bottom:0}.lg\:hc-inline{display:inline}.lg\:hc-w-auto{width:auto}.lg\:hc-grid-cols-\[1fr_3\.5fr\]{grid-template-columns:1fr 3.5fr}.lg\:hc-flex-row{flex-direction:row}.lg\:hc-gap-16{gap:4rem}.lg\:hc-border-none{border-style:none}.lg\:hc-p-0{padding:0}.lg\:hc-px-8{padding-left:2rem;padding-right:2rem}.lg\:hc-pt-2{padding-top:.5rem}.lg\:hc-text-sm{font-size:.875rem;line-height:1.25rem}}
|
package/dist/util/filterUtil.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { slicedToArray as _slicedToArray, typeof as _typeof, toConsumableArray as _toConsumableArray, defineProperty as _defineProperty, createForOfIteratorHelper as _createForOfIteratorHelper } from '../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import { getDistinctItemsByProximity } from './mapUtil.js';
|
|
3
|
-
import Fuse from '../node_modules/fuse.js/dist/fuse.js';
|
|
3
|
+
import Fuse from '../packages/hc-ui-components/node_modules/fuse.js/dist/fuse.js';
|
|
4
4
|
|
|
5
5
|
var getFilterOptions = function getFilterOptions(listings, filteredListings, field) {
|
|
6
6
|
var excludeZeroCount = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
|
package/package.json
CHANGED
|
@@ -26,25 +26,32 @@ const Filter = ({
|
|
|
26
26
|
`}
|
|
27
27
|
>
|
|
28
28
|
{/* Content area with scroll */}
|
|
29
|
-
<div className="hc-w-full hc-flex-grow hc-overflow-auto hc-pb-16">
|
|
29
|
+
<div className="hc-w-full hc-flex-grow hc-overflow-auto hc-pb-16 md:hc-pb-0">
|
|
30
30
|
<div className="hc-px-4 md:hc-pt-4 hc-space-y-4">{children}</div>
|
|
31
31
|
</div>
|
|
32
32
|
|
|
33
|
-
{/*
|
|
33
|
+
{/* Desktop Reset Button - left aligned */}
|
|
34
|
+
<div className="hc-hidden md:hc-flex md:hc-justify-start hc-px-4 hc-py-4">
|
|
35
|
+
<Button.Btn onClick={handleReset} variant="outline" size="sm">
|
|
36
|
+
Reset All
|
|
37
|
+
</Button.Btn>
|
|
38
|
+
</div>
|
|
39
|
+
|
|
40
|
+
{/* Mobile Footer - fixed at bottom */}
|
|
34
41
|
<div
|
|
35
42
|
className="
|
|
36
43
|
hc-w-full
|
|
37
44
|
hc-absolute hc-bottom-0 hc-left-0 hc-right-0
|
|
38
45
|
hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-px-4
|
|
39
|
-
hc-bg-white
|
|
46
|
+
hc-bg-white hc-border-t hc-border-gray-200
|
|
40
47
|
hc-z-10
|
|
41
48
|
|
|
42
|
-
/*
|
|
43
|
-
md:hc-
|
|
49
|
+
/* Hide on desktop */
|
|
50
|
+
md:hc-hidden
|
|
44
51
|
"
|
|
45
52
|
>
|
|
46
53
|
<Button.Btn onClick={handleReset} variant="outline" size="sm">
|
|
47
|
-
|
|
54
|
+
Reset All
|
|
48
55
|
</Button.Btn>
|
|
49
56
|
{selectedFilters && Object.keys(selectedFilters).length > 0 && (
|
|
50
57
|
<Button.Btn
|
|
@@ -52,7 +59,6 @@ const Filter = ({
|
|
|
52
59
|
variant="primary"
|
|
53
60
|
size="sm"
|
|
54
61
|
className={`
|
|
55
|
-
md:hc-hidden
|
|
56
62
|
${hasActiveFilters ? "hc-opacity-0 hc-pointer-events-none" : "hc-opacity-100"}
|
|
57
63
|
`}
|
|
58
64
|
>
|
|
@@ -67,5 +73,4 @@ const Filter = ({
|
|
|
67
73
|
);
|
|
68
74
|
};
|
|
69
75
|
|
|
70
|
-
export default Filter;
|
|
71
|
-
|
|
76
|
+
export default Filter;
|
|
@@ -4,102 +4,102 @@ import Icon from '~/components/modules/icon';
|
|
|
4
4
|
import PillWrapper from '~/components/modules/buttons/pill-wrapper';
|
|
5
5
|
|
|
6
6
|
const FieldMapperMobile = ({
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
item,
|
|
8
|
+
fieldsShown,
|
|
9
|
+
specialFeatures,
|
|
10
|
+
handleFavouriteClick,
|
|
11
|
+
isFavorite,
|
|
12
|
+
includeFavorite = true
|
|
13
13
|
}) => {
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
const specialFeaturePills = field => {
|
|
15
|
+
return field === 'position' && specialFeatures &&
|
|
16
16
|
Object.entries(specialFeatures).map(([featureKey, featureLabel]) => {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
return item.fields[featureKey] == 1 && (
|
|
18
|
+
<PillWrapper key={featureKey}>{featureLabel}</PillWrapper>
|
|
19
|
+
);
|
|
20
20
|
});
|
|
21
|
-
|
|
21
|
+
};
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
return (
|
|
24
|
+
<Grid.Item className="md:hc-hidden">
|
|
25
|
+
{fieldsShown.includes("position") &&
|
|
26
26
|
<>
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
27
|
+
<div className="hc-flex hc-items-start">
|
|
28
|
+
<div className="hc-flex hc-justify-between hc-items-center hc-min-w-[100%]">
|
|
29
|
+
<h3 className="hc-font-bold hc-mb-3 hc-flex-1">{item.fields.position}</h3>
|
|
30
|
+
{includeFavorite && <div className="hc-flex hc-justify-end hc-pb-2">
|
|
31
|
+
<Icon
|
|
32
|
+
icon={isFavorite ? "mdi:heart" : "mdi:heart-outline"}
|
|
33
|
+
size="hc-size-3.5"
|
|
34
|
+
iconClasses={isFavorite ? "hc-text-primary" : ""}
|
|
35
|
+
className={`hc-transition-opacity hc-duration-300 hc-cursor-pointer
|
|
36
36
|
${isFavorite ? "hc-opacity-100" : "hc-text-uiText/60 group-hover:hc-opacity-100"}
|
|
37
37
|
`}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
38
|
+
onClick={e => handleFavouriteClick(e, item)}
|
|
39
|
+
/>
|
|
40
|
+
</div>
|
|
41
|
+
}
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
{specialFeatures && <div className='hc-pb-4'>{specialFeaturePills("position", true)} </div>}
|
|
45
45
|
</>
|
|
46
|
-
|
|
46
|
+
}
|
|
47
47
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
48
|
+
<ul className="hc-space-y-2 hc-text-xs">
|
|
49
|
+
{[
|
|
50
|
+
{
|
|
51
|
+
field: "categoryClass",
|
|
52
|
+
name: "categoryClass",
|
|
53
|
+
icon: "icon-park-solid:tree-list"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
field: "category",
|
|
57
|
+
name: "Category",
|
|
58
|
+
icon: "icon-park-solid:tree-list"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
field: "schedule",
|
|
62
|
+
name: "Schedule",
|
|
63
|
+
icon: "gravity-ui:clock-fill"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
field: "city",
|
|
67
|
+
name: "Location",
|
|
68
|
+
icon: "fluent:location-16-filled"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
field: "state",
|
|
72
|
+
name: "Location",
|
|
73
|
+
icon: "fluent:location-16-filled"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
field: "cityState",
|
|
77
|
+
name: "Location",
|
|
78
|
+
icon: "fluent:location-16-filled"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
field: "travelTime",
|
|
82
|
+
name: "Commute",
|
|
83
|
+
icon: "ri:pin-distance-fill"
|
|
84
|
+
}
|
|
85
|
+
].map(listItem => (
|
|
86
|
+
(fieldsShown.includes(listItem.field) && item.fields[listItem.field]) &&
|
|
87
87
|
<li
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
key={listItem.field}
|
|
89
|
+
className="hc-flex hc-gap-2"
|
|
90
90
|
>
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
91
|
+
<Icon
|
|
92
|
+
icon={listItem.icon}
|
|
93
|
+
size="hc-size-3.5"
|
|
94
|
+
className="hc-text-uiAccent/30"
|
|
95
|
+
/>
|
|
96
|
+
<span className="hc-sr-only">{listItem.name}</span>
|
|
97
|
+
{item.fields[listItem.field]}
|
|
98
98
|
</li>
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
99
|
+
))}
|
|
100
|
+
</ul>
|
|
101
|
+
</Grid.Item>
|
|
102
|
+
);
|
|
103
103
|
};
|
|
104
104
|
|
|
105
105
|
export default FieldMapperMobile;
|