@abcagency/hc-ui-components 1.1.1 → 1.2.0

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 (234) hide show
  1. package/.editorconfig +12 -0
  2. package/.eslintrc +144 -0
  3. package/.prettierignore +3 -0
  4. package/dist/_virtual/_rollupPluginBabelHelpers.js +516 -0
  5. package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  6. package/dist/apis/hcApi.js +189 -0
  7. package/dist/apis/hcApi.js.map +1 -0
  8. package/dist/clientToken.js +10 -0
  9. package/dist/clientToken.js.map +1 -0
  10. package/dist/components/HireControlMap.js +129 -0
  11. package/dist/components/HireControlMap.js.map +1 -0
  12. package/dist/components/modules/accordions/MapAccordionItem.js +76 -0
  13. package/dist/components/modules/accordions/MapAccordionItem.js.map +1 -0
  14. package/dist/components/modules/accordions/default.js +108 -0
  15. package/dist/components/modules/accordions/default.js.map +1 -0
  16. package/dist/components/modules/accordions/filterItem.js +50 -0
  17. package/dist/components/modules/accordions/filterItem.js.map +1 -0
  18. package/dist/components/modules/accordions/filters.js +46 -0
  19. package/dist/components/modules/accordions/filters.js.map +1 -0
  20. package/dist/components/modules/buttons/button-group-apply.js +84 -0
  21. package/dist/components/modules/buttons/button-group-apply.js.map +1 -0
  22. package/dist/components/modules/buttons/commute-pill.js +18 -0
  23. package/dist/components/modules/buttons/commute-pill.js.map +1 -0
  24. package/dist/components/modules/buttons/default.js +145 -0
  25. package/dist/components/modules/buttons/default.js.map +1 -0
  26. package/dist/components/modules/buttons/items-pill.js +23 -0
  27. package/dist/components/modules/buttons/items-pill.js.map +1 -0
  28. package/dist/components/modules/buttons/pill-wrapper.js +20 -0
  29. package/dist/components/modules/buttons/pill-wrapper.js.map +1 -0
  30. package/dist/components/modules/buttons/show-all-button.js +39 -0
  31. package/dist/components/modules/buttons/show-all-button.js.map +1 -0
  32. package/dist/components/modules/cards/default.js +102 -0
  33. package/dist/components/modules/cards/default.js.map +1 -0
  34. package/dist/components/modules/cards/filter.js +38 -0
  35. package/dist/components/modules/cards/filter.js.map +1 -0
  36. package/dist/components/modules/dialogs/apply-dialog.js +46 -0
  37. package/dist/components/modules/dialogs/apply-dialog.js.map +1 -0
  38. package/dist/components/modules/filter/commute.js +184 -0
  39. package/dist/components/modules/filter/commute.js.map +1 -0
  40. package/dist/components/modules/filter/index.js +79 -0
  41. package/dist/components/modules/filter/index.js.map +1 -0
  42. package/dist/components/modules/filter/item.js +71 -0
  43. package/dist/components/modules/filter/item.js.map +1 -0
  44. package/dist/components/modules/filter/location.js +68 -0
  45. package/dist/components/modules/filter/location.js.map +1 -0
  46. package/dist/components/modules/filter/points-of-interest.js +38 -0
  47. package/dist/components/modules/filter/points-of-interest.js.map +1 -0
  48. package/dist/components/modules/filter/radio-item.js +46 -0
  49. package/dist/components/modules/filter/radio-item.js.map +1 -0
  50. package/dist/components/modules/filter/search.js +83 -0
  51. package/dist/components/modules/filter/search.js.map +1 -0
  52. package/dist/components/modules/filter/sort.js +93 -0
  53. package/dist/components/modules/filter/sort.js.map +1 -0
  54. package/dist/components/modules/grid.js +39 -0
  55. package/dist/components/modules/grid.js.map +1 -0
  56. package/dist/components/modules/icon.js +23 -0
  57. package/dist/components/modules/icon.js.map +1 -0
  58. package/dist/components/modules/jobListing/listing-details.js +69 -0
  59. package/dist/components/modules/jobListing/listing-details.js.map +1 -0
  60. package/dist/components/modules/maps/info-window-card.js +14 -0
  61. package/dist/components/modules/maps/info-window-card.js.map +1 -0
  62. package/dist/components/modules/maps/info-window-content.js +39 -0
  63. package/dist/components/modules/maps/info-window-content.js.map +1 -0
  64. package/dist/components/modules/maps/list/field-mapper.js +88 -0
  65. package/dist/components/modules/maps/list/field-mapper.js.map +1 -0
  66. package/dist/components/modules/maps/list/header-item.js +59 -0
  67. package/dist/components/modules/maps/list/header-item.js.map +1 -0
  68. package/dist/components/modules/maps/list/header.js +37 -0
  69. package/dist/components/modules/maps/list/header.js.map +1 -0
  70. package/dist/components/modules/maps/list/index.js +93 -0
  71. package/dist/components/modules/maps/list/index.js.map +1 -0
  72. package/dist/components/modules/maps/list/item-expand-card/index.js +16 -0
  73. package/dist/components/modules/maps/list/item-expand-card/index.js.map +1 -0
  74. package/dist/components/modules/maps/list/item-expand-card/recruiter-contact-nav.js +38 -0
  75. package/dist/components/modules/maps/list/item-expand-card/recruiter-contact-nav.js.map +1 -0
  76. package/dist/components/modules/maps/list/item-expand-card/recruiter-details.js +40 -0
  77. package/dist/components/modules/maps/list/item-expand-card/recruiter-details.js.map +1 -0
  78. package/dist/components/modules/maps/list/item-expand-card/recruiter-headshot.js +20 -0
  79. package/dist/components/modules/maps/list/item-expand-card/recruiter-headshot.js.map +1 -0
  80. package/dist/components/modules/maps/list/list-item/index.js +98 -0
  81. package/dist/components/modules/maps/list/list-item/index.js.map +1 -0
  82. package/dist/components/modules/maps/map-list.js +57 -0
  83. package/dist/components/modules/maps/map-list.js.map +1 -0
  84. package/dist/components/modules/maps/map-marker.js +85 -0
  85. package/dist/components/modules/maps/map-marker.js.map +1 -0
  86. package/dist/components/modules/maps/map.js +201 -0
  87. package/dist/components/modules/maps/map.js.map +1 -0
  88. package/dist/components/modules/maps/place-marker.js +37 -0
  89. package/dist/components/modules/maps/place-marker.js.map +1 -0
  90. package/dist/components/modules/maps/tabs.js +84 -0
  91. package/dist/components/modules/maps/tabs.js.map +1 -0
  92. package/dist/constants/placeTypes.js +11 -0
  93. package/dist/constants/placeTypes.js.map +1 -0
  94. package/dist/contexts/mapContext.js +133 -0
  95. package/dist/contexts/mapContext.js.map +1 -0
  96. package/dist/contexts/mapListContext.js +278 -0
  97. package/dist/contexts/mapListContext.js.map +1 -0
  98. package/dist/contexts/placesContext.js +152 -0
  99. package/dist/contexts/placesContext.js.map +1 -0
  100. package/dist/hooks/useList.js +119 -0
  101. package/dist/hooks/useList.js.map +1 -0
  102. package/dist/index.js +2 -4536
  103. package/dist/index.js.map +1 -0
  104. package/dist/services/_virtual/_rollupPluginBabelHelpers.js +372 -0
  105. package/dist/services/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  106. package/dist/services/apis/hcApi.js +189 -0
  107. package/dist/services/apis/hcApi.js.map +1 -0
  108. package/dist/services/clientToken.js +7 -0
  109. package/dist/services/clientToken.js.map +1 -0
  110. package/dist/services/configService.js +33 -0
  111. package/dist/services/configService.js.map +1 -0
  112. package/dist/services/googlePlacesNearbyService.js +61 -0
  113. package/dist/services/googlePlacesNearbyService.js.map +1 -0
  114. package/dist/services/listingAggregatorService.js +56 -0
  115. package/dist/services/listingAggregatorService.js.map +1 -0
  116. package/dist/services/listingEntityService.js +36 -0
  117. package/dist/services/listingEntityService.js.map +1 -0
  118. package/dist/services/listingService.js +60 -112
  119. package/dist/services/listingService.js.map +1 -0
  120. package/dist/services/recruiterService.js +36 -0
  121. package/dist/services/recruiterService.js.map +1 -0
  122. package/dist/services/styles/index.css +3 -0
  123. package/dist/styles/index.css +3 -0
  124. package/dist/util/filterUtil.js +213 -0
  125. package/dist/util/filterUtil.js.map +1 -0
  126. package/dist/util/loading.js +16 -0
  127. package/dist/util/loading.js.map +1 -0
  128. package/dist/util/localStorageUtil.js +32 -0
  129. package/dist/util/localStorageUtil.js.map +1 -0
  130. package/dist/util/mapIconUtil.js +73 -0
  131. package/dist/util/mapIconUtil.js.map +1 -0
  132. package/dist/util/mapUtil.js +76 -0
  133. package/dist/util/mapUtil.js.map +1 -0
  134. package/dist/util/sortUtil.js +33 -0
  135. package/dist/util/sortUtil.js.map +1 -0
  136. package/dist/util/stringUtils.js +9 -0
  137. package/dist/util/stringUtils.js.map +1 -0
  138. package/jsconfig.json +7 -0
  139. package/package.json +51 -38
  140. package/postcss.config.js +13 -15
  141. package/{src/tailwind/preset.default.js → preset.default.js} +15 -15
  142. package/rollup.config.mjs +87 -0
  143. package/src/apis/hcApi.js +93 -87
  144. package/src/clientToken.js +9 -9
  145. package/src/components/HireControlMap.js +120 -0
  146. package/src/components/modules/accordions/MapAccordionItem.js +72 -69
  147. package/src/components/modules/accordions/default.js +171 -173
  148. package/src/components/modules/accordions/filterItem.js +53 -53
  149. package/src/components/modules/accordions/filters.js +47 -44
  150. package/src/components/modules/buttons/button-group-apply.js +113 -85
  151. package/src/components/modules/buttons/commute-pill.js +22 -21
  152. package/src/components/modules/buttons/default.js +196 -196
  153. package/src/components/modules/buttons/items-pill.js +32 -31
  154. package/src/components/modules/buttons/pill-wrapper.js +27 -26
  155. package/src/components/modules/buttons/show-all-button.js +20 -20
  156. package/src/components/modules/cards/default.js +167 -168
  157. package/src/components/modules/cards/filter.js +56 -55
  158. package/src/components/modules/dialogs/apply-dialog.js +48 -47
  159. package/src/components/modules/filter/commute.js +148 -151
  160. package/src/components/modules/filter/index.js +87 -86
  161. package/src/components/modules/filter/item.js +76 -77
  162. package/src/components/modules/filter/location.js +71 -69
  163. package/src/components/modules/filter/points-of-interest.js +44 -43
  164. package/src/components/modules/filter/radio-item.js +53 -51
  165. package/src/components/modules/filter/search.js +92 -91
  166. package/src/components/modules/filter/sort.js +83 -83
  167. package/src/components/modules/grid.js +55 -56
  168. package/src/components/modules/icon.js +33 -33
  169. package/src/components/modules/jobListing/listing-details.js +94 -88
  170. package/src/components/modules/maps/info-window-card.js +17 -17
  171. package/src/components/modules/maps/info-window-content.js +58 -60
  172. package/src/components/modules/maps/list/field-mapper.js +112 -111
  173. package/src/components/modules/maps/list/header-item.js +91 -90
  174. package/src/components/modules/maps/list/header.js +47 -46
  175. package/src/components/modules/maps/list/index.js +107 -104
  176. package/src/components/modules/maps/list/item-expand-card/index.js +22 -21
  177. package/src/components/modules/maps/list/item-expand-card/recruiter-contact-nav.js +50 -48
  178. package/src/components/modules/maps/list/item-expand-card/recruiter-details.js +68 -67
  179. package/src/components/modules/maps/list/item-expand-card/recruiter-headshot.js +22 -22
  180. package/src/components/modules/maps/list/list-item/index.js +134 -133
  181. package/src/components/modules/maps/map-list.js +74 -73
  182. package/src/components/modules/maps/map-marker.js +86 -84
  183. package/src/components/modules/maps/map.js +229 -226
  184. package/src/components/modules/maps/place-marker.js +1 -1
  185. package/src/components/modules/maps/tabs.js +81 -79
  186. package/src/constants/placeTypes.js +8 -8
  187. package/src/contexts/mapContext.js +20 -19
  188. package/src/contexts/mapListContext.js +20 -15
  189. package/src/contexts/placesContext.js +4 -0
  190. package/src/hooks/useList.js +12 -10
  191. package/src/index.js +3 -103
  192. package/src/services/configService.js +16 -16
  193. package/src/services/googlePlacesNearbyService.js +33 -33
  194. package/src/services/listingAggregatorService.js +5 -4
  195. package/src/services/listingEntityService.js +2 -1
  196. package/src/services/listingService.js +27 -28
  197. package/src/services/recruiterService.js +17 -17
  198. package/src/styles/{globals.css → index.css} +23 -23
  199. package/src/util/arrayUtil.js +3 -3
  200. package/src/util/fieldMapper.js +22 -19
  201. package/src/util/filterUtil.js +19 -19
  202. package/src/util/loading.js +17 -17
  203. package/src/util/localStorageUtil.js +26 -26
  204. package/src/util/mapIconUtil.js +3 -3
  205. package/src/util/sortUtil.js +32 -32
  206. package/src/util/stringUtils.js +6 -6
  207. package/{src/tailwind/tailwind.config.js → tailwind.config.js} +126 -127
  208. package/dist/globals.css +0 -3
  209. package/dist/output.css +0 -784
  210. package/dist/services/globals.css +0 -3
  211. package/rollup.config.js +0 -68
  212. package/src/components/layout/footer.js +0 -34
  213. package/src/components/layout/header.js +0 -23
  214. package/src/components/layout/layout.js +0 -36
  215. package/src/components/modules/animations/slidein.js +0 -41
  216. package/src/components/modules/navigation/nav-link.js +0 -65
  217. package/src/components/modules/navigation/navbar.js +0 -106
  218. package/src/components/modules/navigation/skip-link.js +0 -21
  219. package/src/components/modules/navigation/social.js +0 -29
  220. package/src/components/modules/sections/default.js +0 -59
  221. package/src/components/modules/sections/sectionContext.js +0 -4
  222. package/src/hooks/useClickOutside.js +0 -16
  223. package/src/hooks/useEventListener.js +0 -25
  224. package/src/hooks/useEventTracker.js +0 -19
  225. package/src/hooks/useRefScrollProgress.js +0 -24
  226. package/src/hooks/useScript.js +0 -63
  227. package/src/hooks/useScrollDirection.js +0 -39
  228. package/src/hooks/useSectionTracker.js +0 -95
  229. package/src/hooks/useUserAgent.js +0 -43
  230. package/src/hooks/useWindowSize.js +0 -28
  231. package/src/index.css +0 -25
  232. package/src/styles/fonts.js +0 -0
  233. package/src/util/page-head.js +0 -62
  234. package/src/util/provider.js +0 -12
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.js","sources":["../../../../src/components/modules/cards/default.js"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { Link } from 'react-router-dom';\nimport { twMerge } from 'tailwind-merge';\n\nconst cardClasses = (className, hasShadow) => twMerge(\n\t'hc-relative hc-flex hc-flex-wrap hc-flex-col hc-bg-clip-border hc-break-words hc-bg-white hc-border hc-border-gray-100',\n\thasShadow ? 'hc-shadow-lg' : '',\n\tclassName ?? ''\n);\n\nconst Card = ({ children }) => {\n\treturn (\n\t\t<>{children}</>\n\t);\n};\n\nexport const CardDefault = forwardRef((\n\t{\n\t\tas = 'div',\n\t\tclassName,\n\t\thasShadow = false,\n\t\timage,\n\t\tbody,\n\t\tchildren,\n\t\tfooter,\n\t\t...rest\n\t},\n\tref\n) => {\n\tconst Container = as;\n\n\treturn (\n\t\t<Container\n\t\t\tref={ref}\n\t\t\tclassName={cardClasses(className, hasShadow)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{image}\n\t\t\t{children}\n\t\t\t{body}\n\t\t\t{footer}\n\t\t</Container>\n\t);\n});\n\nconst CardLink = ({\n\tas = 'link',\n\thref,\n\tclassName,\n\thasShadow = false,\n\timage,\n\tbody,\n\tchildren,\n\tfooter,\n\t...rest\n}) => {\n\tconst Container = as === 'link' ? Link : as;\n\n\treturn (\n\t\t<Container\n\t\t\tto={href}\n\t\t\tclassName={twMerge(\n\t\t\t\tcardClasses(className, hasShadow),\n\t\t\t\t'hc-group hc-transition hover:hc-shadow-xl hover:hc-border-indigo-300 focus:hc-shadow-xl focus:hc-border-indigo-300'\n\t\t\t)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{image && image}\n\t\t\t{children}\n\t\t\t{body && body}\n\t\t\t{footer && footer}\n\t\t</Container>\n\t);\n};\n\nexport const CardImage = ({\n\timage,\n\talt,\n\tclassName,\n\timageClassName,\n\t...rest\n}) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={twMerge(\n\t\t\t\t'hc-w-full',\n\t\t\t\tclassName ?? ''\n\t\t\t)}\n\t\t>\n\t\t\t<img\n\t\t\t\tsrc={typeof image === 'string' ? image : image.src}\n\t\t\t\twidth={image.width ? image.width : null}\n\t\t\t\theight={image.height ? image.height : null}\n\t\t\t\talt={alt ?? ''}\n\t\t\t\tclassName={twMerge(\n\t\t\t\t\t'hc-w-full hc-h-auto',\n\t\t\t\t\timageClassName ?? ''\n\t\t\t\t)}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</div>\n\t);\n};\n\nexport const CardBody = ({\n\tchildren,\n\tclassName\n}) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={twMerge(\n\t\t\t\t'hc-flex-auto hc-p-4 md:hc-px-6 lg:hc-px-8',\n\t\t\t\tclassName ?? ''\n\t\t\t)}\n\t\t>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nexport const CardTitle = ({\n\tas = 'h3',\n\tchildren,\n\tclassName,\n\t...rest\n}) => {\n\tconst Title = as;\n\n\treturn (\n\t\t<Title\n\t\t\tclassName={twMerge(\n\t\t\t\t'hc-text-2xl hc-font-bold',\n\t\t\t\tclassName ?? ''\n\t\t\t)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</Title>\n\t);\n};\n\nexport const CardFooter = ({\n\tchildren,\n\tclassName\n}) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={twMerge(\n\t\t\t\t'hc-py-2 hc-px-4 md:hc-px-6 lg:hc-px-8 hc-bg-gray-100',\n\t\t\t\tclassName ?? ''\n\t\t\t)}\n\t\t>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n\nCard.Default = CardDefault;\nCard.Link = CardLink;\nCard.Image = CardImage;\nCard.Body = CardBody;\nCard.Title = CardTitle;\nCard.Footer = CardFooter;\n\nCardDefault.displayName = 'Card:Default';\n\nexport default Card;\n"],"names":["cardClasses","className","hasShadow","twMerge","Card","_ref","children","React","createElement","Fragment","CardDefault","forwardRef","_ref2","ref","_ref2$as","as","_ref2$hasShadow","image","body","footer","rest","_objectWithoutProperties","_excluded","Container","_extends","CardLink","_ref3","_ref3$as","href","_ref3$hasShadow","_excluded2","Link","to","CardImage","_ref4","alt","imageClassName","_excluded3","src","width","height","CardBody","_ref5","CardTitle","_ref6","_ref6$as","_excluded4","Title","CardFooter","_ref7","Default","Image","Body","Footer","displayName"],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import React from 'react';
3
+ import Card from './default.js';
4
+ import IconContained from '../icon.js';
5
+
6
+ var _excluded = ["as", "className", "children"],
7
+ _excluded2 = ["as", "children", "icon", "className"];
8
+ var CardFilter = function CardFilter(_ref) {
9
+ var as = _ref.as,
10
+ className = _ref.className,
11
+ children = _ref.children,
12
+ rest = _objectWithoutProperties(_ref, _excluded);
13
+ return /*#__PURE__*/React.createElement(Card.Default, _extends({
14
+ as: as,
15
+ className: "\n\t\t\thc-bg-uiAccent/5 hc-border hc-border-uiAccent/20 hc-rounded\n\t\t\t\t".concat(className !== null && className !== void 0 ? className : '', "\n\t\t\t")
16
+ }, rest), /*#__PURE__*/React.createElement(Card.Body, {
17
+ className: "!hc-p-3"
18
+ }, children));
19
+ };
20
+ var CardTitle = function CardTitle(_ref2) {
21
+ var as = _ref2.as,
22
+ children = _ref2.children,
23
+ icon = _ref2.icon,
24
+ className = _ref2.className,
25
+ rest = _objectWithoutProperties(_ref2, _excluded2);
26
+ return /*#__PURE__*/React.createElement(Card.Title, _extends({
27
+ as: as,
28
+ className: "\n\t\t\thc-flex hc-items-center hc-gap-2 hc-mb-2 hc-text-xs hc-uppercase hc-font-bold hc-text-uiText\n\t\t\t\t".concat(className !== null && className !== void 0 ? className : '', "\n\t\t\t")
29
+ }, rest), /*#__PURE__*/React.createElement(IconContained, {
30
+ icon: icon,
31
+ size: "hc-size-5",
32
+ className: "hc-text-uiAccent/30"
33
+ }), children);
34
+ };
35
+ CardFilter.Title = CardTitle;
36
+
37
+ export { CardTitle, CardFilter as default };
38
+ //# sourceMappingURL=filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.js","sources":["../../../../src/components/modules/cards/filter.js"],"sourcesContent":["import React from 'react'\n\nimport Card from '~/components/modules/cards/default';\nimport Icon from '~/components/modules/icon';\n\nconst CardFilter = ({\n\tas,\n\tclassName,\n\tchildren,\n\t...rest\n}) => {\n\treturn (\n\t\t<Card.Default\n\t\t\tas={as}\n\t\t\tclassName={`\n\t\t\thc-bg-uiAccent/5 hc-border hc-border-uiAccent/20 hc-rounded\n\t\t\t\t${className ?? ''}\n\t\t\t`}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<Card.Body className=\"!hc-p-3\">\n\t\t\t\t{children}\n\t\t\t</Card.Body>\n\t\t</Card.Default>\n\t);\n};\n\nexport const CardTitle = ({\n\tas,\n\tchildren,\n\ticon,\n\tclassName,\n\t...rest\n}) => {\n\treturn (\n\t\t<Card.Title\n\t\t\tas={as}\n\t\t\tclassName={`\n\t\t\thc-flex hc-items-center hc-gap-2 hc-mb-2 hc-text-xs hc-uppercase hc-font-bold hc-text-uiText\n\t\t\t\t${className ?? ''}\n\t\t\t`}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<Icon\n\t\t\t\ticon={icon}\n\t\t\t\tsize=\"hc-size-5\"\n\t\t\t\tclassName=\"hc-text-uiAccent/30\"\n\t\t\t/>\n\t\t\t{children}\n\t\t</Card.Title>\n\t);\n};\n\nCardFilter.Title = CardTitle;\n\nexport default CardFilter;\n"],"names":["CardFilter","_ref","as","className","children","rest","_objectWithoutProperties","_excluded","React","createElement","Card","Default","_extends","concat","Body","CardTitle","_ref2","icon","_excluded2","Title","Icon","size"],"mappings":";;;;;;;AAKA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAKV;AAAA,EAAA,IAJLC,EAAE,GAAAD,IAAA,CAAFC,EAAE;IACFC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;AACLC,IAAAA,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA,CAAA,CAAA;EAEP,oBACCC,KAAA,CAAAC,aAAA,CAACC,IAAI,CAACC,OAAO,EAAAC,QAAA,CAAA;AACZV,IAAAA,EAAE,EAAEA,EAAG;IACPC,SAAS,EAAA,+EAAA,CAAAU,MAAA,CAENV,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAE,EAAA,UAAA,CAAA;GAEdE,EAAAA,IAAI,gBAERG,KAAA,CAAAC,aAAA,CAACC,IAAI,CAACI,IAAI,EAAA;AAACX,IAAAA,SAAS,EAAC,SAAA;GACnBC,EAAAA,QACS,CACE,CAAC,CAAA;AAEjB,EAAC;IAEYW,SAAS,GAAG,SAAZA,SAASA,CAAAC,KAAA,EAMhB;AAAA,EAAA,IALLd,EAAE,GAAAc,KAAA,CAAFd,EAAE;IACFE,QAAQ,GAAAY,KAAA,CAARZ,QAAQ;IACRa,IAAI,GAAAD,KAAA,CAAJC,IAAI;IACJd,SAAS,GAAAa,KAAA,CAATb,SAAS;AACNE,IAAAA,IAAI,GAAAC,wBAAA,CAAAU,KAAA,EAAAE,UAAA,CAAA,CAAA;EAEP,oBACCV,KAAA,CAAAC,aAAA,CAACC,IAAI,CAACS,KAAK,EAAAP,QAAA,CAAA;AACVV,IAAAA,EAAE,EAAEA,EAAG;IACPC,SAAS,EAAA,gHAAA,CAAAU,MAAA,CAENV,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAATA,SAAS,GAAI,EAAE,EAAA,UAAA,CAAA;AAChB,GAAA,EACEE,IAAI,CAERG,eAAAA,KAAA,CAAAC,aAAA,CAACW,aAAI,EAAA;AACJH,IAAAA,IAAI,EAAEA,IAAK;AACXI,IAAAA,IAAI,EAAC,WAAW;AAChBlB,IAAAA,SAAS,EAAC,qBAAA;GACV,CAAC,EACDC,QACU,CAAC,CAAA;AAEf,EAAC;AAEDJ,UAAU,CAACmB,KAAK,GAAGJ,SAAS;;;;"}
@@ -0,0 +1,46 @@
1
+ import React from 'react';
2
+ import * as Dialog from '@radix-ui/react-dialog';
3
+ import Button from '../buttons/default.js';
4
+ import IconContained from '../icon.js';
5
+
6
+ var ApplyDialog = function ApplyDialog(_ref) {
7
+ var children = _ref.children,
8
+ applyUrl = _ref.applyUrl,
9
+ internalApplyLink = _ref.internalApplyLink,
10
+ companyName = _ref.companyName;
11
+ return /*#__PURE__*/React.createElement(Dialog.Root, null, /*#__PURE__*/React.createElement(Dialog.Trigger, {
12
+ asChild: true
13
+ }, children), /*#__PURE__*/React.createElement(Dialog.Portal, null, /*#__PURE__*/React.createElement(Dialog.Overlay, {
14
+ className: "hc-bg-black/50 hc-fixed hc-inset-0 hc-animate-overlayShow"
15
+ }), /*#__PURE__*/React.createElement(Dialog.Content, {
16
+ className: "hc-fit-content hc-animate-contentShow hc-fixed hc-inset-0 hc-m-auto hc-max-h-[85vh] hc-w-[90vw] hc-max-w-[450px] hc-rounded-[6px] hc-bg-white hc-p-[25px] hc-shadow-lg focus:hc-outline-none hc-flex hc-flex-col hc-items-center hc-text-center"
17
+ }, /*#__PURE__*/React.createElement(Dialog.Title, {
18
+ className: "hc-text-[17px] hc-font-medium hc-w-full"
19
+ }, "Career Opportunities"), /*#__PURE__*/React.createElement(Dialog.Description, {
20
+ className: "hc-mt-4 hc-mb-5 hc-text-[15px] hc-leading-normal hc-w-full"
21
+ }, "Are you currently a ", companyName, " employee?"), /*#__PURE__*/React.createElement("div", {
22
+ className: "hc-flex hc-justify-center hc-space-x-4 hc-w-full"
23
+ }, /*#__PURE__*/React.createElement(Dialog.Close, {
24
+ asChild: true
25
+ }, /*#__PURE__*/React.createElement(Button.Anchor, {
26
+ variant: "outline",
27
+ href: internalApplyLink
28
+ }, "Yes")), /*#__PURE__*/React.createElement(Dialog.Close, {
29
+ asChild: true
30
+ }, /*#__PURE__*/React.createElement(Button.Anchor, {
31
+ variant: "primary",
32
+ href: applyUrl
33
+ }, "No"))), /*#__PURE__*/React.createElement(Dialog.Close, {
34
+ asChild: true
35
+ }, /*#__PURE__*/React.createElement(Button.Anchor, {
36
+ className: "hc-absolute hc-top-[10px] hc-right-[10px] hc-inline-flex hc-h-[25px] hc-w-[25px] hc-items-center hc-justify-center hc-rounded-full focus:hc-outline-none",
37
+ variant: "ghost",
38
+ "aria-label": "Close"
39
+ }, /*#__PURE__*/React.createElement(IconContained, {
40
+ icon: "mdi:times",
41
+ className: "hc-cursor-pointer hc-text-black hover:hc-text-gray-500 hover:hc-opacity-75"
42
+ }))))));
43
+ };
44
+
45
+ export { ApplyDialog as default };
46
+ //# sourceMappingURL=apply-dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-dialog.js","sources":["../../../../src/components/modules/dialogs/apply-dialog.js"],"sourcesContent":["import React from 'react';\nimport * as Dialog from '@radix-ui/react-dialog';\n\nimport Button from '~/components/modules/buttons/default';\nimport Icon from '~/components/modules/icon';\n\nconst ApplyDialog = ({ children, applyUrl, internalApplyLink, companyName }) => (\n\n\t<Dialog.Root >\n\t\t<Dialog.Trigger asChild>\n\t\t\t{children}\n\t\t</Dialog.Trigger>\n\t\t<Dialog.Portal>\n\t\t\t<Dialog.Overlay className=\"hc-bg-black/50 hc-fixed hc-inset-0 hc-animate-overlayShow\" />\n\t\t\t<Dialog.Content className=\"hc-fit-content hc-animate-contentShow hc-fixed hc-inset-0 hc-m-auto hc-max-h-[85vh] hc-w-[90vw] hc-max-w-[450px] hc-rounded-[6px] hc-bg-white hc-p-[25px] hc-shadow-lg focus:hc-outline-none hc-flex hc-flex-col hc-items-center hc-text-center\">\n\t\t\t\t<Dialog.Title className=\"hc-text-[17px] hc-font-medium hc-w-full\">\n\t\t\t\t\tCareer Opportunities\n\t\t\t\t</Dialog.Title>\n\t\t\t\t<Dialog.Description className=\"hc-mt-4 hc-mb-5 hc-text-[15px] hc-leading-normal hc-w-full\">\n\t\t\t\t\tAre you currently a {companyName} employee?\n\t\t\t\t</Dialog.Description>\n\t\t\t\t<div className=\"hc-flex hc-justify-center hc-space-x-4 hc-w-full\">\n\t\t\t\t\t<Dialog.Close asChild>\n\t\t\t\t\t\t<Button.Anchor variant=\"outline\" href={internalApplyLink}>\n\t\t\t\t\t\t\tYes\n\t\t\t\t\t\t</Button.Anchor>\n\t\t\t\t\t</Dialog.Close>\n\t\t\t\t\t<Dialog.Close asChild>\n\t\t\t\t\t\t<Button.Anchor variant=\"primary\" href={applyUrl}>\n\t\t\t\t\t\t\tNo\n\t\t\t\t\t\t</Button.Anchor>\n\t\t\t\t\t</Dialog.Close>\n\t\t\t\t</div>\n\t\t\t\t<Dialog.Close asChild>\n\t\t\t\t\t<Button.Anchor className=\"hc-absolute hc-top-[10px] hc-right-[10px] hc-inline-flex hc-h-[25px] hc-w-[25px] hc-items-center hc-justify-center hc-rounded-full focus:hc-outline-none\"\n\t\t\t\t\t\tvariant=\"ghost\" aria-label=\"Close\">\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon=\"mdi:times\"\n\t\t\t\t\t\t\tclassName=\"hc-cursor-pointer hc-text-black hover:hc-text-gray-500 hover:hc-opacity-75\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Button.Anchor>\n\t\t\t\t</Dialog.Close>\n\t\t\t</Dialog.Content>\n\t\t</Dialog.Portal>\n\t</Dialog.Root>\n);\n\nexport default ApplyDialog;\n"],"names":["ApplyDialog","_ref","children","applyUrl","internalApplyLink","companyName","React","createElement","Dialog","Root","Trigger","asChild","Portal","Overlay","className","Content","Title","Description","Close","Button","Anchor","variant","href","Icon","icon"],"mappings":";;;;;AAMA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IAAEC,WAAW,GAAAJ,IAAA,CAAXI,WAAW,CAAA;AAAA,EAAA,oBAExEC,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACC,IAAI,EACXH,IAAAA,eAAAA,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACE,OAAO,EAAA;IAACC,OAAO,EAAA,IAAA;AAAA,GAAA,EACrBT,QACc,CAAC,eACjBI,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACI,MAAM,qBACbN,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACK,OAAO,EAAA;AAACC,IAAAA,SAAS,EAAC,2DAAA;GAA6D,CAAC,eACxFR,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACO,OAAO,EAAA;AAACD,IAAAA,SAAS,EAAC,iPAAA;AAAiP,GAAA,eAC1QR,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACQ,KAAK,EAAA;AAACF,IAAAA,SAAS,EAAC,yCAAA;GAA0C,EAAA,sBAEpD,CAAC,eACfR,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACS,WAAW,EAAA;AAACH,IAAAA,SAAS,EAAC,4DAAA;GAA6D,EAAA,sBACtE,EAACT,WAAW,EAAC,YACd,CAAC,eACrBC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKO,IAAAA,SAAS,EAAC,kDAAA;AAAkD,GAAA,eAChER,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACU,KAAK,EAAA;IAACP,OAAO,EAAA,IAAA;AAAA,GAAA,eACpBL,KAAA,CAAAC,aAAA,CAACY,MAAM,CAACC,MAAM,EAAA;AAACC,IAAAA,OAAO,EAAC,SAAS;AAACC,IAAAA,IAAI,EAAElB,iBAAAA;GAAmB,EAAA,KAE3C,CACF,CAAC,eACfE,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACU,KAAK,EAAA;IAACP,OAAO,EAAA,IAAA;AAAA,GAAA,eACpBL,KAAA,CAAAC,aAAA,CAACY,MAAM,CAACC,MAAM,EAAA;AAACC,IAAAA,OAAO,EAAC,SAAS;AAACC,IAAAA,IAAI,EAAEnB,QAAAA;GAAU,EAAA,IAElC,CACF,CACV,CAAC,eACNG,KAAA,CAAAC,aAAA,CAACC,MAAM,CAACU,KAAK,EAAA;IAACP,OAAO,EAAA,IAAA;AAAA,GAAA,eACpBL,KAAA,CAAAC,aAAA,CAACY,MAAM,CAACC,MAAM,EAAA;AAACN,IAAAA,SAAS,EAAC,0JAA0J;AAClLO,IAAAA,OAAO,EAAC,OAAO;IAAC,YAAW,EAAA,OAAA;AAAO,GAAA,eAClCf,KAAA,CAAAC,aAAA,CAACgB,aAAI,EAAA;AACJC,IAAAA,IAAI,EAAC,WAAW;AAChBV,IAAAA,SAAS,EAAC,4EAAA;AAA4E,GACtF,CACa,CACF,CACC,CACF,CACH,CAAC,CAAA;AAAA;;;;"}
@@ -0,0 +1,184 @@
1
+ import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import React, { useState, useRef, useEffect, Fragment } from 'react';
3
+ import { Combobox, Transition } from '@headlessui/react';
4
+ import usePlacesAutocomplete, { getLatLng, getGeocode } from 'use-places-autocomplete';
5
+ import Button from '../buttons/default.js';
6
+ import IconContained from '../icon.js';
7
+ import { useMapList } from '../../../contexts/mapListContext.js';
8
+ import { getStorageItem } from '../../../util/localStorageUtil.js';
9
+
10
+ var FilterCommute = function FilterCommute(_ref) {
11
+ var className = _ref.className;
12
+ var _usePlacesAutocomplet = usePlacesAutocomplete(),
13
+ ready = _usePlacesAutocomplet.ready;
14
+ _usePlacesAutocomplet.value;
15
+ var _usePlacesAutocomplet2 = _usePlacesAutocomplet.suggestions,
16
+ status = _usePlacesAutocomplet2.status,
17
+ data = _usePlacesAutocomplet2.data,
18
+ setValue = _usePlacesAutocomplet.setValue,
19
+ clearSuggestions = _usePlacesAutocomplet.clearSuggestions;
20
+ var _useState = useState(getStorageItem('selectedCommute', '')),
21
+ _useState2 = _slicedToArray(_useState, 2),
22
+ selected = _useState2[0],
23
+ setSelected = _useState2[1];
24
+ var inputRef = useRef(null);
25
+ var _useMapList = useMapList(),
26
+ setCommuteLocation = _useMapList.setCommuteLocation,
27
+ commuteLocation = _useMapList.commuteLocation;
28
+ var _useState3 = useState(getStorageItem('isCurrentLocation', false)),
29
+ _useState4 = _slicedToArray(_useState3, 2),
30
+ isCurrentLocation = _useState4[0],
31
+ setIsCurrentLocation = _useState4[1];
32
+ useEffect(function () {
33
+ if (commuteLocation !== null && commuteLocation != '') return;
34
+ setIsCurrentLocation(false);
35
+ localStorage.removeItem('isCurrentLocation');
36
+ localStorage.removeItem('selectedCommute');
37
+ setSelected("");
38
+ }, [commuteLocation]);
39
+ var handleSelect = /*#__PURE__*/function () {
40
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(val) {
41
+ var isCurrLocation,
42
+ results,
43
+ _yield$getLatLng,
44
+ lat,
45
+ lng,
46
+ _args = arguments;
47
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
48
+ while (1) switch (_context.prev = _context.next) {
49
+ case 0:
50
+ isCurrLocation = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;
51
+ setValue(val, false);
52
+ setSelected(val);
53
+ localStorage.setItem('selectedCommute', val);
54
+ clearSuggestions();
55
+ if (!isCurrLocation) {
56
+ _context.next = 7;
57
+ break;
58
+ }
59
+ return _context.abrupt("return");
60
+ case 7:
61
+ _context.prev = 7;
62
+ _context.next = 10;
63
+ return getGeocode({
64
+ address: val
65
+ });
66
+ case 10:
67
+ results = _context.sent;
68
+ _context.next = 13;
69
+ return getLatLng(results[0]);
70
+ case 13:
71
+ _yield$getLatLng = _context.sent;
72
+ lat = _yield$getLatLng.lat;
73
+ lng = _yield$getLatLng.lng;
74
+ setCommuteLocation({
75
+ lat: lat,
76
+ lng: lng
77
+ });
78
+ _context.next = 21;
79
+ break;
80
+ case 19:
81
+ _context.prev = 19;
82
+ _context.t0 = _context["catch"](7);
83
+ case 21:
84
+ case "end":
85
+ return _context.stop();
86
+ }
87
+ }, _callee, null, [[7, 19]]);
88
+ }));
89
+ return function handleSelect(_x) {
90
+ return _ref2.apply(this, arguments);
91
+ };
92
+ }();
93
+ var fetchLocation = function fetchLocation() {
94
+ if (!navigator.geolocation) {
95
+ console.error("Geolocation is not supported by this browser.");
96
+ return;
97
+ }
98
+ navigator.geolocation.getCurrentPosition(function (position) {
99
+ setCommuteLocation({
100
+ lat: position.coords.latitude,
101
+ lng: position.coords.longitude
102
+ });
103
+ handleSelect("Current Location");
104
+ }, function (error) {
105
+ console.error("Error fetching location", error);
106
+ });
107
+ };
108
+ return /*#__PURE__*/React.createElement("div", {
109
+ className: "relative ".concat(className !== null && className !== void 0 ? className : "")
110
+ }, /*#__PURE__*/React.createElement("label", {
111
+ htmlFor: "commute",
112
+ className: "hc-flex hc-items-center hc-gap-2 hc-mb-2 hc-text-xs hc-uppercase hc-font-bold hc-text-uiText"
113
+ }, /*#__PURE__*/React.createElement(IconContained, {
114
+ icon: "ri:pin-distance-fill",
115
+ size: "hc-size-5",
116
+ className: "hc-text-uiAccent/30"
117
+ }), /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement("span", {
118
+ className: "md:hc-hidden lg:hc-inline"
119
+ }, "Calculate your"), " commute")), /*#__PURE__*/React.createElement(Combobox, {
120
+ value: selected,
121
+ onChange: handleSelect
122
+ }, /*#__PURE__*/React.createElement("div", {
123
+ className: "hc-relative hc-mt-1"
124
+ }, /*#__PURE__*/React.createElement("div", {
125
+ className: "hc-relative hc-flex hc-items-center hc-w-full hc-pr-2 hc-cursor-default hc-overflow-hidden hc-rounded hc-bg-white hc-text-left hc-border hc-border-uiAccent/20 focus-within:hc-ring-1 focus-within:hc-ring-uiAccent focus:hc-outline-none"
126
+ }, /*#__PURE__*/React.createElement(Combobox.Input, {
127
+ className: "hc-w-full hc-border-none hc-py-2 hc-pl-4 hc-pr-1 hc-text-sm hc-leading-5 hc-text-gray-900 focus:hc-ring-0 placeholder:hc-text-gray-400",
128
+ onChange: function onChange(e) {
129
+ setValue(e.target.value);
130
+ setSelected(e.target.value);
131
+ },
132
+ value: selected,
133
+ disabled: !ready,
134
+ placeholder: "Starting point",
135
+ ref: inputRef
136
+ }), /*#__PURE__*/React.createElement(Button.Btn, {
137
+ variant: "icon",
138
+ size: "sqsm",
139
+ onClick: function onClick() {
140
+ setIsCurrentLocation(!isCurrentLocation);
141
+ localStorage.setItem('isCurrentLocation', !isCurrentLocation);
142
+ if (isCurrentLocation || commuteLocation) {
143
+ setCommuteLocation("");
144
+ setSelected("");
145
+ } else if (!commuteLocation) {
146
+ fetchLocation();
147
+ }
148
+ },
149
+ className: ""
150
+ }, /*#__PURE__*/React.createElement("span", {
151
+ className: "hc-sr-only"
152
+ }, "Use your location"), commuteLocation ? /*#__PURE__*/React.createElement(IconContained, {
153
+ icon: "mdi:times"
154
+ }) : /*#__PURE__*/React.createElement(Button.Icon, {
155
+ className: isCurrentLocation ? 'hc-text-blue-500' : 'hc-text-current',
156
+ icon: "mdi:hc-my-location"
157
+ }))), /*#__PURE__*/React.createElement(Transition, {
158
+ as: Fragment,
159
+ leave: "hc-transition hc-ease-in hc-duration-100",
160
+ leaveFrom: "hc-opacity-100",
161
+ leaveTo: "hc-opacity-0",
162
+ afterLeave: clearSuggestions
163
+ }, /*#__PURE__*/React.createElement(Combobox.Options, {
164
+ className: "hc-absolute hc-z-20 hc-mt-1 hc-max-h-60 hc-w-full hc-overflow-auto hc-rounded hc-bg-white hc-py-1 hc-text-base hc-shadow hc-ring-1 hc-ring-uiAccent/10 focus:hc-outline-none sm:hc-text-sm"
165
+ }, status === "OK" && data.map(function (data) {
166
+ return /*#__PURE__*/React.createElement(Combobox.Option, {
167
+ key: data.place_id,
168
+ value: data.description,
169
+ className: function className(_ref3) {
170
+ var active = _ref3.active;
171
+ return "hc-relative hc-cursor-default hc-select-none hc-px-4 hc-py-2 ".concat(active ? "hc-bg-primary hc-text-white" : "hc-text-uiText");
172
+ }
173
+ }, function (_ref4) {
174
+ var selected = _ref4.selected;
175
+ _ref4.active;
176
+ return /*#__PURE__*/React.createElement("span", {
177
+ className: "hc-block hc-truncate ".concat(selected ? "hc-font-bold" : "hc-font-medium")
178
+ }, data.description);
179
+ });
180
+ }))))));
181
+ };
182
+
183
+ export { FilterCommute as default };
184
+ //# sourceMappingURL=commute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commute.js","sources":["../../../../src/components/modules/filter/commute.js"],"sourcesContent":["import React, { Fragment, useRef, useState, useEffect } from 'react';\nimport { Combobox, Transition } from '@headlessui/react';\nimport usePlacesAutocomplete, { getGeocode, getLatLng } from 'use-places-autocomplete';\n\nimport Button from '~/components/modules/buttons/default';\nimport Icon from \"~/components/modules/icon\";\n\nimport { useMapList } from '~/contexts/mapListContext';\nimport { getStorageItem } from '~/util/localStorageUtil';\n\nconst FilterCommute = ({ className }) => {\n\tconst {\n\t\tready,\n\t\tvalue,\n\t\tsuggestions: { status, data },\n\t\tsetValue,\n\t\tclearSuggestions\n\t} = usePlacesAutocomplete();\n\n\tconst [selected, setSelected] = useState(getStorageItem('selectedCommute', ''));\n\tconst inputRef = useRef(null);\n\tconst { setCommuteLocation, commuteLocation } = useMapList();\n\tconst [isCurrentLocation, setIsCurrentLocation] = useState(getStorageItem('isCurrentLocation', false));\n\n\tuseEffect(() => {\n\t\tif (commuteLocation !== null && commuteLocation != '') return;\n\t\tsetIsCurrentLocation(false);\n\t\tlocalStorage.removeItem('isCurrentLocation');\n\t\tlocalStorage.removeItem('selectedCommute');\n\t\tsetSelected(\"\");\n\t}, [commuteLocation]);\n\n\tconst handleSelect = async (val, isCurrLocation = false) => {\n\t\tsetValue(val, false);\n\t\tsetSelected(val);\n\t\tlocalStorage.setItem('selectedCommute', val);\n\t\tclearSuggestions();\n\t\tif (isCurrLocation) return;\n\t\ttry {\n\t\t\tconst results = await getGeocode({ address: val });\n\t\t\tconst { lat, lng } = await getLatLng(results[0]);\n\t\t\tsetCommuteLocation({ lat, lng });\n\t\t} catch (error) { }\n\t};\n\n\tconst fetchLocation = () => {\n\t\tif (!navigator.geolocation) {\n\t\t\tconsole.error(\"Geolocation is not supported by this browser.\");\n\t\t\treturn;\n\t\t}\n\t\tnavigator.geolocation.getCurrentPosition(\n\t\t\tposition => {\n\t\t\t\tsetCommuteLocation({\n\t\t\t\t\tlat: position.coords.latitude,\n\t\t\t\t\tlng: position.coords.longitude\n\t\t\t\t});\n\t\t\t\thandleSelect(\"Current Location\");\n\t\t\t},\n\t\t\terror => {\n\t\t\t\tconsole.error(\"Error fetching location\", error);\n\t\t\t},\n\t\t);\n\t};\n\n\treturn (\n\t\t<div className={`relative ${className ?? \"\"}`}>\n\t\t\t<label\n\t\t\t\thtmlFor=\"commute\"\n\t\t\t\tclassName=\"hc-flex hc-items-center hc-gap-2 hc-mb-2 hc-text-xs hc-uppercase hc-font-bold hc-text-uiText\"\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\ticon=\"ri:pin-distance-fill\"\n\t\t\t\t\tsize=\"hc-size-5\"\n\t\t\t\t\tclassName=\"hc-text-uiAccent/30\"\n\t\t\t\t/>\n\t\t\t\t<span>\n\t\t\t\t\t<span className=\"md:hc-hidden lg:hc-inline\">Calculate your</span> commute\n\t\t\t\t</span>\n\t\t\t</label>\n\n\t\t\t<Combobox value={selected} onChange={handleSelect}>\n\t\t\t\t<div className=\"hc-relative hc-mt-1\">\n\t\t\t\t\t<div className=\"hc-relative hc-flex hc-items-center hc-w-full hc-pr-2 hc-cursor-default hc-overflow-hidden hc-rounded hc-bg-white hc-text-left hc-border hc-border-uiAccent/20 focus-within:hc-ring-1 focus-within:hc-ring-uiAccent focus:hc-outline-none\">\n\t\t\t\t\t\t<Combobox.Input\n\t\t\t\t\t\t\tclassName=\"hc-w-full hc-border-none hc-py-2 hc-pl-4 hc-pr-1 hc-text-sm hc-leading-5 hc-text-gray-900 focus:hc-ring-0 placeholder:hc-text-gray-400\"\n\t\t\t\t\t\t\tonChange={e => {\n\t\t\t\t\t\t\t\tsetValue(e.target.value);\n\t\t\t\t\t\t\t\tsetSelected(e.target.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tvalue={selected}\n\t\t\t\t\t\t\tdisabled={!ready}\n\t\t\t\t\t\t\tplaceholder=\"Starting point\"\n\t\t\t\t\t\t\tref={inputRef}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Button.Btn\n\t\t\t\t\t\t\tvariant=\"icon\"\n\t\t\t\t\t\t\tsize=\"sqsm\"\n\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\tsetIsCurrentLocation(!isCurrentLocation);\n\t\t\t\t\t\t\t\tlocalStorage.setItem('isCurrentLocation', !isCurrentLocation);\n\t\t\t\t\t\t\t\tif (isCurrentLocation || commuteLocation) {\n\t\t\t\t\t\t\t\t\tsetCommuteLocation(\"\");\n\t\t\t\t\t\t\t\t\tsetSelected(\"\");\n\t\t\t\t\t\t\t\t} else if (!commuteLocation) { fetchLocation(); }\n\t\t\t\t\t\t\t}}\n\n\t\t\t\t\t\t\tclassName=\"\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"hc-sr-only\">Use your location</span>\n\t\t\t\t\t\t\t{commuteLocation ? <Icon icon=\"mdi:times\"></Icon> : <Button.Icon className={isCurrentLocation ? 'hc-text-blue-500' : 'hc-text-current'} icon=\"mdi:hc-my-location\" />}\n\t\t\t\t\t\t</Button.Btn>\n\t\t\t\t\t</div>\n\t\t\t\t\t<Transition\n\t\t\t\t\t\tas={Fragment}\n\t\t\t\t\t\tleave=\"hc-transition hc-ease-in hc-duration-100\"\n\t\t\t\t\t\tleaveFrom=\"hc-opacity-100\"\n\t\t\t\t\t\tleaveTo=\"hc-opacity-0\"\n\t\t\t\t\t\tafterLeave={clearSuggestions}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Combobox.Options className=\"hc-absolute hc-z-20 hc-mt-1 hc-max-h-60 hc-w-full hc-overflow-auto hc-rounded hc-bg-white hc-py-1 hc-text-base hc-shadow hc-ring-1 hc-ring-uiAccent/10 focus:hc-outline-none sm:hc-text-sm\">\n\t\t\t\t\t\t\t{status === \"OK\" &&\n\t\t\t\t\t\t\t\tdata.map(data => (\n\t\t\t\t\t\t\t\t\t<Combobox.Option\n\t\t\t\t\t\t\t\t\t\tkey={data.place_id}\n\t\t\t\t\t\t\t\t\t\tvalue={data.description}\n\t\t\t\t\t\t\t\t\t\tclassName={({ active }) =>\n\t\t\t\t\t\t\t\t\t\t\t`hc-relative hc-cursor-default hc-select-none hc-px-4 hc-py-2 ${active ? \"hc-bg-primary hc-text-white\" : \"hc-text-uiText\"\n\t\t\t\t\t\t\t\t\t\t\t}`\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{({ selected, active }) => (\n\t\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={`hc-block hc-truncate ${selected ? \"hc-font-bold\" : \"hc-font-medium\"}`}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{data.description}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</Combobox.Option>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</Combobox.Options>\n\t\t\t\t\t</Transition>\n\t\t\t\t</div>\n\t\t\t</Combobox>\n\t\t</div>\n\t);\n};\n\nexport default FilterCommute;\n"],"names":["FilterCommute","_ref","className","_usePlacesAutocomplet","usePlacesAutocomplete","ready","value","_usePlacesAutocomplet2","suggestions","status","data","setValue","clearSuggestions","_useState","useState","getStorageItem","_useState2","_slicedToArray","selected","setSelected","inputRef","useRef","_useMapList","useMapList","setCommuteLocation","commuteLocation","_useState3","_useState4","isCurrentLocation","setIsCurrentLocation","useEffect","localStorage","removeItem","handleSelect","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","val","isCurrLocation","results","_yield$getLatLng","lat","lng","_args","arguments","wrap","_callee$","_context","prev","next","length","undefined","setItem","abrupt","getGeocode","address","sent","getLatLng","t0","stop","_x","apply","fetchLocation","navigator","geolocation","console","error","getCurrentPosition","position","coords","latitude","longitude","React","createElement","concat","htmlFor","Icon","icon","size","Combobox","onChange","Input","e","target","disabled","placeholder","ref","Button","Btn","variant","onClick","Transition","as","Fragment","leave","leaveFrom","leaveTo","afterLeave","Options","map","Option","key","place_id","description","_ref3","active","_ref4"],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ import { slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import React, { useState } from 'react';
3
+ import Search from './search.js';
4
+ import AccordionFilters from '../accordions/filters.js';
5
+ import FilterLocation from './location.js';
6
+ import Button from '../buttons/default.js';
7
+ import { useMap } from '../../../contexts/mapContext.js';
8
+ import { useMapList } from '../../../contexts/mapListContext.js';
9
+
10
+ var Filter = function Filter(_ref) {
11
+ var className = _ref.className,
12
+ showMap = _ref.showMap;
13
+ var _useState = useState(false),
14
+ _useState2 = _slicedToArray(_useState, 2),
15
+ hasActiveFilters = _useState2[0],
16
+ setHasActiveFilters = _useState2[1];
17
+ var _useState3 = useState(null),
18
+ _useState4 = _slicedToArray(_useState3, 2),
19
+ defaultValue = _useState4[0],
20
+ _setDefaultValue = _useState4[1];
21
+ var _useMap = useMap(),
22
+ setSelectedListItem = _useMap.setSelectedListItem,
23
+ setLocation = _useMap.setLocation,
24
+ filterReset = _useMap.filterReset;
25
+ var _useMapList = useMapList(),
26
+ filteredListings = _useMapList.filteredListings,
27
+ selectedFilters = _useMapList.selectedFilters,
28
+ setSelectedFilters = _useMapList.setSelectedFilters,
29
+ setMobileTab = _useMapList.setMobileTab,
30
+ handleSettingFavorites = _useMapList.handleSettingFavorites,
31
+ setQuery = _useMapList.setQuery,
32
+ siteConfig = _useMapList.siteConfig;
33
+ return /*#__PURE__*/React.createElement("div", {
34
+ className: "\n\t\t\thc-relative hc-max-h-[95vh] md:hc-max-h-screen hc-overflow-y-auto hc-overflow-x-auto\n\t\t\t\t".concat(className !== null && className !== void 0 ? className : "", "\n\t\t\t")
35
+ }, /*#__PURE__*/React.createElement("div", {
36
+ className: "hc-px-4 md:hc-pt-4 hc-space-y-4"
37
+ }, /*#__PURE__*/React.createElement(AccordionFilters, {
38
+ setHasActiveFilters: setHasActiveFilters,
39
+ defaultValue: defaultValue,
40
+ setDefaultValue: function setDefaultValue(value) {
41
+ _setDefaultValue(value == defaultValue ? "" : value);
42
+ },
43
+ setLocation: setLocation,
44
+ setSelectedListItem: setSelectedListItem
45
+ }), /*#__PURE__*/React.createElement(Search, null), siteConfig.hideLocations !== true && /*#__PURE__*/React.createElement(FilterLocation, {
46
+ setHasActiveFilters: setHasActiveFilters,
47
+ defaultValue: defaultValue,
48
+ showMap: showMap,
49
+ setDefaultValue: function setDefaultValue(value) {
50
+ _setDefaultValue(value == defaultValue ? "" : value);
51
+ },
52
+ setLocation: setLocation,
53
+ setSelectedListItem: setSelectedListItem
54
+ })), /*#__PURE__*/React.createElement("div", {
55
+ className: "hc-sticky hc-bottom-0 hc-inset-x-0 hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-px-4 hc-mt-2 hc-bg-white md:hc-bg-gray-100"
56
+ }, /*#__PURE__*/React.createElement(Button.Btn, {
57
+ onClick: function onClick() {
58
+ filterReset();
59
+ setSelectedFilters({});
60
+ setQuery(null);
61
+ handleSettingFavorites(null);
62
+ },
63
+ variant: "outline",
64
+ size: "sm"
65
+ }, "Reset"), selectedFilters && Object.keys(selectedFilters).length > 0 && /*#__PURE__*/React.createElement(Button.Btn, {
66
+ onClick: function onClick() {
67
+ return setMobileTab("listTab");
68
+ },
69
+ variant: "primary",
70
+ size: "sm",
71
+ className: "\n\t\t\t\t\t\tmd:hc-hidden\n\t\t\t\t\t\t".concat(hasActiveFilters ? "hc-opacity-0 hc-pointer-events-none" : "hc-opacity-100", "\n\t\t\t\t\t")
72
+ }, /*#__PURE__*/React.createElement(Button.Body, null, /*#__PURE__*/React.createElement(Button.Icon, {
73
+ icon: "fluent:search-12-filled",
74
+ size: "hc-size-3.5"
75
+ }), "Show ", filteredListings.length, " Jobs"))));
76
+ };
77
+
78
+ export { Filter as default };
79
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/modules/filter/index.js"],"sourcesContent":["import React, { useState } from 'react';\n\nimport FilterSearch from '~/components/modules/filter/search';\nimport FiltersAccordion from '~/components/modules/accordions/filters';\nimport FilterLocations from '~/components/modules/filter/location';\nimport Button from '~/components/modules/buttons/default';\n\nimport { useMap } from '~/contexts/mapContext';\nimport { useMapList } from '~/contexts/mapListContext';\n\nconst Filter = ({\n\tclassName,\n\tshowMap\n}) => {\n\tconst [hasActiveFilters, setHasActiveFilters] = useState(false);\n\tconst [defaultValue, setDefaultValue] = useState(null);\n\tconst { setSelectedListItem, setLocation, filterReset } = useMap();\n\tconst {\n\t\tfilteredListings,\n\t\tselectedFilters,\n\t\tsetSelectedFilters,\n\t\tsetMobileTab,\n\t\thandleSettingFavorites,\n\t\tsetQuery,\n\t\tsiteConfig\n\t} = useMapList();\n\n\treturn (\n\t\t<div\n\t\t\tclassName={`\n\t\t\thc-relative hc-max-h-[95vh] md:hc-max-h-screen hc-overflow-y-auto hc-overflow-x-auto\n\t\t\t\t${className ?? \"\"}\n\t\t\t`}\n\t\t>\n\t\t\t<div className=\"hc-px-4 md:hc-pt-4 hc-space-y-4\">\n\t\t\t\t<FiltersAccordion\n\t\t\t\t\tsetHasActiveFilters={setHasActiveFilters}\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tsetDefaultValue={value => { setDefaultValue(value == defaultValue ? \"\" : value); }}\n\t\t\t\t\tsetLocation={setLocation}\n\t\t\t\t\tsetSelectedListItem={setSelectedListItem}\n\t\t\t\t/>\n\t\t\t\t<FilterSearch />\n\t\t\t\t{siteConfig.hideLocations !== true &&\n\t\t\t\t\t<FilterLocations\n\t\t\t\t\t\tsetHasActiveFilters={setHasActiveFilters}\n\t\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\t\tshowMap={showMap}\n\t\t\t\t\t\tsetDefaultValue={value => { setDefaultValue(value == defaultValue ? \"\" : value); }}\n\t\t\t\t\t\tsetLocation={setLocation}\n\t\t\t\t\t\tsetSelectedListItem={setSelectedListItem}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<div className=\"hc-sticky hc-bottom-0 hc-inset-x-0 hc-flex hc-items-center hc-justify-between hc-gap-2 hc-py-2 hc-px-4 hc-mt-2 hc-bg-white md:hc-bg-gray-100\">\n\t\t\t\t<Button.Btn\n\t\t\t\t\tonClick={() => { filterReset(); setSelectedFilters({}); setQuery(null); handleSettingFavorites(null); }}\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tsize=\"sm\"\n\t\t\t\t>\n\t\t\t\t\tReset\n\t\t\t\t</Button.Btn>\n\t\t\t\t{selectedFilters && Object.keys(selectedFilters).length > 0 &&\n\t\t\t\t\t<Button.Btn\n\t\t\t\t\t\tonClick={() => setMobileTab(\"listTab\")}\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\tclassName={`\n\t\t\t\t\t\tmd:hc-hidden\n\t\t\t\t\t\t${hasActiveFilters ? \"hc-opacity-0 hc-pointer-events-none\" : \"hc-opacity-100\"}\n\t\t\t\t\t`}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button.Body>\n\t\t\t\t\t\t\t<Button.Icon\n\t\t\t\t\t\t\t\ticon=\"fluent:search-12-filled\"\n\t\t\t\t\t\t\t\tsize=\"hc-size-3.5\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\tShow {filteredListings.length} Jobs\n\t\t\t\t\t\t</Button.Body>\n\t\t\t\t\t</Button.Btn>\n\t\t\t\t}\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default Filter;\n"],"names":["Filter","_ref","className","showMap","_useState","useState","_useState2","_slicedToArray","hasActiveFilters","setHasActiveFilters","_useState3","_useState4","defaultValue","setDefaultValue","_useMap","useMap","setSelectedListItem","setLocation","filterReset","_useMapList","useMapList","filteredListings","selectedFilters","setSelectedFilters","setMobileTab","handleSettingFavorites","setQuery","siteConfig","React","createElement","concat","FiltersAccordion","value","FilterSearch","hideLocations","FilterLocations","Button","Btn","onClick","variant","size","Object","keys","length","Body","Icon","icon"],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends, objectSpread2 as _objectSpread2 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import React, { useState, useEffect } from 'react';
3
+
4
+ var _excluded = ["className", "item", "type", "itemKey", "hasCount", "field", "selectedFilters", "setSelectedFilters"];
5
+ var FilterItem = function FilterItem(_ref) {
6
+ var _selectedFilters$fiel;
7
+ var className = _ref.className,
8
+ item = _ref.item,
9
+ _ref$type = _ref.type,
10
+ type = _ref$type === void 0 ? 'checkbox' : _ref$type,
11
+ _ref$itemKey = _ref.itemKey,
12
+ itemKey = _ref$itemKey === void 0 ? null : _ref$itemKey,
13
+ _ref$hasCount = _ref.hasCount,
14
+ hasCount = _ref$hasCount === void 0 ? true : _ref$hasCount,
15
+ field = _ref.field,
16
+ selectedFilters = _ref.selectedFilters,
17
+ setSelectedFilters = _ref.setSelectedFilters,
18
+ rest = _objectWithoutProperties(_ref, _excluded);
19
+ var itemName = item.name ? item.name : item;
20
+ itemKey = itemKey === null ? itemName : itemKey;
21
+ var isActive = selectedFilters != undefined && !!((_selectedFilters$fiel = selectedFilters[field]) !== null && _selectedFilters$fiel !== void 0 && _selectedFilters$fiel[itemKey]);
22
+ var changeHandler = function changeHandler() {
23
+ setSelectedFilters(function (prevFilters) {
24
+ var updatedFilters = _objectSpread2({}, prevFilters);
25
+ if (!isActive) {
26
+ if (!updatedFilters[field]) {
27
+ updatedFilters[field] = {};
28
+ }
29
+ updatedFilters[field][itemKey] = true;
30
+ return updatedFilters;
31
+ }
32
+ delete updatedFilters[field][itemKey];
33
+ if (Object.keys(updatedFilters[field]).length === 0) {
34
+ delete updatedFilters[field];
35
+ }
36
+ return updatedFilters;
37
+ });
38
+ };
39
+ var _useState = useState(isActive),
40
+ _useState2 = _slicedToArray(_useState, 2),
41
+ activeItem = _useState2[0],
42
+ setActiveItem = _useState2[1];
43
+ useEffect(function () {
44
+ var _Object$keys;
45
+ if (selectedFilters && selectedFilters[field] && ((_Object$keys = Object.keys(selectedFilters[field])) === null || _Object$keys === void 0 ? void 0 : _Object$keys.length) > 0) return;else if (activeItem === true) {
46
+ setActiveItem(false);
47
+ }
48
+ }, [selectedFilters]);
49
+ return /*#__PURE__*/React.createElement("label", _extends({
50
+ className: "\n\t\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\n\t\t\t\t".concat(className !== null && className !== void 0 ? className : "", "\n\t\t\t")
51
+ }, rest), /*#__PURE__*/React.createElement("input", {
52
+ id: itemKey,
53
+ name: field,
54
+ disabled: item.count == 0,
55
+ value: itemName,
56
+ type: type,
57
+ className: "hc-size-4 hc-mt-px hc-text-primary hc-border-uiAccent/30 hc-transition-colors hc-rounded-sm",
58
+ checked: activeItem,
59
+ onChange: function onChange() {
60
+ setActiveItem(!activeItem);
61
+ changeHandler();
62
+ }
63
+ }), /*#__PURE__*/React.createElement("span", {
64
+ className: "font-medium"
65
+ }, itemName), hasCount && /*#__PURE__*/React.createElement("span", {
66
+ className: "hc-inline-block hc-mt-1 hc-ml-auto hc-text-xs hc-leading-none hc-text-primary"
67
+ }, "(", item.count, ")"));
68
+ };
69
+
70
+ export { FilterItem as default };
71
+ //# sourceMappingURL=item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.js","sources":["../../../../src/components/modules/filter/item.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\n\nconst FilterItem = ({\n\tclassName,\n\titem,\n\ttype = 'checkbox',\n\titemKey = null,\n\thasCount = true,\n\tfield,\n\tselectedFilters,\n\tsetSelectedFilters,\n\t...rest\n}) => {\n\tconst itemName = item.name ? item.name : item;\n\titemKey = itemKey === null ? itemName : itemKey;\n\tvar isActive =\n\t\tselectedFilters != undefined && !!selectedFilters[field]?.[itemKey];\n\n\tconst changeHandler = () => {\n\t\tsetSelectedFilters(prevFilters => {\n\t\t\tconst updatedFilters = { ...prevFilters };\n\t\t\tif (!isActive) {\n\t\t\t\tif (!updatedFilters[field]) {\n\t\t\t\t\tupdatedFilters[field] = {};\n\t\t\t\t}\n\t\t\t\tupdatedFilters[field][itemKey] = true;\n\t\t\t\treturn updatedFilters;\n\t\t\t}\n\t\t\tdelete updatedFilters[field][itemKey];\n\t\t\tif (Object.keys(updatedFilters[field]).length === 0) {\n\t\t\t\tdelete updatedFilters[field];\n\t\t\t}\n\t\t\treturn updatedFilters;\n\t\t});\n\t};\n\tconst [activeItem, setActiveItem] = useState(isActive);\n\n\tuseEffect(() => {\n\t\tif (selectedFilters && selectedFilters[field] && Object.keys(selectedFilters[field])?.length > 0) return;\n\t\telse if (activeItem === true) {\n\t\t\tsetActiveItem(false);\n\t\t}\n\t}, [selectedFilters]);\n\n\treturn (\n\t\t<label\n\t\t\tclassName={`\n\t\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\n\t\t\t\t${className ?? \"\"}\n\t\t\t`}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<input\n\t\t\t\tid={itemKey}\n\t\t\t\tname={field}\n\t\t\t\tdisabled={item.count == 0}\n\t\t\t\tvalue={itemName}\n\t\t\t\ttype={type}\n\t\t\t\tclassName={`hc-size-4 hc-mt-px hc-text-primary hc-border-uiAccent/30 hc-transition-colors hc-rounded-sm`}\n\t\t\t\tchecked={activeItem}\n\t\t\t\tonChange={() => {\n\t\t\t\t\tsetActiveItem(!activeItem);\n\t\t\t\t\tchangeHandler();\n\t\t\t\t}}\n\t\t\t/>\n\t\t\t<span className=\"font-medium\">{itemName}</span>\n\t\t\t{hasCount && (\n\t\t\t\t<span className=\"hc-inline-block hc-mt-1 hc-ml-auto hc-text-xs hc-leading-none hc-text-primary\">\n\t\t\t\t\t({item.count})\n\t\t\t\t</span>\n\t\t\t)}\n\t\t</label>\n\t);\n};\n\nexport default FilterItem;\n"],"names":["FilterItem","_ref","_selectedFilters$fiel","className","item","_ref$type","type","_ref$itemKey","itemKey","_ref$hasCount","hasCount","field","selectedFilters","setSelectedFilters","rest","_objectWithoutProperties","_excluded","itemName","name","isActive","undefined","changeHandler","prevFilters","updatedFilters","_objectSpread","Object","keys","length","_useState","useState","_useState2","_slicedToArray","activeItem","setActiveItem","useEffect","_Object$keys","React","createElement","_extends","concat","id","disabled","count","value","checked","onChange"],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import React from 'react';
2
+ import Accordion from '../accordions/default.js';
3
+ import FilterCommute from './commute.js';
4
+ import FilterPointsOfInterest from './points-of-interest.js';
5
+ import CardFilter from '../cards/filter.js';
6
+ import AccordionFilterItem from '../accordions/filterItem.js';
7
+ import Loading from '../../../util/loading.js';
8
+ import { useMapList } from '../../../contexts/mapListContext.js';
9
+
10
+ var FilterLocation = function FilterLocation(_ref) {
11
+ var className = _ref.className,
12
+ defaultValue = _ref.defaultValue,
13
+ setDefaultValue = _ref.setDefaultValue,
14
+ _ref$showMap = _ref.showMap,
15
+ showMap = _ref$showMap === void 0 ? false : _ref$showMap,
16
+ setLocation = _ref.setLocation,
17
+ setSelectedListItem = _ref.setSelectedListItem;
18
+ var _useMapList = useMapList(),
19
+ _setSelectedFilters = _useMapList.setSelectedFilters,
20
+ selectedFilters = _useMapList.selectedFilters,
21
+ filterOptions = _useMapList.filterOptions;
22
+ // const activeItemsCount = selectedFilters != null && selectedFilters["cityState"]
23
+ // ? Object.keys(selectedFilters["cityState"]).length
24
+ // : 0;
25
+
26
+ // const handleClearFilters = () => {
27
+ // setSelectedFilters(prevFilters => {
28
+ // const updatedFilters = { ...prevFilters };
29
+ // delete updatedFilters["cityState"];
30
+ // return updatedFilters;
31
+ // });
32
+ // };
33
+
34
+ var locations = filterOptions === null || filterOptions === void 0 ? void 0 : filterOptions.locations;
35
+ var pointsOfInterest = filterOptions === null || filterOptions === void 0 ? void 0 : filterOptions.pointsOfInterest;
36
+ return /*#__PURE__*/React.createElement(CardFilter, {
37
+ className: className !== null && className !== void 0 ? className : ""
38
+ }, /*#__PURE__*/React.createElement(CardFilter.Title, {
39
+ icon: "fluent:hc-location-16-filled"
40
+ }, /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement("span", {
41
+ className: "hc-hidden lg:hc-inline"
42
+ }, "Job"), " location")), !locations && /*#__PURE__*/React.createElement(Loading, null), locations && /*#__PURE__*/React.createElement(Accordion, {
43
+ defaultValue: defaultValue,
44
+ className: "hc-space-y-4"
45
+ }, locations === null || locations === void 0 ? void 0 : locations.map(function (filter) {
46
+ return /*#__PURE__*/React.createElement(AccordionFilterItem, {
47
+ key: filter.id,
48
+ filter: filter,
49
+ setDefaultValue: setDefaultValue,
50
+ selectedFilters: selectedFilters,
51
+ setSelectedFilters: function setSelectedFilters(prevFilters) {
52
+ _setSelectedFilters(prevFilters);
53
+ setLocation(null);
54
+ setSelectedListItem(null);
55
+ }
56
+ });
57
+ }), showMap && /*#__PURE__*/React.createElement(FilterCommute, {
58
+ className: "hc-mt-6"
59
+ }), showMap && /*#__PURE__*/React.createElement(FilterPointsOfInterest, {
60
+ className: "hc-mt-4",
61
+ pointsOfInterest: pointsOfInterest,
62
+ setDefaultValue: setDefaultValue,
63
+ defaultValue: defaultValue
64
+ })));
65
+ };
66
+
67
+ export { FilterLocation as default };
68
+ //# sourceMappingURL=location.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"location.js","sources":["../../../../src/components/modules/filter/location.js"],"sourcesContent":["import React from 'react';\n\nimport Accordion from '~/components/modules/accordions/default';\nimport FilterCommute from '~/components/modules/filter/commute';\nimport FilterPointsOfInterest from '~/components/modules/filter/points-of-interest';\nimport FilterCard from '~/components/modules/cards/filter';\nimport AccordionFilterItem from '~/components/modules/accordions/filterItem';\n\nimport Loading from '~/util/loading';\n\nimport { useMapList } from '~/contexts/mapListContext';\n\nconst FilterLocation = ({\n\tclassName,\n\tdefaultValue,\n\tsetDefaultValue,\n\tshowMap = false,\n\tsetLocation,\n\tsetSelectedListItem\n}) => {\n\tconst { setSelectedFilters, selectedFilters, filterOptions } = useMapList();\n\t// const activeItemsCount = selectedFilters != null && selectedFilters[\"cityState\"]\n\t// \t? Object.keys(selectedFilters[\"cityState\"]).length\n\t// \t: 0;\n\n\t// const handleClearFilters = () => {\n\t// \tsetSelectedFilters(prevFilters => {\n\t// \t\tconst updatedFilters = { ...prevFilters };\n\t// \t\tdelete updatedFilters[\"cityState\"];\n\t// \t\treturn updatedFilters;\n\t// \t});\n\t// };\n\n\tvar locations = filterOptions?.locations;\n\tvar pointsOfInterest = filterOptions?.pointsOfInterest;\n\treturn (\n\t\t<FilterCard className={className ?? \"\"}>\n\t\t\t<FilterCard.Title icon=\"fluent:hc-location-16-filled\">\n\t\t\t\t<span>\n\t\t\t\t\t<span className=\"hc-hidden lg:hc-inline\">Job</span> location\n\t\t\t\t</span>\n\t\t\t</FilterCard.Title>\n\t\t\t{!locations && (\n\t\t\t\t<Loading />\n\t\t\t)}\n\t\t\t{locations && <Accordion defaultValue={defaultValue} className=\"hc-space-y-4\">\n\t\t\t\t{locations?.map(filter =>\n\t\t\t\t(<AccordionFilterItem\n\t\t\t\t\tkey={filter.id}\n\t\t\t\t\tfilter={filter}\n\t\t\t\t\tsetDefaultValue={setDefaultValue}\n\t\t\t\t\tselectedFilters={selectedFilters}\n\t\t\t\t\tsetSelectedFilters={prevFilters => { setSelectedFilters(prevFilters); setLocation(null); setSelectedListItem(null); }}\n\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t\t{showMap && <FilterCommute className=\"hc-mt-6\" />}\n\t\t\t\t{showMap && (\n\t\t\t\t\t<FilterPointsOfInterest\n\t\t\t\t\t\tclassName=\"hc-mt-4\"\n\t\t\t\t\t\tpointsOfInterest={pointsOfInterest}\n\t\t\t\t\t\tsetDefaultValue={setDefaultValue}\n\t\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</Accordion>\n\t\t\t}\n\t\t</FilterCard>\n\t);\n};\n\nexport default FilterLocation;\n"],"names":["FilterLocation","_ref","className","defaultValue","setDefaultValue","_ref$showMap","showMap","setLocation","setSelectedListItem","_useMapList","useMapList","setSelectedFilters","selectedFilters","filterOptions","locations","pointsOfInterest","React","createElement","FilterCard","Title","icon","Loading","Accordion","map","filter","AccordionFilterItem","key","id","prevFilters","FilterCommute","FilterPointsOfInterest"],"mappings":"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"}