@abcagency/hc-ui-components 1.6.6 → 1.6.9

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 (477) hide show
  1. package/dist/_virtual/react-jsx-runtime.production.js +4 -0
  2. package/dist/_virtual/react-jsx-runtime.production.js.map +1 -0
  3. package/dist/components/HireControlMap.js +43 -2
  4. package/dist/components/HireControlMap.js.map +1 -1
  5. package/dist/components/containers/accordions/filter-item-container.js +3 -1
  6. package/dist/components/containers/accordions/filter-item-container.js.map +1 -1
  7. package/dist/components/containers/filter/filter-item-container.js +29 -15
  8. package/dist/components/containers/filter/filter-item-container.js.map +1 -1
  9. package/dist/components/modules/accordions/filterItem.js +8 -3
  10. package/dist/components/modules/accordions/filterItem.js.map +1 -1
  11. package/dist/components/modules/filter/index.js +87 -20
  12. package/dist/components/modules/filter/index.js.map +1 -1
  13. package/dist/components/modules/filter/item.js +8 -3
  14. package/dist/components/modules/filter/item.js.map +1 -1
  15. package/dist/components/modules/filter/search.js +6 -1
  16. package/dist/components/modules/filter/search.js.map +1 -1
  17. package/dist/contexts/mapListContext.js +48 -3
  18. package/dist/contexts/mapListContext.js.map +1 -1
  19. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/core/dist/floating-ui.core.js +815 -0
  20. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -0
  21. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +752 -0
  22. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -0
  23. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +351 -0
  24. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -0
  25. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +162 -0
  26. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +1 -0
  27. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +138 -0
  28. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -0
  29. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/combobox/combobox.js +33 -0
  30. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/combobox/combobox.js.map +1 -0
  31. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/keyboard.js +4 -0
  32. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/keyboard.js.map +1 -0
  33. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/transition.js +19 -0
  34. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/transition.js.map +1 -0
  35. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/utils/transition.js +8 -0
  36. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/utils/transition.js.map +1 -0
  37. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-computed.js +8 -0
  38. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-computed.js.map +1 -0
  39. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-controllable.js +7 -0
  40. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-controllable.js.map +1 -0
  41. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-disposables.js +7 -0
  42. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-disposables.js.map +1 -0
  43. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-document-event.js +7 -0
  44. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-document-event.js.map +1 -0
  45. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-event.js +7 -0
  46. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-event.js.map +1 -0
  47. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-flags.js +7 -0
  48. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-flags.js.map +1 -0
  49. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-id.js +9 -0
  50. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-id.js.map +1 -0
  51. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-is-mounted.js +7 -0
  52. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-is-mounted.js.map +1 -0
  53. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js +7 -0
  54. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js.map +1 -0
  55. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-latest-value.js +7 -0
  56. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-latest-value.js.map +1 -0
  57. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-outside-click.js +10 -0
  58. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-outside-click.js.map +1 -0
  59. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-owner.js +7 -0
  60. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-owner.js.map +1 -0
  61. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js +7 -0
  62. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js.map +1 -0
  63. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js +7 -0
  64. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js.map +1 -0
  65. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-sync-refs.js +7 -0
  66. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-sync-refs.js.map +1 -0
  67. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tracked-pointer.js +6 -0
  68. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tracked-pointer.js.map +1 -0
  69. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-transition.js +11 -0
  70. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-transition.js.map +1 -0
  71. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tree-walker.js +8 -0
  72. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tree-walker.js.map +1 -0
  73. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-watch.js +7 -0
  74. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-watch.js.map +1 -0
  75. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-window-event.js +7 -0
  76. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-window-event.js.map +1 -0
  77. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/hidden.js +6 -0
  78. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/hidden.js.map +1 -0
  79. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/open-closed.js +6 -0
  80. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/open-closed.js.map +1 -0
  81. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/active-element-history.js +6 -0
  82. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/active-element-history.js.map +1 -0
  83. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/bugs.js +4 -0
  84. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/bugs.js.map +1 -0
  85. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/calculate-active-index.js +4 -0
  86. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/calculate-active-index.js.map +1 -0
  87. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/class-names.js +4 -0
  88. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/class-names.js.map +1 -0
  89. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/disposables.js +6 -0
  90. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/disposables.js.map +1 -0
  91. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/document-ready.js +4 -0
  92. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/document-ready.js.map +1 -0
  93. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/env.js +4 -0
  94. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/env.js.map +1 -0
  95. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/focus-management.js +7 -0
  96. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/focus-management.js.map +1 -0
  97. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/form.js +4 -0
  98. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/form.js.map +1 -0
  99. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/match.js +4 -0
  100. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/match.js.map +1 -0
  101. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/micro-task.js +4 -0
  102. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/micro-task.js.map +1 -0
  103. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/once.js +4 -0
  104. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/once.js.map +1 -0
  105. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/owner.js +6 -0
  106. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/owner.js.map +1 -0
  107. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/platform.js +4 -0
  108. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/platform.js.map +1 -0
  109. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/render.js +11 -0
  110. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/render.js.map +1 -0
  111. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@iconify/react/dist/iconify.js +1928 -0
  112. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@iconify/react/dist/iconify.js.map +1 -0
  113. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/number/dist/index.js +7 -0
  114. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/number/dist/index.js.map +1 -0
  115. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/primitive/dist/index.js +12 -0
  116. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/primitive/dist/index.js.map +1 -0
  117. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-accordion/dist/index.js +306 -0
  118. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-accordion/dist/index.js.map +1 -0
  119. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-arrow/dist/index.js +26 -0
  120. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-arrow/dist/index.js.map +1 -0
  121. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collapsible/dist/index.js +146 -0
  122. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collapsible/dist/index.js.map +1 -0
  123. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collection/dist/index.js +71 -0
  124. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collection/dist/index.js.map +1 -0
  125. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-compose-refs/dist/index.js +40 -0
  126. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +1 -0
  127. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-context/dist/index.js +80 -0
  128. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-context/dist/index.js.map +1 -0
  129. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dialog/dist/index.js +322 -0
  130. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dialog/dist/index.js.map +1 -0
  131. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-direction/dist/index.js +12 -0
  132. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-direction/dist/index.js.map +1 -0
  133. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +212 -0
  134. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +1 -0
  135. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-guards/dist/index.js +30 -0
  136. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +1 -0
  137. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-scope/dist/index.js +208 -0
  138. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +1 -0
  139. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-id/dist/index.js +16 -0
  140. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-id/dist/index.js.map +1 -0
  141. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-popper/dist/index.js +284 -0
  142. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-popper/dist/index.js.map +1 -0
  143. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-portal/dist/index.js +18 -0
  144. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-portal/dist/index.js.map +1 -0
  145. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-presence/dist/index.js +131 -0
  146. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-presence/dist/index.js.map +1 -0
  147. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-primitive/dist/index.js +44 -0
  148. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-primitive/dist/index.js.map +1 -0
  149. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-roving-focus/dist/index.js +224 -0
  150. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +1 -0
  151. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-select/dist/index.js +1155 -0
  152. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-select/dist/index.js.map +1 -0
  153. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-slot/dist/index.js +90 -0
  154. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-slot/dist/index.js.map +1 -0
  155. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-tabs/dist/index.js +188 -0
  156. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-tabs/dist/index.js.map +1 -0
  157. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +13 -0
  158. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +1 -0
  159. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +71 -0
  160. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +1 -0
  161. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +19 -0
  162. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +1 -0
  163. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +8 -0
  164. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +1 -0
  165. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-previous/dist/index.js +16 -0
  166. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-previous/dist/index.js.map +1 -0
  167. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-size/dist/index.js +41 -0
  168. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-size/dist/index.js.map +1 -0
  169. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-visually-hidden/dist/index.js +35 -0
  170. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +1 -0
  171. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js +8749 -0
  172. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js.map +1 -0
  173. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@remix-run/router/dist/router.js +271 -0
  174. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@remix-run/router/dist/router.js.map +1 -0
  175. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/react-virtual/dist/esm/index.js +43 -0
  176. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/react-virtual/dist/esm/index.js.map +1 -0
  177. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/index.js +730 -0
  178. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/index.js.map +1 -0
  179. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/utils.js +65 -0
  180. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/utils.js.map +1 -0
  181. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/aria-hidden/dist/es2015/index.js +138 -0
  182. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/aria-hidden/dist/es2015/index.js.map +1 -0
  183. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/fuse.js/dist/fuse.js +1779 -0
  184. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/fuse.js/dist/fuse.js.map +1 -0
  185. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/get-nonce/dist/es2015/index.js +9 -0
  186. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/get-nonce/dist/es2015/index.js.map +1 -0
  187. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/Combination.js +10 -0
  188. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/Combination.js.map +1 -0
  189. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +161 -0
  190. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/SideEffect.js.map +1 -0
  191. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/UI.js +39 -0
  192. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/UI.js.map +1 -0
  193. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +22 -0
  194. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js.map +1 -0
  195. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +111 -0
  196. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/handleScroll.js.map +1 -0
  197. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/medium.js +6 -0
  198. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/medium.js.map +1 -0
  199. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/sidecar.js +8 -0
  200. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/sidecar.js.map +1 -0
  201. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/component.js +57 -0
  202. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/component.js.map +1 -0
  203. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +11 -0
  204. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/constants.js.map +1 -0
  205. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +32 -0
  206. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/utils.js.map +1 -0
  207. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router/dist/index.js +280 -0
  208. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router/dist/index.js.map +1 -0
  209. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router-dom/dist/index.js +201 -0
  210. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router-dom/dist/index.js.map +1 -0
  211. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/component.js +20 -0
  212. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/component.js.map +1 -0
  213. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/hook.js +26 -0
  214. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/hook.js.map +1 -0
  215. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/singleton.js +52 -0
  216. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/singleton.js.map +1 -0
  217. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js +2530 -0
  218. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
  219. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/tslib/tslib.es6.js +57 -0
  220. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/tslib/tslib.es6.js.map +1 -0
  221. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/assignRef.js +25 -0
  222. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/assignRef.js.map +1 -0
  223. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +49 -0
  224. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useMergeRef.js.map +1 -0
  225. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useRef.js +43 -0
  226. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useRef.js.map +1 -0
  227. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-places-autocomplete/dist/index.esm.js +243 -0
  228. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-places-autocomplete/dist/index.esm.js.map +1 -0
  229. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/exports.js +22 -0
  230. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/exports.js.map +1 -0
  231. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/medium.js +78 -0
  232. package/dist/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/medium.js.map +1 -0
  233. package/dist/mwhcrec-careers-web/node_modules/react/cjs/react-jsx-runtime.production.js +37 -0
  234. package/dist/mwhcrec-careers-web/node_modules/react/cjs/react-jsx-runtime.production.js.map +1 -0
  235. package/dist/mwhcrec-careers-web/node_modules/react/jsx-runtime.js +12 -0
  236. package/dist/mwhcrec-careers-web/node_modules/react/jsx-runtime.js.map +1 -0
  237. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +51 -1
  238. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -1
  239. package/dist/privia-careers-web/node_modules/react/cjs/react-jsx-runtime.production.min.js +49 -0
  240. package/dist/privia-careers-web/node_modules/react/cjs/react-jsx-runtime.production.min.js.map +1 -0
  241. package/dist/privia-careers-web/node_modules/react/jsx-runtime.js +12 -0
  242. package/dist/privia-careers-web/node_modules/react/jsx-runtime.js.map +1 -0
  243. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/core/dist/floating-ui.core.js +802 -0
  244. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -0
  245. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +679 -0
  246. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -0
  247. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +343 -0
  248. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -0
  249. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +140 -0
  250. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +1 -0
  251. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +137 -0
  252. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -0
  253. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/combobox/combobox.js +33 -0
  254. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/combobox/combobox.js.map +1 -0
  255. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/keyboard.js +4 -0
  256. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/keyboard.js.map +1 -0
  257. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/transition.js +19 -0
  258. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/transition.js.map +1 -0
  259. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/utils/transition.js +8 -0
  260. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/components/transitions/utils/transition.js.map +1 -0
  261. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-computed.js +8 -0
  262. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-computed.js.map +1 -0
  263. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-controllable.js +7 -0
  264. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-controllable.js.map +1 -0
  265. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-disposables.js +7 -0
  266. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-disposables.js.map +1 -0
  267. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-document-event.js +7 -0
  268. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-document-event.js.map +1 -0
  269. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-event.js +7 -0
  270. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-event.js.map +1 -0
  271. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-flags.js +7 -0
  272. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-flags.js.map +1 -0
  273. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-id.js +9 -0
  274. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-id.js.map +1 -0
  275. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-is-mounted.js +7 -0
  276. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-is-mounted.js.map +1 -0
  277. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js +7 -0
  278. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js.map +1 -0
  279. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-latest-value.js +7 -0
  280. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-latest-value.js.map +1 -0
  281. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-outside-click.js +10 -0
  282. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-outside-click.js.map +1 -0
  283. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-owner.js +7 -0
  284. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-owner.js.map +1 -0
  285. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js +7 -0
  286. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js.map +1 -0
  287. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js +7 -0
  288. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js.map +1 -0
  289. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-sync-refs.js +7 -0
  290. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-sync-refs.js.map +1 -0
  291. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tracked-pointer.js +6 -0
  292. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tracked-pointer.js.map +1 -0
  293. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-transition.js +11 -0
  294. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-transition.js.map +1 -0
  295. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tree-walker.js +8 -0
  296. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-tree-walker.js.map +1 -0
  297. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-watch.js +7 -0
  298. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-watch.js.map +1 -0
  299. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-window-event.js +7 -0
  300. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/hooks/use-window-event.js.map +1 -0
  301. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/hidden.js +6 -0
  302. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/hidden.js.map +1 -0
  303. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/open-closed.js +6 -0
  304. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/internal/open-closed.js.map +1 -0
  305. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/active-element-history.js +6 -0
  306. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/active-element-history.js.map +1 -0
  307. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/bugs.js +4 -0
  308. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/bugs.js.map +1 -0
  309. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/calculate-active-index.js +4 -0
  310. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/calculate-active-index.js.map +1 -0
  311. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/class-names.js +4 -0
  312. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/class-names.js.map +1 -0
  313. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/disposables.js +6 -0
  314. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/disposables.js.map +1 -0
  315. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/document-ready.js +4 -0
  316. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/document-ready.js.map +1 -0
  317. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/env.js +4 -0
  318. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/env.js.map +1 -0
  319. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/focus-management.js +7 -0
  320. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/focus-management.js.map +1 -0
  321. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/form.js +4 -0
  322. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/form.js.map +1 -0
  323. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/match.js +4 -0
  324. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/match.js.map +1 -0
  325. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/micro-task.js +4 -0
  326. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/micro-task.js.map +1 -0
  327. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/once.js +4 -0
  328. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/once.js.map +1 -0
  329. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/owner.js +6 -0
  330. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/owner.js.map +1 -0
  331. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/platform.js +4 -0
  332. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/platform.js.map +1 -0
  333. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/render.js +11 -0
  334. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@headlessui/react/dist/utils/render.js.map +1 -0
  335. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@iconify/react/dist/iconify.js +1928 -0
  336. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@iconify/react/dist/iconify.js.map +1 -0
  337. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/number/dist/index.js +7 -0
  338. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/number/dist/index.js.map +1 -0
  339. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/primitive/dist/index.js +12 -0
  340. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/primitive/dist/index.js.map +1 -0
  341. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-accordion/dist/index.js +304 -0
  342. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-accordion/dist/index.js.map +1 -0
  343. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-arrow/dist/index.js +26 -0
  344. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-arrow/dist/index.js.map +1 -0
  345. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collapsible/dist/index.js +145 -0
  346. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collapsible/dist/index.js.map +1 -0
  347. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collection/dist/index.js +69 -0
  348. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-collection/dist/index.js.map +1 -0
  349. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-compose-refs/dist/index.js +19 -0
  350. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +1 -0
  351. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-context/dist/index.js +80 -0
  352. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-context/dist/index.js.map +1 -0
  353. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dialog/dist/index.js +320 -0
  354. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dialog/dist/index.js.map +1 -0
  355. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-direction/dist/index.js +12 -0
  356. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-direction/dist/index.js.map +1 -0
  357. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +212 -0
  358. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +1 -0
  359. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-guards/dist/index.js +27 -0
  360. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +1 -0
  361. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-scope/dist/index.js +208 -0
  362. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +1 -0
  363. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-id/dist/index.js +16 -0
  364. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-id/dist/index.js.map +1 -0
  365. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-popper/dist/index.js +279 -0
  366. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-popper/dist/index.js.map +1 -0
  367. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-portal/dist/index.js +18 -0
  368. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-portal/dist/index.js.map +1 -0
  369. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-presence/dist/index.js +120 -0
  370. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-presence/dist/index.js.map +1 -0
  371. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-primitive/dist/index.js +42 -0
  372. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-primitive/dist/index.js.map +1 -0
  373. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-roving-focus/dist/index.js +221 -0
  374. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +1 -0
  375. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-select/dist/index.js +1109 -0
  376. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-select/dist/index.js.map +1 -0
  377. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-slot/dist/index.js +82 -0
  378. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-slot/dist/index.js.map +1 -0
  379. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-tabs/dist/index.js +187 -0
  380. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-tabs/dist/index.js.map +1 -0
  381. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +13 -0
  382. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +1 -0
  383. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +47 -0
  384. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +1 -0
  385. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +19 -0
  386. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +1 -0
  387. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +8 -0
  388. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +1 -0
  389. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-previous/dist/index.js +16 -0
  390. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-previous/dist/index.js.map +1 -0
  391. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-size/dist/index.js +41 -0
  392. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-use-size/dist/index.js.map +1 -0
  393. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-visually-hidden/dist/index.js +35 -0
  394. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +1 -0
  395. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js +8515 -0
  396. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@react-google-maps/api/dist/esm.js.map +1 -0
  397. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@remix-run/router/dist/router.js +271 -0
  398. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@remix-run/router/dist/router.js.map +1 -0
  399. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/react-virtual/dist/esm/index.js +43 -0
  400. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/react-virtual/dist/esm/index.js.map +1 -0
  401. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/index.js +669 -0
  402. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/index.js.map +1 -0
  403. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/utils.js +61 -0
  404. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/@tanstack/virtual-core/dist/esm/utils.js.map +1 -0
  405. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/aria-hidden/dist/es2015/index.js +137 -0
  406. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/aria-hidden/dist/es2015/index.js.map +1 -0
  407. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/fuse.js/dist/fuse.js +1779 -0
  408. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/fuse.js/dist/fuse.js.map +1 -0
  409. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/get-nonce/dist/es2015/index.js +9 -0
  410. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/get-nonce/dist/es2015/index.js.map +1 -0
  411. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/Combination.js +10 -0
  412. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/Combination.js.map +1 -0
  413. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +161 -0
  414. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/SideEffect.js.map +1 -0
  415. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/UI.js +39 -0
  416. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/UI.js.map +1 -0
  417. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +22 -0
  418. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js.map +1 -0
  419. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +107 -0
  420. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/handleScroll.js.map +1 -0
  421. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/medium.js +6 -0
  422. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/medium.js.map +1 -0
  423. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/sidecar.js +8 -0
  424. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll/dist/es2015/sidecar.js.map +1 -0
  425. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/component.js +57 -0
  426. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/component.js.map +1 -0
  427. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +11 -0
  428. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/constants.js.map +1 -0
  429. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +32 -0
  430. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-remove-scroll-bar/dist/es2015/utils.js.map +1 -0
  431. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router/dist/index.js +280 -0
  432. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router/dist/index.js.map +1 -0
  433. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router-dom/dist/index.js +201 -0
  434. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-router-dom/dist/index.js.map +1 -0
  435. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/component.js +20 -0
  436. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/component.js.map +1 -0
  437. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/hook.js +26 -0
  438. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/hook.js.map +1 -0
  439. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/singleton.js +52 -0
  440. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/react-style-singleton/dist/es2015/singleton.js.map +1 -0
  441. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js +2530 -0
  442. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
  443. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/tslib/tslib.es6.js +57 -0
  444. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/tslib/tslib.es6.js.map +1 -0
  445. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/assignRef.js +25 -0
  446. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/assignRef.js.map +1 -0
  447. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +49 -0
  448. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useMergeRef.js.map +1 -0
  449. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useRef.js +43 -0
  450. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-callback-ref/dist/es2015/useRef.js.map +1 -0
  451. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-places-autocomplete/dist/index.esm.js +243 -0
  452. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-places-autocomplete/dist/index.esm.js.map +1 -0
  453. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/exports.js +22 -0
  454. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/exports.js.map +1 -0
  455. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/medium.js +78 -0
  456. package/dist/repos/hc_react_map_npm/packages/hc-ui-components/node_modules/use-sidecar/dist/es2015/medium.js.map +1 -0
  457. package/dist/styles/index.css +1 -1
  458. package/dist/types/components/modules/list/list-item/list-item.d.ts +1 -1
  459. package/dist/types/contexts/mapListContext.d.ts +46 -0
  460. package/dist/types/hooks/useList.d.ts +3 -3
  461. package/dist/types/util/filterUtil.d.ts +9 -3
  462. package/dist/util/algoliaSearchUtil.js +1 -1
  463. package/dist/util/filterUtil.js +70 -14
  464. package/dist/util/filterUtil.js.map +1 -1
  465. package/dist/util/twMerge.js +9 -0
  466. package/dist/util/twMerge.js.map +1 -0
  467. package/package.json +1 -1
  468. package/src/components/HireControlMap.js +48 -2
  469. package/src/components/containers/accordions/filter-item-container.js +1 -1
  470. package/src/components/containers/filter/filter-item-container.js +27 -14
  471. package/src/components/modules/accordions/filterItem.js +16 -3
  472. package/src/components/modules/filter/index.js +114 -41
  473. package/src/components/modules/filter/item.js +15 -3
  474. package/src/components/modules/filter/search.js +7 -1
  475. package/src/contexts/mapListContext.tsx +96 -3
  476. package/src/util/filterUtil.js +64 -24
  477. package/src/util/twMerge.js +6 -0
