@local-logic/sdks-app 1.24.39 → 1.24.40
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/assets/{Attribution-BZJo6XLr.js → Attribution-1Rs_lSaP.js} +2 -2
- package/dist/assets/{Attribution-BZJo6XLr.js.map → Attribution-1Rs_lSaP.js.map} +1 -1
- package/dist/assets/{Attribution-legacy-BfZKp_jr.js → Attribution-legacy-z2BjL7p0.js} +2 -2
- package/dist/assets/{Attribution-legacy-BfZKp_jr.js.map → Attribution-legacy-z2BjL7p0.js.map} +1 -1
- package/dist/assets/{Cluster-BHQcO6iC-legacy-CFFn8bZl.js → Cluster-BHQcO6iC-legacy-Bybijjfk.js} +2 -2
- package/dist/assets/{Cluster-BHQcO6iC-legacy-CFFn8bZl.js.map → Cluster-BHQcO6iC-legacy-Bybijjfk.js.map} +1 -1
- package/dist/assets/{Cluster-BHQcO6iC-iF9qeh5_.js → Cluster-BHQcO6iC-xa0oCXAy.js} +2 -2
- package/dist/assets/{Cluster-BHQcO6iC-iF9qeh5_.js.map → Cluster-BHQcO6iC-xa0oCXAy.js.map} +1 -1
- package/dist/assets/{Google-CH7a2yx--legacy-DFZKWqKn.js → Google-CH7a2yx--legacy-C6u2uwAw.js} +2 -2
- package/dist/assets/{Google-CH7a2yx--legacy-DFZKWqKn.js.map → Google-CH7a2yx--legacy-C6u2uwAw.js.map} +1 -1
- package/dist/assets/{Google-CH7a2yx--3wHRFLqZ.js → Google-CH7a2yx--ovYZ-h3M.js} +2 -2
- package/dist/assets/{Google-CH7a2yx--3wHRFLqZ.js.map → Google-CH7a2yx--ovYZ-h3M.js.map} +1 -1
- package/dist/assets/{Google-CXGCn-oJ-CXnMtwaZ.js → Google-CXGCn-oJ-BXFc5F9y.js} +2 -2
- package/dist/assets/{Google-CXGCn-oJ-CXnMtwaZ.js.map → Google-CXGCn-oJ-BXFc5F9y.js.map} +1 -1
- package/dist/assets/{Google-CXGCn-oJ-legacy-_JD4Pa4T.js → Google-CXGCn-oJ-legacy-Bv9lya5C.js} +2 -2
- package/dist/assets/{Google-CXGCn-oJ-legacy-_JD4Pa4T.js.map → Google-CXGCn-oJ-legacy-Bv9lya5C.js.map} +1 -1
- package/dist/assets/{Google-D1kMMDIv-DWK-9hcq.js → Google-D1kMMDIv-CyqUDjcJ.js} +2 -2
- package/dist/assets/{Google-D1kMMDIv-DWK-9hcq.js.map → Google-D1kMMDIv-CyqUDjcJ.js.map} +1 -1
- package/dist/assets/{Google-D1kMMDIv-legacy-BGKqFZkc.js → Google-D1kMMDIv-legacy-DKdnDC4w.js} +2 -2
- package/dist/assets/{Google-D1kMMDIv-legacy-BGKqFZkc.js.map → Google-D1kMMDIv-legacy-DKdnDC4w.js.map} +1 -1
- package/dist/assets/{Google-DScXSvYv-DaJocK7M.js → Google-DScXSvYv-CMLGBG91.js} +2 -2
- package/dist/assets/{Google-DScXSvYv-DaJocK7M.js.map → Google-DScXSvYv-CMLGBG91.js.map} +1 -1
- package/dist/assets/{Google-DScXSvYv-legacy-BssQjKYU.js → Google-DScXSvYv-legacy-BOwywVA7.js} +2 -2
- package/dist/assets/{Google-DScXSvYv-legacy-BssQjKYU.js.map → Google-DScXSvYv-legacy-BOwywVA7.js.map} +1 -1
- package/dist/assets/{Google-qvGtRAuh-DJPedSaG.js → Google-qvGtRAuh-PwpE9X2p.js} +2 -2
- package/dist/assets/{Google-qvGtRAuh-DJPedSaG.js.map → Google-qvGtRAuh-PwpE9X2p.js.map} +1 -1
- package/dist/assets/{Google-qvGtRAuh-legacy-D5rkGNsq.js → Google-qvGtRAuh-legacy-DzpIwQOn.js} +2 -2
- package/dist/assets/{Google-qvGtRAuh-legacy-D5rkGNsq.js.map → Google-qvGtRAuh-legacy-DzpIwQOn.js.map} +1 -1
- package/dist/assets/{GridGraph-Tb9r5WqU.js → GridGraph-BtocIeP6.js} +2 -2
- package/dist/assets/{GridGraph-Tb9r5WqU.js.map → GridGraph-BtocIeP6.js.map} +1 -1
- package/dist/assets/{GridGraph-legacy-BJdMBSEf.js → GridGraph-legacy-BjpzUUXY.js} +2 -2
- package/dist/assets/{GridGraph-legacy-BJdMBSEf.js.map → GridGraph-legacy-BjpzUUXY.js.map} +1 -1
- package/dist/assets/{LeadCapture-QkyFLnf_.js → LeadCapture-C6J4SFYX.js} +2 -2
- package/dist/assets/{LeadCapture-QkyFLnf_.js.map → LeadCapture-C6J4SFYX.js.map} +1 -1
- package/dist/assets/{LeadCapture-legacy-DUJGndBJ.js → LeadCapture-legacy-CvtD-JLs.js} +2 -2
- package/dist/assets/{LeadCapture-legacy-DUJGndBJ.js.map → LeadCapture-legacy-CvtD-JLs.js.map} +1 -1
- package/dist/assets/{LocalContent-CPmxknE1.js → LocalContent-D_By1RQx.js} +2 -2
- package/dist/assets/{LocalContent-CPmxknE1.js.map → LocalContent-D_By1RQx.js.map} +1 -1
- package/dist/assets/{LocalContent-legacy-BRrAQl-R.js → LocalContent-legacy-ySWyVUnO.js} +2 -2
- package/dist/assets/{LocalContent-legacy-BRrAQl-R.js.map → LocalContent-legacy-ySWyVUnO.js.map} +1 -1
- package/dist/assets/{LocalDemographics-DoYRjheI.js → LocalDemographics-DJ2-OAQf.js} +2 -2
- package/dist/assets/{LocalDemographics-DoYRjheI.js.map → LocalDemographics-DJ2-OAQf.js.map} +1 -1
- package/dist/assets/{LocalDemographics-legacy-DlEk4ZPh.js → LocalDemographics-legacy-BdndzMcL.js} +2 -2
- package/dist/assets/{LocalDemographics-legacy-DlEk4ZPh.js.map → LocalDemographics-legacy-BdndzMcL.js.map} +1 -1
- package/dist/assets/{Mapbox-B7oionsm-legacy-CthokNte.js → Mapbox-B7oionsm-legacy-DbFnvW90.js} +2 -2
- package/dist/assets/{Mapbox-B7oionsm-legacy-CthokNte.js.map → Mapbox-B7oionsm-legacy-DbFnvW90.js.map} +1 -1
- package/dist/assets/{Mapbox-B7oionsm-Bti3i9dQ.js → Mapbox-B7oionsm-uR5IXeyy.js} +2 -2
- package/dist/assets/{Mapbox-B7oionsm-Bti3i9dQ.js.map → Mapbox-B7oionsm-uR5IXeyy.js.map} +1 -1
- package/dist/assets/{Mapbox-CIislOVu-DtzRCIrG.js → Mapbox-CIislOVu-_SCNyNvm.js} +2 -2
- package/dist/assets/{Mapbox-CIislOVu-DtzRCIrG.js.map → Mapbox-CIislOVu-_SCNyNvm.js.map} +1 -1
- package/dist/assets/{Mapbox-CIislOVu-legacy-DIGoj72K.js → Mapbox-CIislOVu-legacy-BFRdB1ZB.js} +2 -2
- package/dist/assets/{Mapbox-CIislOVu-legacy-DIGoj72K.js.map → Mapbox-CIislOVu-legacy-BFRdB1ZB.js.map} +1 -1
- package/dist/assets/{Mapbox-DDJ1gHRb-CuedRSZq.js → Mapbox-DDJ1gHRb-DEMJ-azB.js} +2 -2
- package/dist/assets/{Mapbox-DDJ1gHRb-CuedRSZq.js.map → Mapbox-DDJ1gHRb-DEMJ-azB.js.map} +1 -1
- package/dist/assets/{Mapbox-DDJ1gHRb-legacy-CW_kiJxl.js → Mapbox-DDJ1gHRb-legacy-FX0OT-av.js} +2 -2
- package/dist/assets/{Mapbox-DDJ1gHRb-legacy-CW_kiJxl.js.map → Mapbox-DDJ1gHRb-legacy-FX0OT-av.js.map} +1 -1
- package/dist/assets/{Mapbox-DtZmt1D_-vfqyqnh7.js → Mapbox-DtZmt1D_-CylJOr0s.js} +2 -2
- package/dist/assets/{Mapbox-DtZmt1D_-vfqyqnh7.js.map → Mapbox-DtZmt1D_-CylJOr0s.js.map} +1 -1
- package/dist/assets/{Mapbox-DtZmt1D_-legacy-Dx5bB72j.js → Mapbox-DtZmt1D_-legacy-CEf_t8Ho.js} +2 -2
- package/dist/assets/{Mapbox-DtZmt1D_-legacy-Dx5bB72j.js.map → Mapbox-DtZmt1D_-legacy-CEf_t8Ho.js.map} +1 -1
- package/dist/assets/{Mapbox-vp91lH9I-CAs_0sfe.js → Mapbox-vp91lH9I-2azJqyBH.js} +2 -2
- package/dist/assets/{Mapbox-vp91lH9I-CAs_0sfe.js.map → Mapbox-vp91lH9I-2azJqyBH.js.map} +1 -1
- package/dist/assets/{Mapbox-vp91lH9I-legacy-BgoomLp_.js → Mapbox-vp91lH9I-legacy-DPw2IdjJ.js} +2 -2
- package/dist/assets/{Mapbox-vp91lH9I-legacy-BgoomLp_.js.map → Mapbox-vp91lH9I-legacy-DPw2IdjJ.js.map} +1 -1
- package/dist/assets/{Maptiler-BQliPE7n-B7ARszoA.js → Maptiler-BQliPE7n-fHYr_Sy8.js} +2 -2
- package/dist/assets/{Maptiler-BQliPE7n-B7ARszoA.js.map → Maptiler-BQliPE7n-fHYr_Sy8.js.map} +1 -1
- package/dist/assets/{Maptiler-BQliPE7n-legacy-DcuCwh0v.js → Maptiler-BQliPE7n-legacy-eo7KI-_O.js} +2 -2
- package/dist/assets/{Maptiler-BQliPE7n-legacy-DcuCwh0v.js.map → Maptiler-BQliPE7n-legacy-eo7KI-_O.js.map} +1 -1
- package/dist/assets/{Maptiler-BtYYeJoo-WES9jrq_.js → Maptiler-BtYYeJoo-CTmdD2ZG.js} +2 -2
- package/dist/assets/{Maptiler-BtYYeJoo-WES9jrq_.js.map → Maptiler-BtYYeJoo-CTmdD2ZG.js.map} +1 -1
- package/dist/assets/{Maptiler-BtYYeJoo-legacy-CNWE4X_k.js → Maptiler-BtYYeJoo-legacy-3OoLRcAt.js} +2 -2
- package/dist/assets/{Maptiler-BtYYeJoo-legacy-CNWE4X_k.js.map → Maptiler-BtYYeJoo-legacy-3OoLRcAt.js.map} +1 -1
- package/dist/assets/{Maptiler-Cy2r6w4G-jxWC3gGH.js → Maptiler-Cy2r6w4G-CP-nhmYn.js} +2 -2
- package/dist/assets/{Maptiler-Cy2r6w4G-jxWC3gGH.js.map → Maptiler-Cy2r6w4G-CP-nhmYn.js.map} +1 -1
- package/dist/assets/{Maptiler-Cy2r6w4G-legacy-COhxgGfE.js → Maptiler-Cy2r6w4G-legacy-ZYpf9l6D.js} +2 -2
- package/dist/assets/{Maptiler-Cy2r6w4G-legacy-COhxgGfE.js.map → Maptiler-Cy2r6w4G-legacy-ZYpf9l6D.js.map} +1 -1
- package/dist/assets/{Maptiler-DJScKW8p-ILy8OFKG.js → Maptiler-DJScKW8p-Crd7Z6cV.js} +2 -2
- package/dist/assets/{Maptiler-DJScKW8p-ILy8OFKG.js.map → Maptiler-DJScKW8p-Crd7Z6cV.js.map} +1 -1
- package/dist/assets/{Maptiler-DJScKW8p-legacy-C-co5LEf.js → Maptiler-DJScKW8p-legacy-CtCw_AMy.js} +2 -2
- package/dist/assets/{Maptiler-DJScKW8p-legacy-C-co5LEf.js.map → Maptiler-DJScKW8p-legacy-CtCw_AMy.js.map} +1 -1
- package/dist/assets/{Maptiler-DqeshLom-BOdQvZVO.js → Maptiler-DqeshLom-CrkvMF_T.js} +2 -2
- package/dist/assets/{Maptiler-DqeshLom-BOdQvZVO.js.map → Maptiler-DqeshLom-CrkvMF_T.js.map} +1 -1
- package/dist/assets/{Maptiler-DqeshLom-legacy-CFQFxJw-.js → Maptiler-DqeshLom-legacy-DDfM5Hzg.js} +2 -2
- package/dist/assets/{Maptiler-DqeshLom-legacy-CFQFxJw-.js.map → Maptiler-DqeshLom-legacy-DDfM5Hzg.js.map} +1 -1
- package/dist/assets/{MarkerIcon-Bc3X9WQk-L8yQjJbr.js → MarkerIcon-Bc3X9WQk-MIM92a-D.js} +2 -2
- package/dist/assets/{MarkerIcon-Bc3X9WQk-L8yQjJbr.js.map → MarkerIcon-Bc3X9WQk-MIM92a-D.js.map} +1 -1
- package/dist/assets/{MarkerIcon-Bc3X9WQk-legacy-DUAfU9AS.js → MarkerIcon-Bc3X9WQk-legacy-Df6-FiGi.js} +2 -2
- package/dist/assets/{MarkerIcon-Bc3X9WQk-legacy-DUAfU9AS.js.map → MarkerIcon-Bc3X9WQk-legacy-Df6-FiGi.js.map} +1 -1
- package/dist/assets/{NeighborhoodCard-legacy-WZvnt_0B.js → NeighborhoodCard-legacy-DFcfelXl.js} +2 -2
- package/dist/assets/{NeighborhoodCard-legacy-WZvnt_0B.js.map → NeighborhoodCard-legacy-DFcfelXl.js.map} +1 -1
- package/dist/assets/{NeighborhoodCard-CspcUBzi.js → NeighborhoodCard-vYnzmXHM.js} +2 -2
- package/dist/assets/{NeighborhoodCard-CspcUBzi.js.map → NeighborhoodCard-vYnzmXHM.js.map} +1 -1
- package/dist/assets/{NeighborhoodCharacteristics-HffngCxm.js → NeighborhoodCharacteristics-CKDqcqBD.js} +2 -2
- package/dist/assets/{NeighborhoodCharacteristics-HffngCxm.js.map → NeighborhoodCharacteristics-CKDqcqBD.js.map} +1 -1
- package/dist/assets/{NeighborhoodCharacteristics-legacy-DIVxCNYX.js → NeighborhoodCharacteristics-legacy-CLa_SgDg.js} +2 -2
- package/dist/assets/{NeighborhoodCharacteristics-legacy-DIVxCNYX.js.map → NeighborhoodCharacteristics-legacy-CLa_SgDg.js.map} +1 -1
- package/dist/assets/{NeighborhoodDemographics-CxIpWVnb.js → NeighborhoodDemographics-9bIYm41b.js} +2 -2
- package/dist/assets/{NeighborhoodDemographics-CxIpWVnb.js.map → NeighborhoodDemographics-9bIYm41b.js.map} +1 -1
- package/dist/assets/{NeighborhoodDemographics-legacy-vex0EXld.js → NeighborhoodDemographics-legacy-CS8oTDkw.js} +2 -2
- package/dist/assets/{NeighborhoodDemographics-legacy-vex0EXld.js.map → NeighborhoodDemographics-legacy-CS8oTDkw.js.map} +1 -1
- package/dist/assets/{NeighborhoodFeatured-Bu1DrNnA.js → NeighborhoodFeatured-CqLcXNVj.js} +2 -2
- package/dist/assets/{NeighborhoodFeatured-Bu1DrNnA.js.map → NeighborhoodFeatured-CqLcXNVj.js.map} +1 -1
- package/dist/assets/{NeighborhoodFeatured-legacy-_fb6iGnR.js → NeighborhoodFeatured-legacy-CUYFzaci.js} +2 -2
- package/dist/assets/{NeighborhoodFeatured-legacy-_fb6iGnR.js.map → NeighborhoodFeatured-legacy-CUYFzaci.js.map} +1 -1
- package/dist/assets/{NeighborhoodHero-Cj8UoSlQ.js → NeighborhoodHero-CvvE1ltz.js} +2 -2
- package/dist/assets/{NeighborhoodHero-Cj8UoSlQ.js.map → NeighborhoodHero-CvvE1ltz.js.map} +1 -1
- package/dist/assets/{NeighborhoodHero-legacy-CZa7K7hP.js → NeighborhoodHero-legacy-D1mVa22Q.js} +2 -2
- package/dist/assets/{NeighborhoodHero-legacy-CZa7K7hP.js.map → NeighborhoodHero-legacy-D1mVa22Q.js.map} +1 -1
- package/dist/assets/{NeighborhoodHighlights-BhmiFgqL.js → NeighborhoodHighlights-CZPdH88M.js} +2 -2
- package/dist/assets/{NeighborhoodHighlights-BhmiFgqL.js.map → NeighborhoodHighlights-CZPdH88M.js.map} +1 -1
- package/dist/assets/{NeighborhoodHighlights-legacy-CRAA2b2s.js → NeighborhoodHighlights-legacy-D9U7NrXB.js} +2 -2
- package/dist/assets/{NeighborhoodHighlights-legacy-CRAA2b2s.js.map → NeighborhoodHighlights-legacy-D9U7NrXB.js.map} +1 -1
- package/dist/assets/{NeighborhoodMap-BnSbDjAD.js → NeighborhoodMap-CW5YonYt.js} +2 -2
- package/dist/assets/{NeighborhoodMap-BnSbDjAD.js.map → NeighborhoodMap-CW5YonYt.js.map} +1 -1
- package/dist/assets/{NeighborhoodMap-legacy-DsJR-_Ib.js → NeighborhoodMap-legacy-DJc98Olx.js} +2 -2
- package/dist/assets/{NeighborhoodMap-legacy-DsJR-_Ib.js.map → NeighborhoodMap-legacy-DJc98Olx.js.map} +1 -1
- package/dist/assets/{NeighborhoodMarketTrends-Cb_jS4T-.js → NeighborhoodMarketTrends-C9k7JehA.js} +3 -3
- package/dist/assets/{NeighborhoodMarketTrends-Cb_jS4T-.js.map → NeighborhoodMarketTrends-C9k7JehA.js.map} +1 -1
- package/dist/assets/{NeighborhoodMarketTrends-legacy-CbHN8M1x.js → NeighborhoodMarketTrends-legacy-2bMV1Qzk.js} +2 -2
- package/dist/assets/{NeighborhoodMarketTrends-legacy-CbHN8M1x.js.map → NeighborhoodMarketTrends-legacy-2bMV1Qzk.js.map} +1 -1
- package/dist/assets/{NeighborhoodMatch-CjzFnYBt.js → NeighborhoodMatch-D1Ih_N5y.js} +2 -2
- package/dist/assets/{NeighborhoodMatch-CjzFnYBt.js.map → NeighborhoodMatch-D1Ih_N5y.js.map} +1 -1
- package/dist/assets/{NeighborhoodMatch-legacy-Cki-459P.js → NeighborhoodMatch-legacy-JIbRT5P5.js} +2 -2
- package/dist/assets/{NeighborhoodMatch-legacy-Cki-459P.js.map → NeighborhoodMatch-legacy-JIbRT5P5.js.map} +1 -1
- package/dist/assets/{NeighborhoodPropertyValueDrivers-DE9yCMMy.js → NeighborhoodPropertyValueDrivers-BZqsNnYY.js} +2 -2
- package/dist/assets/{NeighborhoodPropertyValueDrivers-DE9yCMMy.js.map → NeighborhoodPropertyValueDrivers-BZqsNnYY.js.map} +1 -1
- package/dist/assets/{NeighborhoodPropertyValueDrivers-legacy-BDGnpUrH.js → NeighborhoodPropertyValueDrivers-legacy-DFZzKasL.js} +2 -2
- package/dist/assets/{NeighborhoodPropertyValueDrivers-legacy-BDGnpUrH.js.map → NeighborhoodPropertyValueDrivers-legacy-DFZzKasL.js.map} +1 -1
- package/dist/assets/{NeighborhoodSchools-legacy-Bt9eSjXU.js → NeighborhoodSchools-legacy-DZvrq0M0.js} +2 -2
- package/dist/assets/{NeighborhoodSchools-legacy-Bt9eSjXU.js.map → NeighborhoodSchools-legacy-DZvrq0M0.js.map} +1 -1
- package/dist/assets/{NeighborhoodSchools-DftPMblM.js → NeighborhoodSchools-vdqXmI6x.js} +2 -2
- package/dist/assets/{NeighborhoodSchools-DftPMblM.js.map → NeighborhoodSchools-vdqXmI6x.js.map} +1 -1
- package/dist/assets/{NeighborhoodShowcase-D7hHBYLI.js → NeighborhoodShowcase-IMXpKRt7.js} +2 -2
- package/dist/assets/{NeighborhoodShowcase-D7hHBYLI.js.map → NeighborhoodShowcase-IMXpKRt7.js.map} +1 -1
- package/dist/assets/{NeighborhoodShowcase-legacy-Ch3_MLRd.js → NeighborhoodShowcase-legacy-DsybUJu-.js} +2 -2
- package/dist/assets/{NeighborhoodShowcase-legacy-Ch3_MLRd.js.map → NeighborhoodShowcase-legacy-DsybUJu-.js.map} +1 -1
- package/dist/assets/{NoDataContent-BnqODeIj.js → NoDataContent-C0rYoHx-.js} +2 -2
- package/dist/assets/{NoDataContent-BnqODeIj.js.map → NoDataContent-C0rYoHx-.js.map} +1 -1
- package/dist/assets/{NoDataContent-legacy-AbG_5zRB.js → NoDataContent-legacy-KJTrIi_f.js} +2 -2
- package/dist/assets/{NoDataContent-legacy-AbG_5zRB.js.map → NoDataContent-legacy-KJTrIi_f.js.map} +1 -1
- package/dist/assets/{ResizeWrapper-B0ve6-E-.js → ResizeWrapper-C7FI0ut2.js} +2 -2
- package/dist/assets/{ResizeWrapper-B0ve6-E-.js.map → ResizeWrapper-C7FI0ut2.js.map} +1 -1
- package/dist/assets/{ResizeWrapper-legacy-DYQ5wMxT.js → ResizeWrapper-legacy-CxGgsSO0.js} +2 -2
- package/dist/assets/{ResizeWrapper-legacy-DYQ5wMxT.js.map → ResizeWrapper-legacy-CxGgsSO0.js.map} +1 -1
- package/dist/assets/{ScoreCardList-HkJ6lHt-.js → ScoreCardList-Cpdc2cjx.js} +2 -2
- package/dist/assets/{ScoreCardList-HkJ6lHt-.js.map → ScoreCardList-Cpdc2cjx.js.map} +1 -1
- package/dist/assets/{ScoreCardList-legacy-CzPnAXtg.js → ScoreCardList-legacy-CEYUmBc-.js} +2 -2
- package/dist/assets/{ScoreCardList-legacy-CzPnAXtg.js.map → ScoreCardList-legacy-CEYUmBc-.js.map} +1 -1
- package/dist/assets/{ScoreIcon-legacy-CtP7dMZz.js → ScoreIcon-legacy-DkcfBQiQ.js} +2 -2
- package/dist/assets/{ScoreIcon-legacy-CtP7dMZz.js.map → ScoreIcon-legacy-DkcfBQiQ.js.map} +1 -1
- package/dist/assets/{ScoreIcon-CzsXV_UW.js → ScoreIcon-t1E2TT1n.js} +2 -2
- package/dist/assets/{ScoreIcon-CzsXV_UW.js.map → ScoreIcon-t1E2TT1n.js.map} +1 -1
- package/dist/assets/{Testing--n5Ro0Ek-DqcApoud.js → Testing--n5Ro0Ek-BsPetIU5.js} +2 -2
- package/dist/assets/{Testing--n5Ro0Ek-DqcApoud.js.map → Testing--n5Ro0Ek-BsPetIU5.js.map} +1 -1
- package/dist/assets/{Testing--n5Ro0Ek-legacy-icxJIi6L.js → Testing--n5Ro0Ek-legacy-CsbvD4x2.js} +2 -2
- package/dist/assets/{Testing--n5Ro0Ek-legacy-icxJIi6L.js.map → Testing--n5Ro0Ek-legacy-CsbvD4x2.js.map} +1 -1
- package/dist/assets/{Testing-BNJwzbRK-ClqjNB8Z.js → Testing-BNJwzbRK-BEmMvKs-.js} +2 -2
- package/dist/assets/{Testing-BNJwzbRK-ClqjNB8Z.js.map → Testing-BNJwzbRK-BEmMvKs-.js.map} +1 -1
- package/dist/assets/{Testing-BNJwzbRK-legacy-AsNVfvV3.js → Testing-BNJwzbRK-legacy-CyJlRp16.js} +2 -2
- package/dist/assets/{Testing-BNJwzbRK-legacy-AsNVfvV3.js.map → Testing-BNJwzbRK-legacy-CyJlRp16.js.map} +1 -1
- package/dist/assets/{Testing-CoRLhmNT-DJceXLmB.js → Testing-CoRLhmNT-CPD-TUoo.js} +2 -2
- package/dist/assets/{Testing-CoRLhmNT-DJceXLmB.js.map → Testing-CoRLhmNT-CPD-TUoo.js.map} +1 -1
- package/dist/assets/{Testing-CoRLhmNT-legacy-DKUu-vde.js → Testing-CoRLhmNT-legacy-DfgW_o9l.js} +2 -2
- package/dist/assets/{Testing-CoRLhmNT-legacy-DKUu-vde.js.map → Testing-CoRLhmNT-legacy-DfgW_o9l.js.map} +1 -1
- package/dist/assets/{Testing-DGUeGxdc-jAggTLLh.js → Testing-DGUeGxdc-BdjxCDn4.js} +2 -2
- package/dist/assets/{Testing-DGUeGxdc-jAggTLLh.js.map → Testing-DGUeGxdc-BdjxCDn4.js.map} +1 -1
- package/dist/assets/{Testing-DGUeGxdc-legacy-txrl8G8G.js → Testing-DGUeGxdc-legacy-BMmCiaA9.js} +2 -2
- package/dist/assets/{Testing-DGUeGxdc-legacy-txrl8G8G.js.map → Testing-DGUeGxdc-legacy-BMmCiaA9.js.map} +1 -1
- package/dist/assets/{Testing-DzWAcbhL-gBDb3TPR.js → Testing-DzWAcbhL-D9IV0vyX.js} +2 -2
- package/dist/assets/{Testing-DzWAcbhL-gBDb3TPR.js.map → Testing-DzWAcbhL-D9IV0vyX.js.map} +1 -1
- package/dist/assets/{Testing-DzWAcbhL-legacy-Bz1ufOmE.js → Testing-DzWAcbhL-legacy-ByYDbJ2R.js} +2 -2
- package/dist/assets/{Testing-DzWAcbhL-legacy-Bz1ufOmE.js.map → Testing-DzWAcbhL-legacy-ByYDbJ2R.js.map} +1 -1
- package/dist/assets/{TitleHeader-BOwe_Hxw.js → TitleHeader-D5FOkV2k.js} +2 -2
- package/dist/assets/{TitleHeader-BOwe_Hxw.js.map → TitleHeader-D5FOkV2k.js.map} +1 -1
- package/dist/assets/{TitleHeader-legacy-Yq0pKMwQ.js → TitleHeader-legacy-BLb6gLY8.js} +2 -2
- package/dist/assets/{TitleHeader-legacy-Yq0pKMwQ.js.map → TitleHeader-legacy-BLb6gLY8.js.map} +1 -1
- package/dist/assets/{Trans-B3x1rhQP.js → Trans-D7Lw95-5.js} +2 -2
- package/dist/assets/{Trans-B3x1rhQP.js.map → Trans-D7Lw95-5.js.map} +1 -1
- package/dist/assets/{Trans-legacy-BpEZmEBR.js → Trans-legacy-CpzDXXlm.js} +2 -2
- package/dist/assets/{Trans-legacy-BpEZmEBR.js.map → Trans-legacy-CpzDXXlm.js.map} +1 -1
- package/dist/assets/{ValidateOptions-BoIx00p6.js → ValidateOptions-DO60DBsp.js} +2 -2
- package/dist/assets/{ValidateOptions-BoIx00p6.js.map → ValidateOptions-DO60DBsp.js.map} +1 -1
- package/dist/assets/{ValidateOptions-legacy-5tqMuOby.js → ValidateOptions-legacy-3q4kbk3m.js} +2 -2
- package/dist/assets/{ValidateOptions-legacy-5tqMuOby.js.map → ValidateOptions-legacy-3q4kbk3m.js.map} +1 -1
- package/dist/assets/{dist-DFMrEPsn.js → dist-DR7fC17q.js} +2 -2
- package/dist/assets/{dist-DFMrEPsn.js.map → dist-DR7fC17q.js.map} +1 -1
- package/dist/assets/{dist-legacy-bgie6J-I.js → dist-legacy-cfZE5xAd.js} +2 -2
- package/dist/assets/{dist-legacy-bgie6J-I.js.map → dist-legacy-cfZE5xAd.js.map} +1 -1
- package/dist/assets/{getMapProviderConfig-1qf7M196.js → getMapProviderConfig-CioaIqLl.js} +3 -3
- package/dist/assets/{getMapProviderConfig-1qf7M196.js.map → getMapProviderConfig-CioaIqLl.js.map} +1 -1
- package/dist/assets/{getMapProviderConfig-legacy-D8K_GpbB.js → getMapProviderConfig-legacy-Bvhnps7J.js} +2 -2
- package/dist/assets/{getMapProviderConfig-legacy-D8K_GpbB.js.map → getMapProviderConfig-legacy-Bvhnps7J.js.map} +1 -1
- package/dist/assets/index-Bs6_tEDn.js +3 -0
- package/dist/assets/index-Bs6_tEDn.js.map +1 -0
- package/dist/assets/index-legacy-4jEyS75d.js +2 -0
- package/dist/assets/index-legacy-4jEyS75d.js.map +1 -0
- package/dist/assets/{index.es-L77mCMKI.js → index.es-DqsbUu3C.js} +2 -2
- package/dist/assets/{index.es-L77mCMKI.js.map → index.es-DqsbUu3C.js.map} +1 -1
- package/dist/assets/{index.es-legacy-DCXU9yWo.js → index.es-legacy-D0YewKKM.js} +2 -2
- package/dist/assets/{index.es-legacy-DCXU9yWo.js.map → index.es-legacy-D0YewKKM.js.map} +1 -1
- package/dist/assets/{mapbox-jb8Zev6T-BlcXJqNS.js → mapbox-jb8Zev6T-C9a-fLxp.js} +2 -2
- package/dist/assets/{mapbox-jb8Zev6T-BlcXJqNS.js.map → mapbox-jb8Zev6T-C9a-fLxp.js.map} +1 -1
- package/dist/assets/{mapbox-jb8Zev6T-legacy-5YjFAABq.js → mapbox-jb8Zev6T-legacy-C5JRCz3k.js} +2 -2
- package/dist/assets/{mapbox-jb8Zev6T-legacy-5YjFAABq.js.map → mapbox-jb8Zev6T-legacy-C5JRCz3k.js.map} +1 -1
- package/dist/assets/{maplibre-CUYkxr-D-DrCn-oAI.js → maplibre-CUYkxr-D-DB5uPmy7.js} +2 -2
- package/dist/assets/{maplibre-CUYkxr-D-DrCn-oAI.js.map → maplibre-CUYkxr-D-DB5uPmy7.js.map} +1 -1
- package/dist/assets/{maplibre-CUYkxr-D-legacy-CYB3Kihw.js → maplibre-CUYkxr-D-legacy-BrYegJJb.js} +2 -2
- package/dist/assets/{maplibre-CUYkxr-D-legacy-CYB3Kihw.js.map → maplibre-CUYkxr-D-legacy-BrYegJJb.js.map} +1 -1
- package/dist/assets/neighborhood-fallback-CizB5oi9.js.map +1 -1
- package/dist/assets/neighborhood-fallback-legacy-Bu1BwGpC.js.map +1 -1
- package/dist/assets/{sdks-LPZZCGgD.js → sdks-BLrYTJCI.js} +2 -2
- package/dist/assets/{sdks-LPZZCGgD.js.map → sdks-BLrYTJCI.js.map} +1 -1
- package/dist/assets/{sdks-legacy-CedyQdYU.js → sdks-legacy-BKNGokn5.js} +2 -2
- package/dist/assets/{sdks-legacy-CedyQdYU.js.map → sdks-legacy-BKNGokn5.js.map} +1 -1
- package/dist/assets/{useDemographicsData-BVysiSHi.js → useDemographicsData-C0C4upsm.js} +2 -2
- package/dist/assets/{useDemographicsData-BVysiSHi.js.map → useDemographicsData-C0C4upsm.js.map} +1 -1
- package/dist/assets/{useDemographicsData-legacy-CxtMmefE.js → useDemographicsData-legacy-DPnr3Jmh.js} +2 -2
- package/dist/assets/{useDemographicsData-legacy-CxtMmefE.js.map → useDemographicsData-legacy-DPnr3Jmh.js.map} +1 -1
- package/dist/assets/{useGeographies-Dwh65ZNv.js → useGeographies-Dsip5TUe.js} +2 -2
- package/dist/assets/{useGeographies-Dwh65ZNv.js.map → useGeographies-Dsip5TUe.js.map} +1 -1
- package/dist/assets/{useGeographies-legacy-C1KaCkDe.js → useGeographies-legacy-CZm4sQ-W.js} +2 -2
- package/dist/assets/{useGeographies-legacy-C1KaCkDe.js.map → useGeographies-legacy-CZm4sQ-W.js.map} +1 -1
- package/dist/assets/{useIsMobile-D0ute0_2.js → useIsMobile-D1ppstVc.js} +2 -2
- package/dist/assets/{useIsMobile-D0ute0_2.js.map → useIsMobile-D1ppstVc.js.map} +1 -1
- package/dist/assets/{useIsMobile-legacy-BoD5Raet.js → useIsMobile-legacy-BCGf3xRg.js} +2 -2
- package/dist/assets/{useIsMobile-legacy-BoD5Raet.js.map → useIsMobile-legacy-BCGf3xRg.js.map} +1 -1
- package/dist/assets/{useLocation-legacy-UxSoaQ23.js → useLocation-legacy-CrONniQb.js} +2 -2
- package/dist/assets/{useLocation-legacy-UxSoaQ23.js.map → useLocation-legacy-CrONniQb.js.map} +1 -1
- package/dist/assets/{useLocation-BvPxZ2EB.js → useLocation-woeqoUC-.js} +2 -2
- package/dist/assets/{useLocation-BvPxZ2EB.js.map → useLocation-woeqoUC-.js.map} +1 -1
- package/dist/assets/{useProfiles-8Ts7IxaF.js → useProfiles-BD0axzG_.js} +2 -2
- package/dist/assets/{useProfiles-8Ts7IxaF.js.map → useProfiles-BD0axzG_.js.map} +1 -1
- package/dist/assets/{useProfiles-legacy-CXE2gbpF.js → useProfiles-legacy-xMXLwJ8a.js} +2 -2
- package/dist/assets/{useProfiles-legacy-CXE2gbpF.js.map → useProfiles-legacy-xMXLwJ8a.js.map} +1 -1
- package/dist/assets/{useSchools-Du8flig0.js → useSchools-Bp4ifAPV.js} +2 -2
- package/dist/assets/{useSchools-Du8flig0.js.map → useSchools-Bp4ifAPV.js.map} +1 -1
- package/dist/assets/{useSchools-legacy-CqpKyT0D.js → useSchools-legacy-CBF47OQq.js} +2 -2
- package/dist/assets/{useSchools-legacy-CqpKyT0D.js.map → useSchools-legacy-CBF47OQq.js.map} +1 -1
- package/dist/assets/{useScores-sXwU61au.js → useScores-C3u-1G5Q.js} +2 -2
- package/dist/assets/{useScores-sXwU61au.js.map → useScores-C3u-1G5Q.js.map} +1 -1
- package/dist/assets/{useScores-legacy-DD_ol9qX.js → useScores-legacy-DlQbFEJD.js} +2 -2
- package/dist/assets/{useScores-legacy-DD_ol9qX.js.map → useScores-legacy-DlQbFEJD.js.map} +1 -1
- package/dist/index.html +2 -2
- package/dist/types/App.d.ts.map +1 -1
- package/dist/types/App.js +0 -18
- package/dist/types/App.js.map +1 -1
- package/dist/types/utils/errorTracker/index.d.ts.map +1 -1
- package/dist/types/utils/errorTracker/index.js +55 -6
- package/dist/types/utils/errorTracker/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/assets/index-BJuTCMET.js +0 -3
- package/dist/assets/index-BJuTCMET.js.map +0 -1
- package/dist/assets/index-legacy-kyEaSclL.js +0 -2
- package/dist/assets/index-legacy-kyEaSclL.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalContent-CPmxknE1.js","names":["e","a","e","a","e","o","a","f","o","a","m","n","a","s","t","t","n","r","e","i","c"],"sources":["../../../../node_modules/@phosphor-icons/react/dist/defs/CaretDoubleLeft.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/CaretUp.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/Confetti.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/Equals.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/PencilRuler.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/ShoppingCart.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/TrafficSign.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/CaretDoubleLeft.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/CaretUp.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/Confetti.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/Equals.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/PencilRuler.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/ShoppingCart.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/TrafficSign.es.js","../../src/sdks/LocalContent/components/Header/styles.ts","../../src/sdks/LocalContent/utils/transformScoresMenuData/index.ts","../../src/sdks/LocalContent/utils/getPOICategoriesWithAvailableData/index.ts","../../src/sdks/LocalContent/constants.ts","../../src/sdks/LocalContent/utils/orderPOICategories/index.ts","../../src/sdks/LocalContent/types.ts","../../src/sdks/LocalContent/hooks/useScoreSelection/utils/transformScoresAPIResponse/index.ts","../../src/sdks/LocalContent/hooks/useScoreSelection/index.ts","../../src/sdks/LocalContent/hooks/useCommute/index.ts","../../src/sdks/LocalContent/hooks/useSurveyTrigger/session/index.ts","../../src/sdks/LocalContent/hooks/useSurveyTrigger/SurveyTriggerProvider/index.tsx","../../src/sdks/LocalContent/hooks/useSurveyTrigger/index.ts","../../src/sdks/LocalContent/context.tsx","../../src/sdks/LocalContent/components/Header/index.tsx","../../../../node_modules/@typeform/embed-react/build/index.js","../../src/sdks/LocalContent/components/Survey/styles.ts","../../src/sdks/LocalContent/components/Survey/index.tsx","../../src/sdks/LocalContent/components/Map/Layers/index.tsx","../../src/sdks/LocalContent/components/Map/Markers/index.tsx","../../src/sdks/LocalContent/components/Map/CenterPin/styles.ts","../../src/sdks/LocalContent/components/Map/CenterPin/index.tsx","../../src/sdks/LocalContent/components/Map/Popup/Commute/styles.ts","../../src/sdks/LocalContent/components/Map/Popup/Commute/index.tsx","../../src/sdks/LocalContent/components/Map/Popup/index.tsx","../../src/sdks/LocalContent/components/Map/styles.ts","../../src/sdks/LocalContent/components/Map/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/context.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Content/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Content/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Header/Title/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Header/Title/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Header/CloseButton/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Header/CloseButton/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Header/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Header/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Category/styles.ts","../../src/sdks/LocalContent/components/CategoryTitle/styles.ts","../../src/sdks/LocalContent/components/CategoryTitle/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Category/index.tsx","../../src/sdks/LocalContent/components/ItemButton/styles.ts","../../src/sdks/LocalContent/components/ItemButton/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Score/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/ScoreDetails/styles.ts","../../src/sdks/LocalContent/components/ScoreComparison/ValueIndicator/styles.ts","../../src/sdks/LocalContent/components/ScoreComparison/ValueIndicator/index.tsx","../../src/sdks/LocalContent/components/ScoreComparison/styles.ts","../../src/sdks/LocalContent/components/ScoreComparison/index.tsx","../../src/sdks/LocalContent/components/ScoreText/styles.ts","../../src/sdks/LocalContent/components/ScoreText/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/Loading/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/Loading/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/Subcategories/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/Subcategories/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/List/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/List/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/index.tsx","../../src/sdks/LocalContent/components/Score/styles.ts","../../src/sdks/LocalContent/components/ScoreValue/styles.ts","../../src/sdks/LocalContent/components/ScoreValue/index.tsx","../../src/sdks/LocalContent/components/Score/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/ScoreDetails/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Slider/styles.ts","../../src/sdks/LocalContent/components/Slider/styles.ts","../../src/sdks/LocalContent/components/Slider/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Slider/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/index.tsx","../../src/sdks/LocalContent/components/ScoresPillList/styles.ts","../../src/sdks/LocalContent/components/ScoresPillList/index.tsx","../../src/sdks/LocalContent/components/BottomSlider/Header/styles.ts","../../src/sdks/LocalContent/components/BottomSlider/Header/index.tsx","../../src/sdks/LocalContent/components/BottomSlider/styles.ts","../../src/sdks/LocalContent/components/BottomSlider/index.tsx","../../src/sdks/LocalContent/components/ScoreDetailsSlider/styles.ts","../../src/sdks/LocalContent/components/ScoreDetailsSlider/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/context.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Trigger/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Trigger/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Card/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Card/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Slider/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Route/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Route/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/NoRoute/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/NoRoute/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Select/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Select/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/styles.ts","../../src/utils/formatters/textWithHighlighting.tsx","../../src/sdks/LocalContent/hooks/useAddressSearch/transformSuggestionsResponse/index.ts","../../src/sdks/LocalContent/hooks/useAddressSearch/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Header/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Header/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/index.tsx","../../src/sdks/LocalContent/components/Content/styles.ts","../../src/sdks/LocalContent/components/Content/index.tsx","../../src/sdks/LocalContent/schema.ts","../../src/sdks/LocalContent/index.tsx"],"sourcesContent":["import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208.49,199.51a12,12,0,0,1-17,17l-80-80a12,12,0,0,1,0-17l80-80a12,12,0,0,1,17,17L137,128ZM57,128l71.52-71.51a12,12,0,0,0-17-17l-80,80a12,12,0,0,0,0,17l80,80a12,12,0,0,0,17-17Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,48V208l-80-80Z\", opacity: \"0.2\" }), /* @__PURE__ */ a.createElement(\"path\", { d: \"M203.06,40.61a8,8,0,0,0-8.72,1.73l-80,80a8,8,0,0,0,0,11.32l80,80A8,8,0,0,0,208,208V48A8,8,0,0,0,203.06,40.61ZM192,188.69,131.31,128,192,67.31Zm-66.34,13.65a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L51.31,128Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,48V208a8,8,0,0,1-13.66,5.66L128,147.31V208a8,8,0,0,1-13.66,5.66l-80-80a8,8,0,0,1,0-11.32l80-80A8,8,0,0,1,128,48v60.69l66.34-66.35A8,8,0,0,1,208,48Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M204.24,203.76a6,6,0,1,1-8.48,8.48l-80-80a6,6,0,0,1,0-8.48l80-80a6,6,0,0,1,8.48,8.48L128.49,128ZM48.49,128l75.75-75.76a6,6,0,0,0-8.48-8.48l-80,80a6,6,0,0,0,0,8.48l80,80a6,6,0,1,0,8.48-8.48Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M205.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L131.31,128ZM51.31,128l74.35-74.34a8,8,0,0,0-11.32-11.32l-80,80a8,8,0,0,0,0,11.32l80,80a8,8,0,0,0,11.32-11.32Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M202.83,205.17a4,4,0,0,1-5.66,5.66l-80-80a4,4,0,0,1,0-5.66l80-80a4,4,0,1,1,5.66,5.66L125.66,128ZM45.66,128l77.17-77.17a4,4,0,0,0-5.66-5.66l-80,80a4,4,0,0,0,0,5.66l80,80a4,4,0,1,0,5.66-5.66Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as e from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M216.49,168.49a12,12,0,0,1-17,0L128,97,56.49,168.49a12,12,0,0,1-17-17l80-80a12,12,0,0,1,17,0l80,80A12,12,0,0,1,216.49,168.49Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M208,160H48l80-80Z\", opacity: \"0.2\" }), /* @__PURE__ */ e.createElement(\"path\", { d: \"M213.66,154.34l-80-80a8,8,0,0,0-11.32,0l-80,80A8,8,0,0,0,48,168H208a8,8,0,0,0,5.66-13.66ZM67.31,152,128,91.31,188.69,152Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M215.39,163.06A8,8,0,0,1,208,168H48a8,8,0,0,1-5.66-13.66l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,215.39,163.06Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M212.24,164.24a6,6,0,0,1-8.48,0L128,88.49,52.24,164.24a6,6,0,0,1-8.48-8.48l80-80a6,6,0,0,1,8.48,0l80,80A6,6,0,0,1,212.24,164.24Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M213.66,165.66a8,8,0,0,1-11.32,0L128,91.31,53.66,165.66a8,8,0,0,1-11.32-11.32l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,213.66,165.66Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M210.83,162.83a4,4,0,0,1-5.66,0L128,85.66,50.83,162.83a4,4,0,0,1-5.66-5.66l80-80a4,4,0,0,1,5.66,0l80,80A4,4,0,0,1,210.83,162.83Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M114.32,49.8A19.79,19.79,0,0,0,81.72,57L29.22,201.41A19.82,19.82,0,0,0,47.75,228a20,20,0,0,0,6.84-1.22L199,174.28a19.79,19.79,0,0,0,7.24-32.6ZM104.19,183.21l-31.4-31.4L82.94,123.9l49.16,49.16Zm-52.42,26.4Zm12-32.91L79.3,192.26l-24.45,8.89ZM157,164,92,99l10-27.58L184.57,154ZM128,40V16a12,12,0,0,1,24,0V40a12,12,0,0,1-24,0Zm116.48,83.51a12,12,0,0,1-17,17l-16-16a12,12,0,0,1,17-17Zm-.69-40.13-24,8a12,12,0,0,1-7.59-22.77l24-8a12,12,0,1,1,7.59,22.77ZM156.6,65.93C159.83,47.47,173.39,36,192,36c6.45,0,8.69-2.49,10-4.92a18,18,0,0,0,2-7.22V24a12,12,0,0,1,24,0c0,14.47-9.59,36-36,36-4.94,0-10.21,1.19-11.76,10.06A12,12,0,0,1,168.43,80a12.35,12.35,0,0,1-2.08-.18A12,12,0,0,1,156.6,65.93Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M58.89,154.89l42.22,42.22-50.63,18.4a7.79,7.79,0,0,1-10-10Zm138.82-4.72L105.83,58.29A7.79,7.79,0,0,0,93,61.14l-14.9,41,75.82,75.82,41-14.9A7.79,7.79,0,0,0,197.71,150.17Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M111.49,52.63a15.8,15.8,0,0,0-26,5.77L33,202.78A15.83,15.83,0,0,0,47.76,224a16,16,0,0,0,5.46-1l144.37-52.5a15.8,15.8,0,0,0,5.78-26Zm-8.33,135.21-35-35,13.16-36.21,58.05,58.05Zm-55,20,14-38.41,24.45,24.45ZM156,168.64,87.36,100l13-35.87,91.43,91.43ZM160,72a37.8,37.8,0,0,1,3.84-15.58C169.14,45.83,179.14,40,192,40c6.7,0,11-2.29,13.65-7.21A22,22,0,0,0,208,23.94,8,8,0,0,1,224,24c0,12.86-8.52,32-32,32-6.7,0-11,2.29-13.65,7.21A22,22,0,0,0,176,72.06,8,8,0,0,1,160,72ZM136,40V16a8,8,0,0,1,16,0V40a8,8,0,0,1-16,0Zm101.66,82.34a8,8,0,1,1-11.32,11.31l-16-16a8,8,0,0,1,11.32-11.32Zm4.87-42.75-24,8a8,8,0,0,1-5.06-15.18l24-8a8,8,0,0,1,5.06,15.18Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M111.49,52.63a15.8,15.8,0,0,0-26,5.77L33,202.78A15.83,15.83,0,0,0,47.76,224a16,16,0,0,0,5.46-1l144.37-52.5a15.8,15.8,0,0,0,5.78-26ZM65.14,161.13l19.2-52.79,63.32,63.32-52.8,19.2ZM160,72a37.8,37.8,0,0,1,3.84-15.58C169.14,45.83,179.14,40,192,40c6.7,0,11-2.29,13.65-7.21A22,22,0,0,0,208,23.94,8,8,0,0,1,224,24c0,12.86-8.52,32-32,32-6.7,0-11,2.29-13.65,7.21A22,22,0,0,0,176,72.06,8,8,0,0,1,160,72ZM136,40V16a8,8,0,0,1,16,0V40a8,8,0,0,1-16,0Zm101.66,82.34a8,8,0,1,1-11.32,11.31l-16-16a8,8,0,0,1,11.32-11.32Zm4.87-42.75-24,8a8,8,0,0,1-5.06-15.18l24-8a8,8,0,0,1,5.06,15.18Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M110.08,54a13.8,13.8,0,0,0-22.73,5.05L34.85,203.47A13.82,13.82,0,0,0,47.76,222a14,14,0,0,0,4.77-.85l144.38-52.5a13.8,13.8,0,0,0,5-22.73ZM48.43,209.87a1.79,1.79,0,0,1-2.3-2.3L61.31,165.8,90.2,194.68Zm54.21-19.71-36.8-36.81L80.51,113,143,175.49ZM194,156.07a1.74,1.74,0,0,1-1.14,1.3L155.44,171,85,100.55,98.63,63.19a1.72,1.72,0,0,1,1.3-1.14,1.58,1.58,0,0,1,.41,0,1.72,1.72,0,0,1,1.25.53l91.88,91.88A1.73,1.73,0,0,1,194,156.07ZM162,72a35.52,35.52,0,0,1,3.63-14.68C170.57,47.44,179.93,42,192,42c7.47,0,12.53-2.74,15.48-8.38A24.18,24.18,0,0,0,210,24,6,6,0,0,1,216,18h0a6,6,0,0,1,6,6c0,10.38-6.27,30-30,30-7.47,0-12.53,2.74-15.48,8.38A24,24,0,0,0,174,72a6,6,0,0,1-6,6h0A6,6,0,0,1,162,72ZM138,40V16a6,6,0,0,1,12,0V40a6,6,0,0,1-12,0Zm98.24,83.76a6,6,0,1,1-8.48,8.48l-16-16a6,6,0,0,1,8.48-8.48Zm5.66-46.07-24,8a6,6,0,1,1-3.8-11.38l24-8a6,6,0,0,1,3.8,11.38Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M111.49,52.63a15.8,15.8,0,0,0-26,5.77L33,202.78A15.83,15.83,0,0,0,47.76,224a16,16,0,0,0,5.46-1l144.37-52.5a15.8,15.8,0,0,0,5.78-26Zm-8.33,135.21-35-35,13.16-36.21,58.05,58.05Zm-55,20,14-38.41,24.45,24.45ZM156,168.64,87.36,100l13-35.87,91.43,91.43ZM160,72a37.8,37.8,0,0,1,3.84-15.58C169.14,45.83,179.14,40,192,40c6.7,0,11-2.29,13.65-7.21A22,22,0,0,0,208,23.94,8,8,0,0,1,224,24c0,12.86-8.52,32-32,32-6.7,0-11,2.29-13.65,7.21A22,22,0,0,0,176,72.06,8,8,0,0,1,160,72ZM136,40V16a8,8,0,0,1,16,0V40a8,8,0,0,1-16,0Zm101.66,82.34a8,8,0,1,1-11.32,11.31l-16-16a8,8,0,0,1,11.32-11.32Zm4.87-42.75-24,8a8,8,0,0,1-5.06-15.18l24-8a8,8,0,0,1,5.06,15.18Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M108.66,55.46a11.79,11.79,0,0,0-19.43,4.31L36.73,204.15a11.81,11.81,0,0,0,11,15.85,11.88,11.88,0,0,0,4.08-.73l144.38-52.5a11.79,11.79,0,0,0,4.31-19.43Zm-6.53,137L63.52,153.87l16.19-44.51,66.92,66.93Zm-53,19.28a3.81,3.81,0,0,1-4.87-4.87l16.27-44.72,33.32,33.32Zm146.8-55.25a3.77,3.77,0,0,1-2.42,2.74l-38.56,14L82.72,101.07l14-38.56a3.77,3.77,0,0,1,2.74-2.42,4.32,4.32,0,0,1,.85-.09A3.65,3.65,0,0,1,103,61.12L194.88,153A3.78,3.78,0,0,1,195.91,156.51ZM220,24c0,9.68-5.85,28-28,28-8.31,0-14.18,3.29-17.42,9.79A26.12,26.12,0,0,0,172,72a4,4,0,0,1-8,0,34.06,34.06,0,0,1,3.42-13.79C170.66,51.73,177.56,44,192,44c19.29,0,20-18,20-20a4,4,0,0,1,4-4h0A4,4,0,0,1,220,24ZM140,40V16a4,4,0,0,1,8,0V40a4,4,0,0,1-8,0Zm94.83,85.17a4,4,0,0,1-5.66,5.66l-16-16a4,4,0,0,1,5.66-5.66Zm6.43-49.37-24,8A4,4,0,0,1,216,84a4,4,0,0,1-1.27-7.79l24-8a4,4,0,0,1,2.53,7.59Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as e from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M228,160a12,12,0,0,1-12,12H40a12,12,0,0,1,0-24H216A12,12,0,0,1,228,160ZM40,108H216a12,12,0,0,0,0-24H40a12,12,0,0,0,0,24Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\n \"path\",\n {\n d: \"M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ e.createElement(\"path\", { d: \"M224,160a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,160ZM40,104H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,160H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Zm0-48H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M222,160a6,6,0,0,1-6,6H40a6,6,0,0,1,0-12H216A6,6,0,0,1,222,160ZM40,102H216a6,6,0,0,0,0-12H40a6,6,0,0,0,0,12Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M224,160a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,160ZM40,104H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M220,160a4,4,0,0,1-4,4H40a4,4,0,0,1,0-8H216A4,4,0,0,1,220,160ZM40,100H216a4,4,0,0,0,0-8H40a4,4,0,0,0,0,8Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import * as a from \"react\";\nconst V = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,28H160a20,20,0,0,0-20,20V208a20,20,0,0,0,20,20h48a20,20,0,0,0,20-20V48A20,20,0,0,0,208,28Zm-4,176H164V180h16a12,12,0,0,0,0-24H164V140h16a12,12,0,0,0,0-24H164V100h16a12,12,0,0,0,0-24H164V52h40ZM80.49,23.51a12,12,0,0,0-17,0l-32,32A12,12,0,0,0,28,64V208a20,20,0,0,0,20,20H96a20,20,0,0,0,20-20V64a12,12,0,0,0-3.51-8.49ZM52,92H92v72H52ZM72,49,91,68H53ZM52,204V188H92v16Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M40,184h64v24a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8ZM208,40H160a8,8,0,0,0-8,8V208a8,8,0,0,0,8,8h48a8,8,0,0,0,8-8V48A8,8,0,0,0,208,40Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h48a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H160V176h24a8,8,0,0,0,0-16H160V136h24a8,8,0,0,0,0-16H160V96h24a8,8,0,0,0,0-16H160V48h48V208ZM77.66,26.34a8,8,0,0,0-11.32,0l-32,32A8,8,0,0,0,32,64V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V64a8,8,0,0,0-2.34-5.66ZM48,176V80H64v96ZM80,80H96v96H80ZM72,43.31,92.69,64H51.31ZM48,208V192H96v16Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,48V208a16,16,0,0,1-16,16H160a16,16,0,0,1-16-16V180a4,4,0,0,1,4-4h36a8,8,0,0,0,8-8.53,8.18,8.18,0,0,0-8.25-7.47H148a4,4,0,0,1-4-4V140a4,4,0,0,1,4-4h36a8,8,0,0,0,8-8.53,8.18,8.18,0,0,0-8.25-7.47H148a4,4,0,0,1-4-4V100a4,4,0,0,1,4-4h36a8,8,0,0,0,8-8.53A8.18,8.18,0,0,0,183.73,80H148a4,4,0,0,1-4-4V48a16,16,0,0,1,16-16h48A16,16,0,0,1,224,48ZM109.66,58.34A8,8,0,0,1,112,64V208a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V64a8,8,0,0,1,2.34-5.66l32-32a8,8,0,0,1,11.32,0ZM48,80V184H64V80Zm32,0V184H96V80ZM51.31,64H92.69L72,43.31Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,34H160a14,14,0,0,0-14,14V208a14,14,0,0,0,14,14h48a14,14,0,0,0,14-14V48A14,14,0,0,0,208,34Zm2,174a2,2,0,0,1-2,2H160a2,2,0,0,1-2-2V174h26a6,6,0,0,0,0-12H158V134h26a6,6,0,0,0,0-12H158V94h26a6,6,0,0,0,0-12H158V48a2,2,0,0,1,2-2h48a2,2,0,0,1,2,2ZM76.24,27.76a6,6,0,0,0-8.48,0l-32,32A6,6,0,0,0,34,64V208a14,14,0,0,0,14,14H96a14,14,0,0,0,14-14V64a6,6,0,0,0-1.76-4.24ZM46,178V78H66V178ZM78,78H98V178H78ZM72,40.49,97.51,66h-51ZM96,210H48a2,2,0,0,1-2-2V190H98v18A2,2,0,0,1,96,210Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h48a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H160V176h24a8,8,0,0,0,0-16H160V136h24a8,8,0,0,0,0-16H160V96h24a8,8,0,0,0,0-16H160V48h48V208ZM77.66,26.34a8,8,0,0,0-11.32,0l-32,32A8,8,0,0,0,32,64V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V64a8,8,0,0,0-2.34-5.66ZM48,176V80H64v96ZM80,80H96v96H80ZM72,43.31,92.69,64H51.31ZM48,208V192H96v16Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,36H160a12,12,0,0,0-12,12V208a12,12,0,0,0,12,12h48a12,12,0,0,0,12-12V48A12,12,0,0,0,208,36Zm4,172a4,4,0,0,1-4,4H160a4,4,0,0,1-4-4V172h28a4,4,0,0,0,0-8H156V132h28a4,4,0,0,0,0-8H156V92h28a4,4,0,0,0,0-8H156V48a4,4,0,0,1,4-4h48a4,4,0,0,1,4,4ZM74.83,29.17a4,4,0,0,0-5.66,0l-32,32A4,4,0,0,0,36,64V208a12,12,0,0,0,12,12H96a12,12,0,0,0,12-12V64a4,4,0,0,0-1.17-2.83ZM44,76H68V180H44Zm56,132a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V188h56Zm0-28H76V76h24Zm0-112H44V65.66l28-28,28,28Z\" }))\n ]\n]);\nexport {\n V as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M233.21,56.31A12,12,0,0,0,224,52H66L60.53,21.85A12,12,0,0,0,48.73,12H24a12,12,0,0,0,0,24H38.71L63.62,173a28,28,0,0,0,4.07,10.21A32,32,0,1,0,123,196h34a32,32,0,1,0,31-24H91.17a4,4,0,0,1-3.93-3.28L84.92,156H196.1a28,28,0,0,0,27.55-23l12.16-66.86A12,12,0,0,0,233.21,56.31ZM100,204a8,8,0,1,1-8-8A8,8,0,0,1,100,204Zm88,8a8,8,0,1,1,8-8A8,8,0,0,1,188,212Zm12-83.28A4,4,0,0,1,196.1,132H80.56L70.38,76H209.62Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M224,64l-12.16,66.86A16,16,0,0,1,196.1,144H70.55L56,64Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M230.14,58.87A8,8,0,0,0,224,56H62.68L56.6,22.57A8,8,0,0,0,48.73,16H24a8,8,0,0,0,0,16h18L67.56,172.29a24,24,0,0,0,5.33,11.27,28,28,0,1,0,44.4,8.44h45.42A27.75,27.75,0,0,0,160,204a28,28,0,1,0,28-28H91.17a8,8,0,0,1-7.87-6.57L80.13,152h116a24,24,0,0,0,23.61-19.71l12.16-66.86A8,8,0,0,0,230.14,58.87ZM104,204a12,12,0,1,1-12-12A12,12,0,0,1,104,204Zm96,0a12,12,0,1,1-12-12A12,12,0,0,1,200,204Zm4-74.57A8,8,0,0,1,196.1,136H77.22L65.59,72H214.41Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M230.14,58.87A8,8,0,0,0,224,56H62.68L56.6,22.57A8,8,0,0,0,48.73,16H24a8,8,0,0,0,0,16h18L67.56,172.29a24,24,0,0,0,5.33,11.27,28,28,0,1,0,44.4,8.44h45.42A27.75,27.75,0,0,0,160,204a28,28,0,1,0,28-28H91.17a8,8,0,0,1-7.87-6.57L80.13,152h116a24,24,0,0,0,23.61-19.71l12.16-66.86A8,8,0,0,0,230.14,58.87ZM104,204a12,12,0,1,1-12-12A12,12,0,0,1,104,204Zm96,0a12,12,0,1,1-12-12A12,12,0,0,1,200,204Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M228.61,60.16A6,6,0,0,0,224,58H61L54.63,22.93A6,6,0,0,0,48.73,18H24a6,6,0,0,0,0,12H43.72L69.53,171.94a21.93,21.93,0,0,0,6.24,11.77A26,26,0,1,0,113.89,190h52.22A26,26,0,1,0,188,178H91.17a10,10,0,0,1-9.84-8.21L77.73,150H196.1a22,22,0,0,0,21.65-18.06L229.9,65.07A6,6,0,0,0,228.61,60.16ZM106,204a14,14,0,1,1-14-14A14,14,0,0,1,106,204Zm96,0a14,14,0,1,1-14-14A14,14,0,0,1,202,204Zm3.94-74.21A10,10,0,0,1,196.1,138H75.55L63.19,70H216.81Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M230.14,58.87A8,8,0,0,0,224,56H62.68L56.6,22.57A8,8,0,0,0,48.73,16H24a8,8,0,0,0,0,16h18L67.56,172.29a24,24,0,0,0,5.33,11.27,28,28,0,1,0,44.4,8.44h45.42A27.75,27.75,0,0,0,160,204a28,28,0,1,0,28-28H91.17a8,8,0,0,1-7.87-6.57L80.13,152h116a24,24,0,0,0,23.61-19.71l12.16-66.86A8,8,0,0,0,230.14,58.87ZM104,204a12,12,0,1,1-12-12A12,12,0,0,1,104,204Zm96,0a12,12,0,1,1-12-12A12,12,0,0,1,200,204Zm4-74.57A8,8,0,0,1,196.1,136H77.22L65.59,72H214.41Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M227.07,61.44A4,4,0,0,0,224,60H59.34L52.66,23.28A4,4,0,0,0,48.73,20H24a4,4,0,0,0,0,8H45.39l6.69,36.8h0L71.49,171.58A20,20,0,0,0,79,183.85,24,24,0,1,0,109.87,188h60.26A24,24,0,1,0,188,180H91.17a12,12,0,0,1-11.8-9.85l-4-22.15H196.1a20,20,0,0,0,19.68-16.42l12.16-66.86A4,4,0,0,0,227.07,61.44ZM108,204a16,16,0,1,1-16-16A16,16,0,0,1,108,204Zm96,0a16,16,0,1,1-16-16A16,16,0,0,1,204,204Zm3.91-73.85A12,12,0,0,1,196.1,140H73.88L60.79,68H219.21Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M246,113.46,142.54,10a20.57,20.57,0,0,0-29.08,0L10,113.46a20.57,20.57,0,0,0,0,29.08L113.46,246h0a20.57,20.57,0,0,0,29.08,0L246,142.54a20.57,20.57,0,0,0,0-29.08ZM128,226.57,29.43,128,128,29.43,226.57,128Zm7.51-122.08a12,12,0,0,1,17-17l24,24a12,12,0,0,1,0,17l-24,24a12,12,0,0,1-17-17L139,132H112a12,12,0,0,0-12,12v4a12,12,0,0,1-24,0v-4a36,36,0,0,1,36-36h27Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M237.49,134.05,134.05,237.49a8.54,8.54,0,0,1-12.1,0L18.51,134.05a8.54,8.54,0,0,1,0-12.1L122,18.51a8.54,8.54,0,0,1,12.1,0L237.49,122A8.54,8.54,0,0,1,237.49,134.05Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.15,116.29,139.71,12.85a16.56,16.56,0,0,0-23.42,0L12.85,116.29a16.56,16.56,0,0,0,0,23.42L116.29,243.15h0a16.56,16.56,0,0,0,23.42,0L243.15,139.71a16.56,16.56,0,0,0,0-23.42Zm-11.31,12.1L128.39,231.84a.56.56,0,0,1-.78,0h0L24.16,128.39a.56.56,0,0,1,0-.78L127.61,24.16A.52.52,0,0,1,128,24a.58.58,0,0,1,.4.16L231.84,127.61a.56.56,0,0,1,0,.78Zm-58.18-14a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L148.69,128H112a16,16,0,0,0-16,16v8a8,8,0,0,1-16,0v-8a32,32,0,0,1,32-32h36.69l-10.35-10.34a8,8,0,0,1,11.32-11.32Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.15,116.29,139.71,12.85a16.56,16.56,0,0,0-23.42,0L12.85,116.29a16.56,16.56,0,0,0,0,23.42L116.29,243.15h0a16.56,16.56,0,0,0,23.42,0L243.15,139.71a16.56,16.56,0,0,0,0-23.42Zm-69.49,9.37-24,24a8,8,0,0,1-11.32-11.32L148.69,128H112a16,16,0,0,0-16,16v8a8,8,0,0,1-16,0v-8a32,32,0,0,1,32-32h36.69l-10.35-10.34a8,8,0,0,1,11.32-11.32l24,24A8,8,0,0,1,173.66,125.66Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M241.74,117.71,138.29,14.26a14.56,14.56,0,0,0-20.58,0L14.26,117.71a14.56,14.56,0,0,0,0,20.58L117.71,241.74h0a14.56,14.56,0,0,0,20.58,0L241.74,138.29a14.56,14.56,0,0,0,0-20.58Zm-8.49,12.1L129.81,233.25a2.56,2.56,0,0,1-3.62,0h0L22.75,129.81a2.56,2.56,0,0,1,0-3.62L126.19,22.75a2.56,2.56,0,0,1,3.62,0L233.25,126.19a2.56,2.56,0,0,1,0,3.62Zm-61-14a6,6,0,0,1,0,8.48l-24,24a6,6,0,0,1-8.48-8.48L153.51,126H112a18,18,0,0,0-18,18v8a6,6,0,0,1-12,0v-8a30,30,0,0,1,30-30h41.51l-13.75-13.76a6,6,0,0,1,8.48-8.48Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.15,116.29,139.71,12.85a16.56,16.56,0,0,0-23.42,0L12.85,116.29a16.56,16.56,0,0,0,0,23.42L116.29,243.15h0a16.56,16.56,0,0,0,23.42,0L243.15,139.71a16.56,16.56,0,0,0,0-23.42Zm-11.31,12.1L128.4,231.84a.58.58,0,0,1-.8,0h0L24.16,128.39a.56.56,0,0,1,0-.78L127.6,24.16a.58.58,0,0,1,.8,0L231.84,127.61a.56.56,0,0,1,0,.78Zm-58.18-14a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L148.69,128H112a16,16,0,0,0-16,16v8a8,8,0,0,1-16,0v-8a32,32,0,0,1,32-32h36.69l-10.35-10.34a8,8,0,0,1,11.32-11.32Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M240.32,119.12,136.88,15.68a12.55,12.55,0,0,0-17.76,0L15.68,119.12a12.55,12.55,0,0,0,0,17.76L119.12,240.32h0a12.55,12.55,0,0,0,17.76,0L240.32,136.88a12.55,12.55,0,0,0,0-17.76Zm-5.66,12.1L131.22,234.67a4.56,4.56,0,0,1-6.44,0h0L21.33,131.22a4.55,4.55,0,0,1,0-6.44L124.78,21.33a4.56,4.56,0,0,1,6.44,0L234.67,124.78a4.55,4.55,0,0,1,0,6.44Zm-63.83-14a4,4,0,0,1,0,5.66l-24,24a4,4,0,0,1-5.66-5.66L158.34,124H112a20,20,0,0,0-20,20v8a4,4,0,0,1-8,0v-8a28,28,0,0,1,28-28h46.34L141.17,98.83a4,4,0,0,1,5.66-5.66Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as e from \"react\";\nimport a from \"../lib/IconBase.es.js\";\nimport f from \"../defs/CaretDoubleLeft.es.js\";\nconst o = e.forwardRef((t, r) => /* @__PURE__ */ e.createElement(a, { ref: r, ...t, weights: f }));\no.displayName = \"CaretDoubleLeftIcon\";\nconst s = o;\nexport {\n s as CaretDoubleLeft,\n o as CaretDoubleLeftIcon\n};\n","import * as e from \"react\";\nimport a from \"../lib/IconBase.es.js\";\nimport m from \"../defs/CaretUp.es.js\";\nconst o = e.forwardRef((r, t) => /* @__PURE__ */ e.createElement(a, { ref: t, ...r, weights: m }));\no.displayName = \"CaretUpIcon\";\nconst s = o;\nexport {\n s as CaretUp,\n o as CaretUpIcon\n};\n","import * as o from \"react\";\nimport n from \"../lib/IconBase.es.js\";\nimport a from \"../defs/Confetti.es.js\";\nconst t = o.forwardRef((e, r) => /* @__PURE__ */ o.createElement(n, { ref: r, ...e, weights: a }));\nt.displayName = \"ConfettiIcon\";\nconst m = t;\nexport {\n m as Confetti,\n t as ConfettiIcon\n};\n","import * as o from \"react\";\nimport s from \"../lib/IconBase.es.js\";\nimport t from \"../defs/Equals.es.js\";\nconst a = o.forwardRef((e, r) => /* @__PURE__ */ o.createElement(s, { ref: r, ...e, weights: t }));\na.displayName = \"EqualsIcon\";\nconst n = a;\nexport {\n n as Equals,\n a as EqualsIcon\n};\n","import * as e from \"react\";\nimport t from \"../lib/IconBase.es.js\";\nimport n from \"../defs/PencilRuler.es.js\";\nconst o = e.forwardRef((r, c) => /* @__PURE__ */ e.createElement(t, { ref: c, ...r, weights: n }));\no.displayName = \"PencilRulerIcon\";\nconst l = o;\nexport {\n l as PencilRuler,\n o as PencilRulerIcon\n};\n","import * as o from \"react\";\nimport p from \"../lib/IconBase.es.js\";\nimport e from \"../defs/ShoppingCart.es.js\";\nconst r = o.forwardRef((t, a) => /* @__PURE__ */ o.createElement(p, { ref: a, ...t, weights: e }));\nr.displayName = \"ShoppingCartIcon\";\nconst m = r;\nexport {\n m as ShoppingCart,\n r as ShoppingCartIcon\n};\n","import * as o from \"react\";\nimport i from \"../lib/IconBase.es.js\";\nimport c from \"../defs/TrafficSign.es.js\";\nconst r = o.forwardRef((a, f) => /* @__PURE__ */ o.createElement(i, { ref: f, ...a, weights: c }));\nr.displayName = \"TrafficSignIcon\";\nconst n = r;\nexport {\n n as TrafficSign,\n r as TrafficSignIcon\n};\n","export const container = `py-4`;\n","import type { TransformedScoresMenuData } from \"./types\";\nimport type {\n Options,\n CategoryKey,\n ScoreKey,\n ScoreOptions,\n} from \"~/sdks/LocalContent/types\";\n\n/**\n * Transforms the scores menu data by filtering out hidden categories and scores,\n * and sorting them by their order.\n *\n * This function is used to prepare the scores menu data for rendering in the UI.\n *\n * @param scoresMenu\n * @returns\n */\nexport function transformScoresMenuData(\n scoresMenu: Options[\"scoresMenu\"],\n): TransformedScoresMenuData {\n return {\n ...(scoresMenu || {}),\n categories: Object.entries(scoresMenu?.categories || {})\n .filter(([, category]) => category.hide !== true)\n .sort(([, a], [, b]) => (a.order ?? 0) - (b.order ?? 0))\n .map(\n // Map categories to the expected format so we can loop through them\n ([categoryKey, category]) =>\n [\n categoryKey as CategoryKey,\n {\n ...category,\n // Sort scores by order within each category\n scores: Object.entries(category.scores || {})\n .filter(([, score]) => score.hide !== true)\n .sort(([, a], [, b]) => (a.order ?? 0) - (b.order ?? 0)),\n },\n ] as [\n CategoryKey,\n typeof category & {\n scores: [ScoreKey, ScoreOptions][];\n },\n ],\n ),\n };\n}\n","import type { POIs, Schools } from \"@local-logic/client\";\nimport type { POISubcategory } from \"~/sdks/LocalContent/types\";\n\nexport function getPOICategoriesWithAvailableData(\n pois: Partial<POIs & Schools>,\n): POISubcategory[] {\n return Object.keys(pois).filter(\n (subcategory) => (pois[subcategory as POISubcategory]?.length ?? 0) > 0,\n ) as POISubcategory[];\n}\n","import type { POIs, Schools } from \"@local-logic/client\";\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport const SURVEY_ID = \"NerqWZeC\";\n\nexport const DEFAULT_RADIUS = 2500; // Default radius in meters\nexport const DEFAULT_NUMBER_OF_POIS = 30; // Default number of points of interest to fetch\nexport const DEFAULT_MIN_ZOOM = 6; // Default minimum zoom level for the map\nexport const DEFAULT_MAX_ZOOM = 17; // Default maximum zoom level for the map\nexport const DEFAULT_TRAVEL_MODE = \"walking\"; // Default travel mode for commute calculations\nexport const DIRECTIONS_PATH_COLOR = \"#006AFF\"; // Color for the directions path on the map\nexport const METERS_TO_YARDS_CONVERSION_FACTOR = 1.0936132983; // Conversion factor from meters to yards\nexport const YARDS_PER_MILE = 1760; // Number of yards in a mile\nexport const METERS_PER_KILOMETER = 1000; // Number of meters in a kilometer\n\nexport const MAP_PADDING = {\n desktop: {\n top: 64, // Taking into account commute calculator trigger height\n bottom: 48, // Taking into account map attribution\n left: 312, // Taking into account sidebar expanded width\n right: 12, // Not taking into account the map controls\n },\n mobile: {\n top: 12,\n bottom: 48,\n left: 12,\n right: 12,\n },\n};\n\nexport const LAYOUT_MEASUREMENTS = {\n SIDEBAR_STATE_WIDTH_DIFFERENCE: 236, // Width difference between expanded and collapsed sidebar\n COMMUTE_CALCULATOR_NO_ROUTE_HEIGHT_DESKTOP: 58, // Commute calculator open extra height on desktop\n COMMUTE_CALCULATOR_WITH_ROUTE_HEIGHT_DESKTOP: 124, // Commute calculator open with route extra height on desktop\n SCORE_BUTTONS_HEIGHT_MOBILE: 52, // Score buttons container height + margin on mobile\n SCORE_DETAILS_HEIGHT_MOBILE: 140, // Score details slider height + margin on mobile\n COMMUTE_CALCULATOR_HEIGHT_MOBILE: 150, // Commute calculator height + margin on mobile\n} as const;\n\nexport const SCORE_POI_CATEGORIES: Record<\n ScoreKey,\n (keyof POIs | keyof Schools)[]\n> = {\n // Commute\n pedestrian_friendly: [],\n transit_friendly: [\"rapid_transit_stations\", \"train_stations\", \"bus_stops\"],\n cycling_friendly: [],\n car_friendly: [\"car_fueling_stations\"],\n\n // Amenities\n groceries: [\"groceries\", \"groceries_specialized\"],\n restaurants: [\"restaurants\", \"healthy_restaurants\"],\n cafes: [\"cafes\"],\n shopping: [\"shopping\"],\n\n // Nature\n parks: [\"parks\"],\n greenery: [],\n\n // Character\n vibrant: [\"art_culture_science\"],\n nightlife: [\"nightlife\"],\n quiet: [],\n historic: [],\n\n // Education\n high_schools: [\"high_schools\"],\n primary_schools: [\"primary_schools\"],\n daycares: [\"daycares\"],\n\n // Wellness\n wellness: [\n \"fitness\",\n \"healthy_restaurants\",\n \"health_care\",\n \"parks\",\n \"sport_facilities\",\n \"groceries\",\n ],\n};\n","import { SCORE_POI_CATEGORIES } from \"~/sdks/LocalContent/constants\";\nimport type { POISubcategory, ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport function orderPOICategories(\n scoreKey: ScoreKey,\n unfilteredSubcategories: POISubcategory[],\n) {\n const poiCategoryOrder = SCORE_POI_CATEGORIES[scoreKey] as POISubcategory[];\n unfilteredSubcategories.sort(\n (a, b) =>\n poiCategoryOrder.indexOf(a as POISubcategory) -\n poiCategoryOrder.indexOf(b as POISubcategory),\n );\n}\n","import type { Schools, POIs } from \"@local-logic/client\";\nimport { TravelMode } from \"./hooks/useCommute/types\";\nimport type { SDKOptions, MapProviderNames } from \"~/types/options\";\n\nexport type MapProvider = {\n name: MapProviderNames;\n key?: string;\n theme?: string;\n};\nexport type CommuteOptions = {\n destination: { lat: number; lng: number } | undefined;\n commuteType: TravelMode | undefined;\n label?: string;\n};\n\nexport type POISubcategory = keyof POIs | keyof Schools;\n\nexport type CategoryKey =\n | \"transport\"\n | \"education\"\n | \"amenities\"\n | \"character\"\n | \"nature\"\n | \"health\";\n\nexport type TransportScoreKey =\n | \"pedestrian_friendly\"\n | \"transit_friendly\"\n | \"cycling_friendly\"\n | \"car_friendly\";\nexport type EducationScoreKey = \"daycares\" | \"primary_schools\" | \"high_schools\";\nexport type AmenitiesScoreKey =\n | \"shopping\"\n | \"groceries\"\n | \"restaurants\"\n | \"cafes\";\nexport type CharacterScoreKey = \"nightlife\" | \"vibrant\" | \"historic\" | \"quiet\";\nexport type NatureScoreKey = \"parks\" | \"greenery\";\nexport type WellnessScoreKey = \"wellness\";\nexport type ScoreKey =\n | TransportScoreKey\n | EducationScoreKey\n | AmenitiesScoreKey\n | CharacterScoreKey\n | NatureScoreKey\n | WellnessScoreKey;\n\nexport type ScoreOptions = {\n hide?: boolean;\n hideScore?: boolean;\n order?: number;\n};\n\nexport type CategoryOptions = {\n hide?: boolean;\n order?: number;\n colors?: {\n background: string;\n fill: string;\n };\n scores?: {\n [key in ScoreKey]?: ScoreOptions;\n };\n};\n\nexport type Options = {\n lat?: number;\n lng?: number;\n zoom?: number;\n pitch?: number;\n bearing?: number;\n distanceUnit?: \"metric\" | \"imperial\";\n marker?: {\n lat: number;\n lng: number;\n icon?: \"house\" | \"pin\";\n // Used to show the address over the marker, and for the LC LAT CTA\n addressLabel?: string;\n };\n cooperativeGestures?: boolean;\n mapProvider?: MapProvider;\n hideScores?: boolean;\n showSchoolRatings?: boolean;\n scoresMenu?: {\n defaultOpen?: boolean;\n title?: boolean | string;\n categories?: {\n [key in CategoryKey]?: CategoryOptions;\n };\n };\n hideAttribution?: boolean;\n};\n\nexport type LocalContentProps = SDKOptions<\n Options,\n {\n options: Options | undefined;\n }\n>;\n\n// TODO revisit events\nexport enum TrackingPipelineEvents {\n SDK_VIEWED = \"LC-Viewed\",\n SIDEBAR_TOGGLE_CLICKED = \"LC-Sidebar-Toggle-Clicked\",\n SIDEBAR_SCORE_SELECTED = \"LC-Sidebar-Score-Selected\",\n SIDEBAR_POI_SELECTED = \"LC-Sidebar-POI-Selected\",\n\n CATEGORIES_MENU_CATEGORY_SELECTED = \"LC-Categories-Menu-Category-Selected\",\n // CATEGORIES_MENU_SCORE_SELECTED = \"LC-Categories-Menu-Score-Selected\",\n // On purpose. It was a mistake before and we used SIDEBAR_SCORE_SELECTED\n // instead of this event name before.\n // However we need to keep it for backwards compatibility.\n // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values\n CATEGORIES_MENU_SCORE_SELECTED = \"LC-Sidebar-Score-Selected\",\n\n SCORE_POI_CATEGORY_SELECTED = \"LC-Score-POI-Category-Selected\",\n MAP_POI_SELECTED = \"LC-Map-POI-Selected\",\n MAP_POI_SELECTED_FROM_CLUSTER = \"LC-Map-POI-Selected-From-Cluster\",\n MAP_POI_POPUP_LINK_CLICKED = \"LC-Map-POI-Popup-Link-Clicked\",\n MAP_POI_VIEW_ROUTE = \"LC-Map-POI-View-Route\",\n\n COMMUTE_CALCULATOR_CALCULATE_ROUTE = \"LC-Commute-Calculator-Calculate-Route\",\n}\n\n// Why are these named differently?\n// https://docs.mixpanel.com/docs/data-structure/events-and-properties#name-events-and-properties-consistently\nexport enum AnalyticsEvents {\n SDK_VIEWED = \"sdk_viewed\",\n SIDEBAR_TOGGLE_CLICKED = \"sidebar_toggle_clicked\",\n SIDEBAR_SCORE_SELECTED = \"sidebar_score_selected\",\n SIDEBAR_POI_SELECTED = \"sidebar_poi_selected\",\n\n CATEGORIES_MENU_CATEGORY_SELECTED = \"categories_menu_category_selected\",\n CATEGORIES_MENU_SCORE_SELECTED = \"categories_menu_score_selected\",\n\n SCORE_POI_CATEGORY_SELECTED = \"score_poi_category_selected\",\n MAP_POI_SELECTED = \"map_poi_selected\",\n MAP_POI_SELECTED_FROM_CLUSTER = \"map_poi_selected_from_cluster\",\n MAP_POI_POPUP_LINK_CLICKED = \"map_poi_popup_link_clicked\",\n MAP_POI_VIEW_ROUTE = \"map_poi_view_route\",\n\n COMMUTE_CALCULATOR_CALCULATE_ROUTE = \"commute_calculator_calculate_route\",\n}\n","import type { ScoresData, ScoreItem, Score } from \"./types\";\nimport type { CategoryKey, ScoreKey } from \"~/sdks/LocalContent/types\";\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\n\nconst MAX_SCORE_VALUE = 10;\nconst SCORE_MULTIPLIER = 2;\n\n/**\n * Transforms the API response from the scores endpoint into a more usable format.\n *\n * @param data\n * @param scoresMenu\n * @returns\n */\nexport function transformScoresAPIResponse(\n data: ScoresData,\n scoresMenu: TransformedScoresMenuData,\n) {\n if (typeof data?.location === \"undefined\" || !scoresMenu)\n return {} as ScoreItem;\n\n const scores: ScoreItem = {} as ScoreItem;\n\n Object.keys(data.location).forEach((key) => {\n const singleScoreData = data?.location?.[key as ScoreKey];\n\n const category = scoresMenu.categories.find(([_key, categoryData]) =>\n categoryData.scores.some(([scoreKey]) => scoreKey === key),\n );\n\n let singleScoreValue =\n parseFloat(singleScoreData?.value || \"0\") * SCORE_MULTIPLIER;\n\n if (Number.isNaN(singleScoreValue)) {\n singleScoreValue = 0;\n } else if (singleScoreValue > MAX_SCORE_VALUE) {\n singleScoreValue = MAX_SCORE_VALUE;\n }\n\n const geographies: Score[\"geographies\"] = {};\n\n if (typeof data?.geographies !== \"undefined\") {\n data.geographies.forEach((geography) => {\n if (\n typeof geography?.scores !== \"undefined\" &&\n typeof geography.scores[key as ScoreKey] !== \"undefined\"\n ) {\n const geographyValue =\n parseFloat(geography.scores[key as ScoreKey]?.value || \"0\") *\n SCORE_MULTIPLIER;\n\n if (typeof geography?.geog_id === \"string\") {\n geographies[geography.geog_id.split(\"_\")[0]] = {\n text: geography.name,\n value: Math.round(geographyValue * 10) / 10,\n };\n }\n }\n });\n }\n\n scores[key as ScoreKey] = {\n text: singleScoreData?.text,\n value: Math.round(singleScoreValue * 10) / 10,\n geographies,\n categoryKey: category ? (category[0] as CategoryKey) : null,\n categoryOptions: category ? category[1] : null,\n };\n });\n\n return scores;\n}\n","import React, { useMemo, useCallback } from \"react\";\n\nimport type { ScoreItem } from \"./utils/transformScoresAPIResponse/types\";\nimport { transformScoresAPIResponse } from \"./utils/transformScoresAPIResponse\";\nimport { useScores } from \"~/features/clientLibrary/useScores\";\n\nimport type { ScoreKey, CategoryKey } from \"~/sdks/LocalContent/types\";\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\n\nexport function useScoreSelection({\n scoresMenu,\n lat,\n lng,\n}: {\n scoresMenu: TransformedScoresMenuData;\n lat: number;\n lng: number;\n}) {\n const [activeScore, setActiveScore] = React.useState<ScoreKey | null>(null);\n const [activeCategory, setActiveCategory] =\n React.useState<CategoryKey | null>(null);\n\n const { data, isFetching: isScoresFetching } = useScores({\n location: {\n lat,\n lng,\n },\n });\n\n const scoresData = useMemo<ScoreItem>(\n () => transformScoresAPIResponse(data, scoresMenu),\n [data, scoresMenu],\n );\n\n const activeCategoryData = useMemo(() => {\n if (!activeCategory || !scoresMenu) return null;\n\n const category = scoresMenu.categories.find(\n ([key]) => key === activeCategory,\n );\n\n if (!category) return null;\n\n return category[1];\n }, [activeCategory, scoresMenu]);\n\n const handleSelectScore = useCallback(\n (scoreKey: ScoreKey | null) => () => {\n setActiveScore((prev) => (prev === scoreKey ? null : scoreKey));\n\n if (scoreKey === null) {\n setActiveCategory(null);\n return;\n }\n\n const categoryKey =\n scoresMenu.categories.find(([, value]) =>\n value.scores.some(([key]) => key === scoreKey),\n )?.[0] ?? null;\n\n setActiveCategory(categoryKey);\n },\n [setActiveScore, setActiveCategory, scoresMenu.categories],\n );\n\n /**\n * Category selection is a mobile only feature, so when a category is selected,\n * we also clear the active score to avoid confusion.\n */\n const handleSelectCategory = useCallback(\n (categoryKey: CategoryKey | null) => () => {\n setActiveCategory((prev) => (prev === categoryKey ? null : categoryKey));\n setActiveScore(null);\n },\n [setActiveCategory, setActiveScore],\n );\n\n return {\n isLoading: isScoresFetching,\n scoresData,\n activeScore,\n activeScoreData: activeScore === null ? undefined : scoresData[activeScore],\n activeCategory,\n activeCategoryData,\n handleSelectScore,\n handleSelectCategory,\n };\n}\n","import { useQuery } from \"@tanstack/react-query\";\nimport type { TravelMode, Location, DistanceUnits, CommuteData } from \"./types\";\nimport errorTracker from \"~/utils/errorTracker\";\n\nimport { useStateManagerContext } from \"~/context/stateManager\";\nimport { LocalContentProps } from \"~/sdks/LocalContent/types\";\n\nconst MAPBOX_DIRECTIONS_ENDPOINT = `${import.meta.env.VITE_PROVIDERS_ENDPOINT}/v1/directions`;\n\nexport function useCommute({\n mode = \"walking\",\n origin,\n destination,\n label,\n locale = \"en\",\n units = \"metric\",\n}: {\n mode?: TravelMode;\n origin?: Location;\n destination?: Location;\n label?: string;\n locale?: string;\n units?: DistanceUnits;\n}) {\n const { sdkState } = useStateManagerContext<LocalContentProps>();\n\n /**\n * Fetches a route from Mapbox Directions API.\n *\n * @returns CommuteData | null\n */\n const fetchRoutes = async () => {\n if (!origin?.lat || !origin.lng || !destination?.lat || !destination.lng) {\n return null;\n }\n\n let travelMode = \"walking\";\n\n if (mode === \"driving\") {\n travelMode = \"driving\";\n } else if (mode === \"cycling\") {\n travelMode = \"cycling\";\n }\n\n return fetch(\n `${MAPBOX_DIRECTIONS_ENDPOINT}/${travelMode}/${origin.lng},${origin.lat};${destination.lng},${destination.lat}?geometries=geojson`,\n {\n headers: {\n Accept: \"application/json\",\n Authorization: `${sdkState.apiKey as string}`,\n },\n method: \"GET\",\n },\n )\n .then((response) => response.json())\n .then((response) => {\n if (\n (response.data?.routes ?? []).length > 0 &&\n response.data?.code === \"Ok\"\n ) {\n return {\n mode: travelMode,\n distance: response.data.routes[0].distance,\n duration: response.data.routes[0].duration,\n label,\n // Convert coordinates from [lng, lat] to [lat, lng]\n geometry: response.data.routes[0].geometry.coordinates.map(\n (coord: [number, number]) => [coord[1], coord[0]],\n ),\n destination: {\n lat: destination.lat,\n lng: destination.lng,\n },\n } as CommuteData;\n }\n return null;\n })\n .catch((error) => {\n errorTracker.captureException(error);\n throw error;\n });\n };\n\n return useQuery({\n queryKey: [\n \"commute\",\n mode,\n origin?.lat,\n origin?.lng,\n destination?.lat,\n destination?.lng,\n locale,\n units,\n label,\n ],\n queryFn: fetchRoutes,\n enabled:\n !!origin?.lat &&\n !!origin?.lng &&\n !!destination?.lat &&\n !!destination?.lng,\n });\n}\n","import type { SurveyStorage } from \"../types\";\n\nexport const SURVEY_TRIGGER_SESSION_NAME = \"sessions\";\nexport const SURVEY_DISMISS_KEY = \"dismissed\";\nexport const REQUIRED_SESSIONS_WITH_INTERACTION = 2;\n\nexport function isDismissed(storage: SurveyStorage): boolean {\n return storage.getItem(SURVEY_DISMISS_KEY) === \"true\";\n}\n\nexport function getSessions(storage: SurveyStorage): number[] {\n const raw = storage.getItem(SURVEY_TRIGGER_SESSION_NAME);\n return raw ? JSON.parse(raw) : [];\n}\n\nexport function saveSessions(storage: SurveyStorage, sessions: number[]): void {\n storage.setItem(SURVEY_TRIGGER_SESSION_NAME, JSON.stringify(sessions));\n}\n\n/**\n * Registers a new session. Prunes previous sessions with zero interactions.\n * Returns the index of the newly created session.\n */\nexport function registerSession(storage: SurveyStorage): number {\n let sessions = getSessions(storage);\n\n // Prune sessions that had no interactions\n sessions = sessions.filter((count) => count > 0);\n\n sessions.push(0);\n saveSessions(storage, sessions);\n\n return sessions.length - 1;\n}\n\n/**\n * Increments the interaction count for the given session index.\n */\nexport function incrementSession(\n storage: SurveyStorage,\n sessionIndex: number,\n): void {\n const sessions = getSessions(storage);\n\n if (sessions[sessionIndex] === undefined) {\n return;\n }\n\n sessions[sessionIndex] += 1;\n saveSessions(storage, sessions);\n}\n\n/**\n * Evaluates whether the survey should be shown based on stored sessions.\n */\nexport function shouldShowSurvey(storage: SurveyStorage): boolean {\n const sessions = getSessions(storage);\n return (\n sessions.filter((count) => count > 0).length >=\n REQUIRED_SESSIONS_WITH_INTERACTION\n );\n}\n\n/**\n * Marks the survey as dismissed and clears session data.\n */\nexport function dismissSurvey(storage: SurveyStorage): void {\n storage.setItem(SURVEY_DISMISS_KEY, \"true\");\n storage.removeItem(SURVEY_TRIGGER_SESSION_NAME);\n}\n","import React, {\n useState,\n useEffect,\n useRef,\n useCallback,\n createContext,\n} from \"react\";\nimport type { ReactNode } from \"react\";\n\nimport { useFlags } from \"launchdarkly-react-client-sdk\";\n\nimport type { SurveyTriggerContextValue } from \"../types\";\nimport {\n isDismissed as checkIsDismissed,\n registerSession,\n incrementSession,\n shouldShowSurvey,\n dismissSurvey,\n} from \"../session\";\nimport { BrowserStorage } from \"~/utils/browser\";\n\nconst SURVEY_TRIGGER_OBJECT_NAME = \"localContentSurvey\";\n\nexport const SurveyTriggerContext =\n createContext<SurveyTriggerContextValue | null>(null);\n\nexport function SurveyTriggerProvider({ children }: { children: ReactNode }) {\n const storage = useRef(\n new BrowserStorage(SURVEY_TRIGGER_OBJECT_NAME),\n ).current;\n const flags = useFlags();\n const sessionIndexRef = useRef<number | null>(null);\n const [showSurvey, setShowSurvey] = useState(false);\n const [dismissed, setDismissed] = useState(() => checkIsDismissed(storage));\n\n useEffect(() => {\n if (!flags.localContentSurvey || dismissed) {\n return;\n }\n\n const index = registerSession(storage);\n sessionIndexRef.current = index;\n\n if (shouldShowSurvey(storage)) {\n setShowSurvey(true);\n }\n }, [flags.localContentSurvey, dismissed, storage]);\n\n const handleAddSessionTriggerCount = useCallback(() => {\n if (\n !flags.localContentSurvey ||\n dismissed ||\n sessionIndexRef.current === null\n ) {\n return;\n }\n\n incrementSession(storage, sessionIndexRef.current);\n\n if (shouldShowSurvey(storage)) {\n setShowSurvey(true);\n }\n }, [flags.localContentSurvey, dismissed, storage]);\n\n const handleDismiss = useCallback(() => {\n setDismissed(true);\n setShowSurvey(false);\n dismissSurvey(storage);\n }, [storage]);\n\n return (\n <SurveyTriggerContext.Provider\n value={{ showSurvey, handleDismiss, handleAddSessionTriggerCount }}\n >\n {children}\n </SurveyTriggerContext.Provider>\n );\n}\n","import { useContext } from \"react\";\n\nimport { SurveyTriggerContext } from \"./SurveyTriggerProvider\";\n\nexport { SurveyTriggerProvider } from \"./SurveyTriggerProvider\";\nexport type { SurveyTriggerContextValue, SurveyStorage } from \"./types\";\nexport {\n registerSession,\n incrementSession,\n shouldShowSurvey,\n dismissSurvey,\n} from \"./session\";\n\nexport function useSurveyTrigger() {\n const context = useContext(SurveyTriggerContext);\n\n if (!context) {\n throw new Error(\n \"useSurveyTrigger must be used within a SurveyTriggerProvider\",\n );\n }\n\n return context;\n}\n","import React, {\n useContext,\n useEffect,\n useState,\n useMemo,\n useCallback,\n} from \"react\";\n\nimport type { POI, School } from \"@local-logic/client\";\nimport type { MarkerPoint } from \"@local-logic/maps\";\nimport { transformScoresMenuData } from \"./utils/transformScoresMenuData\";\nimport { getPOICategoriesWithAvailableData } from \"./utils/getPOICategoriesWithAvailableData\";\nimport { orderPOICategories } from \"./utils/orderPOICategories\";\nimport type { TransformedScoresMenuData } from \"./utils/transformScoresMenuData/types\";\nimport {\n type LocalContentProps,\n type POISubcategory,\n TrackingPipelineEvents,\n AnalyticsEvents,\n CommuteOptions,\n} from \"./types\";\nimport { useTracking } from \"~/tracking\";\nimport { useScoreSelection } from \"~/sdks/LocalContent/hooks/useScoreSelection\";\nimport { useMarkers } from \"~/hooks/useMarkers\";\nimport { useCommute } from \"~/sdks/LocalContent/hooks/useCommute\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport useEffectOnce from \"~/hooks/useEffectOnce\";\nimport { useStateManagerContext } from \"~/context/stateManager\";\nimport { useLocation } from \"~/hooks/useLocation\";\n\nimport type { CommuteData } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nimport {\n DEFAULT_TRAVEL_MODE,\n DEFAULT_RADIUS,\n DEFAULT_NUMBER_OF_POIS,\n SCORE_POI_CATEGORIES,\n} from \"~/sdks/LocalContent/constants\";\n\nimport { getIdFromMarker } from \"~/utils/map/getIdFromMarker\";\n\ninterface Location {\n lat: LocalContentProps[\"options\"][\"lat\"];\n lng: LocalContentProps[\"options\"][\"lng\"];\n}\n\nexport type DefaultContext = {\n isLoading: boolean;\n isScoresLoading: boolean;\n isMarkersLoading: boolean;\n isCommuteDataLoading: boolean;\n isCategoriesMenuOpen: boolean;\n isCommuteCalculatorOpen: boolean;\n isSidebarExpanded: boolean;\n distanceUnit: LocalContentProps[\"options\"][\"distanceUnit\"];\n locale: \"en\" | \"fr\";\n location: Location;\n country: string;\n centerMarker?: {\n lat: number;\n lng: number;\n addressLabel?: string;\n };\n map: {\n mapProvider: LocalContentProps[\"options\"][\"mapProvider\"];\n zoom: LocalContentProps[\"options\"][\"zoom\"];\n pitch: LocalContentProps[\"options\"][\"pitch\"];\n bearing: LocalContentProps[\"options\"][\"bearing\"];\n cooperativeGestures: LocalContentProps[\"options\"][\"cooperativeGestures\"];\n };\n scoresMenu: TransformedScoresMenuData;\n activeScore: ReturnType<typeof useScoreSelection>[\"activeScore\"];\n activeScoreData: ReturnType<typeof useScoreSelection>[\"activeScoreData\"];\n activeCategory: ReturnType<typeof useScoreSelection>[\"activeCategory\"];\n activeCategoryData: ReturnType<\n typeof useScoreSelection\n >[\"activeCategoryData\"];\n availablePoiSubcategories: POISubcategory[];\n selectedPoiSubcategory: POISubcategory | null;\n activeMarker?: MarkerPoint;\n activeMarkerDetails: School | POI | null;\n scoresData?: ReturnType<typeof useScoreSelection>[\"scoresData\"];\n markersData?: ReturnType<typeof useMarkers>[\"data\"];\n commuteData: CommuteData | null;\n hideScoresList: string[];\n hideAllScores?: boolean;\n showSchoolRatings?: boolean;\n commuteOptions: CommuteOptions;\n hideAttribution?: boolean;\n handleToggleIsCommuteCalculatorOpen: () => void;\n handleToggleIsSidebarExpanded: () => void;\n handleSelectScore: ReturnType<typeof useScoreSelection>[\"handleSelectScore\"];\n handleSelectCategory: ReturnType<\n typeof useScoreSelection\n >[\"handleSelectCategory\"];\n handleSelectPoiSubcategory: (subcategory: POISubcategory | null) => void;\n handleMarkerClick: (marker?: MarkerPoint) => void;\n handleCalculateCommute: (options: DefaultContext[\"commuteOptions\"]) => void;\n};\n\nconst LocalContentContext = React.createContext<DefaultContext>(\n {} as DefaultContext,\n);\n\nconst useLocalContent = () => useContext(LocalContentContext);\n\nconst LocalContentProvider = ({\n children,\n}: {\n children: React.JSX.Element;\n}) => {\n const { sdkState } = useStateManagerContext<LocalContentProps>();\n const tracking = useTracking();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n const [isCategoriesMenuOpen, setIsCategoriesMenuOpen] = useState(false);\n const [isCommuteCalculatorOpen, setIsCommuteCalculatorOpen] = useState(false);\n const [isSidebarExpanded, setIsSidebarExpanded] = useState(\n sdkState.options?.scoresMenu?.defaultOpen ?? true,\n );\n const [availablePoiSubcategories, setAvailablePoiSubcategories] = useState<\n POISubcategory[]\n >([]);\n const [selectedPoiSubcategory, setSelectedPoiSubcategory] =\n useState<DefaultContext[\"selectedPoiSubcategory\"]>(null);\n const [activeMarker, setActiveMarker] = useState<MarkerPoint | undefined>(\n undefined,\n );\n const [commuteOptions, setCommuteOptions] = useState<\n DefaultContext[\"commuteOptions\"]\n >({\n destination: undefined,\n commuteType: DEFAULT_TRAVEL_MODE,\n label: undefined,\n });\n\n const { data: location } = useLocation({\n lat: sdkState.options?.marker?.lat,\n lng: sdkState.options?.marker?.lng,\n });\n\n const { data: commuteData, isLoading: isCommuteDataLoading } = useCommute({\n mode: commuteOptions.commuteType,\n locale: sdkState.globalOptions?.locale || \"en\",\n units: sdkState.options?.distanceUnit,\n label: commuteOptions.label,\n origin: {\n lat: sdkState.options?.lat || 0,\n lng: sdkState.options?.lng || 0,\n },\n destination: commuteOptions.destination,\n });\n\n useEffectOnce(() => {\n const eventAttributes = {\n mapProviderHasCustomKey:\n typeof sdkState.options?.mapProvider?.key !== \"undefined\",\n mapProviderHasCustomTheme:\n typeof sdkState.options?.mapProvider?.theme !== \"undefined\",\n centerMarkerProvided: typeof sdkState.options?.marker !== \"undefined\",\n sidebarDefaultOpen: sdkState.options?.scoresMenu?.defaultOpen,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SDK_VIEWED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SDK_VIEWED,\n eventAttributes,\n });\n });\n\n const handleToggleIsCommuteCalculatorOpen = useCallback(() => {\n setIsCommuteCalculatorOpen((prev) => {\n if (!prev) {\n setIsCategoriesMenuOpen(false);\n } else {\n setCommuteOptions({\n ...commuteOptions,\n label: undefined,\n destination: undefined,\n });\n }\n\n return !prev;\n });\n\n // Close any open popup when toggling commute calculator\n setActiveMarker(undefined);\n }, [commuteOptions]);\n\n const handleToggleIsSidebarExpanded = useCallback(() => {\n setIsSidebarExpanded((prev) => !prev);\n\n // Close any open popup when toggling sidebar to avoid positioning issues\n setActiveMarker(undefined);\n }, []);\n\n const handleSelectPoiSubcategory = useCallback(\n (subcategory: POISubcategory | null) => {\n setSelectedPoiSubcategory((prev) =>\n prev === subcategory ? null : subcategory,\n );\n },\n [],\n );\n\n const handleMarkerClick = useCallback(\n (marker?: MarkerPoint) => {\n if (\n activeMarker?.latitude === marker?.latitude &&\n activeMarker?.longitude === marker?.longitude\n ) {\n setActiveMarker(undefined);\n return;\n }\n\n setActiveMarker(marker);\n },\n [activeMarker, isCategoriesMenuOpen],\n );\n\n const handleCalculateCommute = (\n options: DefaultContext[\"commuteOptions\"],\n ) => {\n handleAddSessionTriggerCount();\n setCommuteOptions(options);\n handleMarkerClick();\n\n if (!isCommuteCalculatorOpen) {\n handleToggleIsCommuteCalculatorOpen();\n }\n };\n\n const sortedScoresMenu = useMemo(\n () => transformScoresMenuData(sdkState.options?.scoresMenu),\n [sdkState.options?.scoresMenu?.categories],\n );\n\n const {\n isLoading: isScoresLoading,\n scoresData,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n handleSelectScore,\n handleSelectCategory,\n } = useScoreSelection({\n scoresMenu: sortedScoresMenu,\n lat: sdkState?.options?.lat || 0,\n lng: sdkState?.options?.lng || 0,\n });\n\n const { isLoading: isMarkersLoading, data: markersData } = useMarkers({\n lat: sdkState?.options?.lat || 0,\n lng: sdkState?.options?.lng || 0,\n categoriesDeprecated: activeScore\n ? SCORE_POI_CATEGORIES[activeScore]\n : undefined,\n radius: DEFAULT_RADIUS,\n limit: DEFAULT_NUMBER_OF_POIS,\n });\n\n useEffect(() => {\n if (\n !activeScore ||\n isMarkersLoading ||\n typeof markersData === \"undefined\" ||\n Object.keys(markersData).length === 0\n ) {\n if (selectedPoiSubcategory !== null) {\n handleSelectPoiSubcategory(null);\n }\n\n return;\n }\n\n const filteredSubcategories =\n getPOICategoriesWithAvailableData(markersData);\n\n if (filteredSubcategories.length === 0) {\n handleSelectPoiSubcategory(null);\n return;\n }\n\n // If a valid subcategory is already selected and still exists in the data, keep it\n if (\n selectedPoiSubcategory !== null &&\n filteredSubcategories.includes(selectedPoiSubcategory)\n ) {\n return;\n }\n\n orderPOICategories(activeScore, filteredSubcategories);\n setAvailablePoiSubcategories(filteredSubcategories as POISubcategory[]);\n\n // Otherwise, select the first available subcategory\n handleSelectPoiSubcategory(filteredSubcategories[0] as POISubcategory);\n }, [isMarkersLoading, markersData, selectedPoiSubcategory]);\n\n /**\n * This is used to determine which scores should be hidden in the UI.\n * It is mainly calculated here to avoid recalculating it in multiple components.\n */\n const hideScoresList = useMemo(() => {\n let tempHideScoresList: string[] = [];\n\n if (!sortedScoresMenu) return tempHideScoresList;\n\n sortedScoresMenu.categories.forEach(([, categoryValue]) => {\n if (categoryValue.hide || sdkState.options?.hideScores) {\n tempHideScoresList = tempHideScoresList.concat(\n categoryValue.scores.flatMap(([scoreKey]) => scoreKey),\n );\n } else {\n tempHideScoresList = tempHideScoresList.concat(\n categoryValue.scores\n .filter(([, scoreValue]) => scoreValue.hideScore)\n .map(([scoreKey]) => scoreKey),\n );\n }\n });\n\n return tempHideScoresList;\n }, [sortedScoresMenu, sdkState.options]);\n\n const activeMarkerDetails = useMemo(() => {\n if (\n !markersData ||\n !selectedPoiSubcategory ||\n !activeMarker ||\n activeMarker.markers.length !== 1\n ) {\n return null;\n }\n\n return (\n markersData[selectedPoiSubcategory]?.find(\n (marker) =>\n activeMarker.markers[0].id ===\n getIdFromMarker(marker.lat, marker.lng, marker.name),\n ) || null\n );\n }, [activeMarker, markersData, selectedPoiSubcategory]);\n\n const contextValue = useMemo(\n () => ({\n isLoading: isScoresLoading || isMarkersLoading,\n isScoresLoading,\n isMarkersLoading,\n isCommuteDataLoading,\n isCategoriesMenuOpen,\n isCommuteCalculatorOpen,\n isSidebarExpanded,\n locale: sdkState.globalOptions?.locale || \"en\",\n location: {\n lat: sdkState.options?.lat,\n lng: sdkState.options?.lng,\n },\n country: location?.country || \"CAN\",\n centerMarker: sdkState.options?.marker,\n distanceUnit: sdkState.options?.distanceUnit,\n map: {\n mapProvider: sdkState.options?.mapProvider,\n zoom: sdkState.options?.zoom,\n pitch: sdkState.options?.pitch,\n bearing: sdkState.options?.bearing,\n cooperativeGestures: sdkState.options?.cooperativeGestures,\n },\n scoresMenu: sortedScoresMenu,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n activeMarker,\n activeMarkerDetails,\n markersData,\n scoresData,\n availablePoiSubcategories,\n selectedPoiSubcategory,\n hideScoresList,\n hideAllScores: sdkState.options?.hideScores,\n showSchoolRatings: sdkState.options?.showSchoolRatings,\n commuteData: commuteData || null,\n commuteOptions,\n hideAttribution: sdkState.options?.hideAttribution,\n handleToggleIsCommuteCalculatorOpen,\n handleToggleIsSidebarExpanded,\n handleSelectScore,\n handleSelectCategory,\n handleSelectPoiSubcategory,\n handleMarkerClick,\n handleCalculateCommute,\n }),\n [\n isScoresLoading,\n isMarkersLoading,\n isCategoriesMenuOpen,\n isCommuteCalculatorOpen,\n isSidebarExpanded,\n isCommuteDataLoading,\n sdkState.globalOptions,\n sdkState.options,\n location,\n sortedScoresMenu,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n activeMarker,\n activeMarkerDetails,\n markersData,\n scoresData,\n availablePoiSubcategories,\n selectedPoiSubcategory,\n commuteData,\n hideScoresList,\n commuteOptions,\n sdkState.options?.hideAttribution,\n handleToggleIsCommuteCalculatorOpen,\n handleToggleIsSidebarExpanded,\n handleSelectScore,\n handleSelectCategory,\n handleSelectPoiSubcategory,\n handleMarkerClick,\n handleCalculateCommute,\n ],\n );\n\n return (\n <LocalContentContext.Provider value={contextValue}>\n {children}\n </LocalContentContext.Provider>\n );\n};\n\nexport { useLocalContent, LocalContentProvider, type Location };\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { HorizontalScrollFilters } from \"@local-logic/design-system\";\nimport {\n type Icon,\n TrainIcon,\n PencilRulerIcon,\n ShoppingCartIcon,\n ConfettiIcon,\n PlantIcon,\n FlowerLotusIcon,\n} from \"@phosphor-icons/react\";\nimport * as styles from \"./styles\";\nimport { useTracking } from \"~/tracking\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\nimport {\n type CategoryKey,\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nconst categoryIcons: Record<CategoryKey, Icon> = {\n transport: TrainIcon,\n education: PencilRulerIcon,\n amenities: ShoppingCartIcon,\n character: ConfettiIcon,\n nature: FlowerLotusIcon,\n health: PlantIcon,\n};\n\nexport function Header({ scores }: { scores: TransformedScoresMenuData }) {\n const tracking = useTracking();\n const { activeCategory, handleSelectCategory: onSelectCategory } =\n useLocalContent();\n const { t } = useTranslation(\"localContent\");\n const breakpoints = useResponsiveBreakpoints();\n\n const handleSelectCategory = (categoryKey: CategoryKey | null) => () => {\n onSelectCategory(categoryKey)();\n\n if (categoryKey === null) {\n return;\n }\n\n const eventAttributes = {\n category: categoryKey,\n isExpanded: activeCategory === categoryKey,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.CATEGORIES_MENU_CATEGORY_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.CATEGORIES_MENU_CATEGORY_SELECTED,\n eventAttributes,\n });\n };\n\n if (breakpoints.sm || scores.categories.length === 0) {\n return null;\n }\n\n return (\n <div className={styles.container} data-testid=\"categories-mobile-header\">\n <HorizontalScrollFilters.Root>\n <HorizontalScrollFilters.ScrollList>\n {scores.categories.map(([categoryKey, categoryValue]) => (\n <HorizontalScrollFilters.Filter<CategoryKey>\n key={`category-${categoryKey}`}\n filter={categoryKey}\n label={t(`categories.${categoryKey}`)}\n icon={categoryIcons[categoryKey]}\n iconBackgroundColor={categoryValue.colors?.background}\n iconFillColor={categoryValue.colors?.fill}\n isActive={categoryKey === activeCategory}\n onSelectFilter={handleSelectCategory(categoryKey)}\n />\n ))}\n </HorizontalScrollFilters.ScrollList>\n </HorizontalScrollFilters.Root>\n </div>\n );\n}\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"react\")):\"function\"==typeof define&&define.amd?define([\"react\"],t):\"object\"==typeof exports?exports[\"embed-react\"]=t(require(\"react\")):e[\"embed-react\"]=t(e.react)}(this,function(e){return function(){var t={9:function(e,t,n){\"use strict\";n.r(t),t.default=\".tf-v1-widget{width:100%;height:100%;min-height:inherit;position:relative}.tf-v1-widget iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px;min-height:inherit}.tf-v1-widget-close{display:none}.tf-v1-widget-iframe-overlay{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px;position:absolute;top:0;left:0}.tf-v1-widget-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;width:100% !important;height:100% !important}.tf-v1-widget-fullscreen .tf-v1-widget-close{display:block;display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-widget-fullscreen .tf-v1-widget-close:hover{opacity:1}@media(min-width: 481px){.tf-v1-widget-fullscreen .tf-v1-widget-close{color:#fff !important}}.tf-v1-widget-fullscreen .tf-v1-widget-close{z-index:1}.tf-v1-widget-fullscreen iframe{border-radius:0}\"},93:function(e,t,n){\"use strict\";var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.InlineStyle=void 0;var i=r(n(155)),a=r(n(206));t.InlineStyle=function(e){var t=e.filename,r=n(663)(\"./\".concat(t,\".css\")),c=(0,a.default)();return i.default.createElement(\"style\",o({},c?{nonce:c}:{},{dangerouslySetInnerHTML:{__html:r.default}}))}},123:function(e,t,n){\"use strict\";n.r(t),t.default=\"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-popup{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);transition:opacity .25s ease-in-out;z-index:10001;display:flex;align-items:center;justify-content:center}.tf-v1-popup .tf-v1-iframe-wrapper{position:relative;transition:opacity .25s ease-in-out;min-width:360px;min-height:360px}.tf-v1-popup .tf-v1-iframe-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px}.tf-v1-popup .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:-34px;right:0;background:none;border:none;border-radius:0}.tf-v1-popup .tf-v1-close:hover{opacity:1}@media(min-width: 481px){.tf-v1-popup .tf-v1-close{color:#fff !important}}.tf-v1-popup .tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media(max-width: 480px){.tf-v1-popup{width:100% !important;height:100% !important}.tf-v1-popup .tf-v1-iframe-wrapper{position:relative;transition:opacity .25s ease-in-out;min-width:100%;min-height:100%}.tf-v1-popup .tf-v1-iframe-wrapper iframe{border-radius:0}.tf-v1-popup .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-popup .tf-v1-close:hover{opacity:1}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-popup .tf-v1-close{color:#fff !important}}\"},155:function(t){\"use strict\";t.exports=e},161:function(e,t,n){\"use strict\";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.memoComponent=t.propsAreEqual=void 0;var r=n(155),i=o(n(792));t.propsAreEqual=function(e,t){return(0,i.default)(e,t)},t.memoComponent=function(e){return(0,r.memo)(e,t.propsAreEqual)}},193:function(e,t,n){\"use strict\";var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)\"default\"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},c=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.makeButtonComponent=void 0;var s=a(n(155)),u=n(517),l=n(93);t.makeButtonComponent=function(e,t){return function(n){var r=n.id,i=n.children,a=n.as,d=void 0===a?\"button\":a,f=n.style,p=void 0===f?{}:f,v=n.className,m=void 0===v?\"\":v,h=n.buttonProps,b=n.embedRef,g=c(n,[\"id\",\"children\",\"as\",\"style\",\"className\",\"buttonProps\",\"embedRef\"]),y=(0,s.useRef)(u.genericEmbed),w=b||y;(0,s.useEffect)(function(){return w.current=e(r,g),function(){var e;return null===(e=w.current)||void 0===e?void 0:e.unmount()}},[r,g,w]);var x=(0,s.useMemo)(function(){return function(){var e;return null===(e=w.current)||void 0===e?void 0:e.open()}},[w]),_=s.default.createElement(d,o({style:p,className:m,onClick:x,\"data-testid\":\"tf-v1-\".concat(t),children:i},h));return s.default.createElement(s.default.Fragment,null,s.default.createElement(l.InlineStyle,{filename:t}),_)}}},206:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(){return void 0!==n.g.__webpack_nonce__?n.g.__webpack_nonce__:null}},231:function(e,t,n){\"use strict\";n.r(t),t.default=\"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-sidetab{position:fixed;top:50%;right:0;width:400px;height:580px;transform:translate(100%, -50%);box-shadow:0 2px 4px rgba(0,0,0,.08),0 2px 12px rgba(0,0,0,.06);z-index:10001;will-change:transform}.tf-v1-sidetab.ready{transition:transform 400ms cubic-bezier(0.5, 0, 0.75, 0)}.tf-v1-sidetab iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px 0 0 8px}.tf-v1-sidetab.open{transform:translate(0, -50%)}.tf-v1-sidetab-wrapper{position:relative;height:100%}.tf-v1-sidetab-button{position:absolute;top:50%;left:-48px;transform:rotate(-90deg) translateX(-50%);transform-origin:left top;min-width:100px;max-width:540px;height:48px;display:flex;align-items:center;padding:12px 16px;border-radius:8px 8px 0 0;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.08),0 2px 12px rgba(0,0,0,.06);background-color:#3a7685;cursor:pointer;border:0;text-decoration:none;outline:none}.tf-v1-sidetab-button-text{flex:1;font-size:18px;font-family:Helvetica,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-v1-sidetab-button-icon{width:24px;height:24px;font-size:24px;transform:rotate(90deg);margin-right:12px;position:relative;order:-1}.tf-v1-sidetab-button-icon>img{width:100%;height:100%;object-fit:contain}.tf-v1-sidetab-close{display:none}.tf-v1-sidetab .tf-v1-spinner{border:3px solid #aaa;font-size:24px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-12px 0 0 -12px;top:0;left:0;margin:0}@media(max-width: 480px){.tf-v1-sidetab{transition:unset}.tf-v1-sidetab.ready{transition:unset}.tf-v1-sidetab.open{top:0;left:0;right:0;bottom:0;transform:translate(0, 0);width:100% !important;height:100% !important}.tf-v1-sidetab-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-sidetab-close:hover{opacity:1}.tf-v1-sidetab-close{display:block;z-index:1}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-sidetab-close{color:#fff !important}}\"},240:function(e,t,n){\"use strict\";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(193),t),r(n(390),t),r(n(558),t)},390:function(e,t,n){\"use strict\";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)\"default\"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&o(t,e,n);return r(t,e),t},a=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.makeInitializerComponent=void 0;var c=i(n(155)),s=n(517),u=n(93);t.makeInitializerComponent=function(e,t){return function(n){var o=n.id,r=n.embedRef,i=a(n,[\"id\",\"embedRef\"]),l=(0,c.useRef)(s.genericEmbed),d=r||l;return(0,c.useEffect)(function(){return d.current=e(o,i),function(){var e;null===(e=d.current)||void 0===e||e.unmount()}},[o,i,d]),c.default.createElement(u.InlineStyle,{filename:t})}}},517:function(e,t,n){\"use strict\";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(804),t),r(n(161),t)},558:function(e,t,n){\"use strict\";var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)\"default\"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},c=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Widget=void 0;var s=a(n(155)),u=n(952),l=n(93);t.Widget=function(e){var t=e.id,n=e.style,r=void 0===n?{}:n,i=e.className,a=void 0===i?\"\":i,d=c(e,[\"id\",\"style\",\"className\"]),f=(0,s.useRef)(null);return(0,s.useEffect)(function(){if(f.current){var e=(0,u.createWidget)(t,o(o({},d),{container:f.current}));return function(){e.unmount()}}},[t,d]),s.default.createElement(s.default.Fragment,null,s.default.createElement(l.InlineStyle,{filename:\"widget\"}),s.default.createElement(\"div\",{style:r,className:a,ref:f}))}},663:function(e,t,n){var o={\"./popover.css\":842,\"./popup.css\":123,\"./sidetab.css\":231,\"./slider.css\":806,\"./widget.css\":9};function r(e){var t=i(e);return n(t)}function i(e){if(!n.o(o,e)){var t=new Error(\"Cannot find module '\"+e+\"'\");throw t.code=\"MODULE_NOT_FOUND\",t}return o[e]}r.keys=function(){return Object.keys(o)},r.resolve=i,e.exports=r,r.id=663},792:function(e){\"use strict\";e.exports=function e(t,n){if(t===n)return!0;if(t&&n&&\"object\"==typeof t&&\"object\"==typeof n){if(t.constructor!==n.constructor)return!1;var o,r,i;if(Array.isArray(t)){if((o=t.length)!=n.length)return!1;for(r=o;0!==r--;)if(!e(t[r],n[r]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((o=(i=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(r=o;0!==r--;)if(!Object.prototype.hasOwnProperty.call(n,i[r]))return!1;for(r=o;0!==r--;){var a=i[r];if(!e(t[a],n[a]))return!1}return!0}return t!=t&&n!=n}},804:function(e,t){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.genericEmbed=void 0,t.genericEmbed={unmount:function(){},open:function(){}}},806:function(e,t,n){\"use strict\";n.r(t),t.default=\"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-slider{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);transition:opacity .25s ease-in-out;z-index:10001}.tf-v1-slider .tf-v1-iframe-wrapper{max-width:calc(100vw - 26px);height:100%;position:absolute;top:0;transition:right .5s ease-in-out,left .5s ease-in-out}.tf-v1-slider .tf-v1-iframe-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:0}@media(min-width: 481px){.tf-v1-slider .tf-v1-iframe-wrapper iframe{border-radius:8px 0 0 8px}}.tf-v1-slider .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-slider .tf-v1-close:hover{opacity:1}@media(min-width: 481px){.tf-v1-slider .tf-v1-close{color:#fff !important}}@media(min-width: 481px){.tf-v1-slider .tf-v1-close{top:4px;left:-26px}}.tf-v1-slider .tf-v1-close:hover{opacity:1}.tf-v1-slider .tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media(min-width: 481px){.tf-v1-slider.left .tf-v1-iframe-wrapper iframe{border-radius:0 8px 8px 0}.tf-v1-slider.left .tf-v1-close{left:auto;right:-24px}}@media(max-width: 480px){.tf-v1-slider{width:100% !important;height:100% !important}.tf-v1-slider .tf-v1-iframe-wrapper{width:100% !important;max-width:100vw;height:100%;transition:unset}.tf-v1-slider .tf-v1-iframe-wrapper iframe{border-radius:none}.tf-v1-slider .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-slider .tf-v1-close:hover{opacity:1}.tf-v1-slider .tf-v1-close{left:auto}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-slider .tf-v1-close{color:#fff !important}}\"},842:function(e,t,n){\"use strict\";n.r(t),t.default='@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-popover{bottom:96px;position:fixed;right:16px;z-index:10001}.tf-v1-popover.open{max-width:100%;min-height:360px;min-width:360px}.tf-v1-popover-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:100%;width:100%;opacity:0;transition:opacity .25s ease-in-out;border-radius:4px;box-shadow:rgba(0,0,0,.08) 0 2px 4px,rgba(0,0,0,.06) 0 2px 12px}.tf-v1-popover-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px}.tf-v1-popover-close{display:none}.tf-v1-popover-button{width:54px;height:54px;position:fixed;box-shadow:0 2px 12px rgba(0,0,0,.06),0 2px 4px rgba(0,0,0,.08);color:#fff;right:26px;bottom:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;background:#3a7685;line-height:0;border:none;padding:0}.tf-v1-popover-button-icon{width:54px;height:54px;font-size:24px;border-radius:50%;overflow:hidden;display:flex;justify-content:center;align-items:center}.tf-v1-popover-button-icon svg.default{margin-top:6px}.tf-v1-popover-button-icon svg,.tf-v1-popover-button-icon img{max-width:54px;max-height:54px}.tf-v1-popover-button-icon img{width:100%;height:100%;object-fit:cover;border-radius:50%}.tf-v1-popover-tooltip{position:fixed;right:94px;bottom:33px;max-width:240px;padding:10px 25px 10px 10px;border-radius:8px;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.08),0 2px 12px rgba(0,0,0,.06);font-size:14px;font-family:Helvetica,Arial,sans-serif;line-height:22px}.tf-v1-popover-tooltip::before{background-color:#fff;content:\"\";display:block;width:12px;height:12px;position:absolute;right:-4px;bottom:15px;transform:rotate(45deg);box-shadow:2px -2px 2px 0 rgba(0,0,0,.06)}.tf-v1-popover-tooltip-text{overflow:hidden}.tf-v1-popover-tooltip-close{cursor:pointer;margin-left:4px;display:inline-block;text-align:center;position:absolute;top:12px;right:6px}.tf-v1-popover-tooltip-close svg{width:20px;height:20px}.tf-v1-popover-tooltip-close svg path{fill:rgba(0,0,0,.2);transition:fill 150ms ease-in-out}.tf-v1-popover-tooltip-close:hover svg path{fill:rgba(0,0,0,.3)}.tf-v1-popover-tooltip.closing{transition:opacity .25s ease-in-out;opacity:0}.tf-v1-popover-unread-dot{width:8px;height:8px;border-radius:50%;background-color:#fa6b05;border:2px solid #fff;position:absolute;top:2px;right:2px}.tf-v1-popover-unread-dot.closing{transition:opacity .25s ease-in-out;opacity:0}.tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media(max-width: 480px){.tf-v1-popover.open{top:0;left:0;bottom:0;right:0;width:100% !important;height:100% !important}.tf-v1-popover.open .tf-v1-popover-close{display:block}.tf-v1-popover-wrapper{border-radius:0;box-shadow:none}.tf-v1-popover-wrapper iframe{border-radius:0}.tf-v1-popover-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-popover-close:hover{opacity:1}.tf-v1-popover-close{display:none;z-index:1}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-popover-close{color:#fff !important}}@media(max-width: 480px){.tf-v1-popover-button{width:44px;height:44px;right:8px;bottom:8px}.tf-v1-popover-button-icon{font-size:20px}.tf-v1-popover-button-icon svg{margin-top:4px;max-height:24px;max-width:24px}.tf-v1-popover-button-icon img{max-width:44px;max-height:44px}.tf-v1-popover-tooltip{position:fixed;right:66px;bottom:8px;left:auto;font-size:12px}.tf-v1-popover-tooltip::before{bottom:14px}.tf-v1-popover-unread-dot{top:0;right:0}.tf-v1-spinner{border:3px solid #aaa;font-size:32px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-16px 0 0 -16px}}'},952:function(e){e.exports=function(){\"use strict\";var e={19:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},249:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},352:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.setAutoClose=t.DEFAULT_AUTO_CLOSE_TIME=void 0;var o=n(476);t.DEFAULT_AUTO_CLOSE_TIME=500,t.setAutoClose=function(e,n,r){n&&r&&window.addEventListener(\"message\",(0,o.getFormSubmitHandler)(e,function(){return setTimeout(r,(o=\"number\"==typeof(e=n)?e:0,Math.max(o,t.DEFAULT_AUTO_CLOSE_TIME)));var e,o}))}},476:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRedirectHandler=t.getThankYouScreenButtonClickHandler=t.getFormThemeHandler=t.getWelcomeScreenHiddenHandler=t.getDuplicateDetectedHandler=t.getFormSubmitHandler=t.getFormHeightChangedHandler=t.getFormQuestionChangedHandler=t.getFormStartedHandler=t.getFormReadyHandler=void 0;var r=n(1407);t.getFormReadyHandler=function(e,t){return a(\"form-ready\",e,t)},t.getFormStartedHandler=function(e,t){return a(\"form-started\",e,t)},t.getFormQuestionChangedHandler=function(e,t){return a(\"form-screen-changed\",e,t)},t.getFormHeightChangedHandler=function(e,t){return a(\"form-height-changed\",e,t)},t.getFormSubmitHandler=function(e,t){return a(\"form-submit\",e,t)},t.getDuplicateDetectedHandler=function(e,t){return a(\"duplicate-detected\",e,t)},t.getWelcomeScreenHiddenHandler=function(e,t){return a(\"welcome-screen-hidden\",e,t)},t.getFormThemeHandler=function(e,t){return a(\"form-theme\",e,t)},t.getThankYouScreenButtonClickHandler=function(e,t){return a(\"thank-you-screen-button-click\",e,t)},t.getRedirectHandler=function(e,t){return a([\"redirect-after-submit\",\"thank-you-screen-redirect\"],e,(0,r.handleFormRedirect)(t))};var i=function(e,t){return Array.isArray(e)?e.includes(t):e===t};function a(e,t,n){return function(r){var a=r.data,c=a.type,s=a.embedId,u=o(a,[\"type\",\"embedId\"]);i(e,c)&&s===t&&(null==n||n(u))}}},883:function(e,t){var n=this&&this.__awaiter||function(e,t,n,o){return new(n||(n=Promise))(function(r,i){function a(e){try{s(o.next(e))}catch(e){i(e)}}function c(e){try{s(o.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,c)}s((o=o.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){var n,o,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},\"function\"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(c){return function(s){return function(c){if(n)throw new TypeError(\"Generator is already executing.\");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(n=1,o&&(r=2&c[0]?o.return:c[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,c[1])).done)return r;switch(o=0,r&&(c=[2&c[0],r.value]),c[0]){case 0:case 1:r=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,o=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!r||c[1]>r[0]&&c[1]<r[3])){a.label=c[1];break}if(6===c[0]&&a.label<r[1]){a.label=r[1],r=c;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(c);break}r[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],o=0}finally{n=r=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,s])}}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.dispatchCustomKeyEventFromIframe=t.removeCustomKeyboardListener=t.addCustomKeyboardListener=void 0;var r=\"Escape\",i=function(e,i){return n(void 0,void 0,void 0,function(){return o(this,function(n){return e.code===r&&\"function\"==typeof i&&(i(),(0,t.removeCustomKeyboardListener)()),[2]})})};t.addCustomKeyboardListener=function(e){return window.document.addEventListener(\"keydown\",function(t){return i(t,e)})},t.removeCustomKeyboardListener=function(){return window.document.removeEventListener(\"keydown\",i)},t.dispatchCustomKeyEventFromIframe=function(e){\"form-close\"===e.data.type&&window.document.dispatchEvent(new KeyboardEvent(\"keydown\",{code:r}))}},1179:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createPopover=void 0;var i=n(6517),a=n(6530),c=function(e,t){var n=e.parentNode;n&&(n.removeChild(e),n.appendChild(t))},s=function(e,t){void 0===e&&(e=\"span\"),void 0===t&&(t=\"tf-v1-popover-button-icon\");var n=document.createElement(e);return n.className=\"\".concat(t,\" tf-v1-close-icon\"),n.innerHTML=i.closeIconSvg,n.dataset.testid=t,n},u={buttonColor:\"#3a7685\"};t.createPopover=function(e,t){void 0===t&&(t={});var n,l,d,f=o(o({},u),t),p=f.domain,v=r(f,[\"domain\"]),m=(0,i.createIframe)(\"popover\",{formId:e,domain:p,options:v}),h=m.iframe,b=m.embedId,g=m.refresh,y=m.focus,w=function(e,t){var n=document.createElement(\"div\");return n.className=\"tf-v1-popover\",n.dataset.testid=\"tf-v1-popover\",(0,i.setElementSize)(n,{width:e,height:t})}(v.width,v.height),x=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-popover-wrapper\",e.dataset.testid=\"tf-v1-popover-wrapper\",e}(),_=function(e,t){var n=(0,i.getTextColor)(t),o=document.createElement(\"div\");o.className=\"tf-v1-popover-button-icon\";var r=(0,i.triggerIconSvg)(n),a=null==e?void 0:e.startsWith(\"http\");return o.innerHTML=a?\"<img alt='popover trigger icon button' src='\".concat(e,\"'/>\"):null!=e?e:r,o.dataset.testid=\"default-icon\",o}(v.customIcon,v.buttonColor||u.buttonColor),O=function(){var e=document.createElement(\"div\");e.className=\"tf-v1-spinner\";var t=document.createElement(\"div\");return t.className=\"tf-v1-popover-button-icon\",t.dataset.testid=\"spinner-icon\",t.append(e),t}(),E=s(),P=s(\"button\",\"tf-v1-popover-close\"),j=function(e,t){void 0===t&&(t={});var n=(0,i.getTextColor)(e),o=document.createElement(\"button\");return o.className=\"tf-v1-popover-button\",o.dataset.testid=\"tf-v1-popover-button\",o.style.backgroundColor=e,o.style.color=n,(0,i.addAttributesToElement)(o,t),o}(v.buttonColor||u.buttonColor,v.buttonProps);(v.container||document.body).append(w),x.append(h),w.append(j),w.append(P),j.append(_);var S=function(){l&&l.parentNode&&(l.classList.add(\"closing\"),setTimeout(function(){(0,i.unmountElement)(l)},250))};v.tooltip&&v.tooltip.length>0&&(l=function(e,t){var n=document.createElement(\"span\");n.className=\"tf-v1-popover-tooltip-close\",n.dataset.testid=\"tf-v1-popover-tooltip-close\",n.innerHTML=i.closeIconSvg,n.onclick=t;var o=document.createElement(\"div\");o.className=\"tf-v1-popover-tooltip-text\",o.innerHTML=e;var r=document.createElement(\"div\");return r.className=\"tf-v1-popover-tooltip\",r.dataset.testid=\"tf-v1-popover-tooltip\",r.appendChild(o),r.appendChild(n),r}(v.tooltip,S),w.append(l)),v.notificationDays&&(v.enableSandbox||(0,a.canBuildNotificationDot)(e))&&(d=(0,a.buildNotificationDot)(),j.append(d)),h.onload=function(e){(null==e?void 0:e.isTrusted)&&(w.classList.add(\"open\"),x.style.opacity=\"1\",P.style.opacity=\"1\",c(O,E),(0,i.addCustomKeyboardListener)(T))};var I=function(){(0,i.isOpen)(x)||(S(),d&&(d.classList.add(\"closing\"),v.notificationDays&&!v.enableSandbox&&(0,a.saveNotificationDotHideUntilTime)(e,v.notificationDays),setTimeout(function(){(0,i.unmountElement)(d)},250)),setTimeout(function(){(0,i.isInPage)(x)?(x.style.opacity=\"0\",P.style.opacity=\"0\",x.style.display=\"flex\",setTimeout(function(){w.classList.add(\"open\"),x.style.opacity=\"1\",P.style.opacity=\"1\"}),c(_,E)):(w.append(x),c(_,O),x.style.opacity=\"0\",P.style.opacity=\"0\")}))},T=function(){var n;(0,i.isOpen)(w)&&((0,i.handlePreventReopenOnClose)(v,e),null===(n=t.onClose)||void 0===n||n.call(t),setTimeout(function(){v.keepSession?x.style.display=\"none\":(0,i.unmountElement)(x),w.classList.remove(\"open\"),c(E,_)},250))};(0,i.setAutoClose)(b,v.autoClose,T);var M=function(){(0,i.isOpen)(x)?T():I()};return j.onclick=(0,i.invokeWithoutDefault)(M),P.onclick=(0,i.invokeWithoutDefault)(T),v.open&&!(0,i.isOpen)(x)&&(n=(0,i.handleCustomOpen)(I,v,e)),{open:I,close:T,toggle:M,refresh:g,focus:y,unmount:function(){(0,i.unmountElement)(w),v.open&&(null==n?void 0:n.remove)&&n.remove()}}}},1403:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.getTextColor=void 0;var o=n(6546);t.getTextColor=function(e){if(!e)return\"#FFFFFF\";var t=e.startsWith(\"#\")?(0,o.hexRgb)(e):function(e){var t={red:0,green:0,blue:0},n=e.match(/\\d+/g);return n&&(t.red=parseInt(n[0],10),t.green=parseInt(n[0],10),t.blue=parseInt(n[0],10)),t}(e),n=t.red,r=t.green,i=t.blue;return Math.round((299*n+587*r+114*i)/1e3)>150?\"#000000\":\"#FFFFFF\"}},1407:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.handleFormRedirect=void 0,t.handleFormRedirect=function(e){return function(t){var n,o,r=t.url,i=t.target;if(r)switch(void 0===i?\"_parent\":i){case\"_self\":e.src=(n=e.src,(o=r).includes(\"#\")&&o.startsWith(\"\".concat(n,\"#\"))?o.includes(\"?\")?o.replace(\"#\",\"&tf-embed-ts=\".concat(Date.now(),\"#\")):o.replace(\"#\",\"?tf-embed-ts=\".concat(Date.now(),\"#\")):o);break;case\"_blank\":window.open(r,\"_blank\");break;case\"_top\":var a=document.createElement(\"a\");a.href=r,a.target=\"_top\",document.body.appendChild(a),a.click(),document.body.removeChild(a);break;default:window.location.href=r}else console.error(\"Redirect failed, no URL provided\")}}},1706:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.lazyInitialize=void 0,t.lazyInitialize=function(e,t){var n=new IntersectionObserver(function(e){e.forEach(function(e){e.isIntersecting&&(t(),n.unobserve(e.target))})});n.observe(e)}},1915:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(3869),t),r(n(8885),t)},1947:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.refreshIframe=void 0,t.refreshIframe=function(e){if(e){var t=e.src;if(t.includes(\"&refresh\")){var n=t.split(\"&refresh#\");e.src=n.join(\"#\")}else(n=t.split(\"#\"))[0]=\"\".concat(n[0],\"&refresh\"),e.src=n.join(\"#\")}}},2114:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.sleep=void 0,t.sleep=function(e){return new Promise(function(t){return setTimeout(t,e)})}},2466:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.WIDGET_ATTRIBUTE=t.SLIDER_WIDTH=t.SLIDER_POSITION=t.SLIDER_ATTRIBUTE=t.SIDETAB_ATTRIBUTE=t.POPUP_SIZE=t.POPUP_ATTRIBUTE=t.POPOVER_ATTRIBUTE=t.LIVE_EMBED_DATA_REGION_EU=t.LIVE_EMBED_DATA_REGION_ATTRIBUTE=t.LIVE_EMBED_ATTRIBUTE=t.DEFAULT_EU_DOMAIN=t.DEFAULT_DOMAIN=void 0,t.DEFAULT_DOMAIN=\"form.typeform.com\",t.DEFAULT_EU_DOMAIN=\"form.typeform.eu\",t.LIVE_EMBED_ATTRIBUTE=\"data-tf-live\",t.LIVE_EMBED_DATA_REGION_ATTRIBUTE=\"data-tf-region\",t.LIVE_EMBED_DATA_REGION_EU=\"eu\",t.POPOVER_ATTRIBUTE=\"data-tf-popover\",t.POPUP_ATTRIBUTE=\"data-tf-popup\",t.POPUP_SIZE=100,t.SIDETAB_ATTRIBUTE=\"data-tf-sidetab\",t.SLIDER_ATTRIBUTE=\"data-tf-slider\",t.SLIDER_POSITION=\"right\",t.SLIDER_WIDTH=800,t.WIDGET_ATTRIBUTE=\"data-tf-widget\"},2588:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.overrideFullScreenStyles=void 0,t.overrideFullScreenStyles=function(e,t){Object.assign(e.style,{zIndex:\"10001\",position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"}),t.style.borderRadius=\"0\",Object.assign(document.body.style,{overflow:\"hidden\"})}},2689:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.isDefined=void 0,t.isDefined=function(e){return null!=e}},3106:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.handleCustomOpen=t.handlePreventReopenOnClose=void 0;var n={remove:function(){}};t.handlePreventReopenOnClose=function(e,t){e.preventReopenOnClose&&r(t)},t.handleCustomOpen=function(e,t,r){var i=t.open,a=t.openValue,c=t.preventReopenOnClose,s=function(e,t,n,r){return function(){var i,a;if(!(r&&o(t)||\"all\"===n&&(a=document.querySelector(\".tf-v1-popup, .tf-v1-slider, .tf-v1-popover-wrapper, .tf-v1-sidetab-wrapper\"),(null==a?void 0:a.offsetHeight)||(null==a?void 0:a.offsetWidth)||(null===(i=null==a?void 0:a.getClientRects())||void 0===i?void 0:i.length))||\"same\"===n&&function(e){var t=document.querySelectorAll(\".tf-v1-popup, .tf-v1-slider, .tf-v1-popover-wrapper, .tf-v1-sidetab-wrapper\");return Array.from(t).some(function(t){var n,o=null===(n=t.querySelector(\"iframe\"))||void 0===n?void 0:n.src;return(null==o?void 0:o.includes(\"typeform.com/to/\".concat(e)))||(null==o?void 0:o.startsWith(e))})}(t)))return e()}}(e,r,t.respectOpenModals,c);switch(i){case\"load\":return s(),n;case\"exit\":return a?function(e,t){var n=0,o=function(r){r.clientY<e&&r.clientY<n?(document.removeEventListener(\"mousemove\",o,!0),t()):n=r.clientY};return document.addEventListener(\"mousemove\",o,!0),{remove:function(){return document.removeEventListener(\"mousemove\",o,!0)}}}(a,s):n;case\"time\":return setTimeout(function(){s()},a),n;case\"scroll\":return a?function(e,t){function n(){var o=window.pageYOffset||document.documentElement.scrollTop,r=document.documentElement.clientTop||0,i=document.documentElement.scrollHeight,a=o-r,c=a/i*100,s=a+window.innerHeight>=i;(c>=e||s)&&(t(),document.removeEventListener(\"scroll\",n))}return document.addEventListener(\"scroll\",n),{remove:function(){return document.removeEventListener(\"scroll\",n)}}}(a,s):n;default:return n}};var o=function(e){return document.cookie.includes(\"tf-\".concat(e,\"-closed=true\"))},r=function(e){document.cookie=\"tf-\".concat(e,\"-closed=true;Path=/\")}},3124:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.setElementSize=t.getValueWithUnits=void 0,t.getValueWithUnits=function(e){return\"string\"!=typeof e||e.match(/^[0-9]+$/)?\"\".concat(e,\"px\"):e},t.setElementSize=function(e,n){var o=n.width,r=n.height;return o&&(e.style.width=(0,t.getValueWithUnits)(o)),r&&(e.style.height=(0,t.getValueWithUnits)(r)),e}},3542:function(e,t,n){var o=this&&this.__awaiter||function(e,t,n,o){return new(n||(n=Promise))(function(r,i){function a(e){try{s(o.next(e))}catch(e){i(e)}}function c(e){try{s(o.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,c)}s((o=o.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){var n,o,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},\"function\"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(c){return function(s){return function(c){if(n)throw new TypeError(\"Generator is already executing.\");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(n=1,o&&(r=2&c[0]?o.return:c[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,c[1])).done)return r;switch(o=0,r&&(c=[2&c[0],r.value]),c[0]){case 0:case 1:r=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,o=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!r||c[1]>r[0]&&c[1]<r[3])){a.label=c[1];break}if(6===c[0]&&a.label<r[1]){a.label=r[1],r=c;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(c);break}r[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],o=0}finally{n=r=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,s])}}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.waitForHubspotCookie=t.getHubspotHiddenFields=t.getHubspotCookieValue=void 0;var i=n(2114);t.getHubspotCookieValue=function(){var e=document.cookie.match(new RegExp(\"(^| )\".concat(\"hubspotutk\",\"=([^;]+)\")));return e&&e[2]||void 0},t.getHubspotHiddenFields=function(){return{hubspot_page_name:document.title,hubspot_page_url:window.location.href,hubspot_utk:(0,t.getHubspotCookieValue)()}},t.waitForHubspotCookie=function(){return o(void 0,void 0,void 0,function(){var e,n;return r(this,function(o){switch(o.label){case 0:e=10,n=0,o.label=1;case 1:return!(0,t.getHubspotCookieValue)()&&n<e?[4,(0,i.sleep)(250)]:[3,4];case 2:o.sent(),o.label=3;case 3:return n++,[3,1];case 4:return[2]}})})}},3631:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.buildWidget=void 0;var o=n(6517);t.buildWidget=function(e,t,n){var r=document.createElement(\"div\");return r.className=\"tf-v1-widget\",r.dataset.testid=\"tf-v1-widget\",r.append(e),(0,o.setElementSize)(r,{width:t,height:n})}},3709:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},n.apply(this,arguments)};Object.defineProperty(t,\"__esModule\",{value:!0}),t.getTransitiveSearchParams=void 0,t.getTransitiveSearchParams=function(e){var t=new URL(window.location.href);return\"boolean\"==typeof e&&e?Object.fromEntries(t.searchParams.entries()):Array.isArray(e)&&e.length>0?e.reduce(function(e,o){var r,i=t.searchParams.get(o);return i?n(n({},e),((r={})[o]=i,r)):e},{}):{}}},3869:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createSlider=void 0;var r=n(6517),i=n(2466);t.createSlider=function(e,t){if(void 0===t&&(t={}),!(0,r.hasDom)())return{open:function(){},close:function(){},toggle:function(){},refresh:function(){},focus:function(){},unmount:function(){}};var n,a=t.position,c=void 0===a?i.SLIDER_POSITION:a,s=t.width,u=void 0===s?i.SLIDER_WIDTH:s,l=t.onClose,d=t.domain,f=o(t,[\"position\",\"width\",\"onClose\",\"domain\"]),p=(0,r.createIframe)(\"slider\",{formId:e,domain:d,options:f}),v=p.iframe,m=p.embedId,h=p.refresh,b=p.focus,g=document.body.style.overflow,y=function(e){var t=document.createElement(\"div\");return t.className=\"tf-v1-slider \".concat(e),t.dataset.testid=\"tf-v1-slider\",t.style.opacity=\"0\",t}(c),w=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-spinner\",e}(),x=function(e,t){var n=document.createElement(\"div\");return n.className=\"tf-v1-iframe-wrapper\",n.style[e]=\"-100%\",(0,r.setElementSize)(n,{width:t})}(c,u);x.append(v),y.append(w),y.append(x);var _=f.container||document.body;v.onload=function(e){(null==e?void 0:e.isTrusted)&&(x.style[c]=\"0\",setTimeout(function(){w.style.display=\"none\"},500),(0,r.addCustomKeyboardListener)(E))};var O=function(){(0,r.isOpen)(y)||((0,r.isInPage)(y)?(y.style.display=\"flex\",setTimeout(function(){x.style[c]=\"0\"})):(_.append(y),w.style.display=\"block\"),document.body.style.overflow=\"hidden\",setTimeout(function(){y.style.opacity=\"1\"}))},E=function(){(0,r.isOpen)(y)&&((0,r.handlePreventReopenOnClose)(f,e),null==l||l(),y.style.opacity=\"0\",x.style[c]=\"-100%\",document.body.style.overflow=g,setTimeout(function(){f.keepSession?y.style.display=\"none\":P()},500))};(0,r.setAutoClose)(m,f.autoClose,E),x.append(function(e){var t=document.createElement(\"button\");return t.className=\"tf-v1-close tf-v1-close-icon\",t.innerHTML=r.closeIconSvg,t.ariaLabel=\"Close\",t.onclick=(0,r.invokeWithoutDefault)(e),t}(E)),f.open&&!(0,r.isOpen)(y)&&(n=(0,r.handleCustomOpen)(O,f,e));var P=function(){(0,r.unmountElement)(y),f.open&&(null==n?void 0:n.remove)&&n.remove()};return{open:O,close:E,toggle:function(){(0,r.isOpen)(y)?E():O()},refresh:h,focus:b,unmount:P}}},4375:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.includeCss=void 0,t.includeCss=function(e){var t=function(e){return\"\".concat(\"https://embed.typeform.com/next/css/\").concat(e)}(e);if(!document.querySelector('link[href=\"'.concat(t,'\"]'))){var n=document.createElement(\"link\");n.rel=\"stylesheet\",n.href=t,document.head.append(n)}}},4424:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.invokeWithoutDefault=void 0,t.invokeWithoutDefault=function(e){return function(t){null==t||t.preventDefault(),e()}}},4471:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.setupGaInstance=t.sendGaIdMessage=void 0,t.sendGaIdMessage=function(e,t,n){var o={embedId:e,gaClientId:t};setTimeout(function(){n&&n.contentWindow&&n.contentWindow.postMessage({type:\"ga-client-id\",data:o},\"*\")},0)};var n=function(e){console.error(e)},o=function(e){n(\"Whoops! You enabled the shareGaInstance feature in your typeform embed but \".concat(e,\".\\n\\n\")+\"Make sure to include Google Analytics Javascript code before the Typeform Embed Javascript code in your page and use correct tracker ID.\\n\\nIt is also possible the Google Analytics was blocked by your adblock plugin.\")};t.setupGaInstance=function(e,r,i){var a=\"string\"==typeof i?i:void 0;if(window.gtag){if(a||(a=function(){if(window.dataLayer){var e=window.dataLayer.find(function(e){return e.length>1&&\"config\"===e[0]});return e&&e[1]}}()),!a)return void o(\"the tracking ID could not be retrieved\");var c=!1;window.gtag(\"get\",a,\"client_id\",function(n){c=!0,(0,t.sendGaIdMessage)(r,n,e)}),setTimeout(function(){c||o(\"the tracker with ID \".concat(a,\" was not found\"))},3e3)}else try{var s=function(e,t){return t?e.find(function(e){return e.get(\"trackingId\")===t}):e[0]}(window.ga.getAll(),a);s?(0,t.sendGaIdMessage)(r,s.get(\"clientId\"),e):o(\"the tracker with ID \".concat(a,\" was not found\"))}catch(e){o(\"the Google Analytics object was not found\"),n(e)}}},4948:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(4989),t),r(n(5981),t)},4976:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.closeIconSvg=void 0,t.closeIconSvg='<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4.293 4.293a1 1 0 0 1 1.414 0L12 10.586l6.293-6.293a1 1 0 1 1 1.414 1.414L13.414 12l6.293 6.293a1 1 0 0 1-1.414 1.414L12 13.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L10.586 12 4.293 5.707a1 1 0 0 1 0-1.414Z\" fill=\"currentColor\"/>\\n</svg>'},4989:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createSidetab=void 0;var i=n(6517),a={buttonColor:\"#3a7685\",buttonText:\"Launch me\"},c=function(e,t){void 0===e&&(e=\"div\"),void 0===t&&(t=\"tf-v1-sidetab-button-icon\");var n=document.createElement(e);return n.className=\"\".concat(t,\" tf-v1-close-icon\"),n.innerHTML=i.closeIconSvg,n.dataset.testid=t,n},s=function(e,t){var n=e.parentNode;n&&(n.removeChild(e),n.appendChild(t))};t.createSidetab=function(e,t){void 0===t&&(t={});var n,u=o(o({},a),t),l=u.domain,d=r(u,[\"domain\"]),f=(0,i.createIframe)(\"side-tab\",{formId:e,domain:l,options:d}),p=f.iframe,v=f.embedId,m=f.refresh,h=f.focus,b=function(e,t,n,o){var r=document.createElement(\"div\");return r.className=\"tf-v1-sidetab\",r.dataset.testid=\"tf-v1-sidetab\",(0,i.setElementSize)(r,{width:e,height:t}),void 0!==n?(r.style.top=\"calc(\".concat((0,i.getValueWithUnits)(n),\" + \").concat((0,i.getValueWithUnits)(t||580),\" / 2)\"),r.style.bottom=\"auto\"):void 0!==o&&(r.style.top=\"auto\",r.style.bottom=\"calc(\".concat((0,i.getValueWithUnits)(o),\" - \").concat((0,i.getValueWithUnits)(t||580),\" / 2)\")),r}(d.width,d.height,d.top,d.bottom),g=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-sidetab-wrapper\",e.dataset.testid=\"tf-v1-sidetab-wrapper\",e}(),y=function(){var e=document.createElement(\"div\");e.className=\"tf-v1-spinner\";var t=document.createElement(\"div\");return t.className=\"tf-v1-sidetab-button-icon\",t.dataset.testid=\"spinner-icon\",t.append(e),t}(),w=function(e){var t=e.backgroundColor,n=e.textColor,o=e.width,r=e.height,a=e.align,c=void 0===a?\"center\":a,s=e.buttonProps,u=void 0===s?{}:s,l=document.createElement(\"button\");return l.className=\"tf-v1-sidetab-button\",l.style.backgroundColor=t,l.style.color=n||(0,i.getTextColor)(t),(0,i.addAttributesToElement)(l,u),(0,i.setElementSize)(l,{width:o,height:r}),r&&(l.style.left=\"-\".concat((0,i.getValueWithUnits)(r))),\"top\"===c?(l.style.transform=\"rotate(-90deg) translateX(-100%)\",l.style.top=\"0\"):\"bottom\"===c&&(l.style.transform=\"rotate(-90deg) translateX(0)\",l.style.top=\"auto\",l.style.bottom=\"-\".concat((0,i.getValueWithUnits)(r||48))),l}({backgroundColor:d.buttonColor||a.buttonColor,textColor:d.buttonTextColor,width:d.buttonHeight,height:d.buttonWidth,align:d.buttonAlign,buttonProps:d.buttonProps}),x=function(e,t){var n=document.createElement(\"span\");return n.className=\"tf-v1-sidetab-button-text\",n.innerHTML=e,t&&(n.style.fontSize=(0,i.getValueWithUnits)(t)),n}(d.buttonText||a.buttonText,d.buttonTextSize),_=function(e,t,n,o){var r=n||(0,i.getTextColor)(t),a=document.createElement(\"div\");a.className=\"tf-v1-sidetab-button-icon\",o&&(a.style.width=(0,i.getValueWithUnits)(o),a.style.height=(0,i.getValueWithUnits)(o));var c=(0,i.triggerIconSvg)(r),s=null==e?void 0:e.startsWith(\"http\");return a.innerHTML=s?\"<img alt='popover trigger icon button' src='\".concat(e,\"'/>\"):null!=e?e:c,a.dataset.testid=\"default-icon\",a}(d.customIcon,d.buttonColor||a.buttonColor,d.buttonTextColor,d.buttonTextSize),O=c(),E=c(\"button\",\"tf-v1-sidetab-close\");(d.container||document.body).append(b),g.append(p),b.append(w),b.append(E),w.append(_),w.append(x),setTimeout(function(){b.classList.add(\"ready\")},250),p.onload=function(e){(null==e?void 0:e.isTrusted)&&(b.classList.add(\"open\"),s(y,O),(0,i.addCustomKeyboardListener)(j))};var P=function(){(0,i.isOpen)(g)||((0,i.isInPage)(g)?(g.style.display=\"flex\",b.classList.add(\"open\"),s(_,O)):(b.append(g),s(_,y)))},j=function(){var t;(0,i.isOpen)(g)&&((0,i.handlePreventReopenOnClose)(d,e),null===(t=d.onClose)||void 0===t||t.call(d),b.classList.remove(\"open\"),setTimeout(function(){d.keepSession?g.style.display=\"none\":(0,i.unmountElement)(g),s(O,_)},250))};(0,i.setAutoClose)(v,d.autoClose,j);var S=function(){(0,i.isOpen)(g)?j():P()};return w.onclick=(0,i.invokeWithoutDefault)(S),E.onclick=(0,i.invokeWithoutDefault)(j),d.open&&!(0,i.isOpen)(g)&&(n=(0,i.handleCustomOpen)(P,d,e)),{open:P,close:j,toggle:S,refresh:m,focus:h,unmount:function(){(0,i.unmountElement)(b),d.open&&(null==n?void 0:n.remove)&&n.remove()}}}},5330:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.isVisible=t.isInPage=t.isOpen=void 0,t.isOpen=function(e){return(0,t.isInPage)(e)&&(0,t.isVisible)(e)},t.isInPage=function(e){return!!e.parentNode},t.isVisible=function(e){return\"none\"!==e.style.display}},5363:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(1179),t),r(n(249),t)},5400:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.triggerIconSvg=void 0,t.triggerIconSvg=function(e){return'<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n <path\\n fill-rule=\"evenodd\"\\n clip-rule=\"evenodd\"\\n d=\"M2.002 5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6.697l-5.748 3.832A1 1 0 0 1 6.002 22v-3h-2a2 2 0 0 1-2-2V5Zm18 0h-16v12h3a1 1 0 0 1 1 1v2.131l4.445-2.963a1 1 0 0 1 .555-.168h7V5Z\"\\n fill='.concat(e,'\\n />\\n <path\\n fill-rule=\"evenodd\"\\n clip-rule=\"evenodd\"\\n d=\"M7.5 12.25a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Zm4.5 0a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Zm4.5 0a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Z\"\\n fill=').concat(e,\"\\n />\\n </svg>\")}},5981:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},6112:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.triggerIframeRedraw=void 0,t.triggerIframeRedraw=function(){this.style.transform=\"translateZ(0)\"}},6257:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createPopup=void 0;var r=n(6517),i=n(2466),a=n(6517);t.createPopup=function(e,t){if(void 0===t&&(t={}),!(0,r.hasDom)())return{open:function(){},close:function(){},toggle:function(){},refresh:function(){},focus:function(){},unmount:function(){}};var n,c=t.width,s=t.height,u=t.size,l=void 0===u?i.POPUP_SIZE:u,d=t.onClose,f=t.domain,p=o(t,[\"width\",\"height\",\"size\",\"onClose\",\"domain\"]),v=(0,r.createIframe)(\"popup\",{formId:e,domain:f,options:p}),m=v.iframe,h=v.embedId,b=v.refresh,g=v.focus,y=document.body.style.overflow,w=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-popup\",e.dataset.testid=\"tf-v1-popup\",e.style.opacity=\"0\",e}(),x=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-spinner\",e}(),_=function(e,t,n){var o=document.createElement(\"div\");return o.className=\"tf-v1-iframe-wrapper\",o.style.opacity=\"0\",(0,r.isDefined)(e)&&(0,r.isDefined)(t)?(0,r.setElementSize)(o,{width:e,height:t}):(o.style.width=\"calc(\".concat(n,\"% - 80px)\"),o.style.height=\"calc(\".concat(n,\"% - 80px)\"),o)}(c,s,l);_.append(m),w.append(x),w.append(_);var O=p.container||document.body;m.onload=function(e){(null==e?void 0:e.isTrusted)&&(_.style.opacity=\"1\",setTimeout(function(){x.style.display=\"none\"},250),(0,r.addCustomKeyboardListener)(P))};var E=function(){(0,a.isOpen)(w)||((0,a.isInPage)(w)?w.style.display=\"flex\":(x.style.display=\"block\",O.append(w)),document.body.style.overflow=\"hidden\",setTimeout(function(){w.style.opacity=\"1\"}))},P=function(){(0,a.isOpen)(w)&&((0,r.handlePreventReopenOnClose)(p,e),null==d||d(),w.style.opacity=\"0\",document.body.style.overflow=y,setTimeout(function(){p.keepSession?w.style.display=\"none\":j()},250))};_.append(function(e){var t=document.createElement(\"button\");return t.className=\"tf-v1-close tf-v1-close-icon\",t.innerHTML=r.closeIconSvg,t.ariaLabel=\"Close\",t.onclick=(0,r.invokeWithoutDefault)(e),t}(P)),(0,r.setAutoClose)(h,p.autoClose,P),p.open&&!(0,a.isOpen)(w)&&(n=(0,r.handleCustomOpen)(E,p,e));var j=function(){(0,r.unmountElement)(w),p.open&&(null==n?void 0:n.remove)&&n.remove()};return{open:E,close:P,toggle:function(){(0,a.isOpen)(w)?P():E()},refresh:b,focus:g,unmount:j}}},6419:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.changeColorOpacity=void 0,t.changeColorOpacity=function(e,t){return void 0===e&&(e=\"\"),void 0===t&&(t=255),e.startsWith(\"rgba(\")?null==e?void 0:e.replace(/, [\\d.]+\\)$/,\", \".concat(t,\")\")):e}},6517:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(7177),t),r(n(7677),t),r(n(9188),t),r(n(4375),t),r(n(2689),t),r(n(7917),t),r(n(8235),t),r(n(7853),t),r(n(3124),t),r(n(9556),t),r(n(3106),t),r(n(352),t),r(n(4471),t),r(n(1403),t),r(n(1706),t),r(n(5330),t),r(n(6419),t),r(n(3542),t),r(n(4424),t),r(n(9723),t),r(n(4976),t),r(n(5400),t)},6530:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},n.apply(this,arguments)};Object.defineProperty(t,\"__esModule\",{value:!0}),t.buildNotificationDot=t.canBuildNotificationDot=t.saveNotificationDotHideUntilTime=void 0;var o=\"tfNotificationData\",r=function(){var e=localStorage.getItem(o);return e?JSON.parse(e):{}},i=function(e){e&&localStorage.setItem(o,JSON.stringify(e))};t.saveNotificationDotHideUntilTime=function(e,t){var o,a=new Date;a.setDate(a.getDate()+t),i(n(n({},r()),((o={})[e]={hideUntilTime:a.getTime()},o)))},t.canBuildNotificationDot=function(e){var t=function(e){var t;return(null===(t=r()[e])||void 0===t?void 0:t.hideUntilTime)||0}(e);return(new Date).getTime()>t&&(t&&function(e){var t=r();delete t[e],i(t)}(e),!0)},t.buildNotificationDot=function(){var e=document.createElement(\"span\");return e.className=\"tf-v1-popover-unread-dot\",e.dataset.testid=\"tf-v1-popover-unread-dot\",e}},6546:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.hexRgb=void 0;var n=\"a-f\\\\d\",o=\"#?[\".concat(n,\"]{3}[\").concat(n,\"]?\"),r=\"#?[\".concat(n,\"]{6}([\").concat(n,\"]{2})?\"),i=new RegExp(\"[^#\".concat(n,\"]\"),\"gi\"),a=new RegExp(\"^\".concat(o,\"$|^\").concat(r,\"$\"),\"i\");t.hexRgb=function(e){if(\"string\"!=typeof e||i.test(e)||!a.test(e))throw new TypeError(\"Expected a valid hex string\");8===(e=e.replace(/^#/,\"\")).length&&(e=e.slice(0,6)),4===e.length&&(e=e.slice(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var t=Number.parseInt(e,16);return{red:t>>16,green:t>>8&255,blue:255&t}}},6932:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(6257),t),r(n(8625),t)},7121:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n},r=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createWidget=void 0;var i=n(6517),a=n(476),c=n(9586),s=n(2588);t.createWidget=function(e,t){if(!(0,i.hasDom)())return{refresh:function(){},focus:function(){},unmount:function(){}};var n=t.domain,u=o(t,[\"domain\"]);u.inlineOnMobile=t.inlineOnMobile||t.fullScreen;var l=document.body.style.overflow;u.inlineOnMobile||!u.forceTouch&&!(0,i.isFullscreen)()||(u.displayAsFullScreenModal=!0,u.forceTouch=!0,u.autoResize=!1);var d=(0,i.createIframe)(\"widget\",{formId:e,domain:n,options:u}),f=d.embedId,p=d.iframe,v=d.refresh,m=d.focus,h=(0,c.buildWidget)(p,u.width,u.height);if(u.fullScreen&&(0,s.overrideFullScreenStyles)(t.container,p),u.autoResize){var b=r(\"string\"==typeof u.autoResize?u.autoResize.split(\",\").map(function(e){return parseInt(e)}):[],2),g=b[0],y=b[1];window.addEventListener(\"message\",(0,a.getFormHeightChangedHandler)(f,function(e){var n=Math.max(e.height,g||0);y&&(n=Math.min(n,y)),t.container.style.height=\"\".concat(n,\"px\")}))}u.autoFocus&&window.addEventListener(\"message\",(0,a.getFormReadyHandler)(f,function(){setTimeout(function(){m()},1e3)}));var w,x=function(){return t.container.append(h)};if(t.container.innerHTML=\"\",t.lazy?(0,i.lazyInitialize)(t.container,x):x(),u.displayAsFullScreenModal){var _=\"\",O=t.container,E=O.style.height;window.addEventListener(\"message\",(0,a.getWelcomeScreenHiddenHandler)(f,function(){O.classList.add(\"tf-v1-widget-fullscreen\"),void 0!==t.opacity&&(O.style.backgroundColor=_)})),window.addEventListener(\"message\",(0,a.getFormThemeHandler)(f,function(e){var t;_=(0,i.changeColorOpacity)(null===(t=null==e?void 0:e.theme)||void 0===t?void 0:t.backgroundColor)}));var P=((w=document.createElement(\"button\")).className=\"tf-v1-widget-close tf-v1-close-icon\",w.innerHTML=\"×\",w.ariaLabel=\"Close\",w);P.onclick=(0,i.invokeWithoutDefault)(function(){var e;if(O.style.height=E,null===(e=t.onClose)||void 0===e||e.call(t),O.classList.remove(\"tf-v1-widget-fullscreen\"),O.style.backgroundColor=\"\",u.fullScreen&&(document.body.style.overflow=l),t.keepSession){var n=document.createElement(\"div\");n.className=\"tf-v1-widget-iframe-overlay\",n.onclick=function(){O.classList.add(\"tf-v1-widget-fullscreen\"),(0,i.unmountElement)(n)},h.append(n)}else t.container.innerHTML=\"\",x(),O.append(P)}),O.append(P)}return{refresh:v,focus:m,unmount:function(){(0,i.unmountElement)(h)}}}},7177:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.buildIframeSrc=void 0;var i=n(2466),a=n(7853),c=n(2689),s=n(3709),u=n(3542),l={widget:\"embed-widget\",popup:\"popup-blank\",slider:\"popup-drawer\",popover:\"popup-popover\",\"side-tab\":\"popup-side-panel\"};t.buildIframeSrc=function(e){var t=e.domain,n=e.formId,d=e.type,f=e.embedId,p=e.options,v=function(e,t,n){var r=n.transitiveSearchParams,i=n.source,a=n.medium,c=n.mediumVersion,u=n.hideFooter,d=n.hideHeaders,f=n.opacity,p=n.disableTracking,v=n.enableSandbox,m=n.shareGaInstance,h=n.forceTouch,b=n.displayAsFullScreenModal,g=n.tracking,y=n.redirectTarget,w=n.autoResize,x=n.disableScroll,_=n.onEndingButtonClick,O=n.noHeading,E=n.noScrollbars,P=(0,s.getTransitiveSearchParams)(r);return o(o(o({},{\"typeform-embed-id\":t,\"typeform-embed\":l[e],\"typeform-source\":i,\"typeform-medium\":a,\"typeform-medium-version\":c,\"embed-hide-footer\":u?\"true\":void 0,\"embed-hide-headers\":d?\"true\":void 0,\"embed-opacity\":f,\"disable-tracking\":p||v?\"true\":void 0,\"enable-sandbox\":v?\"true\":void 0,\"share-ga-instance\":m?\"true\":void 0,\"force-touch\":h?\"true\":void 0,\"add-placeholder-ws\":\"widget\"===e&&b?\"true\":void 0,\"typeform-embed-redirect-target\":y,\"typeform-embed-handles-redirect\":1,\"typeform-embed-auto-resize\":w?\"true\":void 0,\"typeform-embed-disable-scroll\":x?\"true\":void 0,\"typeform-embed-handle-ending-button-click\":_?\"true\":void 0,\"typeform-embed-no-heading\":O?\"true\":void 0,\"typeform-embed-no-scrollbars\":E?\"true\":void 0}),P),g)}(d,f,function(e){return e.noHeading||(e.noHeading=document.querySelectorAll(\"h1\").length>0),o(o({},{source:null===(t=null===window||void 0===window?void 0:window.location)||void 0===t?void 0:t.hostname.replace(/^www\\./,\"\"),medium:\"embed-sdk\",mediumVersion:\"next\"}),(0,a.removeUndefinedKeys)(e));var t}(p)),m=function(e,t,n){if(void 0===t&&(t=i.DEFAULT_DOMAIN),e.startsWith(\"http://\")||e.startsWith(\"https://\"))return new URL(e);var o=t!==i.DEFAULT_DOMAIN?t:function(e){return\"eu\"===e?i.DEFAULT_EU_DOMAIN:i.DEFAULT_DOMAIN}(n);return new URL(\"https://\".concat(o,\"/to/\").concat(e))}(n,t,null==p?void 0:p.region);if(Object.entries(v).filter(function(e){var t=r(e,2)[1];return(0,c.isDefined)(t)}).forEach(function(e){var t=r(e,2),n=t[0],o=t[1];m.searchParams.set(n,o)}),p.hubspot){var h=(0,u.getHubspotHiddenFields)();p.hidden=o(o({},p.hidden),h)}return m.hash=function(e,t){var n=new URLSearchParams;t.hidden&&Object.entries(t.hidden).filter(function(e){var t=r(e,2)[1];return(0,c.isDefined)(t)&&\"\"!==t}).forEach(function(o){var i=r(o,2),a=i[0],c=i[1];\"boolean\"==typeof t.transitiveSearchParams&&e.searchParams.delete(a),n.set(a,c)});var o=function(e){if(!e)return null;var t=Object.keys(e).at(0),n=t&&e[t]||void 0;return void 0===t||void 0===n?null:{key:\"answers-\".concat(t),value:n}}(t.preselect);if(o){var i=o.key,a=o.value;n.set(i,a)}return n.toString()}(m,p),m.href}},7677:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(9310),t),r(n(883),t)},7783:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(5363),t),r(n(6932),t),r(n(1915),t),r(n(9814),t),r(n(4948),t)},7853:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeUndefinedKeys=void 0;var i=n(2689);t.removeUndefinedKeys=function(e){return Object.entries(e).filter(function(e){var t=r(e,2)[1];return(0,i.isDefined)(t)}).reduce(function(e,t){var n,i=r(t,2),a=i[0],c=i[1];return o(o({},e),((n={})[a]=c,n))},{})}},7917:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},n.apply(this,arguments)},o=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.loadOptionsFromAttributes=t.transformAttributeValue=t.camelCaseToKebabCase=void 0,t.camelCaseToKebabCase=function(e){return e.split(\"\").map(function(e,t){return e.toUpperCase()===e?\"\".concat(0!==t?\"-\":\"\").concat(e.toLowerCase()):e}).join(\"\")};var r=function(e){return e||void 0},i=function(e){if(null!==e)return\"\"===e||\"yes\"===e||\"true\"===e},a=function(e){var t=e?parseInt(e,10):NaN;return isNaN(t)?void 0:t},c=\"%ESCAPED_COMMA%\",s=function(e){if(e)return e.replace(/\\s/g,\"\").replace(/\\\\,/g,c).split(\",\").filter(function(e){return!!e}).map(function(e){return e.replace(c,\",\")})};t.transformAttributeValue=function(e,t){var u,l,d;switch(t){case\"string\":return r(e);case\"boolean\":return i(e);case\"integer\":return a(e);case\"function\":return function(e){var t=e&&e in window?window[e]:void 0;return\"function\"==typeof t?t:void 0}(e);case\"array\":return s(e);case\"record\":return function(e){if(e)return e.replace(/\\\\,/g,c).split(\",\").filter(function(e){return!!e}).map(function(e){return e.replace(c,\",\")}).reduce(function(e,t){var r,i=t.match(/^([^=]+)=(.*)$/);if(i){var a=o(i,3),c=a[1],s=a[2];return n(n({},e),((r={})[c.trim()]=s,r))}return e},{})}(e);case\"integerOrString\":return function(e){if(e)return e.match(/^[0-9]+$/)?a(e):r(e)}(e);case\"integerOrBoolean\":return null!==(u=a(e))&&void 0!==u?u:i(e);case\"stringOrBoolean\":return null!==(l=r(e))&&void 0!==l?l:i(e);case\"arrayOrBoolean\":return null!==(d=s(e))&&void 0!==d?d:i(e);default:throw new Error(\"Invalid attribute transformation \".concat(t))}},t.loadOptionsFromAttributes=function(e,o){return Object.keys(o).reduce(function(r,i){var a;return n(n({},r),((a={})[i]=(0,t.transformAttributeValue)(e.getAttribute(\"data-tf-\".concat((0,t.camelCaseToKebabCase)(i))),o[i]),a))},{})}},8235:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.isFullscreen=t.isMobile=t.isBigScreen=void 0,t.isBigScreen=function(){return window.screen.width>=1024&&window.screen.height>=768},t.isMobile=function(){return/mobile|tablet|android/i.test(navigator.userAgent.toLowerCase())},t.isFullscreen=function(){return(0,t.isMobile)()&&!(0,t.isBigScreen)()}},8625:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},8885:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},9188:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.hasDom=void 0,t.hasDom=function(){return\"undefined\"!=typeof document&&\"undefined\"!=typeof window}},9310:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.createIframe=void 0;var o=n(7177),r=n(6517),i=n(9590),a=n(476),c=n(6112),s=n(883),u=n(1947);t.createIframe=function(e,t){var n=t.formId,l=t.domain,d=t.options,f=(0,i.generateEmbedId)(),p=d.iframeProps,v=void 0===p?{}:p,m=d.onReady,h=d.onStarted,b=d.onQuestionChanged,g=d.onHeightChanged,y=d.onSubmit,w=d.onEndingButtonClick,x=d.onDuplicateDetected,_=d.shareGaInstance,O=(0,o.buildIframeSrc)({formId:n,domain:l,embedId:f,type:e,options:d}),E=document.createElement(\"iframe\");return E.src=O,E.dataset.testid=\"iframe\",E.style.border=\"0px\",E.allow=\"microphone; camera\",(0,r.addAttributesToElement)(E,v),E.addEventListener(\"load\",c.triggerIframeRedraw,{once:!0}),window.addEventListener(\"message\",(0,a.getFormReadyHandler)(f,m)),window.addEventListener(\"message\",(0,a.getFormStartedHandler)(f,h)),window.addEventListener(\"message\",(0,a.getFormQuestionChangedHandler)(f,b)),window.addEventListener(\"message\",(0,a.getFormHeightChangedHandler)(f,g)),window.addEventListener(\"message\",(0,a.getFormSubmitHandler)(f,y)),window.addEventListener(\"message\",(0,a.getFormThemeHandler)(f,function(e){var t;if(null==e?void 0:e.theme){var n=document.querySelector(\".tf-v1-close-icon\");n&&(n.style.color=null===(t=e.theme)||void 0===t?void 0:t.color)}})),window.addEventListener(\"message\",(0,a.getThankYouScreenButtonClickHandler)(f,w)),window.addEventListener(\"message\",(0,a.getRedirectHandler)(f,E)),window.addEventListener(\"message\",(0,a.getDuplicateDetectedHandler)(f,x)),\"widget\"!==e&&window.addEventListener(\"message\",s.dispatchCustomKeyEventFromIframe),_&&window.addEventListener(\"message\",(0,a.getFormReadyHandler)(f,function(){(0,r.setupGaInstance)(E,f,_)})),{iframe:E,embedId:f,refresh:function(){return(0,u.refreshIframe)(E)},focus:function(){var e;null===(e=E.contentWindow)||void 0===e||e.postMessage(\"embed-focus\",\"*\")}}}},9556:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.unmountElement=void 0,t.unmountElement=function(e){var t;null===(t=e.parentNode)||void 0===t||t.removeChild(e)}},9586:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(3631),t)},9590:function(e,t){var n=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.generateEmbedId=void 0,t.generateEmbedId=function(){var e=Math.random();return n(String(e).split(\".\"),2)[1]}},9723:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.addAttributesToElement=void 0;var o=n(7917);t.addAttributesToElement=function(e,t){void 0===t&&(t={}),Object.keys(t).forEach(function(n){e.setAttribute((0,o.camelCaseToKebabCase)(n),t[n])})}},9814:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(7121),t),r(n(19),t)}},t={};return function n(o){var r=t[o];if(void 0!==r)return r.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,n),i.exports}(7783)}()}},n={};function o(e){var r=n[e];if(void 0!==r)return r.exports;var i=n[e]={exports:{}};return t[e].call(i.exports,i,i.exports,o),i.exports}o.g=function(){if(\"object\"==typeof globalThis)return globalThis;try{return this||new Function(\"return this\")()}catch(e){if(\"object\"==typeof window)return window}}(),o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})};var r={};return function(){\"use strict\";var e=r;Object.defineProperty(e,\"__esModule\",{value:!0}),e.Sidetab=e.Popover=e.SliderButton=e.PopupButton=e.Widget=void 0;var t=o(952),n=o(240),i=o(517);e.Widget=(0,i.memoComponent)(n.Widget),e.PopupButton=(0,i.memoComponent)((0,n.makeButtonComponent)(t.createPopup,\"popup\")),e.SliderButton=(0,i.memoComponent)((0,n.makeButtonComponent)(t.createSlider,\"slider\")),e.Popover=(0,i.memoComponent)((0,n.makeInitializerComponent)(t.createPopover,\"popover\")),e.Sidetab=(0,i.memoComponent)((0,n.makeInitializerComponent)(t.createSidetab,\"sidetab\"))}(),r}()});","export const wrapper = `\n z-30 shadow-lg\n absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2\n w-5/6 sm:w-1/2 h-5/6 sm:h-3/4\n rounded-lg\n`;\n\nexport const container = `\n w-full h-full\n rounded-lg overflow-hidden\n`;\n\nexport const dismissButton = `\n absolute -top-3 -right-3 z-40\n w-8 h-8 rounded-full\n bg-white text-gray-700 shadow-md\n border border-gray-200\n flex items-center justify-center\n hover:bg-gray-50\n`;\n\nexport const dismissIcon = `\n w-4 h-4\n`;\n","import React from \"react\";\n\nimport { Widget } from \"@typeform/embed-react\";\nimport { XIcon } from \"@phosphor-icons/react\";\n\nimport * as styles from \"./styles\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nexport function Survey({ surveyId }: { surveyId: string }) {\n const { showSurvey, handleDismiss } = useSurveyTrigger();\n\n if (!showSurvey) {\n return null;\n }\n\n return (\n <div className={styles.wrapper}>\n <button\n type=\"button\"\n data-testid=\"survey-dismiss-button\"\n aria-label=\"Dismiss survey\"\n className={styles.dismissButton}\n onClick={handleDismiss}\n >\n <XIcon weight=\"bold\" className={styles.dismissIcon} />\n </button>\n\n <Widget\n id={surveyId}\n className={styles.container}\n onClose={handleDismiss}\n onSubmit={handleDismiss}\n />\n </div>\n );\n}\n","import React, { useMemo } from \"react\";\n\nimport { LocalLogicMap, type Source, type LayerType } from \"@local-logic/maps\";\n\nimport type { School } from \"@local-logic/client\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nimport { DIRECTIONS_PATH_COLOR } from \"~/sdks/LocalContent/constants\";\n\nexport function Layers() {\n const { activeCategoryData, activeMarkerDetails, commuteData } =\n useLocalContent();\n\n const schoolLayerSources = useMemo(() => {\n const activeSchoolMarkerDetails = activeMarkerDetails as School;\n if (\n typeof activeSchoolMarkerDetails?.catchments === \"undefined\" ||\n activeSchoolMarkerDetails.catchments?.length === 0\n ) {\n return undefined;\n }\n\n const sources: Source[] = [];\n\n activeSchoolMarkerDetails.catchments.forEach(\n (catchment, catchmentIndex) => {\n if (\n typeof catchment.geometry !== \"undefined\" &&\n catchment.geometry.length > 0\n ) {\n catchment.geometry.forEach((geometry, geomIndex) => {\n sources.push({\n key: `school-catchment-${catchmentIndex}-geom-${geomIndex}`,\n layer: [\n {\n type: \"fill\" as LayerType,\n color: activeCategoryData?.colors?.fill || \"#008491\",\n },\n {\n type: \"line\" as LayerType,\n color: activeCategoryData?.colors?.fill || \"#008491\",\n },\n ],\n geometry: [geometry],\n });\n });\n }\n },\n );\n\n return sources;\n }, [activeMarkerDetails, activeCategoryData]);\n\n const routeSources = useMemo(() => {\n if (\n !commuteData ||\n typeof commuteData.geometry === \"undefined\" ||\n commuteData.geometry?.length === 0\n ) {\n return undefined;\n }\n\n const sources: Source[] = [];\n\n sources.push({\n key: \"commute-route\",\n type: \"LineString\",\n layer: [\n {\n type: \"line\" as LayerType,\n color: DIRECTIONS_PATH_COLOR,\n },\n ],\n geometry: commuteData.geometry,\n });\n\n return sources;\n }, [commuteData, activeCategoryData]);\n\n return (\n <>\n <LocalLogicMap.Layers sources={schoolLayerSources} />\n <LocalLogicMap.Layers sources={routeSources} />\n </>\n );\n}\n","import React, { useMemo } from \"react\";\n\nimport { LocalLogicMap, type Marker } from \"@local-logic/maps\";\nimport { useTracking } from \"~/tracking\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport { getIdFromMarker } from \"~/utils/map/getIdFromMarker\";\n\nimport { iconsDeprecated as icons } from \"~/components/PoiIcon\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nexport function Markers() {\n const tracking = useTracking();\n const {\n isLoading,\n activeScore,\n activeCategoryData,\n selectedPoiSubcategory,\n isMarkersLoading,\n markersData,\n commuteData,\n handleMarkerClick,\n } = useLocalContent();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n\n const markers = useMemo(() => {\n if (\n selectedPoiSubcategory === null ||\n isMarkersLoading ||\n typeof markersData === \"undefined\" ||\n typeof markersData[selectedPoiSubcategory] === \"undefined\"\n ) {\n return [];\n }\n\n return markersData[selectedPoiSubcategory].map(\n (marker) =>\n ({\n id: getIdFromMarker(marker.lat, marker.lng, marker.name),\n latitude: marker.lat,\n longitude: marker.lng,\n name: marker.name,\n icon: icons[selectedPoiSubcategory],\n }) as Marker,\n );\n }, [selectedPoiSubcategory, isMarkersLoading, markersData]);\n\n const commuteMarkers = useMemo(() => {\n if (commuteData === null) {\n return [];\n }\n\n if (\n markers.find(\n (marker) =>\n marker.latitude === commuteData.destination.lat &&\n marker.longitude === commuteData.destination.lng,\n )\n ) {\n return [];\n }\n\n return [\n {\n id: \"commute-destination\",\n latitude: commuteData.destination.lat,\n longitude: commuteData.destination.lng,\n name: commuteData.label,\n icon: icons.other as Marker[\"icon\"],\n defaultColor: true,\n disableClick: true,\n },\n ];\n }, [markers, commuteData]);\n\n const combinedMarkers = useMemo(\n () => [...markers, ...commuteMarkers],\n [markers, commuteMarkers],\n );\n\n /**\n * Handles clicking on a map marker. This includes both single markers and cluster markers.\n *\n * @param marker\n * @returns\n */\n const handleMapMarkerClick = (\n marker: Parameters<typeof handleMarkerClick>[0],\n ) => {\n handleMarkerClick(marker);\n handleAddSessionTriggerCount();\n\n if (!activeScore || !selectedPoiSubcategory || !marker) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category: selectedPoiSubcategory,\n };\n\n if (marker.markers.length > 1) {\n eventAttributes.latitude = marker.latitude;\n eventAttributes.longitude = marker.longitude;\n eventAttributes.clusterSize = marker.markers.length;\n eventAttributes.isCluster = true;\n } else if (marker.markers.length === 1) {\n Object.entries(marker.markers[0]).forEach(([key, value]) => {\n if (\n typeof value === \"boolean\" ||\n typeof value === \"string\" ||\n typeof value === \"number\"\n ) {\n // Remove sdk id before sending to tracking\n if (key === \"id\") {\n return;\n }\n eventAttributes[key] = value;\n }\n });\n }\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_SELECTED,\n eventAttributes,\n });\n };\n\n return (\n <LocalLogicMap.Markers\n isLoading={isLoading}\n markers={combinedMarkers}\n colors={activeCategoryData?.colors}\n clusterIcon={\n (selectedPoiSubcategory\n ? icons[selectedPoiSubcategory]\n : undefined) as Marker[\"icon\"]\n }\n onClick={handleMapMarkerClick}\n />\n );\n}\n","export const container = `\n max-sm:[&>#center-pin-background]:text-primary-50\n`;\n","import React from \"react\";\n\nimport { LocalLogicMap } from \"@local-logic/maps\";\n\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function CenterPin() {\n const { centerMarker } = useLocalContent();\n\n if (!centerMarker) {\n return null;\n }\n\n return (\n <LocalLogicMap.CenterPin\n className={styles.container}\n marker={{\n id: \"local-content-center-pin\",\n latitude: centerMarker.lat,\n longitude: centerMarker.lng,\n name: centerMarker.addressLabel || \"Center Pin\",\n }}\n />\n );\n}\n","export const container = `flex flex-col gap-3 text-xs text-gray-800 font-medium`;\nexport const loading = `h-5 w-20 bg-gray-200 animate-pulse rounded-md`;\nexport const button = `p-0 text-xs h-auto w-auto justify-start cursor-pointer`;\n","import React, { useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { Button } from \"@local-logic/design-system\";\n\nimport * as styles from \"./styles\";\nimport type { TravelMode } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nexport function Commute({\n isLoading = false,\n commuteType,\n durationInSeconds,\n onCalculateCommute,\n}: {\n isLoading?: boolean;\n commuteType: TravelMode;\n durationInSeconds?: number;\n onCalculateCommute?: () => void;\n}) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n\n const durationString = useMemo(() => {\n if (!durationInSeconds) return null;\n\n const hours = Math.floor(durationInSeconds / 60 / 60);\n const minutes = Math.floor((durationInSeconds / 60) % 60);\n\n const minutesString = `${minutes} ${t(\"common:time.minute\", { count: minutes })}`;\n\n if (hours === 0) {\n return minutesString;\n }\n\n return `${hours} ${t(\"common:time.hour\", { count: hours })} ${minutesString}`;\n }, [durationInSeconds, t]);\n\n const travelTimeString = useMemo(() => {\n if (!durationString) return \"\";\n\n return `${durationString} ${t(`commute.travelTypes.${commuteType}`)}`;\n }, [durationString, commuteType, t]);\n\n if (!isLoading && typeof durationInSeconds === \"undefined\") {\n return null;\n }\n\n return (\n <div className={styles.container}>\n {isLoading && (\n <div\n data-testid=\"poi-popup-commute-loading\"\n className={styles.loading}\n ></div>\n )}\n {!isLoading && durationString && (\n <p\n data-testid=\"poi-popup-commute-duration\"\n aria-label={travelTimeString}\n >\n {travelTimeString.toLowerCase()}\n </p>\n )}\n {onCalculateCommute && (\n <Button\n data-testid=\"poi-popup-view-route-button\"\n className={styles.button}\n onClick={onCalculateCommute}\n variant=\"ghost\"\n isDisabled={isLoading}\n >\n {t(\"commute.viewRoute\")}\n </Button>\n )}\n </div>\n );\n}\n","import React, { useMemo } from \"react\";\n\nimport {\n LocalLogicMap,\n type Marker,\n type MarkerPoint,\n} from \"@local-logic/maps\";\nimport { Commute } from \"./Commute\";\nimport { useTracking } from \"~/tracking\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useCommute } from \"~/sdks/LocalContent/hooks/useCommute\";\n\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { DEFAULT_TRAVEL_MODE } from \"~/sdks/LocalContent/constants\";\n\nimport { ClusterPopupContent } from \"~/components/map/ClusterPopupContent\";\nimport { POIPopupContent } from \"~/components/map/POIPopupContent\";\n\nexport function Popup() {\n const tracking = useTracking();\n const {\n commuteOptions,\n distanceUnit,\n activeScore,\n centerMarker,\n location,\n locale,\n selectedPoiSubcategory,\n activeMarker,\n activeMarkerDetails,\n handleMarkerClick,\n handleCalculateCommute,\n showSchoolRatings,\n } = useLocalContent();\n\n const { data, isLoading } = useCommute({\n mode: commuteOptions.commuteType,\n locale,\n units: distanceUnit,\n origin:\n location?.lat && location?.lng\n ? {\n lat: location.lat,\n lng: location.lng,\n }\n : undefined,\n destination:\n typeof centerMarker !== \"undefined\" &&\n activeMarkerDetails?.lat &&\n activeMarkerDetails?.lng\n ? {\n lat: activeMarkerDetails.lat,\n lng: activeMarkerDetails.lng,\n }\n : undefined,\n });\n\n const commuteTime = useMemo(() => {\n if (!data || isLoading) return undefined;\n\n return data.duration;\n }, [data?.mode, data?.duration, isLoading]);\n\n /**\n * Handles selecting a marker from within a cluster popup.\n *\n * @param marker\n * @returns\n */\n const handleClusterMarkerSelected = (marker: Marker) => {\n handleMarkerClick({\n id: marker.id,\n latitude: marker.latitude,\n longitude: marker.longitude,\n markers: [marker],\n } as MarkerPoint);\n\n if (!activeScore || !selectedPoiSubcategory) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category: selectedPoiSubcategory,\n };\n\n Object.entries(marker).forEach(([key, value]) => {\n if (\n typeof value === \"boolean\" ||\n typeof value === \"string\" ||\n typeof value === \"number\"\n ) {\n // Remove sdk id before sending to tracking\n if (key === \"id\") {\n return;\n }\n eventAttributes[key] = value;\n }\n });\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_SELECTED_FROM_CLUSTER,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_SELECTED_FROM_CLUSTER,\n eventAttributes,\n });\n };\n\n const handleLinkClick = (url: string) => {\n if (!selectedPoiSubcategory || !activeMarkerDetails) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n category: selectedPoiSubcategory,\n };\n\n Object.entries(activeMarkerDetails).forEach(([key, value]) => {\n if (\n typeof value === \"boolean\" ||\n typeof value === \"string\" ||\n typeof value === \"number\"\n ) {\n eventAttributes[key] = value;\n }\n });\n eventAttributes.clickedUrl = url;\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_POPUP_LINK_CLICKED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_POPUP_LINK_CLICKED,\n eventAttributes,\n });\n };\n\n const handleOnViewRoute = () => {\n if (\n !activeMarkerDetails ||\n !activeScore ||\n !selectedPoiSubcategory ||\n !activeMarker\n ) {\n return;\n }\n\n const requestOptions = {\n commuteType: commuteOptions.commuteType,\n label: activeMarkerDetails?.address || activeMarkerDetails?.name,\n destination: {\n lat: activeMarkerDetails?.lat || 0,\n lng: activeMarkerDetails?.lng || 0,\n },\n };\n\n handleCalculateCommute(requestOptions);\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category: selectedPoiSubcategory,\n destinationLat: requestOptions.destination.lat,\n destinationLng: requestOptions.destination.lng,\n label: requestOptions.label,\n name: activeMarkerDetails?.name || \"\",\n mode: requestOptions.commuteType as string,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_VIEW_ROUTE,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_VIEW_ROUTE,\n eventAttributes,\n });\n };\n\n return (\n <LocalLogicMap.Popup\n latitude={activeMarker?.latitude}\n longitude={activeMarker?.longitude}\n onClose={() => handleMarkerClick(undefined)}\n >\n <ClusterPopupContent\n activeMarker={activeMarker}\n onMarkerSelected={handleClusterMarkerSelected}\n onClose={handleMarkerClick}\n />\n <POIPopupContent\n marker={activeMarkerDetails}\n poiCategory={selectedPoiSubcategory}\n onLocationLinkClick={handleLinkClick}\n onSchoolLinkClick={handleLinkClick}\n onClose={handleMarkerClick}\n showSchoolRatings={showSchoolRatings}\n >\n <Commute\n isLoading={isLoading}\n commuteType={commuteOptions.commuteType || DEFAULT_TRAVEL_MODE}\n durationInSeconds={commuteTime}\n onCalculateCommute={handleOnViewRoute}\n />\n </POIPopupContent>\n </LocalLogicMap.Popup>\n );\n}\n","export const container = `relative w-full overflow-hidden grow`;\n","import React, { useMemo } from \"react\";\n\nimport \"@local-logic/maps/style.css\";\n\nimport { LocalLogicMap } from \"@local-logic/maps\";\n\nimport { Survey } from \"../Survey\";\nimport { Layers } from \"./Layers\";\nimport { Markers } from \"./Markers\";\nimport { CenterPin } from \"./CenterPin\";\nimport { Popup } from \"./Popup\";\n\nimport * as styles from \"./styles\";\nimport { getMapProviderConfig } from \"~/utils/map/getMapProviderConfig\";\nimport { PaddingDebug } from \"~/components/map/PaddingDebug\";\nimport {\n SURVEY_ID,\n DEFAULT_MIN_ZOOM,\n DEFAULT_MAX_ZOOM,\n MAP_PADDING,\n LAYOUT_MEASUREMENTS,\n} from \"~/sdks/LocalContent/constants\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function Map({\n children,\n ...rest\n}: {\n children?: React.ReactNode;\n} & React.HTMLAttributes<HTMLDivElement>) {\n const breakpoints = useResponsiveBreakpoints();\n const {\n activeCategory,\n activeScore,\n isCommuteCalculatorOpen,\n isSidebarExpanded,\n location,\n locale,\n map,\n activeMarker,\n commuteData,\n } = useLocalContent();\n\n const mapProviderConfig = useMemo(\n () =>\n getMapProviderConfig(\n map.mapProvider?.name,\n map.mapProvider?.key,\n map.mapProvider?.theme,\n ),\n [map.mapProvider?.name, map.mapProvider?.key, map.mapProvider?.theme],\n );\n\n const mapPadding = useMemo(() => {\n const padding = breakpoints.sm ? MAP_PADDING.desktop : MAP_PADDING.mobile;\n\n // Making sure we don't override reference values\n let { top, bottom, left } = padding;\n\n if (breakpoints.sm) {\n // Desktop\n\n if (!isSidebarExpanded) {\n left -= LAYOUT_MEASUREMENTS.SIDEBAR_STATE_WIDTH_DIFFERENCE;\n }\n\n if (isCommuteCalculatorOpen && !commuteData) {\n top += LAYOUT_MEASUREMENTS.COMMUTE_CALCULATOR_NO_ROUTE_HEIGHT_DESKTOP;\n }\n\n if (isCommuteCalculatorOpen && commuteData) {\n top += LAYOUT_MEASUREMENTS.COMMUTE_CALCULATOR_WITH_ROUTE_HEIGHT_DESKTOP;\n }\n } else {\n // Mobile\n\n if (activeCategory) {\n top += LAYOUT_MEASUREMENTS.SCORE_BUTTONS_HEIGHT_MOBILE;\n }\n\n if (activeScore && !isCommuteCalculatorOpen) {\n // While the details slider can be expanded, we're not going to adjust the\n // value since the popup opens up\n bottom = LAYOUT_MEASUREMENTS.SCORE_DETAILS_HEIGHT_MOBILE;\n }\n\n if (isCommuteCalculatorOpen) {\n bottom = LAYOUT_MEASUREMENTS.COMMUTE_CALCULATOR_HEIGHT_MOBILE;\n }\n }\n\n return {\n ...padding,\n top,\n bottom,\n left,\n };\n }, [\n breakpoints.sm,\n isCommuteCalculatorOpen,\n activeCategory,\n activeScore,\n isSidebarExpanded,\n commuteData,\n ]);\n\n // If location is not set or invalid, return a message\n // lat and lng values of 0 are considered invalid for this context\n if (!location || !location.lat || !location.lng) {\n return <div className={styles.container}>Location not set</div>;\n }\n\n return (\n <div className={styles.container} {...rest}>\n <LocalLogicMap.Root\n mapProvider={mapProviderConfig}\n locale={locale}\n mapPadding={mapPadding}\n center={{ latitude: location.lat, longitude: location.lng }}\n zoom={map.zoom}\n minZoom={DEFAULT_MIN_ZOOM}\n maxZoom={DEFAULT_MAX_ZOOM}\n zoomPosition={breakpoints.sm ? \"bottom-right\" : undefined}\n pitch={map.pitch}\n bearing={map.bearing}\n cooperativeGestures={map.cooperativeGestures}\n activeMarker={activeMarker}\n >\n <LocalLogicMap.BaseMap>\n <Layers />\n <Markers />\n <CenterPin />\n <Popup />\n </LocalLogicMap.BaseMap>\n </LocalLogicMap.Root>\n\n {import.meta.env.VITE_MAP_PADDING_DEBUG === \"true\" && (\n <PaddingDebug mapPadding={mapPadding} />\n )}\n\n {children}\n\n <Survey surveyId={SURVEY_ID} />\n </div>\n );\n}\n","export const container = `\n group/sidebar flex flex-col z-10\n bg-base-white rounded\n overflow-hidden max-h-[calc(100vh-72px)] min-h-96\n absolute top-3 left-3\n w-full max-w-72 shadow-3sm\n transition-all duration-150 ease-in-out\n\n data-[is-expanded=false]:w-14\n\n hover:data-[is-expanded=false]:w-16\n hover:data-[is-expanded=false]:cursor-pointer\n`;\n","import React, { useContext } from \"react\";\n\nimport type { RootProps } from \"./types\";\n\nimport * as styles from \"./styles\";\n\nexport type DefaultContext = {\n isExpanded: boolean;\n isScoresLoading: RootProps[\"isScoresLoading\"];\n isMarkersLoading: RootProps[\"isMarkersLoading\"];\n activeScore: RootProps[\"activeScore\"];\n activeScoreData?: RootProps[\"activeScoreData\"];\n markersData?: RootProps[\"markersData\"];\n onSelectScore?: RootProps[\"onSelectScore\"];\n onToggleIsExpanded: () => void;\n};\n\nconst RootElementContext = React.createContext<DefaultContext>(\n {} as DefaultContext,\n);\nconst useRootElement = () => useContext(RootElementContext);\n\nconst RootElementContextProvider = ({\n isExpanded,\n isScoresLoading,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n onSelectScore,\n onToggleIsExpanded,\n children,\n}: {\n isExpanded: boolean;\n isScoresLoading: DefaultContext[\"isScoresLoading\"];\n isMarkersLoading: DefaultContext[\"isMarkersLoading\"];\n activeScore: DefaultContext[\"activeScore\"];\n activeScoreData: DefaultContext[\"activeScoreData\"];\n markersData?: DefaultContext[\"markersData\"];\n onSelectScore: DefaultContext[\"onSelectScore\"];\n onToggleIsExpanded: DefaultContext[\"onToggleIsExpanded\"];\n children: React.ReactNode;\n}) => {\n const handleOnSidebarClick = () => {\n if (isExpanded) {\n return;\n }\n\n onToggleIsExpanded();\n };\n\n return (\n <RootElementContext.Provider\n value={{\n isExpanded,\n isScoresLoading,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n onToggleIsExpanded,\n onSelectScore,\n }}\n >\n <div\n className={styles.container}\n data-is-expanded={isExpanded}\n data-testid=\"sidebar\"\n onClick={handleOnSidebarClick}\n >\n {children}\n </div>\n </RootElementContext.Provider>\n );\n};\n\nexport { useRootElement, RootElementContextProvider };\n","// It's important for the \"relative\" class to be applied to the container, and not the inner\n// content, so that the absolute positioning of the slider works correctly.\nexport const container = `\n relative h-full overflow-x-hidden overflow-y-scroll\n\n group-data-[is-expanded=false]/sidebar:overflow-y-hidden\n`;\n\nexport const content = `\n p-4 flex flex-col grow h-full overflow-hidden\n`;\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\n\nexport function Content({ children }: { children?: React.ReactNode }) {\n return (\n <div className={styles.container} data-testid=\"sidebar-container\">\n <div className={styles.content} data-testid=\"sidebar-content\">\n {children}\n </div>\n </div>\n );\n}\n","export const container = `\n text-sm text-base-black text-nowrap font-bold truncate\n w-full m-0 justify-self-start overflow-hidden\n`;\n","import React, { useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\n\nexport function Title({ title }: { title?: string | boolean }) {\n const { t } = useTranslation(\"localContent\");\n\n const displayTitle = useMemo(\n () =>\n typeof title === \"string\" && title.length > 0\n ? title\n : t(\"sidebar.header.title\"),\n [title, t],\n );\n\n return (\n <h2\n className={styles.container}\n aria-label={displayTitle}\n data-testid=\"sidebar-header-title\"\n >\n {title === false ? \"\" : displayTitle}\n </h2>\n );\n}\n","export const container = `px-0 h-4 text-sm w-full justify-start text-nowrap`;\nexport const icon = `w-3 h-3 -mb-0.5`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { CaretLeftIcon } from \"@phosphor-icons/react\";\n\nimport { Button } from \"@local-logic/design-system\";\n\nimport { useRootElement } from \"../../context\";\n\nimport * as styles from \"./styles\";\n\nexport function CloseButton() {\n const { t } = useTranslation(\"localContent\");\n const { onSelectScore } = useRootElement();\n\n return (\n <Button\n data-testid=\"sidebar-header-back-button\"\n variant=\"ghost\"\n prefixIcon={<CaretLeftIcon weight=\"bold\" className={styles.icon} />}\n className={styles.container}\n onClick={onSelectScore ? onSelectScore(null) : undefined}\n >\n {t(\"sidebar.header.backAction\")}\n </Button>\n );\n}\n","export const container = `\n h-14 p-4 flex justify-between items-center shadow-sm shrink-0\n group-data-[is-expanded=false]/sidebar:justify-end\n`;\nexport const icon = `w-5 h-5 mx-0.5 group-data-[is-expanded=false]/sidebar:rotate-180 transition-transform duration-200 delay-100 ease-in-out flex self-right`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { CaretDoubleLeftIcon } from \"@phosphor-icons/react\";\n\nimport { useRootElement } from \"../context\";\n\nimport { Title } from \"./Title\";\nimport { CloseButton } from \"./CloseButton\";\n\nimport * as styles from \"./styles\";\nimport { useTracking } from \"~/tracking\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nexport function Header({ title }: { title?: string | boolean }) {\n const { t } = useTranslation(\"localContent\");\n const tracking = useTracking();\n const { activeScore, isExpanded, onToggleIsExpanded } = useRootElement();\n\n const handleOnArrowClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n\n const eventAttributes = {\n currentActiveScore: activeScore || \"none\",\n currentIsExpanded: isExpanded,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SIDEBAR_TOGGLE_CLICKED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SIDEBAR_TOGGLE_CLICKED,\n eventAttributes,\n });\n\n onToggleIsExpanded();\n };\n\n return (\n <div className={styles.container} data-testid=\"sidebar-header\">\n {isExpanded && !activeScore && <Title title={title} />}\n {isExpanded && activeScore && <CloseButton />}\n <button\n type=\"button\"\n onClick={handleOnArrowClick}\n aria-label={t(\"sidebar.header.toggle.ariaLabel\", {\n context: isExpanded ? \"close\" : \"open\",\n })}\n aria-pressed={isExpanded}\n data-testid=\"sidebar-header-toggle\"\n >\n <CaretDoubleLeftIcon\n className={styles.icon}\n aria-hidden=\"true\"\n focusable=\"false\"\n data-testid=\"sidebar-header-toggle-icon\"\n />\n </button>\n </div>\n );\n}\n","export const container = `flex flex-col mb-2`;\nexport const title = `group-data-[is-expanded=false]/sidebar:invisible`;\n","export const container = `text-xs font-normal text-gray-400 m-0`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\nimport type { CategoryKey } from \"~/sdks/LocalContent/types\";\n\nexport function CategoryTitle({\n categoryKey,\n className,\n}: {\n categoryKey: CategoryKey;\n className?: string;\n}) {\n const { t } = useTranslation(\"localContent\");\n\n return (\n <h3\n className={`${styles.container} ${className}`}\n data-testid=\"category-title\"\n data-category-key={categoryKey}\n >\n {t(`categories.${categoryKey}`)}\n </h3>\n );\n}\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\nimport { CategoryTitle } from \"~/sdks/LocalContent/components/CategoryTitle\";\n\nimport type { CategoryKey } from \"~/sdks/LocalContent/types\";\n\nexport function Category({\n categoryKey,\n children,\n}: {\n categoryKey: CategoryKey;\n children?: React.ReactNode;\n}) {\n return (\n <div\n className={styles.container}\n data-testid=\"sidebar-category\"\n data-category={categoryKey}\n >\n <CategoryTitle categoryKey={categoryKey} className={styles.title} />\n {children}\n </div>\n );\n}\n","export const container = `\n group/item-button group/color-icon flex justify-between items-center\n text-sm font-normal text-gray-800\n w-full h-11 py-2\n\n data-[is-collapsed=true]:pointer-events-none\n`;\nexport const text = `grow text-left text-nowrap px-2 group-data-[is-collapsed=true]/item-button:invisible group-hover/item-button:text-base-black -mt-0.5`;\nexport const arrow = `group-data-[is-collapsed=true]/item-button:invisible group-hover/item-button:scale-125`;\n","import React from \"react\";\n\nimport { CaretRightIcon } from \"@phosphor-icons/react\";\nimport { ColorIcon } from \"@local-logic/design-system\";\n\nimport * as styles from \"./styles\";\n\nexport type ItemButtonProps = {\n text: string;\n isDisabled?: boolean;\n isCollapsed?: boolean;\n isActive?: boolean;\n icon: {\n element: React.ReactElement;\n backgroundColor?: string;\n fillColor?: string;\n };\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n};\n\nexport function ItemButton({\n text,\n isDisabled,\n isCollapsed = false,\n isActive = false,\n icon: { element: Icon, backgroundColor = \"gray\", fillColor = \"black\" },\n onClick,\n ...rest\n}: ItemButtonProps) {\n return (\n <button\n className={styles.container}\n disabled={isDisabled}\n aria-label={text}\n onClick={onClick}\n data-background-color={backgroundColor}\n data-fill-color={fillColor}\n data-is-collapsed={isCollapsed}\n data-is-active={isActive}\n style={\n {\n \"--item-button-background\": backgroundColor,\n \"--item-button-fill\": fillColor,\n } as React.CSSProperties\n }\n {...rest}\n >\n <ColorIcon\n element={Icon}\n backgroundColor={backgroundColor}\n fillColor={fillColor}\n />\n <span className={styles.text}>{text}</span>\n <CaretRightIcon\n className={styles.arrow}\n weight=\"bold\"\n size={12}\n aria-hidden=\"true\"\n />\n </button>\n );\n}\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { useTracking } from \"~/tracking\";\n\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nimport { ScoreIcon } from \"~/components/ScoreIcon\";\nimport { ItemButton } from \"~/sdks/LocalContent/components/ItemButton\";\n\nexport function Score({\n scoreKey,\n backgroundColor,\n fillColor,\n}: {\n scoreKey: ScoreKey;\n backgroundColor?: string;\n fillColor?: string;\n}) {\n const { t } = useTranslation([\"common\"]);\n const tracking = useTracking();\n const { isExpanded, activeScore, onSelectScore } = useRootElement();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n\n const handleOnSelectScore = (score: ScoreKey) => () => {\n if (typeof onSelectScore === \"undefined\") {\n return;\n }\n\n onSelectScore(score)();\n handleAddSessionTriggerCount();\n\n const eventAttributes = {\n scoreKey: score,\n isSidebarExpanded: isExpanded,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SIDEBAR_SCORE_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SIDEBAR_SCORE_SELECTED,\n eventAttributes,\n });\n };\n\n return (\n <ItemButton\n text={t(`common:scores.${scoreKey}.title`)}\n isDisabled={!isExpanded}\n isCollapsed={!isExpanded}\n isActive={activeScore === scoreKey}\n icon={{\n element: <ScoreIcon score={scoreKey} />,\n backgroundColor,\n fillColor,\n }}\n onClick={handleOnSelectScore(scoreKey)}\n data-testid=\"sidebar-score-item\"\n data-score={scoreKey}\n />\n );\n}\n","export const container = `flex flex-col data-[is-visible=false]:hidden`;\nexport const score = `mb-3`;\n","export const container = `bg-gray-250 w-3 h-3 rounded-full flex items-center justify-center`;\nexport const icon = `text-base-white w-2.5 h-2.5`;\n","import React, { useMemo } from \"react\";\n\nimport { CaretUpIcon, CaretDownIcon, EqualsIcon } from \"@phosphor-icons/react\";\n\nimport * as styles from \"./styles\";\n\nexport function ValueIndicator({\n comparison,\n}: {\n comparison: \"higher\" | \"lower\" | \"equal\";\n}) {\n const Icon = useMemo(() => {\n switch (comparison) {\n case \"higher\":\n return CaretUpIcon;\n case \"lower\":\n return CaretDownIcon;\n default:\n return EqualsIcon;\n }\n }, [comparison]);\n\n return (\n <div\n className={styles.container}\n data-testid=\"value-indicator\"\n data-comparison={comparison}\n >\n <Icon className={styles.icon} />\n </div>\n );\n}\n","export const container = `flex items-center gap-1 text-xs text-gray-400 mb-2`;\n","import React, { useMemo } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { ValueIndicator } from \"./ValueIndicator\";\n\nimport * as styles from \"./styles\";\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function ScoreComparison({\n scoreKey,\n locationScoreValue,\n comparedTo,\n className,\n}: {\n scoreKey: ScoreKey | null;\n locationScoreValue?: number;\n comparedTo?: { text: string; value: number };\n className?: string;\n}) {\n const { t } = useTranslation(\"localContent\");\n const { hideScoresList } = useLocalContent();\n\n const hide = useMemo(\n () => scoreKey === null || hideScoresList?.includes(scoreKey),\n [hideScoresList, scoreKey],\n );\n\n const comparison = useMemo(() => {\n if (\n typeof locationScoreValue === \"undefined\" ||\n typeof comparedTo === \"undefined\"\n ) {\n return null;\n }\n\n if (locationScoreValue > comparedTo.value) {\n return \"higher\";\n }\n\n if (locationScoreValue < comparedTo.value) {\n return \"lower\";\n }\n\n return \"equal\";\n }, [locationScoreValue, comparedTo?.value]);\n\n if (hide || typeof comparedTo === \"undefined\" || comparison === null) {\n return null;\n }\n\n return (\n <div\n className={twMerge(styles.container, className)}\n data-testid=\"score-comparison\"\n >\n <ValueIndicator comparison={comparison} />\n <p>\n {t(\"scoreComparison.text\", {\n context: comparison !== \"equal\" ? comparison : undefined,\n name: comparedTo.text,\n value: comparedTo.value,\n })}\n </p>\n </div>\n );\n}\n","export const container = `text-sm text-gray-800 mb-6`;\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\n\nexport function ScoreText({ text }: { text?: string }) {\n if (typeof text === \"undefined\") {\n return null;\n }\n\n return (\n <p className={styles.container} data-testid=\"score-description\">\n {text}\n </p>\n );\n}\n","export const container = `w-full flex flex-col gap-y-1`;\nexport const item = `h-6 bg-gray-150 rounded animate-pulse`;\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\n\nexport function Loading() {\n return (\n <div className={styles.container} data-testid=\"score-poi-list-loading\">\n <div className={styles.item} />\n <div className={styles.item} />\n <div className={styles.item} />\n <div className={styles.item} />\n <div className={styles.item} />\n </div>\n );\n}\n","export const container = `w-full`;\nexport const title = `text-xs text-gray-800 mb-1`;\nexport const subcategories = `flex flex-wrap gap-1 mb-4`;\nexport const button = `\n flex items-center gap-x-1 text-nowrap\n py-1.5 px-2.5 rounded-full text-sm font-medium transition-colors\n border border-gray-150 text-gray-400 bg-base-white\n\n hover:bg-gray-400\n hover:text-base-white\n hover:border-gray-400\n\n data-[is-active=true]:bg-gray-400\n data-[is-active=true]:text-base-white\n data-[is-active=true]:border-gray-400\n`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport * as styles from \"./styles\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { useTracking } from \"~/tracking\";\n\nimport { PoiIconDeprecated } from \"~/components/PoiIcon\";\n\nimport type { ScoreKey, POISubcategory } from \"~/sdks/LocalContent/types\";\n\nexport function Subcategories({\n scoreKey,\n availablePoiSubcategories,\n selectedSubcategory,\n onSelectCategory,\n}: {\n scoreKey: ScoreKey | null;\n availablePoiSubcategories: POISubcategory[];\n selectedSubcategory: POISubcategory | null;\n onSelectCategory: (subcategory: POISubcategory | null) => void;\n}) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n const tracking = useTracking();\n\n const handleSubcategoryClick = (subcategory: POISubcategory) => () => {\n if (selectedSubcategory === subcategory) {\n return;\n }\n\n onSelectCategory(subcategory);\n\n const eventAttributes = {\n score: scoreKey as string,\n category: subcategory,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SCORE_POI_CATEGORY_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SCORE_POI_CATEGORY_SELECTED,\n eventAttributes,\n });\n };\n\n // While we require availablePoiSubcategories to be defined, we should handle when it's undefined\n if (\n typeof availablePoiSubcategories === \"undefined\" ||\n availablePoiSubcategories.length <= 1\n ) {\n return null;\n }\n\n return (\n <div\n className={styles.container}\n data-testid=\"score-poi-list-subcategories\"\n >\n {availablePoiSubcategories.length > 0 && (\n <div\n className={styles.subcategories}\n data-testid=\"score-poi-list-subcategories-list\"\n >\n {availablePoiSubcategories.map((subcategory) => (\n <button\n data-testid={`score-poi-list-subcategory-${subcategory}`}\n className={styles.button}\n data-is-active={selectedSubcategory === subcategory}\n key={`score-poi-list-subcategory-${subcategory}`}\n onClick={handleSubcategoryClick(subcategory)}\n >\n <PoiIconDeprecated poi={subcategory} />\n {t(`common:pois.${subcategory}`)}\n </button>\n ))}\n </div>\n )}\n </div>\n );\n}\n","export const container = `w-full`;\nexport const title = `text-xs text-gray-400 mb-2`;\nexport const list = `flex flex-col gap-y-1`;\nexport const item = `inline-flex group/poi-list-item`;\nexport const button = `\n w-full pl-4 border rounded transition-colors\n bg-base-white border-gray-150 text-gray-400 fill-gray-400\n\n hover:bg-primary-100\n hover:border-primary-100\n hover:text-base-white\n hover:fill-base-white\n\n group-data-[is-active=true]/poi-list-item:bg-primary-100\n`;\nexport const poi = `flex justify-between w-full items-center text-left grow h-8`;\nexport const name = `text-xs font-medium truncate overflow-hidden text-nowrap w-52 group-data-[is-active=true]/poi-list-item:text-base-white`;\nexport const icon = `w-3 h-3 mr-2 group-data-[is-active=true]/poi-list-item:fill-base-white`;\nexport const routes = `block pb-2`;\nexport const schoolTypes = `flex flex-wrap gap-1 mb-2`;\nexport const badge = `text-xs py-0.5 px-2 bg-gray-150 text-base-black rounded`;\n","import React, { useEffect, useRef, useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { CaretRightIcon } from \"@phosphor-icons/react\";\nimport type { POI, School } from \"@local-logic/client\";\nimport type { MarkerValue } from \"../types\";\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport { DEFAULT_RADIUS } from \"~/sdks/LocalContent/constants\";\n\nimport { getIdFromMarker } from \"~/utils/map/getIdFromMarker\";\n\nimport { TransitRoutes } from \"~/components/TransitRoutes\";\n\nimport type { POISubcategory } from \"~/sdks/LocalContent/types\";\n\nexport function List({\n pois,\n showPois = true,\n onSelect,\n}: {\n pois: MarkerValue[];\n showPois?: boolean;\n onSelect?: (poi: MarkerValue, category: POISubcategory) => void;\n}) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n const {\n activeMarker,\n markersData,\n distanceUnit,\n selectedPoiSubcategory,\n handleMarkerClick,\n showSchoolRatings,\n } = useLocalContent();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n const activeItemRef = useRef<HTMLLIElement | null>(null);\n\n useEffect(() => {\n if (activeItemRef.current) {\n activeItemRef.current.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n });\n }\n }, [activeMarker]);\n\n const isUsingLargerRadius = useMemo(() => {\n if (!markersData || Object.keys(markersData).length === 0) {\n return false;\n }\n\n const farMarker = Object.values(markersData)\n .flat()\n .find(\n (marker) =>\n typeof marker?.proximity?.linear_distance === \"number\" &&\n marker.proximity.linear_distance > DEFAULT_RADIUS,\n );\n\n return typeof farMarker !== \"undefined\";\n }, [markersData]);\n\n const handleSelectMarkerOnMap = (poi: MarkerValue) => () => {\n const markerId = getIdFromMarker(poi.lat, poi.lng, poi.name);\n handleAddSessionTriggerCount();\n handleMarkerClick({\n id: markerId,\n latitude: poi.lat,\n longitude: poi.lng,\n markers: [\n {\n id: markerId,\n latitude: poi.lat,\n longitude: poi.lng,\n name: poi.name,\n },\n ],\n });\n\n if (typeof onSelect !== \"undefined\" && selectedPoiSubcategory !== null) {\n onSelect(poi, selectedPoiSubcategory);\n }\n };\n\n if (pois.length === 0) {\n return null;\n }\n\n return (\n <div className={styles.container} data-testid=\"score-poi-list-content\">\n <p className={styles.title} data-testid=\"score-poi-list-title\">\n {!isUsingLargerRadius &&\n t(\"poiSearchRadius\", {\n radius:\n distanceUnit === \"imperial\"\n ? ((DEFAULT_RADIUS / 1000) * 0.621371).toFixed(1)\n : (DEFAULT_RADIUS / 1000).toFixed(1),\n unit: t(\n `common:distance.${distanceUnit === \"imperial\" ? \"mile\" : \"kilometer\"}`,\n ),\n })}\n </p>\n\n {showPois && (\n <ul className={styles.list}>\n {pois.map((poi) => {\n const isActive =\n activeMarker?.id === getIdFromMarker(poi.lat, poi.lng, poi.name);\n\n return (\n <li\n ref={isActive ? activeItemRef : null}\n className={styles.item}\n key={`${poi.lat}-${poi.lng}-${poi.name}`}\n data-is-active={isActive}\n >\n <button\n data-testid=\"score-poi-list-item\"\n onClick={handleSelectMarkerOnMap(poi)}\n className={styles.button}\n >\n <span className={styles.poi}>\n <span\n className={styles.name}\n data-testid=\"score-poi-list-name\"\n >\n {poi.name}\n </span>\n <CaretRightIcon weight=\"bold\" className={styles.icon} />\n </span>\n\n {typeof (poi as School)?.school_attributes?.types !==\n \"undefined\" && (\n <div className={styles.schoolTypes}>\n {(poi as School)?.school_attributes?.types?.map(\n (schoolType) => (\n <span\n key={`score-poi-list-school-type-${poi.lat}-${poi.lng}-${poi.name}`}\n className={styles.badge}\n >\n {schoolType}\n </span>\n ),\n )}\n {showSchoolRatings &&\n typeof (poi as School)?.rating === \"string\" && (\n <span className={styles.badge}>\n {(poi as School)?.rating}\n </span>\n )}\n </div>\n )}\n\n <TransitRoutes\n keyPrefix={`poi-transit-routes-${poi.lat}-${poi.lng}`}\n routes={(poi as POI).routes}\n useLongName={selectedPoiSubcategory === \"train_stations\"}\n className={styles.routes}\n />\n </button>\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n}\n","export const container = `w-full`;\n","import React from \"react\";\n\nimport type { Markers, MarkerValue } from \"./types\";\n\nimport { Loading } from \"./Loading\";\nimport { Subcategories } from \"./Subcategories\";\nimport { List } from \"./List\";\n\nimport * as styles from \"./styles\";\nimport type { ScoreKey, POISubcategory } from \"~/sdks/LocalContent/types\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function ScorePoiList({\n scoreKey,\n isLoading = false,\n showPois = true,\n pois,\n onPOISelected,\n}: {\n scoreKey: ScoreKey | null;\n isLoading?: boolean;\n showPois?: boolean;\n pois?: Markers;\n onPOISelected?: (poi: MarkerValue, category: POISubcategory) => void;\n}) {\n const {\n availablePoiSubcategories,\n selectedPoiSubcategory,\n handleSelectPoiSubcategory,\n } = useLocalContent();\n\n if (isLoading) {\n return <Loading />;\n }\n\n if (typeof pois === \"undefined\" || selectedPoiSubcategory === null) {\n return null;\n }\n\n return (\n <div className={styles.container}>\n <Subcategories\n availablePoiSubcategories={availablePoiSubcategories}\n scoreKey={scoreKey}\n selectedSubcategory={selectedPoiSubcategory}\n onSelectCategory={handleSelectPoiSubcategory}\n />\n\n {typeof pois[selectedPoiSubcategory] !== \"undefined\" && (\n <List\n pois={pois[selectedPoiSubcategory]}\n showPois={showPois}\n onSelect={onPOISelected}\n />\n )}\n </div>\n );\n}\n","export const container = `\n w-full flex gap-2 items-center justify-between\n`;\nexport const title = `flex grow gap-2 items-center`;\nexport const text = `text-nowrap text-gray-800 font-medium flex items-center -mt-1`;\n","export const container = `rounded text-xs font-medium bg-base-white text-primary-100 border border-primary-100 h-5 flex items-center justify-center w-16 shrink-0`;\n","import React, { useMemo } from \"react\";\n\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport function ScoreValue({\n scoreKey,\n value,\n}: {\n scoreKey?: ScoreKey;\n value?: number;\n}) {\n const { hideScoresList } = useLocalContent();\n\n const hide = useMemo(\n () => typeof scoreKey === \"undefined\" || hideScoresList.includes(scoreKey),\n [scoreKey, hideScoresList],\n );\n\n if (hide || typeof value !== \"number\" || value <= 0) {\n return null;\n }\n\n return (\n <div className={styles.container} data-testid=\"score-value\">\n {value > 10 ? 10 : value} / 10\n </div>\n );\n}\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { ColorIcon } from \"@local-logic/design-system\";\nimport * as styles from \"./styles\";\nimport { ScoreValue } from \"~/sdks/LocalContent/components/ScoreValue\";\nimport { ScoreIcon } from \"~/components/ScoreIcon\";\n\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport type ScoreProps = {\n scoreKey: ScoreKey | null;\n scoreValue?: number;\n backgroundColor?: string;\n fillColor?: string;\n className?: string;\n};\n\nexport function Score({\n scoreKey,\n scoreValue,\n backgroundColor,\n fillColor,\n className,\n}: ScoreProps) {\n const { t } = useTranslation([\"common\"]);\n\n if (scoreKey === null) {\n return null;\n }\n\n return (\n <div\n className={twMerge(styles.container, className)}\n data-testid=\"score-component\"\n >\n <span className={styles.title}>\n <ColorIcon\n element={<ScoreIcon score={scoreKey} />}\n backgroundColor={backgroundColor}\n fillColor={fillColor}\n />\n <span className={styles.text}>\n {t(`common:scores.${scoreKey}.title`)}\n </span>\n </span>\n <ScoreValue scoreKey={scoreKey} value={scoreValue} />\n </div>\n );\n}\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\nimport * as styles from \"./styles\";\nimport { ScoreComparison } from \"~/sdks/LocalContent/components/ScoreComparison\";\nimport { ScoreText } from \"~/sdks/LocalContent/components/ScoreText\";\nimport { ScorePoiList } from \"~/sdks/LocalContent/components/ScorePoiList\";\nimport type { MarkerValue } from \"~/sdks/LocalContent/components/ScorePoiList/types\";\n\nimport {\n type POISubcategory,\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { Score } from \"~/sdks/LocalContent/components/Score\";\n\nimport { useTracking } from \"~/tracking\";\n\nexport function ScoreDetails() {\n const {\n isExpanded,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n } = useRootElement();\n const tracking = useTracking();\n\n const handleOnPOISelected = (poi: MarkerValue, category: POISubcategory) => {\n if (activeScore === null) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category,\n latitude: poi.lat,\n longitude: poi.lng,\n name: poi.name,\n };\n\n Object.entries(poi).forEach(([key, value]) => {\n if ([\"boolean\", \"string\", \"number\"].includes(typeof value)) {\n if (key === \"lat\" || key === \"lng\" || key === \"name\") {\n return;\n }\n eventAttributes[key] = value;\n }\n });\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SIDEBAR_POI_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SIDEBAR_POI_SELECTED,\n eventAttributes,\n });\n };\n\n return (\n <div\n className={styles.container}\n data-testid=\"sidebar-score-details\"\n data-is-visible={isExpanded}\n >\n <Score\n scoreKey={activeScore}\n scoreValue={activeScoreData?.value}\n backgroundColor={activeScoreData?.categoryOptions?.colors?.background}\n fillColor={activeScoreData?.categoryOptions?.colors?.fill}\n className={styles.score}\n />\n <ScoreComparison\n scoreKey={activeScore}\n locationScoreValue={activeScoreData?.value}\n comparedTo={activeScoreData?.geographies?.g30}\n />\n <ScoreText text={activeScoreData?.text} />\n <ScorePoiList\n isLoading={isMarkersLoading}\n pois={markersData}\n scoreKey={activeScore}\n onPOISelected={handleOnPOISelected}\n />\n </div>\n );\n}\n","export const container = `absolute top-14 left-0 bottom-0 h-auto w-full bg-base-white p-4 overflow-y-auto`;\n","export const container = `\n flex flex-col\n\n transition-transform duration-15 ease-in-out\n\n data-[direction=\"right-to-left\"]:translate-x-full\n data-[direction=\"left-to-right\"]:-translate-x-full\n data-[direction=\"bottom-to-top\"]:translate-y-full\n data-[direction=\"top-to-bottom\"]:-translate-y-full\n\n data-[direction=\"right-to-left\"]:data-[is-open=true]:translate-x-0\n data-[direction=\"left-to-right\"]:data-[is-open=true]:translate-x-0\n data-[direction=\"bottom-to-top\"]:data-[is-open=true]:translate-y-0\n data-[direction=\"top-to-bottom\"]:data-[is-open=true]:translate-y-0\n`;\n","import React, { useRef, useImperativeHandle } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport * as styles from \"./styles\";\n\nexport const Slider = React.forwardRef<\n HTMLDivElement,\n {\n isOpen?: boolean;\n direction?:\n | \"right-to-left\"\n | \"left-to-right\"\n | \"bottom-to-top\"\n | \"top-to-bottom\";\n className?: string;\n children?: React.ReactNode;\n }\n>(\n (\n {\n isOpen = false,\n direction = \"right-to-left\",\n className,\n children,\n ...rest\n },\n forwardedRef,\n ) => {\n const internalRef = useRef<HTMLDivElement>(null);\n\n useImperativeHandle(\n forwardedRef,\n () => internalRef.current as HTMLDivElement,\n );\n\n return (\n <div\n ref={internalRef}\n className={twMerge(styles.container, className)}\n data-testid=\"slider\"\n data-is-open={isOpen}\n data-direction={direction}\n {...rest}\n >\n {children}\n </div>\n );\n },\n);\n\nSlider.displayName = \"Slider\";\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\nimport { Slider as SliderComponent } from \"~/sdks/LocalContent/components/Slider\";\n\nexport function Slider({ children }: { children?: React.ReactNode }) {\n const { activeScore, isExpanded } = useRootElement();\n\n return (\n <SliderComponent\n isOpen={isExpanded && !!activeScore}\n className={styles.container}\n >\n {children}\n </SliderComponent>\n );\n}\n","import React from \"react\";\n\nimport type { RootProps } from \"./types\";\n\nimport { RootElementContextProvider } from \"./context\";\n\nexport const Root = ({\n isExpanded,\n isScoresLoading,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n onSelectScore,\n onToggleIsExpanded,\n children,\n}: RootProps) => (\n <RootElementContextProvider\n isExpanded={isExpanded}\n isScoresLoading={isScoresLoading}\n isMarkersLoading={isMarkersLoading}\n activeScore={activeScore}\n activeScoreData={activeScoreData}\n markersData={markersData}\n onSelectScore={onSelectScore}\n onToggleIsExpanded={onToggleIsExpanded}\n >\n {children}\n </RootElementContextProvider>\n);\n\n// Export children\nexport { Content } from \"./Content\";\nexport { Header } from \"./Header\";\nexport { Category } from \"./Category\";\nexport { Score } from \"./Score\";\nexport { ScoreDetails } from \"./ScoreDetails\";\nexport { Slider } from \"./Slider\";\n","export const container = `absolute top-2.5 left-2 flex gap-x-3 z-10`;\nexport const item = `\n group rounded-full h-10 min-w-10 max-w-10 w-10 px-3 whitespace-nowrap text-base-white\n flex gap-0 items-center justify-center font-medium overflow-hidden -outline-offset-2\n shadow-4sm\n\n transition-none\n\n bg-[var(--background)]\n hover:bg-[var(--fill)]\n data-[is-active=true]:bg-[var(--fill)]\n data-[is-active=true]:max-w-full\n data-[is-active=true]:w-full\n data-[is-active=true]:gap-2\n data-[is-active=true]:transition-all\n`;\nexport const icon = `\n transition-colors w-5 h-5 flex-shrink-0\n\n fill-[var(--fill)]\n group-hover:fill-base-white\n group-data-[is-active=true]:fill-base-white\n`;\nexport const title = `\n text-sm\n transition-all max-w-0 translate-x-16\n\n group-data-[is-active=true]:max-w-none\n group-data-[is-active=true]:translate-x-0\n`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport * as styles from \"./styles\";\nimport { useTracking } from \"~/tracking\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport { ScoreIcon } from \"~/components/ScoreIcon\";\n\nimport {\n type ScoreKey,\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nexport function ScoresPillList({\n scores,\n backgroundColor,\n fillColor,\n}: {\n scores?: ScoreKey[];\n backgroundColor?: string;\n fillColor?: string;\n}) {\n const tracking = useTracking();\n const { t } = useTranslation([\"common\"]);\n const {\n activeScore,\n isCommuteCalculatorOpen,\n handleSelectScore: onSelectScore,\n handleToggleIsCommuteCalculatorOpen,\n } = useLocalContent();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n\n const handleSelectScore = (scoreKey: ScoreKey) => () => {\n onSelectScore(scoreKey)();\n handleAddSessionTriggerCount();\n\n const eventAttributes = {\n scoreKey,\n isExpanded: activeScore === scoreKey,\n };\n\n if (isCommuteCalculatorOpen) {\n handleToggleIsCommuteCalculatorOpen();\n }\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.CATEGORIES_MENU_SCORE_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.CATEGORIES_MENU_SCORE_SELECTED,\n eventAttributes,\n });\n };\n\n if (typeof scores === \"undefined\" || scores.length === 0) {\n return null;\n }\n\n return (\n <div\n data-testid=\"scores-pill-list\"\n className={styles.container}\n style={\n {\n \"--background\": backgroundColor,\n \"--fill\": fillColor,\n } as React.CSSProperties\n }\n >\n {scores.map((score) => (\n <button\n key={score}\n data-is-active={score === activeScore}\n data-score={score}\n data-testid=\"score-pill-item\"\n onClick={handleSelectScore(score)}\n className={styles.item}\n aria-label={t(`common:scores.${score}.title`)}\n >\n <ScoreIcon\n data-testid=\"score-pill-icon\"\n score={score}\n className={styles.icon}\n />\n <span data-testid=\"score-pill-title\" className={styles.title}>\n {t(`common:scores.${score}.title`)}\n </span>\n </button>\n ))}\n </div>\n );\n}\n","export const container = `flex items-center justify-center`;\nexport const caret = `w-4 h-4 shrink-0 group-data-[is-expanded=\"true\"]/bottom-slider:rotate-180 transition-transform duration-50 ease-in-out`;\n","import React from \"react\";\n\nimport { CaretUpIcon } from \"@phosphor-icons/react\";\n\nimport * as styles from \"./styles\";\n\nexport function Header({\n onClick,\n}: {\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n}) {\n if (typeof onClick === \"undefined\") {\n return (\n <div className={styles.container} data-testid=\"header-button\">\n <CaretUpIcon className={styles.caret} weight=\"bold\" />\n </div>\n );\n }\n\n return (\n <button\n className={styles.container}\n onClick={onClick}\n data-testid=\"header-button\"\n >\n <CaretUpIcon className={styles.caret} weight=\"bold\" />\n </button>\n );\n}\n","export const container = `\n group/bottom-slider flex flex-col gap-y-2 p-4\n absolute bottom-0 w-full shadow-sm\n transition-all duration-300 ease-in-out\n z-20 bg-base-white rounded-t-2xl h-fit \n\n data-[is-expanded=false]:max-h-20\n data-[is-expanded=true]:max-h-full\n\n data-[is-clickable=true]:cursor-pointer\n`;\n\nexport const expandToggle = `\n flex items-center justify-center\n`;\n","import React, { forwardRef } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { Slider } from \"../Slider\";\nimport { Header } from \"./Header\";\n\nimport * as styles from \"./styles\";\n\nexport const BottomSlider = forwardRef<\n HTMLDivElement,\n {\n isOpen?: boolean;\n isExpanded?: boolean;\n fullAreaClickable?: boolean;\n onExpandContract: (e: React.MouseEvent<HTMLButtonElement>) => void;\n children?: React.ReactNode;\n className?: string;\n }\n>(\n (\n {\n isOpen,\n isExpanded = true,\n fullAreaClickable = false,\n onExpandContract,\n children,\n className,\n ...rest\n },\n forwardedRef,\n ) => (\n <span onClick={fullAreaClickable ? onExpandContract : undefined}>\n <Slider\n ref={forwardedRef}\n direction=\"bottom-to-top\"\n isOpen={isOpen}\n data-is-expanded={isExpanded}\n data-is-clickable={fullAreaClickable}\n className={twMerge(styles.container, className)}\n {...rest}\n >\n <Header onClick={!fullAreaClickable ? onExpandContract : undefined} />\n {children}\n </Slider>\n </span>\n ),\n);\n\nBottomSlider.displayName = \"BottomSlider\";\n","export const container = `\n data-[is-expanded=false]:max-h-32\n data-[is-expanded=true]:max-h-96\n`;\nexport const score = `mb-1`;\nexport const scoreComparison = `ml-7`;\n","import React, { useState, useEffect, forwardRef } from \"react\";\n\nimport { BottomSlider } from \"../BottomSlider\";\nimport { Score } from \"../Score\";\nimport { ScoreComparison } from \"../ScoreComparison\";\nimport { ScoreText } from \"../ScoreText\";\nimport { ScorePoiList } from \"../ScorePoiList\";\n\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\n/**\n * This component is meant to be displayed on mobile devices only. It shows detailed\n * information about the selected score in a slider that appears from the bottom\n * of the screen.\n */\nexport const ScoreDetailsSlider = forwardRef<HTMLDivElement>(\n (_, forwardedRef) => {\n const {\n isCommuteCalculatorOpen,\n activeScore,\n activeScoreData,\n activeCategoryData,\n isMarkersLoading,\n markersData,\n } = useLocalContent();\n const [isExpanded, setIsExpanded] = useState(false);\n\n useEffect(() => {\n setIsExpanded(false);\n }, [activeScore]);\n\n const handleOnExpandContractClick = (\n e: React.MouseEvent<HTMLButtonElement>,\n ) => {\n // Sanity checks\n if (\n !activeScore ||\n !forwardedRef ||\n \"current\" in forwardedRef === false\n ) {\n return;\n }\n\n // When the slider is expanded, ignore clicks on the button inside the slider\n // This would allow for clicking on actions inside the slider without collapsing it\n if (isExpanded && e.target instanceof HTMLButtonElement) {\n return;\n }\n\n setIsExpanded((prev) => !prev);\n };\n\n if (isCommuteCalculatorOpen) {\n return null;\n }\n\n return (\n <BottomSlider\n ref={activeScore ? forwardedRef : undefined}\n data-testid=\"score-details-slider\"\n data-is-expanded={isExpanded}\n className={styles.container}\n isOpen={typeof activeScoreData !== \"undefined\"}\n isExpanded={isExpanded}\n fullAreaClickable\n onExpandContract={handleOnExpandContractClick}\n >\n <div className={styles.score}>\n <Score\n scoreKey={activeScore}\n scoreValue={activeScoreData?.value}\n backgroundColor={activeCategoryData?.colors?.background}\n fillColor={activeCategoryData?.colors?.fill}\n className={styles.score}\n />\n <ScoreComparison\n scoreKey={activeScore}\n locationScoreValue={activeScoreData?.value}\n comparedTo={activeScoreData?.geographies?.g30}\n className={styles.scoreComparison}\n />\n </div>\n <ScorePoiList\n isLoading={isMarkersLoading}\n pois={markersData}\n scoreKey={activeScore}\n showPois={false}\n />\n <ScoreText text={activeScoreData?.text} />\n </BottomSlider>\n );\n },\n);\n\nScoreDetailsSlider.displayName = \"ScoreDetailsSlider\";\n","import React, { useContext, useEffect } from \"react\";\n\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nimport type { CommuteData } from \"~/sdks/LocalContent/hooks/useCommute/types\";\nimport type { CommuteOptions, MapProvider } from \"~/sdks/LocalContent/types\";\n\nexport type DefaultContext = {\n isOpen: boolean;\n commuteOptions: CommuteOptions;\n commuteData: CommuteData | null;\n isCommuteDataLoading: boolean;\n location: { lat: number; lng: number };\n country: \"CAN\" | \"USA\";\n mapProvider?: MapProvider;\n distanceUnit?: \"metric\" | \"imperial\";\n onToggleIsOpen: () => void;\n handleCalculateCommute: (options: CommuteOptions) => void;\n};\n\nconst RootElementContext = React.createContext<DefaultContext>(\n {} as DefaultContext,\n);\nconst useRootElement = () => useContext(RootElementContext);\n\nconst RootElementContextProvider = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const {\n activeScore,\n activeCategory,\n selectedPoiSubcategory,\n map,\n country,\n location,\n isCommuteCalculatorOpen,\n commuteData,\n commuteOptions,\n isCommuteDataLoading,\n distanceUnit = \"metric\",\n handleToggleIsCommuteCalculatorOpen,\n handleCalculateCommute,\n } = useLocalContent();\n\n const isCommuteCalculatorOpenRef = React.useRef(isCommuteCalculatorOpen);\n\n // Keep the ref updated with the latest value\n useEffect(() => {\n isCommuteCalculatorOpenRef.current = isCommuteCalculatorOpen;\n }, [isCommuteCalculatorOpen]);\n\n useEffect(() => {\n if (isCommuteCalculatorOpenRef.current) {\n handleToggleIsCommuteCalculatorOpen();\n }\n }, [activeScore, activeCategory, selectedPoiSubcategory]);\n\n return (\n <RootElementContext.Provider\n value={{\n isOpen: isCommuteCalculatorOpen,\n commuteData,\n commuteOptions,\n isCommuteDataLoading,\n location: location as DefaultContext[\"location\"],\n country: country === \"CAN\" ? \"CAN\" : \"USA\",\n mapProvider: map?.mapProvider,\n distanceUnit,\n onToggleIsOpen: handleToggleIsCommuteCalculatorOpen,\n handleCalculateCommute,\n }}\n >\n {children}\n </RootElementContext.Provider>\n );\n};\n\nexport { useRootElement, RootElementContextProvider };\n","export const container = `\n z-10 sm:rounded text-sm h-10 data-[is-active=true]:bg-primary-200\n\n max-sm:rounded-full\n max-sm:w-10\n max-sm:px-0\n max-sm:!bg-primary-50\n max-sm:hover:!bg-primary-100\n`;\nexport const icon = `w-5 h-5`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { Button } from \"@local-logic/design-system\";\n\nimport { TrafficSignIcon } from \"@phosphor-icons/react\";\n\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\n\nexport function Trigger() {\n const { t } = useTranslation(\"localContent\");\n const breakpoints = useResponsiveBreakpoints();\n const { isOpen, onToggleIsOpen } = useRootElement();\n\n return (\n <Button\n className={styles.container}\n prefixIcon={<TrafficSignIcon className={styles.icon} />}\n data-testid=\"commute-calculator-trigger\"\n data-is-active={isOpen}\n onClick={onToggleIsOpen}\n >\n {breakpoints.sm &&\n t(\"commute.cta\", { context: breakpoints.xs ? \"long\" : \"short\" })}\n </Button>\n );\n}\n","export const container = `\n p-3 bg-base-white rounded z-10\n absolute top-0 right-0\n shadow-3sm w-fit\n\n min-w-64 lg:min-w-72\n max-w-[300px] lg:max-w-none\n`;\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\n\nexport function Card({ children }: { children?: React.ReactNode }) {\n const { isOpen } = useRootElement();\n\n if (!isOpen) {\n return null;\n }\n\n return <div className={styles.container}>{children}</div>;\n}\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\nimport { BottomSlider } from \"~/sdks/LocalContent/components/BottomSlider\";\n\nexport function Slider({ children }: { children?: React.ReactNode }) {\n const { isOpen, onToggleIsOpen } = useRootElement();\n\n return (\n <BottomSlider isOpen={isOpen} isExpanded onExpandContract={onToggleIsOpen}>\n {isOpen && children}\n </BottomSlider>\n );\n}\n","export const container = `w-full flex flex-row lg:flex-col items-baseline gap-x-4 gap-y-1 text-xs`;\nexport const duration = `text-sm font-medium text-gray-800`;\nexport const distance = `font-normal text-gray-400`;\nexport const loading = `block w-full h-4 bg-gray-200 rounded animate-pulse`;\n","import React, { useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../../context\";\n\nimport * as styles from \"./styles\";\nimport {\n METERS_TO_YARDS_CONVERSION_FACTOR,\n YARDS_PER_MILE,\n METERS_PER_KILOMETER,\n} from \"~/sdks/LocalContent/constants\";\n\nexport function Route({ isLoading = false }: { isLoading?: boolean }) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n const { commuteData, distanceUnit } = useRootElement();\n\n const durationString = useMemo(() => {\n if (!commuteData?.duration) return null;\n\n const hours = Math.floor(commuteData.duration / 60 / 60);\n const minutes = Math.floor((commuteData.duration / 60) % 60);\n\n const minutesString = `${minutes} ${t(\"common:time.minute\", { count: minutes })}`;\n\n if (hours === 0) {\n return minutesString;\n }\n\n if (minutes === 0) {\n return `${hours} ${t(\"common:time.hour\", { count: hours })}`;\n }\n\n return `${hours} ${t(\"common:time.hour\", { count: hours })} ${minutesString}`;\n }, [commuteData?.duration, t]);\n\n const distanceString = useMemo(() => {\n if (!commuteData?.distance) {\n return null;\n }\n\n // HereApi returns the length in metric\n let distanceInUnit = commuteData.distance;\n const isImperialSystem = distanceUnit === \"imperial\";\n\n if (isImperialSystem) {\n distanceInUnit *= METERS_TO_YARDS_CONVERSION_FACTOR;\n }\n\n const kilometersOrMiles =\n distanceInUnit /\n (isImperialSystem ? YARDS_PER_MILE : METERS_PER_KILOMETER);\n\n if (kilometersOrMiles < 1) {\n return `${Math.floor(distanceInUnit)} ${t(`common:distance.${isImperialSystem ? \"yard\" : \"meter\"}`)}`;\n }\n\n return `${Math.floor(kilometersOrMiles * 100) / 100} ${t(`common:distance.${isImperialSystem ? \"mile\" : \"kilometer\"}`)}`;\n }, [commuteData?.distance, t]);\n\n if (!commuteData && !isLoading) {\n return null;\n }\n\n return (\n <div className={styles.container}>\n {isLoading && (\n <span data-testid=\"commute-loading\" className={styles.loading}></span>\n )}\n {!isLoading && durationString && (\n <p data-testid=\"commute-duration\" className={styles.duration}>\n {durationString.toLowerCase()}\n </p>\n )}\n {!isLoading && !durationString && (\n <p data-testid=\"commute-duration\" className={styles.duration}>\n {t(\"commute.results.noRoute\")}\n </p>\n )}\n\n {!isLoading && distanceString && (\n <p data-testid=\"commute-distance\" className={styles.distance}>\n {`${distanceString} - ${t(\"commute.results.fastestRoute\")}`}\n </p>\n )}\n {!isLoading && !distanceString && (\n <p data-testid=\"commute-distance\" className={styles.distance}>\n {t(\"commute.results.trySuggestion\")}\n </p>\n )}\n </div>\n );\n}\n","export const container = `w-full flex flex-row lg:flex-col items-baseline gap-x-4 gap-y-1 text-xs`;\nexport const title = `text-sm font-medium text-gray-800`;\nexport const description = `font-normal text-gray-400`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\n\nexport function NoRoute() {\n const { t } = useTranslation(\"localContent\");\n\n return (\n <div className={styles.container}>\n <p data-testid=\"no-route-title\" className={styles.title}>\n {t(\"commute.results.noRoute\")}\n </p>\n <p data-testid=\"no-route-description\" className={styles.description}>\n {t(\"commute.results.trySuggestion\")}\n </p>\n </div>\n );\n}\n","export const trigger = `w-full group/select flex basis-0 items-center justify-between h-12 rounded border data-[state=\"open\"]:border-primary-100 px-4 py-3 bg-base-white whitespace-nowrap`;\nexport const icon = `p-1 group-data-[state=\"open\"]/select:rotate-180 transition-transform duration-50 ease-in-out`;\nexport const item = `\n relative flex items-center w-full gap-2 py-2.5 px-4 text-sm font-normal text-gray-400 cursor-pointer\n \n hover:bg-primary-10\n hover:text-base-black\n hover:font-medium\n \n data-[state=\"checked\"]:bg-primary-10\n data-[state=\"checked\"]:text-base-black\n data-[state=\"checked\"]:font-medium\n`;\nexport const content = `bg-white rounded-lg py-3 shadow z-10`;\nexport const contentViewport = `h-[var(--radix-select-trigger-height)] min-w-[var(--radix-select-trigger-width)] w-full`;\n","import React from \"react\";\n\nimport * as RadixSelect from \"@radix-ui/react-select\";\n\nimport {\n CaretDownIcon,\n PersonSimpleWalkIcon,\n CarIcon,\n BicycleIcon,\n} from \"@phosphor-icons/react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\nimport type { TravelMode } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nconst options = [\"walking\", \"driving\", \"cycling\"] as TravelMode[];\nconst icons = {\n walking: <PersonSimpleWalkIcon size={16} />,\n driving: <CarIcon size={16} />,\n cycling: <BicycleIcon size={16} />,\n};\n\nexport interface SelectProps {\n name: string;\n selected?: TravelMode;\n isOpen?: boolean;\n onChange: (value: TravelMode) => void;\n disabled?: boolean;\n placeholder?: string;\n}\n\nexport const Select = ({\n name,\n selected = options[0],\n onChange,\n disabled,\n}: SelectProps) => {\n const { t } = useTranslation(\"localContent\");\n\n return (\n <RadixSelect.Root\n value={selected}\n onValueChange={(value: string) => onChange(value as TravelMode)}\n >\n <RadixSelect.Trigger\n id={name}\n data-testid={`select-${name}`}\n className={styles.trigger}\n disabled={disabled}\n >\n <RadixSelect.Value placeholder={t(`commute.travelTypes.${selected}`)}>\n {icons[selected]}\n </RadixSelect.Value>\n <RadixSelect.Icon asChild>\n <CaretDownIcon className={styles.icon} size={20} />\n </RadixSelect.Icon>\n </RadixSelect.Trigger>\n\n <RadixSelect.Content\n className={styles.content}\n align=\"start\"\n sticky=\"always\"\n >\n <RadixSelect.Viewport className={styles.contentViewport}>\n <>\n {options.map((value) => (\n <RadixSelect.Item\n className={styles.item}\n key={value}\n value={value}\n >\n <RadixSelect.Icon>{icons[value]}</RadixSelect.Icon>\n\n <RadixSelect.ItemText>\n {t(`commute.travelTypes.${value}`)}\n </RadixSelect.ItemText>\n </RadixSelect.Item>\n ))}\n </>\n </RadixSelect.Viewport>\n </RadixSelect.Content>\n </RadixSelect.Root>\n );\n};\n","export const container = `flex flex-col gap-4`;\nexport const form = `flex gap-2`;\n","import React from \"react\";\n\nexport const textWithHighlighting = (text: string, highlight: string) => {\n // Escape special characters in the highlight, otherwise chracters like '\\'\n // will throw an error.\n const escaped = highlight.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, \"\\\\$&\");\n const parts = text.split(new RegExp(`(${escaped})`, \"gi\"));\n\n return parts.map((part, i) =>\n part.toLowerCase() === highlight.toLowerCase() ? (\n <strong key={i}>{part}</strong>\n ) : (\n <span key={i}>{part}</span>\n ),\n );\n};\n","import type { Suggestion, SuggestionsResponse } from \"../types\";\nimport type { MapboxSuggestion, MapboxSuggestionsResponse } from \"./types\";\n\nconst formatSuggestion = (suggestion: MapboxSuggestion): Suggestion => {\n const { properties } = suggestion;\n const { context } = suggestion.properties;\n\n return {\n label: properties.name,\n language: properties.language,\n countryCode: context.country?.country_code_alpha_3 ?? \"\",\n locationId: properties.mapbox_id,\n address: {\n description: `${properties.name}, ${properties.place_formatted}`,\n country: context.country?.name ?? \"\",\n state: context.region?.region_code ?? \"\",\n city: context.place?.name ?? \"\",\n postalCode: context.postcode?.name ?? \"\",\n county: context.district?.name ?? \"\",\n street: context.address?.street_name ?? \"\",\n houseNumber: context.address?.address_number ?? \"\",\n coordinates: {\n latitude: properties.coordinates.latitude,\n longitude: properties.coordinates.longitude,\n },\n },\n };\n};\n\nexport const transformSuggestionsResponse = (\n response: MapboxSuggestionsResponse,\n): SuggestionsResponse => ({\n suggestions: response.features.map((suggestion: MapboxSuggestion) =>\n formatSuggestion(suggestion),\n ),\n});\n","import { useQuery } from \"@tanstack/react-query\";\nimport type { Location, Country, SuggestionsResponse } from \"./types\";\nimport { transformSuggestionsResponse } from \"./transformSuggestionsResponse\";\n\nimport useDebounce from \"~/hooks/useDebounce\";\n\nconst MAPBOX_ENDPOINT = \"https://api.mapbox.com/search/searchbox/v1/forward?\";\n\nexport function useAddressSearch({\n location,\n country,\n locale = \"en\",\n query,\n}: {\n location: Location;\n country: Country;\n locale?: string;\n query: string;\n}) {\n const debouncedQuery = useDebounce(query, 1250);\n const regionCode = country === \"CAN\" ? \"CA\" : \"US\";\n\n const options = {\n q: debouncedQuery,\n language: locale,\n proximity: `${location.lng},${location.lat}`,\n origin: `${location.lng},${location.lat}`,\n country: regionCode,\n types: \"poi,address,street,neighborhood,locality,city,place\",\n limit: \"5\",\n access_token: import.meta.env.VITE_MAPBOX_API_KEY as string,\n };\n\n /**\n * Fetches address suggestions from Mapbox Search API.\n *\n * @returns SuggestionsResponse\n */\n const fetchSuggestions = async (): Promise<SuggestionsResponse> => {\n const response = await fetch(\n MAPBOX_ENDPOINT + new URLSearchParams(options),\n );\n\n return transformSuggestionsResponse(await response.json());\n };\n\n return useQuery({\n queryKey: [useAddressSearch.name, debouncedQuery],\n queryFn: fetchSuggestions,\n enabled: !!debouncedQuery.length && debouncedQuery.length >= 4,\n });\n}\n","import React, { useState, useEffect, useMemo } from \"react\";\n\nimport { MagnifyingGlassIcon } from \"@phosphor-icons/react\";\nimport { Form as FormComponent } from \"@local-logic/design-system\";\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../context\";\nimport { Route } from \"./Route\";\nimport { NoRoute } from \"./NoRoute\";\nimport { Select } from \"./Select\";\nimport * as styles from \"./styles\";\nimport { browserUtils } from \"~/utils\";\nimport { textWithHighlighting } from \"~/utils/formatters/textWithHighlighting\";\n\nimport type { TravelMode } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useTracking } from \"~/tracking\";\nimport { useAddressSearch } from \"~/sdks/LocalContent/hooks/useAddressSearch\";\nimport type { Suggestion } from \"~/sdks/LocalContent/hooks/useAddressSearch/types\";\n\nexport function Form() {\n const { t } = useTranslation(\"localContent\");\n const tracking = useTracking();\n const breakpoints = useResponsiveBreakpoints();\n const {\n commuteData,\n commuteOptions,\n isCommuteDataLoading,\n country,\n location,\n handleCalculateCommute,\n } = useRootElement();\n\n // State for search input field\n const [isFieldFocused, setIsFieldFocused] = useState(false);\n const [searchQuery, setSearchQuery] = useState(\"\");\n const [selectedValue, setSelectedValue] = useState<string | undefined>();\n\n const { data, isLoading } = useAddressSearch({\n query: searchQuery,\n country,\n location,\n });\n\n useEffect(() => {\n if (typeof commuteData?.label === \"string\" && commuteData.label !== \"\") {\n setSelectedValue(commuteData.label);\n }\n }, [commuteData?.label]);\n\n const suggestionResults = useMemo(\n () =>\n !searchQuery\n ? (\n browserUtils.commuteHistory.getSuggestionHistory() as Suggestion[]\n ).slice(0, 3)\n : data?.suggestions || [],\n [searchQuery, data?.suggestions],\n );\n\n const options = useMemo(() => {\n if (!isFieldFocused || !suggestionResults.length) {\n return [];\n }\n\n return suggestionResults\n .filter(\n (suggestion) => typeof suggestion?.address?.description === \"string\",\n )\n .map((suggestion) => ({\n value: suggestion.address?.description || \"\",\n label: textWithHighlighting(\n suggestion.address?.description || \"\",\n searchQuery,\n ),\n key: suggestion.locationId || `address-${suggestion.locationId}`,\n })) as unknown as FormComponent.Option<string>[];\n }, [isFieldFocused, searchQuery, suggestionResults]);\n\n const handleOnSearchChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(e.target.value);\n };\n\n const handleOnSearchClear = () => {\n handleCalculateCommute({\n ...commuteOptions,\n label: undefined,\n destination: undefined,\n });\n setSelectedValue(undefined);\n };\n\n const handleOnSelect = async (value: string) => {\n setSelectedValue(value);\n\n const suggestion = suggestionResults.find(\n (suggestionResult) => suggestionResult.address?.description === value,\n );\n\n if (typeof suggestion === \"undefined\") {\n return;\n }\n\n if (typeof suggestion?.address?.coordinates !== \"undefined\") {\n browserUtils.commuteHistory.push(suggestion);\n handleCalculateCommute({\n ...commuteOptions,\n label: value,\n destination: {\n lat: suggestion.address.coordinates.latitude,\n lng: suggestion.address.coordinates.longitude,\n },\n });\n\n const eventAttributes = {\n label: value,\n mode: commuteOptions.commuteType,\n destinationLat: suggestion.address.coordinates.latitude,\n destinationLng: suggestion.address.coordinates.longitude,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.COMMUTE_CALCULATOR_CALCULATE_ROUTE,\n eventAttributes: Object.entries(eventAttributes).map(\n ([key, objectValue]) => ({\n label: key,\n data: objectValue,\n }),\n ),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.COMMUTE_CALCULATOR_CALCULATE_ROUTE,\n eventAttributes,\n });\n }\n };\n\n const handleOnFieldFocus = () => {\n setIsFieldFocused(true);\n };\n\n const handleOnFieldBlur = () => {\n setIsFieldFocused(false);\n };\n\n const handleOnCommuteTypeChange = (value: TravelMode) => {\n handleCalculateCommute({\n ...commuteOptions,\n commuteType: value,\n });\n };\n\n return (\n <div className={styles.container}>\n <FormComponent.Root\n initialValues={{ searchQuery: \"\" }}\n className={styles.form}\n >\n <FormComponent.SearchAndSelect<string>\n name=\"searchQuery\"\n label={\n !selectedValue &&\n !isFieldFocused &&\n typeof commuteData?.label === \"string\"\n ? commuteData.label\n : t(\"commute.placeholder\")\n }\n direction={breakpoints.sm ? \"topToBottom\" : \"bottomToTop\"}\n maxLength={150}\n clearOnSelect={false}\n selectedLabel={selectedValue}\n prefixIcon={MagnifyingGlassIcon}\n isLoading={isLoading || isCommuteDataLoading}\n options={options}\n onChange={handleOnSearchChange}\n onClear={handleOnSearchClear}\n onSelect={handleOnSelect}\n onFocus={handleOnFieldFocus}\n onBlur={handleOnFieldBlur}\n />\n\n <Select\n name=\"commuteType\"\n selected={commuteOptions.commuteType}\n onChange={handleOnCommuteTypeChange}\n />\n </FormComponent.Root>\n\n <Route isLoading={isCommuteDataLoading} />\n {typeof commuteOptions.destination !== \"undefined\" &&\n commuteData === null &&\n !isCommuteDataLoading && <NoRoute />}\n </div>\n );\n}\n","export const container = `w-full flex justify-between items-center mb-2`;\nexport const title = `text-xs font-normal text-base-black`;\nexport const icon = `w-4 h-4 ml-3 cursor-pointer`;\n","import React from \"react\";\n\nimport { XIcon } from \"@phosphor-icons/react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\n\nexport function Header({\n hideCloseButton = false,\n}: {\n hideCloseButton?: boolean;\n}) {\n const { t } = useTranslation(\"localContent\");\n const { onToggleIsOpen } = useRootElement();\n\n return (\n <div className={styles.container}>\n <h2 data-testid=\"commute-calculator-title\" className={styles.title}>\n {t(\"commute.cta\")}\n </h2>\n\n {!hideCloseButton && (\n <button\n onClick={onToggleIsOpen}\n data-testid=\"commute-calculator-close-button\"\n >\n <XIcon weight=\"bold\" className={styles.icon} />\n </button>\n )}\n </div>\n );\n}\n","import React from \"react\";\n\nimport type { RootProps } from \"./types\";\n\nimport { RootElementContextProvider } from \"./context\";\n\nexport const Root = ({ isDisabled = false, children }: RootProps) => (\n <RootElementContextProvider>\n {!isDisabled && children}\n </RootElementContextProvider>\n);\n\n// Export children\nexport { Trigger } from \"./Trigger\";\nexport { Card } from \"./Card\";\nexport { Slider } from \"./Slider\";\nexport { Form } from \"./Form\";\nexport { Header } from \"./Header\";\n","export const container = `relative bg-base-white w-full h-screen flex flex-col`;\n// Although we set \"bottom\" for mobile here, it will be overridden by inline style in Content.tsx\nexport const menuMobileBottomOffset = 64;\nexport const menuMobileBottomOffsetExpanded = 20;\nexport const menu = `\n absolute max-sm:bottom-16 max-sm:left-2 sm:top-3 sm:right-3 flex gap-x-2 items-center justify-end\n`;\n","import React, { useMemo, useLayoutEffect, useRef, useState } from \"react\";\n\nimport { Header } from \"../Header\";\nimport { Map } from \"../Map\";\nimport { Sidebar } from \"../Sidebar\";\nimport { ScoresPillList } from \"../ScoresPillList\";\nimport { ScoreDetailsSlider } from \"../ScoreDetailsSlider\";\nimport { CommuteCalculator } from \"../CommuteCalculator\";\n\nimport * as styles from \"./styles\";\nimport { SCORE_POI_CATEGORIES } from \"~/sdks/LocalContent/constants\";\nimport { Attribution } from \"~/components/Attribution\";\nimport type {\n CategoryKey,\n ScoreKey,\n CategoryOptions,\n} from \"~/sdks/LocalContent/types\";\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nconst SCORE_VALUE_THRESHOLD = 0.1;\n\nexport function Content() {\n const breakpoints = useResponsiveBreakpoints();\n const mobileScoreDetailsSliderRef = useRef<HTMLDivElement>(null);\n const [mobileCommuteButtonBottomOffset, setMobileCommuteButtonBottomOffset] =\n useState(styles.menuMobileBottomOffset);\n const {\n isCommuteCalculatorOpen,\n isScoresLoading,\n isMarkersLoading,\n isSidebarExpanded,\n hideAttribution,\n scoresMenu,\n scoresData,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n markersData,\n centerMarker,\n hideScoresList,\n locale,\n handleSelectScore,\n handleToggleIsSidebarExpanded,\n } = useLocalContent();\n\n const isMobile = useMemo(() => !breakpoints.sm, [breakpoints.sm]);\n\n const filteredScoresMenu = useMemo(\n () =>\n ({\n ...scoresMenu,\n categories: scoresMenu.categories\n .map(\n ([categoryKey, categoryValue]) =>\n [\n categoryKey,\n {\n ...categoryValue,\n scores: categoryValue.scores.filter(\n ([scoreKey, scoreValue]) => {\n // It pertains to the \"hideScores\" option in the SDK\n // https://docs.locallogic.co/docs/sdks/widgets/local-content#sdkoptions\n if (\n (hideScoresList.includes(scoreKey) ||\n scoreValue.hide) &&\n SCORE_POI_CATEGORIES[scoreKey].length === 0\n ) {\n return false;\n }\n\n return (\n typeof scoresData?.[scoreKey]?.value !== \"undefined\" &&\n scoresData[scoreKey].value > SCORE_VALUE_THRESHOLD\n );\n },\n ),\n },\n ] as [CategoryKey, CategoryOptions],\n )\n .filter(\n ([, categoryValue]) =>\n Array.isArray(categoryValue.scores) &&\n categoryValue.scores.length > 0,\n ),\n }) as TransformedScoresMenuData,\n [scoresMenu, scoresData],\n );\n\n const commuteCalculatorMenuStyles = useMemo(\n () =>\n isMobile ? { bottom: `${mobileCommuteButtonBottomOffset}px` } : undefined,\n [isMobile, mobileCommuteButtonBottomOffset],\n );\n\n useLayoutEffect(() => {\n const currentRef = mobileScoreDetailsSliderRef?.current;\n\n const handleRefTransition = () => {\n if (typeof currentRef?.offsetHeight !== \"undefined\") {\n setMobileCommuteButtonBottomOffset(\n (currentRef?.offsetHeight || 0) +\n styles.menuMobileBottomOffsetExpanded,\n );\n } else {\n setMobileCommuteButtonBottomOffset(styles.menuMobileBottomOffset);\n }\n };\n\n if (currentRef && !isCommuteCalculatorOpen) {\n currentRef.addEventListener(\"transitionrun\", handleRefTransition);\n currentRef.addEventListener(\"transitionend\", handleRefTransition);\n } else if (\n mobileCommuteButtonBottomOffset !== styles.menuMobileBottomOffset &&\n !isCommuteCalculatorOpen\n ) {\n setMobileCommuteButtonBottomOffset(styles.menuMobileBottomOffset);\n }\n\n return () => {\n currentRef?.removeEventListener(\"transitionrun\", handleRefTransition);\n currentRef?.removeEventListener(\"transitionend\", handleRefTransition);\n };\n }, [isCommuteCalculatorOpen, mobileCommuteButtonBottomOffset, activeScore]);\n\n return (\n <div className={styles.container}>\n {isMobile && filteredScoresMenu.categories.length > 0 && (\n <Header scores={filteredScoresMenu} />\n )}\n\n <Map>\n {isMobile && activeCategory && (\n <>\n <ScoresPillList\n scores={filteredScoresMenu.categories\n .find(([key]) => key === activeCategory)?.[1]\n .scores.flatMap(([scoreKey]) => scoreKey)}\n backgroundColor={activeCategoryData?.colors?.background}\n fillColor={activeCategoryData?.colors?.fill}\n />\n\n <ScoreDetailsSlider ref={mobileScoreDetailsSliderRef} />\n </>\n )}\n\n {!isMobile && filteredScoresMenu.categories.length > 0 && (\n <Sidebar.Root\n isExpanded={isSidebarExpanded}\n isScoresLoading={isScoresLoading}\n isMarkersLoading={isMarkersLoading}\n activeScore={activeScore}\n activeScoreData={activeScoreData}\n markersData={markersData}\n onSelectScore={handleSelectScore}\n onToggleIsExpanded={handleToggleIsSidebarExpanded}\n >\n <Sidebar.Header title={scoresMenu?.title} />\n <Sidebar.Content>\n {filteredScoresMenu.categories.map(([categoryKey, category]) => (\n <Sidebar.Category\n key={`category-${categoryKey}`}\n categoryKey={categoryKey as CategoryKey}\n >\n {category.scores.map(([scoreKey, _score]) => (\n <Sidebar.Score\n key={`sidebar-score-${categoryKey}-${scoreKey}`}\n scoreKey={scoreKey as ScoreKey}\n backgroundColor={category.colors?.background}\n fillColor={category.colors?.fill}\n />\n ))}\n </Sidebar.Category>\n ))}\n </Sidebar.Content>\n\n <Sidebar.Slider>\n <Sidebar.ScoreDetails />\n </Sidebar.Slider>\n </Sidebar.Root>\n )}\n\n <CommuteCalculator.Root\n isDisabled={typeof centerMarker === \"undefined\"}\n >\n <div className={styles.menu} style={commuteCalculatorMenuStyles}>\n {!isCommuteCalculatorOpen && <CommuteCalculator.Trigger />}\n\n {!isMobile && (\n <CommuteCalculator.Card>\n <CommuteCalculator.Header />\n <CommuteCalculator.Form />\n </CommuteCalculator.Card>\n )}\n </div>\n\n {isMobile && (\n <CommuteCalculator.Slider>\n <CommuteCalculator.Header hideCloseButton />\n <CommuteCalculator.Form />\n </CommuteCalculator.Slider>\n )}\n </CommuteCalculator.Root>\n </Map>\n <Attribution\n sdkName=\"local-content\"\n locale={locale}\n isHidden={hideAttribution}\n />\n </div>\n );\n}\n","import { number, object, ObjectSchema, string, mixed, boolean } from \"yup\";\nimport { MapProvider } from \"./types\";\nimport type { Options } from \"./types\";\n\ntype MarkerIcon = \"house\" | \"pin\";\ntype DistanceUnit = \"metric\" | \"imperial\";\n\nconst scoreObject = object({\n hide: boolean().optional(),\n hideScore: boolean().optional(),\n order: number().optional(),\n}).optional();\n\nconst colorsObject = object({\n background: string().required(),\n fill: string().required(),\n}).optional();\n\nconst scoresMenu = object({\n defaultOpen: boolean().optional(),\n title: mixed<string | boolean>().optional(),\n categories: object({\n transport: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n pedestrian_friendly: scoreObject,\n transit_friendly: scoreObject,\n cycling_friendly: scoreObject,\n car_friendly: scoreObject,\n }).optional(),\n }).optional(),\n education: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n daycares: scoreObject,\n primary_schools: scoreObject,\n high_schools: scoreObject,\n }).optional(),\n }).optional(),\n amenities: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n shopping: scoreObject,\n groceries: scoreObject,\n restaurants: scoreObject,\n cafes: scoreObject,\n }).optional(),\n }).optional(),\n character: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n nightlife: scoreObject,\n vibrant: scoreObject,\n historic: scoreObject,\n quiet: scoreObject,\n }).optional(),\n }).optional(),\n nature: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n parks: scoreObject,\n greenery: scoreObject,\n }).optional(),\n }).optional(),\n health: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n wellness: scoreObject,\n }).optional(),\n }).optional(),\n }).optional(),\n})\n .optional()\n .default({\n defaultOpen: true,\n });\n\nexport const schema: ObjectSchema<Options> = object({\n lat: number()\n .min(-90, \"Must be a valid latitude.\")\n .max(90, \"Must be a valid latitude.\")\n .required(),\n lng: number()\n .min(-180, \"Must be a valid longitude.\")\n .max(180, \"Must be a valid longitude.\")\n .required(),\n zoom: number().optional(),\n pitch: number().optional(),\n bearing: number().optional(),\n distanceUnit: mixed<DistanceUnit>().oneOf([\"metric\", \"imperial\"]).optional(),\n marker: object({\n lat: number()\n .min(-90, \"Must be a valid latitude.\")\n .max(90, \"Must be a valid latitude.\")\n .required(),\n lng: number()\n .min(-180, \"Must be a valid longitude.\")\n .max(180, \"Must be a valid longitude.\")\n .required(),\n icon: mixed<MarkerIcon>().oneOf([\"house\", \"pin\"]).optional(),\n addressLabel: string().optional(),\n }).default(undefined),\n cooperativeGestures: boolean().optional(),\n mapProvider: mixed<MapProvider>().optional(),\n hideScores: boolean().optional(),\n showSchoolRatings: boolean().optional(),\n scoresMenu,\n hideAttribution: boolean().optional(),\n}).noUnknown(true);\n\nexport const validateOptions = (options: Options) =>\n schema.validate(options, { abortEarly: false });\n","import React from \"react\";\n\nimport { Content } from \"./components/Content\";\nimport { LocalContentProvider } from \"./context\";\nimport { schema } from \"./schema\";\nimport { LocalContentProps } from \"./types\";\nimport { SurveyTriggerProvider } from \"./hooks/useSurveyTrigger/SurveyTriggerProvider\";\n\nimport { TrackingProvider, initializeAnalytics } from \"~/tracking\";\n\n// TODO Move this import to sdks/sdks-app/src/App.tsx once all SDKs are migrated\nimport \"~/assets/styles/globals.css\";\n\nimport { ValidateOptions } from \"~/components/ValidateOptions\";\nimport { LocalLogicProvider } from \"~/context/LocalLogicProvider\";\nimport { useStateManagerContext } from \"~/context/stateManager\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { ProductNames } from \"~/types\";\nimport { ANALYTICS_SETTINGS } from \"~/constants/analytics\";\n\ninitializeAnalytics(ANALYTICS_SETTINGS.localContent.key);\n\nconst LocalContent = () => {\n const { sdkState } = useStateManagerContext<LocalContentProps>();\n const breakpoints = useResponsiveBreakpoints();\n const locale = sdkState.globalOptions?.locale || \"en\";\n\n if (\n Object.hasOwnProperty.call(\n sdkState?.options?.scoresMenu?.categories || {},\n \"wellness\",\n )\n ) {\n try {\n // Remove wellness category if it exists in the options\n\n sdkState.options!.scoresMenu!.categories!.health = {\n ...sdkState.options!.scoresMenu!.categories!.health,\n // @ts-expect-error -- We renamed the category, so TS gets confused here\n ...sdkState.options?.scoresMenu?.categories?.wellness,\n };\n // @ts-expect-error -- We renamed the category, so TS gets confused here\n delete sdkState.options!.scoresMenu!.categories!.wellness;\n\n console.warn(\n \"[Local Content SDK] The 'wellness' scores category has been renamed to 'health'. Please update your SDK options accordingly.\",\n );\n } catch (_error) {\n // Do nothing\n }\n }\n\n return (\n <ValidateOptions\n sdk=\"Local Content\"\n schema={schema}\n options={sdkState.options!}\n >\n <LocalLogicProvider\n environment={sdkState.globalOptions?.environment?.api}\n apiKey={sdkState.apiKey}\n appearance={sdkState.globalOptions?.appearance}\n locale={sdkState.globalOptions?.locale}\n product={ProductNames.LOCAL_CONTENT}\n >\n <TrackingProvider\n trackingPipelineSettings={{\n apiKey: sdkState.apiKey || \"\",\n }}\n analyticsSettings={ANALYTICS_SETTINGS.localContent}\n meta={{\n clientId: sdkState.clientId,\n productName: ProductNames.LOCAL_CONTENT,\n productVersion: FULL_APP_VERSION,\n }}\n attributes={{\n location: {\n lat: sdkState.options?.lat,\n lng: sdkState.options?.lng,\n },\n host: sdkState.location,\n host_url: document.referrer,\n locale,\n // The mobile experience is enabled from below the sm breakpoint\n isMobile: !breakpoints.sm,\n mapProvider: sdkState.options?.mapProvider?.name,\n }}\n flags={{\n isDebugMode:\n import.meta.env.VITE_TRACKING_PIPELINE_DEBUG === \"true\",\n }}\n >\n <SurveyTriggerProvider>\n <LocalContentProvider>\n <Content />\n </LocalContentProvider>\n </SurveyTriggerProvider>\n </TrackingProvider>\n </LocalLogicProvider>\n </ValidateOptions>\n );\n};\n\nexport default LocalContent;\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,28],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LocalContent-D_By1RQx.js","names":["e","a","e","a","e","o","a","f","o","a","m","n","a","s","t","t","n","r","e","i","c"],"sources":["../../../../node_modules/@phosphor-icons/react/dist/defs/CaretDoubleLeft.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/CaretUp.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/Confetti.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/Equals.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/PencilRuler.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/ShoppingCart.es.js","../../../../node_modules/@phosphor-icons/react/dist/defs/TrafficSign.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/CaretDoubleLeft.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/CaretUp.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/Confetti.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/Equals.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/PencilRuler.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/ShoppingCart.es.js","../../../../node_modules/@phosphor-icons/react/dist/csr/TrafficSign.es.js","../../src/sdks/LocalContent/components/Header/styles.ts","../../src/sdks/LocalContent/utils/transformScoresMenuData/index.ts","../../src/sdks/LocalContent/utils/getPOICategoriesWithAvailableData/index.ts","../../src/sdks/LocalContent/constants.ts","../../src/sdks/LocalContent/utils/orderPOICategories/index.ts","../../src/sdks/LocalContent/types.ts","../../src/sdks/LocalContent/hooks/useScoreSelection/utils/transformScoresAPIResponse/index.ts","../../src/sdks/LocalContent/hooks/useScoreSelection/index.ts","../../src/sdks/LocalContent/hooks/useCommute/index.ts","../../src/sdks/LocalContent/hooks/useSurveyTrigger/session/index.ts","../../src/sdks/LocalContent/hooks/useSurveyTrigger/SurveyTriggerProvider/index.tsx","../../src/sdks/LocalContent/hooks/useSurveyTrigger/index.ts","../../src/sdks/LocalContent/context.tsx","../../src/sdks/LocalContent/components/Header/index.tsx","../../../../node_modules/@typeform/embed-react/build/index.js","../../src/sdks/LocalContent/components/Survey/styles.ts","../../src/sdks/LocalContent/components/Survey/index.tsx","../../src/sdks/LocalContent/components/Map/Layers/index.tsx","../../src/sdks/LocalContent/components/Map/Markers/index.tsx","../../src/sdks/LocalContent/components/Map/CenterPin/styles.ts","../../src/sdks/LocalContent/components/Map/CenterPin/index.tsx","../../src/sdks/LocalContent/components/Map/Popup/Commute/styles.ts","../../src/sdks/LocalContent/components/Map/Popup/Commute/index.tsx","../../src/sdks/LocalContent/components/Map/Popup/index.tsx","../../src/sdks/LocalContent/components/Map/styles.ts","../../src/sdks/LocalContent/components/Map/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/context.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Content/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Content/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Header/Title/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Header/Title/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Header/CloseButton/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Header/CloseButton/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Header/styles.ts","../../src/sdks/LocalContent/components/Sidebar/Root/Header/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Category/styles.ts","../../src/sdks/LocalContent/components/CategoryTitle/styles.ts","../../src/sdks/LocalContent/components/CategoryTitle/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Category/index.tsx","../../src/sdks/LocalContent/components/ItemButton/styles.ts","../../src/sdks/LocalContent/components/ItemButton/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Score/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/ScoreDetails/styles.ts","../../src/sdks/LocalContent/components/ScoreComparison/ValueIndicator/styles.ts","../../src/sdks/LocalContent/components/ScoreComparison/ValueIndicator/index.tsx","../../src/sdks/LocalContent/components/ScoreComparison/styles.ts","../../src/sdks/LocalContent/components/ScoreComparison/index.tsx","../../src/sdks/LocalContent/components/ScoreText/styles.ts","../../src/sdks/LocalContent/components/ScoreText/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/Loading/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/Loading/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/Subcategories/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/Subcategories/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/List/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/List/index.tsx","../../src/sdks/LocalContent/components/ScorePoiList/styles.ts","../../src/sdks/LocalContent/components/ScorePoiList/index.tsx","../../src/sdks/LocalContent/components/Score/styles.ts","../../src/sdks/LocalContent/components/ScoreValue/styles.ts","../../src/sdks/LocalContent/components/ScoreValue/index.tsx","../../src/sdks/LocalContent/components/Score/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/ScoreDetails/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Slider/styles.ts","../../src/sdks/LocalContent/components/Slider/styles.ts","../../src/sdks/LocalContent/components/Slider/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/Slider/index.tsx","../../src/sdks/LocalContent/components/Sidebar/Root/index.tsx","../../src/sdks/LocalContent/components/ScoresPillList/styles.ts","../../src/sdks/LocalContent/components/ScoresPillList/index.tsx","../../src/sdks/LocalContent/components/BottomSlider/Header/styles.ts","../../src/sdks/LocalContent/components/BottomSlider/Header/index.tsx","../../src/sdks/LocalContent/components/BottomSlider/styles.ts","../../src/sdks/LocalContent/components/BottomSlider/index.tsx","../../src/sdks/LocalContent/components/ScoreDetailsSlider/styles.ts","../../src/sdks/LocalContent/components/ScoreDetailsSlider/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/context.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Trigger/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Trigger/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Card/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Card/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Slider/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Route/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Route/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/NoRoute/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/NoRoute/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Select/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/Select/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/styles.ts","../../src/utils/formatters/textWithHighlighting.tsx","../../src/sdks/LocalContent/hooks/useAddressSearch/transformSuggestionsResponse/index.ts","../../src/sdks/LocalContent/hooks/useAddressSearch/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Form/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Header/styles.ts","../../src/sdks/LocalContent/components/CommuteCalculator/Root/Header/index.tsx","../../src/sdks/LocalContent/components/CommuteCalculator/Root/index.tsx","../../src/sdks/LocalContent/components/Content/styles.ts","../../src/sdks/LocalContent/components/Content/index.tsx","../../src/sdks/LocalContent/schema.ts","../../src/sdks/LocalContent/index.tsx"],"sourcesContent":["import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208.49,199.51a12,12,0,0,1-17,17l-80-80a12,12,0,0,1,0-17l80-80a12,12,0,0,1,17,17L137,128ZM57,128l71.52-71.51a12,12,0,0,0-17-17l-80,80a12,12,0,0,0,0,17l80,80a12,12,0,0,0,17-17Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,48V208l-80-80Z\", opacity: \"0.2\" }), /* @__PURE__ */ a.createElement(\"path\", { d: \"M203.06,40.61a8,8,0,0,0-8.72,1.73l-80,80a8,8,0,0,0,0,11.32l80,80A8,8,0,0,0,208,208V48A8,8,0,0,0,203.06,40.61ZM192,188.69,131.31,128,192,67.31Zm-66.34,13.65a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L51.31,128Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,48V208a8,8,0,0,1-13.66,5.66L128,147.31V208a8,8,0,0,1-13.66,5.66l-80-80a8,8,0,0,1,0-11.32l80-80A8,8,0,0,1,128,48v60.69l66.34-66.35A8,8,0,0,1,208,48Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M204.24,203.76a6,6,0,1,1-8.48,8.48l-80-80a6,6,0,0,1,0-8.48l80-80a6,6,0,0,1,8.48,8.48L128.49,128ZM48.49,128l75.75-75.76a6,6,0,0,0-8.48-8.48l-80,80a6,6,0,0,0,0,8.48l80,80a6,6,0,1,0,8.48-8.48Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M205.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L131.31,128ZM51.31,128l74.35-74.34a8,8,0,0,0-11.32-11.32l-80,80a8,8,0,0,0,0,11.32l80,80a8,8,0,0,0,11.32-11.32Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M202.83,205.17a4,4,0,0,1-5.66,5.66l-80-80a4,4,0,0,1,0-5.66l80-80a4,4,0,1,1,5.66,5.66L125.66,128ZM45.66,128l77.17-77.17a4,4,0,0,0-5.66-5.66l-80,80a4,4,0,0,0,0,5.66l80,80a4,4,0,1,0,5.66-5.66Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as e from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M216.49,168.49a12,12,0,0,1-17,0L128,97,56.49,168.49a12,12,0,0,1-17-17l80-80a12,12,0,0,1,17,0l80,80A12,12,0,0,1,216.49,168.49Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M208,160H48l80-80Z\", opacity: \"0.2\" }), /* @__PURE__ */ e.createElement(\"path\", { d: \"M213.66,154.34l-80-80a8,8,0,0,0-11.32,0l-80,80A8,8,0,0,0,48,168H208a8,8,0,0,0,5.66-13.66ZM67.31,152,128,91.31,188.69,152Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M215.39,163.06A8,8,0,0,1,208,168H48a8,8,0,0,1-5.66-13.66l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,215.39,163.06Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M212.24,164.24a6,6,0,0,1-8.48,0L128,88.49,52.24,164.24a6,6,0,0,1-8.48-8.48l80-80a6,6,0,0,1,8.48,0l80,80A6,6,0,0,1,212.24,164.24Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M213.66,165.66a8,8,0,0,1-11.32,0L128,91.31,53.66,165.66a8,8,0,0,1-11.32-11.32l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,213.66,165.66Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M210.83,162.83a4,4,0,0,1-5.66,0L128,85.66,50.83,162.83a4,4,0,0,1-5.66-5.66l80-80a4,4,0,0,1,5.66,0l80,80A4,4,0,0,1,210.83,162.83Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M114.32,49.8A19.79,19.79,0,0,0,81.72,57L29.22,201.41A19.82,19.82,0,0,0,47.75,228a20,20,0,0,0,6.84-1.22L199,174.28a19.79,19.79,0,0,0,7.24-32.6ZM104.19,183.21l-31.4-31.4L82.94,123.9l49.16,49.16Zm-52.42,26.4Zm12-32.91L79.3,192.26l-24.45,8.89ZM157,164,92,99l10-27.58L184.57,154ZM128,40V16a12,12,0,0,1,24,0V40a12,12,0,0,1-24,0Zm116.48,83.51a12,12,0,0,1-17,17l-16-16a12,12,0,0,1,17-17Zm-.69-40.13-24,8a12,12,0,0,1-7.59-22.77l24-8a12,12,0,1,1,7.59,22.77ZM156.6,65.93C159.83,47.47,173.39,36,192,36c6.45,0,8.69-2.49,10-4.92a18,18,0,0,0,2-7.22V24a12,12,0,0,1,24,0c0,14.47-9.59,36-36,36-4.94,0-10.21,1.19-11.76,10.06A12,12,0,0,1,168.43,80a12.35,12.35,0,0,1-2.08-.18A12,12,0,0,1,156.6,65.93Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M58.89,154.89l42.22,42.22-50.63,18.4a7.79,7.79,0,0,1-10-10Zm138.82-4.72L105.83,58.29A7.79,7.79,0,0,0,93,61.14l-14.9,41,75.82,75.82,41-14.9A7.79,7.79,0,0,0,197.71,150.17Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M111.49,52.63a15.8,15.8,0,0,0-26,5.77L33,202.78A15.83,15.83,0,0,0,47.76,224a16,16,0,0,0,5.46-1l144.37-52.5a15.8,15.8,0,0,0,5.78-26Zm-8.33,135.21-35-35,13.16-36.21,58.05,58.05Zm-55,20,14-38.41,24.45,24.45ZM156,168.64,87.36,100l13-35.87,91.43,91.43ZM160,72a37.8,37.8,0,0,1,3.84-15.58C169.14,45.83,179.14,40,192,40c6.7,0,11-2.29,13.65-7.21A22,22,0,0,0,208,23.94,8,8,0,0,1,224,24c0,12.86-8.52,32-32,32-6.7,0-11,2.29-13.65,7.21A22,22,0,0,0,176,72.06,8,8,0,0,1,160,72ZM136,40V16a8,8,0,0,1,16,0V40a8,8,0,0,1-16,0Zm101.66,82.34a8,8,0,1,1-11.32,11.31l-16-16a8,8,0,0,1,11.32-11.32Zm4.87-42.75-24,8a8,8,0,0,1-5.06-15.18l24-8a8,8,0,0,1,5.06,15.18Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M111.49,52.63a15.8,15.8,0,0,0-26,5.77L33,202.78A15.83,15.83,0,0,0,47.76,224a16,16,0,0,0,5.46-1l144.37-52.5a15.8,15.8,0,0,0,5.78-26ZM65.14,161.13l19.2-52.79,63.32,63.32-52.8,19.2ZM160,72a37.8,37.8,0,0,1,3.84-15.58C169.14,45.83,179.14,40,192,40c6.7,0,11-2.29,13.65-7.21A22,22,0,0,0,208,23.94,8,8,0,0,1,224,24c0,12.86-8.52,32-32,32-6.7,0-11,2.29-13.65,7.21A22,22,0,0,0,176,72.06,8,8,0,0,1,160,72ZM136,40V16a8,8,0,0,1,16,0V40a8,8,0,0,1-16,0Zm101.66,82.34a8,8,0,1,1-11.32,11.31l-16-16a8,8,0,0,1,11.32-11.32Zm4.87-42.75-24,8a8,8,0,0,1-5.06-15.18l24-8a8,8,0,0,1,5.06,15.18Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M110.08,54a13.8,13.8,0,0,0-22.73,5.05L34.85,203.47A13.82,13.82,0,0,0,47.76,222a14,14,0,0,0,4.77-.85l144.38-52.5a13.8,13.8,0,0,0,5-22.73ZM48.43,209.87a1.79,1.79,0,0,1-2.3-2.3L61.31,165.8,90.2,194.68Zm54.21-19.71-36.8-36.81L80.51,113,143,175.49ZM194,156.07a1.74,1.74,0,0,1-1.14,1.3L155.44,171,85,100.55,98.63,63.19a1.72,1.72,0,0,1,1.3-1.14,1.58,1.58,0,0,1,.41,0,1.72,1.72,0,0,1,1.25.53l91.88,91.88A1.73,1.73,0,0,1,194,156.07ZM162,72a35.52,35.52,0,0,1,3.63-14.68C170.57,47.44,179.93,42,192,42c7.47,0,12.53-2.74,15.48-8.38A24.18,24.18,0,0,0,210,24,6,6,0,0,1,216,18h0a6,6,0,0,1,6,6c0,10.38-6.27,30-30,30-7.47,0-12.53,2.74-15.48,8.38A24,24,0,0,0,174,72a6,6,0,0,1-6,6h0A6,6,0,0,1,162,72ZM138,40V16a6,6,0,0,1,12,0V40a6,6,0,0,1-12,0Zm98.24,83.76a6,6,0,1,1-8.48,8.48l-16-16a6,6,0,0,1,8.48-8.48Zm5.66-46.07-24,8a6,6,0,1,1-3.8-11.38l24-8a6,6,0,0,1,3.8,11.38Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M111.49,52.63a15.8,15.8,0,0,0-26,5.77L33,202.78A15.83,15.83,0,0,0,47.76,224a16,16,0,0,0,5.46-1l144.37-52.5a15.8,15.8,0,0,0,5.78-26Zm-8.33,135.21-35-35,13.16-36.21,58.05,58.05Zm-55,20,14-38.41,24.45,24.45ZM156,168.64,87.36,100l13-35.87,91.43,91.43ZM160,72a37.8,37.8,0,0,1,3.84-15.58C169.14,45.83,179.14,40,192,40c6.7,0,11-2.29,13.65-7.21A22,22,0,0,0,208,23.94,8,8,0,0,1,224,24c0,12.86-8.52,32-32,32-6.7,0-11,2.29-13.65,7.21A22,22,0,0,0,176,72.06,8,8,0,0,1,160,72ZM136,40V16a8,8,0,0,1,16,0V40a8,8,0,0,1-16,0Zm101.66,82.34a8,8,0,1,1-11.32,11.31l-16-16a8,8,0,0,1,11.32-11.32Zm4.87-42.75-24,8a8,8,0,0,1-5.06-15.18l24-8a8,8,0,0,1,5.06,15.18Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M108.66,55.46a11.79,11.79,0,0,0-19.43,4.31L36.73,204.15a11.81,11.81,0,0,0,11,15.85,11.88,11.88,0,0,0,4.08-.73l144.38-52.5a11.79,11.79,0,0,0,4.31-19.43Zm-6.53,137L63.52,153.87l16.19-44.51,66.92,66.93Zm-53,19.28a3.81,3.81,0,0,1-4.87-4.87l16.27-44.72,33.32,33.32Zm146.8-55.25a3.77,3.77,0,0,1-2.42,2.74l-38.56,14L82.72,101.07l14-38.56a3.77,3.77,0,0,1,2.74-2.42,4.32,4.32,0,0,1,.85-.09A3.65,3.65,0,0,1,103,61.12L194.88,153A3.78,3.78,0,0,1,195.91,156.51ZM220,24c0,9.68-5.85,28-28,28-8.31,0-14.18,3.29-17.42,9.79A26.12,26.12,0,0,0,172,72a4,4,0,0,1-8,0,34.06,34.06,0,0,1,3.42-13.79C170.66,51.73,177.56,44,192,44c19.29,0,20-18,20-20a4,4,0,0,1,4-4h0A4,4,0,0,1,220,24ZM140,40V16a4,4,0,0,1,8,0V40a4,4,0,0,1-8,0Zm94.83,85.17a4,4,0,0,1-5.66,5.66l-16-16a4,4,0,0,1,5.66-5.66Zm6.43-49.37-24,8A4,4,0,0,1,216,84a4,4,0,0,1-1.27-7.79l24-8a4,4,0,0,1,2.53,7.59Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as e from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M228,160a12,12,0,0,1-12,12H40a12,12,0,0,1,0-24H216A12,12,0,0,1,228,160ZM40,108H216a12,12,0,0,0,0-24H40a12,12,0,0,0,0,24Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\n \"path\",\n {\n d: \"M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ e.createElement(\"path\", { d: \"M224,160a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,160ZM40,104H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,160H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Zm0-48H72a8,8,0,0,1,0-16H184a8,8,0,0,1,0,16Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M222,160a6,6,0,0,1-6,6H40a6,6,0,0,1,0-12H216A6,6,0,0,1,222,160ZM40,102H216a6,6,0,0,0,0-12H40a6,6,0,0,0,0,12Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M224,160a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,160ZM40,104H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M220,160a4,4,0,0,1-4,4H40a4,4,0,0,1,0-8H216A4,4,0,0,1,220,160ZM40,100H216a4,4,0,0,0,0-8H40a4,4,0,0,0,0,8Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import * as a from \"react\";\nconst V = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,28H160a20,20,0,0,0-20,20V208a20,20,0,0,0,20,20h48a20,20,0,0,0,20-20V48A20,20,0,0,0,208,28Zm-4,176H164V180h16a12,12,0,0,0,0-24H164V140h16a12,12,0,0,0,0-24H164V100h16a12,12,0,0,0,0-24H164V52h40ZM80.49,23.51a12,12,0,0,0-17,0l-32,32A12,12,0,0,0,28,64V208a20,20,0,0,0,20,20H96a20,20,0,0,0,20-20V64a12,12,0,0,0-3.51-8.49ZM52,92H92v72H52ZM72,49,91,68H53ZM52,204V188H92v16Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M40,184h64v24a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8ZM208,40H160a8,8,0,0,0-8,8V208a8,8,0,0,0,8,8h48a8,8,0,0,0,8-8V48A8,8,0,0,0,208,40Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h48a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H160V176h24a8,8,0,0,0,0-16H160V136h24a8,8,0,0,0,0-16H160V96h24a8,8,0,0,0,0-16H160V48h48V208ZM77.66,26.34a8,8,0,0,0-11.32,0l-32,32A8,8,0,0,0,32,64V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V64a8,8,0,0,0-2.34-5.66ZM48,176V80H64v96ZM80,80H96v96H80ZM72,43.31,92.69,64H51.31ZM48,208V192H96v16Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,48V208a16,16,0,0,1-16,16H160a16,16,0,0,1-16-16V180a4,4,0,0,1,4-4h36a8,8,0,0,0,8-8.53,8.18,8.18,0,0,0-8.25-7.47H148a4,4,0,0,1-4-4V140a4,4,0,0,1,4-4h36a8,8,0,0,0,8-8.53,8.18,8.18,0,0,0-8.25-7.47H148a4,4,0,0,1-4-4V100a4,4,0,0,1,4-4h36a8,8,0,0,0,8-8.53A8.18,8.18,0,0,0,183.73,80H148a4,4,0,0,1-4-4V48a16,16,0,0,1,16-16h48A16,16,0,0,1,224,48ZM109.66,58.34A8,8,0,0,1,112,64V208a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V64a8,8,0,0,1,2.34-5.66l32-32a8,8,0,0,1,11.32,0ZM48,80V184H64V80Zm32,0V184H96V80ZM51.31,64H92.69L72,43.31Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,34H160a14,14,0,0,0-14,14V208a14,14,0,0,0,14,14h48a14,14,0,0,0,14-14V48A14,14,0,0,0,208,34Zm2,174a2,2,0,0,1-2,2H160a2,2,0,0,1-2-2V174h26a6,6,0,0,0,0-12H158V134h26a6,6,0,0,0,0-12H158V94h26a6,6,0,0,0,0-12H158V48a2,2,0,0,1,2-2h48a2,2,0,0,1,2,2ZM76.24,27.76a6,6,0,0,0-8.48,0l-32,32A6,6,0,0,0,34,64V208a14,14,0,0,0,14,14H96a14,14,0,0,0,14-14V64a6,6,0,0,0-1.76-4.24ZM46,178V78H66V178ZM78,78H98V178H78ZM72,40.49,97.51,66h-51ZM96,210H48a2,2,0,0,1-2-2V190H98v18A2,2,0,0,1,96,210Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h48a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H160V176h24a8,8,0,0,0,0-16H160V136h24a8,8,0,0,0,0-16H160V96h24a8,8,0,0,0,0-16H160V48h48V208ZM77.66,26.34a8,8,0,0,0-11.32,0l-32,32A8,8,0,0,0,32,64V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V64a8,8,0,0,0-2.34-5.66ZM48,176V80H64v96ZM80,80H96v96H80ZM72,43.31,92.69,64H51.31ZM48,208V192H96v16Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,36H160a12,12,0,0,0-12,12V208a12,12,0,0,0,12,12h48a12,12,0,0,0,12-12V48A12,12,0,0,0,208,36Zm4,172a4,4,0,0,1-4,4H160a4,4,0,0,1-4-4V172h28a4,4,0,0,0,0-8H156V132h28a4,4,0,0,0,0-8H156V92h28a4,4,0,0,0,0-8H156V48a4,4,0,0,1,4-4h48a4,4,0,0,1,4,4ZM74.83,29.17a4,4,0,0,0-5.66,0l-32,32A4,4,0,0,0,36,64V208a12,12,0,0,0,12,12H96a12,12,0,0,0,12-12V64a4,4,0,0,0-1.17-2.83ZM44,76H68V180H44Zm56,132a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V188h56Zm0-28H76V76h24Zm0-112H44V65.66l28-28,28,28Z\" }))\n ]\n]);\nexport {\n V as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M233.21,56.31A12,12,0,0,0,224,52H66L60.53,21.85A12,12,0,0,0,48.73,12H24a12,12,0,0,0,0,24H38.71L63.62,173a28,28,0,0,0,4.07,10.21A32,32,0,1,0,123,196h34a32,32,0,1,0,31-24H91.17a4,4,0,0,1-3.93-3.28L84.92,156H196.1a28,28,0,0,0,27.55-23l12.16-66.86A12,12,0,0,0,233.21,56.31ZM100,204a8,8,0,1,1-8-8A8,8,0,0,1,100,204Zm88,8a8,8,0,1,1,8-8A8,8,0,0,1,188,212Zm12-83.28A4,4,0,0,1,196.1,132H80.56L70.38,76H209.62Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M224,64l-12.16,66.86A16,16,0,0,1,196.1,144H70.55L56,64Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M230.14,58.87A8,8,0,0,0,224,56H62.68L56.6,22.57A8,8,0,0,0,48.73,16H24a8,8,0,0,0,0,16h18L67.56,172.29a24,24,0,0,0,5.33,11.27,28,28,0,1,0,44.4,8.44h45.42A27.75,27.75,0,0,0,160,204a28,28,0,1,0,28-28H91.17a8,8,0,0,1-7.87-6.57L80.13,152h116a24,24,0,0,0,23.61-19.71l12.16-66.86A8,8,0,0,0,230.14,58.87ZM104,204a12,12,0,1,1-12-12A12,12,0,0,1,104,204Zm96,0a12,12,0,1,1-12-12A12,12,0,0,1,200,204Zm4-74.57A8,8,0,0,1,196.1,136H77.22L65.59,72H214.41Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M230.14,58.87A8,8,0,0,0,224,56H62.68L56.6,22.57A8,8,0,0,0,48.73,16H24a8,8,0,0,0,0,16h18L67.56,172.29a24,24,0,0,0,5.33,11.27,28,28,0,1,0,44.4,8.44h45.42A27.75,27.75,0,0,0,160,204a28,28,0,1,0,28-28H91.17a8,8,0,0,1-7.87-6.57L80.13,152h116a24,24,0,0,0,23.61-19.71l12.16-66.86A8,8,0,0,0,230.14,58.87ZM104,204a12,12,0,1,1-12-12A12,12,0,0,1,104,204Zm96,0a12,12,0,1,1-12-12A12,12,0,0,1,200,204Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M228.61,60.16A6,6,0,0,0,224,58H61L54.63,22.93A6,6,0,0,0,48.73,18H24a6,6,0,0,0,0,12H43.72L69.53,171.94a21.93,21.93,0,0,0,6.24,11.77A26,26,0,1,0,113.89,190h52.22A26,26,0,1,0,188,178H91.17a10,10,0,0,1-9.84-8.21L77.73,150H196.1a22,22,0,0,0,21.65-18.06L229.9,65.07A6,6,0,0,0,228.61,60.16ZM106,204a14,14,0,1,1-14-14A14,14,0,0,1,106,204Zm96,0a14,14,0,1,1-14-14A14,14,0,0,1,202,204Zm3.94-74.21A10,10,0,0,1,196.1,138H75.55L63.19,70H216.81Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M230.14,58.87A8,8,0,0,0,224,56H62.68L56.6,22.57A8,8,0,0,0,48.73,16H24a8,8,0,0,0,0,16h18L67.56,172.29a24,24,0,0,0,5.33,11.27,28,28,0,1,0,44.4,8.44h45.42A27.75,27.75,0,0,0,160,204a28,28,0,1,0,28-28H91.17a8,8,0,0,1-7.87-6.57L80.13,152h116a24,24,0,0,0,23.61-19.71l12.16-66.86A8,8,0,0,0,230.14,58.87ZM104,204a12,12,0,1,1-12-12A12,12,0,0,1,104,204Zm96,0a12,12,0,1,1-12-12A12,12,0,0,1,200,204Zm4-74.57A8,8,0,0,1,196.1,136H77.22L65.59,72H214.41Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M227.07,61.44A4,4,0,0,0,224,60H59.34L52.66,23.28A4,4,0,0,0,48.73,20H24a4,4,0,0,0,0,8H45.39l6.69,36.8h0L71.49,171.58A20,20,0,0,0,79,183.85,24,24,0,1,0,109.87,188h60.26A24,24,0,1,0,188,180H91.17a12,12,0,0,1-11.8-9.85l-4-22.15H196.1a20,20,0,0,0,19.68-16.42l12.16-66.86A4,4,0,0,0,227.07,61.44ZM108,204a16,16,0,1,1-16-16A16,16,0,0,1,108,204Zm96,0a16,16,0,1,1-16-16A16,16,0,0,1,204,204Zm3.91-73.85A12,12,0,0,1,196.1,140H73.88L60.79,68H219.21Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M246,113.46,142.54,10a20.57,20.57,0,0,0-29.08,0L10,113.46a20.57,20.57,0,0,0,0,29.08L113.46,246h0a20.57,20.57,0,0,0,29.08,0L246,142.54a20.57,20.57,0,0,0,0-29.08ZM128,226.57,29.43,128,128,29.43,226.57,128Zm7.51-122.08a12,12,0,0,1,17-17l24,24a12,12,0,0,1,0,17l-24,24a12,12,0,0,1-17-17L139,132H112a12,12,0,0,0-12,12v4a12,12,0,0,1-24,0v-4a36,36,0,0,1,36-36h27Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M237.49,134.05,134.05,237.49a8.54,8.54,0,0,1-12.1,0L18.51,134.05a8.54,8.54,0,0,1,0-12.1L122,18.51a8.54,8.54,0,0,1,12.1,0L237.49,122A8.54,8.54,0,0,1,237.49,134.05Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.15,116.29,139.71,12.85a16.56,16.56,0,0,0-23.42,0L12.85,116.29a16.56,16.56,0,0,0,0,23.42L116.29,243.15h0a16.56,16.56,0,0,0,23.42,0L243.15,139.71a16.56,16.56,0,0,0,0-23.42Zm-11.31,12.1L128.39,231.84a.56.56,0,0,1-.78,0h0L24.16,128.39a.56.56,0,0,1,0-.78L127.61,24.16A.52.52,0,0,1,128,24a.58.58,0,0,1,.4.16L231.84,127.61a.56.56,0,0,1,0,.78Zm-58.18-14a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L148.69,128H112a16,16,0,0,0-16,16v8a8,8,0,0,1-16,0v-8a32,32,0,0,1,32-32h36.69l-10.35-10.34a8,8,0,0,1,11.32-11.32Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.15,116.29,139.71,12.85a16.56,16.56,0,0,0-23.42,0L12.85,116.29a16.56,16.56,0,0,0,0,23.42L116.29,243.15h0a16.56,16.56,0,0,0,23.42,0L243.15,139.71a16.56,16.56,0,0,0,0-23.42Zm-69.49,9.37-24,24a8,8,0,0,1-11.32-11.32L148.69,128H112a16,16,0,0,0-16,16v8a8,8,0,0,1-16,0v-8a32,32,0,0,1,32-32h36.69l-10.35-10.34a8,8,0,0,1,11.32-11.32l24,24A8,8,0,0,1,173.66,125.66Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M241.74,117.71,138.29,14.26a14.56,14.56,0,0,0-20.58,0L14.26,117.71a14.56,14.56,0,0,0,0,20.58L117.71,241.74h0a14.56,14.56,0,0,0,20.58,0L241.74,138.29a14.56,14.56,0,0,0,0-20.58Zm-8.49,12.1L129.81,233.25a2.56,2.56,0,0,1-3.62,0h0L22.75,129.81a2.56,2.56,0,0,1,0-3.62L126.19,22.75a2.56,2.56,0,0,1,3.62,0L233.25,126.19a2.56,2.56,0,0,1,0,3.62Zm-61-14a6,6,0,0,1,0,8.48l-24,24a6,6,0,0,1-8.48-8.48L153.51,126H112a18,18,0,0,0-18,18v8a6,6,0,0,1-12,0v-8a30,30,0,0,1,30-30h41.51l-13.75-13.76a6,6,0,0,1,8.48-8.48Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.15,116.29,139.71,12.85a16.56,16.56,0,0,0-23.42,0L12.85,116.29a16.56,16.56,0,0,0,0,23.42L116.29,243.15h0a16.56,16.56,0,0,0,23.42,0L243.15,139.71a16.56,16.56,0,0,0,0-23.42Zm-11.31,12.1L128.4,231.84a.58.58,0,0,1-.8,0h0L24.16,128.39a.56.56,0,0,1,0-.78L127.6,24.16a.58.58,0,0,1,.8,0L231.84,127.61a.56.56,0,0,1,0,.78Zm-58.18-14a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L148.69,128H112a16,16,0,0,0-16,16v8a8,8,0,0,1-16,0v-8a32,32,0,0,1,32-32h36.69l-10.35-10.34a8,8,0,0,1,11.32-11.32Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M240.32,119.12,136.88,15.68a12.55,12.55,0,0,0-17.76,0L15.68,119.12a12.55,12.55,0,0,0,0,17.76L119.12,240.32h0a12.55,12.55,0,0,0,17.76,0L240.32,136.88a12.55,12.55,0,0,0,0-17.76Zm-5.66,12.1L131.22,234.67a4.56,4.56,0,0,1-6.44,0h0L21.33,131.22a4.55,4.55,0,0,1,0-6.44L124.78,21.33a4.56,4.56,0,0,1,6.44,0L234.67,124.78a4.55,4.55,0,0,1,0,6.44Zm-63.83-14a4,4,0,0,1,0,5.66l-24,24a4,4,0,0,1-5.66-5.66L158.34,124H112a20,20,0,0,0-20,20v8a4,4,0,0,1-8,0v-8a28,28,0,0,1,28-28h46.34L141.17,98.83a4,4,0,0,1,5.66-5.66Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as e from \"react\";\nimport a from \"../lib/IconBase.es.js\";\nimport f from \"../defs/CaretDoubleLeft.es.js\";\nconst o = e.forwardRef((t, r) => /* @__PURE__ */ e.createElement(a, { ref: r, ...t, weights: f }));\no.displayName = \"CaretDoubleLeftIcon\";\nconst s = o;\nexport {\n s as CaretDoubleLeft,\n o as CaretDoubleLeftIcon\n};\n","import * as e from \"react\";\nimport a from \"../lib/IconBase.es.js\";\nimport m from \"../defs/CaretUp.es.js\";\nconst o = e.forwardRef((r, t) => /* @__PURE__ */ e.createElement(a, { ref: t, ...r, weights: m }));\no.displayName = \"CaretUpIcon\";\nconst s = o;\nexport {\n s as CaretUp,\n o as CaretUpIcon\n};\n","import * as o from \"react\";\nimport n from \"../lib/IconBase.es.js\";\nimport a from \"../defs/Confetti.es.js\";\nconst t = o.forwardRef((e, r) => /* @__PURE__ */ o.createElement(n, { ref: r, ...e, weights: a }));\nt.displayName = \"ConfettiIcon\";\nconst m = t;\nexport {\n m as Confetti,\n t as ConfettiIcon\n};\n","import * as o from \"react\";\nimport s from \"../lib/IconBase.es.js\";\nimport t from \"../defs/Equals.es.js\";\nconst a = o.forwardRef((e, r) => /* @__PURE__ */ o.createElement(s, { ref: r, ...e, weights: t }));\na.displayName = \"EqualsIcon\";\nconst n = a;\nexport {\n n as Equals,\n a as EqualsIcon\n};\n","import * as e from \"react\";\nimport t from \"../lib/IconBase.es.js\";\nimport n from \"../defs/PencilRuler.es.js\";\nconst o = e.forwardRef((r, c) => /* @__PURE__ */ e.createElement(t, { ref: c, ...r, weights: n }));\no.displayName = \"PencilRulerIcon\";\nconst l = o;\nexport {\n l as PencilRuler,\n o as PencilRulerIcon\n};\n","import * as o from \"react\";\nimport p from \"../lib/IconBase.es.js\";\nimport e from \"../defs/ShoppingCart.es.js\";\nconst r = o.forwardRef((t, a) => /* @__PURE__ */ o.createElement(p, { ref: a, ...t, weights: e }));\nr.displayName = \"ShoppingCartIcon\";\nconst m = r;\nexport {\n m as ShoppingCart,\n r as ShoppingCartIcon\n};\n","import * as o from \"react\";\nimport i from \"../lib/IconBase.es.js\";\nimport c from \"../defs/TrafficSign.es.js\";\nconst r = o.forwardRef((a, f) => /* @__PURE__ */ o.createElement(i, { ref: f, ...a, weights: c }));\nr.displayName = \"TrafficSignIcon\";\nconst n = r;\nexport {\n n as TrafficSign,\n r as TrafficSignIcon\n};\n","export const container = `py-4`;\n","import type { TransformedScoresMenuData } from \"./types\";\nimport type {\n Options,\n CategoryKey,\n ScoreKey,\n ScoreOptions,\n} from \"~/sdks/LocalContent/types\";\n\n/**\n * Transforms the scores menu data by filtering out hidden categories and scores,\n * and sorting them by their order.\n *\n * This function is used to prepare the scores menu data for rendering in the UI.\n *\n * @param scoresMenu\n * @returns\n */\nexport function transformScoresMenuData(\n scoresMenu: Options[\"scoresMenu\"],\n): TransformedScoresMenuData {\n return {\n ...(scoresMenu || {}),\n categories: Object.entries(scoresMenu?.categories || {})\n .filter(([, category]) => category.hide !== true)\n .sort(([, a], [, b]) => (a.order ?? 0) - (b.order ?? 0))\n .map(\n // Map categories to the expected format so we can loop through them\n ([categoryKey, category]) =>\n [\n categoryKey as CategoryKey,\n {\n ...category,\n // Sort scores by order within each category\n scores: Object.entries(category.scores || {})\n .filter(([, score]) => score.hide !== true)\n .sort(([, a], [, b]) => (a.order ?? 0) - (b.order ?? 0)),\n },\n ] as [\n CategoryKey,\n typeof category & {\n scores: [ScoreKey, ScoreOptions][];\n },\n ],\n ),\n };\n}\n","import type { POIs, Schools } from \"@local-logic/client\";\nimport type { POISubcategory } from \"~/sdks/LocalContent/types\";\n\nexport function getPOICategoriesWithAvailableData(\n pois: Partial<POIs & Schools>,\n): POISubcategory[] {\n return Object.keys(pois).filter(\n (subcategory) => (pois[subcategory as POISubcategory]?.length ?? 0) > 0,\n ) as POISubcategory[];\n}\n","import type { POIs, Schools } from \"@local-logic/client\";\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport const SURVEY_ID = \"NerqWZeC\";\n\nexport const DEFAULT_RADIUS = 2500; // Default radius in meters\nexport const DEFAULT_NUMBER_OF_POIS = 30; // Default number of points of interest to fetch\nexport const DEFAULT_MIN_ZOOM = 6; // Default minimum zoom level for the map\nexport const DEFAULT_MAX_ZOOM = 17; // Default maximum zoom level for the map\nexport const DEFAULT_TRAVEL_MODE = \"walking\"; // Default travel mode for commute calculations\nexport const DIRECTIONS_PATH_COLOR = \"#006AFF\"; // Color for the directions path on the map\nexport const METERS_TO_YARDS_CONVERSION_FACTOR = 1.0936132983; // Conversion factor from meters to yards\nexport const YARDS_PER_MILE = 1760; // Number of yards in a mile\nexport const METERS_PER_KILOMETER = 1000; // Number of meters in a kilometer\n\nexport const MAP_PADDING = {\n desktop: {\n top: 64, // Taking into account commute calculator trigger height\n bottom: 48, // Taking into account map attribution\n left: 312, // Taking into account sidebar expanded width\n right: 12, // Not taking into account the map controls\n },\n mobile: {\n top: 12,\n bottom: 48,\n left: 12,\n right: 12,\n },\n};\n\nexport const LAYOUT_MEASUREMENTS = {\n SIDEBAR_STATE_WIDTH_DIFFERENCE: 236, // Width difference between expanded and collapsed sidebar\n COMMUTE_CALCULATOR_NO_ROUTE_HEIGHT_DESKTOP: 58, // Commute calculator open extra height on desktop\n COMMUTE_CALCULATOR_WITH_ROUTE_HEIGHT_DESKTOP: 124, // Commute calculator open with route extra height on desktop\n SCORE_BUTTONS_HEIGHT_MOBILE: 52, // Score buttons container height + margin on mobile\n SCORE_DETAILS_HEIGHT_MOBILE: 140, // Score details slider height + margin on mobile\n COMMUTE_CALCULATOR_HEIGHT_MOBILE: 150, // Commute calculator height + margin on mobile\n} as const;\n\nexport const SCORE_POI_CATEGORIES: Record<\n ScoreKey,\n (keyof POIs | keyof Schools)[]\n> = {\n // Commute\n pedestrian_friendly: [],\n transit_friendly: [\"rapid_transit_stations\", \"train_stations\", \"bus_stops\"],\n cycling_friendly: [],\n car_friendly: [\"car_fueling_stations\"],\n\n // Amenities\n groceries: [\"groceries\", \"groceries_specialized\"],\n restaurants: [\"restaurants\", \"healthy_restaurants\"],\n cafes: [\"cafes\"],\n shopping: [\"shopping\"],\n\n // Nature\n parks: [\"parks\"],\n greenery: [],\n\n // Character\n vibrant: [\"art_culture_science\"],\n nightlife: [\"nightlife\"],\n quiet: [],\n historic: [],\n\n // Education\n high_schools: [\"high_schools\"],\n primary_schools: [\"primary_schools\"],\n daycares: [\"daycares\"],\n\n // Wellness\n wellness: [\n \"fitness\",\n \"healthy_restaurants\",\n \"health_care\",\n \"parks\",\n \"sport_facilities\",\n \"groceries\",\n ],\n};\n","import { SCORE_POI_CATEGORIES } from \"~/sdks/LocalContent/constants\";\nimport type { POISubcategory, ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport function orderPOICategories(\n scoreKey: ScoreKey,\n unfilteredSubcategories: POISubcategory[],\n) {\n const poiCategoryOrder = SCORE_POI_CATEGORIES[scoreKey] as POISubcategory[];\n unfilteredSubcategories.sort(\n (a, b) =>\n poiCategoryOrder.indexOf(a as POISubcategory) -\n poiCategoryOrder.indexOf(b as POISubcategory),\n );\n}\n","import type { Schools, POIs } from \"@local-logic/client\";\nimport { TravelMode } from \"./hooks/useCommute/types\";\nimport type { SDKOptions, MapProviderNames } from \"~/types/options\";\n\nexport type MapProvider = {\n name: MapProviderNames;\n key?: string;\n theme?: string;\n};\nexport type CommuteOptions = {\n destination: { lat: number; lng: number } | undefined;\n commuteType: TravelMode | undefined;\n label?: string;\n};\n\nexport type POISubcategory = keyof POIs | keyof Schools;\n\nexport type CategoryKey =\n | \"transport\"\n | \"education\"\n | \"amenities\"\n | \"character\"\n | \"nature\"\n | \"health\";\n\nexport type TransportScoreKey =\n | \"pedestrian_friendly\"\n | \"transit_friendly\"\n | \"cycling_friendly\"\n | \"car_friendly\";\nexport type EducationScoreKey = \"daycares\" | \"primary_schools\" | \"high_schools\";\nexport type AmenitiesScoreKey =\n | \"shopping\"\n | \"groceries\"\n | \"restaurants\"\n | \"cafes\";\nexport type CharacterScoreKey = \"nightlife\" | \"vibrant\" | \"historic\" | \"quiet\";\nexport type NatureScoreKey = \"parks\" | \"greenery\";\nexport type WellnessScoreKey = \"wellness\";\nexport type ScoreKey =\n | TransportScoreKey\n | EducationScoreKey\n | AmenitiesScoreKey\n | CharacterScoreKey\n | NatureScoreKey\n | WellnessScoreKey;\n\nexport type ScoreOptions = {\n hide?: boolean;\n hideScore?: boolean;\n order?: number;\n};\n\nexport type CategoryOptions = {\n hide?: boolean;\n order?: number;\n colors?: {\n background: string;\n fill: string;\n };\n scores?: {\n [key in ScoreKey]?: ScoreOptions;\n };\n};\n\nexport type Options = {\n lat?: number;\n lng?: number;\n zoom?: number;\n pitch?: number;\n bearing?: number;\n distanceUnit?: \"metric\" | \"imperial\";\n marker?: {\n lat: number;\n lng: number;\n icon?: \"house\" | \"pin\";\n // Used to show the address over the marker, and for the LC LAT CTA\n addressLabel?: string;\n };\n cooperativeGestures?: boolean;\n mapProvider?: MapProvider;\n hideScores?: boolean;\n showSchoolRatings?: boolean;\n scoresMenu?: {\n defaultOpen?: boolean;\n title?: boolean | string;\n categories?: {\n [key in CategoryKey]?: CategoryOptions;\n };\n };\n hideAttribution?: boolean;\n};\n\nexport type LocalContentProps = SDKOptions<\n Options,\n {\n options: Options | undefined;\n }\n>;\n\n// TODO revisit events\nexport enum TrackingPipelineEvents {\n SDK_VIEWED = \"LC-Viewed\",\n SIDEBAR_TOGGLE_CLICKED = \"LC-Sidebar-Toggle-Clicked\",\n SIDEBAR_SCORE_SELECTED = \"LC-Sidebar-Score-Selected\",\n SIDEBAR_POI_SELECTED = \"LC-Sidebar-POI-Selected\",\n\n CATEGORIES_MENU_CATEGORY_SELECTED = \"LC-Categories-Menu-Category-Selected\",\n // CATEGORIES_MENU_SCORE_SELECTED = \"LC-Categories-Menu-Score-Selected\",\n // On purpose. It was a mistake before and we used SIDEBAR_SCORE_SELECTED\n // instead of this event name before.\n // However we need to keep it for backwards compatibility.\n // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values\n CATEGORIES_MENU_SCORE_SELECTED = \"LC-Sidebar-Score-Selected\",\n\n SCORE_POI_CATEGORY_SELECTED = \"LC-Score-POI-Category-Selected\",\n MAP_POI_SELECTED = \"LC-Map-POI-Selected\",\n MAP_POI_SELECTED_FROM_CLUSTER = \"LC-Map-POI-Selected-From-Cluster\",\n MAP_POI_POPUP_LINK_CLICKED = \"LC-Map-POI-Popup-Link-Clicked\",\n MAP_POI_VIEW_ROUTE = \"LC-Map-POI-View-Route\",\n\n COMMUTE_CALCULATOR_CALCULATE_ROUTE = \"LC-Commute-Calculator-Calculate-Route\",\n}\n\n// Why are these named differently?\n// https://docs.mixpanel.com/docs/data-structure/events-and-properties#name-events-and-properties-consistently\nexport enum AnalyticsEvents {\n SDK_VIEWED = \"sdk_viewed\",\n SIDEBAR_TOGGLE_CLICKED = \"sidebar_toggle_clicked\",\n SIDEBAR_SCORE_SELECTED = \"sidebar_score_selected\",\n SIDEBAR_POI_SELECTED = \"sidebar_poi_selected\",\n\n CATEGORIES_MENU_CATEGORY_SELECTED = \"categories_menu_category_selected\",\n CATEGORIES_MENU_SCORE_SELECTED = \"categories_menu_score_selected\",\n\n SCORE_POI_CATEGORY_SELECTED = \"score_poi_category_selected\",\n MAP_POI_SELECTED = \"map_poi_selected\",\n MAP_POI_SELECTED_FROM_CLUSTER = \"map_poi_selected_from_cluster\",\n MAP_POI_POPUP_LINK_CLICKED = \"map_poi_popup_link_clicked\",\n MAP_POI_VIEW_ROUTE = \"map_poi_view_route\",\n\n COMMUTE_CALCULATOR_CALCULATE_ROUTE = \"commute_calculator_calculate_route\",\n}\n","import type { ScoresData, ScoreItem, Score } from \"./types\";\nimport type { CategoryKey, ScoreKey } from \"~/sdks/LocalContent/types\";\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\n\nconst MAX_SCORE_VALUE = 10;\nconst SCORE_MULTIPLIER = 2;\n\n/**\n * Transforms the API response from the scores endpoint into a more usable format.\n *\n * @param data\n * @param scoresMenu\n * @returns\n */\nexport function transformScoresAPIResponse(\n data: ScoresData,\n scoresMenu: TransformedScoresMenuData,\n) {\n if (typeof data?.location === \"undefined\" || !scoresMenu)\n return {} as ScoreItem;\n\n const scores: ScoreItem = {} as ScoreItem;\n\n Object.keys(data.location).forEach((key) => {\n const singleScoreData = data?.location?.[key as ScoreKey];\n\n const category = scoresMenu.categories.find(([_key, categoryData]) =>\n categoryData.scores.some(([scoreKey]) => scoreKey === key),\n );\n\n let singleScoreValue =\n parseFloat(singleScoreData?.value || \"0\") * SCORE_MULTIPLIER;\n\n if (Number.isNaN(singleScoreValue)) {\n singleScoreValue = 0;\n } else if (singleScoreValue > MAX_SCORE_VALUE) {\n singleScoreValue = MAX_SCORE_VALUE;\n }\n\n const geographies: Score[\"geographies\"] = {};\n\n if (typeof data?.geographies !== \"undefined\") {\n data.geographies.forEach((geography) => {\n if (\n typeof geography?.scores !== \"undefined\" &&\n typeof geography.scores[key as ScoreKey] !== \"undefined\"\n ) {\n const geographyValue =\n parseFloat(geography.scores[key as ScoreKey]?.value || \"0\") *\n SCORE_MULTIPLIER;\n\n if (typeof geography?.geog_id === \"string\") {\n geographies[geography.geog_id.split(\"_\")[0]] = {\n text: geography.name,\n value: Math.round(geographyValue * 10) / 10,\n };\n }\n }\n });\n }\n\n scores[key as ScoreKey] = {\n text: singleScoreData?.text,\n value: Math.round(singleScoreValue * 10) / 10,\n geographies,\n categoryKey: category ? (category[0] as CategoryKey) : null,\n categoryOptions: category ? category[1] : null,\n };\n });\n\n return scores;\n}\n","import React, { useMemo, useCallback } from \"react\";\n\nimport type { ScoreItem } from \"./utils/transformScoresAPIResponse/types\";\nimport { transformScoresAPIResponse } from \"./utils/transformScoresAPIResponse\";\nimport { useScores } from \"~/features/clientLibrary/useScores\";\n\nimport type { ScoreKey, CategoryKey } from \"~/sdks/LocalContent/types\";\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\n\nexport function useScoreSelection({\n scoresMenu,\n lat,\n lng,\n}: {\n scoresMenu: TransformedScoresMenuData;\n lat: number;\n lng: number;\n}) {\n const [activeScore, setActiveScore] = React.useState<ScoreKey | null>(null);\n const [activeCategory, setActiveCategory] =\n React.useState<CategoryKey | null>(null);\n\n const { data, isFetching: isScoresFetching } = useScores({\n location: {\n lat,\n lng,\n },\n });\n\n const scoresData = useMemo<ScoreItem>(\n () => transformScoresAPIResponse(data, scoresMenu),\n [data, scoresMenu],\n );\n\n const activeCategoryData = useMemo(() => {\n if (!activeCategory || !scoresMenu) return null;\n\n const category = scoresMenu.categories.find(\n ([key]) => key === activeCategory,\n );\n\n if (!category) return null;\n\n return category[1];\n }, [activeCategory, scoresMenu]);\n\n const handleSelectScore = useCallback(\n (scoreKey: ScoreKey | null) => () => {\n setActiveScore((prev) => (prev === scoreKey ? null : scoreKey));\n\n if (scoreKey === null) {\n setActiveCategory(null);\n return;\n }\n\n const categoryKey =\n scoresMenu.categories.find(([, value]) =>\n value.scores.some(([key]) => key === scoreKey),\n )?.[0] ?? null;\n\n setActiveCategory(categoryKey);\n },\n [setActiveScore, setActiveCategory, scoresMenu.categories],\n );\n\n /**\n * Category selection is a mobile only feature, so when a category is selected,\n * we also clear the active score to avoid confusion.\n */\n const handleSelectCategory = useCallback(\n (categoryKey: CategoryKey | null) => () => {\n setActiveCategory((prev) => (prev === categoryKey ? null : categoryKey));\n setActiveScore(null);\n },\n [setActiveCategory, setActiveScore],\n );\n\n return {\n isLoading: isScoresFetching,\n scoresData,\n activeScore,\n activeScoreData: activeScore === null ? undefined : scoresData[activeScore],\n activeCategory,\n activeCategoryData,\n handleSelectScore,\n handleSelectCategory,\n };\n}\n","import { useQuery } from \"@tanstack/react-query\";\nimport type { TravelMode, Location, DistanceUnits, CommuteData } from \"./types\";\nimport errorTracker from \"~/utils/errorTracker\";\n\nimport { useStateManagerContext } from \"~/context/stateManager\";\nimport { LocalContentProps } from \"~/sdks/LocalContent/types\";\n\nconst MAPBOX_DIRECTIONS_ENDPOINT = `${import.meta.env.VITE_PROVIDERS_ENDPOINT}/v1/directions`;\n\nexport function useCommute({\n mode = \"walking\",\n origin,\n destination,\n label,\n locale = \"en\",\n units = \"metric\",\n}: {\n mode?: TravelMode;\n origin?: Location;\n destination?: Location;\n label?: string;\n locale?: string;\n units?: DistanceUnits;\n}) {\n const { sdkState } = useStateManagerContext<LocalContentProps>();\n\n /**\n * Fetches a route from Mapbox Directions API.\n *\n * @returns CommuteData | null\n */\n const fetchRoutes = async () => {\n if (!origin?.lat || !origin.lng || !destination?.lat || !destination.lng) {\n return null;\n }\n\n let travelMode = \"walking\";\n\n if (mode === \"driving\") {\n travelMode = \"driving\";\n } else if (mode === \"cycling\") {\n travelMode = \"cycling\";\n }\n\n return fetch(\n `${MAPBOX_DIRECTIONS_ENDPOINT}/${travelMode}/${origin.lng},${origin.lat};${destination.lng},${destination.lat}?geometries=geojson`,\n {\n headers: {\n Accept: \"application/json\",\n Authorization: `${sdkState.apiKey as string}`,\n },\n method: \"GET\",\n },\n )\n .then((response) => response.json())\n .then((response) => {\n if (\n (response.data?.routes ?? []).length > 0 &&\n response.data?.code === \"Ok\"\n ) {\n return {\n mode: travelMode,\n distance: response.data.routes[0].distance,\n duration: response.data.routes[0].duration,\n label,\n // Convert coordinates from [lng, lat] to [lat, lng]\n geometry: response.data.routes[0].geometry.coordinates.map(\n (coord: [number, number]) => [coord[1], coord[0]],\n ),\n destination: {\n lat: destination.lat,\n lng: destination.lng,\n },\n } as CommuteData;\n }\n return null;\n })\n .catch((error) => {\n errorTracker.captureException(error);\n throw error;\n });\n };\n\n return useQuery({\n queryKey: [\n \"commute\",\n mode,\n origin?.lat,\n origin?.lng,\n destination?.lat,\n destination?.lng,\n locale,\n units,\n label,\n ],\n queryFn: fetchRoutes,\n enabled:\n !!origin?.lat &&\n !!origin?.lng &&\n !!destination?.lat &&\n !!destination?.lng,\n });\n}\n","import type { SurveyStorage } from \"../types\";\n\nexport const SURVEY_TRIGGER_SESSION_NAME = \"sessions\";\nexport const SURVEY_DISMISS_KEY = \"dismissed\";\nexport const REQUIRED_SESSIONS_WITH_INTERACTION = 2;\n\nexport function isDismissed(storage: SurveyStorage): boolean {\n return storage.getItem(SURVEY_DISMISS_KEY) === \"true\";\n}\n\nexport function getSessions(storage: SurveyStorage): number[] {\n const raw = storage.getItem(SURVEY_TRIGGER_SESSION_NAME);\n return raw ? JSON.parse(raw) : [];\n}\n\nexport function saveSessions(storage: SurveyStorage, sessions: number[]): void {\n storage.setItem(SURVEY_TRIGGER_SESSION_NAME, JSON.stringify(sessions));\n}\n\n/**\n * Registers a new session. Prunes previous sessions with zero interactions.\n * Returns the index of the newly created session.\n */\nexport function registerSession(storage: SurveyStorage): number {\n let sessions = getSessions(storage);\n\n // Prune sessions that had no interactions\n sessions = sessions.filter((count) => count > 0);\n\n sessions.push(0);\n saveSessions(storage, sessions);\n\n return sessions.length - 1;\n}\n\n/**\n * Increments the interaction count for the given session index.\n */\nexport function incrementSession(\n storage: SurveyStorage,\n sessionIndex: number,\n): void {\n const sessions = getSessions(storage);\n\n if (sessions[sessionIndex] === undefined) {\n return;\n }\n\n sessions[sessionIndex] += 1;\n saveSessions(storage, sessions);\n}\n\n/**\n * Evaluates whether the survey should be shown based on stored sessions.\n */\nexport function shouldShowSurvey(storage: SurveyStorage): boolean {\n const sessions = getSessions(storage);\n return (\n sessions.filter((count) => count > 0).length >=\n REQUIRED_SESSIONS_WITH_INTERACTION\n );\n}\n\n/**\n * Marks the survey as dismissed and clears session data.\n */\nexport function dismissSurvey(storage: SurveyStorage): void {\n storage.setItem(SURVEY_DISMISS_KEY, \"true\");\n storage.removeItem(SURVEY_TRIGGER_SESSION_NAME);\n}\n","import React, {\n useState,\n useEffect,\n useRef,\n useCallback,\n createContext,\n} from \"react\";\nimport type { ReactNode } from \"react\";\n\nimport { useFlags } from \"launchdarkly-react-client-sdk\";\n\nimport type { SurveyTriggerContextValue } from \"../types\";\nimport {\n isDismissed as checkIsDismissed,\n registerSession,\n incrementSession,\n shouldShowSurvey,\n dismissSurvey,\n} from \"../session\";\nimport { BrowserStorage } from \"~/utils/browser\";\n\nconst SURVEY_TRIGGER_OBJECT_NAME = \"localContentSurvey\";\n\nexport const SurveyTriggerContext =\n createContext<SurveyTriggerContextValue | null>(null);\n\nexport function SurveyTriggerProvider({ children }: { children: ReactNode }) {\n const storage = useRef(\n new BrowserStorage(SURVEY_TRIGGER_OBJECT_NAME),\n ).current;\n const flags = useFlags();\n const sessionIndexRef = useRef<number | null>(null);\n const [showSurvey, setShowSurvey] = useState(false);\n const [dismissed, setDismissed] = useState(() => checkIsDismissed(storage));\n\n useEffect(() => {\n if (!flags.localContentSurvey || dismissed) {\n return;\n }\n\n const index = registerSession(storage);\n sessionIndexRef.current = index;\n\n if (shouldShowSurvey(storage)) {\n setShowSurvey(true);\n }\n }, [flags.localContentSurvey, dismissed, storage]);\n\n const handleAddSessionTriggerCount = useCallback(() => {\n if (\n !flags.localContentSurvey ||\n dismissed ||\n sessionIndexRef.current === null\n ) {\n return;\n }\n\n incrementSession(storage, sessionIndexRef.current);\n\n if (shouldShowSurvey(storage)) {\n setShowSurvey(true);\n }\n }, [flags.localContentSurvey, dismissed, storage]);\n\n const handleDismiss = useCallback(() => {\n setDismissed(true);\n setShowSurvey(false);\n dismissSurvey(storage);\n }, [storage]);\n\n return (\n <SurveyTriggerContext.Provider\n value={{ showSurvey, handleDismiss, handleAddSessionTriggerCount }}\n >\n {children}\n </SurveyTriggerContext.Provider>\n );\n}\n","import { useContext } from \"react\";\n\nimport { SurveyTriggerContext } from \"./SurveyTriggerProvider\";\n\nexport { SurveyTriggerProvider } from \"./SurveyTriggerProvider\";\nexport type { SurveyTriggerContextValue, SurveyStorage } from \"./types\";\nexport {\n registerSession,\n incrementSession,\n shouldShowSurvey,\n dismissSurvey,\n} from \"./session\";\n\nexport function useSurveyTrigger() {\n const context = useContext(SurveyTriggerContext);\n\n if (!context) {\n throw new Error(\n \"useSurveyTrigger must be used within a SurveyTriggerProvider\",\n );\n }\n\n return context;\n}\n","import React, {\n useContext,\n useEffect,\n useState,\n useMemo,\n useCallback,\n} from \"react\";\n\nimport type { POI, School } from \"@local-logic/client\";\nimport type { MarkerPoint } from \"@local-logic/maps\";\nimport { transformScoresMenuData } from \"./utils/transformScoresMenuData\";\nimport { getPOICategoriesWithAvailableData } from \"./utils/getPOICategoriesWithAvailableData\";\nimport { orderPOICategories } from \"./utils/orderPOICategories\";\nimport type { TransformedScoresMenuData } from \"./utils/transformScoresMenuData/types\";\nimport {\n type LocalContentProps,\n type POISubcategory,\n TrackingPipelineEvents,\n AnalyticsEvents,\n CommuteOptions,\n} from \"./types\";\nimport { useTracking } from \"~/tracking\";\nimport { useScoreSelection } from \"~/sdks/LocalContent/hooks/useScoreSelection\";\nimport { useMarkers } from \"~/hooks/useMarkers\";\nimport { useCommute } from \"~/sdks/LocalContent/hooks/useCommute\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport useEffectOnce from \"~/hooks/useEffectOnce\";\nimport { useStateManagerContext } from \"~/context/stateManager\";\nimport { useLocation } from \"~/hooks/useLocation\";\n\nimport type { CommuteData } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nimport {\n DEFAULT_TRAVEL_MODE,\n DEFAULT_RADIUS,\n DEFAULT_NUMBER_OF_POIS,\n SCORE_POI_CATEGORIES,\n} from \"~/sdks/LocalContent/constants\";\n\nimport { getIdFromMarker } from \"~/utils/map/getIdFromMarker\";\n\ninterface Location {\n lat: LocalContentProps[\"options\"][\"lat\"];\n lng: LocalContentProps[\"options\"][\"lng\"];\n}\n\nexport type DefaultContext = {\n isLoading: boolean;\n isScoresLoading: boolean;\n isMarkersLoading: boolean;\n isCommuteDataLoading: boolean;\n isCategoriesMenuOpen: boolean;\n isCommuteCalculatorOpen: boolean;\n isSidebarExpanded: boolean;\n distanceUnit: LocalContentProps[\"options\"][\"distanceUnit\"];\n locale: \"en\" | \"fr\";\n location: Location;\n country: string;\n centerMarker?: {\n lat: number;\n lng: number;\n addressLabel?: string;\n };\n map: {\n mapProvider: LocalContentProps[\"options\"][\"mapProvider\"];\n zoom: LocalContentProps[\"options\"][\"zoom\"];\n pitch: LocalContentProps[\"options\"][\"pitch\"];\n bearing: LocalContentProps[\"options\"][\"bearing\"];\n cooperativeGestures: LocalContentProps[\"options\"][\"cooperativeGestures\"];\n };\n scoresMenu: TransformedScoresMenuData;\n activeScore: ReturnType<typeof useScoreSelection>[\"activeScore\"];\n activeScoreData: ReturnType<typeof useScoreSelection>[\"activeScoreData\"];\n activeCategory: ReturnType<typeof useScoreSelection>[\"activeCategory\"];\n activeCategoryData: ReturnType<\n typeof useScoreSelection\n >[\"activeCategoryData\"];\n availablePoiSubcategories: POISubcategory[];\n selectedPoiSubcategory: POISubcategory | null;\n activeMarker?: MarkerPoint;\n activeMarkerDetails: School | POI | null;\n scoresData?: ReturnType<typeof useScoreSelection>[\"scoresData\"];\n markersData?: ReturnType<typeof useMarkers>[\"data\"];\n commuteData: CommuteData | null;\n hideScoresList: string[];\n hideAllScores?: boolean;\n showSchoolRatings?: boolean;\n commuteOptions: CommuteOptions;\n hideAttribution?: boolean;\n handleToggleIsCommuteCalculatorOpen: () => void;\n handleToggleIsSidebarExpanded: () => void;\n handleSelectScore: ReturnType<typeof useScoreSelection>[\"handleSelectScore\"];\n handleSelectCategory: ReturnType<\n typeof useScoreSelection\n >[\"handleSelectCategory\"];\n handleSelectPoiSubcategory: (subcategory: POISubcategory | null) => void;\n handleMarkerClick: (marker?: MarkerPoint) => void;\n handleCalculateCommute: (options: DefaultContext[\"commuteOptions\"]) => void;\n};\n\nconst LocalContentContext = React.createContext<DefaultContext>(\n {} as DefaultContext,\n);\n\nconst useLocalContent = () => useContext(LocalContentContext);\n\nconst LocalContentProvider = ({\n children,\n}: {\n children: React.JSX.Element;\n}) => {\n const { sdkState } = useStateManagerContext<LocalContentProps>();\n const tracking = useTracking();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n const [isCategoriesMenuOpen, setIsCategoriesMenuOpen] = useState(false);\n const [isCommuteCalculatorOpen, setIsCommuteCalculatorOpen] = useState(false);\n const [isSidebarExpanded, setIsSidebarExpanded] = useState(\n sdkState.options?.scoresMenu?.defaultOpen ?? true,\n );\n const [availablePoiSubcategories, setAvailablePoiSubcategories] = useState<\n POISubcategory[]\n >([]);\n const [selectedPoiSubcategory, setSelectedPoiSubcategory] =\n useState<DefaultContext[\"selectedPoiSubcategory\"]>(null);\n const [activeMarker, setActiveMarker] = useState<MarkerPoint | undefined>(\n undefined,\n );\n const [commuteOptions, setCommuteOptions] = useState<\n DefaultContext[\"commuteOptions\"]\n >({\n destination: undefined,\n commuteType: DEFAULT_TRAVEL_MODE,\n label: undefined,\n });\n\n const { data: location } = useLocation({\n lat: sdkState.options?.marker?.lat,\n lng: sdkState.options?.marker?.lng,\n });\n\n const { data: commuteData, isLoading: isCommuteDataLoading } = useCommute({\n mode: commuteOptions.commuteType,\n locale: sdkState.globalOptions?.locale || \"en\",\n units: sdkState.options?.distanceUnit,\n label: commuteOptions.label,\n origin: {\n lat: sdkState.options?.lat || 0,\n lng: sdkState.options?.lng || 0,\n },\n destination: commuteOptions.destination,\n });\n\n useEffectOnce(() => {\n const eventAttributes = {\n mapProviderHasCustomKey:\n typeof sdkState.options?.mapProvider?.key !== \"undefined\",\n mapProviderHasCustomTheme:\n typeof sdkState.options?.mapProvider?.theme !== \"undefined\",\n centerMarkerProvided: typeof sdkState.options?.marker !== \"undefined\",\n sidebarDefaultOpen: sdkState.options?.scoresMenu?.defaultOpen,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SDK_VIEWED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SDK_VIEWED,\n eventAttributes,\n });\n });\n\n const handleToggleIsCommuteCalculatorOpen = useCallback(() => {\n setIsCommuteCalculatorOpen((prev) => {\n if (!prev) {\n setIsCategoriesMenuOpen(false);\n } else {\n setCommuteOptions({\n ...commuteOptions,\n label: undefined,\n destination: undefined,\n });\n }\n\n return !prev;\n });\n\n // Close any open popup when toggling commute calculator\n setActiveMarker(undefined);\n }, [commuteOptions]);\n\n const handleToggleIsSidebarExpanded = useCallback(() => {\n setIsSidebarExpanded((prev) => !prev);\n\n // Close any open popup when toggling sidebar to avoid positioning issues\n setActiveMarker(undefined);\n }, []);\n\n const handleSelectPoiSubcategory = useCallback(\n (subcategory: POISubcategory | null) => {\n setSelectedPoiSubcategory((prev) =>\n prev === subcategory ? null : subcategory,\n );\n },\n [],\n );\n\n const handleMarkerClick = useCallback(\n (marker?: MarkerPoint) => {\n if (\n activeMarker?.latitude === marker?.latitude &&\n activeMarker?.longitude === marker?.longitude\n ) {\n setActiveMarker(undefined);\n return;\n }\n\n setActiveMarker(marker);\n },\n [activeMarker, isCategoriesMenuOpen],\n );\n\n const handleCalculateCommute = (\n options: DefaultContext[\"commuteOptions\"],\n ) => {\n handleAddSessionTriggerCount();\n setCommuteOptions(options);\n handleMarkerClick();\n\n if (!isCommuteCalculatorOpen) {\n handleToggleIsCommuteCalculatorOpen();\n }\n };\n\n const sortedScoresMenu = useMemo(\n () => transformScoresMenuData(sdkState.options?.scoresMenu),\n [sdkState.options?.scoresMenu?.categories],\n );\n\n const {\n isLoading: isScoresLoading,\n scoresData,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n handleSelectScore,\n handleSelectCategory,\n } = useScoreSelection({\n scoresMenu: sortedScoresMenu,\n lat: sdkState?.options?.lat || 0,\n lng: sdkState?.options?.lng || 0,\n });\n\n const { isLoading: isMarkersLoading, data: markersData } = useMarkers({\n lat: sdkState?.options?.lat || 0,\n lng: sdkState?.options?.lng || 0,\n categoriesDeprecated: activeScore\n ? SCORE_POI_CATEGORIES[activeScore]\n : undefined,\n radius: DEFAULT_RADIUS,\n limit: DEFAULT_NUMBER_OF_POIS,\n });\n\n useEffect(() => {\n if (\n !activeScore ||\n isMarkersLoading ||\n typeof markersData === \"undefined\" ||\n Object.keys(markersData).length === 0\n ) {\n if (selectedPoiSubcategory !== null) {\n handleSelectPoiSubcategory(null);\n }\n\n return;\n }\n\n const filteredSubcategories =\n getPOICategoriesWithAvailableData(markersData);\n\n if (filteredSubcategories.length === 0) {\n handleSelectPoiSubcategory(null);\n return;\n }\n\n // If a valid subcategory is already selected and still exists in the data, keep it\n if (\n selectedPoiSubcategory !== null &&\n filteredSubcategories.includes(selectedPoiSubcategory)\n ) {\n return;\n }\n\n orderPOICategories(activeScore, filteredSubcategories);\n setAvailablePoiSubcategories(filteredSubcategories as POISubcategory[]);\n\n // Otherwise, select the first available subcategory\n handleSelectPoiSubcategory(filteredSubcategories[0] as POISubcategory);\n }, [isMarkersLoading, markersData, selectedPoiSubcategory]);\n\n /**\n * This is used to determine which scores should be hidden in the UI.\n * It is mainly calculated here to avoid recalculating it in multiple components.\n */\n const hideScoresList = useMemo(() => {\n let tempHideScoresList: string[] = [];\n\n if (!sortedScoresMenu) return tempHideScoresList;\n\n sortedScoresMenu.categories.forEach(([, categoryValue]) => {\n if (categoryValue.hide || sdkState.options?.hideScores) {\n tempHideScoresList = tempHideScoresList.concat(\n categoryValue.scores.flatMap(([scoreKey]) => scoreKey),\n );\n } else {\n tempHideScoresList = tempHideScoresList.concat(\n categoryValue.scores\n .filter(([, scoreValue]) => scoreValue.hideScore)\n .map(([scoreKey]) => scoreKey),\n );\n }\n });\n\n return tempHideScoresList;\n }, [sortedScoresMenu, sdkState.options]);\n\n const activeMarkerDetails = useMemo(() => {\n if (\n !markersData ||\n !selectedPoiSubcategory ||\n !activeMarker ||\n activeMarker.markers.length !== 1\n ) {\n return null;\n }\n\n return (\n markersData[selectedPoiSubcategory]?.find(\n (marker) =>\n activeMarker.markers[0].id ===\n getIdFromMarker(marker.lat, marker.lng, marker.name),\n ) || null\n );\n }, [activeMarker, markersData, selectedPoiSubcategory]);\n\n const contextValue = useMemo(\n () => ({\n isLoading: isScoresLoading || isMarkersLoading,\n isScoresLoading,\n isMarkersLoading,\n isCommuteDataLoading,\n isCategoriesMenuOpen,\n isCommuteCalculatorOpen,\n isSidebarExpanded,\n locale: sdkState.globalOptions?.locale || \"en\",\n location: {\n lat: sdkState.options?.lat,\n lng: sdkState.options?.lng,\n },\n country: location?.country || \"CAN\",\n centerMarker: sdkState.options?.marker,\n distanceUnit: sdkState.options?.distanceUnit,\n map: {\n mapProvider: sdkState.options?.mapProvider,\n zoom: sdkState.options?.zoom,\n pitch: sdkState.options?.pitch,\n bearing: sdkState.options?.bearing,\n cooperativeGestures: sdkState.options?.cooperativeGestures,\n },\n scoresMenu: sortedScoresMenu,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n activeMarker,\n activeMarkerDetails,\n markersData,\n scoresData,\n availablePoiSubcategories,\n selectedPoiSubcategory,\n hideScoresList,\n hideAllScores: sdkState.options?.hideScores,\n showSchoolRatings: sdkState.options?.showSchoolRatings,\n commuteData: commuteData || null,\n commuteOptions,\n hideAttribution: sdkState.options?.hideAttribution,\n handleToggleIsCommuteCalculatorOpen,\n handleToggleIsSidebarExpanded,\n handleSelectScore,\n handleSelectCategory,\n handleSelectPoiSubcategory,\n handleMarkerClick,\n handleCalculateCommute,\n }),\n [\n isScoresLoading,\n isMarkersLoading,\n isCategoriesMenuOpen,\n isCommuteCalculatorOpen,\n isSidebarExpanded,\n isCommuteDataLoading,\n sdkState.globalOptions,\n sdkState.options,\n location,\n sortedScoresMenu,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n activeMarker,\n activeMarkerDetails,\n markersData,\n scoresData,\n availablePoiSubcategories,\n selectedPoiSubcategory,\n commuteData,\n hideScoresList,\n commuteOptions,\n sdkState.options?.hideAttribution,\n handleToggleIsCommuteCalculatorOpen,\n handleToggleIsSidebarExpanded,\n handleSelectScore,\n handleSelectCategory,\n handleSelectPoiSubcategory,\n handleMarkerClick,\n handleCalculateCommute,\n ],\n );\n\n return (\n <LocalContentContext.Provider value={contextValue}>\n {children}\n </LocalContentContext.Provider>\n );\n};\n\nexport { useLocalContent, LocalContentProvider, type Location };\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { HorizontalScrollFilters } from \"@local-logic/design-system\";\nimport {\n type Icon,\n TrainIcon,\n PencilRulerIcon,\n ShoppingCartIcon,\n ConfettiIcon,\n PlantIcon,\n FlowerLotusIcon,\n} from \"@phosphor-icons/react\";\nimport * as styles from \"./styles\";\nimport { useTracking } from \"~/tracking\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\nimport {\n type CategoryKey,\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nconst categoryIcons: Record<CategoryKey, Icon> = {\n transport: TrainIcon,\n education: PencilRulerIcon,\n amenities: ShoppingCartIcon,\n character: ConfettiIcon,\n nature: FlowerLotusIcon,\n health: PlantIcon,\n};\n\nexport function Header({ scores }: { scores: TransformedScoresMenuData }) {\n const tracking = useTracking();\n const { activeCategory, handleSelectCategory: onSelectCategory } =\n useLocalContent();\n const { t } = useTranslation(\"localContent\");\n const breakpoints = useResponsiveBreakpoints();\n\n const handleSelectCategory = (categoryKey: CategoryKey | null) => () => {\n onSelectCategory(categoryKey)();\n\n if (categoryKey === null) {\n return;\n }\n\n const eventAttributes = {\n category: categoryKey,\n isExpanded: activeCategory === categoryKey,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.CATEGORIES_MENU_CATEGORY_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.CATEGORIES_MENU_CATEGORY_SELECTED,\n eventAttributes,\n });\n };\n\n if (breakpoints.sm || scores.categories.length === 0) {\n return null;\n }\n\n return (\n <div className={styles.container} data-testid=\"categories-mobile-header\">\n <HorizontalScrollFilters.Root>\n <HorizontalScrollFilters.ScrollList>\n {scores.categories.map(([categoryKey, categoryValue]) => (\n <HorizontalScrollFilters.Filter<CategoryKey>\n key={`category-${categoryKey}`}\n filter={categoryKey}\n label={t(`categories.${categoryKey}`)}\n icon={categoryIcons[categoryKey]}\n iconBackgroundColor={categoryValue.colors?.background}\n iconFillColor={categoryValue.colors?.fill}\n isActive={categoryKey === activeCategory}\n onSelectFilter={handleSelectCategory(categoryKey)}\n />\n ))}\n </HorizontalScrollFilters.ScrollList>\n </HorizontalScrollFilters.Root>\n </div>\n );\n}\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"react\")):\"function\"==typeof define&&define.amd?define([\"react\"],t):\"object\"==typeof exports?exports[\"embed-react\"]=t(require(\"react\")):e[\"embed-react\"]=t(e.react)}(this,function(e){return function(){var t={9:function(e,t,n){\"use strict\";n.r(t),t.default=\".tf-v1-widget{width:100%;height:100%;min-height:inherit;position:relative}.tf-v1-widget iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px;min-height:inherit}.tf-v1-widget-close{display:none}.tf-v1-widget-iframe-overlay{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px;position:absolute;top:0;left:0}.tf-v1-widget-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;width:100% !important;height:100% !important}.tf-v1-widget-fullscreen .tf-v1-widget-close{display:block;display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-widget-fullscreen .tf-v1-widget-close:hover{opacity:1}@media(min-width: 481px){.tf-v1-widget-fullscreen .tf-v1-widget-close{color:#fff !important}}.tf-v1-widget-fullscreen .tf-v1-widget-close{z-index:1}.tf-v1-widget-fullscreen iframe{border-radius:0}\"},93:function(e,t,n){\"use strict\";var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.InlineStyle=void 0;var i=r(n(155)),a=r(n(206));t.InlineStyle=function(e){var t=e.filename,r=n(663)(\"./\".concat(t,\".css\")),c=(0,a.default)();return i.default.createElement(\"style\",o({},c?{nonce:c}:{},{dangerouslySetInnerHTML:{__html:r.default}}))}},123:function(e,t,n){\"use strict\";n.r(t),t.default=\"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-popup{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);transition:opacity .25s ease-in-out;z-index:10001;display:flex;align-items:center;justify-content:center}.tf-v1-popup .tf-v1-iframe-wrapper{position:relative;transition:opacity .25s ease-in-out;min-width:360px;min-height:360px}.tf-v1-popup .tf-v1-iframe-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px}.tf-v1-popup .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:-34px;right:0;background:none;border:none;border-radius:0}.tf-v1-popup .tf-v1-close:hover{opacity:1}@media(min-width: 481px){.tf-v1-popup .tf-v1-close{color:#fff !important}}.tf-v1-popup .tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media(max-width: 480px){.tf-v1-popup{width:100% !important;height:100% !important}.tf-v1-popup .tf-v1-iframe-wrapper{position:relative;transition:opacity .25s ease-in-out;min-width:100%;min-height:100%}.tf-v1-popup .tf-v1-iframe-wrapper iframe{border-radius:0}.tf-v1-popup .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-popup .tf-v1-close:hover{opacity:1}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-popup .tf-v1-close{color:#fff !important}}\"},155:function(t){\"use strict\";t.exports=e},161:function(e,t,n){\"use strict\";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.memoComponent=t.propsAreEqual=void 0;var r=n(155),i=o(n(792));t.propsAreEqual=function(e,t){return(0,i.default)(e,t)},t.memoComponent=function(e){return(0,r.memo)(e,t.propsAreEqual)}},193:function(e,t,n){\"use strict\";var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)\"default\"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},c=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.makeButtonComponent=void 0;var s=a(n(155)),u=n(517),l=n(93);t.makeButtonComponent=function(e,t){return function(n){var r=n.id,i=n.children,a=n.as,d=void 0===a?\"button\":a,f=n.style,p=void 0===f?{}:f,v=n.className,m=void 0===v?\"\":v,h=n.buttonProps,b=n.embedRef,g=c(n,[\"id\",\"children\",\"as\",\"style\",\"className\",\"buttonProps\",\"embedRef\"]),y=(0,s.useRef)(u.genericEmbed),w=b||y;(0,s.useEffect)(function(){return w.current=e(r,g),function(){var e;return null===(e=w.current)||void 0===e?void 0:e.unmount()}},[r,g,w]);var x=(0,s.useMemo)(function(){return function(){var e;return null===(e=w.current)||void 0===e?void 0:e.open()}},[w]),_=s.default.createElement(d,o({style:p,className:m,onClick:x,\"data-testid\":\"tf-v1-\".concat(t),children:i},h));return s.default.createElement(s.default.Fragment,null,s.default.createElement(l.InlineStyle,{filename:t}),_)}}},206:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(){return void 0!==n.g.__webpack_nonce__?n.g.__webpack_nonce__:null}},231:function(e,t,n){\"use strict\";n.r(t),t.default=\"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-sidetab{position:fixed;top:50%;right:0;width:400px;height:580px;transform:translate(100%, -50%);box-shadow:0 2px 4px rgba(0,0,0,.08),0 2px 12px rgba(0,0,0,.06);z-index:10001;will-change:transform}.tf-v1-sidetab.ready{transition:transform 400ms cubic-bezier(0.5, 0, 0.75, 0)}.tf-v1-sidetab iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px 0 0 8px}.tf-v1-sidetab.open{transform:translate(0, -50%)}.tf-v1-sidetab-wrapper{position:relative;height:100%}.tf-v1-sidetab-button{position:absolute;top:50%;left:-48px;transform:rotate(-90deg) translateX(-50%);transform-origin:left top;min-width:100px;max-width:540px;height:48px;display:flex;align-items:center;padding:12px 16px;border-radius:8px 8px 0 0;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.08),0 2px 12px rgba(0,0,0,.06);background-color:#3a7685;cursor:pointer;border:0;text-decoration:none;outline:none}.tf-v1-sidetab-button-text{flex:1;font-size:18px;font-family:Helvetica,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-v1-sidetab-button-icon{width:24px;height:24px;font-size:24px;transform:rotate(90deg);margin-right:12px;position:relative;order:-1}.tf-v1-sidetab-button-icon>img{width:100%;height:100%;object-fit:contain}.tf-v1-sidetab-close{display:none}.tf-v1-sidetab .tf-v1-spinner{border:3px solid #aaa;font-size:24px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-12px 0 0 -12px;top:0;left:0;margin:0}@media(max-width: 480px){.tf-v1-sidetab{transition:unset}.tf-v1-sidetab.ready{transition:unset}.tf-v1-sidetab.open{top:0;left:0;right:0;bottom:0;transform:translate(0, 0);width:100% !important;height:100% !important}.tf-v1-sidetab-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-sidetab-close:hover{opacity:1}.tf-v1-sidetab-close{display:block;z-index:1}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-sidetab-close{color:#fff !important}}\"},240:function(e,t,n){\"use strict\";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(193),t),r(n(390),t),r(n(558),t)},390:function(e,t,n){\"use strict\";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)\"default\"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&o(t,e,n);return r(t,e),t},a=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.makeInitializerComponent=void 0;var c=i(n(155)),s=n(517),u=n(93);t.makeInitializerComponent=function(e,t){return function(n){var o=n.id,r=n.embedRef,i=a(n,[\"id\",\"embedRef\"]),l=(0,c.useRef)(s.genericEmbed),d=r||l;return(0,c.useEffect)(function(){return d.current=e(o,i),function(){var e;null===(e=d.current)||void 0===e||e.unmount()}},[o,i,d]),c.default.createElement(u.InlineStyle,{filename:t})}}},517:function(e,t,n){\"use strict\";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(804),t),r(n(161),t)},558:function(e,t,n){\"use strict\";var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)\"default\"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},c=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Widget=void 0;var s=a(n(155)),u=n(952),l=n(93);t.Widget=function(e){var t=e.id,n=e.style,r=void 0===n?{}:n,i=e.className,a=void 0===i?\"\":i,d=c(e,[\"id\",\"style\",\"className\"]),f=(0,s.useRef)(null);return(0,s.useEffect)(function(){if(f.current){var e=(0,u.createWidget)(t,o(o({},d),{container:f.current}));return function(){e.unmount()}}},[t,d]),s.default.createElement(s.default.Fragment,null,s.default.createElement(l.InlineStyle,{filename:\"widget\"}),s.default.createElement(\"div\",{style:r,className:a,ref:f}))}},663:function(e,t,n){var o={\"./popover.css\":842,\"./popup.css\":123,\"./sidetab.css\":231,\"./slider.css\":806,\"./widget.css\":9};function r(e){var t=i(e);return n(t)}function i(e){if(!n.o(o,e)){var t=new Error(\"Cannot find module '\"+e+\"'\");throw t.code=\"MODULE_NOT_FOUND\",t}return o[e]}r.keys=function(){return Object.keys(o)},r.resolve=i,e.exports=r,r.id=663},792:function(e){\"use strict\";e.exports=function e(t,n){if(t===n)return!0;if(t&&n&&\"object\"==typeof t&&\"object\"==typeof n){if(t.constructor!==n.constructor)return!1;var o,r,i;if(Array.isArray(t)){if((o=t.length)!=n.length)return!1;for(r=o;0!==r--;)if(!e(t[r],n[r]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((o=(i=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(r=o;0!==r--;)if(!Object.prototype.hasOwnProperty.call(n,i[r]))return!1;for(r=o;0!==r--;){var a=i[r];if(!e(t[a],n[a]))return!1}return!0}return t!=t&&n!=n}},804:function(e,t){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.genericEmbed=void 0,t.genericEmbed={unmount:function(){},open:function(){}}},806:function(e,t,n){\"use strict\";n.r(t),t.default=\"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-slider{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);transition:opacity .25s ease-in-out;z-index:10001}.tf-v1-slider .tf-v1-iframe-wrapper{max-width:calc(100vw - 26px);height:100%;position:absolute;top:0;transition:right .5s ease-in-out,left .5s ease-in-out}.tf-v1-slider .tf-v1-iframe-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:0}@media(min-width: 481px){.tf-v1-slider .tf-v1-iframe-wrapper iframe{border-radius:8px 0 0 8px}}.tf-v1-slider .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-slider .tf-v1-close:hover{opacity:1}@media(min-width: 481px){.tf-v1-slider .tf-v1-close{color:#fff !important}}@media(min-width: 481px){.tf-v1-slider .tf-v1-close{top:4px;left:-26px}}.tf-v1-slider .tf-v1-close:hover{opacity:1}.tf-v1-slider .tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media(min-width: 481px){.tf-v1-slider.left .tf-v1-iframe-wrapper iframe{border-radius:0 8px 8px 0}.tf-v1-slider.left .tf-v1-close{left:auto;right:-24px}}@media(max-width: 480px){.tf-v1-slider{width:100% !important;height:100% !important}.tf-v1-slider .tf-v1-iframe-wrapper{width:100% !important;max-width:100vw;height:100%;transition:unset}.tf-v1-slider .tf-v1-iframe-wrapper iframe{border-radius:none}.tf-v1-slider .tf-v1-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-slider .tf-v1-close:hover{opacity:1}.tf-v1-slider .tf-v1-close{left:auto}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-slider .tf-v1-close{color:#fff !important}}\"},842:function(e,t,n){\"use strict\";n.r(t),t.default='@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-popover{bottom:96px;position:fixed;right:16px;z-index:10001}.tf-v1-popover.open{max-width:100%;min-height:360px;min-width:360px}.tf-v1-popover-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:100%;width:100%;opacity:0;transition:opacity .25s ease-in-out;border-radius:4px;box-shadow:rgba(0,0,0,.08) 0 2px 4px,rgba(0,0,0,.06) 0 2px 12px}.tf-v1-popover-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px}.tf-v1-popover-close{display:none}.tf-v1-popover-button{width:54px;height:54px;position:fixed;box-shadow:0 2px 12px rgba(0,0,0,.06),0 2px 4px rgba(0,0,0,.08);color:#fff;right:26px;bottom:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;background:#3a7685;line-height:0;border:none;padding:0}.tf-v1-popover-button-icon{width:54px;height:54px;font-size:24px;border-radius:50%;overflow:hidden;display:flex;justify-content:center;align-items:center}.tf-v1-popover-button-icon svg.default{margin-top:6px}.tf-v1-popover-button-icon svg,.tf-v1-popover-button-icon img{max-width:54px;max-height:54px}.tf-v1-popover-button-icon img{width:100%;height:100%;object-fit:cover;border-radius:50%}.tf-v1-popover-tooltip{position:fixed;right:94px;bottom:33px;max-width:240px;padding:10px 25px 10px 10px;border-radius:8px;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.08),0 2px 12px rgba(0,0,0,.06);font-size:14px;font-family:Helvetica,Arial,sans-serif;line-height:22px}.tf-v1-popover-tooltip::before{background-color:#fff;content:\"\";display:block;width:12px;height:12px;position:absolute;right:-4px;bottom:15px;transform:rotate(45deg);box-shadow:2px -2px 2px 0 rgba(0,0,0,.06)}.tf-v1-popover-tooltip-text{overflow:hidden}.tf-v1-popover-tooltip-close{cursor:pointer;margin-left:4px;display:inline-block;text-align:center;position:absolute;top:12px;right:6px}.tf-v1-popover-tooltip-close svg{width:20px;height:20px}.tf-v1-popover-tooltip-close svg path{fill:rgba(0,0,0,.2);transition:fill 150ms ease-in-out}.tf-v1-popover-tooltip-close:hover svg path{fill:rgba(0,0,0,.3)}.tf-v1-popover-tooltip.closing{transition:opacity .25s ease-in-out;opacity:0}.tf-v1-popover-unread-dot{width:8px;height:8px;border-radius:50%;background-color:#fa6b05;border:2px solid #fff;position:absolute;top:2px;right:2px}.tf-v1-popover-unread-dot.closing{transition:opacity .25s ease-in-out;opacity:0}.tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media(max-width: 480px){.tf-v1-popover.open{top:0;left:0;bottom:0;right:0;width:100% !important;height:100% !important}.tf-v1-popover.open .tf-v1-popover-close{display:block}.tf-v1-popover-wrapper{border-radius:0;box-shadow:none}.tf-v1-popover-wrapper iframe{border-radius:0}.tf-v1-popover-close{display:block;padding:0;margin:0;position:absolute;font-size:32px;font-weight:normal;line-height:24px;width:24px;height:24px;text-align:center;text-transform:none;cursor:pointer;opacity:.75;transition:opacity .25s ease-in-out;text-decoration:none;color:#000;top:6px;right:8px;background:none;border:none;border-radius:0}.tf-v1-popover-close:hover{opacity:1}.tf-v1-popover-close{display:none;z-index:1}}@media(max-width: 480px)and (min-width: 481px){.tf-v1-popover-close{color:#fff !important}}@media(max-width: 480px){.tf-v1-popover-button{width:44px;height:44px;right:8px;bottom:8px}.tf-v1-popover-button-icon{font-size:20px}.tf-v1-popover-button-icon svg{margin-top:4px;max-height:24px;max-width:24px}.tf-v1-popover-button-icon img{max-width:44px;max-height:44px}.tf-v1-popover-tooltip{position:fixed;right:66px;bottom:8px;left:auto;font-size:12px}.tf-v1-popover-tooltip::before{bottom:14px}.tf-v1-popover-unread-dot{top:0;right:0}.tf-v1-spinner{border:3px solid #aaa;font-size:32px;width:1em;height:1em;border-radius:.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-16px 0 0 -16px}}'},952:function(e){e.exports=function(){\"use strict\";var e={19:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},249:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},352:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.setAutoClose=t.DEFAULT_AUTO_CLOSE_TIME=void 0;var o=n(476);t.DEFAULT_AUTO_CLOSE_TIME=500,t.setAutoClose=function(e,n,r){n&&r&&window.addEventListener(\"message\",(0,o.getFormSubmitHandler)(e,function(){return setTimeout(r,(o=\"number\"==typeof(e=n)?e:0,Math.max(o,t.DEFAULT_AUTO_CLOSE_TIME)));var e,o}))}},476:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRedirectHandler=t.getThankYouScreenButtonClickHandler=t.getFormThemeHandler=t.getWelcomeScreenHiddenHandler=t.getDuplicateDetectedHandler=t.getFormSubmitHandler=t.getFormHeightChangedHandler=t.getFormQuestionChangedHandler=t.getFormStartedHandler=t.getFormReadyHandler=void 0;var r=n(1407);t.getFormReadyHandler=function(e,t){return a(\"form-ready\",e,t)},t.getFormStartedHandler=function(e,t){return a(\"form-started\",e,t)},t.getFormQuestionChangedHandler=function(e,t){return a(\"form-screen-changed\",e,t)},t.getFormHeightChangedHandler=function(e,t){return a(\"form-height-changed\",e,t)},t.getFormSubmitHandler=function(e,t){return a(\"form-submit\",e,t)},t.getDuplicateDetectedHandler=function(e,t){return a(\"duplicate-detected\",e,t)},t.getWelcomeScreenHiddenHandler=function(e,t){return a(\"welcome-screen-hidden\",e,t)},t.getFormThemeHandler=function(e,t){return a(\"form-theme\",e,t)},t.getThankYouScreenButtonClickHandler=function(e,t){return a(\"thank-you-screen-button-click\",e,t)},t.getRedirectHandler=function(e,t){return a([\"redirect-after-submit\",\"thank-you-screen-redirect\"],e,(0,r.handleFormRedirect)(t))};var i=function(e,t){return Array.isArray(e)?e.includes(t):e===t};function a(e,t,n){return function(r){var a=r.data,c=a.type,s=a.embedId,u=o(a,[\"type\",\"embedId\"]);i(e,c)&&s===t&&(null==n||n(u))}}},883:function(e,t){var n=this&&this.__awaiter||function(e,t,n,o){return new(n||(n=Promise))(function(r,i){function a(e){try{s(o.next(e))}catch(e){i(e)}}function c(e){try{s(o.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,c)}s((o=o.apply(e,t||[])).next())})},o=this&&this.__generator||function(e,t){var n,o,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},\"function\"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(c){return function(s){return function(c){if(n)throw new TypeError(\"Generator is already executing.\");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(n=1,o&&(r=2&c[0]?o.return:c[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,c[1])).done)return r;switch(o=0,r&&(c=[2&c[0],r.value]),c[0]){case 0:case 1:r=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,o=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!r||c[1]>r[0]&&c[1]<r[3])){a.label=c[1];break}if(6===c[0]&&a.label<r[1]){a.label=r[1],r=c;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(c);break}r[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],o=0}finally{n=r=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,s])}}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.dispatchCustomKeyEventFromIframe=t.removeCustomKeyboardListener=t.addCustomKeyboardListener=void 0;var r=\"Escape\",i=function(e,i){return n(void 0,void 0,void 0,function(){return o(this,function(n){return e.code===r&&\"function\"==typeof i&&(i(),(0,t.removeCustomKeyboardListener)()),[2]})})};t.addCustomKeyboardListener=function(e){return window.document.addEventListener(\"keydown\",function(t){return i(t,e)})},t.removeCustomKeyboardListener=function(){return window.document.removeEventListener(\"keydown\",i)},t.dispatchCustomKeyEventFromIframe=function(e){\"form-close\"===e.data.type&&window.document.dispatchEvent(new KeyboardEvent(\"keydown\",{code:r}))}},1179:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createPopover=void 0;var i=n(6517),a=n(6530),c=function(e,t){var n=e.parentNode;n&&(n.removeChild(e),n.appendChild(t))},s=function(e,t){void 0===e&&(e=\"span\"),void 0===t&&(t=\"tf-v1-popover-button-icon\");var n=document.createElement(e);return n.className=\"\".concat(t,\" tf-v1-close-icon\"),n.innerHTML=i.closeIconSvg,n.dataset.testid=t,n},u={buttonColor:\"#3a7685\"};t.createPopover=function(e,t){void 0===t&&(t={});var n,l,d,f=o(o({},u),t),p=f.domain,v=r(f,[\"domain\"]),m=(0,i.createIframe)(\"popover\",{formId:e,domain:p,options:v}),h=m.iframe,b=m.embedId,g=m.refresh,y=m.focus,w=function(e,t){var n=document.createElement(\"div\");return n.className=\"tf-v1-popover\",n.dataset.testid=\"tf-v1-popover\",(0,i.setElementSize)(n,{width:e,height:t})}(v.width,v.height),x=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-popover-wrapper\",e.dataset.testid=\"tf-v1-popover-wrapper\",e}(),_=function(e,t){var n=(0,i.getTextColor)(t),o=document.createElement(\"div\");o.className=\"tf-v1-popover-button-icon\";var r=(0,i.triggerIconSvg)(n),a=null==e?void 0:e.startsWith(\"http\");return o.innerHTML=a?\"<img alt='popover trigger icon button' src='\".concat(e,\"'/>\"):null!=e?e:r,o.dataset.testid=\"default-icon\",o}(v.customIcon,v.buttonColor||u.buttonColor),O=function(){var e=document.createElement(\"div\");e.className=\"tf-v1-spinner\";var t=document.createElement(\"div\");return t.className=\"tf-v1-popover-button-icon\",t.dataset.testid=\"spinner-icon\",t.append(e),t}(),E=s(),P=s(\"button\",\"tf-v1-popover-close\"),j=function(e,t){void 0===t&&(t={});var n=(0,i.getTextColor)(e),o=document.createElement(\"button\");return o.className=\"tf-v1-popover-button\",o.dataset.testid=\"tf-v1-popover-button\",o.style.backgroundColor=e,o.style.color=n,(0,i.addAttributesToElement)(o,t),o}(v.buttonColor||u.buttonColor,v.buttonProps);(v.container||document.body).append(w),x.append(h),w.append(j),w.append(P),j.append(_);var S=function(){l&&l.parentNode&&(l.classList.add(\"closing\"),setTimeout(function(){(0,i.unmountElement)(l)},250))};v.tooltip&&v.tooltip.length>0&&(l=function(e,t){var n=document.createElement(\"span\");n.className=\"tf-v1-popover-tooltip-close\",n.dataset.testid=\"tf-v1-popover-tooltip-close\",n.innerHTML=i.closeIconSvg,n.onclick=t;var o=document.createElement(\"div\");o.className=\"tf-v1-popover-tooltip-text\",o.innerHTML=e;var r=document.createElement(\"div\");return r.className=\"tf-v1-popover-tooltip\",r.dataset.testid=\"tf-v1-popover-tooltip\",r.appendChild(o),r.appendChild(n),r}(v.tooltip,S),w.append(l)),v.notificationDays&&(v.enableSandbox||(0,a.canBuildNotificationDot)(e))&&(d=(0,a.buildNotificationDot)(),j.append(d)),h.onload=function(e){(null==e?void 0:e.isTrusted)&&(w.classList.add(\"open\"),x.style.opacity=\"1\",P.style.opacity=\"1\",c(O,E),(0,i.addCustomKeyboardListener)(T))};var I=function(){(0,i.isOpen)(x)||(S(),d&&(d.classList.add(\"closing\"),v.notificationDays&&!v.enableSandbox&&(0,a.saveNotificationDotHideUntilTime)(e,v.notificationDays),setTimeout(function(){(0,i.unmountElement)(d)},250)),setTimeout(function(){(0,i.isInPage)(x)?(x.style.opacity=\"0\",P.style.opacity=\"0\",x.style.display=\"flex\",setTimeout(function(){w.classList.add(\"open\"),x.style.opacity=\"1\",P.style.opacity=\"1\"}),c(_,E)):(w.append(x),c(_,O),x.style.opacity=\"0\",P.style.opacity=\"0\")}))},T=function(){var n;(0,i.isOpen)(w)&&((0,i.handlePreventReopenOnClose)(v,e),null===(n=t.onClose)||void 0===n||n.call(t),setTimeout(function(){v.keepSession?x.style.display=\"none\":(0,i.unmountElement)(x),w.classList.remove(\"open\"),c(E,_)},250))};(0,i.setAutoClose)(b,v.autoClose,T);var M=function(){(0,i.isOpen)(x)?T():I()};return j.onclick=(0,i.invokeWithoutDefault)(M),P.onclick=(0,i.invokeWithoutDefault)(T),v.open&&!(0,i.isOpen)(x)&&(n=(0,i.handleCustomOpen)(I,v,e)),{open:I,close:T,toggle:M,refresh:g,focus:y,unmount:function(){(0,i.unmountElement)(w),v.open&&(null==n?void 0:n.remove)&&n.remove()}}}},1403:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.getTextColor=void 0;var o=n(6546);t.getTextColor=function(e){if(!e)return\"#FFFFFF\";var t=e.startsWith(\"#\")?(0,o.hexRgb)(e):function(e){var t={red:0,green:0,blue:0},n=e.match(/\\d+/g);return n&&(t.red=parseInt(n[0],10),t.green=parseInt(n[0],10),t.blue=parseInt(n[0],10)),t}(e),n=t.red,r=t.green,i=t.blue;return Math.round((299*n+587*r+114*i)/1e3)>150?\"#000000\":\"#FFFFFF\"}},1407:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.handleFormRedirect=void 0,t.handleFormRedirect=function(e){return function(t){var n,o,r=t.url,i=t.target;if(r)switch(void 0===i?\"_parent\":i){case\"_self\":e.src=(n=e.src,(o=r).includes(\"#\")&&o.startsWith(\"\".concat(n,\"#\"))?o.includes(\"?\")?o.replace(\"#\",\"&tf-embed-ts=\".concat(Date.now(),\"#\")):o.replace(\"#\",\"?tf-embed-ts=\".concat(Date.now(),\"#\")):o);break;case\"_blank\":window.open(r,\"_blank\");break;case\"_top\":var a=document.createElement(\"a\");a.href=r,a.target=\"_top\",document.body.appendChild(a),a.click(),document.body.removeChild(a);break;default:window.location.href=r}else console.error(\"Redirect failed, no URL provided\")}}},1706:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.lazyInitialize=void 0,t.lazyInitialize=function(e,t){var n=new IntersectionObserver(function(e){e.forEach(function(e){e.isIntersecting&&(t(),n.unobserve(e.target))})});n.observe(e)}},1915:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(3869),t),r(n(8885),t)},1947:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.refreshIframe=void 0,t.refreshIframe=function(e){if(e){var t=e.src;if(t.includes(\"&refresh\")){var n=t.split(\"&refresh#\");e.src=n.join(\"#\")}else(n=t.split(\"#\"))[0]=\"\".concat(n[0],\"&refresh\"),e.src=n.join(\"#\")}}},2114:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.sleep=void 0,t.sleep=function(e){return new Promise(function(t){return setTimeout(t,e)})}},2466:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.WIDGET_ATTRIBUTE=t.SLIDER_WIDTH=t.SLIDER_POSITION=t.SLIDER_ATTRIBUTE=t.SIDETAB_ATTRIBUTE=t.POPUP_SIZE=t.POPUP_ATTRIBUTE=t.POPOVER_ATTRIBUTE=t.LIVE_EMBED_DATA_REGION_EU=t.LIVE_EMBED_DATA_REGION_ATTRIBUTE=t.LIVE_EMBED_ATTRIBUTE=t.DEFAULT_EU_DOMAIN=t.DEFAULT_DOMAIN=void 0,t.DEFAULT_DOMAIN=\"form.typeform.com\",t.DEFAULT_EU_DOMAIN=\"form.typeform.eu\",t.LIVE_EMBED_ATTRIBUTE=\"data-tf-live\",t.LIVE_EMBED_DATA_REGION_ATTRIBUTE=\"data-tf-region\",t.LIVE_EMBED_DATA_REGION_EU=\"eu\",t.POPOVER_ATTRIBUTE=\"data-tf-popover\",t.POPUP_ATTRIBUTE=\"data-tf-popup\",t.POPUP_SIZE=100,t.SIDETAB_ATTRIBUTE=\"data-tf-sidetab\",t.SLIDER_ATTRIBUTE=\"data-tf-slider\",t.SLIDER_POSITION=\"right\",t.SLIDER_WIDTH=800,t.WIDGET_ATTRIBUTE=\"data-tf-widget\"},2588:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.overrideFullScreenStyles=void 0,t.overrideFullScreenStyles=function(e,t){Object.assign(e.style,{zIndex:\"10001\",position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"}),t.style.borderRadius=\"0\",Object.assign(document.body.style,{overflow:\"hidden\"})}},2689:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.isDefined=void 0,t.isDefined=function(e){return null!=e}},3106:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.handleCustomOpen=t.handlePreventReopenOnClose=void 0;var n={remove:function(){}};t.handlePreventReopenOnClose=function(e,t){e.preventReopenOnClose&&r(t)},t.handleCustomOpen=function(e,t,r){var i=t.open,a=t.openValue,c=t.preventReopenOnClose,s=function(e,t,n,r){return function(){var i,a;if(!(r&&o(t)||\"all\"===n&&(a=document.querySelector(\".tf-v1-popup, .tf-v1-slider, .tf-v1-popover-wrapper, .tf-v1-sidetab-wrapper\"),(null==a?void 0:a.offsetHeight)||(null==a?void 0:a.offsetWidth)||(null===(i=null==a?void 0:a.getClientRects())||void 0===i?void 0:i.length))||\"same\"===n&&function(e){var t=document.querySelectorAll(\".tf-v1-popup, .tf-v1-slider, .tf-v1-popover-wrapper, .tf-v1-sidetab-wrapper\");return Array.from(t).some(function(t){var n,o=null===(n=t.querySelector(\"iframe\"))||void 0===n?void 0:n.src;return(null==o?void 0:o.includes(\"typeform.com/to/\".concat(e)))||(null==o?void 0:o.startsWith(e))})}(t)))return e()}}(e,r,t.respectOpenModals,c);switch(i){case\"load\":return s(),n;case\"exit\":return a?function(e,t){var n=0,o=function(r){r.clientY<e&&r.clientY<n?(document.removeEventListener(\"mousemove\",o,!0),t()):n=r.clientY};return document.addEventListener(\"mousemove\",o,!0),{remove:function(){return document.removeEventListener(\"mousemove\",o,!0)}}}(a,s):n;case\"time\":return setTimeout(function(){s()},a),n;case\"scroll\":return a?function(e,t){function n(){var o=window.pageYOffset||document.documentElement.scrollTop,r=document.documentElement.clientTop||0,i=document.documentElement.scrollHeight,a=o-r,c=a/i*100,s=a+window.innerHeight>=i;(c>=e||s)&&(t(),document.removeEventListener(\"scroll\",n))}return document.addEventListener(\"scroll\",n),{remove:function(){return document.removeEventListener(\"scroll\",n)}}}(a,s):n;default:return n}};var o=function(e){return document.cookie.includes(\"tf-\".concat(e,\"-closed=true\"))},r=function(e){document.cookie=\"tf-\".concat(e,\"-closed=true;Path=/\")}},3124:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.setElementSize=t.getValueWithUnits=void 0,t.getValueWithUnits=function(e){return\"string\"!=typeof e||e.match(/^[0-9]+$/)?\"\".concat(e,\"px\"):e},t.setElementSize=function(e,n){var o=n.width,r=n.height;return o&&(e.style.width=(0,t.getValueWithUnits)(o)),r&&(e.style.height=(0,t.getValueWithUnits)(r)),e}},3542:function(e,t,n){var o=this&&this.__awaiter||function(e,t,n,o){return new(n||(n=Promise))(function(r,i){function a(e){try{s(o.next(e))}catch(e){i(e)}}function c(e){try{s(o.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,c)}s((o=o.apply(e,t||[])).next())})},r=this&&this.__generator||function(e,t){var n,o,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},\"function\"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(c){return function(s){return function(c){if(n)throw new TypeError(\"Generator is already executing.\");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(n=1,o&&(r=2&c[0]?o.return:c[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,c[1])).done)return r;switch(o=0,r&&(c=[2&c[0],r.value]),c[0]){case 0:case 1:r=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,o=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!r||c[1]>r[0]&&c[1]<r[3])){a.label=c[1];break}if(6===c[0]&&a.label<r[1]){a.label=r[1],r=c;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(c);break}r[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],o=0}finally{n=r=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,s])}}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.waitForHubspotCookie=t.getHubspotHiddenFields=t.getHubspotCookieValue=void 0;var i=n(2114);t.getHubspotCookieValue=function(){var e=document.cookie.match(new RegExp(\"(^| )\".concat(\"hubspotutk\",\"=([^;]+)\")));return e&&e[2]||void 0},t.getHubspotHiddenFields=function(){return{hubspot_page_name:document.title,hubspot_page_url:window.location.href,hubspot_utk:(0,t.getHubspotCookieValue)()}},t.waitForHubspotCookie=function(){return o(void 0,void 0,void 0,function(){var e,n;return r(this,function(o){switch(o.label){case 0:e=10,n=0,o.label=1;case 1:return!(0,t.getHubspotCookieValue)()&&n<e?[4,(0,i.sleep)(250)]:[3,4];case 2:o.sent(),o.label=3;case 3:return n++,[3,1];case 4:return[2]}})})}},3631:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.buildWidget=void 0;var o=n(6517);t.buildWidget=function(e,t,n){var r=document.createElement(\"div\");return r.className=\"tf-v1-widget\",r.dataset.testid=\"tf-v1-widget\",r.append(e),(0,o.setElementSize)(r,{width:t,height:n})}},3709:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},n.apply(this,arguments)};Object.defineProperty(t,\"__esModule\",{value:!0}),t.getTransitiveSearchParams=void 0,t.getTransitiveSearchParams=function(e){var t=new URL(window.location.href);return\"boolean\"==typeof e&&e?Object.fromEntries(t.searchParams.entries()):Array.isArray(e)&&e.length>0?e.reduce(function(e,o){var r,i=t.searchParams.get(o);return i?n(n({},e),((r={})[o]=i,r)):e},{}):{}}},3869:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createSlider=void 0;var r=n(6517),i=n(2466);t.createSlider=function(e,t){if(void 0===t&&(t={}),!(0,r.hasDom)())return{open:function(){},close:function(){},toggle:function(){},refresh:function(){},focus:function(){},unmount:function(){}};var n,a=t.position,c=void 0===a?i.SLIDER_POSITION:a,s=t.width,u=void 0===s?i.SLIDER_WIDTH:s,l=t.onClose,d=t.domain,f=o(t,[\"position\",\"width\",\"onClose\",\"domain\"]),p=(0,r.createIframe)(\"slider\",{formId:e,domain:d,options:f}),v=p.iframe,m=p.embedId,h=p.refresh,b=p.focus,g=document.body.style.overflow,y=function(e){var t=document.createElement(\"div\");return t.className=\"tf-v1-slider \".concat(e),t.dataset.testid=\"tf-v1-slider\",t.style.opacity=\"0\",t}(c),w=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-spinner\",e}(),x=function(e,t){var n=document.createElement(\"div\");return n.className=\"tf-v1-iframe-wrapper\",n.style[e]=\"-100%\",(0,r.setElementSize)(n,{width:t})}(c,u);x.append(v),y.append(w),y.append(x);var _=f.container||document.body;v.onload=function(e){(null==e?void 0:e.isTrusted)&&(x.style[c]=\"0\",setTimeout(function(){w.style.display=\"none\"},500),(0,r.addCustomKeyboardListener)(E))};var O=function(){(0,r.isOpen)(y)||((0,r.isInPage)(y)?(y.style.display=\"flex\",setTimeout(function(){x.style[c]=\"0\"})):(_.append(y),w.style.display=\"block\"),document.body.style.overflow=\"hidden\",setTimeout(function(){y.style.opacity=\"1\"}))},E=function(){(0,r.isOpen)(y)&&((0,r.handlePreventReopenOnClose)(f,e),null==l||l(),y.style.opacity=\"0\",x.style[c]=\"-100%\",document.body.style.overflow=g,setTimeout(function(){f.keepSession?y.style.display=\"none\":P()},500))};(0,r.setAutoClose)(m,f.autoClose,E),x.append(function(e){var t=document.createElement(\"button\");return t.className=\"tf-v1-close tf-v1-close-icon\",t.innerHTML=r.closeIconSvg,t.ariaLabel=\"Close\",t.onclick=(0,r.invokeWithoutDefault)(e),t}(E)),f.open&&!(0,r.isOpen)(y)&&(n=(0,r.handleCustomOpen)(O,f,e));var P=function(){(0,r.unmountElement)(y),f.open&&(null==n?void 0:n.remove)&&n.remove()};return{open:O,close:E,toggle:function(){(0,r.isOpen)(y)?E():O()},refresh:h,focus:b,unmount:P}}},4375:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.includeCss=void 0,t.includeCss=function(e){var t=function(e){return\"\".concat(\"https://embed.typeform.com/next/css/\").concat(e)}(e);if(!document.querySelector('link[href=\"'.concat(t,'\"]'))){var n=document.createElement(\"link\");n.rel=\"stylesheet\",n.href=t,document.head.append(n)}}},4424:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.invokeWithoutDefault=void 0,t.invokeWithoutDefault=function(e){return function(t){null==t||t.preventDefault(),e()}}},4471:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.setupGaInstance=t.sendGaIdMessage=void 0,t.sendGaIdMessage=function(e,t,n){var o={embedId:e,gaClientId:t};setTimeout(function(){n&&n.contentWindow&&n.contentWindow.postMessage({type:\"ga-client-id\",data:o},\"*\")},0)};var n=function(e){console.error(e)},o=function(e){n(\"Whoops! You enabled the shareGaInstance feature in your typeform embed but \".concat(e,\".\\n\\n\")+\"Make sure to include Google Analytics Javascript code before the Typeform Embed Javascript code in your page and use correct tracker ID.\\n\\nIt is also possible the Google Analytics was blocked by your adblock plugin.\")};t.setupGaInstance=function(e,r,i){var a=\"string\"==typeof i?i:void 0;if(window.gtag){if(a||(a=function(){if(window.dataLayer){var e=window.dataLayer.find(function(e){return e.length>1&&\"config\"===e[0]});return e&&e[1]}}()),!a)return void o(\"the tracking ID could not be retrieved\");var c=!1;window.gtag(\"get\",a,\"client_id\",function(n){c=!0,(0,t.sendGaIdMessage)(r,n,e)}),setTimeout(function(){c||o(\"the tracker with ID \".concat(a,\" was not found\"))},3e3)}else try{var s=function(e,t){return t?e.find(function(e){return e.get(\"trackingId\")===t}):e[0]}(window.ga.getAll(),a);s?(0,t.sendGaIdMessage)(r,s.get(\"clientId\"),e):o(\"the tracker with ID \".concat(a,\" was not found\"))}catch(e){o(\"the Google Analytics object was not found\"),n(e)}}},4948:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(4989),t),r(n(5981),t)},4976:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.closeIconSvg=void 0,t.closeIconSvg='<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4.293 4.293a1 1 0 0 1 1.414 0L12 10.586l6.293-6.293a1 1 0 1 1 1.414 1.414L13.414 12l6.293 6.293a1 1 0 0 1-1.414 1.414L12 13.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L10.586 12 4.293 5.707a1 1 0 0 1 0-1.414Z\" fill=\"currentColor\"/>\\n</svg>'},4989:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createSidetab=void 0;var i=n(6517),a={buttonColor:\"#3a7685\",buttonText:\"Launch me\"},c=function(e,t){void 0===e&&(e=\"div\"),void 0===t&&(t=\"tf-v1-sidetab-button-icon\");var n=document.createElement(e);return n.className=\"\".concat(t,\" tf-v1-close-icon\"),n.innerHTML=i.closeIconSvg,n.dataset.testid=t,n},s=function(e,t){var n=e.parentNode;n&&(n.removeChild(e),n.appendChild(t))};t.createSidetab=function(e,t){void 0===t&&(t={});var n,u=o(o({},a),t),l=u.domain,d=r(u,[\"domain\"]),f=(0,i.createIframe)(\"side-tab\",{formId:e,domain:l,options:d}),p=f.iframe,v=f.embedId,m=f.refresh,h=f.focus,b=function(e,t,n,o){var r=document.createElement(\"div\");return r.className=\"tf-v1-sidetab\",r.dataset.testid=\"tf-v1-sidetab\",(0,i.setElementSize)(r,{width:e,height:t}),void 0!==n?(r.style.top=\"calc(\".concat((0,i.getValueWithUnits)(n),\" + \").concat((0,i.getValueWithUnits)(t||580),\" / 2)\"),r.style.bottom=\"auto\"):void 0!==o&&(r.style.top=\"auto\",r.style.bottom=\"calc(\".concat((0,i.getValueWithUnits)(o),\" - \").concat((0,i.getValueWithUnits)(t||580),\" / 2)\")),r}(d.width,d.height,d.top,d.bottom),g=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-sidetab-wrapper\",e.dataset.testid=\"tf-v1-sidetab-wrapper\",e}(),y=function(){var e=document.createElement(\"div\");e.className=\"tf-v1-spinner\";var t=document.createElement(\"div\");return t.className=\"tf-v1-sidetab-button-icon\",t.dataset.testid=\"spinner-icon\",t.append(e),t}(),w=function(e){var t=e.backgroundColor,n=e.textColor,o=e.width,r=e.height,a=e.align,c=void 0===a?\"center\":a,s=e.buttonProps,u=void 0===s?{}:s,l=document.createElement(\"button\");return l.className=\"tf-v1-sidetab-button\",l.style.backgroundColor=t,l.style.color=n||(0,i.getTextColor)(t),(0,i.addAttributesToElement)(l,u),(0,i.setElementSize)(l,{width:o,height:r}),r&&(l.style.left=\"-\".concat((0,i.getValueWithUnits)(r))),\"top\"===c?(l.style.transform=\"rotate(-90deg) translateX(-100%)\",l.style.top=\"0\"):\"bottom\"===c&&(l.style.transform=\"rotate(-90deg) translateX(0)\",l.style.top=\"auto\",l.style.bottom=\"-\".concat((0,i.getValueWithUnits)(r||48))),l}({backgroundColor:d.buttonColor||a.buttonColor,textColor:d.buttonTextColor,width:d.buttonHeight,height:d.buttonWidth,align:d.buttonAlign,buttonProps:d.buttonProps}),x=function(e,t){var n=document.createElement(\"span\");return n.className=\"tf-v1-sidetab-button-text\",n.innerHTML=e,t&&(n.style.fontSize=(0,i.getValueWithUnits)(t)),n}(d.buttonText||a.buttonText,d.buttonTextSize),_=function(e,t,n,o){var r=n||(0,i.getTextColor)(t),a=document.createElement(\"div\");a.className=\"tf-v1-sidetab-button-icon\",o&&(a.style.width=(0,i.getValueWithUnits)(o),a.style.height=(0,i.getValueWithUnits)(o));var c=(0,i.triggerIconSvg)(r),s=null==e?void 0:e.startsWith(\"http\");return a.innerHTML=s?\"<img alt='popover trigger icon button' src='\".concat(e,\"'/>\"):null!=e?e:c,a.dataset.testid=\"default-icon\",a}(d.customIcon,d.buttonColor||a.buttonColor,d.buttonTextColor,d.buttonTextSize),O=c(),E=c(\"button\",\"tf-v1-sidetab-close\");(d.container||document.body).append(b),g.append(p),b.append(w),b.append(E),w.append(_),w.append(x),setTimeout(function(){b.classList.add(\"ready\")},250),p.onload=function(e){(null==e?void 0:e.isTrusted)&&(b.classList.add(\"open\"),s(y,O),(0,i.addCustomKeyboardListener)(j))};var P=function(){(0,i.isOpen)(g)||((0,i.isInPage)(g)?(g.style.display=\"flex\",b.classList.add(\"open\"),s(_,O)):(b.append(g),s(_,y)))},j=function(){var t;(0,i.isOpen)(g)&&((0,i.handlePreventReopenOnClose)(d,e),null===(t=d.onClose)||void 0===t||t.call(d),b.classList.remove(\"open\"),setTimeout(function(){d.keepSession?g.style.display=\"none\":(0,i.unmountElement)(g),s(O,_)},250))};(0,i.setAutoClose)(v,d.autoClose,j);var S=function(){(0,i.isOpen)(g)?j():P()};return w.onclick=(0,i.invokeWithoutDefault)(S),E.onclick=(0,i.invokeWithoutDefault)(j),d.open&&!(0,i.isOpen)(g)&&(n=(0,i.handleCustomOpen)(P,d,e)),{open:P,close:j,toggle:S,refresh:m,focus:h,unmount:function(){(0,i.unmountElement)(b),d.open&&(null==n?void 0:n.remove)&&n.remove()}}}},5330:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.isVisible=t.isInPage=t.isOpen=void 0,t.isOpen=function(e){return(0,t.isInPage)(e)&&(0,t.isVisible)(e)},t.isInPage=function(e){return!!e.parentNode},t.isVisible=function(e){return\"none\"!==e.style.display}},5363:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(1179),t),r(n(249),t)},5400:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.triggerIconSvg=void 0,t.triggerIconSvg=function(e){return'<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n <path\\n fill-rule=\"evenodd\"\\n clip-rule=\"evenodd\"\\n d=\"M2.002 5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6.697l-5.748 3.832A1 1 0 0 1 6.002 22v-3h-2a2 2 0 0 1-2-2V5Zm18 0h-16v12h3a1 1 0 0 1 1 1v2.131l4.445-2.963a1 1 0 0 1 .555-.168h7V5Z\"\\n fill='.concat(e,'\\n />\\n <path\\n fill-rule=\"evenodd\"\\n clip-rule=\"evenodd\"\\n d=\"M7.5 12.25a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Zm4.5 0a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Zm4.5 0a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Z\"\\n fill=').concat(e,\"\\n />\\n </svg>\")}},5981:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},6112:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.triggerIframeRedraw=void 0,t.triggerIframeRedraw=function(){this.style.transform=\"translateZ(0)\"}},6257:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createPopup=void 0;var r=n(6517),i=n(2466),a=n(6517);t.createPopup=function(e,t){if(void 0===t&&(t={}),!(0,r.hasDom)())return{open:function(){},close:function(){},toggle:function(){},refresh:function(){},focus:function(){},unmount:function(){}};var n,c=t.width,s=t.height,u=t.size,l=void 0===u?i.POPUP_SIZE:u,d=t.onClose,f=t.domain,p=o(t,[\"width\",\"height\",\"size\",\"onClose\",\"domain\"]),v=(0,r.createIframe)(\"popup\",{formId:e,domain:f,options:p}),m=v.iframe,h=v.embedId,b=v.refresh,g=v.focus,y=document.body.style.overflow,w=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-popup\",e.dataset.testid=\"tf-v1-popup\",e.style.opacity=\"0\",e}(),x=function(){var e=document.createElement(\"div\");return e.className=\"tf-v1-spinner\",e}(),_=function(e,t,n){var o=document.createElement(\"div\");return o.className=\"tf-v1-iframe-wrapper\",o.style.opacity=\"0\",(0,r.isDefined)(e)&&(0,r.isDefined)(t)?(0,r.setElementSize)(o,{width:e,height:t}):(o.style.width=\"calc(\".concat(n,\"% - 80px)\"),o.style.height=\"calc(\".concat(n,\"% - 80px)\"),o)}(c,s,l);_.append(m),w.append(x),w.append(_);var O=p.container||document.body;m.onload=function(e){(null==e?void 0:e.isTrusted)&&(_.style.opacity=\"1\",setTimeout(function(){x.style.display=\"none\"},250),(0,r.addCustomKeyboardListener)(P))};var E=function(){(0,a.isOpen)(w)||((0,a.isInPage)(w)?w.style.display=\"flex\":(x.style.display=\"block\",O.append(w)),document.body.style.overflow=\"hidden\",setTimeout(function(){w.style.opacity=\"1\"}))},P=function(){(0,a.isOpen)(w)&&((0,r.handlePreventReopenOnClose)(p,e),null==d||d(),w.style.opacity=\"0\",document.body.style.overflow=y,setTimeout(function(){p.keepSession?w.style.display=\"none\":j()},250))};_.append(function(e){var t=document.createElement(\"button\");return t.className=\"tf-v1-close tf-v1-close-icon\",t.innerHTML=r.closeIconSvg,t.ariaLabel=\"Close\",t.onclick=(0,r.invokeWithoutDefault)(e),t}(P)),(0,r.setAutoClose)(h,p.autoClose,P),p.open&&!(0,a.isOpen)(w)&&(n=(0,r.handleCustomOpen)(E,p,e));var j=function(){(0,r.unmountElement)(w),p.open&&(null==n?void 0:n.remove)&&n.remove()};return{open:E,close:P,toggle:function(){(0,a.isOpen)(w)?P():E()},refresh:b,focus:g,unmount:j}}},6419:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.changeColorOpacity=void 0,t.changeColorOpacity=function(e,t){return void 0===e&&(e=\"\"),void 0===t&&(t=255),e.startsWith(\"rgba(\")?null==e?void 0:e.replace(/, [\\d.]+\\)$/,\", \".concat(t,\")\")):e}},6517:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(7177),t),r(n(7677),t),r(n(9188),t),r(n(4375),t),r(n(2689),t),r(n(7917),t),r(n(8235),t),r(n(7853),t),r(n(3124),t),r(n(9556),t),r(n(3106),t),r(n(352),t),r(n(4471),t),r(n(1403),t),r(n(1706),t),r(n(5330),t),r(n(6419),t),r(n(3542),t),r(n(4424),t),r(n(9723),t),r(n(4976),t),r(n(5400),t)},6530:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},n.apply(this,arguments)};Object.defineProperty(t,\"__esModule\",{value:!0}),t.buildNotificationDot=t.canBuildNotificationDot=t.saveNotificationDotHideUntilTime=void 0;var o=\"tfNotificationData\",r=function(){var e=localStorage.getItem(o);return e?JSON.parse(e):{}},i=function(e){e&&localStorage.setItem(o,JSON.stringify(e))};t.saveNotificationDotHideUntilTime=function(e,t){var o,a=new Date;a.setDate(a.getDate()+t),i(n(n({},r()),((o={})[e]={hideUntilTime:a.getTime()},o)))},t.canBuildNotificationDot=function(e){var t=function(e){var t;return(null===(t=r()[e])||void 0===t?void 0:t.hideUntilTime)||0}(e);return(new Date).getTime()>t&&(t&&function(e){var t=r();delete t[e],i(t)}(e),!0)},t.buildNotificationDot=function(){var e=document.createElement(\"span\");return e.className=\"tf-v1-popover-unread-dot\",e.dataset.testid=\"tf-v1-popover-unread-dot\",e}},6546:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.hexRgb=void 0;var n=\"a-f\\\\d\",o=\"#?[\".concat(n,\"]{3}[\").concat(n,\"]?\"),r=\"#?[\".concat(n,\"]{6}([\").concat(n,\"]{2})?\"),i=new RegExp(\"[^#\".concat(n,\"]\"),\"gi\"),a=new RegExp(\"^\".concat(o,\"$|^\").concat(r,\"$\"),\"i\");t.hexRgb=function(e){if(\"string\"!=typeof e||i.test(e)||!a.test(e))throw new TypeError(\"Expected a valid hex string\");8===(e=e.replace(/^#/,\"\")).length&&(e=e.slice(0,6)),4===e.length&&(e=e.slice(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var t=Number.parseInt(e,16);return{red:t>>16,green:t>>8&255,blue:255&t}}},6932:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(6257),t),r(n(8625),t)},7121:function(e,t,n){var o=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n},r=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.createWidget=void 0;var i=n(6517),a=n(476),c=n(9586),s=n(2588);t.createWidget=function(e,t){if(!(0,i.hasDom)())return{refresh:function(){},focus:function(){},unmount:function(){}};var n=t.domain,u=o(t,[\"domain\"]);u.inlineOnMobile=t.inlineOnMobile||t.fullScreen;var l=document.body.style.overflow;u.inlineOnMobile||!u.forceTouch&&!(0,i.isFullscreen)()||(u.displayAsFullScreenModal=!0,u.forceTouch=!0,u.autoResize=!1);var d=(0,i.createIframe)(\"widget\",{formId:e,domain:n,options:u}),f=d.embedId,p=d.iframe,v=d.refresh,m=d.focus,h=(0,c.buildWidget)(p,u.width,u.height);if(u.fullScreen&&(0,s.overrideFullScreenStyles)(t.container,p),u.autoResize){var b=r(\"string\"==typeof u.autoResize?u.autoResize.split(\",\").map(function(e){return parseInt(e)}):[],2),g=b[0],y=b[1];window.addEventListener(\"message\",(0,a.getFormHeightChangedHandler)(f,function(e){var n=Math.max(e.height,g||0);y&&(n=Math.min(n,y)),t.container.style.height=\"\".concat(n,\"px\")}))}u.autoFocus&&window.addEventListener(\"message\",(0,a.getFormReadyHandler)(f,function(){setTimeout(function(){m()},1e3)}));var w,x=function(){return t.container.append(h)};if(t.container.innerHTML=\"\",t.lazy?(0,i.lazyInitialize)(t.container,x):x(),u.displayAsFullScreenModal){var _=\"\",O=t.container,E=O.style.height;window.addEventListener(\"message\",(0,a.getWelcomeScreenHiddenHandler)(f,function(){O.classList.add(\"tf-v1-widget-fullscreen\"),void 0!==t.opacity&&(O.style.backgroundColor=_)})),window.addEventListener(\"message\",(0,a.getFormThemeHandler)(f,function(e){var t;_=(0,i.changeColorOpacity)(null===(t=null==e?void 0:e.theme)||void 0===t?void 0:t.backgroundColor)}));var P=((w=document.createElement(\"button\")).className=\"tf-v1-widget-close tf-v1-close-icon\",w.innerHTML=\"×\",w.ariaLabel=\"Close\",w);P.onclick=(0,i.invokeWithoutDefault)(function(){var e;if(O.style.height=E,null===(e=t.onClose)||void 0===e||e.call(t),O.classList.remove(\"tf-v1-widget-fullscreen\"),O.style.backgroundColor=\"\",u.fullScreen&&(document.body.style.overflow=l),t.keepSession){var n=document.createElement(\"div\");n.className=\"tf-v1-widget-iframe-overlay\",n.onclick=function(){O.classList.add(\"tf-v1-widget-fullscreen\"),(0,i.unmountElement)(n)},h.append(n)}else t.container.innerHTML=\"\",x(),O.append(P)}),O.append(P)}return{refresh:v,focus:m,unmount:function(){(0,i.unmountElement)(h)}}}},7177:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.buildIframeSrc=void 0;var i=n(2466),a=n(7853),c=n(2689),s=n(3709),u=n(3542),l={widget:\"embed-widget\",popup:\"popup-blank\",slider:\"popup-drawer\",popover:\"popup-popover\",\"side-tab\":\"popup-side-panel\"};t.buildIframeSrc=function(e){var t=e.domain,n=e.formId,d=e.type,f=e.embedId,p=e.options,v=function(e,t,n){var r=n.transitiveSearchParams,i=n.source,a=n.medium,c=n.mediumVersion,u=n.hideFooter,d=n.hideHeaders,f=n.opacity,p=n.disableTracking,v=n.enableSandbox,m=n.shareGaInstance,h=n.forceTouch,b=n.displayAsFullScreenModal,g=n.tracking,y=n.redirectTarget,w=n.autoResize,x=n.disableScroll,_=n.onEndingButtonClick,O=n.noHeading,E=n.noScrollbars,P=(0,s.getTransitiveSearchParams)(r);return o(o(o({},{\"typeform-embed-id\":t,\"typeform-embed\":l[e],\"typeform-source\":i,\"typeform-medium\":a,\"typeform-medium-version\":c,\"embed-hide-footer\":u?\"true\":void 0,\"embed-hide-headers\":d?\"true\":void 0,\"embed-opacity\":f,\"disable-tracking\":p||v?\"true\":void 0,\"enable-sandbox\":v?\"true\":void 0,\"share-ga-instance\":m?\"true\":void 0,\"force-touch\":h?\"true\":void 0,\"add-placeholder-ws\":\"widget\"===e&&b?\"true\":void 0,\"typeform-embed-redirect-target\":y,\"typeform-embed-handles-redirect\":1,\"typeform-embed-auto-resize\":w?\"true\":void 0,\"typeform-embed-disable-scroll\":x?\"true\":void 0,\"typeform-embed-handle-ending-button-click\":_?\"true\":void 0,\"typeform-embed-no-heading\":O?\"true\":void 0,\"typeform-embed-no-scrollbars\":E?\"true\":void 0}),P),g)}(d,f,function(e){return e.noHeading||(e.noHeading=document.querySelectorAll(\"h1\").length>0),o(o({},{source:null===(t=null===window||void 0===window?void 0:window.location)||void 0===t?void 0:t.hostname.replace(/^www\\./,\"\"),medium:\"embed-sdk\",mediumVersion:\"next\"}),(0,a.removeUndefinedKeys)(e));var t}(p)),m=function(e,t,n){if(void 0===t&&(t=i.DEFAULT_DOMAIN),e.startsWith(\"http://\")||e.startsWith(\"https://\"))return new URL(e);var o=t!==i.DEFAULT_DOMAIN?t:function(e){return\"eu\"===e?i.DEFAULT_EU_DOMAIN:i.DEFAULT_DOMAIN}(n);return new URL(\"https://\".concat(o,\"/to/\").concat(e))}(n,t,null==p?void 0:p.region);if(Object.entries(v).filter(function(e){var t=r(e,2)[1];return(0,c.isDefined)(t)}).forEach(function(e){var t=r(e,2),n=t[0],o=t[1];m.searchParams.set(n,o)}),p.hubspot){var h=(0,u.getHubspotHiddenFields)();p.hidden=o(o({},p.hidden),h)}return m.hash=function(e,t){var n=new URLSearchParams;t.hidden&&Object.entries(t.hidden).filter(function(e){var t=r(e,2)[1];return(0,c.isDefined)(t)&&\"\"!==t}).forEach(function(o){var i=r(o,2),a=i[0],c=i[1];\"boolean\"==typeof t.transitiveSearchParams&&e.searchParams.delete(a),n.set(a,c)});var o=function(e){if(!e)return null;var t=Object.keys(e).at(0),n=t&&e[t]||void 0;return void 0===t||void 0===n?null:{key:\"answers-\".concat(t),value:n}}(t.preselect);if(o){var i=o.key,a=o.value;n.set(i,a)}return n.toString()}(m,p),m.href}},7677:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(9310),t),r(n(883),t)},7783:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(5363),t),r(n(6932),t),r(n(1915),t),r(n(9814),t),r(n(4948),t)},7853:function(e,t,n){var o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)},r=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeUndefinedKeys=void 0;var i=n(2689);t.removeUndefinedKeys=function(e){return Object.entries(e).filter(function(e){var t=r(e,2)[1];return(0,i.isDefined)(t)}).reduce(function(e,t){var n,i=r(t,2),a=i[0],c=i[1];return o(o({},e),((n={})[a]=c,n))},{})}},7917:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},n.apply(this,arguments)},o=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.loadOptionsFromAttributes=t.transformAttributeValue=t.camelCaseToKebabCase=void 0,t.camelCaseToKebabCase=function(e){return e.split(\"\").map(function(e,t){return e.toUpperCase()===e?\"\".concat(0!==t?\"-\":\"\").concat(e.toLowerCase()):e}).join(\"\")};var r=function(e){return e||void 0},i=function(e){if(null!==e)return\"\"===e||\"yes\"===e||\"true\"===e},a=function(e){var t=e?parseInt(e,10):NaN;return isNaN(t)?void 0:t},c=\"%ESCAPED_COMMA%\",s=function(e){if(e)return e.replace(/\\s/g,\"\").replace(/\\\\,/g,c).split(\",\").filter(function(e){return!!e}).map(function(e){return e.replace(c,\",\")})};t.transformAttributeValue=function(e,t){var u,l,d;switch(t){case\"string\":return r(e);case\"boolean\":return i(e);case\"integer\":return a(e);case\"function\":return function(e){var t=e&&e in window?window[e]:void 0;return\"function\"==typeof t?t:void 0}(e);case\"array\":return s(e);case\"record\":return function(e){if(e)return e.replace(/\\\\,/g,c).split(\",\").filter(function(e){return!!e}).map(function(e){return e.replace(c,\",\")}).reduce(function(e,t){var r,i=t.match(/^([^=]+)=(.*)$/);if(i){var a=o(i,3),c=a[1],s=a[2];return n(n({},e),((r={})[c.trim()]=s,r))}return e},{})}(e);case\"integerOrString\":return function(e){if(e)return e.match(/^[0-9]+$/)?a(e):r(e)}(e);case\"integerOrBoolean\":return null!==(u=a(e))&&void 0!==u?u:i(e);case\"stringOrBoolean\":return null!==(l=r(e))&&void 0!==l?l:i(e);case\"arrayOrBoolean\":return null!==(d=s(e))&&void 0!==d?d:i(e);default:throw new Error(\"Invalid attribute transformation \".concat(t))}},t.loadOptionsFromAttributes=function(e,o){return Object.keys(o).reduce(function(r,i){var a;return n(n({},r),((a={})[i]=(0,t.transformAttributeValue)(e.getAttribute(\"data-tf-\".concat((0,t.camelCaseToKebabCase)(i))),o[i]),a))},{})}},8235:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.isFullscreen=t.isMobile=t.isBigScreen=void 0,t.isBigScreen=function(){return window.screen.width>=1024&&window.screen.height>=768},t.isMobile=function(){return/mobile|tablet|android/i.test(navigator.userAgent.toLowerCase())},t.isFullscreen=function(){return(0,t.isMobile)()&&!(0,t.isBigScreen)()}},8625:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},8885:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0})},9188:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.hasDom=void 0,t.hasDom=function(){return\"undefined\"!=typeof document&&\"undefined\"!=typeof window}},9310:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.createIframe=void 0;var o=n(7177),r=n(6517),i=n(9590),a=n(476),c=n(6112),s=n(883),u=n(1947);t.createIframe=function(e,t){var n=t.formId,l=t.domain,d=t.options,f=(0,i.generateEmbedId)(),p=d.iframeProps,v=void 0===p?{}:p,m=d.onReady,h=d.onStarted,b=d.onQuestionChanged,g=d.onHeightChanged,y=d.onSubmit,w=d.onEndingButtonClick,x=d.onDuplicateDetected,_=d.shareGaInstance,O=(0,o.buildIframeSrc)({formId:n,domain:l,embedId:f,type:e,options:d}),E=document.createElement(\"iframe\");return E.src=O,E.dataset.testid=\"iframe\",E.style.border=\"0px\",E.allow=\"microphone; camera\",(0,r.addAttributesToElement)(E,v),E.addEventListener(\"load\",c.triggerIframeRedraw,{once:!0}),window.addEventListener(\"message\",(0,a.getFormReadyHandler)(f,m)),window.addEventListener(\"message\",(0,a.getFormStartedHandler)(f,h)),window.addEventListener(\"message\",(0,a.getFormQuestionChangedHandler)(f,b)),window.addEventListener(\"message\",(0,a.getFormHeightChangedHandler)(f,g)),window.addEventListener(\"message\",(0,a.getFormSubmitHandler)(f,y)),window.addEventListener(\"message\",(0,a.getFormThemeHandler)(f,function(e){var t;if(null==e?void 0:e.theme){var n=document.querySelector(\".tf-v1-close-icon\");n&&(n.style.color=null===(t=e.theme)||void 0===t?void 0:t.color)}})),window.addEventListener(\"message\",(0,a.getThankYouScreenButtonClickHandler)(f,w)),window.addEventListener(\"message\",(0,a.getRedirectHandler)(f,E)),window.addEventListener(\"message\",(0,a.getDuplicateDetectedHandler)(f,x)),\"widget\"!==e&&window.addEventListener(\"message\",s.dispatchCustomKeyEventFromIframe),_&&window.addEventListener(\"message\",(0,a.getFormReadyHandler)(f,function(){(0,r.setupGaInstance)(E,f,_)})),{iframe:E,embedId:f,refresh:function(){return(0,u.refreshIframe)(E)},focus:function(){var e;null===(e=E.contentWindow)||void 0===e||e.postMessage(\"embed-focus\",\"*\")}}}},9556:function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.unmountElement=void 0,t.unmountElement=function(e){var t;null===(t=e.parentNode)||void 0===t||t.removeChild(e)}},9586:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(3631),t)},9590:function(e,t){var n=this&&this.__read||function(e,t){var n=\"function\"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a};Object.defineProperty(t,\"__esModule\",{value:!0}),t.generateEmbedId=void 0,t.generateEmbedId=function(){var e=Math.random();return n(String(e).split(\".\"),2)[1]}},9723:function(e,t,n){Object.defineProperty(t,\"__esModule\",{value:!0}),t.addAttributesToElement=void 0;var o=n(7917);t.addAttributesToElement=function(e,t){void 0===t&&(t={}),Object.keys(t).forEach(function(n){e.setAttribute((0,o.camelCaseToKebabCase)(n),t[n])})}},9814:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!(\"get\"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)\"default\"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,\"__esModule\",{value:!0}),r(n(7121),t),r(n(19),t)}},t={};return function n(o){var r=t[o];if(void 0!==r)return r.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,n),i.exports}(7783)}()}},n={};function o(e){var r=n[e];if(void 0!==r)return r.exports;var i=n[e]={exports:{}};return t[e].call(i.exports,i,i.exports,o),i.exports}o.g=function(){if(\"object\"==typeof globalThis)return globalThis;try{return this||new Function(\"return this\")()}catch(e){if(\"object\"==typeof window)return window}}(),o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})};var r={};return function(){\"use strict\";var e=r;Object.defineProperty(e,\"__esModule\",{value:!0}),e.Sidetab=e.Popover=e.SliderButton=e.PopupButton=e.Widget=void 0;var t=o(952),n=o(240),i=o(517);e.Widget=(0,i.memoComponent)(n.Widget),e.PopupButton=(0,i.memoComponent)((0,n.makeButtonComponent)(t.createPopup,\"popup\")),e.SliderButton=(0,i.memoComponent)((0,n.makeButtonComponent)(t.createSlider,\"slider\")),e.Popover=(0,i.memoComponent)((0,n.makeInitializerComponent)(t.createPopover,\"popover\")),e.Sidetab=(0,i.memoComponent)((0,n.makeInitializerComponent)(t.createSidetab,\"sidetab\"))}(),r}()});","export const wrapper = `\n z-30 shadow-lg\n absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2\n w-5/6 sm:w-1/2 h-5/6 sm:h-3/4\n rounded-lg\n`;\n\nexport const container = `\n w-full h-full\n rounded-lg overflow-hidden\n`;\n\nexport const dismissButton = `\n absolute -top-3 -right-3 z-40\n w-8 h-8 rounded-full\n bg-white text-gray-700 shadow-md\n border border-gray-200\n flex items-center justify-center\n hover:bg-gray-50\n`;\n\nexport const dismissIcon = `\n w-4 h-4\n`;\n","import React from \"react\";\n\nimport { Widget } from \"@typeform/embed-react\";\nimport { XIcon } from \"@phosphor-icons/react\";\n\nimport * as styles from \"./styles\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nexport function Survey({ surveyId }: { surveyId: string }) {\n const { showSurvey, handleDismiss } = useSurveyTrigger();\n\n if (!showSurvey) {\n return null;\n }\n\n return (\n <div className={styles.wrapper}>\n <button\n type=\"button\"\n data-testid=\"survey-dismiss-button\"\n aria-label=\"Dismiss survey\"\n className={styles.dismissButton}\n onClick={handleDismiss}\n >\n <XIcon weight=\"bold\" className={styles.dismissIcon} />\n </button>\n\n <Widget\n id={surveyId}\n className={styles.container}\n onClose={handleDismiss}\n onSubmit={handleDismiss}\n />\n </div>\n );\n}\n","import React, { useMemo } from \"react\";\n\nimport { LocalLogicMap, type Source, type LayerType } from \"@local-logic/maps\";\n\nimport type { School } from \"@local-logic/client\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nimport { DIRECTIONS_PATH_COLOR } from \"~/sdks/LocalContent/constants\";\n\nexport function Layers() {\n const { activeCategoryData, activeMarkerDetails, commuteData } =\n useLocalContent();\n\n const schoolLayerSources = useMemo(() => {\n const activeSchoolMarkerDetails = activeMarkerDetails as School;\n if (\n typeof activeSchoolMarkerDetails?.catchments === \"undefined\" ||\n activeSchoolMarkerDetails.catchments?.length === 0\n ) {\n return undefined;\n }\n\n const sources: Source[] = [];\n\n activeSchoolMarkerDetails.catchments.forEach(\n (catchment, catchmentIndex) => {\n if (\n typeof catchment.geometry !== \"undefined\" &&\n catchment.geometry.length > 0\n ) {\n catchment.geometry.forEach((geometry, geomIndex) => {\n sources.push({\n key: `school-catchment-${catchmentIndex}-geom-${geomIndex}`,\n layer: [\n {\n type: \"fill\" as LayerType,\n color: activeCategoryData?.colors?.fill || \"#008491\",\n },\n {\n type: \"line\" as LayerType,\n color: activeCategoryData?.colors?.fill || \"#008491\",\n },\n ],\n geometry: [geometry],\n });\n });\n }\n },\n );\n\n return sources;\n }, [activeMarkerDetails, activeCategoryData]);\n\n const routeSources = useMemo(() => {\n if (\n !commuteData ||\n typeof commuteData.geometry === \"undefined\" ||\n commuteData.geometry?.length === 0\n ) {\n return undefined;\n }\n\n const sources: Source[] = [];\n\n sources.push({\n key: \"commute-route\",\n type: \"LineString\",\n layer: [\n {\n type: \"line\" as LayerType,\n color: DIRECTIONS_PATH_COLOR,\n },\n ],\n geometry: commuteData.geometry,\n });\n\n return sources;\n }, [commuteData, activeCategoryData]);\n\n return (\n <>\n <LocalLogicMap.Layers sources={schoolLayerSources} />\n <LocalLogicMap.Layers sources={routeSources} />\n </>\n );\n}\n","import React, { useMemo } from \"react\";\n\nimport { LocalLogicMap, type Marker } from \"@local-logic/maps\";\nimport { useTracking } from \"~/tracking\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport { getIdFromMarker } from \"~/utils/map/getIdFromMarker\";\n\nimport { iconsDeprecated as icons } from \"~/components/PoiIcon\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nexport function Markers() {\n const tracking = useTracking();\n const {\n isLoading,\n activeScore,\n activeCategoryData,\n selectedPoiSubcategory,\n isMarkersLoading,\n markersData,\n commuteData,\n handleMarkerClick,\n } = useLocalContent();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n\n const markers = useMemo(() => {\n if (\n selectedPoiSubcategory === null ||\n isMarkersLoading ||\n typeof markersData === \"undefined\" ||\n typeof markersData[selectedPoiSubcategory] === \"undefined\"\n ) {\n return [];\n }\n\n return markersData[selectedPoiSubcategory].map(\n (marker) =>\n ({\n id: getIdFromMarker(marker.lat, marker.lng, marker.name),\n latitude: marker.lat,\n longitude: marker.lng,\n name: marker.name,\n icon: icons[selectedPoiSubcategory],\n }) as Marker,\n );\n }, [selectedPoiSubcategory, isMarkersLoading, markersData]);\n\n const commuteMarkers = useMemo(() => {\n if (commuteData === null) {\n return [];\n }\n\n if (\n markers.find(\n (marker) =>\n marker.latitude === commuteData.destination.lat &&\n marker.longitude === commuteData.destination.lng,\n )\n ) {\n return [];\n }\n\n return [\n {\n id: \"commute-destination\",\n latitude: commuteData.destination.lat,\n longitude: commuteData.destination.lng,\n name: commuteData.label,\n icon: icons.other as Marker[\"icon\"],\n defaultColor: true,\n disableClick: true,\n },\n ];\n }, [markers, commuteData]);\n\n const combinedMarkers = useMemo(\n () => [...markers, ...commuteMarkers],\n [markers, commuteMarkers],\n );\n\n /**\n * Handles clicking on a map marker. This includes both single markers and cluster markers.\n *\n * @param marker\n * @returns\n */\n const handleMapMarkerClick = (\n marker: Parameters<typeof handleMarkerClick>[0],\n ) => {\n handleMarkerClick(marker);\n handleAddSessionTriggerCount();\n\n if (!activeScore || !selectedPoiSubcategory || !marker) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category: selectedPoiSubcategory,\n };\n\n if (marker.markers.length > 1) {\n eventAttributes.latitude = marker.latitude;\n eventAttributes.longitude = marker.longitude;\n eventAttributes.clusterSize = marker.markers.length;\n eventAttributes.isCluster = true;\n } else if (marker.markers.length === 1) {\n Object.entries(marker.markers[0]).forEach(([key, value]) => {\n if (\n typeof value === \"boolean\" ||\n typeof value === \"string\" ||\n typeof value === \"number\"\n ) {\n // Remove sdk id before sending to tracking\n if (key === \"id\") {\n return;\n }\n eventAttributes[key] = value;\n }\n });\n }\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_SELECTED,\n eventAttributes,\n });\n };\n\n return (\n <LocalLogicMap.Markers\n isLoading={isLoading}\n markers={combinedMarkers}\n colors={activeCategoryData?.colors}\n clusterIcon={\n (selectedPoiSubcategory\n ? icons[selectedPoiSubcategory]\n : undefined) as Marker[\"icon\"]\n }\n onClick={handleMapMarkerClick}\n />\n );\n}\n","export const container = `\n max-sm:[&>#center-pin-background]:text-primary-50\n`;\n","import React from \"react\";\n\nimport { LocalLogicMap } from \"@local-logic/maps\";\n\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function CenterPin() {\n const { centerMarker } = useLocalContent();\n\n if (!centerMarker) {\n return null;\n }\n\n return (\n <LocalLogicMap.CenterPin\n className={styles.container}\n marker={{\n id: \"local-content-center-pin\",\n latitude: centerMarker.lat,\n longitude: centerMarker.lng,\n name: centerMarker.addressLabel || \"Center Pin\",\n }}\n />\n );\n}\n","export const container = `flex flex-col gap-3 text-xs text-gray-800 font-medium`;\nexport const loading = `h-5 w-20 bg-gray-200 animate-pulse rounded-md`;\nexport const button = `p-0 text-xs h-auto w-auto justify-start cursor-pointer`;\n","import React, { useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { Button } from \"@local-logic/design-system\";\n\nimport * as styles from \"./styles\";\nimport type { TravelMode } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nexport function Commute({\n isLoading = false,\n commuteType,\n durationInSeconds,\n onCalculateCommute,\n}: {\n isLoading?: boolean;\n commuteType: TravelMode;\n durationInSeconds?: number;\n onCalculateCommute?: () => void;\n}) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n\n const durationString = useMemo(() => {\n if (!durationInSeconds) return null;\n\n const hours = Math.floor(durationInSeconds / 60 / 60);\n const minutes = Math.floor((durationInSeconds / 60) % 60);\n\n const minutesString = `${minutes} ${t(\"common:time.minute\", { count: minutes })}`;\n\n if (hours === 0) {\n return minutesString;\n }\n\n return `${hours} ${t(\"common:time.hour\", { count: hours })} ${minutesString}`;\n }, [durationInSeconds, t]);\n\n const travelTimeString = useMemo(() => {\n if (!durationString) return \"\";\n\n return `${durationString} ${t(`commute.travelTypes.${commuteType}`)}`;\n }, [durationString, commuteType, t]);\n\n if (!isLoading && typeof durationInSeconds === \"undefined\") {\n return null;\n }\n\n return (\n <div className={styles.container}>\n {isLoading && (\n <div\n data-testid=\"poi-popup-commute-loading\"\n className={styles.loading}\n ></div>\n )}\n {!isLoading && durationString && (\n <p\n data-testid=\"poi-popup-commute-duration\"\n aria-label={travelTimeString}\n >\n {travelTimeString.toLowerCase()}\n </p>\n )}\n {onCalculateCommute && (\n <Button\n data-testid=\"poi-popup-view-route-button\"\n className={styles.button}\n onClick={onCalculateCommute}\n variant=\"ghost\"\n isDisabled={isLoading}\n >\n {t(\"commute.viewRoute\")}\n </Button>\n )}\n </div>\n );\n}\n","import React, { useMemo } from \"react\";\n\nimport {\n LocalLogicMap,\n type Marker,\n type MarkerPoint,\n} from \"@local-logic/maps\";\nimport { Commute } from \"./Commute\";\nimport { useTracking } from \"~/tracking\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useCommute } from \"~/sdks/LocalContent/hooks/useCommute\";\n\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { DEFAULT_TRAVEL_MODE } from \"~/sdks/LocalContent/constants\";\n\nimport { ClusterPopupContent } from \"~/components/map/ClusterPopupContent\";\nimport { POIPopupContent } from \"~/components/map/POIPopupContent\";\n\nexport function Popup() {\n const tracking = useTracking();\n const {\n commuteOptions,\n distanceUnit,\n activeScore,\n centerMarker,\n location,\n locale,\n selectedPoiSubcategory,\n activeMarker,\n activeMarkerDetails,\n handleMarkerClick,\n handleCalculateCommute,\n showSchoolRatings,\n } = useLocalContent();\n\n const { data, isLoading } = useCommute({\n mode: commuteOptions.commuteType,\n locale,\n units: distanceUnit,\n origin:\n location?.lat && location?.lng\n ? {\n lat: location.lat,\n lng: location.lng,\n }\n : undefined,\n destination:\n typeof centerMarker !== \"undefined\" &&\n activeMarkerDetails?.lat &&\n activeMarkerDetails?.lng\n ? {\n lat: activeMarkerDetails.lat,\n lng: activeMarkerDetails.lng,\n }\n : undefined,\n });\n\n const commuteTime = useMemo(() => {\n if (!data || isLoading) return undefined;\n\n return data.duration;\n }, [data?.mode, data?.duration, isLoading]);\n\n /**\n * Handles selecting a marker from within a cluster popup.\n *\n * @param marker\n * @returns\n */\n const handleClusterMarkerSelected = (marker: Marker) => {\n handleMarkerClick({\n id: marker.id,\n latitude: marker.latitude,\n longitude: marker.longitude,\n markers: [marker],\n } as MarkerPoint);\n\n if (!activeScore || !selectedPoiSubcategory) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category: selectedPoiSubcategory,\n };\n\n Object.entries(marker).forEach(([key, value]) => {\n if (\n typeof value === \"boolean\" ||\n typeof value === \"string\" ||\n typeof value === \"number\"\n ) {\n // Remove sdk id before sending to tracking\n if (key === \"id\") {\n return;\n }\n eventAttributes[key] = value;\n }\n });\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_SELECTED_FROM_CLUSTER,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_SELECTED_FROM_CLUSTER,\n eventAttributes,\n });\n };\n\n const handleLinkClick = (url: string) => {\n if (!selectedPoiSubcategory || !activeMarkerDetails) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n category: selectedPoiSubcategory,\n };\n\n Object.entries(activeMarkerDetails).forEach(([key, value]) => {\n if (\n typeof value === \"boolean\" ||\n typeof value === \"string\" ||\n typeof value === \"number\"\n ) {\n eventAttributes[key] = value;\n }\n });\n eventAttributes.clickedUrl = url;\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_POPUP_LINK_CLICKED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_POPUP_LINK_CLICKED,\n eventAttributes,\n });\n };\n\n const handleOnViewRoute = () => {\n if (\n !activeMarkerDetails ||\n !activeScore ||\n !selectedPoiSubcategory ||\n !activeMarker\n ) {\n return;\n }\n\n const requestOptions = {\n commuteType: commuteOptions.commuteType,\n label: activeMarkerDetails?.address || activeMarkerDetails?.name,\n destination: {\n lat: activeMarkerDetails?.lat || 0,\n lng: activeMarkerDetails?.lng || 0,\n },\n };\n\n handleCalculateCommute(requestOptions);\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category: selectedPoiSubcategory,\n destinationLat: requestOptions.destination.lat,\n destinationLng: requestOptions.destination.lng,\n label: requestOptions.label,\n name: activeMarkerDetails?.name || \"\",\n mode: requestOptions.commuteType as string,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.MAP_POI_VIEW_ROUTE,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.MAP_POI_VIEW_ROUTE,\n eventAttributes,\n });\n };\n\n return (\n <LocalLogicMap.Popup\n latitude={activeMarker?.latitude}\n longitude={activeMarker?.longitude}\n onClose={() => handleMarkerClick(undefined)}\n >\n <ClusterPopupContent\n activeMarker={activeMarker}\n onMarkerSelected={handleClusterMarkerSelected}\n onClose={handleMarkerClick}\n />\n <POIPopupContent\n marker={activeMarkerDetails}\n poiCategory={selectedPoiSubcategory}\n onLocationLinkClick={handleLinkClick}\n onSchoolLinkClick={handleLinkClick}\n onClose={handleMarkerClick}\n showSchoolRatings={showSchoolRatings}\n >\n <Commute\n isLoading={isLoading}\n commuteType={commuteOptions.commuteType || DEFAULT_TRAVEL_MODE}\n durationInSeconds={commuteTime}\n onCalculateCommute={handleOnViewRoute}\n />\n </POIPopupContent>\n </LocalLogicMap.Popup>\n );\n}\n","export const container = `relative w-full overflow-hidden grow`;\n","import React, { useMemo } from \"react\";\n\nimport \"@local-logic/maps/style.css\";\n\nimport { LocalLogicMap } from \"@local-logic/maps\";\n\nimport { Survey } from \"../Survey\";\nimport { Layers } from \"./Layers\";\nimport { Markers } from \"./Markers\";\nimport { CenterPin } from \"./CenterPin\";\nimport { Popup } from \"./Popup\";\n\nimport * as styles from \"./styles\";\nimport { getMapProviderConfig } from \"~/utils/map/getMapProviderConfig\";\nimport { PaddingDebug } from \"~/components/map/PaddingDebug\";\nimport {\n SURVEY_ID,\n DEFAULT_MIN_ZOOM,\n DEFAULT_MAX_ZOOM,\n MAP_PADDING,\n LAYOUT_MEASUREMENTS,\n} from \"~/sdks/LocalContent/constants\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function Map({\n children,\n ...rest\n}: {\n children?: React.ReactNode;\n} & React.HTMLAttributes<HTMLDivElement>) {\n const breakpoints = useResponsiveBreakpoints();\n const {\n activeCategory,\n activeScore,\n isCommuteCalculatorOpen,\n isSidebarExpanded,\n location,\n locale,\n map,\n activeMarker,\n commuteData,\n } = useLocalContent();\n\n const mapProviderConfig = useMemo(\n () =>\n getMapProviderConfig(\n map.mapProvider?.name,\n map.mapProvider?.key,\n map.mapProvider?.theme,\n ),\n [map.mapProvider?.name, map.mapProvider?.key, map.mapProvider?.theme],\n );\n\n const mapPadding = useMemo(() => {\n const padding = breakpoints.sm ? MAP_PADDING.desktop : MAP_PADDING.mobile;\n\n // Making sure we don't override reference values\n let { top, bottom, left } = padding;\n\n if (breakpoints.sm) {\n // Desktop\n\n if (!isSidebarExpanded) {\n left -= LAYOUT_MEASUREMENTS.SIDEBAR_STATE_WIDTH_DIFFERENCE;\n }\n\n if (isCommuteCalculatorOpen && !commuteData) {\n top += LAYOUT_MEASUREMENTS.COMMUTE_CALCULATOR_NO_ROUTE_HEIGHT_DESKTOP;\n }\n\n if (isCommuteCalculatorOpen && commuteData) {\n top += LAYOUT_MEASUREMENTS.COMMUTE_CALCULATOR_WITH_ROUTE_HEIGHT_DESKTOP;\n }\n } else {\n // Mobile\n\n if (activeCategory) {\n top += LAYOUT_MEASUREMENTS.SCORE_BUTTONS_HEIGHT_MOBILE;\n }\n\n if (activeScore && !isCommuteCalculatorOpen) {\n // While the details slider can be expanded, we're not going to adjust the\n // value since the popup opens up\n bottom = LAYOUT_MEASUREMENTS.SCORE_DETAILS_HEIGHT_MOBILE;\n }\n\n if (isCommuteCalculatorOpen) {\n bottom = LAYOUT_MEASUREMENTS.COMMUTE_CALCULATOR_HEIGHT_MOBILE;\n }\n }\n\n return {\n ...padding,\n top,\n bottom,\n left,\n };\n }, [\n breakpoints.sm,\n isCommuteCalculatorOpen,\n activeCategory,\n activeScore,\n isSidebarExpanded,\n commuteData,\n ]);\n\n // If location is not set or invalid, return a message\n // lat and lng values of 0 are considered invalid for this context\n if (!location || !location.lat || !location.lng) {\n return <div className={styles.container}>Location not set</div>;\n }\n\n return (\n <div className={styles.container} {...rest}>\n <LocalLogicMap.Root\n mapProvider={mapProviderConfig}\n locale={locale}\n mapPadding={mapPadding}\n center={{ latitude: location.lat, longitude: location.lng }}\n zoom={map.zoom}\n minZoom={DEFAULT_MIN_ZOOM}\n maxZoom={DEFAULT_MAX_ZOOM}\n zoomPosition={breakpoints.sm ? \"bottom-right\" : undefined}\n pitch={map.pitch}\n bearing={map.bearing}\n cooperativeGestures={map.cooperativeGestures}\n activeMarker={activeMarker}\n >\n <LocalLogicMap.BaseMap>\n <Layers />\n <Markers />\n <CenterPin />\n <Popup />\n </LocalLogicMap.BaseMap>\n </LocalLogicMap.Root>\n\n {import.meta.env.VITE_MAP_PADDING_DEBUG === \"true\" && (\n <PaddingDebug mapPadding={mapPadding} />\n )}\n\n {children}\n\n <Survey surveyId={SURVEY_ID} />\n </div>\n );\n}\n","export const container = `\n group/sidebar flex flex-col z-10\n bg-base-white rounded\n overflow-hidden max-h-[calc(100vh-72px)] min-h-96\n absolute top-3 left-3\n w-full max-w-72 shadow-3sm\n transition-all duration-150 ease-in-out\n\n data-[is-expanded=false]:w-14\n\n hover:data-[is-expanded=false]:w-16\n hover:data-[is-expanded=false]:cursor-pointer\n`;\n","import React, { useContext } from \"react\";\n\nimport type { RootProps } from \"./types\";\n\nimport * as styles from \"./styles\";\n\nexport type DefaultContext = {\n isExpanded: boolean;\n isScoresLoading: RootProps[\"isScoresLoading\"];\n isMarkersLoading: RootProps[\"isMarkersLoading\"];\n activeScore: RootProps[\"activeScore\"];\n activeScoreData?: RootProps[\"activeScoreData\"];\n markersData?: RootProps[\"markersData\"];\n onSelectScore?: RootProps[\"onSelectScore\"];\n onToggleIsExpanded: () => void;\n};\n\nconst RootElementContext = React.createContext<DefaultContext>(\n {} as DefaultContext,\n);\nconst useRootElement = () => useContext(RootElementContext);\n\nconst RootElementContextProvider = ({\n isExpanded,\n isScoresLoading,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n onSelectScore,\n onToggleIsExpanded,\n children,\n}: {\n isExpanded: boolean;\n isScoresLoading: DefaultContext[\"isScoresLoading\"];\n isMarkersLoading: DefaultContext[\"isMarkersLoading\"];\n activeScore: DefaultContext[\"activeScore\"];\n activeScoreData: DefaultContext[\"activeScoreData\"];\n markersData?: DefaultContext[\"markersData\"];\n onSelectScore: DefaultContext[\"onSelectScore\"];\n onToggleIsExpanded: DefaultContext[\"onToggleIsExpanded\"];\n children: React.ReactNode;\n}) => {\n const handleOnSidebarClick = () => {\n if (isExpanded) {\n return;\n }\n\n onToggleIsExpanded();\n };\n\n return (\n <RootElementContext.Provider\n value={{\n isExpanded,\n isScoresLoading,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n onToggleIsExpanded,\n onSelectScore,\n }}\n >\n <div\n className={styles.container}\n data-is-expanded={isExpanded}\n data-testid=\"sidebar\"\n onClick={handleOnSidebarClick}\n >\n {children}\n </div>\n </RootElementContext.Provider>\n );\n};\n\nexport { useRootElement, RootElementContextProvider };\n","// It's important for the \"relative\" class to be applied to the container, and not the inner\n// content, so that the absolute positioning of the slider works correctly.\nexport const container = `\n relative h-full overflow-x-hidden overflow-y-scroll\n\n group-data-[is-expanded=false]/sidebar:overflow-y-hidden\n`;\n\nexport const content = `\n p-4 flex flex-col grow h-full overflow-hidden\n`;\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\n\nexport function Content({ children }: { children?: React.ReactNode }) {\n return (\n <div className={styles.container} data-testid=\"sidebar-container\">\n <div className={styles.content} data-testid=\"sidebar-content\">\n {children}\n </div>\n </div>\n );\n}\n","export const container = `\n text-sm text-base-black text-nowrap font-bold truncate\n w-full m-0 justify-self-start overflow-hidden\n`;\n","import React, { useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\n\nexport function Title({ title }: { title?: string | boolean }) {\n const { t } = useTranslation(\"localContent\");\n\n const displayTitle = useMemo(\n () =>\n typeof title === \"string\" && title.length > 0\n ? title\n : t(\"sidebar.header.title\"),\n [title, t],\n );\n\n return (\n <h2\n className={styles.container}\n aria-label={displayTitle}\n data-testid=\"sidebar-header-title\"\n >\n {title === false ? \"\" : displayTitle}\n </h2>\n );\n}\n","export const container = `px-0 h-4 text-sm w-full justify-start text-nowrap`;\nexport const icon = `w-3 h-3 -mb-0.5`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { CaretLeftIcon } from \"@phosphor-icons/react\";\n\nimport { Button } from \"@local-logic/design-system\";\n\nimport { useRootElement } from \"../../context\";\n\nimport * as styles from \"./styles\";\n\nexport function CloseButton() {\n const { t } = useTranslation(\"localContent\");\n const { onSelectScore } = useRootElement();\n\n return (\n <Button\n data-testid=\"sidebar-header-back-button\"\n variant=\"ghost\"\n prefixIcon={<CaretLeftIcon weight=\"bold\" className={styles.icon} />}\n className={styles.container}\n onClick={onSelectScore ? onSelectScore(null) : undefined}\n >\n {t(\"sidebar.header.backAction\")}\n </Button>\n );\n}\n","export const container = `\n h-14 p-4 flex justify-between items-center shadow-sm shrink-0\n group-data-[is-expanded=false]/sidebar:justify-end\n`;\nexport const icon = `w-5 h-5 mx-0.5 group-data-[is-expanded=false]/sidebar:rotate-180 transition-transform duration-200 delay-100 ease-in-out flex self-right`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { CaretDoubleLeftIcon } from \"@phosphor-icons/react\";\n\nimport { useRootElement } from \"../context\";\n\nimport { Title } from \"./Title\";\nimport { CloseButton } from \"./CloseButton\";\n\nimport * as styles from \"./styles\";\nimport { useTracking } from \"~/tracking\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nexport function Header({ title }: { title?: string | boolean }) {\n const { t } = useTranslation(\"localContent\");\n const tracking = useTracking();\n const { activeScore, isExpanded, onToggleIsExpanded } = useRootElement();\n\n const handleOnArrowClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n\n const eventAttributes = {\n currentActiveScore: activeScore || \"none\",\n currentIsExpanded: isExpanded,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SIDEBAR_TOGGLE_CLICKED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SIDEBAR_TOGGLE_CLICKED,\n eventAttributes,\n });\n\n onToggleIsExpanded();\n };\n\n return (\n <div className={styles.container} data-testid=\"sidebar-header\">\n {isExpanded && !activeScore && <Title title={title} />}\n {isExpanded && activeScore && <CloseButton />}\n <button\n type=\"button\"\n onClick={handleOnArrowClick}\n aria-label={t(\"sidebar.header.toggle.ariaLabel\", {\n context: isExpanded ? \"close\" : \"open\",\n })}\n aria-pressed={isExpanded}\n data-testid=\"sidebar-header-toggle\"\n >\n <CaretDoubleLeftIcon\n className={styles.icon}\n aria-hidden=\"true\"\n focusable=\"false\"\n data-testid=\"sidebar-header-toggle-icon\"\n />\n </button>\n </div>\n );\n}\n","export const container = `flex flex-col mb-2`;\nexport const title = `group-data-[is-expanded=false]/sidebar:invisible`;\n","export const container = `text-xs font-normal text-gray-400 m-0`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\nimport type { CategoryKey } from \"~/sdks/LocalContent/types\";\n\nexport function CategoryTitle({\n categoryKey,\n className,\n}: {\n categoryKey: CategoryKey;\n className?: string;\n}) {\n const { t } = useTranslation(\"localContent\");\n\n return (\n <h3\n className={`${styles.container} ${className}`}\n data-testid=\"category-title\"\n data-category-key={categoryKey}\n >\n {t(`categories.${categoryKey}`)}\n </h3>\n );\n}\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\nimport { CategoryTitle } from \"~/sdks/LocalContent/components/CategoryTitle\";\n\nimport type { CategoryKey } from \"~/sdks/LocalContent/types\";\n\nexport function Category({\n categoryKey,\n children,\n}: {\n categoryKey: CategoryKey;\n children?: React.ReactNode;\n}) {\n return (\n <div\n className={styles.container}\n data-testid=\"sidebar-category\"\n data-category={categoryKey}\n >\n <CategoryTitle categoryKey={categoryKey} className={styles.title} />\n {children}\n </div>\n );\n}\n","export const container = `\n group/item-button group/color-icon flex justify-between items-center\n text-sm font-normal text-gray-800\n w-full h-11 py-2\n\n data-[is-collapsed=true]:pointer-events-none\n`;\nexport const text = `grow text-left text-nowrap px-2 group-data-[is-collapsed=true]/item-button:invisible group-hover/item-button:text-base-black -mt-0.5`;\nexport const arrow = `group-data-[is-collapsed=true]/item-button:invisible group-hover/item-button:scale-125`;\n","import React from \"react\";\n\nimport { CaretRightIcon } from \"@phosphor-icons/react\";\nimport { ColorIcon } from \"@local-logic/design-system\";\n\nimport * as styles from \"./styles\";\n\nexport type ItemButtonProps = {\n text: string;\n isDisabled?: boolean;\n isCollapsed?: boolean;\n isActive?: boolean;\n icon: {\n element: React.ReactElement;\n backgroundColor?: string;\n fillColor?: string;\n };\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n};\n\nexport function ItemButton({\n text,\n isDisabled,\n isCollapsed = false,\n isActive = false,\n icon: { element: Icon, backgroundColor = \"gray\", fillColor = \"black\" },\n onClick,\n ...rest\n}: ItemButtonProps) {\n return (\n <button\n className={styles.container}\n disabled={isDisabled}\n aria-label={text}\n onClick={onClick}\n data-background-color={backgroundColor}\n data-fill-color={fillColor}\n data-is-collapsed={isCollapsed}\n data-is-active={isActive}\n style={\n {\n \"--item-button-background\": backgroundColor,\n \"--item-button-fill\": fillColor,\n } as React.CSSProperties\n }\n {...rest}\n >\n <ColorIcon\n element={Icon}\n backgroundColor={backgroundColor}\n fillColor={fillColor}\n />\n <span className={styles.text}>{text}</span>\n <CaretRightIcon\n className={styles.arrow}\n weight=\"bold\"\n size={12}\n aria-hidden=\"true\"\n />\n </button>\n );\n}\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { useTracking } from \"~/tracking\";\n\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nimport { ScoreIcon } from \"~/components/ScoreIcon\";\nimport { ItemButton } from \"~/sdks/LocalContent/components/ItemButton\";\n\nexport function Score({\n scoreKey,\n backgroundColor,\n fillColor,\n}: {\n scoreKey: ScoreKey;\n backgroundColor?: string;\n fillColor?: string;\n}) {\n const { t } = useTranslation([\"common\"]);\n const tracking = useTracking();\n const { isExpanded, activeScore, onSelectScore } = useRootElement();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n\n const handleOnSelectScore = (score: ScoreKey) => () => {\n if (typeof onSelectScore === \"undefined\") {\n return;\n }\n\n onSelectScore(score)();\n handleAddSessionTriggerCount();\n\n const eventAttributes = {\n scoreKey: score,\n isSidebarExpanded: isExpanded,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SIDEBAR_SCORE_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SIDEBAR_SCORE_SELECTED,\n eventAttributes,\n });\n };\n\n return (\n <ItemButton\n text={t(`common:scores.${scoreKey}.title`)}\n isDisabled={!isExpanded}\n isCollapsed={!isExpanded}\n isActive={activeScore === scoreKey}\n icon={{\n element: <ScoreIcon score={scoreKey} />,\n backgroundColor,\n fillColor,\n }}\n onClick={handleOnSelectScore(scoreKey)}\n data-testid=\"sidebar-score-item\"\n data-score={scoreKey}\n />\n );\n}\n","export const container = `flex flex-col data-[is-visible=false]:hidden`;\nexport const score = `mb-3`;\n","export const container = `bg-gray-250 w-3 h-3 rounded-full flex items-center justify-center`;\nexport const icon = `text-base-white w-2.5 h-2.5`;\n","import React, { useMemo } from \"react\";\n\nimport { CaretUpIcon, CaretDownIcon, EqualsIcon } from \"@phosphor-icons/react\";\n\nimport * as styles from \"./styles\";\n\nexport function ValueIndicator({\n comparison,\n}: {\n comparison: \"higher\" | \"lower\" | \"equal\";\n}) {\n const Icon = useMemo(() => {\n switch (comparison) {\n case \"higher\":\n return CaretUpIcon;\n case \"lower\":\n return CaretDownIcon;\n default:\n return EqualsIcon;\n }\n }, [comparison]);\n\n return (\n <div\n className={styles.container}\n data-testid=\"value-indicator\"\n data-comparison={comparison}\n >\n <Icon className={styles.icon} />\n </div>\n );\n}\n","export const container = `flex items-center gap-1 text-xs text-gray-400 mb-2`;\n","import React, { useMemo } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { ValueIndicator } from \"./ValueIndicator\";\n\nimport * as styles from \"./styles\";\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function ScoreComparison({\n scoreKey,\n locationScoreValue,\n comparedTo,\n className,\n}: {\n scoreKey: ScoreKey | null;\n locationScoreValue?: number;\n comparedTo?: { text: string; value: number };\n className?: string;\n}) {\n const { t } = useTranslation(\"localContent\");\n const { hideScoresList } = useLocalContent();\n\n const hide = useMemo(\n () => scoreKey === null || hideScoresList?.includes(scoreKey),\n [hideScoresList, scoreKey],\n );\n\n const comparison = useMemo(() => {\n if (\n typeof locationScoreValue === \"undefined\" ||\n typeof comparedTo === \"undefined\"\n ) {\n return null;\n }\n\n if (locationScoreValue > comparedTo.value) {\n return \"higher\";\n }\n\n if (locationScoreValue < comparedTo.value) {\n return \"lower\";\n }\n\n return \"equal\";\n }, [locationScoreValue, comparedTo?.value]);\n\n if (hide || typeof comparedTo === \"undefined\" || comparison === null) {\n return null;\n }\n\n return (\n <div\n className={twMerge(styles.container, className)}\n data-testid=\"score-comparison\"\n >\n <ValueIndicator comparison={comparison} />\n <p>\n {t(\"scoreComparison.text\", {\n context: comparison !== \"equal\" ? comparison : undefined,\n name: comparedTo.text,\n value: comparedTo.value,\n })}\n </p>\n </div>\n );\n}\n","export const container = `text-sm text-gray-800 mb-6`;\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\n\nexport function ScoreText({ text }: { text?: string }) {\n if (typeof text === \"undefined\") {\n return null;\n }\n\n return (\n <p className={styles.container} data-testid=\"score-description\">\n {text}\n </p>\n );\n}\n","export const container = `w-full flex flex-col gap-y-1`;\nexport const item = `h-6 bg-gray-150 rounded animate-pulse`;\n","import React from \"react\";\n\nimport * as styles from \"./styles\";\n\nexport function Loading() {\n return (\n <div className={styles.container} data-testid=\"score-poi-list-loading\">\n <div className={styles.item} />\n <div className={styles.item} />\n <div className={styles.item} />\n <div className={styles.item} />\n <div className={styles.item} />\n </div>\n );\n}\n","export const container = `w-full`;\nexport const title = `text-xs text-gray-800 mb-1`;\nexport const subcategories = `flex flex-wrap gap-1 mb-4`;\nexport const button = `\n flex items-center gap-x-1 text-nowrap\n py-1.5 px-2.5 rounded-full text-sm font-medium transition-colors\n border border-gray-150 text-gray-400 bg-base-white\n\n hover:bg-gray-400\n hover:text-base-white\n hover:border-gray-400\n\n data-[is-active=true]:bg-gray-400\n data-[is-active=true]:text-base-white\n data-[is-active=true]:border-gray-400\n`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport * as styles from \"./styles\";\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { useTracking } from \"~/tracking\";\n\nimport { PoiIconDeprecated } from \"~/components/PoiIcon\";\n\nimport type { ScoreKey, POISubcategory } from \"~/sdks/LocalContent/types\";\n\nexport function Subcategories({\n scoreKey,\n availablePoiSubcategories,\n selectedSubcategory,\n onSelectCategory,\n}: {\n scoreKey: ScoreKey | null;\n availablePoiSubcategories: POISubcategory[];\n selectedSubcategory: POISubcategory | null;\n onSelectCategory: (subcategory: POISubcategory | null) => void;\n}) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n const tracking = useTracking();\n\n const handleSubcategoryClick = (subcategory: POISubcategory) => () => {\n if (selectedSubcategory === subcategory) {\n return;\n }\n\n onSelectCategory(subcategory);\n\n const eventAttributes = {\n score: scoreKey as string,\n category: subcategory,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SCORE_POI_CATEGORY_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SCORE_POI_CATEGORY_SELECTED,\n eventAttributes,\n });\n };\n\n // While we require availablePoiSubcategories to be defined, we should handle when it's undefined\n if (\n typeof availablePoiSubcategories === \"undefined\" ||\n availablePoiSubcategories.length <= 1\n ) {\n return null;\n }\n\n return (\n <div\n className={styles.container}\n data-testid=\"score-poi-list-subcategories\"\n >\n {availablePoiSubcategories.length > 0 && (\n <div\n className={styles.subcategories}\n data-testid=\"score-poi-list-subcategories-list\"\n >\n {availablePoiSubcategories.map((subcategory) => (\n <button\n data-testid={`score-poi-list-subcategory-${subcategory}`}\n className={styles.button}\n data-is-active={selectedSubcategory === subcategory}\n key={`score-poi-list-subcategory-${subcategory}`}\n onClick={handleSubcategoryClick(subcategory)}\n >\n <PoiIconDeprecated poi={subcategory} />\n {t(`common:pois.${subcategory}`)}\n </button>\n ))}\n </div>\n )}\n </div>\n );\n}\n","export const container = `w-full`;\nexport const title = `text-xs text-gray-400 mb-2`;\nexport const list = `flex flex-col gap-y-1`;\nexport const item = `inline-flex group/poi-list-item`;\nexport const button = `\n w-full pl-4 border rounded transition-colors\n bg-base-white border-gray-150 text-gray-400 fill-gray-400\n\n hover:bg-primary-100\n hover:border-primary-100\n hover:text-base-white\n hover:fill-base-white\n\n group-data-[is-active=true]/poi-list-item:bg-primary-100\n`;\nexport const poi = `flex justify-between w-full items-center text-left grow h-8`;\nexport const name = `text-xs font-medium truncate overflow-hidden text-nowrap w-52 group-data-[is-active=true]/poi-list-item:text-base-white`;\nexport const icon = `w-3 h-3 mr-2 group-data-[is-active=true]/poi-list-item:fill-base-white`;\nexport const routes = `block pb-2`;\nexport const schoolTypes = `flex flex-wrap gap-1 mb-2`;\nexport const badge = `text-xs py-0.5 px-2 bg-gray-150 text-base-black rounded`;\n","import React, { useEffect, useRef, useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { CaretRightIcon } from \"@phosphor-icons/react\";\nimport type { POI, School } from \"@local-logic/client\";\nimport type { MarkerValue } from \"../types\";\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport { DEFAULT_RADIUS } from \"~/sdks/LocalContent/constants\";\n\nimport { getIdFromMarker } from \"~/utils/map/getIdFromMarker\";\n\nimport { TransitRoutes } from \"~/components/TransitRoutes\";\n\nimport type { POISubcategory } from \"~/sdks/LocalContent/types\";\n\nexport function List({\n pois,\n showPois = true,\n onSelect,\n}: {\n pois: MarkerValue[];\n showPois?: boolean;\n onSelect?: (poi: MarkerValue, category: POISubcategory) => void;\n}) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n const {\n activeMarker,\n markersData,\n distanceUnit,\n selectedPoiSubcategory,\n handleMarkerClick,\n showSchoolRatings,\n } = useLocalContent();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n const activeItemRef = useRef<HTMLLIElement | null>(null);\n\n useEffect(() => {\n if (activeItemRef.current) {\n activeItemRef.current.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n });\n }\n }, [activeMarker]);\n\n const isUsingLargerRadius = useMemo(() => {\n if (!markersData || Object.keys(markersData).length === 0) {\n return false;\n }\n\n const farMarker = Object.values(markersData)\n .flat()\n .find(\n (marker) =>\n typeof marker?.proximity?.linear_distance === \"number\" &&\n marker.proximity.linear_distance > DEFAULT_RADIUS,\n );\n\n return typeof farMarker !== \"undefined\";\n }, [markersData]);\n\n const handleSelectMarkerOnMap = (poi: MarkerValue) => () => {\n const markerId = getIdFromMarker(poi.lat, poi.lng, poi.name);\n handleAddSessionTriggerCount();\n handleMarkerClick({\n id: markerId,\n latitude: poi.lat,\n longitude: poi.lng,\n markers: [\n {\n id: markerId,\n latitude: poi.lat,\n longitude: poi.lng,\n name: poi.name,\n },\n ],\n });\n\n if (typeof onSelect !== \"undefined\" && selectedPoiSubcategory !== null) {\n onSelect(poi, selectedPoiSubcategory);\n }\n };\n\n if (pois.length === 0) {\n return null;\n }\n\n return (\n <div className={styles.container} data-testid=\"score-poi-list-content\">\n <p className={styles.title} data-testid=\"score-poi-list-title\">\n {!isUsingLargerRadius &&\n t(\"poiSearchRadius\", {\n radius:\n distanceUnit === \"imperial\"\n ? ((DEFAULT_RADIUS / 1000) * 0.621371).toFixed(1)\n : (DEFAULT_RADIUS / 1000).toFixed(1),\n unit: t(\n `common:distance.${distanceUnit === \"imperial\" ? \"mile\" : \"kilometer\"}`,\n ),\n })}\n </p>\n\n {showPois && (\n <ul className={styles.list}>\n {pois.map((poi) => {\n const isActive =\n activeMarker?.id === getIdFromMarker(poi.lat, poi.lng, poi.name);\n\n return (\n <li\n ref={isActive ? activeItemRef : null}\n className={styles.item}\n key={`${poi.lat}-${poi.lng}-${poi.name}`}\n data-is-active={isActive}\n >\n <button\n data-testid=\"score-poi-list-item\"\n onClick={handleSelectMarkerOnMap(poi)}\n className={styles.button}\n >\n <span className={styles.poi}>\n <span\n className={styles.name}\n data-testid=\"score-poi-list-name\"\n >\n {poi.name}\n </span>\n <CaretRightIcon weight=\"bold\" className={styles.icon} />\n </span>\n\n {typeof (poi as School)?.school_attributes?.types !==\n \"undefined\" && (\n <div className={styles.schoolTypes}>\n {(poi as School)?.school_attributes?.types?.map(\n (schoolType) => (\n <span\n key={`score-poi-list-school-type-${poi.lat}-${poi.lng}-${poi.name}`}\n className={styles.badge}\n >\n {schoolType}\n </span>\n ),\n )}\n {showSchoolRatings &&\n typeof (poi as School)?.rating === \"string\" && (\n <span className={styles.badge}>\n {(poi as School)?.rating}\n </span>\n )}\n </div>\n )}\n\n <TransitRoutes\n keyPrefix={`poi-transit-routes-${poi.lat}-${poi.lng}`}\n routes={(poi as POI).routes}\n useLongName={selectedPoiSubcategory === \"train_stations\"}\n className={styles.routes}\n />\n </button>\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n}\n","export const container = `w-full`;\n","import React from \"react\";\n\nimport type { Markers, MarkerValue } from \"./types\";\n\nimport { Loading } from \"./Loading\";\nimport { Subcategories } from \"./Subcategories\";\nimport { List } from \"./List\";\n\nimport * as styles from \"./styles\";\nimport type { ScoreKey, POISubcategory } from \"~/sdks/LocalContent/types\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nexport function ScorePoiList({\n scoreKey,\n isLoading = false,\n showPois = true,\n pois,\n onPOISelected,\n}: {\n scoreKey: ScoreKey | null;\n isLoading?: boolean;\n showPois?: boolean;\n pois?: Markers;\n onPOISelected?: (poi: MarkerValue, category: POISubcategory) => void;\n}) {\n const {\n availablePoiSubcategories,\n selectedPoiSubcategory,\n handleSelectPoiSubcategory,\n } = useLocalContent();\n\n if (isLoading) {\n return <Loading />;\n }\n\n if (typeof pois === \"undefined\" || selectedPoiSubcategory === null) {\n return null;\n }\n\n return (\n <div className={styles.container}>\n <Subcategories\n availablePoiSubcategories={availablePoiSubcategories}\n scoreKey={scoreKey}\n selectedSubcategory={selectedPoiSubcategory}\n onSelectCategory={handleSelectPoiSubcategory}\n />\n\n {typeof pois[selectedPoiSubcategory] !== \"undefined\" && (\n <List\n pois={pois[selectedPoiSubcategory]}\n showPois={showPois}\n onSelect={onPOISelected}\n />\n )}\n </div>\n );\n}\n","export const container = `\n w-full flex gap-2 items-center justify-between\n`;\nexport const title = `flex grow gap-2 items-center`;\nexport const text = `text-nowrap text-gray-800 font-medium flex items-center -mt-1`;\n","export const container = `rounded text-xs font-medium bg-base-white text-primary-100 border border-primary-100 h-5 flex items-center justify-center w-16 shrink-0`;\n","import React, { useMemo } from \"react\";\n\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport function ScoreValue({\n scoreKey,\n value,\n}: {\n scoreKey?: ScoreKey;\n value?: number;\n}) {\n const { hideScoresList } = useLocalContent();\n\n const hide = useMemo(\n () => typeof scoreKey === \"undefined\" || hideScoresList.includes(scoreKey),\n [scoreKey, hideScoresList],\n );\n\n if (hide || typeof value !== \"number\" || value <= 0) {\n return null;\n }\n\n return (\n <div className={styles.container} data-testid=\"score-value\">\n {value > 10 ? 10 : value} / 10\n </div>\n );\n}\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { ColorIcon } from \"@local-logic/design-system\";\nimport * as styles from \"./styles\";\nimport { ScoreValue } from \"~/sdks/LocalContent/components/ScoreValue\";\nimport { ScoreIcon } from \"~/components/ScoreIcon\";\n\nimport type { ScoreKey } from \"~/sdks/LocalContent/types\";\n\nexport type ScoreProps = {\n scoreKey: ScoreKey | null;\n scoreValue?: number;\n backgroundColor?: string;\n fillColor?: string;\n className?: string;\n};\n\nexport function Score({\n scoreKey,\n scoreValue,\n backgroundColor,\n fillColor,\n className,\n}: ScoreProps) {\n const { t } = useTranslation([\"common\"]);\n\n if (scoreKey === null) {\n return null;\n }\n\n return (\n <div\n className={twMerge(styles.container, className)}\n data-testid=\"score-component\"\n >\n <span className={styles.title}>\n <ColorIcon\n element={<ScoreIcon score={scoreKey} />}\n backgroundColor={backgroundColor}\n fillColor={fillColor}\n />\n <span className={styles.text}>\n {t(`common:scores.${scoreKey}.title`)}\n </span>\n </span>\n <ScoreValue scoreKey={scoreKey} value={scoreValue} />\n </div>\n );\n}\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\nimport * as styles from \"./styles\";\nimport { ScoreComparison } from \"~/sdks/LocalContent/components/ScoreComparison\";\nimport { ScoreText } from \"~/sdks/LocalContent/components/ScoreText\";\nimport { ScorePoiList } from \"~/sdks/LocalContent/components/ScorePoiList\";\nimport type { MarkerValue } from \"~/sdks/LocalContent/components/ScorePoiList/types\";\n\nimport {\n type POISubcategory,\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { Score } from \"~/sdks/LocalContent/components/Score\";\n\nimport { useTracking } from \"~/tracking\";\n\nexport function ScoreDetails() {\n const {\n isExpanded,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n } = useRootElement();\n const tracking = useTracking();\n\n const handleOnPOISelected = (poi: MarkerValue, category: POISubcategory) => {\n if (activeScore === null) {\n return;\n }\n\n const eventAttributes: Record<string, boolean | string | number> = {\n score: activeScore,\n category,\n latitude: poi.lat,\n longitude: poi.lng,\n name: poi.name,\n };\n\n Object.entries(poi).forEach(([key, value]) => {\n if ([\"boolean\", \"string\", \"number\"].includes(typeof value)) {\n if (key === \"lat\" || key === \"lng\" || key === \"name\") {\n return;\n }\n eventAttributes[key] = value;\n }\n });\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.SIDEBAR_POI_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.SIDEBAR_POI_SELECTED,\n eventAttributes,\n });\n };\n\n return (\n <div\n className={styles.container}\n data-testid=\"sidebar-score-details\"\n data-is-visible={isExpanded}\n >\n <Score\n scoreKey={activeScore}\n scoreValue={activeScoreData?.value}\n backgroundColor={activeScoreData?.categoryOptions?.colors?.background}\n fillColor={activeScoreData?.categoryOptions?.colors?.fill}\n className={styles.score}\n />\n <ScoreComparison\n scoreKey={activeScore}\n locationScoreValue={activeScoreData?.value}\n comparedTo={activeScoreData?.geographies?.g30}\n />\n <ScoreText text={activeScoreData?.text} />\n <ScorePoiList\n isLoading={isMarkersLoading}\n pois={markersData}\n scoreKey={activeScore}\n onPOISelected={handleOnPOISelected}\n />\n </div>\n );\n}\n","export const container = `absolute top-14 left-0 bottom-0 h-auto w-full bg-base-white p-4 overflow-y-auto`;\n","export const container = `\n flex flex-col\n\n transition-transform duration-15 ease-in-out\n\n data-[direction=\"right-to-left\"]:translate-x-full\n data-[direction=\"left-to-right\"]:-translate-x-full\n data-[direction=\"bottom-to-top\"]:translate-y-full\n data-[direction=\"top-to-bottom\"]:-translate-y-full\n\n data-[direction=\"right-to-left\"]:data-[is-open=true]:translate-x-0\n data-[direction=\"left-to-right\"]:data-[is-open=true]:translate-x-0\n data-[direction=\"bottom-to-top\"]:data-[is-open=true]:translate-y-0\n data-[direction=\"top-to-bottom\"]:data-[is-open=true]:translate-y-0\n`;\n","import React, { useRef, useImperativeHandle } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport * as styles from \"./styles\";\n\nexport const Slider = React.forwardRef<\n HTMLDivElement,\n {\n isOpen?: boolean;\n direction?:\n | \"right-to-left\"\n | \"left-to-right\"\n | \"bottom-to-top\"\n | \"top-to-bottom\";\n className?: string;\n children?: React.ReactNode;\n }\n>(\n (\n {\n isOpen = false,\n direction = \"right-to-left\",\n className,\n children,\n ...rest\n },\n forwardedRef,\n ) => {\n const internalRef = useRef<HTMLDivElement>(null);\n\n useImperativeHandle(\n forwardedRef,\n () => internalRef.current as HTMLDivElement,\n );\n\n return (\n <div\n ref={internalRef}\n className={twMerge(styles.container, className)}\n data-testid=\"slider\"\n data-is-open={isOpen}\n data-direction={direction}\n {...rest}\n >\n {children}\n </div>\n );\n },\n);\n\nSlider.displayName = \"Slider\";\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\nimport { Slider as SliderComponent } from \"~/sdks/LocalContent/components/Slider\";\n\nexport function Slider({ children }: { children?: React.ReactNode }) {\n const { activeScore, isExpanded } = useRootElement();\n\n return (\n <SliderComponent\n isOpen={isExpanded && !!activeScore}\n className={styles.container}\n >\n {children}\n </SliderComponent>\n );\n}\n","import React from \"react\";\n\nimport type { RootProps } from \"./types\";\n\nimport { RootElementContextProvider } from \"./context\";\n\nexport const Root = ({\n isExpanded,\n isScoresLoading,\n isMarkersLoading,\n activeScore,\n activeScoreData,\n markersData,\n onSelectScore,\n onToggleIsExpanded,\n children,\n}: RootProps) => (\n <RootElementContextProvider\n isExpanded={isExpanded}\n isScoresLoading={isScoresLoading}\n isMarkersLoading={isMarkersLoading}\n activeScore={activeScore}\n activeScoreData={activeScoreData}\n markersData={markersData}\n onSelectScore={onSelectScore}\n onToggleIsExpanded={onToggleIsExpanded}\n >\n {children}\n </RootElementContextProvider>\n);\n\n// Export children\nexport { Content } from \"./Content\";\nexport { Header } from \"./Header\";\nexport { Category } from \"./Category\";\nexport { Score } from \"./Score\";\nexport { ScoreDetails } from \"./ScoreDetails\";\nexport { Slider } from \"./Slider\";\n","export const container = `absolute top-2.5 left-2 flex gap-x-3 z-10`;\nexport const item = `\n group rounded-full h-10 min-w-10 max-w-10 w-10 px-3 whitespace-nowrap text-base-white\n flex gap-0 items-center justify-center font-medium overflow-hidden -outline-offset-2\n shadow-4sm\n\n transition-none\n\n bg-[var(--background)]\n hover:bg-[var(--fill)]\n data-[is-active=true]:bg-[var(--fill)]\n data-[is-active=true]:max-w-full\n data-[is-active=true]:w-full\n data-[is-active=true]:gap-2\n data-[is-active=true]:transition-all\n`;\nexport const icon = `\n transition-colors w-5 h-5 flex-shrink-0\n\n fill-[var(--fill)]\n group-hover:fill-base-white\n group-data-[is-active=true]:fill-base-white\n`;\nexport const title = `\n text-sm\n transition-all max-w-0 translate-x-16\n\n group-data-[is-active=true]:max-w-none\n group-data-[is-active=true]:translate-x-0\n`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport * as styles from \"./styles\";\nimport { useTracking } from \"~/tracking\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\nimport { useSurveyTrigger } from \"~/sdks/LocalContent/hooks/useSurveyTrigger\";\n\nimport { ScoreIcon } from \"~/components/ScoreIcon\";\n\nimport {\n type ScoreKey,\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nexport function ScoresPillList({\n scores,\n backgroundColor,\n fillColor,\n}: {\n scores?: ScoreKey[];\n backgroundColor?: string;\n fillColor?: string;\n}) {\n const tracking = useTracking();\n const { t } = useTranslation([\"common\"]);\n const {\n activeScore,\n isCommuteCalculatorOpen,\n handleSelectScore: onSelectScore,\n handleToggleIsCommuteCalculatorOpen,\n } = useLocalContent();\n const { handleAddSessionTriggerCount } = useSurveyTrigger();\n\n const handleSelectScore = (scoreKey: ScoreKey) => () => {\n onSelectScore(scoreKey)();\n handleAddSessionTriggerCount();\n\n const eventAttributes = {\n scoreKey,\n isExpanded: activeScore === scoreKey,\n };\n\n if (isCommuteCalculatorOpen) {\n handleToggleIsCommuteCalculatorOpen();\n }\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.CATEGORIES_MENU_SCORE_SELECTED,\n eventAttributes: Object.entries(eventAttributes).map(([key, value]) => ({\n label: key,\n data: value,\n })),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.CATEGORIES_MENU_SCORE_SELECTED,\n eventAttributes,\n });\n };\n\n if (typeof scores === \"undefined\" || scores.length === 0) {\n return null;\n }\n\n return (\n <div\n data-testid=\"scores-pill-list\"\n className={styles.container}\n style={\n {\n \"--background\": backgroundColor,\n \"--fill\": fillColor,\n } as React.CSSProperties\n }\n >\n {scores.map((score) => (\n <button\n key={score}\n data-is-active={score === activeScore}\n data-score={score}\n data-testid=\"score-pill-item\"\n onClick={handleSelectScore(score)}\n className={styles.item}\n aria-label={t(`common:scores.${score}.title`)}\n >\n <ScoreIcon\n data-testid=\"score-pill-icon\"\n score={score}\n className={styles.icon}\n />\n <span data-testid=\"score-pill-title\" className={styles.title}>\n {t(`common:scores.${score}.title`)}\n </span>\n </button>\n ))}\n </div>\n );\n}\n","export const container = `flex items-center justify-center`;\nexport const caret = `w-4 h-4 shrink-0 group-data-[is-expanded=\"true\"]/bottom-slider:rotate-180 transition-transform duration-50 ease-in-out`;\n","import React from \"react\";\n\nimport { CaretUpIcon } from \"@phosphor-icons/react\";\n\nimport * as styles from \"./styles\";\n\nexport function Header({\n onClick,\n}: {\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n}) {\n if (typeof onClick === \"undefined\") {\n return (\n <div className={styles.container} data-testid=\"header-button\">\n <CaretUpIcon className={styles.caret} weight=\"bold\" />\n </div>\n );\n }\n\n return (\n <button\n className={styles.container}\n onClick={onClick}\n data-testid=\"header-button\"\n >\n <CaretUpIcon className={styles.caret} weight=\"bold\" />\n </button>\n );\n}\n","export const container = `\n group/bottom-slider flex flex-col gap-y-2 p-4\n absolute bottom-0 w-full shadow-sm\n transition-all duration-300 ease-in-out\n z-20 bg-base-white rounded-t-2xl h-fit \n\n data-[is-expanded=false]:max-h-20\n data-[is-expanded=true]:max-h-full\n\n data-[is-clickable=true]:cursor-pointer\n`;\n\nexport const expandToggle = `\n flex items-center justify-center\n`;\n","import React, { forwardRef } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { Slider } from \"../Slider\";\nimport { Header } from \"./Header\";\n\nimport * as styles from \"./styles\";\n\nexport const BottomSlider = forwardRef<\n HTMLDivElement,\n {\n isOpen?: boolean;\n isExpanded?: boolean;\n fullAreaClickable?: boolean;\n onExpandContract: (e: React.MouseEvent<HTMLButtonElement>) => void;\n children?: React.ReactNode;\n className?: string;\n }\n>(\n (\n {\n isOpen,\n isExpanded = true,\n fullAreaClickable = false,\n onExpandContract,\n children,\n className,\n ...rest\n },\n forwardedRef,\n ) => (\n <span onClick={fullAreaClickable ? onExpandContract : undefined}>\n <Slider\n ref={forwardedRef}\n direction=\"bottom-to-top\"\n isOpen={isOpen}\n data-is-expanded={isExpanded}\n data-is-clickable={fullAreaClickable}\n className={twMerge(styles.container, className)}\n {...rest}\n >\n <Header onClick={!fullAreaClickable ? onExpandContract : undefined} />\n {children}\n </Slider>\n </span>\n ),\n);\n\nBottomSlider.displayName = \"BottomSlider\";\n","export const container = `\n data-[is-expanded=false]:max-h-32\n data-[is-expanded=true]:max-h-96\n`;\nexport const score = `mb-1`;\nexport const scoreComparison = `ml-7`;\n","import React, { useState, useEffect, forwardRef } from \"react\";\n\nimport { BottomSlider } from \"../BottomSlider\";\nimport { Score } from \"../Score\";\nimport { ScoreComparison } from \"../ScoreComparison\";\nimport { ScoreText } from \"../ScoreText\";\nimport { ScorePoiList } from \"../ScorePoiList\";\n\nimport * as styles from \"./styles\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\n/**\n * This component is meant to be displayed on mobile devices only. It shows detailed\n * information about the selected score in a slider that appears from the bottom\n * of the screen.\n */\nexport const ScoreDetailsSlider = forwardRef<HTMLDivElement>(\n (_, forwardedRef) => {\n const {\n isCommuteCalculatorOpen,\n activeScore,\n activeScoreData,\n activeCategoryData,\n isMarkersLoading,\n markersData,\n } = useLocalContent();\n const [isExpanded, setIsExpanded] = useState(false);\n\n useEffect(() => {\n setIsExpanded(false);\n }, [activeScore]);\n\n const handleOnExpandContractClick = (\n e: React.MouseEvent<HTMLButtonElement>,\n ) => {\n // Sanity checks\n if (\n !activeScore ||\n !forwardedRef ||\n \"current\" in forwardedRef === false\n ) {\n return;\n }\n\n // When the slider is expanded, ignore clicks on the button inside the slider\n // This would allow for clicking on actions inside the slider without collapsing it\n if (isExpanded && e.target instanceof HTMLButtonElement) {\n return;\n }\n\n setIsExpanded((prev) => !prev);\n };\n\n if (isCommuteCalculatorOpen) {\n return null;\n }\n\n return (\n <BottomSlider\n ref={activeScore ? forwardedRef : undefined}\n data-testid=\"score-details-slider\"\n data-is-expanded={isExpanded}\n className={styles.container}\n isOpen={typeof activeScoreData !== \"undefined\"}\n isExpanded={isExpanded}\n fullAreaClickable\n onExpandContract={handleOnExpandContractClick}\n >\n <div className={styles.score}>\n <Score\n scoreKey={activeScore}\n scoreValue={activeScoreData?.value}\n backgroundColor={activeCategoryData?.colors?.background}\n fillColor={activeCategoryData?.colors?.fill}\n className={styles.score}\n />\n <ScoreComparison\n scoreKey={activeScore}\n locationScoreValue={activeScoreData?.value}\n comparedTo={activeScoreData?.geographies?.g30}\n className={styles.scoreComparison}\n />\n </div>\n <ScorePoiList\n isLoading={isMarkersLoading}\n pois={markersData}\n scoreKey={activeScore}\n showPois={false}\n />\n <ScoreText text={activeScoreData?.text} />\n </BottomSlider>\n );\n },\n);\n\nScoreDetailsSlider.displayName = \"ScoreDetailsSlider\";\n","import React, { useContext, useEffect } from \"react\";\n\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nimport type { CommuteData } from \"~/sdks/LocalContent/hooks/useCommute/types\";\nimport type { CommuteOptions, MapProvider } from \"~/sdks/LocalContent/types\";\n\nexport type DefaultContext = {\n isOpen: boolean;\n commuteOptions: CommuteOptions;\n commuteData: CommuteData | null;\n isCommuteDataLoading: boolean;\n location: { lat: number; lng: number };\n country: \"CAN\" | \"USA\";\n mapProvider?: MapProvider;\n distanceUnit?: \"metric\" | \"imperial\";\n onToggleIsOpen: () => void;\n handleCalculateCommute: (options: CommuteOptions) => void;\n};\n\nconst RootElementContext = React.createContext<DefaultContext>(\n {} as DefaultContext,\n);\nconst useRootElement = () => useContext(RootElementContext);\n\nconst RootElementContextProvider = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const {\n activeScore,\n activeCategory,\n selectedPoiSubcategory,\n map,\n country,\n location,\n isCommuteCalculatorOpen,\n commuteData,\n commuteOptions,\n isCommuteDataLoading,\n distanceUnit = \"metric\",\n handleToggleIsCommuteCalculatorOpen,\n handleCalculateCommute,\n } = useLocalContent();\n\n const isCommuteCalculatorOpenRef = React.useRef(isCommuteCalculatorOpen);\n\n // Keep the ref updated with the latest value\n useEffect(() => {\n isCommuteCalculatorOpenRef.current = isCommuteCalculatorOpen;\n }, [isCommuteCalculatorOpen]);\n\n useEffect(() => {\n if (isCommuteCalculatorOpenRef.current) {\n handleToggleIsCommuteCalculatorOpen();\n }\n }, [activeScore, activeCategory, selectedPoiSubcategory]);\n\n return (\n <RootElementContext.Provider\n value={{\n isOpen: isCommuteCalculatorOpen,\n commuteData,\n commuteOptions,\n isCommuteDataLoading,\n location: location as DefaultContext[\"location\"],\n country: country === \"CAN\" ? \"CAN\" : \"USA\",\n mapProvider: map?.mapProvider,\n distanceUnit,\n onToggleIsOpen: handleToggleIsCommuteCalculatorOpen,\n handleCalculateCommute,\n }}\n >\n {children}\n </RootElementContext.Provider>\n );\n};\n\nexport { useRootElement, RootElementContextProvider };\n","export const container = `\n z-10 sm:rounded text-sm h-10 data-[is-active=true]:bg-primary-200\n\n max-sm:rounded-full\n max-sm:w-10\n max-sm:px-0\n max-sm:!bg-primary-50\n max-sm:hover:!bg-primary-100\n`;\nexport const icon = `w-5 h-5`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { Button } from \"@local-logic/design-system\";\n\nimport { TrafficSignIcon } from \"@phosphor-icons/react\";\n\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\n\nexport function Trigger() {\n const { t } = useTranslation(\"localContent\");\n const breakpoints = useResponsiveBreakpoints();\n const { isOpen, onToggleIsOpen } = useRootElement();\n\n return (\n <Button\n className={styles.container}\n prefixIcon={<TrafficSignIcon className={styles.icon} />}\n data-testid=\"commute-calculator-trigger\"\n data-is-active={isOpen}\n onClick={onToggleIsOpen}\n >\n {breakpoints.sm &&\n t(\"commute.cta\", { context: breakpoints.xs ? \"long\" : \"short\" })}\n </Button>\n );\n}\n","export const container = `\n p-3 bg-base-white rounded z-10\n absolute top-0 right-0\n shadow-3sm w-fit\n\n min-w-64 lg:min-w-72\n max-w-[300px] lg:max-w-none\n`;\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\n\nexport function Card({ children }: { children?: React.ReactNode }) {\n const { isOpen } = useRootElement();\n\n if (!isOpen) {\n return null;\n }\n\n return <div className={styles.container}>{children}</div>;\n}\n","import React from \"react\";\n\nimport { useRootElement } from \"../context\";\nimport { BottomSlider } from \"~/sdks/LocalContent/components/BottomSlider\";\n\nexport function Slider({ children }: { children?: React.ReactNode }) {\n const { isOpen, onToggleIsOpen } = useRootElement();\n\n return (\n <BottomSlider isOpen={isOpen} isExpanded onExpandContract={onToggleIsOpen}>\n {isOpen && children}\n </BottomSlider>\n );\n}\n","export const container = `w-full flex flex-row lg:flex-col items-baseline gap-x-4 gap-y-1 text-xs`;\nexport const duration = `text-sm font-medium text-gray-800`;\nexport const distance = `font-normal text-gray-400`;\nexport const loading = `block w-full h-4 bg-gray-200 rounded animate-pulse`;\n","import React, { useMemo } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../../context\";\n\nimport * as styles from \"./styles\";\nimport {\n METERS_TO_YARDS_CONVERSION_FACTOR,\n YARDS_PER_MILE,\n METERS_PER_KILOMETER,\n} from \"~/sdks/LocalContent/constants\";\n\nexport function Route({ isLoading = false }: { isLoading?: boolean }) {\n const { t } = useTranslation([\"localContent\", \"common\"]);\n const { commuteData, distanceUnit } = useRootElement();\n\n const durationString = useMemo(() => {\n if (!commuteData?.duration) return null;\n\n const hours = Math.floor(commuteData.duration / 60 / 60);\n const minutes = Math.floor((commuteData.duration / 60) % 60);\n\n const minutesString = `${minutes} ${t(\"common:time.minute\", { count: minutes })}`;\n\n if (hours === 0) {\n return minutesString;\n }\n\n if (minutes === 0) {\n return `${hours} ${t(\"common:time.hour\", { count: hours })}`;\n }\n\n return `${hours} ${t(\"common:time.hour\", { count: hours })} ${minutesString}`;\n }, [commuteData?.duration, t]);\n\n const distanceString = useMemo(() => {\n if (!commuteData?.distance) {\n return null;\n }\n\n // HereApi returns the length in metric\n let distanceInUnit = commuteData.distance;\n const isImperialSystem = distanceUnit === \"imperial\";\n\n if (isImperialSystem) {\n distanceInUnit *= METERS_TO_YARDS_CONVERSION_FACTOR;\n }\n\n const kilometersOrMiles =\n distanceInUnit /\n (isImperialSystem ? YARDS_PER_MILE : METERS_PER_KILOMETER);\n\n if (kilometersOrMiles < 1) {\n return `${Math.floor(distanceInUnit)} ${t(`common:distance.${isImperialSystem ? \"yard\" : \"meter\"}`)}`;\n }\n\n return `${Math.floor(kilometersOrMiles * 100) / 100} ${t(`common:distance.${isImperialSystem ? \"mile\" : \"kilometer\"}`)}`;\n }, [commuteData?.distance, t]);\n\n if (!commuteData && !isLoading) {\n return null;\n }\n\n return (\n <div className={styles.container}>\n {isLoading && (\n <span data-testid=\"commute-loading\" className={styles.loading}></span>\n )}\n {!isLoading && durationString && (\n <p data-testid=\"commute-duration\" className={styles.duration}>\n {durationString.toLowerCase()}\n </p>\n )}\n {!isLoading && !durationString && (\n <p data-testid=\"commute-duration\" className={styles.duration}>\n {t(\"commute.results.noRoute\")}\n </p>\n )}\n\n {!isLoading && distanceString && (\n <p data-testid=\"commute-distance\" className={styles.distance}>\n {`${distanceString} - ${t(\"commute.results.fastestRoute\")}`}\n </p>\n )}\n {!isLoading && !distanceString && (\n <p data-testid=\"commute-distance\" className={styles.distance}>\n {t(\"commute.results.trySuggestion\")}\n </p>\n )}\n </div>\n );\n}\n","export const container = `w-full flex flex-row lg:flex-col items-baseline gap-x-4 gap-y-1 text-xs`;\nexport const title = `text-sm font-medium text-gray-800`;\nexport const description = `font-normal text-gray-400`;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\n\nexport function NoRoute() {\n const { t } = useTranslation(\"localContent\");\n\n return (\n <div className={styles.container}>\n <p data-testid=\"no-route-title\" className={styles.title}>\n {t(\"commute.results.noRoute\")}\n </p>\n <p data-testid=\"no-route-description\" className={styles.description}>\n {t(\"commute.results.trySuggestion\")}\n </p>\n </div>\n );\n}\n","export const trigger = `w-full group/select flex basis-0 items-center justify-between h-12 rounded border data-[state=\"open\"]:border-primary-100 px-4 py-3 bg-base-white whitespace-nowrap`;\nexport const icon = `p-1 group-data-[state=\"open\"]/select:rotate-180 transition-transform duration-50 ease-in-out`;\nexport const item = `\n relative flex items-center w-full gap-2 py-2.5 px-4 text-sm font-normal text-gray-400 cursor-pointer\n \n hover:bg-primary-10\n hover:text-base-black\n hover:font-medium\n \n data-[state=\"checked\"]:bg-primary-10\n data-[state=\"checked\"]:text-base-black\n data-[state=\"checked\"]:font-medium\n`;\nexport const content = `bg-white rounded-lg py-3 shadow z-10`;\nexport const contentViewport = `h-[var(--radix-select-trigger-height)] min-w-[var(--radix-select-trigger-width)] w-full`;\n","import React from \"react\";\n\nimport * as RadixSelect from \"@radix-ui/react-select\";\n\nimport {\n CaretDownIcon,\n PersonSimpleWalkIcon,\n CarIcon,\n BicycleIcon,\n} from \"@phosphor-icons/react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport * as styles from \"./styles\";\nimport type { TravelMode } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nconst options = [\"walking\", \"driving\", \"cycling\"] as TravelMode[];\nconst icons = {\n walking: <PersonSimpleWalkIcon size={16} />,\n driving: <CarIcon size={16} />,\n cycling: <BicycleIcon size={16} />,\n};\n\nexport interface SelectProps {\n name: string;\n selected?: TravelMode;\n isOpen?: boolean;\n onChange: (value: TravelMode) => void;\n disabled?: boolean;\n placeholder?: string;\n}\n\nexport const Select = ({\n name,\n selected = options[0],\n onChange,\n disabled,\n}: SelectProps) => {\n const { t } = useTranslation(\"localContent\");\n\n return (\n <RadixSelect.Root\n value={selected}\n onValueChange={(value: string) => onChange(value as TravelMode)}\n >\n <RadixSelect.Trigger\n id={name}\n data-testid={`select-${name}`}\n className={styles.trigger}\n disabled={disabled}\n >\n <RadixSelect.Value placeholder={t(`commute.travelTypes.${selected}`)}>\n {icons[selected]}\n </RadixSelect.Value>\n <RadixSelect.Icon asChild>\n <CaretDownIcon className={styles.icon} size={20} />\n </RadixSelect.Icon>\n </RadixSelect.Trigger>\n\n <RadixSelect.Content\n className={styles.content}\n align=\"start\"\n sticky=\"always\"\n >\n <RadixSelect.Viewport className={styles.contentViewport}>\n <>\n {options.map((value) => (\n <RadixSelect.Item\n className={styles.item}\n key={value}\n value={value}\n >\n <RadixSelect.Icon>{icons[value]}</RadixSelect.Icon>\n\n <RadixSelect.ItemText>\n {t(`commute.travelTypes.${value}`)}\n </RadixSelect.ItemText>\n </RadixSelect.Item>\n ))}\n </>\n </RadixSelect.Viewport>\n </RadixSelect.Content>\n </RadixSelect.Root>\n );\n};\n","export const container = `flex flex-col gap-4`;\nexport const form = `flex gap-2`;\n","import React from \"react\";\n\nexport const textWithHighlighting = (text: string, highlight: string) => {\n // Escape special characters in the highlight, otherwise chracters like '\\'\n // will throw an error.\n const escaped = highlight.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, \"\\\\$&\");\n const parts = text.split(new RegExp(`(${escaped})`, \"gi\"));\n\n return parts.map((part, i) =>\n part.toLowerCase() === highlight.toLowerCase() ? (\n <strong key={i}>{part}</strong>\n ) : (\n <span key={i}>{part}</span>\n ),\n );\n};\n","import type { Suggestion, SuggestionsResponse } from \"../types\";\nimport type { MapboxSuggestion, MapboxSuggestionsResponse } from \"./types\";\n\nconst formatSuggestion = (suggestion: MapboxSuggestion): Suggestion => {\n const { properties } = suggestion;\n const { context } = suggestion.properties;\n\n return {\n label: properties.name,\n language: properties.language,\n countryCode: context.country?.country_code_alpha_3 ?? \"\",\n locationId: properties.mapbox_id,\n address: {\n description: `${properties.name}, ${properties.place_formatted}`,\n country: context.country?.name ?? \"\",\n state: context.region?.region_code ?? \"\",\n city: context.place?.name ?? \"\",\n postalCode: context.postcode?.name ?? \"\",\n county: context.district?.name ?? \"\",\n street: context.address?.street_name ?? \"\",\n houseNumber: context.address?.address_number ?? \"\",\n coordinates: {\n latitude: properties.coordinates.latitude,\n longitude: properties.coordinates.longitude,\n },\n },\n };\n};\n\nexport const transformSuggestionsResponse = (\n response: MapboxSuggestionsResponse,\n): SuggestionsResponse => ({\n suggestions: response.features.map((suggestion: MapboxSuggestion) =>\n formatSuggestion(suggestion),\n ),\n});\n","import { useQuery } from \"@tanstack/react-query\";\nimport type { Location, Country, SuggestionsResponse } from \"./types\";\nimport { transformSuggestionsResponse } from \"./transformSuggestionsResponse\";\n\nimport useDebounce from \"~/hooks/useDebounce\";\n\nconst MAPBOX_ENDPOINT = \"https://api.mapbox.com/search/searchbox/v1/forward?\";\n\nexport function useAddressSearch({\n location,\n country,\n locale = \"en\",\n query,\n}: {\n location: Location;\n country: Country;\n locale?: string;\n query: string;\n}) {\n const debouncedQuery = useDebounce(query, 1250);\n const regionCode = country === \"CAN\" ? \"CA\" : \"US\";\n\n const options = {\n q: debouncedQuery,\n language: locale,\n proximity: `${location.lng},${location.lat}`,\n origin: `${location.lng},${location.lat}`,\n country: regionCode,\n types: \"poi,address,street,neighborhood,locality,city,place\",\n limit: \"5\",\n access_token: import.meta.env.VITE_MAPBOX_API_KEY as string,\n };\n\n /**\n * Fetches address suggestions from Mapbox Search API.\n *\n * @returns SuggestionsResponse\n */\n const fetchSuggestions = async (): Promise<SuggestionsResponse> => {\n const response = await fetch(\n MAPBOX_ENDPOINT + new URLSearchParams(options),\n );\n\n return transformSuggestionsResponse(await response.json());\n };\n\n return useQuery({\n queryKey: [useAddressSearch.name, debouncedQuery],\n queryFn: fetchSuggestions,\n enabled: !!debouncedQuery.length && debouncedQuery.length >= 4,\n });\n}\n","import React, { useState, useEffect, useMemo } from \"react\";\n\nimport { MagnifyingGlassIcon } from \"@phosphor-icons/react\";\nimport { Form as FormComponent } from \"@local-logic/design-system\";\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../context\";\nimport { Route } from \"./Route\";\nimport { NoRoute } from \"./NoRoute\";\nimport { Select } from \"./Select\";\nimport * as styles from \"./styles\";\nimport { browserUtils } from \"~/utils\";\nimport { textWithHighlighting } from \"~/utils/formatters/textWithHighlighting\";\n\nimport type { TravelMode } from \"~/sdks/LocalContent/hooks/useCommute/types\";\n\nimport {\n TrackingPipelineEvents,\n AnalyticsEvents,\n} from \"~/sdks/LocalContent/types\";\n\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useTracking } from \"~/tracking\";\nimport { useAddressSearch } from \"~/sdks/LocalContent/hooks/useAddressSearch\";\nimport type { Suggestion } from \"~/sdks/LocalContent/hooks/useAddressSearch/types\";\n\nexport function Form() {\n const { t } = useTranslation(\"localContent\");\n const tracking = useTracking();\n const breakpoints = useResponsiveBreakpoints();\n const {\n commuteData,\n commuteOptions,\n isCommuteDataLoading,\n country,\n location,\n handleCalculateCommute,\n } = useRootElement();\n\n // State for search input field\n const [isFieldFocused, setIsFieldFocused] = useState(false);\n const [searchQuery, setSearchQuery] = useState(\"\");\n const [selectedValue, setSelectedValue] = useState<string | undefined>();\n\n const { data, isLoading } = useAddressSearch({\n query: searchQuery,\n country,\n location,\n });\n\n useEffect(() => {\n if (typeof commuteData?.label === \"string\" && commuteData.label !== \"\") {\n setSelectedValue(commuteData.label);\n }\n }, [commuteData?.label]);\n\n const suggestionResults = useMemo(\n () =>\n !searchQuery\n ? (\n browserUtils.commuteHistory.getSuggestionHistory() as Suggestion[]\n ).slice(0, 3)\n : data?.suggestions || [],\n [searchQuery, data?.suggestions],\n );\n\n const options = useMemo(() => {\n if (!isFieldFocused || !suggestionResults.length) {\n return [];\n }\n\n return suggestionResults\n .filter(\n (suggestion) => typeof suggestion?.address?.description === \"string\",\n )\n .map((suggestion) => ({\n value: suggestion.address?.description || \"\",\n label: textWithHighlighting(\n suggestion.address?.description || \"\",\n searchQuery,\n ),\n key: suggestion.locationId || `address-${suggestion.locationId}`,\n })) as unknown as FormComponent.Option<string>[];\n }, [isFieldFocused, searchQuery, suggestionResults]);\n\n const handleOnSearchChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(e.target.value);\n };\n\n const handleOnSearchClear = () => {\n handleCalculateCommute({\n ...commuteOptions,\n label: undefined,\n destination: undefined,\n });\n setSelectedValue(undefined);\n };\n\n const handleOnSelect = async (value: string) => {\n setSelectedValue(value);\n\n const suggestion = suggestionResults.find(\n (suggestionResult) => suggestionResult.address?.description === value,\n );\n\n if (typeof suggestion === \"undefined\") {\n return;\n }\n\n if (typeof suggestion?.address?.coordinates !== \"undefined\") {\n browserUtils.commuteHistory.push(suggestion);\n handleCalculateCommute({\n ...commuteOptions,\n label: value,\n destination: {\n lat: suggestion.address.coordinates.latitude,\n lng: suggestion.address.coordinates.longitude,\n },\n });\n\n const eventAttributes = {\n label: value,\n mode: commuteOptions.commuteType,\n destinationLat: suggestion.address.coordinates.latitude,\n destinationLng: suggestion.address.coordinates.longitude,\n };\n\n tracking.postEvent({\n eventType: TrackingPipelineEvents.COMMUTE_CALCULATOR_CALCULATE_ROUTE,\n eventAttributes: Object.entries(eventAttributes).map(\n ([key, objectValue]) => ({\n label: key,\n data: objectValue,\n }),\n ),\n });\n\n tracking.trackAnalyticsEvent({\n eventName: AnalyticsEvents.COMMUTE_CALCULATOR_CALCULATE_ROUTE,\n eventAttributes,\n });\n }\n };\n\n const handleOnFieldFocus = () => {\n setIsFieldFocused(true);\n };\n\n const handleOnFieldBlur = () => {\n setIsFieldFocused(false);\n };\n\n const handleOnCommuteTypeChange = (value: TravelMode) => {\n handleCalculateCommute({\n ...commuteOptions,\n commuteType: value,\n });\n };\n\n return (\n <div className={styles.container}>\n <FormComponent.Root\n initialValues={{ searchQuery: \"\" }}\n className={styles.form}\n >\n <FormComponent.SearchAndSelect<string>\n name=\"searchQuery\"\n label={\n !selectedValue &&\n !isFieldFocused &&\n typeof commuteData?.label === \"string\"\n ? commuteData.label\n : t(\"commute.placeholder\")\n }\n direction={breakpoints.sm ? \"topToBottom\" : \"bottomToTop\"}\n maxLength={150}\n clearOnSelect={false}\n selectedLabel={selectedValue}\n prefixIcon={MagnifyingGlassIcon}\n isLoading={isLoading || isCommuteDataLoading}\n options={options}\n onChange={handleOnSearchChange}\n onClear={handleOnSearchClear}\n onSelect={handleOnSelect}\n onFocus={handleOnFieldFocus}\n onBlur={handleOnFieldBlur}\n />\n\n <Select\n name=\"commuteType\"\n selected={commuteOptions.commuteType}\n onChange={handleOnCommuteTypeChange}\n />\n </FormComponent.Root>\n\n <Route isLoading={isCommuteDataLoading} />\n {typeof commuteOptions.destination !== \"undefined\" &&\n commuteData === null &&\n !isCommuteDataLoading && <NoRoute />}\n </div>\n );\n}\n","export const container = `w-full flex justify-between items-center mb-2`;\nexport const title = `text-xs font-normal text-base-black`;\nexport const icon = `w-4 h-4 ml-3 cursor-pointer`;\n","import React from \"react\";\n\nimport { XIcon } from \"@phosphor-icons/react\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useRootElement } from \"../context\";\n\nimport * as styles from \"./styles\";\n\nexport function Header({\n hideCloseButton = false,\n}: {\n hideCloseButton?: boolean;\n}) {\n const { t } = useTranslation(\"localContent\");\n const { onToggleIsOpen } = useRootElement();\n\n return (\n <div className={styles.container}>\n <h2 data-testid=\"commute-calculator-title\" className={styles.title}>\n {t(\"commute.cta\")}\n </h2>\n\n {!hideCloseButton && (\n <button\n onClick={onToggleIsOpen}\n data-testid=\"commute-calculator-close-button\"\n >\n <XIcon weight=\"bold\" className={styles.icon} />\n </button>\n )}\n </div>\n );\n}\n","import React from \"react\";\n\nimport type { RootProps } from \"./types\";\n\nimport { RootElementContextProvider } from \"./context\";\n\nexport const Root = ({ isDisabled = false, children }: RootProps) => (\n <RootElementContextProvider>\n {!isDisabled && children}\n </RootElementContextProvider>\n);\n\n// Export children\nexport { Trigger } from \"./Trigger\";\nexport { Card } from \"./Card\";\nexport { Slider } from \"./Slider\";\nexport { Form } from \"./Form\";\nexport { Header } from \"./Header\";\n","export const container = `relative bg-base-white w-full h-screen flex flex-col`;\n// Although we set \"bottom\" for mobile here, it will be overridden by inline style in Content.tsx\nexport const menuMobileBottomOffset = 64;\nexport const menuMobileBottomOffsetExpanded = 20;\nexport const menu = `\n absolute max-sm:bottom-16 max-sm:left-2 sm:top-3 sm:right-3 flex gap-x-2 items-center justify-end\n`;\n","import React, { useMemo, useLayoutEffect, useRef, useState } from \"react\";\n\nimport { Header } from \"../Header\";\nimport { Map } from \"../Map\";\nimport { Sidebar } from \"../Sidebar\";\nimport { ScoresPillList } from \"../ScoresPillList\";\nimport { ScoreDetailsSlider } from \"../ScoreDetailsSlider\";\nimport { CommuteCalculator } from \"../CommuteCalculator\";\n\nimport * as styles from \"./styles\";\nimport { SCORE_POI_CATEGORIES } from \"~/sdks/LocalContent/constants\";\nimport { Attribution } from \"~/components/Attribution\";\nimport type {\n CategoryKey,\n ScoreKey,\n CategoryOptions,\n} from \"~/sdks/LocalContent/types\";\nimport type { TransformedScoresMenuData } from \"~/sdks/LocalContent/utils/transformScoresMenuData/types\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { useLocalContent } from \"~/sdks/LocalContent/context\";\n\nconst SCORE_VALUE_THRESHOLD = 0.1;\n\nexport function Content() {\n const breakpoints = useResponsiveBreakpoints();\n const mobileScoreDetailsSliderRef = useRef<HTMLDivElement>(null);\n const [mobileCommuteButtonBottomOffset, setMobileCommuteButtonBottomOffset] =\n useState(styles.menuMobileBottomOffset);\n const {\n isCommuteCalculatorOpen,\n isScoresLoading,\n isMarkersLoading,\n isSidebarExpanded,\n hideAttribution,\n scoresMenu,\n scoresData,\n activeScore,\n activeScoreData,\n activeCategory,\n activeCategoryData,\n markersData,\n centerMarker,\n hideScoresList,\n locale,\n handleSelectScore,\n handleToggleIsSidebarExpanded,\n } = useLocalContent();\n\n const isMobile = useMemo(() => !breakpoints.sm, [breakpoints.sm]);\n\n const filteredScoresMenu = useMemo(\n () =>\n ({\n ...scoresMenu,\n categories: scoresMenu.categories\n .map(\n ([categoryKey, categoryValue]) =>\n [\n categoryKey,\n {\n ...categoryValue,\n scores: categoryValue.scores.filter(\n ([scoreKey, scoreValue]) => {\n // It pertains to the \"hideScores\" option in the SDK\n // https://docs.locallogic.co/docs/sdks/widgets/local-content#sdkoptions\n if (\n (hideScoresList.includes(scoreKey) ||\n scoreValue.hide) &&\n SCORE_POI_CATEGORIES[scoreKey].length === 0\n ) {\n return false;\n }\n\n return (\n typeof scoresData?.[scoreKey]?.value !== \"undefined\" &&\n scoresData[scoreKey].value > SCORE_VALUE_THRESHOLD\n );\n },\n ),\n },\n ] as [CategoryKey, CategoryOptions],\n )\n .filter(\n ([, categoryValue]) =>\n Array.isArray(categoryValue.scores) &&\n categoryValue.scores.length > 0,\n ),\n }) as TransformedScoresMenuData,\n [scoresMenu, scoresData],\n );\n\n const commuteCalculatorMenuStyles = useMemo(\n () =>\n isMobile ? { bottom: `${mobileCommuteButtonBottomOffset}px` } : undefined,\n [isMobile, mobileCommuteButtonBottomOffset],\n );\n\n useLayoutEffect(() => {\n const currentRef = mobileScoreDetailsSliderRef?.current;\n\n const handleRefTransition = () => {\n if (typeof currentRef?.offsetHeight !== \"undefined\") {\n setMobileCommuteButtonBottomOffset(\n (currentRef?.offsetHeight || 0) +\n styles.menuMobileBottomOffsetExpanded,\n );\n } else {\n setMobileCommuteButtonBottomOffset(styles.menuMobileBottomOffset);\n }\n };\n\n if (currentRef && !isCommuteCalculatorOpen) {\n currentRef.addEventListener(\"transitionrun\", handleRefTransition);\n currentRef.addEventListener(\"transitionend\", handleRefTransition);\n } else if (\n mobileCommuteButtonBottomOffset !== styles.menuMobileBottomOffset &&\n !isCommuteCalculatorOpen\n ) {\n setMobileCommuteButtonBottomOffset(styles.menuMobileBottomOffset);\n }\n\n return () => {\n currentRef?.removeEventListener(\"transitionrun\", handleRefTransition);\n currentRef?.removeEventListener(\"transitionend\", handleRefTransition);\n };\n }, [isCommuteCalculatorOpen, mobileCommuteButtonBottomOffset, activeScore]);\n\n return (\n <div className={styles.container}>\n {isMobile && filteredScoresMenu.categories.length > 0 && (\n <Header scores={filteredScoresMenu} />\n )}\n\n <Map>\n {isMobile && activeCategory && (\n <>\n <ScoresPillList\n scores={filteredScoresMenu.categories\n .find(([key]) => key === activeCategory)?.[1]\n .scores.flatMap(([scoreKey]) => scoreKey)}\n backgroundColor={activeCategoryData?.colors?.background}\n fillColor={activeCategoryData?.colors?.fill}\n />\n\n <ScoreDetailsSlider ref={mobileScoreDetailsSliderRef} />\n </>\n )}\n\n {!isMobile && filteredScoresMenu.categories.length > 0 && (\n <Sidebar.Root\n isExpanded={isSidebarExpanded}\n isScoresLoading={isScoresLoading}\n isMarkersLoading={isMarkersLoading}\n activeScore={activeScore}\n activeScoreData={activeScoreData}\n markersData={markersData}\n onSelectScore={handleSelectScore}\n onToggleIsExpanded={handleToggleIsSidebarExpanded}\n >\n <Sidebar.Header title={scoresMenu?.title} />\n <Sidebar.Content>\n {filteredScoresMenu.categories.map(([categoryKey, category]) => (\n <Sidebar.Category\n key={`category-${categoryKey}`}\n categoryKey={categoryKey as CategoryKey}\n >\n {category.scores.map(([scoreKey, _score]) => (\n <Sidebar.Score\n key={`sidebar-score-${categoryKey}-${scoreKey}`}\n scoreKey={scoreKey as ScoreKey}\n backgroundColor={category.colors?.background}\n fillColor={category.colors?.fill}\n />\n ))}\n </Sidebar.Category>\n ))}\n </Sidebar.Content>\n\n <Sidebar.Slider>\n <Sidebar.ScoreDetails />\n </Sidebar.Slider>\n </Sidebar.Root>\n )}\n\n <CommuteCalculator.Root\n isDisabled={typeof centerMarker === \"undefined\"}\n >\n <div className={styles.menu} style={commuteCalculatorMenuStyles}>\n {!isCommuteCalculatorOpen && <CommuteCalculator.Trigger />}\n\n {!isMobile && (\n <CommuteCalculator.Card>\n <CommuteCalculator.Header />\n <CommuteCalculator.Form />\n </CommuteCalculator.Card>\n )}\n </div>\n\n {isMobile && (\n <CommuteCalculator.Slider>\n <CommuteCalculator.Header hideCloseButton />\n <CommuteCalculator.Form />\n </CommuteCalculator.Slider>\n )}\n </CommuteCalculator.Root>\n </Map>\n <Attribution\n sdkName=\"local-content\"\n locale={locale}\n isHidden={hideAttribution}\n />\n </div>\n );\n}\n","import { number, object, ObjectSchema, string, mixed, boolean } from \"yup\";\nimport { MapProvider } from \"./types\";\nimport type { Options } from \"./types\";\n\ntype MarkerIcon = \"house\" | \"pin\";\ntype DistanceUnit = \"metric\" | \"imperial\";\n\nconst scoreObject = object({\n hide: boolean().optional(),\n hideScore: boolean().optional(),\n order: number().optional(),\n}).optional();\n\nconst colorsObject = object({\n background: string().required(),\n fill: string().required(),\n}).optional();\n\nconst scoresMenu = object({\n defaultOpen: boolean().optional(),\n title: mixed<string | boolean>().optional(),\n categories: object({\n transport: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n pedestrian_friendly: scoreObject,\n transit_friendly: scoreObject,\n cycling_friendly: scoreObject,\n car_friendly: scoreObject,\n }).optional(),\n }).optional(),\n education: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n daycares: scoreObject,\n primary_schools: scoreObject,\n high_schools: scoreObject,\n }).optional(),\n }).optional(),\n amenities: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n shopping: scoreObject,\n groceries: scoreObject,\n restaurants: scoreObject,\n cafes: scoreObject,\n }).optional(),\n }).optional(),\n character: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n nightlife: scoreObject,\n vibrant: scoreObject,\n historic: scoreObject,\n quiet: scoreObject,\n }).optional(),\n }).optional(),\n nature: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n parks: scoreObject,\n greenery: scoreObject,\n }).optional(),\n }).optional(),\n health: object({\n hide: boolean().optional(),\n order: number().optional(),\n colors: colorsObject,\n scores: object({\n wellness: scoreObject,\n }).optional(),\n }).optional(),\n }).optional(),\n})\n .optional()\n .default({\n defaultOpen: true,\n });\n\nexport const schema: ObjectSchema<Options> = object({\n lat: number()\n .min(-90, \"Must be a valid latitude.\")\n .max(90, \"Must be a valid latitude.\")\n .required(),\n lng: number()\n .min(-180, \"Must be a valid longitude.\")\n .max(180, \"Must be a valid longitude.\")\n .required(),\n zoom: number().optional(),\n pitch: number().optional(),\n bearing: number().optional(),\n distanceUnit: mixed<DistanceUnit>().oneOf([\"metric\", \"imperial\"]).optional(),\n marker: object({\n lat: number()\n .min(-90, \"Must be a valid latitude.\")\n .max(90, \"Must be a valid latitude.\")\n .required(),\n lng: number()\n .min(-180, \"Must be a valid longitude.\")\n .max(180, \"Must be a valid longitude.\")\n .required(),\n icon: mixed<MarkerIcon>().oneOf([\"house\", \"pin\"]).optional(),\n addressLabel: string().optional(),\n }).default(undefined),\n cooperativeGestures: boolean().optional(),\n mapProvider: mixed<MapProvider>().optional(),\n hideScores: boolean().optional(),\n showSchoolRatings: boolean().optional(),\n scoresMenu,\n hideAttribution: boolean().optional(),\n}).noUnknown(true);\n\nexport const validateOptions = (options: Options) =>\n schema.validate(options, { abortEarly: false });\n","import React from \"react\";\n\nimport { Content } from \"./components/Content\";\nimport { LocalContentProvider } from \"./context\";\nimport { schema } from \"./schema\";\nimport { LocalContentProps } from \"./types\";\nimport { SurveyTriggerProvider } from \"./hooks/useSurveyTrigger/SurveyTriggerProvider\";\n\nimport { TrackingProvider, initializeAnalytics } from \"~/tracking\";\n\n// TODO Move this import to sdks/sdks-app/src/App.tsx once all SDKs are migrated\nimport \"~/assets/styles/globals.css\";\n\nimport { ValidateOptions } from \"~/components/ValidateOptions\";\nimport { LocalLogicProvider } from \"~/context/LocalLogicProvider\";\nimport { useStateManagerContext } from \"~/context/stateManager\";\nimport { useResponsiveBreakpoints } from \"~/hooks/useResponsiveBreakpoints\";\nimport { ProductNames } from \"~/types\";\nimport { ANALYTICS_SETTINGS } from \"~/constants/analytics\";\n\ninitializeAnalytics(ANALYTICS_SETTINGS.localContent.key);\n\nconst LocalContent = () => {\n const { sdkState } = useStateManagerContext<LocalContentProps>();\n const breakpoints = useResponsiveBreakpoints();\n const locale = sdkState.globalOptions?.locale || \"en\";\n\n if (\n Object.hasOwnProperty.call(\n sdkState?.options?.scoresMenu?.categories || {},\n \"wellness\",\n )\n ) {\n try {\n // Remove wellness category if it exists in the options\n\n sdkState.options!.scoresMenu!.categories!.health = {\n ...sdkState.options!.scoresMenu!.categories!.health,\n // @ts-expect-error -- We renamed the category, so TS gets confused here\n ...sdkState.options?.scoresMenu?.categories?.wellness,\n };\n // @ts-expect-error -- We renamed the category, so TS gets confused here\n delete sdkState.options!.scoresMenu!.categories!.wellness;\n\n console.warn(\n \"[Local Content SDK] The 'wellness' scores category has been renamed to 'health'. Please update your SDK options accordingly.\",\n );\n } catch (_error) {\n // Do nothing\n }\n }\n\n return (\n <ValidateOptions\n sdk=\"Local Content\"\n schema={schema}\n options={sdkState.options!}\n >\n <LocalLogicProvider\n environment={sdkState.globalOptions?.environment?.api}\n apiKey={sdkState.apiKey}\n appearance={sdkState.globalOptions?.appearance}\n locale={sdkState.globalOptions?.locale}\n product={ProductNames.LOCAL_CONTENT}\n >\n <TrackingProvider\n trackingPipelineSettings={{\n apiKey: sdkState.apiKey || \"\",\n }}\n analyticsSettings={ANALYTICS_SETTINGS.localContent}\n meta={{\n clientId: sdkState.clientId,\n productName: ProductNames.LOCAL_CONTENT,\n productVersion: FULL_APP_VERSION,\n }}\n attributes={{\n location: {\n lat: sdkState.options?.lat,\n lng: sdkState.options?.lng,\n },\n host: sdkState.location,\n host_url: document.referrer,\n locale,\n // The mobile experience is enabled from below the sm breakpoint\n isMobile: !breakpoints.sm,\n mapProvider: sdkState.options?.mapProvider?.name,\n }}\n flags={{\n isDebugMode:\n import.meta.env.VITE_TRACKING_PIPELINE_DEBUG === \"true\",\n }}\n >\n <SurveyTriggerProvider>\n <LocalContentProvider>\n <Content />\n </LocalContentProvider>\n </SurveyTriggerProvider>\n </TrackingProvider>\n </LocalLogicProvider>\n </ValidateOptions>\n );\n};\n\nexport default LocalContent;\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,28],"mappings":"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"}
|