@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.
Files changed (191) hide show
  1. package/dist/_virtual/_rollupPluginBabelHelpers.js +1 -1
  2. package/dist/apis/hcApi.js +85 -183
  3. package/dist/apis/hcApi.js.map +1 -1
  4. package/dist/components/HireControlMap.js +10 -5
  5. package/dist/components/HireControlMap.js.map +1 -1
  6. package/dist/components/modules/accordions/MapAccordionItem.js +10 -67
  7. package/dist/components/modules/accordions/MapAccordionItem.js.map +1 -1
  8. package/dist/components/modules/filter/index.js.map +1 -1
  9. package/dist/components/modules/filter/radio-item.js +1 -2
  10. package/dist/components/modules/filter/radio-item.js.map +1 -1
  11. package/dist/components/modules/jobListing/listing-details-container.js +45 -0
  12. package/dist/components/modules/jobListing/listing-details-container.js.map +1 -0
  13. package/dist/components/modules/jobListing/listing-details.js +24 -24
  14. package/dist/components/modules/jobListing/listing-details.js.map +1 -1
  15. package/dist/components/modules/{maps/list → list}/field-mapper.js +8 -7
  16. package/dist/components/modules/list/field-mapper.js.map +1 -0
  17. package/dist/components/modules/{maps/list → list}/header-item.js +2 -2
  18. package/dist/components/modules/list/header-item.js.map +1 -0
  19. package/dist/components/modules/{maps/list → list}/header.js +6 -4
  20. package/dist/components/modules/list/header.js.map +1 -0
  21. package/dist/components/modules/list/index.js +36 -0
  22. package/dist/components/modules/list/index.js.map +1 -0
  23. package/dist/components/modules/{maps/list → list}/item-expand-card/index.js +3 -1
  24. package/dist/components/modules/list/item-expand-card/index.js.map +1 -0
  25. package/dist/components/modules/{maps/list → list}/item-expand-card/recruiter-contact-nav.js +2 -2
  26. package/dist/components/modules/list/item-expand-card/recruiter-contact-nav.js.map +1 -0
  27. package/dist/components/modules/{maps/list → list}/item-expand-card/recruiter-details.js +1 -1
  28. package/dist/components/modules/list/item-expand-card/recruiter-details.js.map +1 -0
  29. package/dist/components/modules/list/item-expand-card/recruiter-headshot.js.map +1 -0
  30. package/dist/components/modules/list/item-list.js +28 -0
  31. package/dist/components/modules/list/item-list.js.map +1 -0
  32. package/dist/components/modules/list/list-item/index.js +75 -0
  33. package/dist/components/modules/list/list-item/index.js.map +1 -0
  34. package/dist/components/modules/list/list-item/list-item-container.js +47 -0
  35. package/dist/components/modules/list/list-item/list-item-container.js.map +1 -0
  36. package/dist/components/modules/{maps/list/list-item/index.js → list/list-item/list-item.js} +29 -33
  37. package/dist/components/modules/list/list-item/list-item.js.map +1 -0
  38. package/dist/components/modules/maps/map-list.js +3 -3
  39. package/dist/components/modules/maps/map-list.js.map +1 -1
  40. package/dist/contexts/mapContext.js +84 -113
  41. package/dist/contexts/mapContext.js.map +1 -1
  42. package/dist/contexts/mapListContext.js +181 -293
  43. package/dist/contexts/mapListContext.js.map +1 -1
  44. package/dist/contexts/trackEventContext.js +1 -1
  45. package/dist/services/configService.js +10 -28
  46. package/dist/services/configService.js.map +1 -1
  47. package/dist/services/googlePlacesNearbyService.js +33 -58
  48. package/dist/services/googlePlacesNearbyService.js.map +1 -1
  49. package/dist/services/listingAggregatorService.js +35 -75
  50. package/dist/services/listingAggregatorService.js.map +1 -1
  51. package/dist/services/listingEntityService.js +10 -31
  52. package/dist/services/listingEntityService.js.map +1 -1
  53. package/dist/services/listingService.js +26 -60
  54. package/dist/services/listingService.js.map +1 -1
  55. package/dist/services/recruiterService.js +11 -31
  56. package/dist/services/recruiterService.js.map +1 -1
  57. package/dist/types/apis/hcApi.d.ts +5 -0
  58. package/dist/types/clientToken.d.ts +2 -0
  59. package/dist/types/components/modules/accordions/MapAccordionItem.d.ts +9 -0
  60. package/dist/types/components/modules/accordions/default.d.ts +19 -0
  61. package/dist/types/components/modules/buttons/button-group-apply.d.ts +24 -0
  62. package/dist/types/components/modules/buttons/commute-pill.d.ts +5 -0
  63. package/dist/types/components/modules/buttons/default.d.ts +48 -0
  64. package/dist/types/components/modules/buttons/pill-wrapper.d.ts +3 -0
  65. package/dist/types/components/modules/dialogs/apply-dialog.d.ts +8 -0
  66. package/dist/types/components/modules/filter/sort.d.ts +8 -0
  67. package/dist/types/components/modules/grid.d.ts +8 -0
  68. package/dist/types/components/modules/icon.d.ts +10 -0
  69. package/dist/types/components/modules/jobListing/listing-details-container.d.ts +6 -0
  70. package/dist/types/components/modules/jobListing/listing-details.d.ts +18 -0
  71. package/dist/types/components/modules/list/field-mapper.d.ts +10 -0
  72. package/dist/types/components/modules/list/header-item.d.ts +11 -0
  73. package/dist/types/components/modules/list/header.d.ts +11 -0
  74. package/dist/types/components/modules/list/index.d.ts +9 -0
  75. package/dist/types/components/modules/list/item-expand-card/index.d.ts +7 -0
  76. package/dist/types/components/modules/list/item-expand-card/recruiter-contact-nav.d.ts +17 -0
  77. package/dist/types/components/modules/list/item-expand-card/recruiter-details.d.ts +21 -0
  78. package/dist/types/components/modules/list/item-expand-card/recruiter-headshot.d.ts +8 -0
  79. package/dist/types/components/modules/list/item-list.d.ts +21 -0
  80. package/dist/types/components/modules/list/list-item/index.d.ts +12 -0
  81. package/dist/types/components/modules/list/list-item/list-item-container.d.ts +14 -0
  82. package/dist/types/components/modules/list/list-item/list-item.d.ts +3 -0
  83. package/dist/types/constants/eventTypes.d.ts +13 -0
  84. package/dist/types/contexts/mapContext.d.ts +29 -0
  85. package/dist/types/contexts/mapListContext.d.ts +58 -0
  86. package/dist/types/contexts/trackEventContext.d.ts +6 -0
  87. package/dist/types/enums/SectionType.d.ts +9 -0
  88. package/dist/types/hooks/useList.d.ts +13 -0
  89. package/dist/types/services/configService.d.ts +6 -0
  90. package/dist/types/services/googlePlacesNearbyService.d.ts +5 -0
  91. package/dist/types/services/listingAggregatorService.d.ts +12 -0
  92. package/dist/types/services/listingEntityService.d.ts +6 -0
  93. package/dist/types/services/listingService.d.ts +9 -0
  94. package/dist/types/services/recruiterService.d.ts +6 -0
  95. package/dist/types/types/Address.d.ts +7 -0
  96. package/dist/types/types/ContentSection.d.ts +8 -0
  97. package/dist/types/types/GetListingParams.d.ts +8 -0
  98. package/dist/types/types/LatLng.d.ts +4 -0
  99. package/dist/types/types/ListingEntity.d.ts +10 -0
  100. package/dist/types/types/ListingFields.d.ts +20 -0
  101. package/dist/types/types/Listings.d.ts +31 -0
  102. package/dist/types/types/Recruiter.d.ts +9 -0
  103. package/dist/types/types/SimilarListing.d.ts +24 -0
  104. package/dist/types/types/config/Colors.d.ts +8 -0
  105. package/dist/types/types/config/MapConfig.d.ts +29 -0
  106. package/dist/types/types/config/PointsOfInterestConfig.d.ts +13 -0
  107. package/dist/types/types/config/SearchConfig.d.ts +4 -0
  108. package/dist/types/util/filterUtil.d.ts +28 -0
  109. package/dist/types/util/loading.d.ts +3 -0
  110. package/dist/types/util/localStorageUtil.d.ts +3 -0
  111. package/dist/types/util/mapUtil.d.ts +15 -0
  112. package/dist/types/util/sortUtil.d.ts +1 -0
  113. package/dist/types/util/stringUtils.d.ts +1 -0
  114. package/dist/util/filterUtil.js +1 -3
  115. package/dist/util/filterUtil.js.map +1 -1
  116. package/dist/util/localStorageUtil.js +37 -28
  117. package/dist/util/localStorageUtil.js.map +1 -1
  118. package/dist/util/mapUtil.js.map +1 -1
  119. package/package.json +23 -17
  120. package/rollup.config.mjs +23 -19
  121. package/src/apis/{hcApi.js → hcApi.ts} +27 -11
  122. package/src/components/HireControlMap.js +132 -129
  123. package/src/components/modules/accordions/MapAccordionItem.js +32 -74
  124. package/src/components/modules/filter/index.js +89 -89
  125. package/src/components/modules/filter/radio-item.js +0 -1
  126. package/src/components/modules/jobListing/listing-details-container.js +40 -0
  127. package/src/components/modules/jobListing/listing-details.js +209 -99
  128. package/src/components/modules/{maps/list → list}/field-mapper.js +114 -112
  129. package/src/components/modules/{maps/list → list}/header.js +49 -47
  130. package/src/components/modules/list/index.tsx +83 -0
  131. package/src/components/modules/{maps/list → list}/item-expand-card/index.js +24 -22
  132. package/src/components/modules/list/item-list.tsx +198 -0
  133. package/src/components/modules/list/list-item/index.js +70 -0
  134. package/src/components/modules/list/list-item/list-item-container.js +43 -0
  135. package/src/components/modules/{maps/list/list-item/index.js → list/list-item/list-item.js} +32 -38
  136. package/src/components/modules/maps/map-list.js +74 -74
  137. package/src/contexts/mapContext.tsx +129 -0
  138. package/src/contexts/mapListContext.tsx +297 -0
  139. package/src/enums/SectionType.ts +9 -0
  140. package/src/services/{configService.js → configService.ts} +16 -16
  141. package/src/services/{googlePlacesNearbyService.js → googlePlacesNearbyService.ts} +11 -2
  142. package/src/services/listingAggregatorService.ts +76 -0
  143. package/src/services/listingEntityService.ts +16 -0
  144. package/src/services/listingService.ts +40 -0
  145. package/src/services/{recruiterService.js → recruiterService.ts} +18 -17
  146. package/src/types/Address.ts +7 -0
  147. package/src/types/ContentSection.ts +9 -0
  148. package/src/types/GetListingParams.ts +8 -0
  149. package/src/types/LatLng.ts +4 -0
  150. package/src/types/ListingEntity.ts +11 -0
  151. package/src/types/ListingFields.ts +20 -0
  152. package/src/types/Listings.ts +32 -0
  153. package/src/types/Recruiter.ts +9 -0
  154. package/src/types/SimilarListing.ts +24 -0
  155. package/src/types/config/Colors.ts +8 -0
  156. package/src/types/config/MapConfig.ts +30 -0
  157. package/src/types/config/PointsOfInterestConfig.ts +13 -0
  158. package/src/types/config/SearchConfig.ts +4 -0
  159. package/src/util/filterUtil.js +239 -239
  160. package/src/util/localStorageUtil.ts +34 -0
  161. package/src/util/mapUtil.js +91 -91
  162. package/tsconfig.json +23 -0
  163. package/dist/components/modules/maps/list/field-mapper.js.map +0 -1
  164. package/dist/components/modules/maps/list/header-item.js.map +0 -1
  165. package/dist/components/modules/maps/list/header.js.map +0 -1
  166. package/dist/components/modules/maps/list/index.js +0 -102
  167. package/dist/components/modules/maps/list/index.js.map +0 -1
  168. package/dist/components/modules/maps/list/item-expand-card/index.js.map +0 -1
  169. package/dist/components/modules/maps/list/item-expand-card/recruiter-contact-nav.js.map +0 -1
  170. package/dist/components/modules/maps/list/item-expand-card/recruiter-details.js.map +0 -1
  171. package/dist/components/modules/maps/list/item-expand-card/recruiter-headshot.js.map +0 -1
  172. package/dist/components/modules/maps/list/list-item/index.js.map +0 -1
  173. package/dist/services/_virtual/_rollupPluginBabelHelpers.js +0 -372
  174. package/dist/services/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
  175. package/dist/services/apis/hcApi.js +0 -189
  176. package/dist/services/apis/hcApi.js.map +0 -1
  177. package/dist/services/clientToken.js +0 -7
  178. package/dist/services/clientToken.js.map +0 -1
  179. package/dist/services/styles/index.css +0 -3
  180. package/src/components/modules/maps/list/index.js +0 -112
  181. package/src/contexts/mapContext.js +0 -101
  182. package/src/contexts/mapListContext.js +0 -242
  183. package/src/services/listingAggregatorService.js +0 -50
  184. package/src/services/listingEntityService.js +0 -15
  185. package/src/services/listingService.js +0 -26
  186. package/src/util/localStorageUtil.js +0 -27
  187. /package/dist/components/modules/{maps/list → list}/item-expand-card/recruiter-headshot.js +0 -0
  188. /package/src/components/modules/{maps/list → list}/header-item.js +0 -0
  189. /package/src/components/modules/{maps/list → list}/item-expand-card/recruiter-contact-nav.js +0 -0
  190. /package/src/components/modules/{maps/list → list}/item-expand-card/recruiter-details.js +0 -0
  191. /package/src/components/modules/{maps/list → list}/item-expand-card/recruiter-headshot.js +0 -0
