@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
package/src/util/mapUtil.js
CHANGED
|
@@ -1,91 +1,91 @@
|
|
|
1
|
-
export const getDistinctItemsByProximity = (items, listingEntitiesDetails) => {
|
|
2
|
-
const clusters = {};
|
|
3
|
-
|
|
4
|
-
if (!listingEntitiesDetails) return [];
|
|
5
|
-
|
|
6
|
-
const closeItemPairs = findCloseItems(listingEntitiesDetails);
|
|
7
|
-
if (closeItemPairs.length > 0) {
|
|
8
|
-
listingEntitiesDetails = adjustItemPositions(
|
|
9
|
-
listingEntitiesDetails,
|
|
10
|
-
closeItemPairs
|
|
11
|
-
);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
items?.forEach(item => {
|
|
15
|
-
if(item.entityId !== -1){
|
|
16
|
-
|
|
17
|
-
const entityDetails = listingEntitiesDetails[item.entityId];
|
|
18
|
-
|
|
19
|
-
if (!entityDetails) {
|
|
20
|
-
console.error(`Details not found for entityId: ${item.entityId}`);
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
item.mapDetails = entityDetails;
|
|
25
|
-
|
|
26
|
-
if (!clusters[item.entityId]) {
|
|
27
|
-
clusters[item.entityId] = {
|
|
28
|
-
...item.mapDetails,
|
|
29
|
-
items: { [item.id]: item }
|
|
30
|
-
};
|
|
31
|
-
} else {
|
|
32
|
-
clusters[item.entityId].items[item.id] = item;
|
|
33
|
-
}}
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
return Object.values(clusters);
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
export const findCloseItems = itemsObj => {
|
|
40
|
-
const closeItems = [];
|
|
41
|
-
const items = Object.values(itemsObj); // Convert object to array for iteration
|
|
42
|
-
const proximityThreshold = 0.0001;
|
|
43
|
-
|
|
44
|
-
for (let i = 0; i < items.length; i++) {
|
|
45
|
-
for (let j = i + 1; j < items.length; j++) {
|
|
46
|
-
const distanceLat = Math.abs(items[i].latitude - items[j].latitude);
|
|
47
|
-
const distanceLng = Math.abs(items[i].longitude - items[j].longitude);
|
|
48
|
-
if (
|
|
49
|
-
distanceLat < proximityThreshold &&
|
|
50
|
-
distanceLng < proximityThreshold
|
|
51
|
-
) {
|
|
52
|
-
closeItems.push({ item1: items[i], item2: items[j] });
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return closeItems;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
export const adjustItemPositions = (itemsObj, closeItemPairs) => {
|
|
61
|
-
const adjustmentValue = 0.0001;
|
|
62
|
-
const adjustedItems = { ...itemsObj }; // Create a shallow copy of the object
|
|
63
|
-
|
|
64
|
-
closeItemPairs.forEach(pair => {
|
|
65
|
-
if (adjustedItems[pair.item1.id] && adjustedItems[pair.item2.id]) {
|
|
66
|
-
adjustedItems[pair.item2.id].latitude += adjustmentValue;
|
|
67
|
-
adjustedItems[pair.item2.id].longitude += adjustmentValue;
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
return adjustedItems;
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
export const clusterOptions = (clusterGridSize, fillColor) => {
|
|
75
|
-
return {
|
|
76
|
-
gridSize: clusterGridSize,
|
|
77
|
-
styles:[{
|
|
78
|
-
url: createSvgDataUri(fillColor),
|
|
79
|
-
textColor:'white',
|
|
80
|
-
height: 40,
|
|
81
|
-
width: 40
|
|
82
|
-
}]
|
|
83
|
-
};
|
|
84
|
-
};
|
|
85
|
-
|
|
86
|
-
function createSvgDataUri(fillColor) {
|
|
87
|
-
const svg = `<svg width="50" height="50" xmlns="http://www.w3.org/2000/svg">
|
|
88
|
-
<circle cx="25" cy="25" r="20" fill="${fillColor}" />
|
|
89
|
-
</svg>`;
|
|
90
|
-
return `data:image/svg+xml;base64,${btoa(svg)}`;
|
|
91
|
-
}
|
|
1
|
+
export const getDistinctItemsByProximity = (items, listingEntitiesDetails) => {
|
|
2
|
+
const clusters = {};
|
|
3
|
+
|
|
4
|
+
if (!listingEntitiesDetails) return [];
|
|
5
|
+
|
|
6
|
+
const closeItemPairs = findCloseItems(listingEntitiesDetails);
|
|
7
|
+
if (closeItemPairs.length > 0) {
|
|
8
|
+
listingEntitiesDetails = adjustItemPositions(
|
|
9
|
+
listingEntitiesDetails,
|
|
10
|
+
closeItemPairs
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
items?.forEach(item => {
|
|
15
|
+
if(item.entityId !== -1){
|
|
16
|
+
|
|
17
|
+
const entityDetails = listingEntitiesDetails[item.entityId];
|
|
18
|
+
|
|
19
|
+
if (!entityDetails) {
|
|
20
|
+
console.error(`Details not found for entityId: ${item.entityId}`);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
item.mapDetails = entityDetails;
|
|
25
|
+
|
|
26
|
+
if (!clusters[item.entityId]) {
|
|
27
|
+
clusters[item.entityId] = {
|
|
28
|
+
...item.mapDetails,
|
|
29
|
+
items: { [item.id]: item }
|
|
30
|
+
};
|
|
31
|
+
} else {
|
|
32
|
+
clusters[item.entityId].items[item.id] = item;
|
|
33
|
+
}}
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
return Object.values(clusters);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export const findCloseItems = itemsObj => {
|
|
40
|
+
const closeItems = [];
|
|
41
|
+
const items = Object.values(itemsObj); // Convert object to array for iteration
|
|
42
|
+
const proximityThreshold = 0.0001;
|
|
43
|
+
|
|
44
|
+
for (let i = 0; i < items.length; i++) {
|
|
45
|
+
for (let j = i + 1; j < items.length; j++) {
|
|
46
|
+
const distanceLat = Math.abs(items[i].latitude - items[j].latitude);
|
|
47
|
+
const distanceLng = Math.abs(items[i].longitude - items[j].longitude);
|
|
48
|
+
if (
|
|
49
|
+
distanceLat < proximityThreshold &&
|
|
50
|
+
distanceLng < proximityThreshold
|
|
51
|
+
) {
|
|
52
|
+
closeItems.push({ item1: items[i], item2: items[j] });
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return closeItems;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export const adjustItemPositions = (itemsObj, closeItemPairs) => {
|
|
61
|
+
const adjustmentValue = 0.0001;
|
|
62
|
+
const adjustedItems = { ...itemsObj }; // Create a shallow copy of the object
|
|
63
|
+
|
|
64
|
+
closeItemPairs.forEach(pair => {
|
|
65
|
+
if (adjustedItems[pair.item1.id] && adjustedItems[pair.item2.id]) {
|
|
66
|
+
adjustedItems[pair.item2.id].latitude += adjustmentValue;
|
|
67
|
+
adjustedItems[pair.item2.id].longitude += adjustmentValue;
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
return adjustedItems;
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export const clusterOptions = (clusterGridSize, fillColor) => {
|
|
75
|
+
return {
|
|
76
|
+
gridSize: clusterGridSize,
|
|
77
|
+
styles:[{
|
|
78
|
+
url: createSvgDataUri(fillColor),
|
|
79
|
+
textColor:'white',
|
|
80
|
+
height: 40,
|
|
81
|
+
width: 40
|
|
82
|
+
}]
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
function createSvgDataUri(fillColor) {
|
|
87
|
+
const svg = `<svg width="50" height="50" xmlns="http://www.w3.org/2000/svg">
|
|
88
|
+
<circle cx="25" cy="25" r="20" fill="${fillColor}" />
|
|
89
|
+
</svg>`;
|
|
90
|
+
return `data:image/svg+xml;base64,${btoa(svg)}`;
|
|
91
|
+
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"outDir": "./dist",
|
|
4
|
+
"rootDir": "./src",
|
|
5
|
+
"declaration": true,
|
|
6
|
+
"declarationDir": "./dist/types",
|
|
7
|
+
"strict": true,
|
|
8
|
+
"esModuleInterop": true,
|
|
9
|
+
"skipLibCheck": true,
|
|
10
|
+
"forceConsistentCasingInFileNames": true,
|
|
11
|
+
"target": "ESNext",
|
|
12
|
+
"module": "ESNext",
|
|
13
|
+
"moduleResolution": "node",
|
|
14
|
+
"allowJs": true,
|
|
15
|
+
"baseUrl": "./",
|
|
16
|
+
"jsx": "react",
|
|
17
|
+
"paths": {
|
|
18
|
+
"~/*": ["./src/*"]
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.js", "src/**/*.jsx"],
|
|
22
|
+
"exclude": ["node_modules", "dist"]
|
|
23
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"field-mapper.js","sources":["../../../../../src/components/modules/maps/list/field-mapper.js"],"sourcesContent":["import React from 'react';\r\n\r\nimport Grid from '~/components/modules/grid';\r\nimport Icon from '~/components/modules/icon';\r\nimport PillWrapper from '~/components/modules/buttons/pill-wrapper';\r\n\r\nimport { capitalize } from '~/util/stringUtils';\r\n\r\nconst FieldMapper = ({\r\n\titem,\r\n\tfieldsShown,\r\n\tspecialFeatures,\r\n\thandleFavouriteClick,\r\n\tisFavorite\r\n}) => {\r\n\tconst orderedFields = fieldsShown.filter(field => field in item.fields);\r\n\r\n\tconst specialFeaturePills = field => {\r\n\t\treturn field === 'position' && specialFeatures &&\r\n\t\t\tObject.entries(specialFeatures).map(([featureKey, featureLabel]) => {\r\n\t\t\t\treturn item.fields[featureKey] === 1 && (\r\n\t\t\t\t\t<PillWrapper key={featureKey}>{featureLabel}</PillWrapper>\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t};\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{orderedFields.map(field => {\r\n\t\t\t\tlet value = item.fields[field];\r\n\t\t\t\treturn (\r\n\t\t\t\t\t<Grid.Item\r\n\t\t\t\t\t\tkey={field}\r\n\t\t\t\t\t\tclassName={`\r\n\t\t\t\t\t\t\thc-hidden md:hc-block\r\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\"}\r\n\t\t\t\t\t\t`}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<span className=\"hc-sr-only\">{capitalize(field)}</span>\r\n\t\t\t\t\t\t{value}\r\n\t\t\t\t\t\t<br />\r\n\t\t\t\t\t\t{specialFeaturePills(field)}\r\n\t\t\t\t\t</Grid.Item>\r\n\t\t\t\t);\r\n\t\t\t})}\r\n\t\t\t<Grid.Item className=\"md:hc-hidden\">\r\n\t\t\t\t{fieldsShown.includes(\"position\") &&\r\n\t\t\t\t\t<>\r\n\t\t\t\t\t\t<div className=\"hc-flex hc-items-start\">\r\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 */}\r\n\t\t\t\t\t\t\t\t<h3 className=\"hc-font-bold hc-mb-3 hc-flex-1\">{item.fields.position}</h3>\r\n\t\t\t\t\t\t\t\t<div className=\"hc-flex hc-justify-end hc-pb-2\">\r\n\t\t\t\t\t\t\t\t\t<Icon\r\n\t\t\t\t\t\t\t\t\t\ticon={isFavorite ? \"mdi:heart\" : \"mdi:heart-outline\"}\r\n\t\t\t\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\r\n\t\t\t\t\t\t\t\t\t\ticonClasses={isFavorite ? \"hc-text-primary\" : \"\"}\r\n\t\t\t\t\t\t\t\t\t\tclassName={`hc-transition-opacity hc-duration-300 hc-cursor-pointer\r\n\t\t\t\t\t\t\t\t\t${isFavorite ? \"hc-opacity-100\" : \"hc-text-uiText/60 group-hover:hc-opacity-100\"}\r\n\t\t\t\t\t\t\t\t\t`}\r\n\t\t\t\t\t\t\t\t\t\tonClick={e => handleFavouriteClick(e)}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t{specialFeatures && <div className='hc-pb-4'>{specialFeaturePills(\"position\", true)} </div>}\r\n\t\t\t\t\t</>\r\n\t\t\t\t}\r\n\r\n\t\t\t\t<ul className=\"hc-space-y-2 hc-text-xs\">\r\n\t\t\t\t\t{[\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfield: \"category\",\r\n\t\t\t\t\t\t\tname: \"Category\",\r\n\t\t\t\t\t\t\ticon: \"icon-park-solid:tree-list\"\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfield: \"schedule\",\r\n\t\t\t\t\t\t\tname: \"Schedule\",\r\n\t\t\t\t\t\t\ticon: \"gravity-ui:clock-fill\"\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfield: \"cityState\",\r\n\t\t\t\t\t\t\tname: \"Location\",\r\n\t\t\t\t\t\t\ticon: \"fluent:location-16-filled\"\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfield: \"travelTime\",\r\n\t\t\t\t\t\t\tname: \"Commute\",\r\n\t\t\t\t\t\t\ticon: \"ri:pin-distance-fill\"\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t].map(listItem => (\r\n\t\t\t\t\t\t(fieldsShown.includes(listItem.field) && item.fields[listItem.field]) &&\r\n\t\t\t\t\t\t<li\r\n\t\t\t\t\t\t\tkey={listItem.field}\r\n\t\t\t\t\t\t\tclassName=\"hc-flex hc-gap-2\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<Icon\r\n\t\t\t\t\t\t\t\ticon={listItem.icon}\r\n\t\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\r\n\t\t\t\t\t\t\t\tclassName=\"hc-text-uiAccent/30\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t<span className=\"hc-sr-only\">{listItem.name}</span>\r\n\t\t\t\t\t\t\t{item.fields[listItem.field]}\r\n\t\t\t\t\t\t</li>\r\n\t\t\t\t\t))}\r\n\t\t\t\t</ul>\r\n\t\t\t</Grid.Item>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nexport default FieldMapper;\r\n"],"names":["FieldMapper","_ref","item","fieldsShown","specialFeatures","handleFavouriteClick","isFavorite","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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"header-item.js","sources":["../../../../../src/components/modules/maps/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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"header.js","sources":["../../../../../src/components/modules/maps/list/header.js"],"sourcesContent":["import React from 'react';\r\nimport { twMerge } from 'tailwind-merge';\r\n\r\nimport Grid from '~/components/modules/grid';\r\nimport HeaderItem from '~/components/modules/maps/list/header-item';\r\n\r\nconst ListHeader = ({\r\n\tclassName,\r\n\tfieldsShown,\r\n\tfieldNames,\r\n\tfieldIsSortable = true,\r\n\tsetSortSetting,\r\n\tsortSetting\r\n}) => {\r\n\treturn (\r\n\t\t<Grid\r\n\t\t\tcolumns=\"hc-grid-flow-col hc-auto-cols-fr\"\r\n\t\t\tgap=\"hc-gap-0\"\r\n\t\t\tisAnimated={false}\r\n\t\t\tclassName={twMerge`\r\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\r\n\t\t\t\t${className ?? \"\"}\r\n\t\t\t`}\r\n\t\t>\r\n\t\t\t{fieldsShown.map(field => (\r\n\t\t\t\t<HeaderItem\r\n\t\t\t\t\tkey={field}\r\n\t\t\t\t\tisSortable={fieldIsSortable}\r\n\t\t\t\t\tsortSetting={sortSetting}\r\n\t\t\t\t\tfield={field}\r\n\t\t\t\t\tsetSortSetting={setSortSetting}\r\n\t\t\t\t>\r\n\t\t\t\t\t{fieldNames[field]}\r\n\t\t\t\t</HeaderItem>\r\n\t\t\t))}\r\n\t\t\t<HeaderItem key={\"favorite\"}\r\n\t\t\t\tisSortable={false}\r\n\t\t\t\tfield={\"favorite\"}\r\n\t\t\t>\r\n\t\t\t\tFavorite\r\n\t\t\t</HeaderItem>\r\n\r\n\t\t</Grid>\r\n\t);\r\n};\r\n\r\nexport default ListHeader;\r\n"],"names":["ListHeader","_ref","className","fieldsShown","fieldNames","_ref$fieldIsSortable","fieldIsSortable","setSortSetting","sortSetting","React","createElement","Grid","columns","gap","isAnimated","twMerge","_templateObject","_taggedTemplateLiteral","map","field","HeaderItem","key","isSortable"],"mappings":";;;;;;;AAMA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAOV;AAAA,EAAA,IANLC,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,CAAA;AAEX,EAAA,oBACCC,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AACJC,IAAAA,OAAO,EAAC,kCAAkC;AAC1CC,IAAAA,GAAG,EAAC,UAAU;AACdC,IAAAA,UAAU,EAAE,KAAM;AAClBZ,IAAAA,SAAS,EAAEa,OAAO,CAAAC,eAAA,KAAAA,eAAA,GAAAC,sBAAA,CAAA,CAAA,yHAAA,EAAA,UAAA,CAAA,CAAA,CAAA,EAEff,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,SAAS,GAAI,EAAE,CAAA;AAChB,GAAA,EAEDC,WAAW,CAACe,GAAG,CAAC,UAAAC,KAAK,EAAA;AAAA,IAAA,oBACrBV,KAAA,CAAAC,aAAA,CAACU,UAAU,EAAA;AACVC,MAAAA,GAAG,EAAEF,KAAM;AACXG,MAAAA,UAAU,EAAEhB,eAAgB;AAC5BE,MAAAA,WAAW,EAAEA,WAAY;AACzBW,MAAAA,KAAK,EAAEA,KAAM;AACbZ,MAAAA,cAAc,EAAEA,cAAAA;AAAe,KAAA,EAE9BH,UAAU,CAACe,KAAK,CACN,CAAC,CAAA;AAAA,GACb,CAAC,eACFV,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;;;;"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import Accordion from '../../accordions/default.js';
|
|
3
|
-
import ListHeader from './header.js';
|
|
4
|
-
import MapAccordionItem from '../../accordions/MapAccordionItem.js';
|
|
5
|
-
import FilterSort from '../../filter/sort.js';
|
|
6
|
-
import ListingDetails from '../../jobListing/listing-details.js';
|
|
7
|
-
import useListLogic from '../../../../hooks/useList.js';
|
|
8
|
-
import Loading from '../../../../util/loading.js';
|
|
9
|
-
import { useMap } from '../../../../contexts/mapContext.js';
|
|
10
|
-
import { useMapList } from '../../../../contexts/mapListContext.js';
|
|
11
|
-
import { useTrackEvent } from '../../../../contexts/trackEventContext.js';
|
|
12
|
-
import { dynamicSort } from '../../../../util/sortUtil.js';
|
|
13
|
-
|
|
14
|
-
var ItemsList = function ItemsList(_ref) {
|
|
15
|
-
var fieldNames = _ref.fieldNames,
|
|
16
|
-
showMap = _ref.showMap,
|
|
17
|
-
fieldsShown = _ref.fieldsShown,
|
|
18
|
-
specialFeatures = _ref.specialFeatures;
|
|
19
|
-
var _useMapList = useMapList(),
|
|
20
|
-
mapItems = _useMapList.mapItems,
|
|
21
|
-
filteredListings = _useMapList.filteredListings,
|
|
22
|
-
loading = _useMapList.loading,
|
|
23
|
-
commuteLocation = _useMapList.commuteLocation,
|
|
24
|
-
sortSetting = _useMapList.sortSetting,
|
|
25
|
-
setSortSetting = _useMapList.setSortSetting;
|
|
26
|
-
var _useListLogic = useListLogic(filteredListings),
|
|
27
|
-
itemLimit = _useListLogic.itemLimit,
|
|
28
|
-
loader = _useListLogic.loader,
|
|
29
|
-
scrollContainerRef = _useListLogic.scrollContainerRef,
|
|
30
|
-
itemRefs = _useListLogic.itemRefs;
|
|
31
|
-
var _useMap = useMap(),
|
|
32
|
-
selectedListItem = _useMap.selectedListItem;
|
|
33
|
-
var _useTrackEvent = useTrackEvent(),
|
|
34
|
-
trackEvent = _useTrackEvent.trackEvent,
|
|
35
|
-
eventTypes = _useTrackEvent.eventTypes;
|
|
36
|
-
var itemExpandedContent = function itemExpandedContent(item, recruiters) {
|
|
37
|
-
return item ? /*#__PURE__*/React.createElement(ListingDetails, {
|
|
38
|
-
item: item,
|
|
39
|
-
recruiters: recruiters
|
|
40
|
-
}) : null;
|
|
41
|
-
};
|
|
42
|
-
if (!fieldsShown.includes('travelTime') && commuteLocation != null && Object.entries(commuteLocation).length > 0) {
|
|
43
|
-
fieldsShown.push('travelTime');
|
|
44
|
-
fieldNames['travelTime'] = 'Commute';
|
|
45
|
-
} else if (fieldsShown.includes('travelTime') && !commuteLocation) {
|
|
46
|
-
fieldsShown = fieldsShown.filter(function (x) {
|
|
47
|
-
return x !== 'travelTime';
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
var setTrackedSortSetting = function setTrackedSortSetting(sortSetting) {
|
|
51
|
-
trackEvent(eventTypes.LIST_SORTED, sortSetting);
|
|
52
|
-
setSortSetting(sortSetting);
|
|
53
|
-
};
|
|
54
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
55
|
-
className: "hc-relative hc-bg-white md:hc-px-4 hc-flex hc-flex-col"
|
|
56
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
57
|
-
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"
|
|
58
|
-
}, /*#__PURE__*/React.createElement("h2", {
|
|
59
|
-
className: "hc-text-gray-500 hc-font-semibold hc-text-xs md:hc-text-sm"
|
|
60
|
-
}, loading && /*#__PURE__*/React.createElement("span", null, "Loading..."), !loading && /*#__PURE__*/React.createElement("span", null, filteredListings.length, " results")), /*#__PURE__*/React.createElement("div", {
|
|
61
|
-
className: "hc-block md:hc-hidden"
|
|
62
|
-
}, /*#__PURE__*/React.createElement(FilterSort, {
|
|
63
|
-
fields: fieldsShown,
|
|
64
|
-
setSortSetting: setTrackedSortSetting,
|
|
65
|
-
fieldNames: fieldNames
|
|
66
|
-
}))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(ListHeader, {
|
|
67
|
-
setSortSetting: setTrackedSortSetting,
|
|
68
|
-
sortSetting: sortSetting,
|
|
69
|
-
fieldsShown: fieldsShown,
|
|
70
|
-
fieldNames: fieldNames
|
|
71
|
-
})), /*#__PURE__*/React.createElement("div", {
|
|
72
|
-
ref: scrollContainerRef,
|
|
73
|
-
className: "\n\t\t\t\t\thc-flex-grow hc-overflow-y-auto\n\t\t\t\t\t".concat(showMap ? "md:hc-max-h-45vh hc-max-h-[100vh]" : "md:hc-max-h-95vh hc-max-h-[95vh]", "\n\t\t\t\t")
|
|
74
|
-
}, loading ? /*#__PURE__*/React.createElement("div", {
|
|
75
|
-
className: "hc-flex hc-justify-center hc-items-center hc-pt-20"
|
|
76
|
-
}, /*#__PURE__*/React.createElement(Loading, null)) : /*#__PURE__*/React.createElement(Accordion, {
|
|
77
|
-
className: "hc-divide-y hc-divide-uiAccent/10 hc-z-[1000]",
|
|
78
|
-
defaultValue: selectedListItem === null || selectedListItem === void 0 ? void 0 : selectedListItem.id
|
|
79
|
-
}, (sortSetting ? dynamicSort(filteredListings, sortSetting.field, sortSetting.type) : filteredListings).slice(0, itemLimit).map(function (item) {
|
|
80
|
-
return /*#__PURE__*/React.createElement(MapAccordionItem, {
|
|
81
|
-
key: item.id,
|
|
82
|
-
showMap: showMap,
|
|
83
|
-
item: item,
|
|
84
|
-
itemRefs: itemRefs,
|
|
85
|
-
fieldsShown: fieldsShown,
|
|
86
|
-
itemExpandedContent: itemExpandedContent,
|
|
87
|
-
specialFeatures: specialFeatures,
|
|
88
|
-
mapItems: mapItems,
|
|
89
|
-
isActive: (selectedListItem === null || selectedListItem === void 0 ? void 0 : selectedListItem.id) == item.id,
|
|
90
|
-
hasListItemSelected: selectedListItem != null
|
|
91
|
-
});
|
|
92
|
-
})), /*#__PURE__*/React.createElement("div", {
|
|
93
|
-
ref: loader,
|
|
94
|
-
style: {
|
|
95
|
-
height: "100px",
|
|
96
|
-
textAlign: "center"
|
|
97
|
-
}
|
|
98
|
-
}, filteredListings.length >= itemLimit && /*#__PURE__*/React.createElement(Loading, null))));
|
|
99
|
-
};
|
|
100
|
-
|
|
101
|
-
export { ItemsList as default };
|
|
102
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/modules/maps/list/index.js"],"sourcesContent":["import React from 'react';\r\n\r\nimport Accordion from '~/components/modules/accordions/default';\r\nimport Header from '~/components/modules/maps/list/header';\r\nimport MapAccordionItem from '~/components/modules/accordions/MapAccordionItem';\r\nimport Sort from '~/components/modules/filter/sort';\r\nimport ListingDetails from '~/components/modules/jobListing/listing-details';\r\n\r\nimport useListLogic from '~/hooks/useList';\r\n\r\nimport Loading from \"~/util/loading\";\r\n\r\nimport { useMap } from '~/contexts/mapContext';\r\nimport { useMapList } from '~/contexts/mapListContext';\r\nimport { useTrackEvent } from '~/contexts/trackEventContext';\r\n\r\nimport { dynamicSort } from '~/util/sortUtil';\r\n\r\nconst ItemsList = ({\r\n\tfieldNames,\r\n\tshowMap,\r\n\tfieldsShown,\r\n\tspecialFeatures\r\n}) => {\r\n\tconst { mapItems, filteredListings, loading, commuteLocation, sortSetting, setSortSetting } = useMapList();\r\n\tconst {\r\n\t\titemLimit,\r\n\t\tloader,\r\n\t\tscrollContainerRef,\r\n\t\titemRefs\r\n\t} = useListLogic(filteredListings);\r\n\tconst { selectedListItem } = useMap();\r\n\tconst { trackEvent, eventTypes } = useTrackEvent();\r\n\tconst itemExpandedContent = (item, recruiters) =>\r\n\t\titem ? <ListingDetails item={item} recruiters={recruiters} /> : null;\r\n\tif (!fieldsShown.includes('travelTime') && commuteLocation != null && Object.entries(commuteLocation).length > 0) {\r\n\t\tfieldsShown.push('travelTime');\r\n\t\tfieldNames['travelTime'] = 'Commute';\r\n\t} else if (fieldsShown.includes('travelTime') && !commuteLocation) {\r\n\t\tfieldsShown = fieldsShown.filter(x => x !== 'travelTime');\r\n\t}\r\n\r\n\tconst setTrackedSortSetting = sortSetting => {\r\n\t\ttrackEvent(eventTypes.LIST_SORTED, sortSetting);\r\n\t\tsetSortSetting(sortSetting);\r\n\t};\r\n\treturn (\r\n\t\t<div className=\"hc-relative hc-bg-white md:hc-px-4 hc-flex hc-flex-col\">\r\n\t\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\">\r\n\t\t\t\t<h2 className=\"hc-text-gray-500 hc-font-semibold hc-text-xs md:hc-text-sm\">\r\n\t\t\t\t\t{loading &&\r\n\t\t\t\t\t\t<span>Loading...</span>\r\n\t\t\t\t\t}\r\n\t\t\t\t\t{!loading &&\r\n\t\t\t\t\t\t<span>{filteredListings.length} results</span>\r\n\t\t\t\t\t}\r\n\t\t\t\t</h2>\r\n\t\t\t\t<div className=\"hc-block md:hc-hidden\">\r\n\t\t\t\t\t<Sort\r\n\t\t\t\t\t\tfields={fieldsShown}\r\n\t\t\t\t\t\tsetSortSetting={setTrackedSortSetting}\r\n\t\t\t\t\t\tfieldNames={fieldNames}\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div>\r\n\t\t\t\t<Header\r\n\t\t\t\t\tsetSortSetting={setTrackedSortSetting}\r\n\t\t\t\t\tsortSetting={sortSetting}\r\n\t\t\t\t\tfieldsShown={fieldsShown}\r\n\t\t\t\t\tfieldNames={fieldNames}\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<div\r\n\t\t\t\tref={scrollContainerRef}\r\n\t\t\t\tclassName={`\r\n\t\t\t\t\thc-flex-grow hc-overflow-y-auto\r\n\t\t\t\t\t${showMap ? \"md:hc-max-h-45vh hc-max-h-[100vh]\" : \"md:hc-max-h-95vh hc-max-h-[95vh]\"}\r\n\t\t\t\t`}\r\n\t\t\t>\r\n\t\t\t\t{loading ? (\r\n\t\t\t\t\t<div className=\"hc-flex hc-justify-center hc-items-center hc-pt-20\">\r\n\t\t\t\t\t\t<Loading />\r\n\t\t\t\t\t</div>\r\n\t\t\t\t) : (\r\n\t\t\t\t\t<Accordion className=\"hc-divide-y hc-divide-uiAccent/10 hc-z-[1000]\" defaultValue={selectedListItem?.id}>\r\n\t\t\t\t\t\t{(sortSetting ? dynamicSort(filteredListings, sortSetting.field, sortSetting.type) : filteredListings).slice(0, itemLimit).map(item => {\r\n\t\t\t\t\t\t\treturn (<MapAccordionItem\r\n\t\t\t\t\t\t\t\tkey={item.id}\r\n\t\t\t\t\t\t\t\tshowMap={showMap}\r\n\t\t\t\t\t\t\t\titem={item}\r\n\t\t\t\t\t\t\t\titemRefs={itemRefs}\r\n\t\t\t\t\t\t\t\tfieldsShown={fieldsShown}\r\n\t\t\t\t\t\t\t\titemExpandedContent={itemExpandedContent}\r\n\t\t\t\t\t\t\t\tspecialFeatures={specialFeatures}\r\n\t\t\t\t\t\t\t\tmapItems={mapItems}\r\n\t\t\t\t\t\t\t\tisActive={selectedListItem?.id == item.id}\r\n\t\t\t\t\t\t\t\thasListItemSelected={selectedListItem != null}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\t</Accordion>\r\n\t\t\t\t)}\r\n\t\t\t\t<div ref={loader} style={{ height: \"100px\", textAlign: \"center\" }}>\r\n\t\t\t\t\t{filteredListings.length >= itemLimit && <Loading />}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default ItemsList;\r\n"],"names":["ItemsList","_ref","fieldNames","showMap","fieldsShown","specialFeatures","_useMapList","useMapList","mapItems","filteredListings","loading","commuteLocation","sortSetting","setSortSetting","_useListLogic","useListLogic","itemLimit","loader","scrollContainerRef","itemRefs","_useMap","useMap","selectedListItem","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","itemExpandedContent","item","recruiters","React","createElement","ListingDetails","includes","Object","entries","length","push","filter","x","setTrackedSortSetting","LIST_SORTED","className","Sort","fields","Header","ref","concat","Loading","Accordion","defaultValue","id","dynamicSort","field","type","slice","map","MapAccordionItem","key","isActive","hasListItemSelected","style","height","textAlign"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/modules/maps/list/item-expand-card/index.js"],"sourcesContent":["import React from 'react';\r\nimport { twMerge } from 'tailwind-merge';\r\n\r\nconst CardItemExpand = ({\r\n\tclassName,\r\n\tcontent,\r\n\t...props\r\n}) => {\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={twMerge(\r\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',\r\n\t\t\t\tclassName ?? ''\r\n\t\t\t)}\r\n\t\t\t{...props}\r\n\t\t>\r\n\t\t\t{content}\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default CardItemExpand;\r\n"],"names":["CardItemExpand","_ref","className","content","props","_objectWithoutProperties","_excluded","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;AAER,EAAA,oBACCC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;IACCP,SAAS,EAAEQ,OAAO,CACjB,oIAAoI,EACpIR,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EACd,CAAA;GACIE,EAAAA,KAAK,CAERD,EAAAA,OACG,CAAC,CAAA;AAER;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"recruiter-contact-nav.js","sources":["../../../../../../src/components/modules/maps/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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"recruiter-details.js","sources":["../../../../../../src/components/modules/maps/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;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"recruiter-headshot.js","sources":["../../../../../../src/components/modules/maps/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;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/modules/maps/list/list-item/index.js"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport Grid from '~/components/modules/grid';\nimport Icon from '~/components/modules/icon';\nimport FieldMapper from '~/components/modules/maps/list/field-mapper';\n\nimport { useMapList } from '~/contexts/mapListContext';\nimport { useTrackEvent } from '~/contexts/trackEventContext';\n\nconst ListItem = forwardRef(\n\t(\n\t\t{\n\t\t\tisActive,\n\t\t\tbodyClassName,\n\t\t\tclassName,\n\t\t\titem,\n\t\t\tfieldsShown,\n\t\t\tspecialFeatures,\n\t\t\tonItemSelected,\n\t\t\tshowMap,\n\t\t\tsetMobileTab,\n\t\t\tfavorites,\n\t\t\tsetFavorites,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst { siteConfig } = useMapList();\n\t\tconst { trackEvent, eventTypes } = useTrackEvent();\n\t\tconst mapPinColor = siteConfig.colors.primary.replace(\"#\", \"\");\n\n\t\tconst handleClick = () => {\n\t\t\tif (onItemSelected) {\n\t\t\t\tonItemSelected(item);\n\t\t\t}\n\t\t};\n\n\t\tlet isFavorite = favorites.includes(item.id);\n\n\t\tconst handleFavouriteClick = event => {\n\t\t\tevent.stopPropagation();\n\t\t\tlet updatedFavorites;\n\t\t\tif (isFavorite) {\n\t\t\t\tupdatedFavorites = favorites.filter(fav => fav !== item.id);\n\t\t\t} else {\n\t\t\t\ttrackEvent(eventTypes.FAVORITE_SELECTED, { jobTitle: item.fields.position, jobCategory: item.fields.category, entityDisplayName: item?.mapDetails?.entityDisplayName });\n\t\t\t\tupdatedFavorites = [...favorites, item.id];\n\t\t\t}\n\t\t\tisFavorite = !isFavorite;\n\t\t\tsetFavorites(updatedFavorites);\n\t\t};\n\n\t\treturn (\n\t\t\t<button\n\t\t\t\tref={ref}\n\t\t\t\tonClick={handleClick}\n\t\t\t\tclassName={`\n\t\t\t\t\thc-group hc-relative hc-flex md:hc-flex-col hc-w-full md:hc-pl-4 hc-text-left hc-bg-clip-border hc-border hc-border-transparent hc-break-words hc-overflow-hidden hc-cursor-pointer hc-transition-colors hover:hc-bg-uiAccent/5 focus:hover:hc-bg-uiAccent/5\n\t\t\t\t\t${isActive ? \"hc-bg-uiAccent/5 hc-border-secondary hc-border\" : \"hc-text-uiText hc-bg-white\"}\n\t\t\t\t\t${className ?? \"\"}\n `}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<Grid\n\t\t\t\t\tcolumns=\"hc-grid-flow-col hc-auto-cols-fr\"\n\t\t\t\t\tgap=\"hc-gap-2\"\n\t\t\t\t\tisAnimated={false}\n\t\t\t\t\tclassName={`\n\t\t\t\t\t\thc-block md:hc-grid hc-p-2 hc-ps-4 hc-w-full hc-grow hc-leading-tight hc-text-sm md:hc-text-xs lg:hc-text-sm\n\t\t\t\t\t\t${bodyClassName ?? \"\"}\n\t\t\t\t\t`}\n\t\t\t\t>\n\t\t\t\t\t<Grid.Item className=\"hc-hidden md:hc-block md:hc-absolute md:hc-left-1.5 hc-top-1.5\">\n\t\t\t\t\t\t<span className=\"hc-sr-only\">Expand row</span>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon=\"fluent-emoji-high-contrast:plus\"\n\t\t\t\t\t\t\tsize=\"hc-size-2.5\"\n\t\t\t\t\t\t\tclassName={`\n\t\t\t\t\t\t\t\thc-opacity-0 hc-text-uiText/60 hc-transition group-hover:hc-opacity-100 group-active:hc-opacity-100\n\t\t\t\t\t\t\t\t${isActive ? \"hc-opacity-100 hc-rotate-45\" : \"\"}\n\t\t\t\t\t\t\t`}\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t</Grid.Item>\n\n\t\t\t\t\t<FieldMapper\n\t\t\t\t\t\titem={item}\n\t\t\t\t\t\tfieldsShown={fieldsShown}\n\t\t\t\t\t\tspecialFeatures={specialFeatures}\n\t\t\t\t\t\tisFavorite={isFavorite}\n\t\t\t\t\t\thandleFavouriteClick={handleFavouriteClick}\n\t\t\t\t\t/>\n\t\t\t\t\t<Grid.Item\n\t\t\t\t\t\tkey={\"favorites\"}\n\t\t\t\t\t\tclassName=\"hc-hidden md:hc-block hc-col-span-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon={isFavorite ? \"mdi:heart\" : \"mdi:heart-outline\"}\n\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\n\t\t\t\t\t\t\ticonClasses={isFavorite ? \"hc-text-primary\" : \"\"}\n\t\t\t\t\t\t\ttitle={!isFavorite ? 'Add job to favorites' : 'Remove job from favorites'}\n\t\t\t\t\t\t\tclassName={`\n\t\t\t\t\t\t\thc-pr-2 hc-transition-opacity hc-duration-300 hc-cursor-pointer hc-opacity-100\"\n\t\t\t\t\t\t`}\n\t\t\t\t\t\t\tonClick={e => handleFavouriteClick(e)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Grid.Item>\n\t\t\t\t</Grid>\n\n\t\t\t\t{showMap && (\n\t\t\t\t\t<div onClick={() => { setMobileTab(\"mapTab\"); handleClick(); }} className=\"md:hc-hidden hc-w-2/5 sm:hc-w-1/3 hc-p-1.5 hc-my-1 hc-bg-uiAccent/5 hc-border hc-border-uiAccent/10 hc-rounded-sm\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={`https://maps.googleapis.com/maps/api/staticmap?scale=2¢er=${item.mapDetails?.latitude},${item.mapDetails?.longitude}&zoom=10&size=240x180&maptype=roadmap&markers=color:0x${mapPinColor}%7Clabel:•%7C${item.mapDetails?.latitude},${item.mapDetails?.longitude}&key=${process.env.GOOGLE_MAPS_API_KEY}`}\n\t\t\t\t\t\t\talt={`Map of location for ${item.fields.position}`}\n\t\t\t\t\t\t\tclassName=\"hc-w-full hc-h-full hc-object-cover\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</button>\n\t\t);\n\t}\n);\n\nListItem.displayName = \"ListItem\";\n\nexport default React.memo(ListItem, (prevProps, nextProps) => {\n\treturn (\n\t\t(prevProps.isActive === nextProps.isActive ||\n\t\t\tprevProps.isActive !== nextProps.isActive) &&\n\t\tprevProps.bodyClassName === nextProps.bodyClassName &&\n\t\tprevProps.className === nextProps.className &&\n\t\tprevProps.fieldsShown === nextProps.fieldsShown &&\n\t\tprevProps.item.id === nextProps.item.id\n\t);\n});\n"],"names":["ListItem","forwardRef","_ref","ref","_item$mapDetails2","_item$mapDetails3","_item$mapDetails4","_item$mapDetails5","isActive","bodyClassName","className","item","fieldsShown","specialFeatures","onItemSelected","showMap","setMobileTab","favorites","setFavorites","props","_objectWithoutProperties","_excluded","_useMapList","useMapList","siteConfig","_useTrackEvent","useTrackEvent","trackEvent","eventTypes","mapPinColor","colors","primary","replace","handleClick","isFavorite","includes","id","handleFavouriteClick","event","stopPropagation","updatedFavorites","filter","fav","_item$mapDetails","FAVORITE_SELECTED","jobTitle","fields","position","jobCategory","category","entityDisplayName","mapDetails","concat","_toConsumableArray","React","createElement","_extends","onClick","Grid","columns","gap","isAnimated","Item","Icon","icon","size","FieldMapper","key","iconClasses","title","e","src","latitude","longitude","alt","displayName","memo","prevProps","nextProps"],"mappings":"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"}
|