@next-degree/pickle-shared-js 0.13.1 → 0.13.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-2FGZQI42.js +11 -0
- package/dist/chunk-2FGZQI42.js.map +1 -0
- package/dist/chunk-2I2TWTPC.js +115 -0
- package/dist/chunk-2I2TWTPC.js.map +1 -0
- package/dist/chunk-2TEFWPFS.js +34 -0
- package/dist/chunk-2TEFWPFS.js.map +1 -0
- package/dist/chunk-2YUUVN7E.cjs +37 -0
- package/dist/chunk-2YUUVN7E.cjs.map +1 -0
- package/dist/chunk-3FQTSGHL.cjs +90 -0
- package/dist/chunk-3FQTSGHL.cjs.map +1 -0
- package/dist/chunk-3HO3CCXD.js +44 -0
- package/dist/chunk-3HO3CCXD.js.map +1 -0
- package/dist/chunk-3NDL2JQ7.js +81 -0
- package/dist/chunk-3NDL2JQ7.js.map +1 -0
- package/dist/chunk-3PARXYUI.cjs +86 -0
- package/dist/chunk-3PARXYUI.cjs.map +1 -0
- package/dist/chunk-46HHHYSV.cjs +30 -0
- package/dist/chunk-46HHHYSV.cjs.map +1 -0
- package/dist/chunk-46SPIPCF.cjs +54 -0
- package/dist/chunk-46SPIPCF.cjs.map +1 -0
- package/dist/chunk-47H3M7TP.js +72 -0
- package/dist/chunk-47H3M7TP.js.map +1 -0
- package/dist/chunk-4IMEF4J5.cjs +58 -0
- package/dist/chunk-4IMEF4J5.cjs.map +1 -0
- package/dist/chunk-4JSV7KA3.cjs +43 -0
- package/dist/chunk-4JSV7KA3.cjs.map +1 -0
- package/dist/chunk-4LUPQO4R.cjs +16 -0
- package/dist/chunk-4LUPQO4R.cjs.map +1 -0
- package/dist/chunk-4NEPWF3Z.js +152 -0
- package/dist/chunk-4NEPWF3Z.js.map +1 -0
- package/dist/chunk-4RVGUZNF.js +72 -0
- package/dist/chunk-4RVGUZNF.js.map +1 -0
- package/dist/chunk-4VYXUFJA.js +72 -0
- package/dist/chunk-4VYXUFJA.js.map +1 -0
- package/dist/chunk-53OQ6M2O.js +25 -0
- package/dist/chunk-53OQ6M2O.js.map +1 -0
- package/dist/chunk-5H35ZVLR.js +43 -0
- package/dist/chunk-5H35ZVLR.js.map +1 -0
- package/dist/chunk-5LMIRRED.js +59 -0
- package/dist/chunk-5LMIRRED.js.map +1 -0
- package/dist/chunk-5NQTYPZG.js +14 -0
- package/dist/chunk-5NQTYPZG.js.map +1 -0
- package/dist/chunk-5QXQ2LBB.cjs +4 -0
- package/dist/chunk-5QXQ2LBB.cjs.map +1 -0
- package/dist/chunk-5REFGTWO.js +87 -0
- package/dist/chunk-5REFGTWO.js.map +1 -0
- package/dist/chunk-5RH3VTNV.js +81 -0
- package/dist/chunk-5RH3VTNV.js.map +1 -0
- package/dist/chunk-5Z4ILTRD.js +48 -0
- package/dist/chunk-5Z4ILTRD.js.map +1 -0
- package/dist/chunk-62OBBM7T.js +95 -0
- package/dist/chunk-62OBBM7T.js.map +1 -0
- package/dist/chunk-6BFFHI2V.cjs +33 -0
- package/dist/chunk-6BFFHI2V.cjs.map +1 -0
- package/dist/chunk-6EW2D7K7.cjs +51 -0
- package/dist/chunk-6EW2D7K7.cjs.map +1 -0
- package/dist/chunk-6V7WZMBZ.cjs +83 -0
- package/dist/chunk-6V7WZMBZ.cjs.map +1 -0
- package/dist/chunk-AB3775NI.cjs +93 -0
- package/dist/chunk-AB3775NI.cjs.map +1 -0
- package/dist/chunk-AEYPJ5YA.cjs +51 -0
- package/dist/chunk-AEYPJ5YA.cjs.map +1 -0
- package/dist/chunk-AMNEAWA7.cjs +59 -0
- package/dist/chunk-AMNEAWA7.cjs.map +1 -0
- package/dist/chunk-APHLSON7.cjs +29 -0
- package/dist/chunk-APHLSON7.cjs.map +1 -0
- package/dist/chunk-B7NHA4GE.js +33 -0
- package/dist/chunk-B7NHA4GE.js.map +1 -0
- package/dist/chunk-BJT6JTXX.js +49 -0
- package/dist/chunk-BJT6JTXX.js.map +1 -0
- package/dist/chunk-BLMWXMW4.js +14 -0
- package/dist/chunk-BLMWXMW4.js.map +1 -0
- package/dist/chunk-C3DCFPJC.cjs +125 -0
- package/dist/chunk-C3DCFPJC.cjs.map +1 -0
- package/dist/chunk-C63PYADW.cjs +115 -0
- package/dist/chunk-C63PYADW.cjs.map +1 -0
- package/dist/chunk-CAGLLWPR.js +33 -0
- package/dist/chunk-CAGLLWPR.js.map +1 -0
- package/dist/chunk-CPZFINPG.js +37 -0
- package/dist/chunk-CPZFINPG.js.map +1 -0
- package/dist/chunk-CQSYXCIU.cjs +221 -0
- package/dist/chunk-CQSYXCIU.cjs.map +1 -0
- package/dist/chunk-CTR2QSI6.js +121 -0
- package/dist/chunk-CTR2QSI6.js.map +1 -0
- package/dist/chunk-CWTO3NXW.js +12 -0
- package/dist/chunk-CWTO3NXW.js.map +1 -0
- package/dist/chunk-DMNSL52U.cjs +160 -0
- package/dist/chunk-DMNSL52U.cjs.map +1 -0
- package/dist/chunk-DU5OQA67.cjs +49 -0
- package/dist/chunk-DU5OQA67.cjs.map +1 -0
- package/dist/chunk-DURKKV2E.js +52 -0
- package/dist/chunk-DURKKV2E.js.map +1 -0
- package/dist/chunk-DUVGFEGU.js +149 -0
- package/dist/chunk-DUVGFEGU.js.map +1 -0
- package/dist/chunk-DWB5TTR6.cjs +55 -0
- package/dist/chunk-DWB5TTR6.cjs.map +1 -0
- package/dist/chunk-DXLVRZFU.js +21 -0
- package/dist/chunk-DXLVRZFU.js.map +1 -0
- package/dist/chunk-EAFZZSYR.js +69 -0
- package/dist/chunk-EAFZZSYR.js.map +1 -0
- package/dist/chunk-EBKY3MJH.cjs +72 -0
- package/dist/chunk-EBKY3MJH.cjs.map +1 -0
- package/dist/chunk-EBOIU23Q.cjs +137 -0
- package/dist/chunk-EBOIU23Q.cjs.map +1 -0
- package/dist/chunk-EBZRXX6P.js +41 -0
- package/dist/chunk-EBZRXX6P.js.map +1 -0
- package/dist/chunk-EWFDWOL2.js +27 -0
- package/dist/chunk-EWFDWOL2.js.map +1 -0
- package/dist/chunk-F3FYMCRO.js +52 -0
- package/dist/chunk-F3FYMCRO.js.map +1 -0
- package/dist/chunk-FNCPK4RH.js +24 -0
- package/dist/chunk-FNCPK4RH.js.map +1 -0
- package/dist/chunk-FOJTLQJO.js +152 -0
- package/dist/chunk-FOJTLQJO.js.map +1 -0
- package/dist/chunk-FSMBDLNU.js +34 -0
- package/dist/chunk-FSMBDLNU.js.map +1 -0
- package/dist/chunk-FVJL3PEK.js +40 -0
- package/dist/chunk-FVJL3PEK.js.map +1 -0
- package/dist/chunk-GAN7Z4NB.js +93 -0
- package/dist/chunk-GAN7Z4NB.js.map +1 -0
- package/dist/chunk-GN3JZCM3.cjs +99 -0
- package/dist/chunk-GN3JZCM3.cjs.map +1 -0
- package/dist/chunk-GQNVPLSG.cjs +44 -0
- package/dist/chunk-GQNVPLSG.cjs.map +1 -0
- package/dist/chunk-GZUD5PBL.js +219 -0
- package/dist/chunk-GZUD5PBL.js.map +1 -0
- package/dist/chunk-HD3VN7GE.cjs +37 -0
- package/dist/chunk-HD3VN7GE.cjs.map +1 -0
- package/dist/chunk-HVZBUDYS.js +51 -0
- package/dist/chunk-HVZBUDYS.js.map +1 -0
- package/dist/chunk-I46VZAK7.cjs +65 -0
- package/dist/chunk-I46VZAK7.cjs.map +1 -0
- package/dist/chunk-I4H7XREK.js +91 -0
- package/dist/chunk-I4H7XREK.js.map +1 -0
- package/dist/chunk-I5FAUNN6.js +48 -0
- package/dist/chunk-I5FAUNN6.js.map +1 -0
- package/dist/chunk-IHWVGIDT.cjs +86 -0
- package/dist/chunk-IHWVGIDT.cjs.map +1 -0
- package/dist/chunk-IJQTUD3D.js +35 -0
- package/dist/chunk-IJQTUD3D.js.map +1 -0
- package/dist/chunk-IMAHT6W4.cjs +65 -0
- package/dist/chunk-IMAHT6W4.cjs.map +1 -0
- package/dist/chunk-IVPCYGXE.cjs +20 -0
- package/dist/chunk-IVPCYGXE.cjs.map +1 -0
- package/dist/chunk-IX3GUXML.cjs +24 -0
- package/dist/chunk-IX3GUXML.cjs.map +1 -0
- package/dist/chunk-J3UEZGEG.js +53 -0
- package/dist/chunk-J3UEZGEG.js.map +1 -0
- package/dist/chunk-JZVRCP3M.cjs +411 -0
- package/dist/chunk-JZVRCP3M.cjs.map +1 -0
- package/dist/chunk-KWIGG26N.js +3 -0
- package/dist/chunk-KWIGG26N.js.map +1 -0
- package/dist/chunk-KZBS5RNE.js +41 -0
- package/dist/chunk-KZBS5RNE.js.map +1 -0
- package/dist/chunk-L4SZQQK6.cjs +171 -0
- package/dist/chunk-L4SZQQK6.cjs.map +1 -0
- package/dist/chunk-LQ4DG6ST.js +31 -0
- package/dist/chunk-LQ4DG6ST.js.map +1 -0
- package/dist/chunk-LQQ244AY.js +28 -0
- package/dist/chunk-LQQ244AY.js.map +1 -0
- package/dist/chunk-LT35HARQ.cjs +119 -0
- package/dist/chunk-LT35HARQ.cjs.map +1 -0
- package/dist/chunk-LTJXX7NG.cjs +14 -0
- package/dist/chunk-LTJXX7NG.cjs.map +1 -0
- package/dist/chunk-LUFPA3WC.cjs +93 -0
- package/dist/chunk-LUFPA3WC.cjs.map +1 -0
- package/dist/chunk-LV6BHE7Q.cjs +266 -0
- package/dist/chunk-LV6BHE7Q.cjs.map +1 -0
- package/dist/chunk-MF24QPA6.js +28 -0
- package/dist/chunk-MF24QPA6.js.map +1 -0
- package/dist/chunk-MGWZXPMF.cjs +13 -0
- package/dist/chunk-MGWZXPMF.cjs.map +1 -0
- package/dist/chunk-MPWBYIWU.cjs +50 -0
- package/dist/chunk-MPWBYIWU.cjs.map +1 -0
- package/dist/chunk-MTNMKBY6.cjs +123 -0
- package/dist/chunk-MTNMKBY6.cjs.map +1 -0
- package/dist/chunk-NLGWU2KI.cjs +36 -0
- package/dist/chunk-NLGWU2KI.cjs.map +1 -0
- package/dist/chunk-ODHIUBLC.js +25 -0
- package/dist/chunk-ODHIUBLC.js.map +1 -0
- package/dist/chunk-ORVF255B.cjs +55 -0
- package/dist/chunk-ORVF255B.cjs.map +1 -0
- package/dist/chunk-OXDKVZZ5.cjs +39 -0
- package/dist/chunk-OXDKVZZ5.cjs.map +1 -0
- package/dist/chunk-OZJZVEF2.js +35 -0
- package/dist/chunk-OZJZVEF2.js.map +1 -0
- package/dist/chunk-P6ZEOB4L.cjs +108 -0
- package/dist/chunk-P6ZEOB4L.cjs.map +1 -0
- package/dist/chunk-PAMM6ETE.js +52 -0
- package/dist/chunk-PAMM6ETE.js.map +1 -0
- package/dist/chunk-PCSQPFNK.js +198 -0
- package/dist/chunk-PCSQPFNK.js.map +1 -0
- package/dist/chunk-PLPEZUCB.js +42 -0
- package/dist/chunk-PLPEZUCB.js.map +1 -0
- package/dist/chunk-PONUWUJ7.js +29 -0
- package/dist/chunk-PONUWUJ7.js.map +1 -0
- package/dist/chunk-PSRWV7UW.cjs +50 -0
- package/dist/chunk-PSRWV7UW.cjs.map +1 -0
- package/dist/chunk-PTNATMEI.cjs +95 -0
- package/dist/chunk-PTNATMEI.cjs.map +1 -0
- package/dist/chunk-PZ5AY32C.js +9 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/chunk-Q7SFCCGT.cjs +11 -0
- package/dist/chunk-Q7SFCCGT.cjs.map +1 -0
- package/dist/chunk-QNVDG3L3.cjs +171 -0
- package/dist/chunk-QNVDG3L3.cjs.map +1 -0
- package/dist/chunk-QOYVMNQ6.cjs +13 -0
- package/dist/chunk-QOYVMNQ6.cjs.map +1 -0
- package/dist/chunk-QRMNGILI.cjs +16 -0
- package/dist/chunk-QRMNGILI.cjs.map +1 -0
- package/dist/chunk-QURNDLRE.js +55 -0
- package/dist/chunk-QURNDLRE.js.map +1 -0
- package/dist/chunk-RKLUMDJB.cjs +50 -0
- package/dist/chunk-RKLUMDJB.cjs.map +1 -0
- package/dist/chunk-SKMP4FO7.cjs +42 -0
- package/dist/chunk-SKMP4FO7.cjs.map +1 -0
- package/dist/chunk-SMDQTPJE.cjs +31 -0
- package/dist/chunk-SMDQTPJE.cjs.map +1 -0
- package/dist/chunk-SP2IO6PC.cjs +220 -0
- package/dist/chunk-SP2IO6PC.cjs.map +1 -0
- package/dist/chunk-SPAVM3EE.cjs +95 -0
- package/dist/chunk-SPAVM3EE.cjs.map +1 -0
- package/dist/chunk-SZ5XKNVG.js +11 -0
- package/dist/chunk-SZ5XKNVG.js.map +1 -0
- package/dist/chunk-TCV6N3EK.js +400 -0
- package/dist/chunk-TCV6N3EK.js.map +1 -0
- package/dist/chunk-TPZCCL4L.js +76 -0
- package/dist/chunk-TPZCCL4L.js.map +1 -0
- package/dist/chunk-TVYLTYUK.js +23 -0
- package/dist/chunk-TVYLTYUK.js.map +1 -0
- package/dist/chunk-U27VO642.js +117 -0
- package/dist/chunk-U27VO642.js.map +1 -0
- package/dist/chunk-U3D4LL6T.js +54 -0
- package/dist/chunk-U3D4LL6T.js.map +1 -0
- package/dist/chunk-U7LTIWUS.js +28 -0
- package/dist/chunk-U7LTIWUS.js.map +1 -0
- package/dist/chunk-UMVE26I5.cjs +61 -0
- package/dist/chunk-UMVE26I5.cjs.map +1 -0
- package/dist/chunk-UQT2I2CC.js +42 -0
- package/dist/chunk-UQT2I2CC.js.map +1 -0
- package/dist/chunk-UW6NEKBF.cjs +151 -0
- package/dist/chunk-UW6NEKBF.cjs.map +1 -0
- package/dist/chunk-UXROFDSM.cjs +33 -0
- package/dist/chunk-UXROFDSM.cjs.map +1 -0
- package/dist/chunk-V563IKQH.cjs +4 -0
- package/dist/chunk-V563IKQH.cjs.map +1 -0
- package/dist/chunk-VAHZQJTA.cjs +117 -0
- package/dist/chunk-VAHZQJTA.cjs.map +1 -0
- package/dist/chunk-VANX3AQD.js +3 -0
- package/dist/chunk-VANX3AQD.js.map +1 -0
- package/dist/chunk-VB32IBQC.cjs +54 -0
- package/dist/chunk-VB32IBQC.cjs.map +1 -0
- package/dist/chunk-W2UGL7QI.cjs +41 -0
- package/dist/chunk-W2UGL7QI.cjs.map +1 -0
- package/dist/chunk-W6BMYVY5.js +17 -0
- package/dist/chunk-W6BMYVY5.js.map +1 -0
- package/dist/chunk-WFQHWK6X.cjs +53 -0
- package/dist/chunk-WFQHWK6X.cjs.map +1 -0
- package/dist/chunk-XAPQTBJR.cjs +45 -0
- package/dist/chunk-XAPQTBJR.cjs.map +1 -0
- package/dist/chunk-XGQDWAHV.js +27 -0
- package/dist/chunk-XGQDWAHV.js.map +1 -0
- package/dist/chunk-XGQU7BQK.js +88 -0
- package/dist/chunk-XGQU7BQK.js.map +1 -0
- package/dist/chunk-XKLOANYB.cjs +57 -0
- package/dist/chunk-XKLOANYB.cjs.map +1 -0
- package/dist/chunk-XO6LO5CU.cjs +47 -0
- package/dist/chunk-XO6LO5CU.cjs.map +1 -0
- package/dist/chunk-XUTLQ573.cjs +20 -0
- package/dist/chunk-XUTLQ573.cjs.map +1 -0
- package/dist/chunk-XWQI5MC3.cjs +35 -0
- package/dist/chunk-XWQI5MC3.cjs.map +1 -0
- package/dist/chunk-Y2UMEYQS.js +115 -0
- package/dist/chunk-Y2UMEYQS.js.map +1 -0
- package/dist/chunk-YB2USB4M.js +17 -0
- package/dist/chunk-YB2USB4M.js.map +1 -0
- package/dist/chunk-YLWUHTOZ.js +154 -0
- package/dist/chunk-YLWUHTOZ.js.map +1 -0
- package/dist/chunk-YNREEZ75.cjs +26 -0
- package/dist/chunk-YNREEZ75.cjs.map +1 -0
- package/dist/chunk-Z33TWZHI.js +81 -0
- package/dist/chunk-Z33TWZHI.js.map +1 -0
- package/dist/chunk-ZCRWSWPJ.cjs +46 -0
- package/dist/chunk-ZCRWSWPJ.cjs.map +1 -0
- package/dist/chunk-ZQFFPZMA.cjs +74 -0
- package/dist/chunk-ZQFFPZMA.cjs.map +1 -0
- package/dist/chunk-ZSNEG5J7.js +263 -0
- package/dist/chunk-ZSNEG5J7.js.map +1 -0
- package/dist/{company_service_sanity-ByIKe90u.d.cts → company_service_sanity-Br0R7m-A.d.cts} +560 -560
- package/dist/{company_service_sanity-DbYwWmnS.d.ts → company_service_sanity-DF01qvTz.d.ts} +560 -560
- package/dist/components/buttons/BackButton.cjs +11 -153
- package/dist/components/buttons/BackButton.cjs.map +1 -1
- package/dist/components/buttons/BackButton.d.cts +2 -2
- package/dist/components/buttons/BackButton.d.ts +2 -2
- package/dist/components/buttons/BackButton.js +7 -134
- package/dist/components/buttons/BackButton.js.map +1 -1
- package/dist/components/company/CompanyBenefits.cjs +10 -31
- package/dist/components/company/CompanyBenefits.cjs.map +1 -1
- package/dist/components/company/CompanyBenefits.d.cts +2 -2
- package/dist/components/company/CompanyBenefits.d.ts +2 -2
- package/dist/components/company/CompanyBenefits.js +3 -8
- package/dist/components/company/CompanyBenefits.js.map +1 -1
- package/dist/components/company/CompanyInformation.cjs +9 -86
- package/dist/components/company/CompanyInformation.cjs.map +1 -1
- package/dist/components/company/CompanyInformation.d.cts +2 -2
- package/dist/components/company/CompanyInformation.d.ts +2 -2
- package/dist/components/company/CompanyInformation.js +4 -53
- package/dist/components/company/CompanyInformation.js.map +1 -1
- package/dist/components/company/CompanyTake.cjs +10 -122
- package/dist/components/company/CompanyTake.cjs.map +1 -1
- package/dist/components/company/CompanyTake.d.cts +2 -2
- package/dist/components/company/CompanyTake.d.ts +2 -2
- package/dist/components/company/CompanyTake.js +6 -91
- package/dist/components/company/CompanyTake.js.map +1 -1
- package/dist/components/jobCard/JobLocation.cjs +11 -151
- package/dist/components/jobCard/JobLocation.cjs.map +1 -1
- package/dist/components/jobCard/JobLocation.d.cts +3 -3
- package/dist/components/jobCard/JobLocation.d.ts +3 -3
- package/dist/components/jobCard/JobLocation.js +7 -121
- package/dist/components/jobCard/JobLocation.js.map +1 -1
- package/dist/components/jobPost/JobDescription.cjs +10 -347
- package/dist/components/jobPost/JobDescription.cjs.map +1 -1
- package/dist/components/jobPost/JobDescription.d.cts +2 -2
- package/dist/components/jobPost/JobDescription.d.ts +2 -2
- package/dist/components/jobPost/JobDescription.js +6 -315
- package/dist/components/jobPost/JobDescription.js.map +1 -1
- package/dist/components/jobPost/JobHeader.cjs +16 -406
- package/dist/components/jobPost/JobHeader.cjs.map +1 -1
- package/dist/components/jobPost/JobHeader.d.cts +2 -2
- package/dist/components/jobPost/JobHeader.d.ts +2 -2
- package/dist/components/jobPost/JobHeader.js +12 -398
- package/dist/components/jobPost/JobHeader.js.map +1 -1
- package/dist/components/jobPost/JobPost.cjs +42 -1820
- package/dist/components/jobPost/JobPost.cjs.map +1 -1
- package/dist/components/jobPost/JobPost.d.cts +3 -3
- package/dist/components/jobPost/JobPost.d.ts +3 -3
- package/dist/components/jobPost/JobPost.js +33 -1812
- package/dist/components/jobPost/JobPost.js.map +1 -1
- package/dist/components/primitives/avatar.cjs +17 -82
- package/dist/components/primitives/avatar.cjs.map +1 -1
- package/dist/components/primitives/avatar.js +4 -50
- package/dist/components/primitives/avatar.js.map +1 -1
- package/dist/components/primitives/command.cjs +41 -207
- package/dist/components/primitives/command.cjs.map +1 -1
- package/dist/components/primitives/command.d.cts +3 -2
- package/dist/components/primitives/command.d.ts +3 -2
- package/dist/components/primitives/command.js +5 -170
- package/dist/components/primitives/command.js.map +1 -1
- package/dist/components/primitives/dialog.cjs +45 -124
- package/dist/components/primitives/dialog.cjs.map +1 -1
- package/dist/components/primitives/dialog.d.cts +3 -2
- package/dist/components/primitives/dialog.d.ts +3 -2
- package/dist/components/primitives/dialog.js +4 -85
- package/dist/components/primitives/dialog.js.map +1 -1
- package/dist/components/primitives/input-otp.cjs +20 -90
- package/dist/components/primitives/input-otp.cjs.map +1 -1
- package/dist/components/primitives/input-otp.js +4 -58
- package/dist/components/primitives/input-otp.js.map +1 -1
- package/dist/components/primitives/popover.cjs +17 -67
- package/dist/components/primitives/popover.cjs.map +1 -1
- package/dist/components/primitives/popover.js +4 -35
- package/dist/components/primitives/popover.js.map +1 -1
- package/dist/components/primitives/radio-group.cjs +12 -64
- package/dist/components/primitives/radio-group.cjs.map +1 -1
- package/dist/components/primitives/radio-group.js +4 -36
- package/dist/components/primitives/radio-group.js.map +1 -1
- package/dist/components/primitives/separator.cjs +9 -62
- package/dist/components/primitives/separator.cjs.map +1 -1
- package/dist/components/primitives/separator.js +4 -32
- package/dist/components/primitives/separator.js.map +1 -1
- package/dist/components/primitives/tooltip.cjs +21 -69
- package/dist/components/primitives/tooltip.cjs.map +1 -1
- package/dist/components/primitives/tooltip.js +4 -36
- package/dist/components/primitives/tooltip.js.map +1 -1
- package/dist/components/ui/Avatar.cjs +12 -105
- package/dist/components/ui/Avatar.cjs.map +1 -1
- package/dist/components/ui/Avatar.d.cts +3 -3
- package/dist/components/ui/Avatar.d.ts +3 -3
- package/dist/components/ui/Avatar.js +5 -75
- package/dist/components/ui/Avatar.js.map +1 -1
- package/dist/components/ui/Badge.cjs +12 -62
- package/dist/components/ui/Badge.cjs.map +1 -1
- package/dist/components/ui/Badge.d.cts +2 -1
- package/dist/components/ui/Badge.d.ts +2 -1
- package/dist/components/ui/Badge.js +4 -31
- package/dist/components/ui/Badge.js.map +1 -1
- package/dist/components/ui/Button.cjs +13 -299
- package/dist/components/ui/Button.cjs.map +1 -1
- package/dist/components/ui/Button.js +4 -267
- package/dist/components/ui/Button.js.map +1 -1
- package/dist/components/ui/Checkbox.cjs +13 -109
- package/dist/components/ui/Checkbox.cjs.map +1 -1
- package/dist/components/ui/Checkbox.js +5 -81
- package/dist/components/ui/Checkbox.js.map +1 -1
- package/dist/components/ui/Chip.cjs +8 -59
- package/dist/components/ui/Chip.cjs.map +1 -1
- package/dist/components/ui/Chip.d.cts +2 -1
- package/dist/components/ui/Chip.d.ts +2 -1
- package/dist/components/ui/Chip.js +3 -29
- package/dist/components/ui/Chip.js.map +1 -1
- package/dist/components/ui/Combobox.cjs +22 -591
- package/dist/components/ui/Combobox.cjs.map +1 -1
- package/dist/components/ui/Combobox.js +14 -560
- package/dist/components/ui/Combobox.js.map +1 -1
- package/dist/components/ui/Counter.cjs +11 -226
- package/dist/components/ui/Counter.cjs.map +1 -1
- package/dist/components/ui/Counter.js +7 -197
- package/dist/components/ui/Counter.js.map +1 -1
- package/dist/components/ui/DatePicker.cjs +14 -274
- package/dist/components/ui/DatePicker.cjs.map +1 -1
- package/dist/components/ui/DatePicker.js +10 -245
- package/dist/components/ui/DatePicker.js.map +1 -1
- package/dist/components/ui/DismissibleBanner.cjs +9 -77
- package/dist/components/ui/DismissibleBanner.cjs.map +1 -1
- package/dist/components/ui/DismissibleBanner.d.cts +2 -2
- package/dist/components/ui/DismissibleBanner.d.ts +2 -2
- package/dist/components/ui/DismissibleBanner.js +4 -56
- package/dist/components/ui/DismissibleBanner.js.map +1 -1
- package/dist/components/ui/ErrorMessage.cjs +7 -36
- package/dist/components/ui/ErrorMessage.cjs.map +1 -1
- package/dist/components/ui/ErrorMessage.d.cts +2 -2
- package/dist/components/ui/ErrorMessage.d.ts +2 -2
- package/dist/components/ui/ErrorMessage.js +4 -16
- package/dist/components/ui/ErrorMessage.js.map +1 -1
- package/dist/components/ui/Icon.cjs +9 -108
- package/dist/components/ui/Icon.cjs.map +1 -1
- package/dist/components/ui/Icon.js +4 -87
- package/dist/components/ui/Icon.js.map +1 -1
- package/dist/components/ui/Input.cjs +9 -186
- package/dist/components/ui/Input.cjs.map +1 -1
- package/dist/components/ui/Input.js +7 -159
- package/dist/components/ui/Input.js.map +1 -1
- package/dist/components/ui/InputOtp.cjs +12 -175
- package/dist/components/ui/InputOtp.cjs.map +1 -1
- package/dist/components/ui/InputOtp.js +8 -145
- package/dist/components/ui/InputOtp.js.map +1 -1
- package/dist/components/ui/Label.cjs +7 -79
- package/dist/components/ui/Label.cjs.map +1 -1
- package/dist/components/ui/Label.d.cts +2 -2
- package/dist/components/ui/Label.d.ts +2 -2
- package/dist/components/ui/Label.js +5 -52
- package/dist/components/ui/Label.js.map +1 -1
- package/dist/components/ui/LinkButton.cjs +10 -58
- package/dist/components/ui/LinkButton.cjs.map +1 -1
- package/dist/components/ui/LinkButton.d.cts +2 -1
- package/dist/components/ui/LinkButton.d.ts +2 -1
- package/dist/components/ui/LinkButton.js +3 -25
- package/dist/components/ui/LinkButton.js.map +1 -1
- package/dist/components/ui/ListItem.cjs +8 -150
- package/dist/components/ui/ListItem.cjs.map +1 -1
- package/dist/components/ui/ListItem.d.cts +2 -2
- package/dist/components/ui/ListItem.d.ts +2 -2
- package/dist/components/ui/ListItem.js +6 -125
- package/dist/components/ui/ListItem.js.map +1 -1
- package/dist/components/ui/Map/ClusterMarker.cjs +9 -74
- package/dist/components/ui/Map/ClusterMarker.cjs.map +1 -1
- package/dist/components/ui/Map/ClusterMarker.d.cts +2 -2
- package/dist/components/ui/Map/ClusterMarker.d.ts +2 -2
- package/dist/components/ui/Map/ClusterMarker.js +5 -55
- package/dist/components/ui/Map/ClusterMarker.js.map +1 -1
- package/dist/components/ui/Map/FocusCircle.cjs +9 -81
- package/dist/components/ui/Map/FocusCircle.cjs.map +1 -1
- package/dist/components/ui/Map/FocusCircle.js +4 -61
- package/dist/components/ui/Map/FocusCircle.js.map +1 -1
- package/dist/components/ui/Map/IndividualMarker.cjs +9 -55
- package/dist/components/ui/Map/IndividualMarker.cjs.map +1 -1
- package/dist/components/ui/Map/IndividualMarker.d.cts +2 -2
- package/dist/components/ui/Map/IndividualMarker.d.ts +2 -2
- package/dist/components/ui/Map/IndividualMarker.js +4 -35
- package/dist/components/ui/Map/IndividualMarker.js.map +1 -1
- package/dist/components/ui/Map/MapComponent.cjs +16 -395
- package/dist/components/ui/Map/MapComponent.cjs.map +1 -1
- package/dist/components/ui/Map/MapComponent.d.cts +2 -2
- package/dist/components/ui/Map/MapComponent.d.ts +2 -2
- package/dist/components/ui/Map/MapComponent.js +12 -366
- package/dist/components/ui/Map/MapComponent.js.map +1 -1
- package/dist/components/ui/Map/MapContent.cjs +13 -273
- package/dist/components/ui/Map/MapContent.cjs.map +1 -1
- package/dist/components/ui/Map/MapContent.d.cts +2 -2
- package/dist/components/ui/Map/MapContent.d.ts +2 -2
- package/dist/components/ui/Map/MapContent.js +9 -254
- package/dist/components/ui/Map/MapContent.js.map +1 -1
- package/dist/components/ui/Map/clustering.cjs +13 -99
- package/dist/components/ui/Map/clustering.cjs.map +1 -1
- package/dist/components/ui/Map/clustering.js +5 -76
- package/dist/components/ui/Map/clustering.js.map +1 -1
- package/dist/components/ui/Map/constants.cjs +33 -61
- package/dist/components/ui/Map/constants.cjs.map +1 -1
- package/dist/components/ui/Map/constants.js +3 -33
- package/dist/components/ui/Map/constants.js.map +1 -1
- package/dist/components/ui/Map/hooks.cjs +18 -90
- package/dist/components/ui/Map/hooks.cjs.map +1 -1
- package/dist/components/ui/Map/hooks.js +6 -58
- package/dist/components/ui/Map/hooks.js.map +1 -1
- package/dist/components/ui/Map/index.cjs +21 -400
- package/dist/components/ui/Map/index.cjs.map +1 -1
- package/dist/components/ui/Map/index.d.cts +1 -1
- package/dist/components/ui/Map/index.d.ts +1 -1
- package/dist/components/ui/Map/index.js +13 -364
- package/dist/components/ui/Map/index.js.map +1 -1
- package/dist/components/ui/Map/types.cjs +2 -17
- package/dist/components/ui/Map/types.cjs.map +1 -1
- package/dist/components/ui/Map/types.js +2 -0
- package/dist/components/ui/Map/types.js.map +1 -1
- package/dist/components/ui/Map/utils.cjs +25 -75
- package/dist/components/ui/Map/utils.cjs.map +1 -1
- package/dist/components/ui/Map/utils.js +4 -48
- package/dist/components/ui/Map/utils.js.map +1 -1
- package/dist/components/ui/PlacesQueryInput.cjs +9 -301
- package/dist/components/ui/PlacesQueryInput.cjs.map +1 -1
- package/dist/components/ui/PlacesQueryInput.d.cts +2 -2
- package/dist/components/ui/PlacesQueryInput.d.ts +2 -2
- package/dist/components/ui/PlacesQueryInput.js +7 -275
- package/dist/components/ui/PlacesQueryInput.js.map +1 -1
- package/dist/components/ui/Radio.cjs +12 -151
- package/dist/components/ui/Radio.cjs.map +1 -1
- package/dist/components/ui/Radio.js +8 -123
- package/dist/components/ui/Radio.js.map +1 -1
- package/dist/components/ui/ReadMore.cjs +9 -340
- package/dist/components/ui/ReadMore.cjs.map +1 -1
- package/dist/components/ui/ReadMore.d.cts +2 -2
- package/dist/components/ui/ReadMore.d.ts +2 -2
- package/dist/components/ui/ReadMore.js +5 -311
- package/dist/components/ui/ReadMore.js.map +1 -1
- package/dist/components/ui/Select.cjs +11 -303
- package/dist/components/ui/Select.cjs.map +1 -1
- package/dist/components/ui/Select.js +9 -282
- package/dist/components/ui/Select.js.map +1 -1
- package/dist/components/ui/StepTabs.cjs +9 -129
- package/dist/components/ui/StepTabs.cjs.map +1 -1
- package/dist/components/ui/StepTabs.d.cts +3 -3
- package/dist/components/ui/StepTabs.d.ts +3 -3
- package/dist/components/ui/StepTabs.js +4 -99
- package/dist/components/ui/StepTabs.js.map +1 -1
- package/dist/components/ui/Switch.cjs +9 -69
- package/dist/components/ui/Switch.cjs.map +1 -1
- package/dist/components/ui/Switch.js +5 -39
- package/dist/components/ui/Switch.js.map +1 -1
- package/dist/components/ui/buttonShadcn.cjs +13 -81
- package/dist/components/ui/buttonShadcn.cjs.map +1 -1
- package/dist/components/ui/buttonShadcn.js +4 -49
- package/dist/components/ui/buttonShadcn.js.map +1 -1
- package/dist/components/ui/calendar.cjs +9 -135
- package/dist/components/ui/calendar.cjs.map +1 -1
- package/dist/components/ui/calendar.d.cts +2 -1
- package/dist/components/ui/calendar.d.ts +2 -1
- package/dist/components/ui/calendar.js +5 -106
- package/dist/components/ui/calendar.js.map +1 -1
- package/dist/contexts/WindowHistoryProvider.cjs +13 -43
- package/dist/contexts/WindowHistoryProvider.cjs.map +1 -1
- package/dist/contexts/WindowHistoryProvider.d.cts +2 -1
- package/dist/contexts/WindowHistoryProvider.d.ts +2 -1
- package/dist/contexts/WindowHistoryProvider.js +3 -21
- package/dist/contexts/WindowHistoryProvider.js.map +1 -1
- package/dist/{displayText-Cm8PqS6s.d.cts → displayText-BDPndCI9.d.cts} +2 -2
- package/dist/{displayText-Ce_aqgGP.d.ts → displayText-EpnIpZ38.d.ts} +2 -2
- package/dist/hooks/useDisplayText.cjs +10 -496
- package/dist/hooks/useDisplayText.cjs.map +1 -1
- package/dist/hooks/useDisplayText.d.cts +3 -3
- package/dist/hooks/useDisplayText.d.ts +3 -3
- package/dist/hooks/useDisplayText.js +6 -476
- package/dist/hooks/useDisplayText.js.map +1 -1
- package/dist/hooks/useWindowHistory.cjs +9 -37
- package/dist/hooks/useWindowHistory.cjs.map +1 -1
- package/dist/hooks/useWindowHistory.d.cts +1 -0
- package/dist/hooks/useWindowHistory.d.ts +1 -0
- package/dist/hooks/useWindowHistory.js +4 -16
- package/dist/hooks/useWindowHistory.js.map +1 -1
- package/dist/index.cjs +216 -4128
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -6
- package/dist/index.d.ts +7 -6
- package/dist/index.js +73 -4107
- package/dist/index.js.map +1 -1
- package/dist/{job_posting_service_sanity-DKYye6oH.d.cts → job_posting_service_sanity-BN7XcVxU.d.cts} +460 -460
- package/dist/{job_posting_service_sanity-1eG3Jh9_.d.ts → job_posting_service_sanity-BNQsNQs2.d.ts} +460 -460
- package/dist/lib/google.cjs +21 -81
- package/dist/lib/google.cjs.map +1 -1
- package/dist/lib/google.js +3 -57
- package/dist/lib/google.js.map +1 -1
- package/dist/lib/icons.cjs +10 -50
- package/dist/lib/icons.cjs.map +1 -1
- package/dist/lib/icons.js +3 -48
- package/dist/lib/icons.js.map +1 -1
- package/dist/lib/locations.cjs +17 -66
- package/dist/lib/locations.cjs.map +1 -1
- package/dist/lib/locations.d.cts +3 -3
- package/dist/lib/locations.d.ts +3 -3
- package/dist/lib/locations.js +3 -42
- package/dist/lib/locations.js.map +1 -1
- package/dist/lib/mappings.cjs +45 -439
- package/dist/lib/mappings.cjs.map +1 -1
- package/dist/lib/mappings.d.cts +3 -3
- package/dist/lib/mappings.d.ts +3 -3
- package/dist/lib/mappings.js +3 -408
- package/dist/lib/mappings.js.map +1 -1
- package/dist/lib/salaryRange.cjs +14 -453
- package/dist/lib/salaryRange.cjs.map +1 -1
- package/dist/lib/salaryRange.d.cts +1 -1
- package/dist/lib/salaryRange.d.ts +1 -1
- package/dist/lib/salaryRange.js +10 -437
- package/dist/lib/salaryRange.js.map +1 -1
- package/dist/lib/utils.cjs +10 -32
- package/dist/lib/utils.cjs.map +1 -1
- package/dist/lib/utils.js +3 -9
- package/dist/lib/utils.js.map +1 -1
- package/dist/services/displayText.cjs +9 -464
- package/dist/services/displayText.cjs.map +1 -1
- package/dist/services/displayText.d.cts +3 -3
- package/dist/services/displayText.d.ts +3 -3
- package/dist/services/displayText.js +5 -442
- package/dist/services/displayText.js.map +1 -1
- package/dist/types/data/company_service_latest.cjs +73 -246
- package/dist/types/data/company_service_latest.cjs.map +1 -1
- package/dist/types/data/company_service_latest.d.cts +1 -1
- package/dist/types/data/company_service_latest.d.ts +1 -1
- package/dist/types/data/company_service_latest.js +4 -209
- package/dist/types/data/company_service_latest.js.map +1 -1
- package/dist/types/data/job_posting_service_latest.cjs +42 -276
- package/dist/types/data/job_posting_service_latest.cjs.map +1 -1
- package/dist/types/data/job_posting_service_latest.d.cts +1 -1
- package/dist/types/data/job_posting_service_latest.d.ts +1 -1
- package/dist/types/data/job_posting_service_latest.js +5 -256
- package/dist/types/data/job_posting_service_latest.js.map +1 -1
- package/dist/types/data/shared_pickle_output_latest.cjs +39 -99
- package/dist/types/data/shared_pickle_output_latest.cjs.map +1 -1
- package/dist/types/data/shared_pickle_output_latest.d.cts +1 -1
- package/dist/types/data/shared_pickle_output_latest.d.ts +1 -1
- package/dist/types/data/shared_pickle_output_latest.js +3 -74
- package/dist/types/data/shared_pickle_output_latest.js.map +1 -1
- package/dist/types/displayText.errors.cjs +13 -40
- package/dist/types/displayText.errors.cjs.map +1 -1
- package/dist/types/displayText.errors.js +3 -17
- package/dist/types/displayText.errors.js.map +1 -1
- package/dist/types/index.cjs +28 -494
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +6 -6
- package/dist/types/index.d.ts +6 -6
- package/dist/types/index.js +9 -478
- package/dist/types/index.js.map +1 -1
- package/dist/types/latest/company_service_latest.cjs +73 -246
- package/dist/types/latest/company_service_latest.cjs.map +1 -1
- package/dist/types/latest/company_service_latest.d.cts +1 -1
- package/dist/types/latest/company_service_latest.d.ts +1 -1
- package/dist/types/latest/company_service_latest.js +4 -209
- package/dist/types/latest/company_service_latest.js.map +1 -1
- package/dist/types/latest/custom/company_service_sanity.cjs +46 -307
- package/dist/types/latest/custom/company_service_sanity.cjs.map +1 -1
- package/dist/types/latest/custom/company_service_sanity.d.cts +3 -3
- package/dist/types/latest/custom/company_service_sanity.d.ts +3 -3
- package/dist/types/latest/custom/company_service_sanity.js +6 -287
- package/dist/types/latest/custom/company_service_sanity.js.map +1 -1
- package/dist/types/latest/custom/custom_sanity_models.cjs +13 -39
- package/dist/types/latest/custom/custom_sanity_models.cjs.map +1 -1
- package/dist/types/latest/custom/custom_sanity_models.js +3 -16
- package/dist/types/latest/custom/custom_sanity_models.js.map +1 -1
- package/dist/types/latest/custom/job_posting_service_sanity.cjs +66 -353
- package/dist/types/latest/custom/job_posting_service_sanity.cjs.map +1 -1
- package/dist/types/latest/custom/job_posting_service_sanity.d.cts +3 -3
- package/dist/types/latest/custom/job_posting_service_sanity.d.ts +3 -3
- package/dist/types/latest/custom/job_posting_service_sanity.js +7 -330
- package/dist/types/latest/custom/job_posting_service_sanity.js.map +1 -1
- package/dist/types/latest/job_posting_service_latest.cjs +42 -276
- package/dist/types/latest/job_posting_service_latest.cjs.map +1 -1
- package/dist/types/latest/job_posting_service_latest.d.cts +1 -1
- package/dist/types/latest/job_posting_service_latest.d.ts +1 -1
- package/dist/types/latest/job_posting_service_latest.js +5 -256
- package/dist/types/latest/job_posting_service_latest.js.map +1 -1
- package/dist/types/latest/shared_pickle_output_latest.cjs +39 -99
- package/dist/types/latest/shared_pickle_output_latest.cjs.map +1 -1
- package/dist/types/latest/shared_pickle_output_latest.d.cts +1 -1
- package/dist/types/latest/shared_pickle_output_latest.d.ts +1 -1
- package/dist/types/latest/shared_pickle_output_latest.js +3 -74
- package/dist/types/latest/shared_pickle_output_latest.js.map +1 -1
- package/package.json +2 -2
- package/dist/{company_service_latest-KJi2W9Ij.d.cts → company_service_latest-C7Moeufo.d.cts} +319 -319
- package/dist/{company_service_latest-KJi2W9Ij.d.ts → company_service_latest-C7Moeufo.d.ts} +319 -319
- package/dist/{company_service_latest-BjyG4KCB.d.cts → company_service_latest-CITz7F53.d.cts} +319 -319
- package/dist/{company_service_latest-BjyG4KCB.d.ts → company_service_latest-CITz7F53.d.ts} +319 -319
- package/dist/{job_posting_service_latest-D9I5NE7l.d.cts → job_posting_service_latest-B6Trs6sX.d.cts} +266 -266
- package/dist/{job_posting_service_latest-D9I5NE7l.d.ts → job_posting_service_latest-B6Trs6sX.d.ts} +266 -266
- package/dist/{job_posting_service_latest-82DHqOGu.d.cts → job_posting_service_latest-BKz5U2Gp.d.cts} +266 -266
- package/dist/{job_posting_service_latest-82DHqOGu.d.ts → job_posting_service_latest-BKz5U2Gp.d.ts} +266 -266
- package/dist/{shared_pickle_output_latest-YbRs_xtC.d.cts → shared_pickle_output_latest--XZhOUyE.d.cts} +18 -18
- package/dist/{shared_pickle_output_latest-YbRs_xtC.d.ts → shared_pickle_output_latest--XZhOUyE.d.ts} +18 -18
- package/dist/{shared_pickle_output_latest-dO-t8iZx.d.cts → shared_pickle_output_latest-DKOmTyYk.d.cts} +18 -18
- package/dist/{shared_pickle_output_latest-dO-t8iZx.d.ts → shared_pickle_output_latest-DKOmTyYk.d.ts} +18 -18
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkXKLOANYB_cjs = require('./chunk-XKLOANYB.cjs');
|
|
4
|
+
var chunkXWQI5MC3_cjs = require('./chunk-XWQI5MC3.cjs');
|
|
5
|
+
var chunkYNREEZ75_cjs = require('./chunk-YNREEZ75.cjs');
|
|
6
|
+
var chunkLTJXX7NG_cjs = require('./chunk-LTJXX7NG.cjs');
|
|
7
|
+
var chunkRKLUMDJB_cjs = require('./chunk-RKLUMDJB.cjs');
|
|
8
|
+
var chunkXO6LO5CU_cjs = require('./chunk-XO6LO5CU.cjs');
|
|
9
|
+
var chunkC3DCFPJC_cjs = require('./chunk-C3DCFPJC.cjs');
|
|
10
|
+
var chunkMGWZXPMF_cjs = require('./chunk-MGWZXPMF.cjs');
|
|
11
|
+
var cva = require('cva');
|
|
12
|
+
var lucideReact = require('lucide-react');
|
|
13
|
+
var react = require('react');
|
|
14
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
15
|
+
|
|
16
|
+
var Combobox = react.forwardRef((props, ref) => {
|
|
17
|
+
const {
|
|
18
|
+
id,
|
|
19
|
+
name,
|
|
20
|
+
value,
|
|
21
|
+
label,
|
|
22
|
+
options,
|
|
23
|
+
required,
|
|
24
|
+
description,
|
|
25
|
+
classNames,
|
|
26
|
+
multiselect,
|
|
27
|
+
placeholder,
|
|
28
|
+
error,
|
|
29
|
+
variant = "default",
|
|
30
|
+
size,
|
|
31
|
+
icon,
|
|
32
|
+
className,
|
|
33
|
+
onChange: handleChange,
|
|
34
|
+
children: footer
|
|
35
|
+
} = props;
|
|
36
|
+
const [selected, setSelected] = react.useState([]);
|
|
37
|
+
const [open, setOpen] = react.useState(false);
|
|
38
|
+
const isUserUpdate = react.useRef(false);
|
|
39
|
+
const IconComponent = icon && lucideReact.icons[icon];
|
|
40
|
+
const hideSearchBox = options?.length <= 5;
|
|
41
|
+
const isDefault = variant === "default";
|
|
42
|
+
const isChip = variant === "chip";
|
|
43
|
+
const isEmpty = selected.length === 0;
|
|
44
|
+
const showChevron = isDefault ? isEmpty : true;
|
|
45
|
+
const close = () => setOpen(false);
|
|
46
|
+
react.useEffect(() => {
|
|
47
|
+
if (!isUserUpdate.current) {
|
|
48
|
+
const valueArray = multiselect ? value ?? [] : value ? [value] : [];
|
|
49
|
+
setSelected(
|
|
50
|
+
valueArray.map((v) => options.find((o) => o.value === v)).filter((v) => v !== void 0)
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
}, [value, options, multiselect]);
|
|
54
|
+
react.useEffect(() => {
|
|
55
|
+
if (isUserUpdate.current) {
|
|
56
|
+
if (multiselect) {
|
|
57
|
+
handleChange?.(selected.map((o) => o.value));
|
|
58
|
+
} else {
|
|
59
|
+
handleChange?.(selected[0]?.value ?? "");
|
|
60
|
+
}
|
|
61
|
+
isUserUpdate.current = false;
|
|
62
|
+
}
|
|
63
|
+
}, [selected, multiselect, handleChange]);
|
|
64
|
+
const updateMultiSelect = (prev, option) => {
|
|
65
|
+
return prev.some((o) => o.value === option.value) ? prev.filter((v) => v !== option) : [...prev, option];
|
|
66
|
+
};
|
|
67
|
+
const handleSelect = (value2) => {
|
|
68
|
+
const option = options.find((o) => o.value === value2);
|
|
69
|
+
if (!option) return;
|
|
70
|
+
isUserUpdate.current = true;
|
|
71
|
+
if (multiselect) {
|
|
72
|
+
setSelected((prev) => updateMultiSelect(prev, option));
|
|
73
|
+
} else {
|
|
74
|
+
setSelected([option]);
|
|
75
|
+
close();
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
const handleClear = () => {
|
|
79
|
+
isUserUpdate.current = true;
|
|
80
|
+
setSelected([]);
|
|
81
|
+
};
|
|
82
|
+
const handleDisplayValue = () => {
|
|
83
|
+
const defaultLabel = !isEmpty ? selected.map((s) => s.title).join(", ") : placeholder;
|
|
84
|
+
return isDefault ? defaultLabel : label;
|
|
85
|
+
};
|
|
86
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: chunkMGWZXPMF_cjs.cn("flex flex-col gap-1", className), children: [
|
|
87
|
+
isDefault && /* @__PURE__ */ jsxRuntime.jsx(
|
|
88
|
+
chunkXWQI5MC3_cjs.Label_default,
|
|
89
|
+
{
|
|
90
|
+
text: label,
|
|
91
|
+
htmlFor: name,
|
|
92
|
+
required,
|
|
93
|
+
description,
|
|
94
|
+
className: classNames?.label
|
|
95
|
+
}
|
|
96
|
+
),
|
|
97
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex", children: [
|
|
98
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkRKLUMDJB_cjs.Popover, { open, onOpenChange: setOpen, children: [
|
|
99
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
100
|
+
chunkRKLUMDJB_cjs.PopoverTrigger,
|
|
101
|
+
{
|
|
102
|
+
asChild: true,
|
|
103
|
+
disabled: options.length === 0,
|
|
104
|
+
"data-testid": `${id ?? name}-combobox-trigger`,
|
|
105
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
106
|
+
"div",
|
|
107
|
+
{
|
|
108
|
+
ref,
|
|
109
|
+
className: chunkMGWZXPMF_cjs.cn(
|
|
110
|
+
triggerVariants({ variant, size }),
|
|
111
|
+
isDefault && !isEmpty && "pr-10",
|
|
112
|
+
classNames?.trigger
|
|
113
|
+
),
|
|
114
|
+
"aria-expanded": open,
|
|
115
|
+
children: [
|
|
116
|
+
isDefault && IconComponent && /* @__PURE__ */ jsxRuntime.jsx(IconComponent, { className: "h-4 w-4 shrink-0" }),
|
|
117
|
+
isChip && !isEmpty && /* @__PURE__ */ jsxRuntime.jsx(chunkYNREEZ75_cjs.Badge, { variant: "purple", children: selected.length }),
|
|
118
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
119
|
+
"span",
|
|
120
|
+
{
|
|
121
|
+
className: chunkMGWZXPMF_cjs.cn(
|
|
122
|
+
"w-full truncate leading-normal",
|
|
123
|
+
isDefault && isEmpty && "text-grey-40"
|
|
124
|
+
),
|
|
125
|
+
children: handleDisplayValue()
|
|
126
|
+
}
|
|
127
|
+
),
|
|
128
|
+
showChevron && /* @__PURE__ */ jsxRuntime.jsx(
|
|
129
|
+
lucideReact.ChevronDownIcon,
|
|
130
|
+
{
|
|
131
|
+
className: "shrink-0 transform group-data-[state=open]:rotate-180",
|
|
132
|
+
size: "16"
|
|
133
|
+
}
|
|
134
|
+
)
|
|
135
|
+
]
|
|
136
|
+
}
|
|
137
|
+
)
|
|
138
|
+
}
|
|
139
|
+
),
|
|
140
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
141
|
+
chunkRKLUMDJB_cjs.PopoverContent,
|
|
142
|
+
{
|
|
143
|
+
className: chunkMGWZXPMF_cjs.cn(
|
|
144
|
+
"flex w-full max-w-xs flex-col overflow-hidden p-0",
|
|
145
|
+
"max-h-[--radix-popover-content-available-height]",
|
|
146
|
+
classNames?.content
|
|
147
|
+
),
|
|
148
|
+
collisionPadding: 8,
|
|
149
|
+
sideOffset: 4,
|
|
150
|
+
align: "start",
|
|
151
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkC3DCFPJC_cjs.Command, { children: [
|
|
152
|
+
!hideSearchBox && /* @__PURE__ */ jsxRuntime.jsx(chunkC3DCFPJC_cjs.CommandInput, { placeholder: "Search..." }),
|
|
153
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkC3DCFPJC_cjs.CommandList, { children: [
|
|
154
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkC3DCFPJC_cjs.CommandEmpty, { children: "No results" }),
|
|
155
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkC3DCFPJC_cjs.CommandGroup, { children: options.map(({ id: id2, ...option }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
156
|
+
chunkC3DCFPJC_cjs.CommandItem,
|
|
157
|
+
{
|
|
158
|
+
value: option.title,
|
|
159
|
+
onSelect: () => handleSelect(option.value),
|
|
160
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
161
|
+
chunkXKLOANYB_cjs.ListItem_default,
|
|
162
|
+
{
|
|
163
|
+
className: chunkMGWZXPMF_cjs.cn(classNames?.items, "truncate py-1"),
|
|
164
|
+
isSelected: selected.some((s) => s.value === option.value),
|
|
165
|
+
hasCheckbox: multiselect,
|
|
166
|
+
...option
|
|
167
|
+
}
|
|
168
|
+
)
|
|
169
|
+
},
|
|
170
|
+
id2
|
|
171
|
+
)) })
|
|
172
|
+
] }),
|
|
173
|
+
!!footer && /* @__PURE__ */ jsxRuntime.jsx(chunkXO6LO5CU_cjs.Separator, {}),
|
|
174
|
+
footer && footer({ close })
|
|
175
|
+
] })
|
|
176
|
+
}
|
|
177
|
+
)
|
|
178
|
+
] }),
|
|
179
|
+
isDefault && !isEmpty && /* @__PURE__ */ jsxRuntime.jsx(
|
|
180
|
+
"button",
|
|
181
|
+
{
|
|
182
|
+
type: "button",
|
|
183
|
+
className: "absolute inset-y-0 right-1 my-auto flex h-8 w-8 cursor-pointer items-center justify-center rounded-full hover:bg-pickle-20",
|
|
184
|
+
onClick: handleClear,
|
|
185
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleX, { className: "h-4 w-4 text-green-100" })
|
|
186
|
+
}
|
|
187
|
+
)
|
|
188
|
+
] }),
|
|
189
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkLTJXX7NG_cjs.ErrorMessage_default, { message: error })
|
|
190
|
+
] });
|
|
191
|
+
});
|
|
192
|
+
Combobox.displayName = "Combobox";
|
|
193
|
+
var triggerVariants = cva.cva(
|
|
194
|
+
"group relative cursor-pointer text-green-100 flex flex-row items-center justify-between gap-2 border border-grey-20 focus:outline-green-80 disabled:bg-grey-5",
|
|
195
|
+
{
|
|
196
|
+
variants: {
|
|
197
|
+
variant: {
|
|
198
|
+
default: ["w-full", "rounded-lg"],
|
|
199
|
+
chip: [
|
|
200
|
+
"font-bold",
|
|
201
|
+
"rounded-3xl",
|
|
202
|
+
"data-[state=open]:bg-black",
|
|
203
|
+
"data-[state=open]:text-white"
|
|
204
|
+
]
|
|
205
|
+
},
|
|
206
|
+
size: {
|
|
207
|
+
small: ["h-8", "py-1", "px-2", "text-xs"],
|
|
208
|
+
normal: ["h-9", "py-2", "px-3", "text-sm"],
|
|
209
|
+
large: ["h-10", "py-3", "px-4", "text-base"]
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
defaultVariants: {
|
|
213
|
+
variant: "default",
|
|
214
|
+
size: "normal"
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
);
|
|
218
|
+
|
|
219
|
+
exports.Combobox = Combobox;
|
|
220
|
+
//# sourceMappingURL=chunk-CQSYXCIU.cjs.map
|
|
221
|
+
//# sourceMappingURL=chunk-CQSYXCIU.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/Combobox.tsx"],"names":["forwardRef","useState","useRef","icons","useEffect","value","cn","jsx","Label_default","jsxs","Popover","PopoverTrigger","Badge","ChevronDownIcon","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","id","CommandItem","ListItem_default","Separator","CircleX","ErrorMessage_default","cva"],"mappings":"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","file":"chunk-CQSYXCIU.cjs","sourcesContent":["'use client'\n\nimport { cva, type VariantProps } from 'cva'\nimport { ChevronDownIcon, CircleX, icons } from 'lucide-react'\nimport { type ComponentProps, forwardRef, useEffect, useRef, useState } from 'react'\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '@/components/primitives/command'\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/primitives/popover'\nimport { Separator } from '@/components/primitives/separator'\nimport { Badge } from '@/components/ui/Badge'\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport Label from '@/components/ui/Label'\nimport ListItem from '@/components/ui/ListItem'\nimport { cn } from '@/lib/utils'\n\ntype Icon = { icon?: keyof typeof icons }\ntype LabelProps = { label?: string; description?: string }\ntype Children = { children?: (props: { close: () => void }) => JSX.Element }\ntype Option = { id: string; value: string; title: string; description?: string; icon?: string }\ntype ClassNames = { label?: string; trigger?: string; items?: string; content?: string }\ntype Shared = { options: Option[]; classNames?: ClassNames; placeholder?: string; error?: string }\ntype MultiSelect = { multiselect: true; value?: string[]; onChange?: (v: string[]) => void }\ntype SingleSelect = { multiselect?: false; value?: string; onChange?: (v: string) => void }\ntype TriggerVariants = VariantProps<typeof triggerVariants>\ntype SelectProps = Omit<ComponentProps<'select'>, 'value' | 'onChange' | 'size' | 'children'>\ntype Props = TriggerVariants & SelectProps & Children & Shared & Icon & LabelProps\ntype MultiSelectProps = Props & MultiSelect\ntype SingleSelectProps = Props & SingleSelect\ntype ComboboxProps = MultiSelectProps | SingleSelectProps\n\nexport const Combobox = forwardRef<HTMLDivElement, ComboboxProps>((props, ref) => {\n const {\n id,\n name,\n value,\n label,\n options,\n required,\n description,\n classNames,\n multiselect,\n placeholder,\n error,\n variant = 'default',\n size,\n icon,\n className,\n onChange: handleChange,\n children: footer,\n } = props\n const [selected, setSelected] = useState<Option[]>([])\n const [open, setOpen] = useState(false)\n const isUserUpdate = useRef(false)\n const IconComponent = icon && icons[icon]\n const hideSearchBox = options?.length <= 5\n const isDefault = variant === 'default'\n const isChip = variant === 'chip'\n const isEmpty = selected.length === 0\n const showChevron = isDefault ? isEmpty : true\n const close = () => setOpen(false)\n\n useEffect(() => {\n if (!isUserUpdate.current) {\n const valueArray = multiselect ? (value ?? []) : value ? [value] : []\n setSelected(\n valueArray.map((v) => options.find((o) => o.value === v)).filter((v) => v !== undefined)\n )\n }\n }, [value, options, multiselect])\n\n useEffect(() => {\n if (isUserUpdate.current) {\n if (multiselect) {\n handleChange?.(selected.map((o) => o.value))\n } else {\n handleChange?.(selected[0]?.value ?? '')\n }\n isUserUpdate.current = false\n }\n }, [selected, multiselect, handleChange])\n\n const updateMultiSelect = (prev: Option[], option: Option) => {\n return prev.some((o) => o.value === option.value)\n ? prev.filter((v) => v !== option)\n : [...prev, option]\n }\n\n const handleSelect = (value: string) => {\n const option = options.find((o) => o.value === value)\n if (!option) return\n\n isUserUpdate.current = true\n if (multiselect) {\n setSelected((prev) => updateMultiSelect(prev, option))\n } else {\n setSelected([option])\n close()\n }\n }\n\n const handleClear = () => {\n isUserUpdate.current = true\n setSelected([])\n }\n\n const handleDisplayValue = () => {\n const defaultLabel = !isEmpty ? selected.map((s) => s.title).join(', ') : placeholder\n return isDefault ? defaultLabel : label\n }\n\n return (\n <div className={cn('flex flex-col gap-1', className)}>\n {isDefault && (\n <Label\n text={label}\n htmlFor={name}\n required={required}\n description={description}\n className={classNames?.label}\n />\n )}\n\n <div className=\"relative flex\">\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger\n asChild\n disabled={options.length === 0}\n data-testid={`${id ?? name}-combobox-trigger`}\n >\n <div\n ref={ref}\n className={cn(\n triggerVariants({ variant, size }),\n isDefault && !isEmpty && 'pr-10',\n classNames?.trigger\n )}\n aria-expanded={open}\n >\n {isDefault && IconComponent && <IconComponent className=\"h-4 w-4 shrink-0\" />}\n {isChip && !isEmpty && <Badge variant=\"purple\">{selected.length}</Badge>}\n\n <span\n className={cn(\n 'w-full truncate leading-normal',\n isDefault && isEmpty && 'text-grey-40'\n )}\n >\n {handleDisplayValue()}\n </span>\n\n {showChevron && (\n <ChevronDownIcon\n className=\"shrink-0 transform group-data-[state=open]:rotate-180\"\n size=\"16\"\n />\n )}\n </div>\n </PopoverTrigger>\n\n <PopoverContent\n className={cn(\n 'flex w-full max-w-xs flex-col overflow-hidden p-0',\n 'max-h-[--radix-popover-content-available-height]',\n classNames?.content\n )}\n collisionPadding={8}\n sideOffset={4}\n align=\"start\"\n >\n <Command>\n {!hideSearchBox && <CommandInput placeholder=\"Search...\" />}\n\n <CommandList>\n <CommandEmpty>No results</CommandEmpty>\n <CommandGroup>\n {options.map(({ id, ...option }) => (\n <CommandItem\n key={id}\n value={option.title}\n onSelect={() => handleSelect(option.value)}\n >\n <ListItem\n className={cn(classNames?.items, 'truncate py-1')}\n isSelected={selected.some((s) => s.value === option.value)}\n hasCheckbox={multiselect}\n {...option}\n />\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n\n {!!footer && <Separator />}\n {footer && footer({ close })}\n </Command>\n </PopoverContent>\n </Popover>\n\n {isDefault && !isEmpty && (\n <button\n type=\"button\"\n className=\"absolute inset-y-0 right-1 my-auto flex h-8 w-8 cursor-pointer items-center justify-center rounded-full hover:bg-pickle-20\"\n onClick={handleClear}\n >\n <CircleX className=\"h-4 w-4 text-green-100\" />\n </button>\n )}\n </div>\n\n <ErrorMessage message={error} />\n </div>\n )\n})\nCombobox.displayName = 'Combobox'\n\nconst triggerVariants = cva(\n 'group relative cursor-pointer text-green-100 flex flex-row items-center justify-between gap-2 border border-grey-20 focus:outline-green-80 disabled:bg-grey-5',\n {\n variants: {\n variant: {\n default: ['w-full', 'rounded-lg'],\n chip: [\n 'font-bold',\n 'rounded-3xl',\n 'data-[state=open]:bg-black',\n 'data-[state=open]:text-white',\n ],\n },\n size: {\n small: ['h-8', 'py-1', 'px-2', 'text-xs'],\n normal: ['h-9', 'py-2', 'px-3', 'text-sm'],\n large: ['h-10', 'py-3', 'px-4', 'text-base'],\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'normal',\n },\n }\n)\n"]}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { FocusCircle } from './chunk-5Z4ILTRD.js';
|
|
2
|
+
import { IndividualMarker } from './chunk-EWFDWOL2.js';
|
|
3
|
+
import { ClusterMarker } from './chunk-EBZRXX6P.js';
|
|
4
|
+
import { PIN_COLORS } from './chunk-LQQ244AY.js';
|
|
5
|
+
import { cn } from './chunk-2FGZQI42.js';
|
|
6
|
+
import { useMap, useMapsLibrary, Map, AdvancedMarker, Pin } from '@vis.gl/react-google-maps';
|
|
7
|
+
import { useCallback } from 'react';
|
|
8
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
9
|
+
|
|
10
|
+
function MapContent({
|
|
11
|
+
mapId,
|
|
12
|
+
mapCenter,
|
|
13
|
+
mapZoom,
|
|
14
|
+
position,
|
|
15
|
+
coordinates,
|
|
16
|
+
clusters,
|
|
17
|
+
supercluster,
|
|
18
|
+
onPinHover,
|
|
19
|
+
onPinClick,
|
|
20
|
+
focusPoint,
|
|
21
|
+
radiusMiles,
|
|
22
|
+
className,
|
|
23
|
+
setBounds,
|
|
24
|
+
setZoomLevel
|
|
25
|
+
}) {
|
|
26
|
+
const map = useMap();
|
|
27
|
+
const mapsLibrary = useMapsLibrary("maps");
|
|
28
|
+
const zoomToLevel = useCallback(
|
|
29
|
+
(newZoom) => {
|
|
30
|
+
if (map) {
|
|
31
|
+
map.setZoom(newZoom);
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
[map]
|
|
35
|
+
);
|
|
36
|
+
const handleBoundsChanged = (e) => {
|
|
37
|
+
if (e.detail.bounds) {
|
|
38
|
+
const bounds = e.detail.bounds;
|
|
39
|
+
setBounds([
|
|
40
|
+
[bounds.south, bounds.west],
|
|
41
|
+
[bounds.north, bounds.east]
|
|
42
|
+
]);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
const handleZoomChanged = (e) => {
|
|
46
|
+
if (e.detail.zoom) {
|
|
47
|
+
setZoomLevel(e.detail.zoom);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
const handleCameraChanged = (e) => {
|
|
51
|
+
if (e.detail.zoom) {
|
|
52
|
+
setZoomLevel(e.detail.zoom);
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
return /* @__PURE__ */ jsx("div", { className: cn("relative h-screen max-w-full", className), children: /* @__PURE__ */ jsxs(
|
|
56
|
+
Map,
|
|
57
|
+
{
|
|
58
|
+
defaultZoom: mapZoom,
|
|
59
|
+
defaultCenter: mapCenter,
|
|
60
|
+
mapId,
|
|
61
|
+
keyboardShortcuts: true,
|
|
62
|
+
disableDefaultUI: true,
|
|
63
|
+
zoomControl: true,
|
|
64
|
+
onBoundsChanged: handleBoundsChanged,
|
|
65
|
+
onZoomChanged: handleZoomChanged,
|
|
66
|
+
onCameraChanged: handleCameraChanged,
|
|
67
|
+
children: [
|
|
68
|
+
position && !coordinates && /* @__PURE__ */ jsx(AdvancedMarker, { position, children: /* @__PURE__ */ jsx(Pin, { ...PIN_COLORS }) }),
|
|
69
|
+
coordinates && clusters.map((cluster) => {
|
|
70
|
+
const { cluster: isCluster } = cluster.properties;
|
|
71
|
+
if (isCluster) {
|
|
72
|
+
return /* @__PURE__ */ jsx(
|
|
73
|
+
ClusterMarker,
|
|
74
|
+
{
|
|
75
|
+
cluster,
|
|
76
|
+
coordinates,
|
|
77
|
+
onPinClick,
|
|
78
|
+
onPinHover,
|
|
79
|
+
zoomToLevel,
|
|
80
|
+
supercluster
|
|
81
|
+
},
|
|
82
|
+
`cluster-${cluster.id}`
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
const originalPoint = coordinates[cluster.properties.pointId];
|
|
86
|
+
return /* @__PURE__ */ jsx(
|
|
87
|
+
IndividualMarker,
|
|
88
|
+
{
|
|
89
|
+
coordinate: originalPoint,
|
|
90
|
+
onPinClick,
|
|
91
|
+
onPinHover
|
|
92
|
+
},
|
|
93
|
+
`marker-${cluster.properties.pointId}`
|
|
94
|
+
);
|
|
95
|
+
}),
|
|
96
|
+
coordinates && clusters.length === 0 && coordinates.map((coord, index) => /* @__PURE__ */ jsx(
|
|
97
|
+
IndividualMarker,
|
|
98
|
+
{
|
|
99
|
+
coordinate: coord,
|
|
100
|
+
onPinClick,
|
|
101
|
+
onPinHover
|
|
102
|
+
},
|
|
103
|
+
`fallback-${index}`
|
|
104
|
+
)),
|
|
105
|
+
focusPoint && radiusMiles && /* @__PURE__ */ jsx(
|
|
106
|
+
FocusCircle,
|
|
107
|
+
{
|
|
108
|
+
focusPoint,
|
|
109
|
+
radiusMiles,
|
|
110
|
+
map,
|
|
111
|
+
mapsLibrary
|
|
112
|
+
}
|
|
113
|
+
)
|
|
114
|
+
]
|
|
115
|
+
}
|
|
116
|
+
) });
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export { MapContent };
|
|
120
|
+
//# sourceMappingURL=chunk-CTR2QSI6.js.map
|
|
121
|
+
//# sourceMappingURL=chunk-CTR2QSI6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/Map/MapContent.tsx"],"names":[],"mappings":"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","file":"chunk-CTR2QSI6.js","sourcesContent":["'use client'\n\nimport { AdvancedMarker, Map, Pin, useMap, useMapsLibrary } from '@vis.gl/react-google-maps'\nimport { useCallback } from 'react'\n\nimport { ClusterMarker } from '@/components/ui/Map/ClusterMarker'\nimport { PIN_COLORS } from '@/components/ui/Map/constants'\nimport { FocusCircle } from '@/components/ui/Map/FocusCircle'\nimport { IndividualMarker } from '@/components/ui/Map/IndividualMarker'\nimport type { MapContentProps, PinData } from '@/components/ui/Map/types'\nimport { cn } from '@/lib/utils'\n\nexport function MapContent<T = PinData>({\n mapId,\n mapCenter,\n mapZoom,\n position,\n coordinates,\n clusters,\n supercluster,\n onPinHover,\n onPinClick,\n focusPoint,\n radiusMiles,\n className,\n setBounds,\n setZoomLevel,\n}: MapContentProps<T>) {\n const map = useMap()\n const mapsLibrary = useMapsLibrary('maps')\n\n const zoomToLevel = useCallback(\n (newZoom: number) => {\n if (map) {\n map.setZoom(newZoom)\n }\n },\n [map]\n )\n\n const handleBoundsChanged = (e: {\n detail: { bounds: { south: number; west: number; north: number; east: number } }\n }) => {\n if (e.detail.bounds) {\n const bounds = e.detail.bounds\n setBounds([\n [bounds.south, bounds.west],\n [bounds.north, bounds.east],\n ])\n }\n }\n\n const handleZoomChanged = (e: { detail: { zoom: number } }) => {\n if (e.detail.zoom) {\n setZoomLevel(e.detail.zoom)\n }\n }\n\n const handleCameraChanged = (e: { detail: { zoom: number } }) => {\n if (e.detail.zoom) {\n setZoomLevel(e.detail.zoom)\n }\n }\n\n return (\n <div className={cn('relative h-screen max-w-full', className)}>\n <Map\n defaultZoom={mapZoom}\n defaultCenter={mapCenter}\n mapId={mapId}\n keyboardShortcuts={true}\n disableDefaultUI={true}\n zoomControl={true}\n onBoundsChanged={handleBoundsChanged}\n onZoomChanged={handleZoomChanged}\n onCameraChanged={handleCameraChanged}\n >\n {position && !coordinates && (\n <AdvancedMarker position={position}>\n <Pin {...PIN_COLORS} />\n </AdvancedMarker>\n )}\n\n {coordinates &&\n clusters.map((cluster) => {\n const { cluster: isCluster } = cluster.properties\n\n if (isCluster) {\n return (\n <ClusterMarker\n key={`cluster-${cluster.id}`}\n cluster={cluster}\n coordinates={coordinates}\n onPinClick={onPinClick}\n onPinHover={onPinHover}\n zoomToLevel={zoomToLevel}\n supercluster={supercluster}\n />\n )\n }\n\n const originalPoint = coordinates[cluster.properties.pointId!]\n return (\n <IndividualMarker\n key={`marker-${cluster.properties.pointId}`}\n coordinate={originalPoint}\n onPinClick={onPinClick}\n onPinHover={onPinHover}\n />\n )\n })}\n\n {coordinates &&\n clusters.length === 0 &&\n coordinates.map((coord, index) => (\n <IndividualMarker\n key={`fallback-${index}`}\n coordinate={coord}\n onPinClick={onPinClick}\n onPinHover={onPinHover}\n />\n ))}\n\n {focusPoint && radiusMiles && (\n <FocusCircle\n focusPoint={focusPoint}\n radiusMiles={radiusMiles}\n map={map}\n mapsLibrary={mapsLibrary}\n />\n )}\n </Map>\n </div>\n )\n}\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { cn } from './chunk-2FGZQI42.js';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
|
|
4
|
+
function ErrorMessage({ message, className, ...props }) {
|
|
5
|
+
if (!message) return null;
|
|
6
|
+
return /* @__PURE__ */ jsx("p", { className: cn("px-1 text-xs text-red-600", className), ...props, children: message });
|
|
7
|
+
}
|
|
8
|
+
var ErrorMessage_default = ErrorMessage;
|
|
9
|
+
|
|
10
|
+
export { ErrorMessage_default };
|
|
11
|
+
//# sourceMappingURL=chunk-CWTO3NXW.js.map
|
|
12
|
+
//# sourceMappingURL=chunk-CWTO3NXW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/ErrorMessage.tsx"],"names":[],"mappings":";;;AAQA,SAAS,aAAa,EAAE,OAAA,EAAS,SAAW,EAAA,GAAG,OAA0B,EAAA;AACvE,EAAI,IAAA,CAAC,SAAgB,OAAA,IAAA;AAErB,EACE,uBAAA,GAAA,CAAC,OAAE,SAAW,EAAA,EAAA,CAAG,6BAA6B,SAAS,CAAA,EAAI,GAAG,KAAA,EAC3D,QACH,EAAA,OAAA,EAAA,CAAA;AAEJ;AAEA,IAAO,oBAAQ,GAAA","file":"chunk-CWTO3NXW.js","sourcesContent":["import { type ComponentPropsWithoutRef } from 'react'\n\nimport { cn } from '@/lib/utils'\n\ninterface Props extends ComponentPropsWithoutRef<'p'> {\n message?: string\n}\n\nfunction ErrorMessage({ message, className, ...props }: Readonly<Props>) {\n if (!message) return null\n\n return (\n <p className={cn('px-1 text-xs text-red-600', className)} {...props}>\n {message}\n </p>\n )\n}\n\nexport default ErrorMessage\n"]}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkW2UGL7QI_cjs = require('./chunk-W2UGL7QI.cjs');
|
|
4
|
+
var chunkHD3VN7GE_cjs = require('./chunk-HD3VN7GE.cjs');
|
|
5
|
+
var chunk6BFFHI2V_cjs = require('./chunk-6BFFHI2V.cjs');
|
|
6
|
+
var chunkMGWZXPMF_cjs = require('./chunk-MGWZXPMF.cjs');
|
|
7
|
+
var chunkSMDQTPJE_cjs = require('./chunk-SMDQTPJE.cjs');
|
|
8
|
+
var lucideReact = require('lucide-react');
|
|
9
|
+
var Image = require('next/image');
|
|
10
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
11
|
+
|
|
12
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
|
|
14
|
+
var Image__default = /*#__PURE__*/_interopDefault(Image);
|
|
15
|
+
|
|
16
|
+
function JobHeader({
|
|
17
|
+
title,
|
|
18
|
+
subtitles,
|
|
19
|
+
standalone,
|
|
20
|
+
bannerSrc,
|
|
21
|
+
avatarSrc,
|
|
22
|
+
avatarName,
|
|
23
|
+
avatarHref,
|
|
24
|
+
backFallbackHref,
|
|
25
|
+
backAcceptedRoutes,
|
|
26
|
+
actions,
|
|
27
|
+
tags
|
|
28
|
+
}) {
|
|
29
|
+
const renderIcon = (icon) => {
|
|
30
|
+
const Icon = chunkSMDQTPJE_cjs.iconMap[icon];
|
|
31
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Icon, { size: 18 });
|
|
32
|
+
};
|
|
33
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
34
|
+
"div",
|
|
35
|
+
{
|
|
36
|
+
"data-testid": "job-header-root",
|
|
37
|
+
className: chunkMGWZXPMF_cjs.cn(
|
|
38
|
+
"-mt-8 flex w-full flex-col items-center justify-between gap-6 md:-mt-0",
|
|
39
|
+
!standalone && "rounded-3xl"
|
|
40
|
+
),
|
|
41
|
+
children: [
|
|
42
|
+
!standalone && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex min-h-16 w-full items-center rounded-t-3xl bg-transparent md:min-h-24 md:flex-row lg:min-h-32", children: [
|
|
43
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
44
|
+
Image__default.default,
|
|
45
|
+
{
|
|
46
|
+
className: "h-full w-full rounded-t-3xl object-cover",
|
|
47
|
+
src: bannerSrc,
|
|
48
|
+
alt: "job banner",
|
|
49
|
+
fill: true
|
|
50
|
+
}
|
|
51
|
+
),
|
|
52
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
53
|
+
chunkHD3VN7GE_cjs.BackButton,
|
|
54
|
+
{
|
|
55
|
+
acceptedRoutes: backAcceptedRoutes,
|
|
56
|
+
fallbackHref: backFallbackHref,
|
|
57
|
+
className: "absolute right-2 top-2 flex items-center justify-center text-white sm:hidden",
|
|
58
|
+
"data-testid": "job-header-back-button"
|
|
59
|
+
}
|
|
60
|
+
),
|
|
61
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62
|
+
"div",
|
|
63
|
+
{
|
|
64
|
+
className: "absolute left-4 top-8 md:left-6 md:top-16 lg:top-24",
|
|
65
|
+
"data-testid": "job-header-avatar",
|
|
66
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
67
|
+
chunkW2UGL7QI_cjs.Avatar,
|
|
68
|
+
{
|
|
69
|
+
size: "large",
|
|
70
|
+
target: "_blank",
|
|
71
|
+
href: avatarHref,
|
|
72
|
+
name: avatarName,
|
|
73
|
+
src: avatarSrc,
|
|
74
|
+
rel: "noopener noreferrer"
|
|
75
|
+
}
|
|
76
|
+
)
|
|
77
|
+
}
|
|
78
|
+
)
|
|
79
|
+
] }),
|
|
80
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-col items-start justify-start gap-4 px-6", children: [
|
|
81
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col md:flex-row", children: [
|
|
82
|
+
standalone && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "-mt-4 mr-4 md:mt-0", "data-testid": "job-header-avatar", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
83
|
+
chunkW2UGL7QI_cjs.Avatar,
|
|
84
|
+
{
|
|
85
|
+
size: "large",
|
|
86
|
+
target: "_blank",
|
|
87
|
+
href: avatarHref,
|
|
88
|
+
name: avatarName,
|
|
89
|
+
src: avatarSrc,
|
|
90
|
+
rel: "noopener noreferrer"
|
|
91
|
+
}
|
|
92
|
+
) }),
|
|
93
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "prose mt-4 flex w-full items-center text-grey-80 lg:prose-lg", children: subtitles?.map((subtitle, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
94
|
+
"div",
|
|
95
|
+
{
|
|
96
|
+
"data-testid": `job-header-subtitle-${i}`,
|
|
97
|
+
className: "flex items-center",
|
|
98
|
+
children: [
|
|
99
|
+
subtitle,
|
|
100
|
+
i < subtitles.length - 1 && /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Dot, { className: "mx-1 shrink-0", size: 10 })
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
subtitle
|
|
104
|
+
)) })
|
|
105
|
+
] }),
|
|
106
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
107
|
+
"div",
|
|
108
|
+
{
|
|
109
|
+
"data-testid": "job-header-content",
|
|
110
|
+
className: "mt-2 flex w-full flex-row flex-wrap items-center justify-between gap-1",
|
|
111
|
+
children: [
|
|
112
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
113
|
+
"h2",
|
|
114
|
+
{
|
|
115
|
+
"data-testid": "job-header-title",
|
|
116
|
+
className: "break-word max-w-full text-2xl font-bold text-black sm:max-w-2xl md:max-w-lg",
|
|
117
|
+
children: title
|
|
118
|
+
}
|
|
119
|
+
),
|
|
120
|
+
!!actions && /* @__PURE__ */ jsxRuntime.jsx(
|
|
121
|
+
"div",
|
|
122
|
+
{
|
|
123
|
+
className: "flex w-full justify-end gap-2 md:w-auto",
|
|
124
|
+
"data-testid": "job-header-actions",
|
|
125
|
+
children: actions
|
|
126
|
+
}
|
|
127
|
+
)
|
|
128
|
+
]
|
|
129
|
+
}
|
|
130
|
+
),
|
|
131
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
132
|
+
"div",
|
|
133
|
+
{
|
|
134
|
+
"data-testid": "job-header-tags",
|
|
135
|
+
className: "flex flex-row flex-wrap items-center justify-start gap-2",
|
|
136
|
+
children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
137
|
+
chunk6BFFHI2V_cjs.Chip_default,
|
|
138
|
+
{
|
|
139
|
+
size: "small",
|
|
140
|
+
variant: "neutral",
|
|
141
|
+
"aria-label": name,
|
|
142
|
+
"data-testid": `job-header-tag-${name}`,
|
|
143
|
+
children: [
|
|
144
|
+
renderIcon(icon),
|
|
145
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: label })
|
|
146
|
+
]
|
|
147
|
+
},
|
|
148
|
+
`${name}-${label}`
|
|
149
|
+
))
|
|
150
|
+
}
|
|
151
|
+
)
|
|
152
|
+
] })
|
|
153
|
+
]
|
|
154
|
+
}
|
|
155
|
+
);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
exports.JobHeader = JobHeader;
|
|
159
|
+
//# sourceMappingURL=chunk-DMNSL52U.cjs.map
|
|
160
|
+
//# sourceMappingURL=chunk-DMNSL52U.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/jobPost/JobHeader.tsx"],"names":["iconMap","jsx","jsxs","cn","Image","BackButton","Avatar","Dot","Chip_default"],"mappings":"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","file":"chunk-DMNSL52U.cjs","sourcesContent":["'use client'\n\nimport { Dot } from 'lucide-react'\nimport Image from 'next/image'\nimport { type ReactNode } from 'react'\n\nimport { BackButton } from '@/components/buttons/BackButton'\nimport { Avatar } from '@/components/ui/Avatar'\nimport Chip from '@/components/ui/Chip'\nimport { iconMap } from '@/lib/icons'\nimport { cn } from '@/lib/utils'\n\nexport type JobHeaderTag = {\n name: string\n label: string\n icon: keyof typeof iconMap\n}\n\nexport type JobHeaderProps = {\n title: string\n bannerSrc: string\n subtitles?: string[]\n standalone?: boolean\n avatarSrc?: string\n avatarName?: string\n avatarHref?: string\n backFallbackHref?: string\n backAcceptedRoutes?: string[]\n actions?: ReactNode\n tags?: JobHeaderTag[]\n}\n\nexport function JobHeader({\n title,\n subtitles,\n standalone,\n bannerSrc,\n avatarSrc,\n avatarName,\n avatarHref,\n backFallbackHref,\n backAcceptedRoutes,\n actions,\n tags,\n}: Readonly<JobHeaderProps>) {\n const renderIcon = (icon: JobHeaderTag['icon']) => {\n const Icon = iconMap[icon]\n return <Icon size={18} />\n }\n\n return (\n <div\n data-testid=\"job-header-root\"\n className={cn(\n '-mt-8 flex w-full flex-col items-center justify-between gap-6 md:-mt-0',\n !standalone && 'rounded-3xl'\n )}\n >\n {!standalone && (\n <div className=\"relative flex min-h-16 w-full items-center rounded-t-3xl bg-transparent md:min-h-24 md:flex-row lg:min-h-32\">\n <Image\n className=\"h-full w-full rounded-t-3xl object-cover\"\n src={bannerSrc}\n alt=\"job banner\"\n fill\n />\n <BackButton\n acceptedRoutes={backAcceptedRoutes}\n fallbackHref={backFallbackHref}\n className=\"absolute right-2 top-2 flex items-center justify-center text-white sm:hidden\"\n data-testid=\"job-header-back-button\"\n />\n <div\n className=\"absolute left-4 top-8 md:left-6 md:top-16 lg:top-24\"\n data-testid=\"job-header-avatar\"\n >\n <Avatar\n size=\"large\"\n target=\"_blank\"\n href={avatarHref}\n name={avatarName}\n src={avatarSrc}\n rel=\"noopener noreferrer\"\n />\n </div>\n </div>\n )}\n\n <div className=\"flex w-full flex-col items-start justify-start gap-4 px-6\">\n <div className=\"flex flex-col md:flex-row\">\n {standalone && (\n <div className=\"-mt-4 mr-4 md:mt-0\" data-testid=\"job-header-avatar\">\n <Avatar\n size=\"large\"\n target=\"_blank\"\n href={avatarHref}\n name={avatarName}\n src={avatarSrc}\n rel=\"noopener noreferrer\"\n />\n </div>\n )}\n\n <div className=\"prose mt-4 flex w-full items-center text-grey-80 lg:prose-lg\">\n {subtitles?.map((subtitle, i) => (\n <div\n key={subtitle}\n data-testid={`job-header-subtitle-${i}`}\n className=\"flex items-center\"\n >\n {subtitle}\n {i < subtitles.length - 1 && <Dot className=\"mx-1 shrink-0\" size={10} />}\n </div>\n ))}\n </div>\n </div>\n\n <div\n data-testid=\"job-header-content\"\n className=\"mt-2 flex w-full flex-row flex-wrap items-center justify-between gap-1\"\n >\n <h2\n data-testid=\"job-header-title\"\n className=\"break-word max-w-full text-2xl font-bold text-black sm:max-w-2xl md:max-w-lg\"\n >\n {title}\n </h2>\n\n {!!actions && (\n <div\n className=\"flex w-full justify-end gap-2 md:w-auto\"\n data-testid=\"job-header-actions\"\n >\n {actions}\n </div>\n )}\n </div>\n\n <div\n data-testid=\"job-header-tags\"\n className=\"flex flex-row flex-wrap items-center justify-start gap-2\"\n >\n {tags?.map(({ name, label, icon }) => (\n <Chip\n key={`${name}-${label}`}\n size=\"small\"\n variant=\"neutral\"\n aria-label={name}\n data-testid={`job-header-tag-${name}`}\n >\n {renderIcon(icon)}\n <span>{label}</span>\n </Chip>\n ))}\n </div>\n </div>\n </div>\n )\n}\n"]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkNLGWU2KI_cjs = require('./chunk-NLGWU2KI.cjs');
|
|
4
|
+
|
|
5
|
+
// src/components/ui/Map/utils.ts
|
|
6
|
+
function getCenterForCoordinates(coords) {
|
|
7
|
+
if (coords.length === 0) return chunkNLGWU2KI_cjs.DEFAULT_POSITION;
|
|
8
|
+
const avgLat = coords.reduce((sum, coord) => sum + coord.lat, 0) / coords.length;
|
|
9
|
+
const avgLng = coords.reduce((sum, coord) => sum + coord.lng, 0) / coords.length;
|
|
10
|
+
return { lat: avgLat, lng: avgLng };
|
|
11
|
+
}
|
|
12
|
+
function getZoomForCoordinates(coords, defaultZoom) {
|
|
13
|
+
if (coords.length <= 1) return defaultZoom;
|
|
14
|
+
const lats = coords.map((coord) => coord.lat);
|
|
15
|
+
const lngs = coords.map((coord) => coord.lng);
|
|
16
|
+
const latDiff = Math.max(...lats) - Math.min(...lats);
|
|
17
|
+
const lngDiff = Math.max(...lngs) - Math.min(...lngs);
|
|
18
|
+
const maxDiff = Math.max(latDiff, lngDiff);
|
|
19
|
+
if (maxDiff > 0.1) return 8;
|
|
20
|
+
if (maxDiff > 0.05) return 10;
|
|
21
|
+
if (maxDiff > 0.01) return 12;
|
|
22
|
+
return 14;
|
|
23
|
+
}
|
|
24
|
+
function getClusteringRadius(zoom) {
|
|
25
|
+
if (zoom <= 8) return 200;
|
|
26
|
+
if (zoom <= 12) return 150;
|
|
27
|
+
return 100;
|
|
28
|
+
}
|
|
29
|
+
function filterClusterCoordinates(coordinates, clusterLat, clusterLng) {
|
|
30
|
+
return coordinates.filter((coord) => {
|
|
31
|
+
const latDiff = Math.abs(coord.lat - clusterLat);
|
|
32
|
+
const lngDiff = Math.abs(coord.lng - clusterLng);
|
|
33
|
+
const distance = Math.sqrt(latDiff * latDiff + lngDiff * lngDiff);
|
|
34
|
+
return distance < chunkNLGWU2KI_cjs.CLUSTER_DISTANCE_THRESHOLD;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
function calculateDistance(coord1, coord2) {
|
|
38
|
+
const latDiff = Math.abs(coord1.lat - coord2.lat);
|
|
39
|
+
const lngDiff = Math.abs(coord1.lng - coord2.lng);
|
|
40
|
+
return Math.sqrt(latDiff * latDiff + lngDiff * lngDiff);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
exports.calculateDistance = calculateDistance;
|
|
44
|
+
exports.filterClusterCoordinates = filterClusterCoordinates;
|
|
45
|
+
exports.getCenterForCoordinates = getCenterForCoordinates;
|
|
46
|
+
exports.getClusteringRadius = getClusteringRadius;
|
|
47
|
+
exports.getZoomForCoordinates = getZoomForCoordinates;
|
|
48
|
+
//# sourceMappingURL=chunk-DU5OQA67.cjs.map
|
|
49
|
+
//# sourceMappingURL=chunk-DU5OQA67.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/Map/utils.ts"],"names":["DEFAULT_POSITION","CLUSTER_DISTANCE_THRESHOLD"],"mappings":";;;;;AAGO,SAAS,wBAAqC,MAAwC,EAAA;AAC3F,EAAI,IAAA,MAAA,CAAO,MAAW,KAAA,CAAA,EAAU,OAAAA,kCAAA;AAEhC,EAAM,MAAA,MAAA,GAAS,MAAO,CAAA,MAAA,CAAO,CAAC,GAAA,EAAK,KAAU,KAAA,GAAA,GAAM,KAAM,CAAA,GAAA,EAAK,CAAC,CAAA,GAAI,MAAO,CAAA,MAAA;AAC1E,EAAM,MAAA,MAAA,GAAS,MAAO,CAAA,MAAA,CAAO,CAAC,GAAA,EAAK,KAAU,KAAA,GAAA,GAAM,KAAM,CAAA,GAAA,EAAK,CAAC,CAAA,GAAI,MAAO,CAAA,MAAA;AAE1E,EAAA,OAAO,EAAE,GAAA,EAAK,MAAQ,EAAA,GAAA,EAAK,MAAO,EAAA;AACpC;AAEO,SAAS,qBAAA,CACd,QACA,WACQ,EAAA;AACR,EAAI,IAAA,MAAA,CAAO,MAAU,IAAA,CAAA,EAAU,OAAA,WAAA;AAE/B,EAAA,MAAM,OAAO,MAAO,CAAA,GAAA,CAAI,CAAC,KAAA,KAAU,MAAM,GAAG,CAAA;AAC5C,EAAA,MAAM,OAAO,MAAO,CAAA,GAAA,CAAI,CAAC,KAAA,KAAU,MAAM,GAAG,CAAA;AAE5C,EAAM,MAAA,OAAA,GAAU,KAAK,GAAI,CAAA,GAAG,IAAI,CAAI,GAAA,IAAA,CAAK,GAAI,CAAA,GAAG,IAAI,CAAA;AACpD,EAAM,MAAA,OAAA,GAAU,KAAK,GAAI,CAAA,GAAG,IAAI,CAAI,GAAA,IAAA,CAAK,GAAI,CAAA,GAAG,IAAI,CAAA;AACpD,EAAA,MAAM,OAAU,GAAA,IAAA,CAAK,GAAI,CAAA,OAAA,EAAS,OAAO,CAAA;AAEzC,EAAI,IAAA,OAAA,GAAU,KAAY,OAAA,CAAA;AAC1B,EAAI,IAAA,OAAA,GAAU,MAAa,OAAA,EAAA;AAC3B,EAAI,IAAA,OAAA,GAAU,MAAa,OAAA,EAAA;AAC3B,EAAO,OAAA,EAAA;AACT;AAEO,SAAS,oBAAoB,IAAsB,EAAA;AACxD,EAAI,IAAA,IAAA,IAAQ,GAAU,OAAA,GAAA;AACtB,EAAI,IAAA,IAAA,IAAQ,IAAW,OAAA,GAAA;AACvB,EAAO,OAAA,GAAA;AACT;AAEO,SAAS,wBAAA,CACd,WACA,EAAA,UAAA,EACA,UACiB,EAAA;AACjB,EAAO,OAAA,WAAA,CAAY,MAAO,CAAA,CAAC,KAAU,KAAA;AACnC,IAAA,MAAM,OAAU,GAAA,IAAA,CAAK,GAAI,CAAA,KAAA,CAAM,MAAM,UAAU,CAAA;AAC/C,IAAA,MAAM,OAAU,GAAA,IAAA,CAAK,GAAI,CAAA,KAAA,CAAM,MAAM,UAAU,CAAA;AAC/C,IAAA,MAAM,WAAW,IAAK,CAAA,IAAA,CAAK,OAAU,GAAA,OAAA,GAAU,UAAU,OAAO,CAAA;AAChE,IAAA,OAAO,QAAW,GAAAC,4CAAA;AAAA,GACnB,CAAA;AACH;AAEO,SAAS,iBAAA,CACd,QACA,MACQ,EAAA;AACR,EAAA,MAAM,UAAU,IAAK,CAAA,GAAA,CAAI,MAAO,CAAA,GAAA,GAAM,OAAO,GAAG,CAAA;AAChD,EAAA,MAAM,UAAU,IAAK,CAAA,GAAA,CAAI,MAAO,CAAA,GAAA,GAAM,OAAO,GAAG,CAAA;AAChD,EAAA,OAAO,IAAK,CAAA,IAAA,CAAK,OAAU,GAAA,OAAA,GAAU,UAAU,OAAO,CAAA;AACxD","file":"chunk-DU5OQA67.cjs","sourcesContent":["import { CLUSTER_DISTANCE_THRESHOLD, DEFAULT_POSITION } from '@/components/ui/Map/constants'\nimport type { Coordinate, PinData } from '@/components/ui/Map/types'\n\nexport function getCenterForCoordinates<T = PinData>(coords: Coordinate<T>[]): Coordinate<T> {\n if (coords.length === 0) return DEFAULT_POSITION as Coordinate<T>\n\n const avgLat = coords.reduce((sum, coord) => sum + coord.lat, 0) / coords.length\n const avgLng = coords.reduce((sum, coord) => sum + coord.lng, 0) / coords.length\n\n return { lat: avgLat, lng: avgLng }\n}\n\nexport function getZoomForCoordinates<T = PinData>(\n coords: Coordinate<T>[],\n defaultZoom: number\n): number {\n if (coords.length <= 1) return defaultZoom\n\n const lats = coords.map((coord) => coord.lat)\n const lngs = coords.map((coord) => coord.lng)\n\n const latDiff = Math.max(...lats) - Math.min(...lats)\n const lngDiff = Math.max(...lngs) - Math.min(...lngs)\n const maxDiff = Math.max(latDiff, lngDiff)\n\n if (maxDiff > 0.1) return 8\n if (maxDiff > 0.05) return 10\n if (maxDiff > 0.01) return 12\n return 14\n}\n\nexport function getClusteringRadius(zoom: number): number {\n if (zoom <= 8) return 200\n if (zoom <= 12) return 150\n return 100\n}\n\nexport function filterClusterCoordinates<T = PinData>(\n coordinates: Coordinate<T>[],\n clusterLat: number,\n clusterLng: number\n): Coordinate<T>[] {\n return coordinates.filter((coord) => {\n const latDiff = Math.abs(coord.lat - clusterLat)\n const lngDiff = Math.abs(coord.lng - clusterLng)\n const distance = Math.sqrt(latDiff * latDiff + lngDiff * lngDiff)\n return distance < CLUSTER_DISTANCE_THRESHOLD\n })\n}\n\nexport function calculateDistance<T = PinData>(\n coord1: Coordinate<T>,\n coord2: Coordinate<T>\n): number {\n const latDiff = Math.abs(coord1.lat - coord2.lat)\n const lngDiff = Math.abs(coord1.lng - coord2.lng)\n return Math.sqrt(latDiff * latDiff + lngDiff * lngDiff)\n}\n"]}
|