@@ -0,0 +1,24 @@
1
+ export default ButtonGroupApply;
2
+ declare function ButtonGroupApply({ applyUrl, useDetailsPostMessage, navigateToDetails, navigateToEasyApply, Link, linkFormat, applyText, detailsUrl, detailsText, className, buttonSize, applyButtonVariant, detailsButtonVariant, includeDialog, internalApplyLink, itemId, item, companyName, trackEvent, eventTypes }: {
3
+ applyUrl: any;
4
+ useDetailsPostMessage: any;
5
+ navigateToDetails: any;
6
+ navigateToEasyApply: any;
7
+ Link: any;
8
+ linkFormat: any;
9
+ applyText?: string | undefined;
10
+ detailsUrl: any;
11
+ detailsText?: string | undefined;
12
+ className: any;
13
+ buttonSize?: string | undefined;
14
+ applyButtonVariant?: string | undefined;
15
+ detailsButtonVariant?: string | undefined;
16
+ includeDialog?: boolean | undefined;
17
+ internalApplyLink: any;
18
+ itemId: any;
19
+ item: any;
20
+ companyName: any;
21
+ trackEvent: any;
22
+ eventTypes: any;
23
+ }): React.JSX.Element;
24
+ import React from "react";
@@ -0,0 +1,5 @@
1
+ export default CommutePill;
2
+ declare function CommutePill({ travelTime }: {
3
+ travelTime: any;
4
+ }): React.JSX.Element | undefined;
5
+ import React from "react";
@@ -0,0 +1,48 @@
1
+ export function Anchor({ children, href, className, size, variant, isBlock, hasUnderline, target, ...rest }: {
2
+ [x: string]: any;
3
+ children: any;
4
+ href: any;
5
+ className: any;
6
+ size: any;
7
+ variant: any;
8
+ isBlock: any;
9
+ hasUnderline: any;
10
+ target?: string | undefined;
11
+ }): React.JSX.Element;
12
+ export function AnchorLink({ children, Link, href, className, size, variant, isBlock, hasUnderline, ...rest }: {
13
+ [x: string]: any;
14
+ children: any;
15
+ Link: any;
16
+ href: any;
17
+ className: any;
18
+ size: any;
19
+ variant: any;
20
+ isBlock: any;
21
+ hasUnderline: any;
22
+ }): React.JSX.Element;
23
+ export const ScrollAnchor: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
24
+ export const Btn: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
25
+ export function ButtonBody({ children, className }: {
26
+ children: any;
27
+ className: any;
28
+ }): React.JSX.Element;
29
+ export function ButtonIcon({ icon, size, className }: {
30
+ icon: any;
31
+ size?: string | undefined;
32
+ className: any;
33
+ }): React.JSX.Element;
34
+ export default Button;
35
+ import React from "react";
36
+ declare function Button({ children }: {
37
+ children: any;
38
+ }): {
39
+ children: any;
40
+ };
41
+ declare namespace Button {
42
+ export { Anchor };
43
+ export { AnchorLink as Link };
44
+ export { ScrollAnchor as Scroll };
45
+ export { Btn };
46
+ export { ButtonBody as Body };
47
+ export { ButtonIcon as Icon };
48
+ }
@@ -0,0 +1,3 @@
1
+ export const PillWrapper: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
2
+ export default PillWrapper;
3
+ import React from "react";
@@ -0,0 +1,8 @@
1
+ export default ApplyDialog;
2
+ declare function ApplyDialog({ children, applyUrl, internalApplyLink, companyName }: {
3
+ children: any;
4
+ applyUrl: any;
5
+ internalApplyLink: any;
6
+ companyName: any;
7
+ }): React.JSX.Element;
8
+ import React from "react";
@@ -0,0 +1,8 @@
1
+ export default FilterSort;
2
+ declare function FilterSort({ className, fields, setSortSetting, fieldNames }: {
3
+ className: any;
4
+ fields: any;
5
+ setSortSetting: any;
6
+ fieldNames: any;
7
+ }): React.JSX.Element;
8
+ import React from "react";
@@ -0,0 +1,8 @@
1
+ export function GridItem({ as, children, className }: {
2
+ as?: string | undefined;
3
+ children: any;
4
+ className: any;
5
+ }): React.JSX.Element;
6
+ export default Grid;
7
+ import React from "react";
8
+ declare const Grid: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
@@ -0,0 +1,10 @@
1
+ export default IconContained;
2
+ declare function IconContained({ className, size, icon, iconClasses, title, ...iconProps }: {
3
+ [x: string]: any;
4
+ className: any;
5
+ size: any;
6
+ icon: any;
7
+ iconClasses: any;
8
+ title: any;
9
+ }): React.JSX.Element;
10
+ import React from "react";
@@ -0,0 +1,6 @@
1
+ export default ListingDetailsContainer;
2
+ declare function ListingDetailsContainer({ item, recruiters }: {
3
+ item: any;
4
+ recruiters: any;
5
+ }): React.JSX.Element;
6
+ import React from "react";
@@ -0,0 +1,18 @@
1
+ export default ListingDetails;
2
+ declare function ListingDetails({ item, recruiters, travelTime, useDetailsPostMessage, navigateToDetails, navigateToEasyApply, Link, linkFormat, useApplyDialog, internalApplyLink, companyName, jobsDomain, trackEvent, eventTypes }: {
3
+ item: any;
4
+ recruiters: any;
5
+ travelTime: any;
6
+ useDetailsPostMessage: any;
7
+ navigateToDetails: any;
8
+ navigateToEasyApply: any;
9
+ Link: any;
10
+ linkFormat: any;
11
+ useApplyDialog: any;
12
+ internalApplyLink: any;
13
+ companyName: any;
14
+ jobsDomain: any;
15
+ trackEvent: any;
16
+ eventTypes: any;
17
+ }): React.JSX.Element | null;
18
+ import React from "react";
@@ -0,0 +1,10 @@
1
+ export default FieldMapper;
2
+ declare function FieldMapper({ item, fieldsShown, specialFeatures, handleFavouriteClick, isFavorite, includeFavorite }: {
3
+ item: any;
4
+ fieldsShown: any;
5
+ specialFeatures: any;
6
+ handleFavouriteClick: any;
7
+ isFavorite: any;
8
+ includeFavorite: any;
9
+ }): React.JSX.Element;
10
+ import React from "react";
@@ -0,0 +1,11 @@
1
+ export default HeaderItem;
2
+ declare function HeaderItem({ className, children, field, setSortSetting, sortSetting, isSortable, ...rest }: {
3
+ [x: string]: any;
4
+ className: any;
5
+ children: any;
6
+ field: any;
7
+ setSortSetting: any;
8
+ sortSetting: any;
9
+ isSortable: any;
10
+ }): React.JSX.Element;
11
+ import React from "react";
@@ -0,0 +1,11 @@
1
+ export default ListHeader;
2
+ declare function ListHeader({ className, fieldsShown, fieldNames, fieldIsSortable, setSortSetting, sortSetting, includeFavorite }: {
3
+ className: any;
4
+ fieldsShown: any;
5
+ fieldNames: any;
6
+ fieldIsSortable?: boolean | undefined;
7
+ setSortSetting: any;
8
+ sortSetting: any;
9
+ includeFavorite?: boolean | undefined;
10
+ }): React.JSX.Element;
11
+ import React from "react";
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface ItemsListContainerProps {
3
+ fieldNames: Record<string, string>;
4
+ showMap: boolean;
5
+ fieldsShown: string[];
6
+ specialFeatures: any;
7
+ }
8
+ declare const ItemsListContainer: React.FC<ItemsListContainerProps>;
9
+ export default ItemsListContainer;
@@ -0,0 +1,7 @@
1
+ export default CardItemExpand;
2
+ declare function CardItemExpand({ className, content, ...props }: {
3
+ [x: string]: any;
4
+ className: any;
5
+ content: any;
6
+ }): React.JSX.Element;
7
+ import React from "react";
@@ -0,0 +1,17 @@
1
+ export function NavButton({ className, href, target, title, icon, ...props }: {
2
+ [x: string]: any;
3
+ className: any;
4
+ href: any;
5
+ target?: string | undefined;
6
+ title: any;
7
+ icon: any;
8
+ }): React.JSX.Element;
9
+ export default RecruiterContactNav;
10
+ import React from "react";
11
+ declare function RecruiterContactNav({ children, className }: {
12
+ children: any;
13
+ className: any;
14
+ }): React.JSX.Element;
15
+ declare namespace RecruiterContactNav {
16
+ export { NavButton as Button };
17
+ }
@@ -0,0 +1,21 @@
1
+ export function Title({ as, className, children }: {
2
+ as?: string | undefined;
3
+ className: any;
4
+ children: any;
5
+ }): React.JSX.Element;
6
+ export function Text({ as, className, children }: {
7
+ as?: string | undefined;
8
+ className: any;
9
+ children: any;
10
+ }): React.JSX.Element;
11
+ export default RecruiterDetails;
12
+ import React from "react";
13
+ declare function RecruiterDetails({ contactNav, className, children }: {
14
+ contactNav: any;
15
+ className: any;
16
+ children: any;
17
+ }): React.JSX.Element;
18
+ declare namespace RecruiterDetails {
19
+ export { Title };
20
+ export { Text };
21
+ }
@@ -0,0 +1,8 @@
1
+ export default RecruiterHeadshot;
2
+ declare function RecruiterHeadshot({ image, alt, className, imageClassName }: {
3
+ image: any;
4
+ alt: any;
5
+ className: any;
6
+ imageClassName: any;
7
+ }): React.JSX.Element;
8
+ import React from "react";
@@ -0,0 +1,21 @@
1
+ import React, { RefObject, ReactNode } from 'react';
2
+ import { Listing } from '~/types/Listings';
3
+ interface ItemsListProps {
4
+ fieldNames: Record<string, string>;
5
+ showMap: boolean;
6
+ fieldsShown: string[];
7
+ filteredListings: Listing[];
8
+ loading: boolean;
9
+ sortSetting: any;
10
+ setSortSetting: (setting: any) => void;
11
+ itemLimit: number;
12
+ loader: RefObject<HTMLDivElement>;
13
+ scrollContainerRef: RefObject<HTMLDivElement>;
14
+ itemRefs: any;
15
+ selectedListItem: Listing | null;
16
+ itemExpandedContent: (item: Listing, recruiters: any) => JSX.Element | null;
17
+ children: ReactNode;
18
+ includeFavorite: boolean;
19
+ }
20
+ declare const ItemsList: React.FC<ItemsListProps>;
21
+ export default ItemsList;
@@ -0,0 +1,12 @@
1
+ export default MapAccordionItemContainer;
2
+ declare function MapAccordionItemContainer({ showMap, item, itemRefs, fieldsShown, itemExpandedContent, specialFeatures, isActive, hasListItemSelected }: {
3
+ showMap: any;
4
+ item: any;
5
+ itemRefs: any;
6
+ fieldsShown: any;
7
+ itemExpandedContent: any;
8
+ specialFeatures: any;
9
+ isActive: any;
10
+ hasListItemSelected: any;
11
+ }): React.JSX.Element;
12
+ import React from "react";
@@ -0,0 +1,14 @@
1
+ export default ListItemContainer;
2
+ declare function ListItemContainer({ isActive, showMap, item, itemRefs, fieldsShown, specialFeatures, className, bodyClassName, onItemSelected, ...props }: {
3
+ [x: string]: any;
4
+ isActive: any;
5
+ showMap: any;
6
+ item: any;
7
+ itemRefs: any;
8
+ fieldsShown: any;
9
+ specialFeatures: any;
10
+ className: any;
11
+ bodyClassName: any;
12
+ onItemSelected: any;
13
+ }): React.JSX.Element;
14
+ import React from "react";
@@ -0,0 +1,3 @@
1
+ declare const _default: React.MemoExoticComponent<React.ForwardRefExoticComponent<React.RefAttributes<any>>>;
2
+ export default _default;
3
+ import React from "react";
@@ -0,0 +1,13 @@
1
+ export namespace eventTypes {
2
+ const FILTER_APPLIED: string;
3
+ const MAP_MARKER_CLICKED: string;
4
+ const JOB_LISTING_SELECTED: string;
5
+ const APPLY_NOW_CLICKED: string;
6
+ const VIEW_DETAILS_CLICKED: string;
7
+ const COMMUTE_ORIGIN_ADDED: string;
8
+ const POI_APPLIED: string;
9
+ const VIEW_JOBS_AT_Location: string;
10
+ const FAVORITE_SELECTED: string;
11
+ const LIST_SORTED: string;
12
+ const FILTERS_RESET: string;
13
+ }
@@ -0,0 +1,29 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { Listing } from '~/types/Listings';
3
+ import { LatLng } from '~/types/LatLng';
4
+ interface IMapContext {
5
+ selectedListItem: Listing | null;
6
+ setSelectedListItem: (item: Listing | null) => void;
7
+ location: any | null;
8
+ setLocation: (location: LatLng | null) => void;
9
+ center: LatLng;
10
+ setCenter: (center: LatLng) => void;
11
+ zoom: number;
12
+ setZoom: (zoom: number) => void;
13
+ selectedPlaces: string[];
14
+ setSelectedPlaces: (places: string[]) => void;
15
+ mapInteracted: boolean;
16
+ setMapInteracted: (interacted: boolean) => void;
17
+ userSetZoom: React.MutableRefObject<boolean>;
18
+ firstLoadListItem: any;
19
+ selectItem: (item: Listing, itemLocation: LatLng | null, zoom: number, center: LatLng) => void;
20
+ filterReset: () => void;
21
+ selectLocationEntity: (location: LatLng) => void;
22
+ }
23
+ export declare const useMap: () => IMapContext;
24
+ interface MapProviderProps {
25
+ children: ReactNode;
26
+ resetFilters: boolean;
27
+ }
28
+ export declare const MapProvider: React.FC<MapProviderProps>;
29
+ export {};
@@ -0,0 +1,58 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { Listing } from '~/types/Listings';
3
+ import { ListingEntity } from '~/types/ListingEntity';
4
+ import { Recruiter } from '~/types/Recruiter';
5
+ import { MapConfig, MapConfig as SiteConfig } from '~/types/config/MapConfig';
6
+ interface MapListContextProps {
7
+ loading: boolean;
8
+ allListings: Listing[];
9
+ filteredListings: Listing[];
10
+ mapItems: any;
11
+ query: string | null;
12
+ setNewFilteredListings: (filteredListings: Listing[]) => void;
13
+ setQuery: (query: string | null) => void;
14
+ listingEntities: Record<number, ListingEntity> | null;
15
+ selectedFilters: Record<string, any>;
16
+ setSelectedFilters: (filters: Record<string, any>) => void;
17
+ filterOptions: any;
18
+ recruiters: Record<number, Recruiter>;
19
+ handleFilterListingsByLocation: (selectedLocation: any) => void;
20
+ filterDialogIsOpen: boolean;
21
+ setFilterDialogIsOpen: (isOpen: boolean) => void;
22
+ setMobileTab: (tab: string) => void;
23
+ mobileTab: string;
24
+ siteConfig: SiteConfig;
25
+ favorites: number[];
26
+ handleSettingFavorites: (favorites: number[] | null) => void;
27
+ setFilterByFavorites: (filter: boolean) => void;
28
+ filterByFavorites: boolean;
29
+ commuteLocation: any | null;
30
+ setCommuteLocation: (location: any | null) => void;
31
+ navigateToDetails: (id: number) => void;
32
+ navigateToEasyApply: (id: number) => void;
33
+ Link: React.ComponentType<any>;
34
+ linkFormat: string;
35
+ sortSetting: {
36
+ field: string;
37
+ type: string;
38
+ };
39
+ setSortSetting: (setting: {
40
+ field: string;
41
+ type: string;
42
+ }) => void;
43
+ trackEvent: (event: string) => void;
44
+ }
45
+ export declare const useMapList: () => MapListContextProps;
46
+ interface MapListProviderProps {
47
+ children: ReactNode;
48
+ siteConfig: MapConfig;
49
+ resetFilters: boolean;
50
+ navigateToDetails: (id: number) => void;
51
+ navigateToEasyApply: (id: number) => void;
52
+ Link: React.ComponentType<any>;
53
+ linkFormat: string;
54
+ trackEvent: (event: string) => void;
55
+ listings?: Listing[];
56
+ }
57
+ export declare const MapListProvider: React.FC<MapListProviderProps>;
58
+ export {};
@@ -0,0 +1,6 @@
1
+ export function useTrackEvent(): any;
2
+ export function TrackEventProvider({ children, trackEvent }: {
3
+ children: any;
4
+ trackEvent: any;
5
+ }): React.JSX.Element;
6
+ import React from "react";
@@ -0,0 +1,9 @@
1
+ export declare enum SectionType {
2
+ Default = -1,
3
+ Company = 1,
4
+ Category = 2,
5
+ CategoryClass = 3,
6
+ Entity = 4,
7
+ CustomVar = 5,
8
+ REGION = 7
9
+ }
@@ -0,0 +1,13 @@
1
+ export default useListLogic;
2
+ declare function useListLogic(filteredListings: any): {
3
+ itemLimit: number;
4
+ expandedId: any;
5
+ sortSetting: null;
6
+ scrollPosition: number | null;
7
+ loader: import("react").MutableRefObject<null>;
8
+ scrollContainerRef: import("react").MutableRefObject<null>;
9
+ itemRefs: import("react").MutableRefObject<{}>;
10
+ setSortSetting: import("react").Dispatch<import("react").SetStateAction<null>>;
11
+ setScrollPosition: import("react").Dispatch<import("react").SetStateAction<number | null>>;
12
+ filteredListings: any;
13
+ };
@@ -0,0 +1,6 @@
1
+ import { MapConfig } from '~/types/config/MapConfig';
2
+ export declare const getMapConfig: () => Promise<MapConfig>;
3
+ declare const _default: {
4
+ getMapConfig: () => Promise<MapConfig>;
5
+ };
6
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export interface Location {
2
+ latitude: number;
3
+ longitude: number;
4
+ }
5
+ export declare const searchNearbyPlaces: (typesArray: string[], location: Location, radius: number) => Promise<any>;
@@ -0,0 +1,12 @@
1
+ import { Listing } from '~/types/Listings';
2
+ import { Recruiter } from '~/types/Recruiter';
3
+ import { ListingEntity } from '~/types/ListingEntity';
4
+ import { MapConfig } from '~/types/config/MapConfig';
5
+ interface FetchListingsResult {
6
+ listingsResult: Listing[];
7
+ fetchedRecruiters: Recruiter[];
8
+ fetchedEntities: Record<number, ListingEntity>;
9
+ distinctItems: any;
10
+ }
11
+ declare const fetchListings: (query: string, siteConfig: MapConfig, commuteLocation?: any | null) => Promise<FetchListingsResult>;
12
+ export default fetchListings;
@@ -0,0 +1,6 @@
1
+ import { ListingEntity } from '~/types/ListingEntity';
2
+ export declare const getListingEntities: (entityIds: number[], origin?: string) => Promise<ListingEntity[]>;
3
+ declare const _default: {
4
+ getListingEntities: (entityIds: number[], origin?: string) => Promise<ListingEntity[]>;
5
+ };
6
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import { GetListingsParams } from '~/types/GetListingParams';
2
+ import { Listing } from '../types/Listings';
3
+ export declare const getListings: (params?: GetListingsParams) => Promise<Listing[]>;
4
+ export declare const getListingDetails: (listingId: string) => Promise<unknown>;
5
+ declare const _default: {
6
+ getListings: (params?: GetListingsParams | undefined) => Promise<Listing[]>;
7
+ getListingDetails: (listingId: string) => Promise<unknown>;
8
+ };
9
+ export default _default;
@@ -0,0 +1,6 @@
1
+ import { Recruiter } from '~/types/Recruiter';
2
+ export declare const getRecruiters: (recruiterIds: number[]) => Promise<Recruiter[]>;
3
+ declare const _default: {
4
+ getRecruiters: (recruiterIds: number[]) => Promise<Recruiter[]>;
5
+ };
6
+ export default _default;
@@ -0,0 +1,7 @@
1
+ export type Address = {
2
+ location?: string;
3
+ street?: string;
4
+ city?: string;
5
+ state?: string;
6
+ zip?: string;
7
+ };
@@ -0,0 +1,8 @@
1
+ import { SectionType } from '../enums/SectionType';
2
+ export type ContentSection = {
3
+ title?: string;
4
+ contentFormatted?: string;
5
+ contentRaw?: string;
6
+ sectionType: SectionType;
7
+ sortIndex: number;
8
+ };
@@ -0,0 +1,8 @@
1
+ export type GetListingsParams = {
2
+ location?: string[];
3
+ category?: string[];
4
+ categoryClass?: string[];
5
+ education?: string[];
6
+ city?: string[];
7
+ state?: string[];
8
+ };
@@ -0,0 +1,4 @@
1
+ export type LatLng = {
2
+ lat: number;
3
+ lng: number;
4
+ };
@@ -0,0 +1,10 @@
1
+ import { Address } from './Address';
2
+ export type ListingEntity = {
3
+ id: number;
4
+ listingId: number;
5
+ latitude: number;
6
+ longitude: number;
7
+ entityDisplayName?: string;
8
+ address?: Address;
9
+ travelTime?: string;
10
+ };
@@ -0,0 +1,20 @@
1
+ export type ListingFields = {
2
+ posted?: string;
3
+ subTitle?: string;
4
+ education?: string;
5
+ position?: string;
6
+ category?: string;
7
+ categoryClass?: string;
8
+ shift?: string;
9
+ cityState?: string;
10
+ city?: string;
11
+ state?: string;
12
+ schedule?: string;
13
+ customFlag1?: number;
14
+ bonus?: number;
15
+ remote?: number;
16
+ useClientJobUrl?: boolean;
17
+ dateCreated: Date;
18
+ dateLastEdited?: Date;
19
+ travelTime?: string;
20
+ };
@@ -0,0 +1,31 @@
1
+ import { ListingFields } from './ListingFields';
2
+ import { Recruiter } from './Recruiter';
3
+ import { ListingEntity } from './ListingEntity';
4
+ import { ContentSection } from './ContentSection';
5
+ import { SimilarListing } from './SimilarListing';
6
+ export type Listing = {
7
+ id: number;
8
+ fields?: ListingFields;
9
+ entityId?: number;
10
+ applyUrl?: string;
11
+ applyOnline?: number;
12
+ detailsUrl?: string;
13
+ displayOnSite: number;
14
+ displayRecruiter: number;
15
+ recruiterId?: number;
16
+ description1?: string;
17
+ description2?: string;
18
+ description3?: string;
19
+ description4?: string;
20
+ custom1: string;
21
+ custom2: string;
22
+ custom3: string;
23
+ custom4: string;
24
+ custom5: string;
25
+ customFlag1: number;
26
+ slug?: string;
27
+ recruiter?: Recruiter;
28
+ entity?: ListingEntity;
29
+ contentSections?: ContentSection[];
30
+ similarListings?: SimilarListing[];
31
+ };
@@ -0,0 +1,9 @@
1
+ export type Recruiter = {
2
+ id?: number;
3
+ email?: string;
4
+ firstName?: string;
5
+ lastName?: string;
6
+ linkedInUrl?: string;
7
+ mobilePhone?: string;
8
+ headshot?: string;
9
+ };
@@ -0,0 +1,24 @@
1
+ export type SimilarListing = {
2
+ id: number;
3
+ city: string;
4
+ companyName: string;
5
+ companyId: number;
6
+ domain: string;
7
+ refreshedPubDate?: Date;
8
+ clientJobUrl: string;
9
+ refreshNum: number;
10
+ requestURI: string;
11
+ schedule: string;
12
+ scheduleId?: number;
13
+ shift: string;
14
+ sponsored: boolean;
15
+ stateAbbrev: string;
16
+ subTitle: string;
17
+ title: string;
18
+ uniqueId: string;
19
+ zip: string;
20
+ slug?: string;
21
+ dateCreated: Date;
22
+ categoryId: number;
23
+ categoryClassId: number;
24
+ };
@@ -0,0 +1,8 @@
1
+ export type Colors = {
2
+ uiText: string;
3
+ uiAccent: string;
4
+ primary: string;
5
+ primaryDark: string;
6
+ secondary: string;
7
+ secondaryDark: string;
8
+ };