@abcagency/hc-ui-components 1.3.18 → 1.3.19
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/_virtual/_rollupPluginBabelHelpers.js +1 -1
- package/dist/apis/hcApi.js +85 -183
- package/dist/apis/hcApi.js.map +1 -1
- package/dist/components/HireControlMap.js +10 -5
- package/dist/components/HireControlMap.js.map +1 -1
- package/dist/components/modules/accordions/MapAccordionItem.js +10 -67
- package/dist/components/modules/accordions/MapAccordionItem.js.map +1 -1
- package/dist/components/modules/filter/index.js.map +1 -1
- package/dist/components/modules/filter/radio-item.js +1 -2
- package/dist/components/modules/filter/radio-item.js.map +1 -1
- package/dist/components/modules/jobListing/listing-details-container.js +45 -0
- package/dist/components/modules/jobListing/listing-details-container.js.map +1 -0
- package/dist/components/modules/jobListing/listing-details.js +24 -24
- package/dist/components/modules/jobListing/listing-details.js.map +1 -1
- package/dist/components/modules/{maps/list → list}/field-mapper.js +8 -7
- package/dist/components/modules/list/field-mapper.js.map +1 -0
- package/dist/components/modules/{maps/list → list}/header-item.js +2 -2
- package/dist/components/modules/list/header-item.js.map +1 -0
- package/dist/components/modules/{maps/list → list}/header.js +6 -4
- package/dist/components/modules/list/header.js.map +1 -0
- package/dist/components/modules/list/index.js +36 -0
- package/dist/components/modules/list/index.js.map +1 -0
- package/dist/components/modules/{maps/list → list}/item-expand-card/index.js +3 -1
- package/dist/components/modules/list/item-expand-card/index.js.map +1 -0
- package/dist/components/modules/{maps/list → list}/item-expand-card/recruiter-contact-nav.js +2 -2
- package/dist/components/modules/list/item-expand-card/recruiter-contact-nav.js.map +1 -0
- package/dist/components/modules/{maps/list → list}/item-expand-card/recruiter-details.js +1 -1
- package/dist/components/modules/list/item-expand-card/recruiter-details.js.map +1 -0
- package/dist/components/modules/list/item-expand-card/recruiter-headshot.js.map +1 -0
- package/dist/components/modules/list/item-list.js +28 -0
- package/dist/components/modules/list/item-list.js.map +1 -0
- package/dist/components/modules/list/list-item/index.js +75 -0
- package/dist/components/modules/list/list-item/index.js.map +1 -0
- package/dist/components/modules/list/list-item/list-item-container.js +47 -0
- package/dist/components/modules/list/list-item/list-item-container.js.map +1 -0
- package/dist/components/modules/{maps/list/list-item/index.js → list/list-item/list-item.js} +29 -33
- package/dist/components/modules/list/list-item/list-item.js.map +1 -0
- package/dist/components/modules/maps/map-list.js +3 -3
- package/dist/components/modules/maps/map-list.js.map +1 -1
- package/dist/contexts/mapContext.js +84 -113
- package/dist/contexts/mapContext.js.map +1 -1
- package/dist/contexts/mapListContext.js +181 -293
- package/dist/contexts/mapListContext.js.map +1 -1
- package/dist/contexts/trackEventContext.js +1 -1
- package/dist/services/configService.js +10 -28
- package/dist/services/configService.js.map +1 -1
- package/dist/services/googlePlacesNearbyService.js +33 -58
- package/dist/services/googlePlacesNearbyService.js.map +1 -1
- package/dist/services/listingAggregatorService.js +35 -75
- package/dist/services/listingAggregatorService.js.map +1 -1
- package/dist/services/listingEntityService.js +10 -31
- package/dist/services/listingEntityService.js.map +1 -1
- package/dist/services/listingService.js +26 -60
- package/dist/services/listingService.js.map +1 -1
- package/dist/services/recruiterService.js +11 -31
- package/dist/services/recruiterService.js.map +1 -1
- package/dist/types/apis/hcApi.d.ts +5 -0
- package/dist/types/clientToken.d.ts +2 -0
- package/dist/types/components/modules/accordions/MapAccordionItem.d.ts +9 -0
- package/dist/types/components/modules/accordions/default.d.ts +19 -0
- package/dist/types/components/modules/buttons/button-group-apply.d.ts +24 -0
- package/dist/types/components/modules/buttons/commute-pill.d.ts +5 -0
- package/dist/types/components/modules/buttons/default.d.ts +48 -0
- package/dist/types/components/modules/buttons/pill-wrapper.d.ts +3 -0
- package/dist/types/components/modules/dialogs/apply-dialog.d.ts +8 -0
- package/dist/types/components/modules/filter/sort.d.ts +8 -0
- package/dist/types/components/modules/grid.d.ts +8 -0
- package/dist/types/components/modules/icon.d.ts +10 -0
- package/dist/types/components/modules/jobListing/listing-details-container.d.ts +6 -0
- package/dist/types/components/modules/jobListing/listing-details.d.ts +18 -0
- package/dist/types/components/modules/list/field-mapper.d.ts +10 -0
- package/dist/types/components/modules/list/header-item.d.ts +11 -0
- package/dist/types/components/modules/list/header.d.ts +11 -0
- package/dist/types/components/modules/list/index.d.ts +9 -0
- package/dist/types/components/modules/list/item-expand-card/index.d.ts +7 -0
- package/dist/types/components/modules/list/item-expand-card/recruiter-contact-nav.d.ts +17 -0
- package/dist/types/components/modules/list/item-expand-card/recruiter-details.d.ts +21 -0
- package/dist/types/components/modules/list/item-expand-card/recruiter-headshot.d.ts +8 -0
- package/dist/types/components/modules/list/item-list.d.ts +21 -0
- package/dist/types/components/modules/list/list-item/index.d.ts +12 -0
- package/dist/types/components/modules/list/list-item/list-item-container.d.ts +14 -0
- package/dist/types/components/modules/list/list-item/list-item.d.ts +3 -0
- package/dist/types/constants/eventTypes.d.ts +13 -0
- package/dist/types/contexts/mapContext.d.ts +29 -0
- package/dist/types/contexts/mapListContext.d.ts +58 -0
- package/dist/types/contexts/trackEventContext.d.ts +6 -0
- package/dist/types/enums/SectionType.d.ts +9 -0
- package/dist/types/hooks/useList.d.ts +13 -0
- package/dist/types/services/configService.d.ts +6 -0
- package/dist/types/services/googlePlacesNearbyService.d.ts +5 -0
- package/dist/types/services/listingAggregatorService.d.ts +12 -0
- package/dist/types/services/listingEntityService.d.ts +6 -0
- package/dist/types/services/listingService.d.ts +9 -0
- package/dist/types/services/recruiterService.d.ts +6 -0
- package/dist/types/types/Address.d.ts +7 -0
- package/dist/types/types/ContentSection.d.ts +8 -0
- package/dist/types/types/GetListingParams.d.ts +8 -0
- package/dist/types/types/LatLng.d.ts +4 -0
- package/dist/types/types/ListingEntity.d.ts +10 -0
- package/dist/types/types/ListingFields.d.ts +20 -0
- package/dist/types/types/Listings.d.ts +31 -0
- package/dist/types/types/Recruiter.d.ts +9 -0
- package/dist/types/types/SimilarListing.d.ts +24 -0
- package/dist/types/types/config/Colors.d.ts +8 -0
- package/dist/types/types/config/MapConfig.d.ts +29 -0
- package/dist/types/types/config/PointsOfInterestConfig.d.ts +13 -0
- package/dist/types/types/config/SearchConfig.d.ts +4 -0
- package/dist/types/util/filterUtil.d.ts +28 -0
- package/dist/types/util/loading.d.ts +3 -0
- package/dist/types/util/localStorageUtil.d.ts +3 -0
- package/dist/types/util/mapUtil.d.ts +15 -0
- package/dist/types/util/sortUtil.d.ts +1 -0
- package/dist/types/util/stringUtils.d.ts +1 -0
- package/dist/util/filterUtil.js +1 -3
- package/dist/util/filterUtil.js.map +1 -1
- package/dist/util/localStorageUtil.js +37 -28
- package/dist/util/localStorageUtil.js.map +1 -1
- package/dist/util/mapUtil.js.map +1 -1
- package/package.json +23 -17
- package/rollup.config.mjs +23 -19
- package/src/apis/{hcApi.js → hcApi.ts} +27 -11
- package/src/components/HireControlMap.js +132 -129
- package/src/components/modules/accordions/MapAccordionItem.js +32 -74
- package/src/components/modules/filter/index.js +89 -89
- package/src/components/modules/filter/radio-item.js +0 -1
- package/src/components/modules/jobListing/listing-details-container.js +40 -0
- package/src/components/modules/jobListing/listing-details.js +209 -99
- package/src/components/modules/{maps/list → list}/field-mapper.js +114 -112
- package/src/components/modules/{maps/list → list}/header.js +49 -47
- package/src/components/modules/list/index.tsx +83 -0
- package/src/components/modules/{maps/list → list}/item-expand-card/index.js +24 -22
- package/src/components/modules/list/item-list.tsx +198 -0
- package/src/components/modules/list/list-item/index.js +70 -0
- package/src/components/modules/list/list-item/list-item-container.js +43 -0
- package/src/components/modules/{maps/list/list-item/index.js → list/list-item/list-item.js} +32 -38
- package/src/components/modules/maps/map-list.js +74 -74
- package/src/contexts/mapContext.tsx +129 -0
- package/src/contexts/mapListContext.tsx +297 -0
- package/src/enums/SectionType.ts +9 -0
- package/src/services/{configService.js → configService.ts} +16 -16
- package/src/services/{googlePlacesNearbyService.js → googlePlacesNearbyService.ts} +11 -2
- package/src/services/listingAggregatorService.ts +76 -0
- package/src/services/listingEntityService.ts +16 -0
- package/src/services/listingService.ts +40 -0
- package/src/services/{recruiterService.js → recruiterService.ts} +18 -17
- package/src/types/Address.ts +7 -0
- package/src/types/ContentSection.ts +9 -0
- package/src/types/GetListingParams.ts +8 -0
- package/src/types/LatLng.ts +4 -0
- package/src/types/ListingEntity.ts +11 -0
- package/src/types/ListingFields.ts +20 -0
- package/src/types/Listings.ts +32 -0
- package/src/types/Recruiter.ts +9 -0
- package/src/types/SimilarListing.ts +24 -0
- package/src/types/config/Colors.ts +8 -0
- package/src/types/config/MapConfig.ts +30 -0
- package/src/types/config/PointsOfInterestConfig.ts +13 -0
- package/src/types/config/SearchConfig.ts +4 -0
- package/src/util/filterUtil.js +239 -239
- package/src/util/localStorageUtil.ts +34 -0
- package/src/util/mapUtil.js +91 -91
- package/tsconfig.json +23 -0
- package/dist/components/modules/maps/list/field-mapper.js.map +0 -1
- package/dist/components/modules/maps/list/header-item.js.map +0 -1
- package/dist/components/modules/maps/list/header.js.map +0 -1
- package/dist/components/modules/maps/list/index.js +0 -102
- package/dist/components/modules/maps/list/index.js.map +0 -1
- package/dist/components/modules/maps/list/item-expand-card/index.js.map +0 -1
- package/dist/components/modules/maps/list/item-expand-card/recruiter-contact-nav.js.map +0 -1
- package/dist/components/modules/maps/list/item-expand-card/recruiter-details.js.map +0 -1
- package/dist/components/modules/maps/list/item-expand-card/recruiter-headshot.js.map +0 -1
- package/dist/components/modules/maps/list/list-item/index.js.map +0 -1
- package/dist/services/_virtual/_rollupPluginBabelHelpers.js +0 -372
- package/dist/services/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/dist/services/apis/hcApi.js +0 -189
- package/dist/services/apis/hcApi.js.map +0 -1
- package/dist/services/clientToken.js +0 -7
- package/dist/services/clientToken.js.map +0 -1
- package/dist/services/styles/index.css +0 -3
- package/src/components/modules/maps/list/index.js +0 -112
- package/src/contexts/mapContext.js +0 -101
- package/src/contexts/mapListContext.js +0 -242
- package/src/services/listingAggregatorService.js +0 -50
- package/src/services/listingEntityService.js +0 -15
- package/src/services/listingService.js +0 -26
- package/src/util/localStorageUtil.js +0 -27
- /package/dist/components/modules/{maps/list → list}/item-expand-card/recruiter-headshot.js +0 -0
- /package/src/components/modules/{maps/list → list}/header-item.js +0 -0
- /package/src/components/modules/{maps/list → list}/item-expand-card/recruiter-contact-nav.js +0 -0
- /package/src/components/modules/{maps/list → list}/item-expand-card/recruiter-details.js +0 -0
- /package/src/components/modules/{maps/list → list}/item-expand-card/recruiter-headshot.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio-item.js","sources":["../../../../src/components/modules/filter/radio-item.js"],"sourcesContent":["import React from 'react';\r\n\r\nimport Icon from '~/components/modules/icon';\r\n\r\nimport { useMap } from \"~/contexts/mapContext\";\r\nimport { useTrackEvent } from '~/contexts/trackEventContext';\r\n\r\nconst RadioItem = ({\r\n\tclassName,\r\n\titem,\r\n\tfield,\r\n\t...rest\r\n}) => {\r\n\tconst { trackEvent, eventTypes } = useTrackEvent();\r\n\tconst { selectedPlaces, setSelectedPlaces } = useMap();\r\n\tconst chosenPlace = item.key.toLowerCase();\r\n\tlet isActive = selectedPlaces.includes(chosenPlace);\r\n\r\n\tconst changeHandler = () => {\r\n\t\tif(!isActive)\r\n\t\t\ttrackEvent(eventTypes.POI_APPLIED, { chosenPlace });\r\n\t\tsetSelectedPlaces([isActive ? '' : chosenPlace]);\r\n\t};\r\n\r\n\treturn (\r\n\t\t<label key={item.key}\r\n\t\t\tclassName={`\r\n\t\t\thc-flex hc-items-start hc-gap-2 hc-px-2 hc-py-1.5 hc-rounded-sm hc-text-sm hc-cursor-pointer hc-transition hover:hc-bg-uiAccent/5\r\n\t\t\t\t${item.count === 0 ? 'hc-text-uiDisabled hc-cursor-not-allowed' : 'hover:hc-bg-uiAccent/5'}\r\n\t\t\t\t${className ?? \"\"}\r\n\t\t\t`}\r\n\t\t\t{...rest}\r\n\t\t>\r\n\t\t\t<input\r\n\t\t\t\tkey={item.key}\r\n\t\t\t\tid={item.Key}\r\n\t\t\t\tname={field}\r\n\t\t\t\tvalue={item.key}\r\n\t\t\t\ttype={\"radio\"}\r\n\t\t\t\tclassName={`hc-size-4 hc-mt-px hc-text-primary hc-border-uiAccent/30 hc-transition-colors hc-rounded-full`}\r\n\t\t\t\tchecked={isActive}\r\n\t\t\t\tonClick={() => {\r\n\t\t\t\t\tchangeHandler();\r\n\t\t\t\t}}\r\n\t\t\t
|
|
1
|
+
{"version":3,"file":"radio-item.js","sources":["../../../../src/components/modules/filter/radio-item.js"],"sourcesContent":["import React from 'react';\r\n\r\nimport Icon from '~/components/modules/icon';\r\n\r\nimport { useMap } from \"~/contexts/mapContext\";\r\nimport { useTrackEvent } from '~/contexts/trackEventContext';\r\n\r\nconst RadioItem = ({\r\n\tclassName,\r\n\titem,\r\n\tfield,\r\n\t...rest\r\n}) => {\r\n\tconst { trackEvent, eventTypes } = useTrackEvent();\r\n\tconst { selectedPlaces, setSelectedPlaces } = useMap();\r\n\tconst chosenPlace = item.key.toLowerCase();\r\n\tlet isActive = selectedPlaces.includes(chosenPlace);\r\n\r\n\tconst changeHandler = () => {\r\n\t\tif(!isActive)\r\n\t\t\ttrackEvent(eventTypes.POI_APPLIED, { chosenPlace });\r\n\t\tsetSelectedPlaces([isActive ? '' : chosenPlace]);\r\n\t};\r\n\r\n\treturn (\r\n\t\t<label key={item.key}\r\n\t\t\tclassName={`\r\n\t\t\thc-flex hc-items-start hc-gap-2 hc-px-2 hc-py-1.5 hc-rounded-sm hc-text-sm hc-cursor-pointer hc-transition hover:hc-bg-uiAccent/5\r\n\t\t\t\t${item.count === 0 ? 'hc-text-uiDisabled hc-cursor-not-allowed' : 'hover:hc-bg-uiAccent/5'}\r\n\t\t\t\t${className ?? \"\"}\r\n\t\t\t`}\r\n\t\t\t{...rest}\r\n\t\t>\r\n\t\t\t<input\r\n\t\t\t\tkey={item.key}\r\n\t\t\t\tid={item.Key}\r\n\t\t\t\tname={field}\r\n\t\t\t\tvalue={item.key}\r\n\t\t\t\ttype={\"radio\"}\r\n\t\t\t\tclassName={`hc-size-4 hc-mt-px hc-text-primary hc-border-uiAccent/30 hc-transition-colors hc-rounded-full`}\r\n\t\t\t\tchecked={isActive}\r\n\t\t\t\tonClick={() => {\r\n\t\t\t\t\tchangeHandler();\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t\t<span className=\"hc-font-medium\">{item.key}</span>\r\n\t\t\t{isActive &&\r\n\t\t\t\t<div className=\"hc-w-full hc-unselect-div\">\r\n\t\t\t\t\t<Icon className=\"hc-float-right\" icon=\"mdi:times\"></Icon>\r\n\t\t\t\t</div>\r\n\t\t\t}\r\n\t\t</label>\r\n\t);\r\n};\r\n\r\nexport default RadioItem;\r\n"],"names":["RadioItem","_ref","className","item","field","rest","_objectWithoutProperties","_excluded","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","_useMap","useMap","selectedPlaces","setSelectedPlaces","chosenPlace","key","toLowerCase","isActive","includes","changeHandler","POI_APPLIED","React","createElement","_extends","concat","count","id","Key","name","value","type","checked","onClick","Icon","icon"],"mappings":";;;;;;;AAOA,IAAMA,SAAS,GAAG,SAAZA,SAASA,CAAAC,IAAA,EAKT;AAAA,EAAA,IAJLC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,KAAK,GAAAH,IAAA,CAALG,KAAK;AACFC,IAAAA,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA,CAAA,CAAA;AAEP,EAAA,IAAAC,cAAA,GAAmCC,aAAa,EAAE;IAA1CC,UAAU,GAAAF,cAAA,CAAVE,UAAU;IAAEC,UAAU,GAAAH,cAAA,CAAVG,UAAU,CAAA;AAC9B,EAAA,IAAAC,OAAA,GAA8CC,MAAM,EAAE;IAA9CC,cAAc,GAAAF,OAAA,CAAdE,cAAc;IAAEC,iBAAiB,GAAAH,OAAA,CAAjBG,iBAAiB,CAAA;EACzC,IAAMC,WAAW,GAAGb,IAAI,CAACc,GAAG,CAACC,WAAW,EAAE,CAAA;AAC1C,EAAA,IAAIC,QAAQ,GAAGL,cAAc,CAACM,QAAQ,CAACJ,WAAW,CAAC,CAAA;AAEnD,EAAA,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,GAAS;IAC3B,IAAG,CAACF,QAAQ,EACXT,UAAU,CAACC,UAAU,CAACW,WAAW,EAAE;AAAEN,MAAAA,WAAW,EAAXA,WAAAA;AAAY,KAAC,CAAC,CAAA;IACpDD,iBAAiB,CAAC,CAACI,QAAQ,GAAG,EAAE,GAAGH,WAAW,CAAC,CAAC,CAAA;GAChD,CAAA;AAED,EAAA,oBACCO,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAAC,QAAA,CAAA;IAAOR,GAAG,EAAEd,IAAI,CAACc,GAAI;IACpBf,SAAS,EAAA,qJAAA,CAAAwB,MAAA,CAENvB,IAAI,CAACwB,KAAK,KAAK,CAAC,GAAG,0CAA0C,GAAG,wBAAwB,EAAA,YAAA,CAAA,CAAAD,MAAA,CACxFxB,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAE,EAAA,UAAA,CAAA;AAChB,GAAA,EACEG,IAAI,CAAA,eAERkB,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAA;IACCP,GAAG,EAAEd,IAAI,CAACc,GAAI;IACdW,EAAE,EAAEzB,IAAI,CAAC0B,GAAI;AACbC,IAAAA,IAAI,EAAE1B,KAAM;IACZ2B,KAAK,EAAE5B,IAAI,CAACc,GAAI;AAChBe,IAAAA,IAAI,EAAE,OAAQ;AACd9B,IAAAA,SAAS,EAAkG,+FAAA;AAC3G+B,IAAAA,OAAO,EAAEd,QAAS;IAClBe,OAAO,EAAE,SAAAA,OAAAA,GAAM;AACdb,MAAAA,aAAa,EAAE,CAAA;AAChB,KAAA;AAAE,GACF,CAAC,eACFE,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMtB,IAAAA,SAAS,EAAC,gBAAA;GAAkBC,EAAAA,IAAI,CAACc,GAAU,CAAC,EACjDE,QAAQ,iBACRI,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKtB,IAAAA,SAAS,EAAC,2BAAA;AAA2B,GAAA,eACzCqB,KAAA,CAAAC,aAAA,CAACW,aAAI,EAAA;AAACjC,IAAAA,SAAS,EAAC,gBAAgB;AAACkC,IAAAA,IAAI,EAAC,WAAA;GAAkB,CACpD,CAEA,CAAC,CAAA;AAEV;;;;"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useMap } from '../../../contexts/mapContext.js';
|
|
3
|
+
import { useMapList } from '../../../contexts/mapListContext.js';
|
|
4
|
+
import { useTrackEvent } from '../../../contexts/trackEventContext.js';
|
|
5
|
+
import ListingDetails from './listing-details.js';
|
|
6
|
+
|
|
7
|
+
var ListingDetailsContainer = function ListingDetailsContainer(_ref) {
|
|
8
|
+
var item = _ref.item,
|
|
9
|
+
recruiters = _ref.recruiters;
|
|
10
|
+
var _useTrackEvent = useTrackEvent(),
|
|
11
|
+
trackEvent = _useTrackEvent.trackEvent,
|
|
12
|
+
eventTypes = _useTrackEvent.eventTypes;
|
|
13
|
+
var _useMap = useMap(),
|
|
14
|
+
travelTime = _useMap.travelTime;
|
|
15
|
+
var _useMapList = useMapList(),
|
|
16
|
+
siteConfig = _useMapList.siteConfig,
|
|
17
|
+
navigateToDetails = _useMapList.navigateToDetails,
|
|
18
|
+
navigateToEasyApply = _useMapList.navigateToEasyApply,
|
|
19
|
+
Link = _useMapList.Link,
|
|
20
|
+
linkFormat = _useMapList.linkFormat;
|
|
21
|
+
var useDetailsPostMessage = siteConfig.useDetailsPostMessage,
|
|
22
|
+
useApplyDialog = siteConfig.useApplyDialog,
|
|
23
|
+
internalApplyLink = siteConfig.internalApplyLink,
|
|
24
|
+
companyName = siteConfig.companyName,
|
|
25
|
+
jobsDomain = siteConfig.jobsDomain;
|
|
26
|
+
return /*#__PURE__*/React.createElement(ListingDetails, {
|
|
27
|
+
item: item,
|
|
28
|
+
recruiters: recruiters,
|
|
29
|
+
travelTime: travelTime,
|
|
30
|
+
useDetailsPostMessage: useDetailsPostMessage,
|
|
31
|
+
navigateToDetails: navigateToDetails,
|
|
32
|
+
navigateToEasyApply: navigateToEasyApply,
|
|
33
|
+
Link: Link,
|
|
34
|
+
linkFormat: linkFormat,
|
|
35
|
+
useApplyDialog: useApplyDialog,
|
|
36
|
+
internalApplyLink: internalApplyLink,
|
|
37
|
+
companyName: companyName,
|
|
38
|
+
jobsDomain: jobsDomain,
|
|
39
|
+
trackEvent: trackEvent,
|
|
40
|
+
eventTypes: eventTypes
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export { ListingDetailsContainer as default };
|
|
45
|
+
//# sourceMappingURL=listing-details-container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listing-details-container.js","sources":["../../../../src/components/modules/jobListing/listing-details-container.js"],"sourcesContent":["import React from 'react';\nimport { useMap } from '~/contexts/mapContext';\nimport { useMapList } from '~/contexts/mapListContext';\nimport { useTrackEvent } from '~/contexts/trackEventContext';\nimport ListingDetails from '~/components/modules/jobListing/listing-details';\n\nconst ListingDetailsContainer = ({ item, recruiters }) => {\n\tconst { trackEvent, eventTypes } = useTrackEvent();\n\tconst { travelTime } = useMap();\n\tconst { siteConfig, navigateToDetails, navigateToEasyApply, Link, linkFormat } = useMapList();\n\n\tconst {\n\t useDetailsPostMessage,\n\t useApplyDialog,\n\t internalApplyLink,\n\t companyName,\n\t jobsDomain\n\t} = siteConfig;\n\n\treturn (\n\t <ListingDetails\n\t\titem={item}\n\t\trecruiters={recruiters}\n\t\ttravelTime={travelTime}\n\t\tuseDetailsPostMessage={useDetailsPostMessage}\n\t\tnavigateToDetails={navigateToDetails}\n\t\tnavigateToEasyApply={navigateToEasyApply}\n\t\tLink={Link}\n\t\tlinkFormat={linkFormat}\n\t\tuseApplyDialog={useApplyDialog}\n\t\tinternalApplyLink={internalApplyLink}\n\t\tcompanyName={companyName}\n\t\tjobsDomain={jobsDomain}\n\t\ttrackEvent={trackEvent}\n\t\teventTypes={eventTypes}\n\t />\n\t);\n };\n\n export default ListingDetailsContainer;\n"],"names":["ListingDetailsContainer","_ref","item","recruiters","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","_useMap","useMap","travelTime","_useMapList","useMapList","siteConfig","navigateToDetails","navigateToEasyApply","Link","linkFormat","useDetailsPostMessage","useApplyDialog","internalApplyLink","companyName","jobsDomain","React","createElement","ListingDetails"],"mappings":";;;;;;AAMA,IAAMA,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAAC,IAAA,EAA6B;AAAA,EAAA,IAAvBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,UAAU,GAAAF,IAAA,CAAVE,UAAU,CAAA;AAClD,EAAA,IAAAC,cAAA,GAAmCC,aAAa,EAAE;IAA1CC,UAAU,GAAAF,cAAA,CAAVE,UAAU;IAAEC,UAAU,GAAAH,cAAA,CAAVG,UAAU,CAAA;AAC9B,EAAA,IAAAC,OAAA,GAAuBC,MAAM,EAAE;IAAvBC,UAAU,GAAAF,OAAA,CAAVE,UAAU,CAAA;AAClB,EAAA,IAAAC,WAAA,GAAiFC,UAAU,EAAE;IAArFC,UAAU,GAAAF,WAAA,CAAVE,UAAU;IAAEC,iBAAiB,GAAAH,WAAA,CAAjBG,iBAAiB;IAAEC,mBAAmB,GAAAJ,WAAA,CAAnBI,mBAAmB;IAAEC,IAAI,GAAAL,WAAA,CAAJK,IAAI;IAAEC,UAAU,GAAAN,WAAA,CAAVM,UAAU,CAAA;AAE5E,EAAA,IACEC,qBAAqB,GAKnBL,UAAU,CALZK,qBAAqB;IACrBC,cAAc,GAIZN,UAAU,CAJZM,cAAc;IACdC,iBAAiB,GAGfP,UAAU,CAHZO,iBAAiB;IACjBC,WAAW,GAETR,UAAU,CAFZQ,WAAW;IACXC,UAAU,GACRT,UAAU,CADZS,UAAU,CAAA;AAGZ,EAAA,oBACEC,KAAA,CAAAC,aAAA,CAACC,cAAc,EAAA;AAChBvB,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,UAAU,EAAEA,UAAW;AACvBO,IAAAA,UAAU,EAAEA,UAAW;AACvBQ,IAAAA,qBAAqB,EAAEA,qBAAsB;AAC7CJ,IAAAA,iBAAiB,EAAEA,iBAAkB;AACrCC,IAAAA,mBAAmB,EAAEA,mBAAoB;AACzCC,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,UAAU,EAAEA,UAAW;AACvBE,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,iBAAiB,EAAEA,iBAAkB;AACrCC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,UAAU,EAAEA,UAAW;AACvBhB,IAAAA,UAAU,EAAEA,UAAW;AACvBC,IAAAA,UAAU,EAAEA,UAAAA;AAAW,GACrB,CAAC,CAAA;AAEH;;;;"}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import RecruiterHeadshot from '../
|
|
3
|
-
import RecruiterDetails from '../
|
|
4
|
-
import RecruiterContactNav from '../
|
|
2
|
+
import RecruiterHeadshot from '../list/item-expand-card/recruiter-headshot.js';
|
|
3
|
+
import RecruiterDetails from '../list/item-expand-card/recruiter-details.js';
|
|
4
|
+
import RecruiterContactNav from '../list/item-expand-card/recruiter-contact-nav.js';
|
|
5
5
|
import ButtonGroupApply from '../buttons/button-group-apply.js';
|
|
6
6
|
import CommutePill from '../buttons/commute-pill.js';
|
|
7
|
-
import { useMap } from '../../../contexts/mapContext.js';
|
|
8
|
-
import { useMapList } from '../../../contexts/mapListContext.js';
|
|
9
|
-
import { useTrackEvent } from '../../../contexts/trackEventContext.js';
|
|
10
7
|
|
|
8
|
+
// import React from 'react';
|
|
11
9
|
var ListingDetails = function ListingDetails(_ref) {
|
|
12
10
|
var _item$details;
|
|
13
11
|
var item = _ref.item,
|
|
14
|
-
recruiters = _ref.recruiters
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
12
|
+
recruiters = _ref.recruiters,
|
|
13
|
+
travelTime = _ref.travelTime,
|
|
14
|
+
useDetailsPostMessage = _ref.useDetailsPostMessage,
|
|
15
|
+
navigateToDetails = _ref.navigateToDetails,
|
|
16
|
+
navigateToEasyApply = _ref.navigateToEasyApply,
|
|
17
|
+
Link = _ref.Link,
|
|
18
|
+
linkFormat = _ref.linkFormat,
|
|
19
|
+
useApplyDialog = _ref.useApplyDialog,
|
|
20
|
+
internalApplyLink = _ref.internalApplyLink,
|
|
21
|
+
companyName = _ref.companyName,
|
|
22
|
+
jobsDomain = _ref.jobsDomain,
|
|
23
|
+
trackEvent = _ref.trackEvent,
|
|
24
|
+
eventTypes = _ref.eventTypes;
|
|
25
|
+
console.log(item);
|
|
26
26
|
if (!item) {
|
|
27
27
|
return null;
|
|
28
28
|
}
|
|
@@ -50,21 +50,21 @@ var ListingDetails = function ListingDetails(_ref) {
|
|
|
50
50
|
icon: "ant-design:linkedin-outlined"
|
|
51
51
|
}))
|
|
52
52
|
}, (matchingRecruiter === null || matchingRecruiter === void 0 ? void 0 : matchingRecruiter.firstName) && (matchingRecruiter === null || matchingRecruiter === void 0 ? void 0 : matchingRecruiter.lastName) && /*#__PURE__*/React.createElement(RecruiterDetails.Title, null, "".concat(matchingRecruiter === null || matchingRecruiter === void 0 ? void 0 : matchingRecruiter.firstName, " ").concat(matchingRecruiter === null || matchingRecruiter === void 0 ? void 0 : matchingRecruiter.lastName)), ((_item$details = item.details) === null || _item$details === void 0 || (_item$details = _item$details.recruiter) === null || _item$details === void 0 ? void 0 : _item$details.title) && /*#__PURE__*/React.createElement(RecruiterDetails.Text, null, item.details.recruiter.title)), /*#__PURE__*/React.createElement(ButtonGroupApply, {
|
|
53
|
-
useDetailsPostMessage:
|
|
53
|
+
useDetailsPostMessage: useDetailsPostMessage,
|
|
54
54
|
navigateToDetails: navigateToDetails,
|
|
55
55
|
navigateToEasyApply: navigateToEasyApply,
|
|
56
56
|
Link: Link,
|
|
57
57
|
linkFormat: linkFormat,
|
|
58
|
-
includeDialog:
|
|
59
|
-
internalApplyLink:
|
|
60
|
-
companyName:
|
|
58
|
+
includeDialog: useApplyDialog,
|
|
59
|
+
internalApplyLink: internalApplyLink,
|
|
60
|
+
companyName: companyName,
|
|
61
61
|
applyUrl: item === null || item === void 0 ? void 0 : item.applyUrl,
|
|
62
62
|
itemId: item.id,
|
|
63
63
|
item: item,
|
|
64
64
|
trackEvent: trackEvent,
|
|
65
65
|
eventTypes: eventTypes,
|
|
66
|
-
detailsUrl: item.useClientJobUrl ? item === null || item === void 0 ? void 0 : item.detailsUrl : "".concat(
|
|
67
|
-
className: "\n
|
|
66
|
+
detailsUrl: item.useClientJobUrl ? item === null || item === void 0 ? void 0 : item.detailsUrl : "".concat(jobsDomain).concat(item.id),
|
|
67
|
+
className: "\n lg:hc-w-auto hc-order-first lg:hc-order-last md:hc-self-center hc-py-2 lg:hc-p-0 lg:hc-mb-0 hc-border-b lg:hc-border-none hc-border-uiAccent/20\n ".concat(matchingRecruiter ? "lg:hc-flex-col lg:hc-w-auto" : "lg:hc-flex-row", "\n ")
|
|
68
68
|
})), /*#__PURE__*/React.createElement("div", {
|
|
69
69
|
className: "hc-w-full"
|
|
70
70
|
}, /*#__PURE__*/React.createElement(CommutePill, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listing-details.js","sources":["../../../../src/components/modules/jobListing/listing-details.js"],"sourcesContent":["import React from 'react';\r\n\r\nimport RecruiterHeadshot from '~/components/modules/maps/list/item-expand-card/recruiter-headshot';\r\nimport RecruiterDetails from '~/components/modules/maps/list/item-expand-card/recruiter-details';\r\nimport RecruiterContactNav from '~/components/modules/maps/list/item-expand-card/recruiter-contact-nav';\r\nimport ApplyButtonGroup from '~/components/modules/buttons/button-group-apply';\r\nimport CommutePill from '~/components/modules/buttons/commute-pill';\r\n\r\nimport { useMap } from '~/contexts/mapContext';\r\nimport { useMapList } from '~/contexts/mapListContext';\r\nimport { useTrackEvent } from '~/contexts/trackEventContext';\r\n\r\nconst ListingDetails = ({ item, recruiters }) => {\r\n\tconst { trackEvent, eventTypes } = useTrackEvent();\r\n\tconst { travelTime } = useMap();\r\n\tconst { siteConfig, navigateToDetails, navigateToEasyApply, Link, linkFormat } = useMapList();\r\n\tif (!item) {\r\n\t\treturn null;\r\n\t}\r\n\tlet matchingRecruiter = !recruiters ? null : recruiters[item?.recruiterId];\r\n\treturn (\r\n\t\t<div className=\"hc-w-full\">\r\n\t\t\t<div className=\"hc-grow hc-flex hc-flex-wrap hc-items-center hc-gap-4\">\r\n\t\t\t\t{matchingRecruiter?.headshot && (\r\n\t\t\t\t\t<RecruiterHeadshot\r\n\t\t\t\t\t\timage={`https:${matchingRecruiter.headshot}`}\r\n\t\t\t\t\t\talt={matchingRecruiter?.firstName}\r\n\t\t\t\t\t\tclassName=\"hc-bg-gray-300\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t)}\r\n\t\t\t\t{matchingRecruiter && (\r\n\t\t\t\t\t<RecruiterDetails\r\n\t\t\t\t\t\tcontactNav={\r\n\t\t\t\t\t\t\t<RecruiterContactNav>\r\n\t\t\t\t\t\t\t\t{matchingRecruiter?.mobilePhone && (\r\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\r\n\t\t\t\t\t\t\t\t\t\thref={`tel:${matchingRecruiter.mobilePhone}`}\r\n\t\t\t\t\t\t\t\t\t\ttitle={`Call ${matchingRecruiter.mobilePhone}`}\r\n\t\t\t\t\t\t\t\t\t\ticon=\"fluent:phone-32-regular\"\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t{matchingRecruiter?.email && (\r\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\r\n\t\t\t\t\t\t\t\t\t\thref={`mailto:${matchingRecruiter.email}`}\r\n\t\t\t\t\t\t\t\t\t\ttitle={`email ${matchingRecruiter.email}`}\r\n\t\t\t\t\t\t\t\t\t\ticon=\"bi:envelope-at\"\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t{matchingRecruiter?.linkedIn && (\r\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\r\n\t\t\t\t\t\t\t\t\t\thref={matchingRecruiter.linkedIn}\r\n\t\t\t\t\t\t\t\t\t\ttitle=\"LinkedIn\"\r\n\t\t\t\t\t\t\t\t\t\ticon=\"ant-design:linkedin-outlined\"\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t</RecruiterContactNav>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{matchingRecruiter?.firstName && matchingRecruiter?.lastName && (\r\n\t\t\t\t\t\t\t<RecruiterDetails.Title>\r\n\t\t\t\t\t\t\t\t{`${matchingRecruiter?.firstName} ${matchingRecruiter?.lastName}`}\r\n\t\t\t\t\t\t\t</RecruiterDetails.Title>\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{item.details?.recruiter?.title && (\r\n\t\t\t\t\t\t\t<RecruiterDetails.Text>\r\n\t\t\t\t\t\t\t\t{item.details.recruiter.title}\r\n\t\t\t\t\t\t\t</RecruiterDetails.Text>\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t</RecruiterDetails>\r\n\t\t\t\t)}\r\n\t\t\t\t<ApplyButtonGroup\r\n\t\t\t\t\tuseDetailsPostMessage={siteConfig.useDetailsPostMessage}\r\n\t\t\t\t\tnavigateToDetails={navigateToDetails}\r\n\t\t\t\t\tnavigateToEasyApply={navigateToEasyApply}\r\n\t\t\t\t\tLink={Link}\r\n\t\t\t\t\tlinkFormat={linkFormat}\r\n\t\t\t\t\tincludeDialog={siteConfig.useApplyDialog}\r\n\t\t\t\t\tinternalApplyLink={siteConfig.internalApplyLink}\r\n\t\t\t\t\tcompanyName={siteConfig.companyName}\r\n\t\t\t\t\tapplyUrl={item?.applyUrl}\r\n\t\t\t\t\titemId={item.id}\r\n\t\t\t\t\titem={item}\r\n\t\t\t\t\ttrackEvent={trackEvent}\r\n\t\t\t\t\teventTypes={eventTypes}\r\n\t\t\t\t\tdetailsUrl={item.useClientJobUrl ? item?.detailsUrl : `${siteConfig.jobsDomain}${item.id}`}\r\n\t\t\t\t\tclassName={`\r\n\t\t\t\t\t\tlg:hc-w-auto hc-order-first lg:hc-order-last md:hc-self-center hc-py-2 lg:hc-p-0 lg:hc-mb-0 hc-border-b lg:hc-border-none hc-border-uiAccent/20\r\n\t\t\t\t\t\t${matchingRecruiter ? \"lg:hc-flex-col lg:hc-w-auto\" : \"lg:hc-flex-row\"}\r\n\t\t\t\t\t`}\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<div className=\"hc-w-full\">\r\n\t\t\t\t<CommutePill travelTime={travelTime} className=\"hc-ml-0\" />\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default ListingDetails;\r\n"],"names":["ListingDetails","_ref","_item$details","item","recruiters","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","_useMap","useMap","travelTime","_useMapList","useMapList","siteConfig","navigateToDetails","navigateToEasyApply","Link","linkFormat","matchingRecruiter","recruiterId","React","createElement","className","headshot","RecruiterHeadshot","image","concat","alt","firstName","RecruiterDetails","contactNav","RecruiterContactNav","mobilePhone","Button","href","title","icon","email","linkedIn","lastName","Title","details","recruiter","Text","ApplyButtonGroup","useDetailsPostMessage","includeDialog","useApplyDialog","internalApplyLink","companyName","applyUrl","itemId","id","detailsUrl","useClientJobUrl","jobsDomain","CommutePill"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"listing-details.js","sources":["../../../../src/components/modules/jobListing/listing-details.js"],"sourcesContent":["// import React from 'react';\n\n// import RecruiterHeadshot from '~/components/modules/list/item-expand-card/recruiter-headshot';\n// import RecruiterDetails from '~/components/modules/list/item-expand-card/recruiter-details';\n// import RecruiterContactNav from '~/components/modules/list/item-expand-card/recruiter-contact-nav';\n// import ApplyButtonGroup from '~/components/modules/buttons/button-group-apply';\n// import CommutePill from '~/components/modules/buttons/commute-pill';\n\n// import { useMap } from '~/contexts/mapContext';\n// import { useMapList } from '~/contexts/mapListContext';\n// import { useTrackEvent } from '~/contexts/trackEventContext';\n\n// const ListingDetails = ({ item, recruiters }) => {\n// \tconst { trackEvent, eventTypes } = useTrackEvent();\n// \tconst { travelTime } = useMap();\n// \tconst { siteConfig, navigateToDetails, navigateToEasyApply, Link, linkFormat } = useMapList();\n// \tif (!item) {\n// \t\treturn null;\n// \t}\n// \tlet matchingRecruiter = !recruiters ? null : recruiters[item?.recruiterId];\n// \treturn (\n// \t\t<div className=\"hc-w-full\">\n// \t\t\t<div className=\"hc-grow hc-flex hc-flex-wrap hc-items-center hc-gap-4\">\n// \t\t\t\t{matchingRecruiter?.headshot && (\n// \t\t\t\t\t<RecruiterHeadshot\n// \t\t\t\t\t\timage={`https:${matchingRecruiter.headshot}`}\n// \t\t\t\t\t\talt={matchingRecruiter?.firstName}\n// \t\t\t\t\t\tclassName=\"hc-bg-gray-300\"\n// \t\t\t\t\t/>\n// \t\t\t\t)}\n// \t\t\t\t{matchingRecruiter && (\n// \t\t\t\t\t<RecruiterDetails\n// \t\t\t\t\t\tcontactNav={\n// \t\t\t\t\t\t\t<RecruiterContactNav>\n// \t\t\t\t\t\t\t\t{matchingRecruiter?.mobilePhone && (\n// \t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n// \t\t\t\t\t\t\t\t\t\thref={`tel:${matchingRecruiter.mobilePhone}`}\n// \t\t\t\t\t\t\t\t\t\ttitle={`Call ${matchingRecruiter.mobilePhone}`}\n// \t\t\t\t\t\t\t\t\t\ticon=\"fluent:phone-32-regular\"\n// \t\t\t\t\t\t\t\t\t/>\n// \t\t\t\t\t\t\t\t)}\n// \t\t\t\t\t\t\t\t{matchingRecruiter?.email && (\n// \t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n// \t\t\t\t\t\t\t\t\t\thref={`mailto:${matchingRecruiter.email}`}\n// \t\t\t\t\t\t\t\t\t\ttitle={`email ${matchingRecruiter.email}`}\n// \t\t\t\t\t\t\t\t\t\ticon=\"bi:envelope-at\"\n// \t\t\t\t\t\t\t\t\t/>\n// \t\t\t\t\t\t\t\t)}\n// \t\t\t\t\t\t\t\t{matchingRecruiter?.linkedIn && (\n// \t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n// \t\t\t\t\t\t\t\t\t\thref={matchingRecruiter.linkedIn}\n// \t\t\t\t\t\t\t\t\t\ttitle=\"LinkedIn\"\n// \t\t\t\t\t\t\t\t\t\ticon=\"ant-design:linkedin-outlined\"\n// \t\t\t\t\t\t\t\t\t/>\n// \t\t\t\t\t\t\t\t)}\n// \t\t\t\t\t\t\t</RecruiterContactNav>\n// \t\t\t\t\t\t}\n// \t\t\t\t\t>\n// \t\t\t\t\t\t{matchingRecruiter?.firstName && matchingRecruiter?.lastName && (\n// \t\t\t\t\t\t\t<RecruiterDetails.Title>\n// \t\t\t\t\t\t\t\t{`${matchingRecruiter?.firstName} ${matchingRecruiter?.lastName}`}\n// \t\t\t\t\t\t\t</RecruiterDetails.Title>\n// \t\t\t\t\t\t)}\n// \t\t\t\t\t\t{item.details?.recruiter?.title && (\n// \t\t\t\t\t\t\t<RecruiterDetails.Text>\n// \t\t\t\t\t\t\t\t{item.details.recruiter.title}\n// \t\t\t\t\t\t\t</RecruiterDetails.Text>\n// \t\t\t\t\t\t)}\n// \t\t\t\t\t</RecruiterDetails>\n// \t\t\t\t)}\n// \t\t\t\t<ApplyButtonGroup\n// \t\t\t\t\tuseDetailsPostMessage={siteConfig.useDetailsPostMessage}\n// \t\t\t\t\tnavigateToDetails={navigateToDetails}\n// \t\t\t\t\tnavigateToEasyApply={navigateToEasyApply}\n// \t\t\t\t\tLink={Link}\n// \t\t\t\t\tlinkFormat={linkFormat}\n// \t\t\t\t\tincludeDialog={siteConfig.useApplyDialog}\n// \t\t\t\t\tinternalApplyLink={siteConfig.internalApplyLink}\n// \t\t\t\t\tcompanyName={siteConfig.companyName}\n// \t\t\t\t\tapplyUrl={item?.applyUrl}\n// \t\t\t\t\titemId={item.id}\n// \t\t\t\t\titem={item}\n// \t\t\t\t\ttrackEvent={trackEvent}\n// \t\t\t\t\teventTypes={eventTypes}\n// \t\t\t\t\tdetailsUrl={item.useClientJobUrl ? item?.detailsUrl : `${siteConfig.jobsDomain}${item.id}`}\n// \t\t\t\t\tclassName={`\n// \t\t\t\t\t\tlg:hc-w-auto hc-order-first lg:hc-order-last md:hc-self-center hc-py-2 lg:hc-p-0 lg:hc-mb-0 hc-border-b lg:hc-border-none hc-border-uiAccent/20\n// \t\t\t\t\t\t${matchingRecruiter ? \"lg:hc-flex-col lg:hc-w-auto\" : \"lg:hc-flex-row\"}\n// \t\t\t\t\t`}\n// \t\t\t\t/>\n// \t\t\t</div>\n// \t\t\t<div className=\"hc-w-full\">\n// \t\t\t\t<CommutePill travelTime={travelTime} className=\"hc-ml-0\" />\n// \t\t\t</div>\n// \t\t</div>\n// \t);\n// };\n\n// export default ListingDetails;\nimport React from 'react';\nimport RecruiterHeadshot from '~/components/modules/list/item-expand-card/recruiter-headshot';\nimport RecruiterDetails from '~/components/modules/list/item-expand-card/recruiter-details';\nimport RecruiterContactNav from '~/components/modules/list/item-expand-card/recruiter-contact-nav';\nimport ApplyButtonGroup from '~/components/modules/buttons/button-group-apply';\nimport CommutePill from '~/components/modules/buttons/commute-pill';\n\nconst ListingDetails = ({\n\titem,\n\trecruiters,\n\ttravelTime,\n\tuseDetailsPostMessage,\n\tnavigateToDetails,\n\tnavigateToEasyApply,\n\tLink,\n\tlinkFormat,\n\tuseApplyDialog,\n\tinternalApplyLink,\n\tcompanyName,\n\tjobsDomain,\n\ttrackEvent,\n\teventTypes\n}) => {\n\tconsole.log(item);\n\tif (!item) {\n\t\treturn null;\n\t}\n\n\tlet matchingRecruiter = !recruiters ? null : recruiters[item?.recruiterId];\n\n\treturn (\n\t\t<div className=\"hc-w-full\">\n\t\t\t<div className=\"hc-grow hc-flex hc-flex-wrap hc-items-center hc-gap-4\">\n\t\t\t\t{matchingRecruiter?.headshot && (\n\t\t\t\t\t<RecruiterHeadshot\n\t\t\t\t\t\timage={`https:${matchingRecruiter.headshot}`}\n\t\t\t\t\t\talt={matchingRecruiter?.firstName}\n\t\t\t\t\t\tclassName=\"hc-bg-gray-300\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{matchingRecruiter && (\n\t\t\t\t\t<RecruiterDetails\n\t\t\t\t\t\tcontactNav={\n\t\t\t\t\t\t\t<RecruiterContactNav>\n\t\t\t\t\t\t\t\t{matchingRecruiter?.mobilePhone && (\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n\t\t\t\t\t\t\t\t\t\thref={`tel:${matchingRecruiter.mobilePhone}`}\n\t\t\t\t\t\t\t\t\t\ttitle={`Call ${matchingRecruiter.mobilePhone}`}\n\t\t\t\t\t\t\t\t\t\ticon=\"fluent:phone-32-regular\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{matchingRecruiter?.email && (\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n\t\t\t\t\t\t\t\t\t\thref={`mailto:${matchingRecruiter.email}`}\n\t\t\t\t\t\t\t\t\t\ttitle={`email ${matchingRecruiter.email}`}\n\t\t\t\t\t\t\t\t\t\ticon=\"bi:envelope-at\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{matchingRecruiter?.linkedIn && (\n\t\t\t\t\t\t\t\t\t<RecruiterContactNav.Button\n\t\t\t\t\t\t\t\t\t\thref={matchingRecruiter.linkedIn}\n\t\t\t\t\t\t\t\t\t\ttitle=\"LinkedIn\"\n\t\t\t\t\t\t\t\t\t\ticon=\"ant-design:linkedin-outlined\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</RecruiterContactNav>\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{matchingRecruiter?.firstName && matchingRecruiter?.lastName && (\n\t\t\t\t\t\t\t<RecruiterDetails.Title>\n\t\t\t\t\t\t\t\t{`${matchingRecruiter?.firstName} ${matchingRecruiter?.lastName}`}\n\t\t\t\t\t\t\t</RecruiterDetails.Title>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{item.details?.recruiter?.title && (\n\t\t\t\t\t\t\t<RecruiterDetails.Text>\n\t\t\t\t\t\t\t\t{item.details.recruiter.title}\n\t\t\t\t\t\t\t</RecruiterDetails.Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</RecruiterDetails>\n\t\t\t\t)}\n\t\t\t\t<ApplyButtonGroup\n\t\t\t\t\tuseDetailsPostMessage={useDetailsPostMessage}\n\t\t\t\t\tnavigateToDetails={navigateToDetails}\n\t\t\t\t\tnavigateToEasyApply={navigateToEasyApply}\n\t\t\t\t\tLink={Link}\n\t\t\t\t\tlinkFormat={linkFormat}\n\t\t\t\t\tincludeDialog={useApplyDialog}\n\t\t\t\t\tinternalApplyLink={internalApplyLink}\n\t\t\t\t\tcompanyName={companyName}\n\t\t\t\t\tapplyUrl={item?.applyUrl}\n\t\t\t\t\titemId={item.id}\n\t\t\t\t\titem={item}\n\t\t\t\t\ttrackEvent={trackEvent}\n\t\t\t\t\teventTypes={eventTypes}\n\t\t\t\t\tdetailsUrl={item.useClientJobUrl ? item?.detailsUrl : `${jobsDomain}${item.id}`}\n\t\t\t\t\tclassName={`\n lg:hc-w-auto hc-order-first lg:hc-order-last md:hc-self-center hc-py-2 lg:hc-p-0 lg:hc-mb-0 hc-border-b lg:hc-border-none hc-border-uiAccent/20\n ${matchingRecruiter ? \"lg:hc-flex-col lg:hc-w-auto\" : \"lg:hc-flex-row\"}\n `}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div className=\"hc-w-full\">\n\t\t\t\t<CommutePill travelTime={travelTime} className=\"hc-ml-0\" />\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default ListingDetails;\n\n"],"names":["ListingDetails","_ref","_item$details","item","recruiters","travelTime","useDetailsPostMessage","navigateToDetails","navigateToEasyApply","Link","linkFormat","useApplyDialog","internalApplyLink","companyName","jobsDomain","trackEvent","eventTypes","console","log","matchingRecruiter","recruiterId","React","createElement","className","headshot","RecruiterHeadshot","image","concat","alt","firstName","RecruiterDetails","contactNav","RecruiterContactNav","mobilePhone","Button","href","title","icon","email","linkedIn","lastName","Title","details","recruiter","Text","ApplyButtonGroup","includeDialog","applyUrl","itemId","id","detailsUrl","useClientJobUrl","CommutePill"],"mappings":"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"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { slicedToArray as _slicedToArray } from '
|
|
1
|
+
import { slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import Grid from '
|
|
4
|
-
import IconContained from '
|
|
5
|
-
import { PillWrapper } from '
|
|
6
|
-
import { capitalize } from '
|
|
3
|
+
import Grid from '../grid.js';
|
|
4
|
+
import IconContained from '../icon.js';
|
|
5
|
+
import { PillWrapper } from '../buttons/pill-wrapper.js';
|
|
6
|
+
import { capitalize } from '../../../util/stringUtils.js';
|
|
7
7
|
|
|
8
8
|
var FieldMapper = function FieldMapper(_ref) {
|
|
9
9
|
var item = _ref.item,
|
|
10
10
|
fieldsShown = _ref.fieldsShown,
|
|
11
11
|
specialFeatures = _ref.specialFeatures,
|
|
12
12
|
handleFavouriteClick = _ref.handleFavouriteClick,
|
|
13
|
-
isFavorite = _ref.isFavorite
|
|
13
|
+
isFavorite = _ref.isFavorite,
|
|
14
|
+
includeFavorite = _ref.includeFavorite;
|
|
14
15
|
var orderedFields = fieldsShown.filter(function (field) {
|
|
15
16
|
return field in item.fields;
|
|
16
17
|
});
|
|
@@ -40,7 +41,7 @@ var FieldMapper = function FieldMapper(_ref) {
|
|
|
40
41
|
className: "hc-flex hc-justify-between hc-items-center hc-min-w-[100%]"
|
|
41
42
|
}, " ", /*#__PURE__*/React.createElement("h3", {
|
|
42
43
|
className: "hc-font-bold hc-mb-3 hc-flex-1"
|
|
43
|
-
}, item.fields.position), /*#__PURE__*/React.createElement("div", {
|
|
44
|
+
}, item.fields.position), includeFavorite && /*#__PURE__*/React.createElement("div", {
|
|
44
45
|
className: "hc-flex hc-justify-end hc-pb-2"
|
|
45
46
|
}, /*#__PURE__*/React.createElement(IconContained, {
|
|
46
47
|
icon: isFavorite ? "mdi:heart" : "mdi:heart-outline",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-mapper.js","sources":["../../../../src/components/modules/list/field-mapper.js"],"sourcesContent":["import React from 'react';\n\nimport Grid from '~/components/modules/grid';\nimport Icon from '~/components/modules/icon';\nimport PillWrapper from '~/components/modules/buttons/pill-wrapper';\n\nimport { capitalize } from '~/util/stringUtils';\n\nconst FieldMapper = ({\n\titem,\n\tfieldsShown,\n\tspecialFeatures,\n\thandleFavouriteClick,\n\tisFavorite,\n\tincludeFavorite\n}) => {\n\tconst orderedFields = fieldsShown.filter(field => field in item.fields);\n\n\tconst specialFeaturePills = field => {\n\t\treturn field === 'position' && specialFeatures &&\n\t\t\tObject.entries(specialFeatures).map(([featureKey, featureLabel]) => {\n\t\t\t\treturn item.fields[featureKey] === 1 && (\n\t\t\t\t\t<PillWrapper key={featureKey}>{featureLabel}</PillWrapper>\n\t\t\t\t);\n\t\t\t});\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{orderedFields.map(field => {\n\t\t\t\tlet value = item.fields[field];\n\t\t\t\treturn (\n\t\t\t\t\t<Grid.Item\n\t\t\t\t\t\tkey={field}\n\t\t\t\t\t\tclassName={`\n\t\t\t\t\t\t\thc-hidden md:hc-block\n\t\t\t\t\t\t\t${field.toLowerCase() === \"position\" ? \"hc-col-span-2 hc-text-balance hc-pr-2 hc-font-semibold\" : \"hc-col-span-1\"}\n\t\t\t\t\t\t`}\n\t\t\t\t\t>\n\t\t\t\t\t\t<span className=\"hc-sr-only\">{capitalize(field)}</span>\n\t\t\t\t\t\t{value}\n\t\t\t\t\t\t<br />\n\t\t\t\t\t\t{specialFeaturePills(field)}\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t);\n\t\t\t})}\n\t\t\t<Grid.Item className=\"md:hc-hidden\">\n\t\t\t\t{fieldsShown.includes(\"position\") &&\n\t\t\t\t\t<>\n\t\t\t\t\t\t<div className=\"hc-flex hc-items-start\">\n\t\t\t\t\t\t\t<div className=\"hc-flex hc-justify-between hc-items-center hc-min-w-[100%]\"> {/* Use percentage for minimum width */}\n\t\t\t\t\t\t\t\t<h3 className=\"hc-font-bold hc-mb-3 hc-flex-1\">{item.fields.position}</h3>\n\t\t\t\t\t\t\t\t{includeFavorite && <div className=\"hc-flex hc-justify-end hc-pb-2\">\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\ticon={isFavorite ? \"mdi:heart\" : \"mdi:heart-outline\"}\n\t\t\t\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\n\t\t\t\t\t\t\t\t\t\ticonClasses={isFavorite ? \"hc-text-primary\" : \"\"}\n\t\t\t\t\t\t\t\t\t\tclassName={`hc-transition-opacity hc-duration-300 hc-cursor-pointer\n\t\t\t\t\t\t\t\t\t${isFavorite ? \"hc-opacity-100\" : \"hc-text-uiText/60 group-hover:hc-opacity-100\"}\n\t\t\t\t\t\t\t\t\t`}\n\t\t\t\t\t\t\t\t\t\tonClick={e => handleFavouriteClick(e)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{specialFeatures && <div className='hc-pb-4'>{specialFeaturePills(\"position\", true)} </div>}\n\t\t\t\t\t</>\n\t\t\t\t}\n\n\t\t\t\t<ul className=\"hc-space-y-2 hc-text-xs\">\n\t\t\t\t\t{[\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfield: \"category\",\n\t\t\t\t\t\t\tname: \"Category\",\n\t\t\t\t\t\t\ticon: \"icon-park-solid:tree-list\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfield: \"schedule\",\n\t\t\t\t\t\t\tname: \"Schedule\",\n\t\t\t\t\t\t\ticon: \"gravity-ui:clock-fill\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfield: \"cityState\",\n\t\t\t\t\t\t\tname: \"Location\",\n\t\t\t\t\t\t\ticon: \"fluent:location-16-filled\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfield: \"travelTime\",\n\t\t\t\t\t\t\tname: \"Commute\",\n\t\t\t\t\t\t\ticon: \"ri:pin-distance-fill\"\n\t\t\t\t\t\t}\n\t\t\t\t\t].map(listItem => (\n\t\t\t\t\t\t(fieldsShown.includes(listItem.field) && item.fields[listItem.field]) &&\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\tkey={listItem.field}\n\t\t\t\t\t\t\tclassName=\"hc-flex hc-gap-2\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={listItem.icon}\n\t\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\n\t\t\t\t\t\t\t\tclassName=\"hc-text-uiAccent/30\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<span className=\"hc-sr-only\">{listItem.name}</span>\n\t\t\t\t\t\t\t{item.fields[listItem.field]}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t))}\n\t\t\t\t</ul>\n\t\t\t</Grid.Item>\n\t\t</>\n\t);\n};\n\nexport default FieldMapper;\n"],"names":["FieldMapper","_ref","item","fieldsShown","specialFeatures","handleFavouriteClick","isFavorite","includeFavorite","orderedFields","filter","field","fields","specialFeaturePills","Object","entries","map","_ref2","_ref3","_slicedToArray","featureKey","featureLabel","React","createElement","PillWrapper","key","Fragment","value","Grid","Item","className","concat","toLowerCase","capitalize","includes","position","Icon","icon","size","iconClasses","onClick","e","name","listItem"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React, { useState, useEffect } from 'react';
|
|
3
|
-
import Button from '
|
|
3
|
+
import Button from '../buttons/default.js';
|
|
4
4
|
|
|
5
5
|
var _excluded = ["className", "children", "field", "setSortSetting", "sortSetting", "isSortable"];
|
|
6
6
|
var SORT_STATE = {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-item.js","sources":["../../../../src/components/modules/list/header-item.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\r\n\r\nimport Button from '~/components/modules/buttons/default';\r\n\r\nconst SORT_STATE = {\r\n\tnotSorted: \"not-sorted\",\r\n\tsortedAsc: \"sorted-asc\",\r\n\tsortedDesc: \"sorted-desc\"\r\n};\r\n\r\nconst HeaderItem = ({\r\n\tclassName,\r\n\tchildren,\r\n\tfield,\r\n\tsetSortSetting,\r\n\tsortSetting,\r\n\tisSortable,\r\n\t...rest\r\n}) => {\r\n\tconst [isSorted, setIsSorted] = useState(SORT_STATE.notSorted);\r\n\r\n\tconst handleChange = field => {\r\n\t\tif (isSortable === false)\r\n\t\t\treturn;\r\n\t\tlet setting = {\r\n\t\t\tfield: field,\r\n\t\t\ttype: isSorted === SORT_STATE.sortedAsc ? \"desc\" : \"asc\"\r\n\t\t};\r\n\t\tsetSortSetting(setting);\r\n\t\tisSorted === SORT_STATE.notSorted\r\n\t\t\t? setIsSorted(SORT_STATE.sortedAsc)\r\n\t\t\t: isSorted === SORT_STATE.sortedAsc\r\n\t\t\t\t? setIsSorted(SORT_STATE.sortedDesc)\r\n\t\t\t\t: setIsSorted(SORT_STATE.sortedAsc);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (sortSetting?.field != null && sortSetting.field != field) {\r\n\t\t\tsetIsSorted(SORT_STATE.notSorted);\r\n\t\t} else if (\r\n\t\t\tsortSetting?.field != null &&\r\n\t\t\tisSorted == SORT_STATE.notSorted &&\r\n\t\t\tsortSetting.field == field\r\n\t\t) {\r\n\t\t\tsetIsSorted(\r\n\t\t\t\tsortSetting.type == \"asc\"\r\n\t\t\t\t\t? SORT_STATE.sortedAsc\r\n\t\t\t\t\t: SORT_STATE.sortedDesc\r\n\t\t\t);\r\n\t\t}\r\n\t}, [sortSetting, isSorted, field]);\r\n\r\n\treturn (\r\n\t\t<Button.Btn\r\n\t\t\tonClick={() => handleChange(field)}\r\n\t\t\tvariant=\"none\"\r\n\t\t\tclassName={`\r\n\t\t\t\thc-p-2 hc-rounded-none hc-text-left hc-normal-case hover:hc-bg-uiAccent/5 focus:hc-bg-uiAccent/5\r\n\t\t\t\t${field.toLowerCase() === \"position\" ? \"hc-col-span-2\" : \"hc-col-span-1\"}\r\n\t\t\t\t${className ?? \"\"}\r\n\t\t\t`}\r\n\t\t\t{...rest}\r\n\t\t>\r\n\t\t\t<Button.Body>\r\n\t\t\t\t<span className=\"hc-font-semibold\">{children}</span>\r\n\t\t\t\t{isSortable && (\r\n\t\t\t\t\t<div className=\"hc-flex hc-flex-col hc-pr-2\">\r\n\t\t\t\t\t\t<Button.Icon\r\n\t\t\t\t\t\t\ticon=\"bi:caret-up-fill\"\r\n\t\t\t\t\t\t\tsize=\"hc-size-2.5\"\r\n\t\t\t\t\t\t\tclassName={`\r\n\t\t\t\t\t\t\thc-transition-opacity\r\n\t\t\t\t\t\t\t\t${isSorted === \"sorted-asc\" ? \"hc-opacity-100 hc-text-primary\" : \"hc-opacity-30\"}\r\n\t\t\t\t\t\t\t`}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t<Button.Icon\r\n\t\t\t\t\t\t\ticon=\"bi:caret-down-fill\"\r\n\t\t\t\t\t\t\tsize=\"hc-size-2.5\"\r\n\t\t\t\t\t\t\tclassName={`\r\n\t\t\t\t\t\t\t\ttransition-opacity\r\n\t\t\t\t\t\t\t\t${isSorted === \"sorted-desc\" ? \"hc-opacity-100\" : \"hc-opacity-30\"}\r\n\t\t\t\t\t\t\t`}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</Button.Body>\r\n\t\t</Button.Btn>\r\n\t);\r\n};\r\n\r\nexport default HeaderItem;\r\n"],"names":["SORT_STATE","notSorted","sortedAsc","sortedDesc","HeaderItem","_ref","className","children","field","setSortSetting","sortSetting","isSortable","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","isSorted","setIsSorted","handleChange","setting","type","useEffect","React","createElement","Button","Btn","_extends","onClick","variant","concat","toLowerCase","Body","Icon","icon","size"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { taggedTemplateLiteral as _taggedTemplateLiteral } from '
|
|
1
|
+
import { taggedTemplateLiteral as _taggedTemplateLiteral } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { twMerge } from 'tailwind-merge';
|
|
4
|
-
import Grid from '
|
|
4
|
+
import Grid from '../grid.js';
|
|
5
5
|
import HeaderItem from './header-item.js';
|
|
6
6
|
|
|
7
7
|
var _templateObject;
|
|
@@ -12,7 +12,9 @@ var ListHeader = function ListHeader(_ref) {
|
|
|
12
12
|
_ref$fieldIsSortable = _ref.fieldIsSortable,
|
|
13
13
|
fieldIsSortable = _ref$fieldIsSortable === void 0 ? true : _ref$fieldIsSortable,
|
|
14
14
|
setSortSetting = _ref.setSortSetting,
|
|
15
|
-
sortSetting = _ref.sortSetting
|
|
15
|
+
sortSetting = _ref.sortSetting,
|
|
16
|
+
_ref$includeFavorite = _ref.includeFavorite,
|
|
17
|
+
includeFavorite = _ref$includeFavorite === void 0 ? false : _ref$includeFavorite;
|
|
16
18
|
return /*#__PURE__*/React.createElement(Grid, {
|
|
17
19
|
columns: "hc-grid-flow-col hc-auto-cols-fr",
|
|
18
20
|
gap: "hc-gap-0",
|
|
@@ -26,7 +28,7 @@ var ListHeader = function ListHeader(_ref) {
|
|
|
26
28
|
field: field,
|
|
27
29
|
setSortSetting: setSortSetting
|
|
28
30
|
}, fieldNames[field]);
|
|
29
|
-
}), /*#__PURE__*/React.createElement(HeaderItem, {
|
|
31
|
+
}), includeFavorite == true && /*#__PURE__*/React.createElement(HeaderItem, {
|
|
30
32
|
key: "favorite",
|
|
31
33
|
isSortable: false,
|
|
32
34
|
field: "favorite"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header.js","sources":["../../../../src/components/modules/list/header.js"],"sourcesContent":["import React from 'react';\nimport { twMerge } from 'tailwind-merge';\n\nimport Grid from '~/components/modules/grid';\nimport HeaderItem from '~/components/modules/list/header-item';\n\nconst ListHeader = ({\n\tclassName,\n\tfieldsShown,\n\tfieldNames,\n\tfieldIsSortable = true,\n\tsetSortSetting,\n\tsortSetting,\n\tincludeFavorite = false\n}) => {\n\treturn (\n\t\t<Grid\n\t\t\tcolumns=\"hc-grid-flow-col hc-auto-cols-fr\"\n\t\t\tgap=\"hc-gap-0\"\n\t\t\tisAnimated={false}\n\t\t\tclassName={twMerge`\n\t\t\t\thc-hidden md:hc-grid hc-bg-uiAccent/10 hc-border-b hc-border-uiAccent/10 hc-sticky hc-top-0 hc-z-10\n\t\t\t\t${className ?? \"\"}\n\t\t\t`}\n\t\t>\n\t\t\t{fieldsShown.map(field => (\n\t\t\t\t<HeaderItem\n\t\t\t\t\tkey={field}\n\t\t\t\t\tisSortable={fieldIsSortable}\n\t\t\t\t\tsortSetting={sortSetting}\n\t\t\t\t\tfield={field}\n\t\t\t\t\tsetSortSetting={setSortSetting}\n\t\t\t\t>\n\t\t\t\t\t{fieldNames[field]}\n\t\t\t\t</HeaderItem>\n\t\t\t))}\n\t\t\t{ includeFavorite == true &&\n\t\t\t<HeaderItem key={\"favorite\"}\n\t\t\t\tisSortable={false}\n\t\t\t\tfield={\"favorite\"}\n\t\t\t>\n\t\t\t\tFavorite\n\t\t\t</HeaderItem>\n\t\t\t}\n\t\t</Grid>\n\t);\n};\n\nexport default ListHeader;\n"],"names":["ListHeader","_ref","className","fieldsShown","fieldNames","_ref$fieldIsSortable","fieldIsSortable","setSortSetting","sortSetting","_ref$includeFavorite","includeFavorite","React","createElement","Grid","columns","gap","isAnimated","twMerge","_templateObject","_taggedTemplateLiteral","map","field","HeaderItem","key","isSortable"],"mappings":";;;;;;;AAMA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAQV;AAAA,EAAA,IAPLC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,UAAU,GAAAH,IAAA,CAAVG,UAAU;IAAAC,oBAAA,GAAAJ,IAAA,CACVK,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,oBAAA;IACtBE,cAAc,GAAAN,IAAA,CAAdM,cAAc;IACdC,WAAW,GAAAP,IAAA,CAAXO,WAAW;IAAAC,oBAAA,GAAAR,IAAA,CACXS,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA,CAAA;AAEvB,EAAA,oBACCE,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AACJC,IAAAA,OAAO,EAAC,kCAAkC;AAC1CC,IAAAA,GAAG,EAAC,UAAU;AACdC,IAAAA,UAAU,EAAE,KAAM;AAClBd,IAAAA,SAAS,EAAEe,OAAO,CAAAC,eAAA,KAAAA,eAAA,GAAAC,sBAAA,CAAA,CAAA,yHAAA,EAAA,UAAA,CAAA,CAAA,CAAA,EAEfjB,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,SAAS,GAAI,EAAE,CAAA;AAChB,GAAA,EAEDC,WAAW,CAACiB,GAAG,CAAC,UAAAC,KAAK,EAAA;AAAA,IAAA,oBACrBV,KAAA,CAAAC,aAAA,CAACU,UAAU,EAAA;AACVC,MAAAA,GAAG,EAAEF,KAAM;AACXG,MAAAA,UAAU,EAAElB,eAAgB;AAC5BE,MAAAA,WAAW,EAAEA,WAAY;AACzBa,MAAAA,KAAK,EAAEA,KAAM;AACbd,MAAAA,cAAc,EAAEA,cAAAA;AAAe,KAAA,EAE9BH,UAAU,CAACiB,KAAK,CACN,CAAC,CAAA;GACb,CAAC,EACAX,eAAe,IAAI,IAAI,iBACzBC,KAAA,CAAAC,aAAA,CAACU,UAAU,EAAA;AAACC,IAAAA,GAAG,EAAE,UAAW;AAC3BC,IAAAA,UAAU,EAAE,KAAM;AAClBH,IAAAA,KAAK,EAAE,UAAA;GACP,EAAA,UAEW,CAEP,CAAC,CAAA;AAET;;;;"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import useListLogic from '../../../hooks/useList.js';
|
|
3
|
+
import { useMap } from '../../../contexts/mapContext.js';
|
|
4
|
+
import { useMapList } from '../../../contexts/mapListContext.js';
|
|
5
|
+
import { useTrackEvent } from '../../../contexts/trackEventContext.js';
|
|
6
|
+
import ItemsList from './item-list.js';
|
|
7
|
+
import Accordion from '../accordions/default.js';
|
|
8
|
+
import MapAccordionItemContainer from './list-item/index.js';
|
|
9
|
+
import { dynamicSort } from '../../../util/sortUtil.js';
|
|
10
|
+
import ListingDetailsContainer from '../jobListing/listing-details-container.js';
|
|
11
|
+
|
|
12
|
+
const ItemsListContainer = ({ fieldNames, showMap, fieldsShown, specialFeatures }) => {
|
|
13
|
+
const { mapItems, filteredListings, loading, commuteLocation, sortSetting, setSortSetting } = useMapList();
|
|
14
|
+
const { itemLimit, loader, scrollContainerRef, itemRefs } = useListLogic(filteredListings);
|
|
15
|
+
const { selectedListItem } = useMap();
|
|
16
|
+
const { trackEvent, eventTypes } = useTrackEvent();
|
|
17
|
+
const itemExpandedContent = (item, recruiters) => item ? React.createElement(ListingDetailsContainer, { item: item, recruiters: recruiters }) : null;
|
|
18
|
+
if (!fieldsShown.includes('travelTime') && commuteLocation != null && Object.entries(commuteLocation).length > 0) {
|
|
19
|
+
fieldsShown.push('travelTime');
|
|
20
|
+
fieldNames['travelTime'] = 'Commute';
|
|
21
|
+
}
|
|
22
|
+
else if (fieldsShown.includes('travelTime') && !commuteLocation) {
|
|
23
|
+
fieldsShown = fieldsShown.filter(x => x !== 'travelTime');
|
|
24
|
+
}
|
|
25
|
+
const setTrackedSortSetting = (sortSetting) => {
|
|
26
|
+
trackEvent(eventTypes.LIST_SORTED, sortSetting);
|
|
27
|
+
setSortSetting(sortSetting);
|
|
28
|
+
};
|
|
29
|
+
return (React.createElement(ItemsList, { fieldNames: fieldNames, showMap: showMap, fieldsShown: fieldsShown, filteredListings: filteredListings, loading: loading, sortSetting: sortSetting, setSortSetting: setTrackedSortSetting, itemLimit: itemLimit, loader: loader, scrollContainerRef: scrollContainerRef, itemRefs: itemRefs, selectedListItem: selectedListItem, itemExpandedContent: itemExpandedContent, includeFavorite: true },
|
|
30
|
+
React.createElement(Accordion, { className: "hc-divide-y hc-divide-uiAccent/10 hc-z-[1000]", defaultValue: selectedListItem?.id }, (sortSetting ? dynamicSort(filteredListings, sortSetting.field, sortSetting.type) : filteredListings)
|
|
31
|
+
.slice(0, itemLimit)
|
|
32
|
+
.map((item) => (React.createElement(MapAccordionItemContainer, { key: item.id, showMap: showMap, item: item, itemRefs: itemRefs, fieldsShown: fieldsShown, itemExpandedContent: itemExpandedContent, specialFeatures: specialFeatures, isActive: selectedListItem?.id === item.id, hasListItemSelected: selectedListItem != null }))))));
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export { ItemsListContainer as default };
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/modules/list/index.tsx"],"sourcesContent":["import React from 'react';\nimport useListLogic from '~/hooks/useList';\nimport { useMap } from '~/contexts/mapContext';\nimport { useMapList } from '~/contexts/mapListContext';\nimport { useTrackEvent } from '~/contexts/trackEventContext';\nimport ItemsList from '~/components/modules/list/item-list';\nimport Accordion from '~/components/modules/accordions/default';\nimport MapAccordionItemContainer from '~/components/modules/list/list-item';\nimport { dynamicSort } from '~/util/sortUtil';\nimport { Listing } from '~/types/Listings';\nimport ListingDetailsContainer from '../jobListing/listing-details-container';\n\ninterface ItemsListContainerProps {\n fieldNames: Record<string, string>;\n showMap: boolean;\n fieldsShown: string[];\n specialFeatures: any;\n}\n\nconst ItemsListContainer: React.FC<ItemsListContainerProps> = ({\n\tfieldNames,\n\tshowMap,\n\tfieldsShown,\n\tspecialFeatures\n}) => {\n\tconst { mapItems, filteredListings, loading, commuteLocation, sortSetting, setSortSetting } = useMapList();\n\tconst { itemLimit, loader, scrollContainerRef, itemRefs } = useListLogic(filteredListings as any);\n\tconst { selectedListItem } = useMap();\n\tconst { trackEvent, eventTypes } = useTrackEvent() as any;\n\tconst itemExpandedContent = (item: any, recruiters: any) =>\n\t\titem ? <ListingDetailsContainer item={item} recruiters={recruiters} /> : null;\n\n\tif (!fieldsShown.includes('travelTime') && commuteLocation != null && Object.entries(commuteLocation).length > 0) {\n\t\tfieldsShown.push('travelTime');\n\t\tfieldNames['travelTime'] = 'Commute';\n\t} else if (fieldsShown.includes('travelTime') && !commuteLocation) {\n\t\tfieldsShown = fieldsShown.filter(x => x !== 'travelTime');\n\t}\n\n\tconst setTrackedSortSetting = (sortSetting: { field: string; type: string }) => {\n\t\ttrackEvent(eventTypes.LIST_SORTED, sortSetting);\n\t\tsetSortSetting(sortSetting);\n\t};\n\n\treturn (\n\t\t<ItemsList\n\t\t\tfieldNames={fieldNames}\n\t\t\tshowMap={showMap}\n\t\t\tfieldsShown={fieldsShown}\n\t\t\tfilteredListings={filteredListings}\n\t\t\tloading={loading}\n\t\t\tsortSetting={sortSetting}\n\t\t\tsetSortSetting={setTrackedSortSetting}\n\t\t\titemLimit={itemLimit}\n\t\t\tloader={loader}\n\t\t\tscrollContainerRef={scrollContainerRef}\n\t\t\titemRefs={itemRefs}\n\t\t\tselectedListItem={selectedListItem}\n\t\t\titemExpandedContent={itemExpandedContent}\n\t\t\tincludeFavorite={true}\n\t\t>\n\t\t\t<Accordion className=\"hc-divide-y hc-divide-uiAccent/10 hc-z-[1000]\" defaultValue={selectedListItem?.id}>\n\t\t\t\t{(sortSetting ? dynamicSort(filteredListings, sortSetting.field, sortSetting.type) : filteredListings)\n\t\t\t\t\t.slice(0, itemLimit)\n\t\t\t\t\t.map((item: Listing) => (\n\t\t\t\t\t\t<MapAccordionItemContainer\n\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\tshowMap={showMap}\n\t\t\t\t\t\t\titem={item}\n\t\t\t\t\t\t\titemRefs={itemRefs}\n\t\t\t\t\t\t\tfieldsShown={fieldsShown}\n\t\t\t\t\t\t\titemExpandedContent={itemExpandedContent}\n\t\t\t\t\t\t\tspecialFeatures={specialFeatures}\n\t\t\t\t\t\t\tisActive={selectedListItem?.id === item.id}\n\t\t\t\t\t\t\thasListItemSelected={selectedListItem != null}\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\t\t\t</Accordion>\n\t\t</ItemsList>\n\t);\n};\n\nexport default ItemsListContainer;\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { twMerge } from 'tailwind-merge';
|
|
4
4
|
|
|
@@ -7,6 +7,8 @@ var CardItemExpand = function CardItemExpand(_ref) {
|
|
|
7
7
|
var className = _ref.className,
|
|
8
8
|
content = _ref.content,
|
|
9
9
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
10
|
+
console.log(content);
|
|
11
|
+
console.log("cardItem render");
|
|
10
12
|
return /*#__PURE__*/React.createElement("div", _extends({
|
|
11
13
|
className: twMerge('hc-flex hc-flex-col lg:hc-flex-row hc-flex-wrap hc-items-stretch hc-gap-x-4 hc-w-full lg:hc-pt-2 hc-border-t hc-border-uiAccent/20', className !== null && className !== void 0 ? className : '')
|
|
12
14
|
}, props), content);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/modules/list/item-expand-card/index.js"],"sourcesContent":["import React from 'react';\nimport { twMerge } from 'tailwind-merge';\n\nconst CardItemExpand = ({\n\tclassName,\n\tcontent,\n\t...props\n}) => {\n\tconsole.log(content);\n\tconsole.log(\"cardItem render\");\n\treturn (\n\t\t<div\n\t\t\tclassName={twMerge(\n\t\t\t\t'hc-flex hc-flex-col lg:hc-flex-row hc-flex-wrap hc-items-stretch hc-gap-x-4 hc-w-full lg:hc-pt-2 hc-border-t hc-border-uiAccent/20',\n\t\t\t\tclassName ?? ''\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{content}\n\t\t</div>\n\t);\n};\n\nexport default CardItemExpand;\n"],"names":["CardItemExpand","_ref","className","content","props","_objectWithoutProperties","_excluded","console","log","React","createElement","_extends","twMerge"],"mappings":";;;;;AAGA,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAId;AAAA,EAAA,IAHLC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,OAAO,GAAAF,IAAA,CAAPE,OAAO;AACJC,IAAAA,KAAK,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA,CAAA;AAERC,EAAAA,OAAO,CAACC,GAAG,CAACL,OAAO,CAAC,CAAA;AACpBI,EAAAA,OAAO,CAACC,GAAG,CAAC,iBAAiB,CAAC,CAAA;AAC9B,EAAA,oBACCC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;IACCT,SAAS,EAAEU,OAAO,CACjB,oIAAoI,EACpIV,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EACd,CAAA;GACIE,EAAAA,KAAK,CAERD,EAAAA,OACG,CAAC,CAAA;AAER;;;;"}
|
package/dist/components/modules/{maps/list → list}/item-expand-card/recruiter-contact-nav.js
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import Button from '
|
|
3
|
+
import Button from '../../buttons/default.js';
|
|
4
4
|
|
|
5
5
|
var _excluded = ["className", "href", "target", "title", "icon"];
|
|
6
6
|
var RecruiterContactNav = function RecruiterContactNav(_ref) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recruiter-contact-nav.js","sources":["../../../../../src/components/modules/list/item-expand-card/recruiter-contact-nav.js"],"sourcesContent":["import React from 'react';\r\n\r\nimport Button from '~/components/modules/buttons/default';\r\n\r\nconst RecruiterContactNav = ({\r\n\tchildren,\r\n\tclassName\r\n}) => {\r\n\treturn (\r\n\t\t<nav\r\n\t\t\tclassName={`\r\n\t\t\thc-inline-flex hc-items-center hc-justify-between hc-gap-2 hc-mt-2\r\n\t\t\t\t${className ?? ''}\r\n\t\t\t`}\r\n\t\t>\r\n\t\t\t{children}\r\n\t\t</nav>\r\n\t);\r\n};\r\n\r\nexport const NavButton = ({\r\n\tclassName,\r\n\thref,\r\n\ttarget = '_self',\r\n\ttitle,\r\n\ticon,\r\n\t...props\r\n}) => {\r\n\treturn (\r\n\t\t<Button.Anchor\r\n\t\t\thref={href}\r\n\t\t\tvariant=\"icon\"\r\n\t\t\tsize=\"sq\"\r\n\t\t\ttarget={target}\r\n\t\t\ttitle={title}\r\n\t\t\tclassName={className ?? ''}\r\n\t\t\t{...props}\r\n\t\t>\r\n\t\t\t<span className=\"hc-sr-only\">{title}</span>\r\n\t\t\t<Button.Icon\r\n\t\t\t\ticon={icon}\r\n\t\t\t\tsize=\"hc-size-8\"\r\n\t\t\t/>\r\n\t\t</Button.Anchor>\r\n\t);\r\n};\r\n\r\nRecruiterContactNav.Button = NavButton;\r\n\r\nexport default RecruiterContactNav;\r\n"],"names":["RecruiterContactNav","_ref","children","className","React","createElement","concat","NavButton","_ref2","href","_ref2$target","target","title","icon","props","_objectWithoutProperties","_excluded","Button","Anchor","_extends","variant","size","Icon"],"mappings":";;;;;AAIA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAGnB;AAAA,EAAA,IAFLC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,SAAS,GAAAF,IAAA,CAATE,SAAS,CAAA;EAET,oBACCC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACCF,SAAS,EAAA,sFAAA,CAAAG,MAAA,CAENH,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAE,EAAA,UAAA,CAAA;AAChB,GAAA,EAEDD,QACG,CAAC,CAAA;AAER,EAAC;IAEYK,SAAS,GAAG,SAAZA,SAASA,CAAAC,KAAA,EAOhB;AAAA,EAAA,IANLL,SAAS,GAAAK,KAAA,CAATL,SAAS;IACTM,IAAI,GAAAD,KAAA,CAAJC,IAAI;IAAAC,YAAA,GAAAF,KAAA,CACJG,MAAM;AAANA,IAAAA,MAAM,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,YAAA;IAChBE,KAAK,GAAAJ,KAAA,CAALI,KAAK;IACLC,IAAI,GAAAL,KAAA,CAAJK,IAAI;AACDC,IAAAA,KAAK,GAAAC,wBAAA,CAAAP,KAAA,EAAAQ,SAAA,CAAA,CAAA;EAER,oBACCZ,KAAA,CAAAC,aAAA,CAACY,MAAM,CAACC,MAAM,EAAAC,QAAA,CAAA;AACbV,IAAAA,IAAI,EAAEA,IAAK;AACXW,IAAAA,OAAO,EAAC,MAAM;AACdC,IAAAA,IAAI,EAAC,IAAI;AACTV,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,KAAK,EAAEA,KAAM;AACbT,IAAAA,SAAS,EAAEA,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAA;AAAG,GAAA,EACvBW,KAAK,CAAA,eAETV,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMF,IAAAA,SAAS,EAAC,YAAA;GAAcS,EAAAA,KAAY,CAAC,eAC3CR,KAAA,CAAAC,aAAA,CAACY,MAAM,CAACK,IAAI,EAAA;AACXT,IAAAA,IAAI,EAAEA,IAAK;AACXQ,IAAAA,IAAI,EAAC,WAAA;AAAW,GAChB,CACa,CAAC,CAAA;AAElB,EAAC;AAEDrB,mBAAmB,CAACiB,MAAM,GAAGV,SAAS;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { taggedTemplateLiteral as _taggedTemplateLiteral } from '
|
|
1
|
+
import { taggedTemplateLiteral as _taggedTemplateLiteral } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { twMerge } from 'tailwind-merge';
|
|
4
4
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recruiter-details.js","sources":["../../../../../src/components/modules/list/item-expand-card/recruiter-details.js"],"sourcesContent":["import React from 'react';\r\nimport { twMerge } from 'tailwind-merge';\r\n\r\nconst RecruiterDetails = ({\r\n\tcontactNav,\r\n\tclassName,\r\n\tchildren\r\n}) => {\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={twMerge`\r\n\t\t\t\thc-grow\r\n\t\t\t\t${className ?? ''}\r\n\t\t\t`}\r\n\t\t>\r\n\t\t\t{children}\r\n\r\n\t\t\t{contactNav &&\r\n\t\t\t\t<div className=\"hc-inline-flex\">\r\n\t\t\t\t\t{contactNav}\r\n\t\t\t\t</div>\r\n\t\t\t}\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport const Title = ({\r\n\tas = 'h4',\r\n\tclassName,\r\n\tchildren\r\n}) => {\r\n\tconst Container = as;\r\n\r\n\treturn (\r\n\t\t<Container\r\n\t\t\tclassName={twMerge`\r\n\t\t\t\thc-text-base hc-font-medium\r\n\t\t\t\t${className ?? ''}\r\n\t\t\t`}\r\n\t\t>\r\n\t\t\t{children}\r\n\t\t</Container>\r\n\t);\r\n};\r\n\r\nexport const Text = ({\r\n\tas = 'p',\r\n\tclassName,\r\n\tchildren\r\n}) => {\r\n\tconst Container = as;\r\n\r\n\treturn (\r\n\t\t<Container\r\n\t\t\tclassName={twMerge`\r\n\t\t\t\thc-text-sm hc-text-uiText/60\r\n\t\t\t\t${className ?? ''}\r\n\t\t\t`}\r\n\t\t>\r\n\t\t\t{children}\r\n\t\t</Container>\r\n\t);\r\n};\r\n\r\nRecruiterDetails.Title = Title;\r\nRecruiterDetails.Text = Text;\r\n\r\nexport default RecruiterDetails;\r\n"],"names":["RecruiterDetails","_ref","contactNav","className","children","React","createElement","twMerge","_templateObject","_taggedTemplateLiteral","Title","_ref2","_ref2$as","as","Container","_templateObject2","Text","_ref3","_ref3$as","_templateObject3"],"mappings":";;;;;AAGA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAIhB;AAAA,EAAA,IAHLC,UAAU,GAAAD,IAAA,CAAVC,UAAU;IACVC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,QAAQ,GAAAH,IAAA,CAARG,QAAQ,CAAA;EAER,oBACCC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACCH,IAAAA,SAAS,EAAEI,OAAO,CAAAC,eAAA,KAAAA,eAAA,GAAAC,sBAAA,CAAA,CAAA,6BAAA,EAAA,UAAA,CAAA,CAAA,CAAA,EAEfN,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,SAAS,GAAI,EAAE,CAAA;AAChB,GAAA,EAEDC,QAAQ,EAERF,UAAU,iBACVG,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKH,IAAAA,SAAS,EAAC,gBAAA;GACbD,EAAAA,UACG,CAEF,CAAC,CAAA;AAER,EAAC;IAEYQ,KAAK,GAAG,SAARA,KAAKA,CAAAC,KAAA,EAIZ;AAAA,EAAA,IAAAC,QAAA,GAAAD,KAAA,CAHLE,EAAE;AAAFA,IAAAA,EAAE,GAAAD,QAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,QAAA;IACTT,SAAS,GAAAQ,KAAA,CAATR,SAAS;IACTC,QAAQ,GAAAO,KAAA,CAARP,QAAQ,CAAA;EAER,IAAMU,SAAS,GAAGD,EAAE,CAAA;AAEpB,EAAA,oBACCR,KAAA,CAAAC,aAAA,CAACQ,SAAS,EAAA;AACTX,IAAAA,SAAS,EAAEI,OAAO,CAAAQ,gBAAA,KAAAA,gBAAA,GAAAN,sBAAA,CAAA,CAAA,iDAAA,EAAA,UAAA,CAAA,CAAA,CAAA,EAEfN,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,SAAS,GAAI,EAAE,CAAA;AAChB,GAAA,EAEDC,QACS,CAAC,CAAA;AAEd,EAAC;IAEYY,IAAI,GAAG,SAAPA,IAAIA,CAAAC,KAAA,EAIX;AAAA,EAAA,IAAAC,QAAA,GAAAD,KAAA,CAHLJ,EAAE;AAAFA,IAAAA,EAAE,GAAAK,QAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,QAAA;IACRf,SAAS,GAAAc,KAAA,CAATd,SAAS;IACTC,QAAQ,GAAAa,KAAA,CAARb,QAAQ,CAAA;EAER,IAAMU,SAAS,GAAGD,EAAE,CAAA;AAEpB,EAAA,oBACCR,KAAA,CAAAC,aAAA,CAACQ,SAAS,EAAA;AACTX,IAAAA,SAAS,EAAEI,OAAO,CAAAY,gBAAA,KAAAA,gBAAA,GAAAV,sBAAA,CAAA,CAAA,kDAAA,EAAA,UAAA,CAAA,CAAA,CAAA,EAEfN,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,SAAS,GAAI,EAAE,CAAA;AAChB,GAAA,EAEDC,QACS,CAAC,CAAA;AAEd,EAAC;AAEDJ,gBAAgB,CAACU,KAAK,GAAGA,KAAK,CAAA;AAC9BV,gBAAgB,CAACgB,IAAI,GAAGA,IAAI;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recruiter-headshot.js","sources":["../../../../../src/components/modules/list/item-expand-card/recruiter-headshot.js"],"sourcesContent":["import React from 'react';\r\n\r\nconst RecruiterHeadshot = ({\r\n\timage,\r\n\talt,\r\n\tclassName,\r\n\timageClassName\r\n}) => {\r\n\treturn (\r\n\t\t<div className={className ?? ''}>\r\n\t\t\t<img\r\n\t\t\t\tsrc={image}\r\n\t\t\t\twidth=\"96\"\r\n\t\t\t\theight=\"96\"\r\n\t\t\t\talt={alt}\r\n\t\t\t\tclassName={imageClassName ?? ''}\r\n\t\t\t/>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default RecruiterHeadshot;\r\n"],"names":["RecruiterHeadshot","_ref","image","alt","className","imageClassName","React","createElement","src","width","height"],"mappings":";;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAC,IAAA,EAKjB;AAAA,EAAA,IAJLC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,GAAG,GAAAF,IAAA,CAAHE,GAAG;IACHC,SAAS,GAAAH,IAAA,CAATG,SAAS;IACTC,cAAc,GAAAJ,IAAA,CAAdI,cAAc,CAAA;EAEd,oBACCC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKH,IAAAA,SAAS,EAAEA,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAA;GAC5BE,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACCC,IAAAA,GAAG,EAAEN,KAAM;AACXO,IAAAA,KAAK,EAAC,IAAI;AACVC,IAAAA,MAAM,EAAC,IAAI;AACXP,IAAAA,GAAG,EAAEA,GAAI;AACTC,IAAAA,SAAS,EAAEC,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,KAAA,CAAA,GAAdA,cAAc,GAAI,EAAA;AAAG,GAChC,CACG,CAAC,CAAA;AAER;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import ListHeader from './header.js';
|
|
3
|
+
import FilterSort from '../filter/sort.js';
|
|
4
|
+
import Loading from '../../../util/loading.js';
|
|
5
|
+
|
|
6
|
+
// import React, { RefObject } from 'react';
|
|
7
|
+
const ItemsList = ({ fieldNames, showMap, fieldsShown, filteredListings, loading, sortSetting, setSortSetting, itemLimit, loader, scrollContainerRef, itemRefs, selectedListItem, itemExpandedContent, includeFavorite = false, children // Destructure children
|
|
8
|
+
}) => (React.createElement("div", { className: "hc-relative hc-bg-white md:hc-px-4 hc-flex hc-flex-col" },
|
|
9
|
+
React.createElement("div", { className: "hc-flex hc-flex-wrap hc-items-center hc-justify-between hc-gap-4 md:hc-mb-2 hc-p-3 md:hc-p-0 hc-bg-uiAccent/10 md:hc-bg-transparent hc-border-b md:hc-border-none hc-border-uiAccent/20" },
|
|
10
|
+
React.createElement("h2", { className: "hc-text-gray-500 hc-font-semibold hc-text-xs md:hc-text-sm" },
|
|
11
|
+
loading && React.createElement("span", null, "Loading..."),
|
|
12
|
+
!loading && React.createElement("span", null,
|
|
13
|
+
filteredListings.length,
|
|
14
|
+
" results")),
|
|
15
|
+
React.createElement("div", { className: "hc-block md:hc-hidden" },
|
|
16
|
+
React.createElement(FilterSort, { className: '', fields: fieldsShown, setSortSetting: setSortSetting, fieldNames: fieldNames }))),
|
|
17
|
+
React.createElement("div", null,
|
|
18
|
+
React.createElement(ListHeader, { className: '', setSortSetting: setSortSetting, sortSetting: sortSetting, fieldsShown: fieldsShown, fieldNames: fieldNames, includeFavorite: includeFavorite })),
|
|
19
|
+
React.createElement("div", { ref: scrollContainerRef, className: `
|
|
20
|
+
hc-flex-grow hc-overflow-y-auto
|
|
21
|
+
${showMap ? "md:hc-max-h-45vh hc-max-h-[100vh]" : "md:hc-max-h-95vh hc-max-h-[95vh]"}
|
|
22
|
+
` },
|
|
23
|
+
loading ? (React.createElement("div", { className: "hc-flex hc-justify-center hc-items-center hc-pt-20" },
|
|
24
|
+
React.createElement(Loading, null))) : (children),
|
|
25
|
+
React.createElement("div", { ref: loader, style: { height: "100px", textAlign: "center" } }, filteredListings.length >= itemLimit && React.createElement(Loading, null)))));
|
|
26
|
+
|
|
27
|
+
export { ItemsList as default };
|
|
28
|
+
//# sourceMappingURL=item-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"item-list.js","sources":["../../../../src/components/modules/list/item-list.tsx"],"sourcesContent":["// import React, { RefObject } from 'react';\n// import Accordion from '~/components/modules/accordions/default';\n// import Header from '~/components/modules/list/header';\n// import MapAccordionItemContainer from '~/components/modules/list/list-item';\n// import Sort from '~/components/modules/filter/sort';\n// import ListingDetails from '~/components/modules/jobListing/listing-details';\n// import Loading from \"~/util/loading\";\n// import { dynamicSort } from '~/util/sortUtil';\n// import { IListing } from '~/interfaces/IListings';\n// import { IMapConfig } from '~/interfaces/config/IMapConfig';\n\n// interface ItemsListProps {\n// fieldNames: Record<string, string>;\n// showMap: boolean;\n// fieldsShown: string[];\n// specialFeatures: any;\n// mapItems: any;\n// filteredListings: IListing[];\n// loading: boolean;\n// sortSetting: any;\n// setSortSetting: (setting: any) => void;\n// itemLimit: number;\n// loader: RefObject<HTMLDivElement>;\n// scrollContainerRef: RefObject<HTMLDivElement>;\n// itemRefs: any;\n// selectedListItem: IListing | null;\n// itemExpandedContent: (item: IListing, recruiters: any) => JSX.Element | null;\n// }\n\n// const ItemsList: React.FC<ItemsListProps> = ({\n// \tfieldNames,\n// \tshowMap,\n// \tfieldsShown,\n// \tspecialFeatures,\n// \tmapItems,\n// \tfilteredListings,\n// \tloading,\n// \tsortSetting,\n// \tsetSortSetting,\n// \titemLimit,\n// \tloader,\n// \tscrollContainerRef,\n// \titemRefs,\n// \tselectedListItem,\n// \titemExpandedContent\n// }) => (\n// \t<div className=\"hc-relative hc-bg-white md:hc-px-4 hc-flex hc-flex-col\">\n// \t\t<div className=\"hc-flex hc-flex-wrap hc-items-center hc-justify-between hc-gap-4 md:hc-mb-2 hc-p-3 md:hc-p-0 hc-bg-uiAccent/10 md:hc-bg-transparent hc-border-b md:hc-border-none hc-border-uiAccent/20\">\n// \t\t\t<h2 className=\"hc-text-gray-500 hc-font-semibold hc-text-xs md:hc-text-sm\">\n// \t\t\t\t{loading && <span>Loading...</span>}\n// \t\t\t\t{!loading && <span>{filteredListings.length} results</span>}\n// \t\t\t</h2>\n// \t\t\t<div className=\"hc-block md:hc-hidden\">\n// \t\t\t\t<Sort\n// \t\t\t\t\tclassName={''}\n// \t\t\t\t\tfields={fieldsShown}\n// \t\t\t\t\tsetSortSetting={setSortSetting}\n// \t\t\t\t\tfieldNames={fieldNames}\n// \t\t\t\t/>\n// \t\t\t</div>\n// \t\t</div>\n// \t\t<div>\n// \t\t\t<Header\n// \t\t\t\tclassName={''}\n// \t\t\t\tsetSortSetting={setSortSetting}\n// \t\t\t\tsortSetting={sortSetting}\n// \t\t\t\tfieldsShown={fieldsShown}\n// \t\t\t\tfieldNames={fieldNames}\n// \t\t\t/>\n// \t\t</div>\n// \t\t<div\n// \t\t\tref={scrollContainerRef}\n// \t\t\tclassName={`\n// hc-flex-grow hc-overflow-y-auto\n// ${showMap ? \"md:hc-max-h-45vh hc-max-h-[100vh]\" : \"md:hc-max-h-95vh hc-max-h-[95vh]\"}\n// `}\n// \t\t>\n// \t\t\t{loading ? (\n// \t\t\t\t<div className=\"hc-flex hc-justify-center hc-items-center hc-pt-20\">\n// \t\t\t\t\t<Loading />\n// \t\t\t\t</div>\n// \t\t\t) : (\n// \t\t\t\t<Accordion className=\"hc-divide-y hc-divide-uiAccent/10 hc-z-[1000]\" defaultValue={selectedListItem?.id}>\n// \t\t\t\t\t{(sortSetting ? dynamicSort(filteredListings, sortSetting.field, sortSetting.type) : filteredListings).slice(0, itemLimit).map((item: IListing) => (\n// \t\t\t\t\t\t<MapAccordionItemContainer\n// \t\t\t\t\t\t\tkey={item.id}\n// \t\t\t\t\t\t\tshowMap={showMap}\n// \t\t\t\t\t\t\titem={item}\n// \t\t\t\t\t\t\titemRefs={itemRefs}\n// \t\t\t\t\t\t\tfieldsShown={fieldsShown}\n// \t\t\t\t\t\t\titemExpandedContent={itemExpandedContent}\n// \t\t\t\t\t\t\tspecialFeatures={specialFeatures}\n// \t\t\t\t\t\t\tmapItems={mapItems}\n// \t\t\t\t\t\t\tisActive={selectedListItem?.id === item.id}\n// \t\t\t\t\t\t\thasListItemSelected={selectedListItem != null}\n// \t\t\t\t\t\t/>\n// \t\t\t\t\t))}\n\n// \t\t\t\t</Accordion>\n// \t\t\t)}\n// \t\t\t<div ref={loader} style={{ height: \"100px\", textAlign: \"center\" }}>\n// \t\t\t\t{filteredListings.length >= itemLimit && <Loading />}\n// \t\t\t</div>\n// \t\t</div>\n// \t</div>\n// );\n\n// export default ItemsList;\nimport React, { RefObject, ReactNode } from 'react';\nimport Header from '~/components/modules/list/header';\nimport MapAccordionItemContainer from '~/components/modules/list/list-item';\nimport Sort from '~/components/modules/filter/sort';\nimport Loading from \"~/util/loading\";\nimport { dynamicSort } from '~/util/sortUtil';\nimport { Listing } from '~/types/Listings';\n\ninterface ItemsListProps {\n fieldNames: Record<string, string>;\n showMap: boolean;\n fieldsShown: string[];\n filteredListings: Listing[];\n loading: boolean;\n sortSetting: any;\n setSortSetting: (setting: any) => void;\n itemLimit: number;\n loader: RefObject<HTMLDivElement>;\n scrollContainerRef: RefObject<HTMLDivElement>;\n itemRefs: any;\n selectedListItem: Listing | null;\n itemExpandedContent: (item: Listing, recruiters: any) => JSX.Element | null;\n children: ReactNode;\n includeFavorite: boolean;\n}\n\nconst ItemsList: React.FC<ItemsListProps> = ({\n\tfieldNames,\n\tshowMap,\n\tfieldsShown,\n\tfilteredListings,\n\tloading,\n\tsortSetting,\n\tsetSortSetting,\n\titemLimit,\n\tloader,\n\tscrollContainerRef,\n\titemRefs,\n\tselectedListItem,\n\titemExpandedContent,\n\tincludeFavorite = false,\n\tchildren // Destructure children\n}) => (\n\t<div className=\"hc-relative hc-bg-white md:hc-px-4 hc-flex hc-flex-col\">\n\t\t<div className=\"hc-flex hc-flex-wrap hc-items-center hc-justify-between hc-gap-4 md:hc-mb-2 hc-p-3 md:hc-p-0 hc-bg-uiAccent/10 md:hc-bg-transparent hc-border-b md:hc-border-none hc-border-uiAccent/20\">\n\t\t\t<h2 className=\"hc-text-gray-500 hc-font-semibold hc-text-xs md:hc-text-sm\">\n\t\t\t\t{loading && <span>Loading...</span>}\n\t\t\t\t{!loading && <span>{filteredListings.length} results</span>}\n\t\t\t</h2>\n\t\t\t<div className=\"hc-block md:hc-hidden\">\n\t\t\t\t<Sort\n\t\t\t\t\tclassName={''}\n\t\t\t\t\tfields={fieldsShown}\n\t\t\t\t\tsetSortSetting={setSortSetting}\n\t\t\t\t\tfieldNames={fieldNames}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t\t<div>\n\t\t\t<Header\n\t\t\t\tclassName={''}\n\t\t\t\tsetSortSetting={setSortSetting}\n\t\t\t\tsortSetting={sortSetting}\n\t\t\t\tfieldsShown={fieldsShown}\n\t\t\t\tfieldNames={fieldNames}\n\t\t\t\tincludeFavorite={includeFavorite}\n\t\t\t/>\n\t\t</div>\n\t\t<div\n\t\t\tref={scrollContainerRef}\n\t\t\tclassName={`\n hc-flex-grow hc-overflow-y-auto\n ${showMap ? \"md:hc-max-h-45vh hc-max-h-[100vh]\" : \"md:hc-max-h-95vh hc-max-h-[95vh]\"}\n `}\n\t\t>\n\t\t\t{loading ? (\n\t\t\t\t<div className=\"hc-flex hc-justify-center hc-items-center hc-pt-20\">\n\t\t\t\t\t<Loading />\n\t\t\t\t</div>\n\t\t\t) : (\n\t\t\t\tchildren\n\t\t\t)}\n\t\t\t<div ref={loader} style={{ height: \"100px\", textAlign: \"center\" }}>\n\t\t\t\t{filteredListings.length >= itemLimit && <Loading />}\n\t\t\t</div>\n\t\t</div>\n\t</div>\n);\n\nexport default ItemsList;\n"],"names":["Sort","Header"],"mappings":";;;;;AAAA;AAsIA,MAAM,SAAS,GAA6B,CAAC,EAC5C,UAAU,EACV,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,OAAO,EACP,WAAW,EACX,cAAc,EACd,SAAS,EACT,MAAM,EACN,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,GAAG,KAAK,EACvB,QAAQ;AACR,EAAA,MACA,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,wDAAwD,EAAA;IACtE,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,yLAAyL,EAAA;QACvM,KAAI,CAAA,aAAA,CAAA,IAAA,EAAA,EAAA,SAAS,EAAC,4DAA4D,EAAA;AACxE,YAAA,OAAO,IAAI,KAAuB,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,EAAA,YAAA,CAAA;AAClC,YAAA,CAAC,OAAO,IAAI,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA;AAAO,gBAAA,gBAAgB,CAAC,MAAM;2BAAgB,CACvD;QACL,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,uBAAuB,EAAA;AACrC,YAAA,KAAA,CAAA,aAAA,CAACA,UAAI,EACJ,EAAA,SAAS,EAAE,EAAE,EACb,MAAM,EAAE,WAAW,EACnB,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,UAAU,EAAA,CACrB,CACG,CACD;AACN,IAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA;QACC,KAAC,CAAA,aAAA,CAAAC,UAAM,EACN,EAAA,SAAS,EAAE,EAAE,EACb,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,EAAA,CAC/B,CACG;AACN,IAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EACC,GAAG,EAAE,kBAAkB,EACvB,SAAS,EAAE,CAAA;;AAEJ,QAAA,EAAA,OAAO,GAAG,mCAAmC,GAAG,kCAAkC,CAAA;AACrF,MAAA,CAAA,EAAA;AAEH,QAAA,OAAO,IACP,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,oDAAoD,EAAA;YAClE,KAAC,CAAA,aAAA,CAAA,OAAO,OAAG,CACN,KAEN,QAAQ,CACR;AACD,QAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAA,EAC/D,gBAAgB,CAAC,MAAM,IAAI,SAAS,IAAI,KAAC,CAAA,aAAA,CAAA,OAAO,EAAG,IAAA,CAAA,CAC/C,CACD,CACD;;;;"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useMap } from '../../../../contexts/mapContext.js';
|
|
3
|
+
import { useMapList } from '../../../../contexts/mapListContext.js';
|
|
4
|
+
import { useTrackEvent } from '../../../../contexts/trackEventContext.js';
|
|
5
|
+
import { setStorageObject } from '../../../../util/localStorageUtil.js';
|
|
6
|
+
import MapAccordionItem from '../../accordions/MapAccordionItem.js';
|
|
7
|
+
import ListItemContainer from './list-item-container.js';
|
|
8
|
+
|
|
9
|
+
var MapAccordionItemContainer = function MapAccordionItemContainer(_ref) {
|
|
10
|
+
var showMap = _ref.showMap,
|
|
11
|
+
item = _ref.item,
|
|
12
|
+
itemRefs = _ref.itemRefs,
|
|
13
|
+
fieldsShown = _ref.fieldsShown,
|
|
14
|
+
itemExpandedContent = _ref.itemExpandedContent,
|
|
15
|
+
specialFeatures = _ref.specialFeatures,
|
|
16
|
+
isActive = _ref.isActive,
|
|
17
|
+
hasListItemSelected = _ref.hasListItemSelected;
|
|
18
|
+
var _useMapList = useMapList(),
|
|
19
|
+
mapItems = _useMapList.mapItems;
|
|
20
|
+
var _useMap = useMap(),
|
|
21
|
+
selectItem = _useMap.selectItem;
|
|
22
|
+
var _useTrackEvent = useTrackEvent(),
|
|
23
|
+
trackEvent = _useTrackEvent.trackEvent,
|
|
24
|
+
eventTypes = _useTrackEvent.eventTypes;
|
|
25
|
+
var setSelectedItemAndZoomMap = function setSelectedItemAndZoomMap(item, isActive) {
|
|
26
|
+
if (isActive) {
|
|
27
|
+
localStorage.removeItem("selectedListItem");
|
|
28
|
+
mapItems.find(function (x) {
|
|
29
|
+
return Object.prototype.hasOwnProperty.call(x.items, item.id);
|
|
30
|
+
}) || null;
|
|
31
|
+
selectItem(null, null, 9, {
|
|
32
|
+
lat: 39.8283,
|
|
33
|
+
lng: -98.5795
|
|
34
|
+
});
|
|
35
|
+
} else {
|
|
36
|
+
setStorageObject("selectedListItem", item);
|
|
37
|
+
var _location = mapItems.find(function (x) {
|
|
38
|
+
return Object.prototype.hasOwnProperty.call(x.items, item.id);
|
|
39
|
+
}) || null;
|
|
40
|
+
selectItem(item, _location, 12, {
|
|
41
|
+
lat: _location === null || _location === void 0 ? void 0 : _location.latitude,
|
|
42
|
+
lng: _location === null || _location === void 0 ? void 0 : _location.longitude
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
var handleItemClick = function handleItemClick(item) {
|
|
47
|
+
var _item$mapDetails;
|
|
48
|
+
trackEvent(eventTypes.JOB_LISTING_SELECTED, {
|
|
49
|
+
jobTitle: item.fields.position,
|
|
50
|
+
jobCategory: item.fields.category,
|
|
51
|
+
entityDisplayName: item === null || item === void 0 || (_item$mapDetails = item.mapDetails) === null || _item$mapDetails === void 0 ? void 0 : _item$mapDetails.entityDisplayName
|
|
52
|
+
});
|
|
53
|
+
setSelectedItemAndZoomMap(item, isActive);
|
|
54
|
+
};
|
|
55
|
+
return /*#__PURE__*/React.createElement(MapAccordionItem, {
|
|
56
|
+
item: item,
|
|
57
|
+
itemRefs: itemRefs,
|
|
58
|
+
itemExpandedContent: itemExpandedContent,
|
|
59
|
+
isActive: isActive
|
|
60
|
+
}, /*#__PURE__*/React.createElement(ListItemContainer, {
|
|
61
|
+
showMap: showMap,
|
|
62
|
+
item: item,
|
|
63
|
+
itemRefs: itemRefs,
|
|
64
|
+
fieldsShown: fieldsShown,
|
|
65
|
+
specialFeatures: specialFeatures,
|
|
66
|
+
isActive: isActive,
|
|
67
|
+
hasListItemSelected: hasListItemSelected,
|
|
68
|
+
onClick: function onClick() {
|
|
69
|
+
return handleItemClick(item);
|
|
70
|
+
}
|
|
71
|
+
}));
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export { MapAccordionItemContainer as default };
|
|
75
|
+
//# sourceMappingURL=index.js.map
|