@@ -1,13 +1,13 @@
1
- import { slicedToArray as _slicedToArray, typeof as _typeof, toConsumableArray as _toConsumableArray, createForOfIteratorHelper as _createForOfIteratorHelper, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime, defineProperty as _defineProperty } from '../_virtual/_rollupPluginBabelHelpers.js';
1
+ import { slicedToArray as _slicedToArray, typeof as _typeof, toConsumableArray as _toConsumableArray, objectSpread2 as _objectSpread2, createForOfIteratorHelper as _createForOfIteratorHelper, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime, defineProperty as _defineProperty } from '../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { getDistinctItemsByProximity } from './mapUtil.js';
3
3
  import { isAlgoliaAvailable, filterListingsByAlgoliaSearch } from './algoliaSearchUtil.js';
4
4
  import Fuse from '../node_modules/fuse.js/dist/fuse.js';
5
5
 
6
6
  var getFilterOptions = function getFilterOptions(listings, filteredListings, field) {
7
- var excludeZeroCount = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
7
+ var excludeZeroCount = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
8
8
  var options = new Set();
9
9
  listings.forEach(function (listing) {
10
- if (listing.fields[field]) {
10
+ if (listing.fields && listing.fields[field]) {
11
11
  options.add(listing.fields[field]);
12
12
  }
13
13
  });
@@ -16,12 +16,16 @@ var getFilterOptions = function getFilterOptions(listings, filteredListings, fie
16
16
  optionCounts[option] = 0;
17
17
  });
18
18
  filteredListings.forEach(function (listing) {
19
+ if (!listing.fields) return;
19
20
  var value = listing.fields[field];
20
- if (value && optionCounts.hasOwnProperty(value)) {
21
+ if (value && Object.prototype.hasOwnProperty.call(optionCounts, value)) {
21
22
  optionCounts[value] += 1;
22
23
  }
23
24
  });
24
- return Array.from(options).sort().map(function (option) {
25
+ var result = Array.from(options).filter(function (option) {
26
+ return option != null && option !== '';
27
+ }) // Filter out null/empty values
28
+ .map(function (option) {
25
29
  return {
26
30
  name: option,
27
31
  count: optionCounts[option] || 0
@@ -29,8 +33,15 @@ var getFilterOptions = function getFilterOptions(listings, filteredListings, fie
29
33
  }).filter(function (option) {
30
34
  return !(excludeZeroCount === true && option.count === 0);
31
35
  });
36
+
37
+ // Sort alphabetically
38
+ result.sort(function (a, b) {
39
+ return a.name.localeCompare(b.name);
40
+ });
41
+ return result;
32
42
  };
33
43
  var getSpecialFeatureOptions = function getSpecialFeatureOptions(listings, filteredListings, siteConfig, favorites) {
44
+ var filterConfig = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
34
45
  var specialFeatures = siteConfig.specialFeatures;
35
46
  var featureCounts = Object.keys(specialFeatures).sort().reduce(function (acc, key) {
36
47
  acc[specialFeatures[key]] = 0;
@@ -55,6 +66,8 @@ var getSpecialFeatureOptions = function getSpecialFeatureOptions(listings, filte
55
66
  count: count
56
67
  };
57
68
  });
69
+
70
+ // Update favorite count
58
71
  var _iterator = _createForOfIteratorHelper(specialFeatureOptions),
59
72
  _step;
60
73
  try {
@@ -66,11 +79,25 @@ var getSpecialFeatureOptions = function getSpecialFeatureOptions(listings, filte
66
79
  }).length;
67
80
  }
68
81
  }
82
+
83
+ // Hide favorites if filterConfig.showFavorites is false
69
84
  } catch (err) {
70
85
  _iterator.e(err);
71
86
  } finally {
72
87
  _iterator.f();
73
88
  }
89
+ if (filterConfig.showFavorites === false) {
90
+ specialFeatureOptions = specialFeatureOptions.filter(function (option) {
91
+ return option.name !== 'Favorite';
92
+ });
93
+ }
94
+
95
+ // Hide zero results if filterConfig.hideZeroResults is true
96
+ if (filterConfig.hideZeroResults === true) {
97
+ specialFeatureOptions = specialFeatureOptions.filter(function (option) {
98
+ return option.count > 0;
99
+ });
100
+ }
74
101
  return specialFeatureOptions;
75
102
  };
76
103
  var getPointsOfInterestOptions = function getPointsOfInterestOptions(pointsOfInterestNames) {
@@ -85,7 +112,16 @@ var getPointsOfInterestOptions = function getPointsOfInterestOptions(pointsOfInt
85
112
  });
86
113
  };
87
114
  var generateFilterOptions = function generateFilterOptions(filteredListings, allListings, siteConfig, filterOptions, parentField, favorites, selectedFilters) {
115
+ var filterConfig = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : {
116
+ hideZeroResults: false,
117
+ dynamicCounts: true,
118
+ showFavorites: true,
119
+ collapsedByDefault: false,
120
+ sortAlphabetically: false
121
+ };
88
122
  if (allListings.length > 0) {
123
+ // Determine which listings to use for counts based on dynamicCounts setting
124
+ var countListings = filterConfig.dynamicCounts ? filteredListings : allListings;
89
125
  var dynamicFilters = siteConfig.fieldFiltersShown.map(function (fieldName) {
90
126
  if (fieldName === parentField && filterOptions !== null && filterOptions !== void 0 && filterOptions.filters) {
91
127
  return filterOptions.filters.find(function (filter) {
@@ -96,32 +132,32 @@ var generateFilterOptions = function generateFilterOptions(filteredListings, all
96
132
  return {
97
133
  id: fieldName,
98
134
  title: siteConfig.fieldNames[fieldName],
99
- items: getFilterOptions(allListings, allListings, fieldName)
135
+ items: getFilterOptions(allListings, countListings, fieldName, filterConfig.hideZeroResults)
100
136
  };
101
137
  }
102
138
  if (fieldName == 'subCategory' && selectedFilters.category) {
103
139
  var categoryKeys = Object.keys(selectedFilters.category);
104
- var _filteredListings = allListings.filter(function (x) {
140
+ var filteredByCategory = allListings.filter(function (x) {
105
141
  var _x$fields;
106
142
  return categoryKeys.includes((_x$fields = x.fields) === null || _x$fields === void 0 ? void 0 : _x$fields.category);
107
143
  });
108
144
  return {
109
145
  id: fieldName,
110
146
  title: siteConfig.fieldNames[fieldName],
111
- items: getFilterOptions(allListings, _filteredListings, fieldName, false)
147
+ items: getFilterOptions(allListings, filteredByCategory, fieldName, filterConfig.hideZeroResults)
112
148
  };
113
149
  }
114
150
  if (fieldName == "specialFeatures") {
115
151
  return {
116
152
  id: fieldName,
117
153
  title: siteConfig.fieldNames[fieldName],
118
- items: getSpecialFeatureOptions(allListings, filteredListings, siteConfig, favorites).sort()
154
+ items: getSpecialFeatureOptions(allListings, countListings, siteConfig, favorites, filterConfig).sort()
119
155
  };
120
156
  }
121
157
  return {
122
158
  id: fieldName,
123
159
  title: siteConfig.fieldNames[fieldName],
124
- items: getFilterOptions(allListings, filteredListings, fieldName)
160
+ items: getFilterOptions(allListings, countListings, fieldName, filterConfig.hideZeroResults)
125
161
  };
126
162
  });
127
163
  var locations = siteConfig.locationFiltersShown.map(function (fieldName, index) {
@@ -196,9 +232,29 @@ var generateFilterOptions = function generateFilterOptions(filteredListings, all
196
232
  title: siteConfig.pointsOfInterestConfig.title,
197
233
  items: getPointsOfInterestOptions(siteConfig.pointsOfInterestConfig.pointsOfInterestNames)
198
234
  };
235
+
236
+ // Filter out null filters and ensure items arrays don't contain undefined values
237
+ var cleanFilters = dynamicFilters.filter(function (f) {
238
+ return f != null && f.items != null;
239
+ }).map(function (f) {
240
+ return _objectSpread2(_objectSpread2({}, f), {}, {
241
+ items: f.items.filter(function (item) {
242
+ return item != null && item.name != null;
243
+ })
244
+ });
245
+ });
246
+ var cleanLocations = locations.filter(function (l) {
247
+ return l != null && l.items != null;
248
+ }).map(function (l) {
249
+ return _objectSpread2(_objectSpread2({}, l), {}, {
250
+ items: l.items.filter(function (item) {
251
+ return item != null && item.name != null;
252
+ })
253
+ });
254
+ });
199
255
  return {
200
- filters: dynamicFilters,
201
- locations: locations,
256
+ filters: cleanFilters,
257
+ locations: cleanLocations,
202
258
  pointsOfInterest: pointsOfInterest
203
259
  };
204
260
  }
@@ -255,7 +311,7 @@ var applyFilters = /*#__PURE__*/function () {
255
311
  });
256
312
  } else if (Object.keys(filterItems).length > 0) {
257
313
  results = results.filter(function (listing) {
258
- return filterItems.hasOwnProperty(listing.fields[formattedField]);
314
+ return Object.prototype.hasOwnProperty.call(filterItems, listing.fields[formattedField]);
259
315
  });
260
316
  }
261
317
  case 5:
@@ -360,7 +416,7 @@ var filterListingsByLocation = function filterListingsByLocation(allListings, se
360
416
  var results = allListings;
361
417
  if (selectedLocation !== null) {
362
418
  results = results.filter(function (item) {
363
- return selectedLocation.items.hasOwnProperty(item.id);
419
+ return Object.prototype.hasOwnProperty.call(selectedLocation.items, item.id);
364
420
  });
365
421
  }
366
422
  var mapItems = getDistinctItemsByProximity(results, listingEntities);
@@ -1 +1 @@
1
- {"version":3,"file":"filterUtil.js","sources":["../../src/util/filterUtil.js"],"sourcesContent":["/* eslint-disable no-undef */\nimport { getDistinctItemsByProximity } from '~/util/mapUtil';\nimport { isAlgoliaAvailable, filterListingsByAlgoliaSearch } from '~/util/algoliaSearchUtil';\n\nimport Fuse from 'fuse.js';\n\nexport const getFilterOptions = (listings, filteredListings, field, excludeZeroCount = null) => {\n\tconst options = new Set();\n\tlistings.forEach(listing => {\n\t\tif (listing.fields[field]) {\n\t\t\toptions.add(listing.fields[field]);\n\t\t}\n\t});\n\n\tconst optionCounts = {};\n\toptions.forEach(option => {\n\t\toptionCounts[option] = 0;\n\t});\n\n\tfilteredListings.forEach(listing => {\n\t\tconst value = listing.fields[field];\n\t\tif (value && optionCounts.hasOwnProperty(value)) {\n\t\t\toptionCounts[value] += 1;\n\t\t}\n\t});\n\n\treturn Array.from(options)\n\t\t.sort()\n\t\t.map(option => ({\n\t\t\tname: option,\n\t\t\tcount: optionCounts[option] || 0\n\t\t}))\n\t\t.filter(option => !(excludeZeroCount === true && option.count === 0));\n};\n\nexport const getSpecialFeatureOptions = (listings, filteredListings, siteConfig, favorites) => {\n\tconst specialFeatures = siteConfig.specialFeatures;\n\tconst featureCounts = Object.keys(specialFeatures).sort().reduce((acc, key) => {\n\t\tacc[specialFeatures[key]] = 0;\n\t\treturn acc;\n\t}, {});\n\n\tfilteredListings.forEach(listing => {\n\t\tObject.entries(specialFeatures).forEach(([featureKey, featureName]) => {\n\t\t\tif (listing.fields[featureKey] == 1) {\n\t\t\t\tfeatureCounts[featureName] += 1;\n\t\t\t}\n\t\t});\n\t});\n\n\tconst specialFeatureOptions = Object.entries(featureCounts).map(([name, count]) => ({\n\t\tname,\n\t\tcount\n\t}));\n\n\tfor (let option of specialFeatureOptions) {\n\t\tif (option.name === 'Favorite') {\n\t\t\toption.count = filteredListings.filter(x => favorites.includes(x.id)).length;\n\t\t}\n\t}\n\n\treturn specialFeatureOptions;\n};\n\nconst getPointsOfInterestOptions = pointsOfInterestNames => {\n\treturn Object.entries(pointsOfInterestNames).sort().map(([key, name]) => ({\n\t\tkey,\n\t\tname\n\t}));\n};\n\nexport const generateFilterOptions = (\n\tfilteredListings,\n\tallListings,\n\tsiteConfig,\n\tfilterOptions,\n\tparentField,\n\tfavorites,\n\tselectedFilters\n) => {\n\tif (allListings.length > 0) {\n\t\tconst dynamicFilters = siteConfig.fieldFiltersShown.map(fieldName => {\n\t\t\tif (fieldName === parentField && filterOptions?.filters) {\n\t\t\t\treturn filterOptions.filters.find(filter => filter.id === fieldName);\n\t\t\t}\n\t\t\tif(fieldName == 'category'){\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getFilterOptions(allListings, allListings, fieldName)\n\t\t\t\t};\n\t\t\t}\n\t\t\tif(fieldName == 'subCategory' && selectedFilters.category){\n\t\t\t\tconst categoryKeys = Object.keys(selectedFilters.category);\n\t\t\t\tconst filteredListings = allListings.filter(\n\t\t\t\t\tx => categoryKeys.includes(x.fields?.category)\n\t\t\t\t);\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getFilterOptions(allListings, filteredListings, fieldName, false)\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (fieldName == \"specialFeatures\") {\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getSpecialFeatureOptions(allListings, filteredListings, siteConfig, favorites).sort()\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tid: fieldName,\n\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\titems: getFilterOptions(allListings, filteredListings, fieldName)\n\t\t\t};\n\t\t});\n\n\t\tconst locations =\n\t\t\tsiteConfig.locationFiltersShown.map((fieldName, index) => {\n\t\t\t\tlet locationFilteredListings = allListings;\n\t\t\t\tlocationFilteredListings = allListings.filter(listing => {\n\t\t\t\t\treturn Object.entries(selectedFilters).every(([key, value]) => {\n\t\t\t\t\t\tif (siteConfig.locationFiltersShown.includes(key)) return true;\n\t\t\t\t\t\tif (value && typeof value === 'object' && value[listing.fields[key]] === true) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t\tif (index === 0) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: fieldName,\n\t\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\t\titems: getFilterOptions(allListings, locationFilteredListings, fieldName, true)\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\t if (fieldName === 'entityName' && filterOptions?.locations) {\n\t\t\t\t\tconst cityIncluded = siteConfig.locationFiltersShown.includes('city');\n\t\t\t\t\tconst stateIncluded = siteConfig.locationFiltersShown.includes('state');\n\t\t\t\t\tconst cityStateIncluded = siteConfig.locationFiltersShown.includes('cityState');\n\t\t\t\t\tconst uniqueCities = cityIncluded ? [...new Set(filteredListings.map(listing => listing.fields.city))] : [];\n\t\t\t\t\tconst uniqueStates = stateIncluded ? [...new Set(filteredListings.map(listing => listing.fields.state))] : [];\n\t\t\t\t\tconst uniqueCityStates = cityStateIncluded ? [...new Set(filteredListings.map(listing => listing.fields.cityState))] : [];\n\t\t\t\t\tconst filteredByLocation = locationFilteredListings.filter(listing => {\n\t\t\t\t\t\tconst cityMatches = cityIncluded ? uniqueCities.includes(listing.fields.city) : true;\n\t\t\t\t\t\tconst stateMatches = stateIncluded ? uniqueStates.includes(listing.fields.state) : true;\n\t\t\t\t\t\tconst cityStateMatches = cityStateIncluded ? uniqueCityStates.includes(listing.fields.cityState) : true;\n\t\t\t\t\t\treturn cityMatches && stateMatches && cityStateMatches;\n\t\t\t\t\t});\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: fieldName,\n\t\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\t\titems: getFilterOptions(allListings, filteredByLocation, fieldName, true)\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (fieldName === 'city') {\n\t\t\t\t\tif (siteConfig.locationFiltersShown.includes('state') && selectedFilters.state) {\n\t\t\t\t\t\tconst selectedStates = Object.keys(selectedFilters.state).filter(\n\t\t\t\t\t\t\tstate => selectedFilters.state[state] === true\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tconst filteredByLocation = locationFilteredListings.filter(listing =>\n\t\t\t\t\t\t\tselectedStates.includes(listing.fields.state)\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: fieldName,\n\t\t\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\t\t\titems: getFilterOptions(allListings, filteredByLocation, fieldName, true)\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getFilterOptions(allListings, filteredListings, fieldName, true)\n\t\t\t\t};\n\t\t\t});\n\n\t\tconst pointsOfInterest = {\n\t\t\tid: \"pointsOfInterest\",\n\t\t\ttitle: siteConfig.pointsOfInterestConfig.title,\n\t\t\titems: getPointsOfInterestOptions(\n\t\t\t\tsiteConfig.pointsOfInterestConfig.pointsOfInterestNames\n\t\t\t)\n\t\t};\n\n\t\treturn {\n\t\t\tfilters: dynamicFilters,\n\t\t\tlocations: locations,\n\t\t\tpointsOfInterest: pointsOfInterest\n\t\t};\n\t}\n\n\treturn null;\n};\n\nexport const applyFilters = async (\n\tallListings,\n\tselectedFilters,\n\tquery,\n\tlistingEntities,\n\tfavorites,\n\tsiteConfig\n) => {\n\tlet results = allListings;\n\tlet invertedSpecialFeaturesMap;\n\tif (siteConfig.specialFeatures) {\n\t\tinvertedSpecialFeaturesMap = Object.entries(siteConfig.specialFeatures).reduce((acc, [key, value]) => {\n\t\t\tacc[value] = key;\n\t\t\treturn acc;\n\t\t}, {});\n\n\t}\n\tconst hasFavorite = !!selectedFilters.specialFeatures && !!selectedFilters.specialFeatures.Favorite;\n\n\tif (hasFavorite && selectedFilters.specialFeatures.Favorite == true) {\n\t\tresults = results.filter(x => favorites.includes(x.id));\n\t}\n\tvar favorite;\n\tif (hasFavorite) {\n\t\tfavorite = selectedFilters.specialFeatures.Favorite;\n\t\tdelete selectedFilters.specialFeatures.Favorite;\n\t}\n\tfor (const [field, filterItems] of Object.entries(selectedFilters)) {\n\t\tconst formattedField = field;\n\t\tif (field === \"pointsOfInterest\") continue;\n\t\tif (field === \"specialFeatures\" && invertedSpecialFeaturesMap && Object.keys(filterItems).length > 0) {\n\t\t\tresults = results.filter(listing => {\n\t\t\t\treturn Object.entries(filterItems).some(([filterName, filterValue]) => {\n\t\t\t\t\tconst listingFieldName = invertedSpecialFeaturesMap[filterName];\n\t\t\t\t\treturn filterValue && listing.fields[listingFieldName] == 1;\n\t\t\t\t});\n\t\t\t});\n\t\t} else if (Object.keys(filterItems).length > 0) {\n\t\t\tresults = results.filter(listing =>\n\t\t\t\tfilterItems.hasOwnProperty(listing.fields[formattedField])\n\t\t\t);\n\t\t}\n\t}\n\tif (query) {\n\t\t// Use Algolia if available, otherwise fall back to Fuse.js\n\t\tif (isAlgoliaAvailable()) {\n\t\t\ttry {\n\t\t\t\tresults = await filterListingsByAlgoliaSearch(results, query);\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Algolia search failed, falling back to Fuse.js:', error);\n\t\t\t\tresults = searchResults(results, query);\n\t\t\t}\n\t\t} else {\n\t\t\tresults = searchResults(results, query);\n\t\t}\n\t}\n\tconst distinctItems = getDistinctItemsByProximity(results, listingEntities);\n\tif (hasFavorite) {\n\t\tselectedFilters.specialFeatures.Favorite = favorite;\n\t}\n\treturn { filteredListings: results, mapItems: distinctItems };\n};\n\nfunction searchResults(results, query) {\n\tconst fields = [\n\t\t'id',\n\t\t'uniqueId',\n\t\t'fields.posted',\n\t\t'fields.subtitle',\n\t\t'fields.education',\n\t\t'fields.title',\n\t\t'fields.category',\n\t\t'fields.subCategory',\n\t\t'fields.shift',\n\t\t'fields.citystate',\n\t\t'fields.city',\n\t\t'fields.state',\n\t\t'fields.schedule',\n\t\t'fields.customflag1',\n\t\t'fields.bonus',\n\t\t'fields.remote',\n\t\t'fields.useclientjoburl',\n\t\t'fields.datecreated',\n\t\t'fields.datelastedited'\n\t];\n\n\tconst options = {\n\t\tincludeScore: true,\n\t\tthreshold: 0.3,\n\t\tkeys: fields\n\t};\n\n\tconst fuse = new Fuse(results, options);\n\tconst lowerCaseQuery = query.toLowerCase();\n\tconst queryTerms = lowerCaseQuery.split(' ');\n\n\tconst exactIdMatch = results.find(result => result.id.toString() === query || result.uniqueId === query);\n\tif (exactIdMatch) {\n\t\treturn [exactIdMatch];\n\t}\n\n\tconst fuseQuery = queryTerms.map(term => ({\n\t\t$or: fields.map(field => ({ [field]: term }))\n\t}));\n\n\tconst fuseResults = fuse.search({ $and: fuseQuery });\n\n\treturn fuseResults.map(result => result.item);\n}\n\nexport const filterListingsByLocation = (\n\tallListings,\n\tselectedLocation,\n\tlistingEntities\n) => {\n\tlet results = allListings;\n\tif (selectedLocation !== null) {\n\t\tresults = results.filter(item =>\n\t\t\tselectedLocation.items.hasOwnProperty(item.id)\n\t\t);\n\t}\n\tconst mapItems = getDistinctItemsByProximity(results, listingEntities);\n\treturn { filteredListings: results, mapItems: mapItems };\n};\n"],"names":["getFilterOptions","listings","filteredListings","field","excludeZeroCount","arguments","length","undefined","options","Set","forEach","listing","fields","add","optionCounts","option","value","hasOwnProperty","Array","from","sort","map","name","count","filter","getSpecialFeatureOptions","siteConfig","favorites","specialFeatures","featureCounts","Object","keys","reduce","acc","key","entries","_ref","_ref2","_slicedToArray","featureKey","featureName","specialFeatureOptions","_ref3","_ref4","_iterator","_createForOfIteratorHelper","_step","s","n","done","x","includes","id","err","e","f","getPointsOfInterestOptions","pointsOfInterestNames","_ref5","_ref6","generateFilterOptions","allListings","filterOptions","parentField","selectedFilters","dynamicFilters","fieldFiltersShown","fieldName","filters","find","title","fieldNames","items","category","categoryKeys","_x$fields","locations","locationFiltersShown","index","locationFilteredListings","every","_ref7","_ref8","_typeof","cityIncluded","stateIncluded","cityStateIncluded","uniqueCities","_toConsumableArray","city","uniqueStates","state","uniqueCityStates","cityState","filteredByLocation","cityMatches","stateMatches","cityStateMatches","selectedStates","pointsOfInterest","pointsOfInterestConfig","applyFilters","_ref9","_asyncToGenerator","_regeneratorRuntime","mark","_callee","query","listingEntities","results","invertedSpecialFeaturesMap","hasFavorite","favorite","_loop","_i","_Object$entries","distinctItems","wrap","_callee$","_context2","prev","next","_ref10","_ref11","Favorite","_Object$entries$_i","filterItems","formattedField","_loop$","_context","abrupt","some","_ref12","_ref13","filterName","filterValue","listingFieldName","stop","delegateYield","t0","isAlgoliaAvailable","filterListingsByAlgoliaSearch","sent","t1","console","error","searchResults","getDistinctItemsByProximity","mapItems","_x","_x2","_x3","_x4","_x5","_x6","apply","includeScore","threshold","fuse","Fuse","lowerCaseQuery","toLowerCase","queryTerms","split","exactIdMatch","result","toString","uniqueId","fuseQuery","term","$or","_defineProperty","fuseResults","search","$and","item","filterListingsByLocation","selectedLocation"],"mappings":"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"}
1
+ {"version":3,"file":"filterUtil.js","sources":["../../src/util/filterUtil.js"],"sourcesContent":["/* eslint-disable no-undef */\nimport { getDistinctItemsByProximity } from '~/util/mapUtil';\nimport { isAlgoliaAvailable, filterListingsByAlgoliaSearch } from '~/util/algoliaSearchUtil';\n\nimport Fuse from 'fuse.js';\n\nexport const getFilterOptions = (listings, filteredListings, field, excludeZeroCount = false) => {\n\tconst options = new Set();\n\tlistings.forEach(listing => {\n\t\tif (listing.fields && listing.fields[field]) {\n\t\t\toptions.add(listing.fields[field]);\n\t\t}\n\t});\n\n\tconst optionCounts = {};\n\toptions.forEach(option => {\n\t\toptionCounts[option] = 0;\n\t});\n\n\tfilteredListings.forEach(listing => {\n\t\tif (!listing.fields) return;\n\t\tconst value = listing.fields[field];\n\t\tif (value && Object.prototype.hasOwnProperty.call(optionCounts, value)) {\n\t\t\toptionCounts[value] += 1;\n\t\t}\n\t});\n\n\tlet result = Array.from(options)\n\t\t.filter(option => option != null && option !== '') // Filter out null/empty values\n\t\t.map(option => ({\n\t\t\tname: option,\n\t\t\tcount: optionCounts[option] || 0\n\t\t}))\n\t\t.filter(option => !(excludeZeroCount === true && option.count === 0));\n\n\t// Sort alphabetically\n\tresult.sort((a, b) => a.name.localeCompare(b.name));\n\n\treturn result;\n};\n\nexport const getSpecialFeatureOptions = (listings, filteredListings, siteConfig, favorites, filterConfig = {}) => {\n\tconst specialFeatures = siteConfig.specialFeatures;\n\tconst featureCounts = Object.keys(specialFeatures).sort().reduce((acc, key) => {\n\t\tacc[specialFeatures[key]] = 0;\n\t\treturn acc;\n\t}, {});\n\n\tfilteredListings.forEach(listing => {\n\t\tObject.entries(specialFeatures).forEach(([featureKey, featureName]) => {\n\t\t\tif (listing.fields[featureKey] == 1) {\n\t\t\t\tfeatureCounts[featureName] += 1;\n\t\t\t}\n\t\t});\n\t});\n\n\tlet specialFeatureOptions = Object.entries(featureCounts).map(([name, count]) => ({\n\t\tname,\n\t\tcount\n\t}));\n\n\t// Update favorite count\n\tfor (let option of specialFeatureOptions) {\n\t\tif (option.name === 'Favorite') {\n\t\t\toption.count = filteredListings.filter(x => favorites.includes(x.id)).length;\n\t\t}\n\t}\n\n\t// Hide favorites if filterConfig.showFavorites is false\n\tif (filterConfig.showFavorites === false) {\n\t\tspecialFeatureOptions = specialFeatureOptions.filter(option => option.name !== 'Favorite');\n\t}\n\n\t// Hide zero results if filterConfig.hideZeroResults is true\n\tif (filterConfig.hideZeroResults === true) {\n\t\tspecialFeatureOptions = specialFeatureOptions.filter(option => option.count > 0);\n\t}\n\n\treturn specialFeatureOptions;\n};\n\nconst getPointsOfInterestOptions = pointsOfInterestNames => {\n\treturn Object.entries(pointsOfInterestNames).sort().map(([key, name]) => ({\n\t\tkey,\n\t\tname\n\t}));\n};\n\nexport const generateFilterOptions = (\n\tfilteredListings,\n\tallListings,\n\tsiteConfig,\n\tfilterOptions,\n\tparentField,\n\tfavorites,\n\tselectedFilters,\n\tfilterConfig = {\n\t\thideZeroResults: false,\n\t\tdynamicCounts: true,\n\t\tshowFavorites: true,\n\t\tcollapsedByDefault: false,\n\t\tsortAlphabetically: false\n\t}\n) => {\n\tif (allListings.length > 0) {\n\t\t// Determine which listings to use for counts based on dynamicCounts setting\n\t\tconst countListings = filterConfig.dynamicCounts ? filteredListings : allListings;\n\n\t\tconst dynamicFilters = siteConfig.fieldFiltersShown.map(fieldName => {\n\t\t\tif (fieldName === parentField && filterOptions?.filters) {\n\t\t\t\treturn filterOptions.filters.find(filter => filter.id === fieldName);\n\t\t\t}\n\t\t\tif(fieldName == 'category'){\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getFilterOptions(allListings, countListings, fieldName, filterConfig.hideZeroResults)\n\t\t\t\t};\n\t\t\t}\n\t\t\tif(fieldName == 'subCategory' && selectedFilters.category){\n\t\t\t\tconst categoryKeys = Object.keys(selectedFilters.category);\n\t\t\t\tconst filteredByCategory = allListings.filter(\n\t\t\t\t\tx => categoryKeys.includes(x.fields?.category)\n\t\t\t\t);\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getFilterOptions(allListings, filteredByCategory, fieldName, filterConfig.hideZeroResults)\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (fieldName == \"specialFeatures\") {\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getSpecialFeatureOptions(allListings, countListings, siteConfig, favorites, filterConfig).sort()\n\t\t\t\t};\n\t\t\t}\n\t\treturn {\n\t\t\tid: fieldName,\n\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\titems: getFilterOptions(allListings, countListings, fieldName, filterConfig.hideZeroResults)\n\t\t};\n\t});\t\tconst locations =\n\t\t\tsiteConfig.locationFiltersShown.map((fieldName, index) => {\n\t\t\t\tlet locationFilteredListings = allListings;\n\t\t\t\tlocationFilteredListings = allListings.filter(listing => {\n\t\t\t\t\treturn Object.entries(selectedFilters).every(([key, value]) => {\n\t\t\t\t\t\tif (siteConfig.locationFiltersShown.includes(key)) return true;\n\t\t\t\t\t\tif (value && typeof value === 'object' && value[listing.fields[key]] === true) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t\tif (index === 0) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: fieldName,\n\t\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\t\titems: getFilterOptions(allListings, locationFilteredListings, fieldName, true)\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\t if (fieldName === 'entityName' && filterOptions?.locations) {\n\t\t\t\t\tconst cityIncluded = siteConfig.locationFiltersShown.includes('city');\n\t\t\t\t\tconst stateIncluded = siteConfig.locationFiltersShown.includes('state');\n\t\t\t\t\tconst cityStateIncluded = siteConfig.locationFiltersShown.includes('cityState');\n\t\t\t\t\tconst uniqueCities = cityIncluded ? [...new Set(filteredListings.map(listing => listing.fields.city))] : [];\n\t\t\t\t\tconst uniqueStates = stateIncluded ? [...new Set(filteredListings.map(listing => listing.fields.state))] : [];\n\t\t\t\t\tconst uniqueCityStates = cityStateIncluded ? [...new Set(filteredListings.map(listing => listing.fields.cityState))] : [];\n\t\t\t\t\tconst filteredByLocation = locationFilteredListings.filter(listing => {\n\t\t\t\t\t\tconst cityMatches = cityIncluded ? uniqueCities.includes(listing.fields.city) : true;\n\t\t\t\t\t\tconst stateMatches = stateIncluded ? uniqueStates.includes(listing.fields.state) : true;\n\t\t\t\t\t\tconst cityStateMatches = cityStateIncluded ? uniqueCityStates.includes(listing.fields.cityState) : true;\n\t\t\t\t\t\treturn cityMatches && stateMatches && cityStateMatches;\n\t\t\t\t\t});\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: fieldName,\n\t\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\t\titems: getFilterOptions(allListings, filteredByLocation, fieldName, true)\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (fieldName === 'city') {\n\t\t\t\t\tif (siteConfig.locationFiltersShown.includes('state') && selectedFilters.state) {\n\t\t\t\t\t\tconst selectedStates = Object.keys(selectedFilters.state).filter(\n\t\t\t\t\t\t\tstate => selectedFilters.state[state] === true\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tconst filteredByLocation = locationFilteredListings.filter(listing =>\n\t\t\t\t\t\t\tselectedStates.includes(listing.fields.state)\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: fieldName,\n\t\t\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\t\t\titems: getFilterOptions(allListings, filteredByLocation, fieldName, true)\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\tid: fieldName,\n\t\t\t\t\ttitle: siteConfig.fieldNames[fieldName],\n\t\t\t\t\titems: getFilterOptions(allListings, filteredListings, fieldName, true)\n\t\t\t\t};\n\t\t\t});\n\n\t\tconst pointsOfInterest = {\n\t\t\tid: \"pointsOfInterest\",\n\t\t\ttitle: siteConfig.pointsOfInterestConfig.title,\n\t\t\titems: getPointsOfInterestOptions(\n\t\t\t\tsiteConfig.pointsOfInterestConfig.pointsOfInterestNames\n\t\t\t)\n\t\t};\n\n\t\t// Filter out null filters and ensure items arrays don't contain undefined values\n\t\tconst cleanFilters = dynamicFilters\n\t\t\t.filter(f => f != null && f.items != null)\n\t\t\t.map(f => ({\n\t\t\t\t...f,\n\t\t\t\titems: f.items.filter(item => item != null && item.name != null)\n\t\t\t}));\n\n\t\tconst cleanLocations = locations\n\t\t\t.filter(l => l != null && l.items != null)\n\t\t\t.map(l => ({\n\t\t\t\t...l,\n\t\t\t\titems: l.items.filter(item => item != null && item.name != null)\n\t\t\t}));\n\n\t\treturn {\n\t\t\tfilters: cleanFilters,\n\t\t\tlocations: cleanLocations,\n\t\t\tpointsOfInterest: pointsOfInterest\n\t\t};\n\t}\n\n\treturn null;\n};\n\nexport const applyFilters = async (\n\tallListings,\n\tselectedFilters,\n\tquery,\n\tlistingEntities,\n\tfavorites,\n\tsiteConfig\n) => {\n\tlet results = allListings;\n\tlet invertedSpecialFeaturesMap;\n\tif (siteConfig.specialFeatures) {\n\t\tinvertedSpecialFeaturesMap = Object.entries(siteConfig.specialFeatures).reduce((acc, [key, value]) => {\n\t\t\tacc[value] = key;\n\t\t\treturn acc;\n\t\t}, {});\n\n\t}\n\tconst hasFavorite = !!selectedFilters.specialFeatures && !!selectedFilters.specialFeatures.Favorite;\n\n\tif (hasFavorite && selectedFilters.specialFeatures.Favorite == true) {\n\t\tresults = results.filter(x => favorites.includes(x.id));\n\t}\n\tvar favorite;\n\tif (hasFavorite) {\n\t\tfavorite = selectedFilters.specialFeatures.Favorite;\n\t\tdelete selectedFilters.specialFeatures.Favorite;\n\t}\n\tfor (const [field, filterItems] of Object.entries(selectedFilters)) {\n\t\tconst formattedField = field;\n\t\tif (field === \"pointsOfInterest\") continue;\n\t\tif (field === \"specialFeatures\" && invertedSpecialFeaturesMap && Object.keys(filterItems).length > 0) {\n\t\t\tresults = results.filter(listing => {\n\t\t\t\treturn Object.entries(filterItems).some(([filterName, filterValue]) => {\n\t\t\t\t\tconst listingFieldName = invertedSpecialFeaturesMap[filterName];\n\t\t\t\t\treturn filterValue && listing.fields[listingFieldName] == 1;\n\t\t\t\t});\n\t\t\t});\n\t\t} else if (Object.keys(filterItems).length > 0) {\n\t\t\tresults = results.filter(listing =>\n\t\t\t\tObject.prototype.hasOwnProperty.call(filterItems, listing.fields[formattedField])\n\t\t\t);\n\t\t}\n\t}\n\tif (query) {\n\t\t// Use Algolia if available, otherwise fall back to Fuse.js\n\t\tif (isAlgoliaAvailable()) {\n\t\t\ttry {\n\t\t\t\tresults = await filterListingsByAlgoliaSearch(results, query);\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Algolia search failed, falling back to Fuse.js:', error);\n\t\t\t\tresults = searchResults(results, query);\n\t\t\t}\n\t\t} else {\n\t\t\tresults = searchResults(results, query);\n\t\t}\n\t}\n\tconst distinctItems = getDistinctItemsByProximity(results, listingEntities);\n\tif (hasFavorite) {\n\t\tselectedFilters.specialFeatures.Favorite = favorite;\n\t}\n\treturn { filteredListings: results, mapItems: distinctItems };\n};\n\nfunction searchResults(results, query) {\n\tconst fields = [\n\t\t'id',\n\t\t'uniqueId',\n\t\t'fields.posted',\n\t\t'fields.subtitle',\n\t\t'fields.education',\n\t\t'fields.title',\n\t\t'fields.category',\n\t\t'fields.subCategory',\n\t\t'fields.shift',\n\t\t'fields.citystate',\n\t\t'fields.city',\n\t\t'fields.state',\n\t\t'fields.schedule',\n\t\t'fields.customflag1',\n\t\t'fields.bonus',\n\t\t'fields.remote',\n\t\t'fields.useclientjoburl',\n\t\t'fields.datecreated',\n\t\t'fields.datelastedited'\n\t];\n\n\tconst options = {\n\t\tincludeScore: true,\n\t\tthreshold: 0.3,\n\t\tkeys: fields\n\t};\n\n\tconst fuse = new Fuse(results, options);\n\tconst lowerCaseQuery = query.toLowerCase();\n\tconst queryTerms = lowerCaseQuery.split(' ');\n\n\tconst exactIdMatch = results.find(result => result.id.toString() === query || result.uniqueId === query);\n\tif (exactIdMatch) {\n\t\treturn [exactIdMatch];\n\t}\n\n\tconst fuseQuery = queryTerms.map(term => ({\n\t\t$or: fields.map(field => ({ [field]: term }))\n\t}));\n\n\tconst fuseResults = fuse.search({ $and: fuseQuery });\n\n\treturn fuseResults.map(result => result.item);\n}\n\nexport const filterListingsByLocation = (\n\tallListings,\n\tselectedLocation,\n\tlistingEntities\n) => {\n\tlet results = allListings;\n\tif (selectedLocation !== null) {\n\t\tresults = results.filter(item =>\n\t\t\tObject.prototype.hasOwnProperty.call(selectedLocation.items, item.id)\n\t\t);\n\t}\n\tconst mapItems = getDistinctItemsByProximity(results, listingEntities);\n\treturn { filteredListings: results, mapItems: mapItems };\n};\n"],"names":["getFilterOptions","listings","filteredListings","field","excludeZeroCount","arguments","length","undefined","options","Set","forEach","listing","fields","add","optionCounts","option","value","Object","prototype","hasOwnProperty","call","result","Array","from","filter","map","name","count","sort","a","b","localeCompare","getSpecialFeatureOptions","siteConfig","favorites","filterConfig","specialFeatures","featureCounts","keys","reduce","acc","key","entries","_ref","_ref2","_slicedToArray","featureKey","featureName","specialFeatureOptions","_ref3","_ref4","_iterator","_createForOfIteratorHelper","_step","s","n","done","x","includes","id","err","e","f","showFavorites","hideZeroResults","getPointsOfInterestOptions","pointsOfInterestNames","_ref5","_ref6","generateFilterOptions","allListings","filterOptions","parentField","selectedFilters","dynamicCounts","collapsedByDefault","sortAlphabetically","countListings","dynamicFilters","fieldFiltersShown","fieldName","filters","find","title","fieldNames","items","category","categoryKeys","filteredByCategory","_x$fields","locations","locationFiltersShown","index","locationFilteredListings","every","_ref7","_ref8","_typeof","cityIncluded","stateIncluded","cityStateIncluded","uniqueCities","_toConsumableArray","city","uniqueStates","state","uniqueCityStates","cityState","filteredByLocation","cityMatches","stateMatches","cityStateMatches","selectedStates","pointsOfInterest","pointsOfInterestConfig","cleanFilters","_objectSpread","item","cleanLocations","l","applyFilters","_ref9","_asyncToGenerator","_regeneratorRuntime","mark","_callee","query","listingEntities","results","invertedSpecialFeaturesMap","hasFavorite","favorite","_loop","_i","_Object$entries","distinctItems","wrap","_callee$","_context2","prev","next","_ref10","_ref11","Favorite","_Object$entries$_i","filterItems","formattedField","_loop$","_context","abrupt","some","_ref12","_ref13","filterName","filterValue","listingFieldName","stop","delegateYield","t0","isAlgoliaAvailable","filterListingsByAlgoliaSearch","sent","t1","console","error","searchResults","getDistinctItemsByProximity","mapItems","_x","_x2","_x3","_x4","_x5","_x6","apply","includeScore","threshold","fuse","Fuse","lowerCaseQuery","toLowerCase","queryTerms","split","exactIdMatch","toString","uniqueId","fuseQuery","term","$or","_defineProperty","fuseResults","search","$and","filterListingsByLocation","selectedLocation"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { extendTailwindMerge } from '../node_modules/tailwind-merge/dist/bundle-mjs.js';
2
+
3
+ // Create a custom tailwind-merge that understands the hc- prefix
4
+ var twMerge = extendTailwindMerge({
5
+ prefix: 'hc-'
6
+ });
7
+
8
+ export { twMerge };
9
+ //# sourceMappingURL=twMerge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twMerge.js","sources":["../../src/util/twMerge.js"],"sourcesContent":["import { extendTailwindMerge } from 'tailwind-merge';\n\n// Create a custom tailwind-merge that understands the hc- prefix\nexport const twMerge = extendTailwindMerge({\n\tprefix: 'hc-'\n});\n"],"names":["twMerge","extendTailwindMerge","prefix"],"mappings":";;AAEA;AACaA,IAAAA,OAAO,GAAGC,mBAAmB,CAAC;AAC1CC,EAAAA,MAAM,EAAE,KAAA;AACT,CAAC;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abcagency/hc-ui-components",
3
- "version": "1.6.6",
3
+ "version": "1.6.9",
4
4
  "description": "UI Components for HireControl",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -122,7 +122,52 @@ export const HireControlMap = ({
122
122
  // Algolia search configuration (optional)
123
123
  algoliaAppId = null,
124
124
  algoliaApiKey = null,
125
- algoliaIndexName = null
125
+ algoliaIndexName = null,
126
+ /**
127
+ * Filter configuration (optional)
128
+ * @param {boolean} hideZeroResults - Hide filter options with 0 results (default: false)
129
+ * @param {boolean} dynamicCounts - Update counts based on active filters.
130
+ * If false, shows initial/total counts (default: true)
131
+ * @param {boolean} showFavorites - Show favorites special feature filter (default: true)
132
+ * @param {boolean} collapsedByDefault - Start with all filter sections collapsed (default: false)
133
+ * @param {boolean} sortAlphabetically - Sort filter options alphabetically instead of by count (default: false)
134
+ * @param {object} classNames - Custom Tailwind classes to apply to filter components
135
+ * @param {string} classNames.filterContainer - Classes for the main filter container wrapper
136
+ * @param {string} classNames.filterContent - Classes for the scrollable filter content area
137
+ * @param {string} classNames.filterAccordion - Classes for each filter accordion section
138
+ * @param {string} classNames.filterAccordionHeader - Classes for accordion header/trigger
139
+ * @param {string} classNames.filterAccordionContent - Classes for accordion content area
140
+ * @param {string} classNames.filterItem - Classes for individual filter items (checkboxes/options)
141
+ * @param {string} classNames.filterItemLabel - Classes for filter item labels
142
+ * @param {string} classNames.filterItemCheckbox - Classes for filter item checkboxes
143
+ * @param {string} classNames.filterItemCount - Classes for filter item count badges
144
+ * @param {string} classNames.searchInput - Classes for search input field
145
+ * @param {string} classNames.resetButton - Classes for reset all button
146
+ * @param {string} classNames.showJobsButton - Classes for show jobs button
147
+ * @param {string} classNames.filterFooter - Classes for the footer containing buttons
148
+ */
149
+ filterConfig = {
150
+ hideZeroResults: false, // Hide filter options with 0 results
151
+ dynamicCounts: true, // Update counts based on other active filters (false = show initial counts only)
152
+ showFavorites: true, // Show favorites filter
153
+ collapsedByDefault: false, // Start with all filter sections collapsed
154
+ sortAlphabetically: false, // Sort filter options alphabetically instead of by count
155
+ classNames: {
156
+ filterContainer: '', // Main filter container wrapper
157
+ filterContent: '', // Scrollable content area
158
+ filterAccordion: '', // Filter accordion section
159
+ filterAccordionHeader: '', // Accordion header/trigger
160
+ filterAccordionContent: '', // Accordion content body
161
+ filterItem: '', // Individual filter items
162
+ filterItemLabel: '', // Filter item labels
163
+ filterItemCheckbox: '', // Filter item checkboxes
164
+ filterItemCount: '', // Filter item count badges
165
+ searchInput: '', // Search input field
166
+ resetButton: '', // Reset all button
167
+ showJobsButton: '', // Show jobs button
168
+ filterFooter: '' // Footer with buttons
169
+ }
170
+ }
126
171
  }) => {
127
172
  // Load site configuration
128
173
  const { siteConfig, error } = useSiteConfig(clientToken, siteConfiguration);
@@ -190,7 +235,8 @@ export const HireControlMap = ({
190
235
  localStorageKey,
191
236
  hideMap,
192
237
  hideFilters,
193
- noEntities
238
+ noEntities,
239
+ filterConfig
194
240
  };
195
241
 
196
242
  // Calculate effective showMap value (hideMap overrides siteConfig.showMap)
@@ -47,7 +47,7 @@ const FilterItemContainer = ({
47
47
 
48
48
  const body = (
49
49
  <>
50
- {filter.items.sort().map(item => (
50
+ {filter.items.filter(item => item != null).sort().map(item => (
51
51
  <FilterItem
52
52
  key={item.name}
53
53
  item={item}
@@ -2,6 +2,7 @@ import React, { useState, useEffect } from 'react';
2
2
  import { useTrackEvent } from '~/contexts/trackEventContext';
3
3
  import FilterItem from '~/components/modules/filter/item';
4
4
  import { useMapList } from '~/contexts/mapListContext';
5
+ import { twMerge } from '~/util/twMerge';
5
6
 
6
7
  const FilterItemContainer = ({
7
8
  className,
@@ -17,18 +18,37 @@ const FilterItemContainer = ({
17
18
  subcategoryRequireCategory = false,
18
19
  ...rest
19
20
  }) => {
21
+ // All hooks MUST be called before any early returns
20
22
  const { trackEvent, eventTypes } = useTrackEvent();
21
- const itemName = item.name ? item.name : item;
22
- itemKey = itemKey === null ? itemName : itemKey;
23
- const isActive = selectedFilters != undefined && !!selectedFilters[field]?.[itemKey];
23
+ const { filteredListings, filterConfig } = useMapList();
24
+
25
+ // Initialize itemName and itemKey safely
26
+ const itemName = item?.name ? item.name : item;
27
+ const safeItemKey = itemKey === null ? itemName : itemKey;
28
+ const isActive = selectedFilters != undefined && !!selectedFilters[field]?.[safeItemKey];
24
29
  const [activeItem, setActiveItem] = useState(isActive);
25
30
 
26
31
  useEffect(() => {
27
32
  if (!selectedFilters || isExternalLink) return;
28
- setActiveItem(!!selectedFilters[field]?.[itemKey]);
29
- }, [selectedFilters, field, itemKey]);
33
+ setActiveItem(!!selectedFilters[field]?.[safeItemKey]);
34
+ }, [selectedFilters, field, safeItemKey, isExternalLink]);
35
+
36
+ useEffect(() => {
37
+ if (selectedFilters && selectedFilters[field] && Object.keys(selectedFilters[field])?.length > 0) return;
38
+ else if (activeItem === true) {
39
+ setActiveItem(false);
40
+ }
41
+ }, [selectedFilters, activeItem, field]);
42
+
43
+ // NOW we can do the guard check after all hooks
44
+ if (!item) {
45
+ console.warn('FilterItemContainer received undefined item for field:', field);
46
+ return null;
47
+ }
48
+
49
+ // Re-assign itemKey for the rest of the component
50
+ itemKey = safeItemKey;
30
51
 
31
- const { filteredListings } = useMapList();
32
52
  const changeHandler = () => {
33
53
  if (!isActive || isExternalLink) {
34
54
  trackEvent(eventTypes.FILTER_APPLIED, { filterType: field, filterChecked: itemKey });
@@ -87,16 +107,9 @@ const FilterItemContainer = ({
87
107
  });
88
108
  };
89
109
 
90
- useEffect(() => {
91
- if (selectedFilters && selectedFilters[field] && Object.keys(selectedFilters[field])?.length > 0) return;
92
- else if (activeItem === true) {
93
- setActiveItem(false);
94
- }
95
- }, [selectedFilters]);
96
-
97
110
  return (
98
111
  <FilterItem
99
- className={className}
112
+ className={twMerge(className, filterConfig?.classNames?.filterItem)}
100
113
  item={item}
101
114
  type={type}
102
115
  itemKey={itemKey}
@@ -1,5 +1,7 @@
1
1
  import React from 'react';
2
2
  import Accordion from '~/components/modules/accordions/default';
3
+ import { twMerge } from '~/util/twMerge';
4
+ import { useMapList } from '~/contexts/mapListContext';
3
5
 
4
6
  const AccordionFilterItem = ({
5
7
  id,
@@ -7,17 +9,28 @@ const AccordionFilterItem = ({
7
9
  header,
8
10
  body
9
11
  }) => {
12
+ const { filterConfig } = useMapList();
13
+
10
14
  return (
11
15
  <Accordion.Item key={id} id={id}>
12
16
  <Accordion.Trigger.HasHeader
13
17
  onClick={() => setDefaultValue(id)}
14
- className="hc-stretched-link hc-text-left"
18
+ className={twMerge(
19
+ "hc-stretched-link hc-text-left",
20
+ filterConfig?.classNames?.filterAccordion
21
+ )}
15
22
  iconClassName="hc-order-last"
16
- headerClassName="hc-relative hc-py-2 hc-rounded hc-border hc-border-uiAccent/20 hc-bg-white hc-text-sm hc-transition data-[state=open]:hc-border-b-transparent data-[state=open]:hc-rounded-b-none"
23
+ headerClassName={twMerge(
24
+ "hc-relative hc-py-2 hc-rounded hc-border hc-border-uiAccent/20 hc-bg-white hc-text-sm hc-transition data-[state=open]:hc-border-b-transparent data-[state=open]:hc-rounded-b-none",
25
+ filterConfig?.classNames?.filterAccordionHeader
26
+ )}
17
27
  >
18
28
  {header}
19
29
  </Accordion.Trigger.HasHeader>
20
- <Accordion.Content bodyClassName="hc-px-2 hc-py-1 hc-bg-white hc-rounded-b hc-border hc-border-uiAccent/20 hc-border-t-0 hc-max-h-[20vh] md:hc-max-h-[25vh] hc-overflow-auto">
30
+ <Accordion.Content bodyClassName={twMerge(
31
+ "hc-px-2 hc-py-1 hc-bg-white hc-rounded-b hc-border hc-border-uiAccent/20 hc-border-t-0 hc-max-h-[20vh] md:hc-max-h-[25vh] hc-overflow-auto",
32
+ filterConfig?.classNames?.filterAccordionContent
33
+ )}>
21
34
  {body}
22
35
  </Accordion.Content>
23
36
  </Accordion.Item>