{"mappings":"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B,EAAK,UAAU,EAExB,CAAA,EAAuB,EADV,EAAK,UAAU,CACiB,EAAG,IAAhD,EAEF,IAAM,EAAgB,EAAqB,OAAO,CAAC,KAAM,KAEnD,EAAoB,AAAA,CAAA,EAAA,EAAA,aAAY,AAAZ,EAAc,GACxC,EAAK,IAAI,CAAC,CACR,KAAM,aACN,WAAY,CACd,EACF,MAAW,EAAK,UAAU,EAAI,AAAoB,oBAApB,EAAK,UAAU,EAC3C,EAAK,IAAI,CAAC,CACR,KAAM,AAAA,EAAA,WAAU,CAAE,gBAAgB,CAClC,UAAW,CAAA,EACX,MAAO,AAAA,EAAA,cAAa,CAAE,WAAW,AACnC,GAGF,OAAO,CACT,CAEA,SAAS,EAAU,CAAgB,CAAE,CAAa,CAAE,CAAmB,EACrE,OACE,EAAS,MAAM,CAAC,EAAG,GACnB,EACA,EAAS,MAAM,CAAC,EAAQ,EAAY,MAAM,CAE9C,C,G,E,Q,S,C,C,C,E,E,E,O,C,S,W,O,C,G,E,E,O,C,e,W,O,C,G,E,E,O,C,gB,W,O,C,G,E,E,O,C,gB,W,O,C,G,E,E,O,C,kB,W,O,C,G,E,E,O,C,qB,W,O,C,G,E,E,O,C,e,W,O,C,G,E,E,O,C,sB,W,O,C,G,E,E,O,C,qB,W,O,C,G,E,E,O,C,qB,W,O,C,G,E,E,O,C,yB,W,O,C,G,E,E,O,C,yB,W,O,C,G,E,E,O,C,yB,W,O,C,G,E,E,O,C,uB,W,O,C,G,E,E,O,C,2B,W,O,C,G,E,E,O,C,gC,W,O,C,G,E,E,O,C,0B,W,O,C,G,E,E,O,C,8B,W,O,C,G,E,E,O,C,gC,W,O,C,G,E,E,O,C,yB,W,O,C,G,E,E,O,C,e,W,O,C,G,E,E,O,C,a,W,O,C,G,E,E,O,C,oB,W,O,C,G,E,E,O,C,sB,W,O,C,G,E,E,O,C,oB,W,O,C,G,E,E,O,C,e,W,O,C,G,E,E,O,C,iB,W,O,C,G,E,E,O,C,qB,W,O,C,GC3hBO,IAAM,EAAS,6CACT,EAAe,0BAIf,EAAa,OAAO,QAAQ,CAAC,MAAM,CAGnC,EAAgB,MAAO,IAClC,IAAM,EAAW,MAAM,MACrB,EAAS,CAAC,kCAAkC,EAAE,EAAS,CAAC,EAG1D,OADc,MAAM,EAAS,IAAI,EAEnC,EA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","sources":["","js/React/components/ObjectCardComponents/EstateCardContent.tsx","js/React/filterTools.tsx","js/React/services/api.tsx"],"sourcesContent":["(function () {\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$defineInteropFlag(a) {\n Object.defineProperty(a, '__esModule', {value: true, configurable: true});\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n var parcelRequire = $parcel$global[\"parcelRequire7bbe\"];\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"3q65I\", function(module, exports) {\n\n$parcel$defineInteropFlag(module.exports);\n\n$parcel$export(module.exports, \"default\", function () { return $0fe54c1df2860e33$export$2e2bcd8739ae039; });\n\nvar $a9eYm = parcelRequire(\"a9eYm\");\n\nvar $dTCkE = parcelRequire(\"dTCkE\");\n\nvar $cUbQm = parcelRequire(\"cUbQm\");\n\nvar $l8eky = parcelRequire(\"l8eky\");\n\nvar $N2wHE = parcelRequire(\"N2wHE\");\nparcelRequire(\"lLUSR\");\n\nvar $22cn8 = parcelRequire(\"22cn8\");\nconst $0fe54c1df2860e33$var$EstateCardContent = ({ estate: estate, smallCard: smallCard, brokerOrOffice: brokerOrOffice })=>{\n const hasRooms = estate.numberOfRooms;\n const estateType = estate.estateType;\n const city = estate?.city;\n const area = estate?.area;\n const plotSize = estate?.plotSize;\n const propertyArea = estate?.propertyArea;\n let moveinDate = new Date();\n let totalPropertyArea;\n const { isMediumScreen: isMediumScreen, isBigScreen: isBigScreen } = (0, $dTCkE.useContext)((0, $22cn8.FilterContext));\n if (estateType === (0, $cUbQm.EstateType).Agriculture) totalPropertyArea = parseInt(propertyArea);\n (0, $dTCkE.useEffect)(()=>{\n moveinDate = new Date(estate?.movingIn);\n }, [\n estate?.movingIn\n ]);\n (0, (/*@__PURE__*/$parcel$interopDefault($N2wHE))).locale(\"sv\");\n return /*#__PURE__*/ (0, $a9eYm.jsxs)(\"div\", {\n className: `min-h-[6.5rem] ${smallCard ? \"py-1.5 mdplus:py-4 mdplus:px-4\" : \"md:px-4 py-4\"} px-3 flex flex-col justify-center ${estate?.estateType === (0, $cUbQm.EstateType).Commercial ? \"border-t-5 mdplus:border-t-0 border-black500\" : \"\"}${estate?.headStartIcon && estate?.estateType !== (0, $cUbQm.EstateType).Project && estate?.estateType !== (0, $cUbQm.EstateType).Commercial ? \"border-t-5 mdplus:border-t-0 border-blue700\" : \"\"}`,\n children: [\n estate?.estateType === (0, $cUbQm.EstateType).Commercial ? /*#__PURE__*/ (0, $a9eYm.jsx)(\"p\", {\n className: \"font-icb my-0 text-black500\",\n children: estate?.estateType\n }) : /*#__PURE__*/ (0, $a9eYm.jsx)((0, $a9eYm.Fragment), {}),\n estate?.headStartIcon ? /*#__PURE__*/ (0, $a9eYm.jsx)(\"p\", {\n className: \"font-icb my-0 text-blue700\",\n children: (0, $cUbQm.Status).headStart\n }) : /*#__PURE__*/ (0, $a9eYm.jsx)((0, $a9eYm.Fragment), {}),\n /*#__PURE__*/ (0, $a9eYm.jsxs)(\"p\", {\n className: `${smallCard ? \"hidden mdplus:flex\" : \"\"}\r\n !m-0 items-center flex text-black500`,\n children: [\n city && area && area !== \"\" && city !== \"\" && city?.toLowerCase() !== area?.toLowerCase() && area?.toLowerCase().indexOf(city?.toLowerCase()) === -1 ? /*#__PURE__*/ (0, $a9eYm.jsxs)((0, $a9eYm.Fragment), {\n children: [\n (0, $l8eky.capitalizeFirstLetter)(city?.toLowerCase()),\n \" -\",\n \" \",\n (0, $l8eky.capitalizeFirstLetter)(area?.toLowerCase())\n ]\n }) : area ? /*#__PURE__*/ (0, $a9eYm.jsx)((0, $a9eYm.Fragment), {\n children: (0, $l8eky.capitalizeFirstLetter)(area?.toLowerCase())\n }) : /*#__PURE__*/ (0, $a9eYm.jsx)((0, $a9eYm.Fragment), {}),\n city && !area && /*#__PURE__*/ (0, $a9eYm.jsx)((0, $a9eYm.Fragment), {\n children: (0, $l8eky.capitalizeFirstLetter)(city?.toLowerCase())\n })\n ]\n }),\n estate.streetAddress && estate.streetAddress !== \"-\" && !estate.projectName && /*#__PURE__*/ (0, $a9eYm.jsx)(\"h3\", {\n className: `font-icb text-black500 mb-2 mt-1 text-left text-2xl`,\n children: estate?.streetAddress\n }),\n !estate.streetAddress && !estate.projectName && !estate.propertyUnitDesignation || estate.streetAddress === \"-\" && !estate.propertyUnitDesignation && /*#__PURE__*/ (0, $a9eYm.jsx)(\"h3\", {\n className: `font-icb text-black500 mb-2 mt-1 text-left text-2xl`,\n children: \"Adress saknas\"\n }),\n !estate.projectName && (estate.streetAddress === \"-\" || estate.streetAddress === \"\") && estate.propertyUnitDesignation !== null && /*#__PURE__*/ (0, $a9eYm.jsx)(\"h3\", {\n className: `font-icb text-black500 mb-2 mt-1 text-left text-2xl`,\n children: estate.propertyUnitDesignation\n }),\n estate.projectName && /*#__PURE__*/ (0, $a9eYm.jsx)(\"h3\", {\n className: `font-icb text-black500 mb-2 mt-1 text-left text-2xl`,\n children: estate?.projectName\n }),\n /*#__PURE__*/ (0, $a9eYm.jsxs)(\"p\", {\n className: `flex flex-wrap gap-x-4 gap-y-1 my-0 mb-2 max-w-xs2 font-icb`,\n children: [\n estate.startPrice || estate.status === (0, $cUbQm.EstateStatuses).Sold && estate?.finalPrice ? /*#__PURE__*/ (0, $a9eYm.jsxs)(\"span\", {\n className: \"text-black500 infoItem\",\n children: [\n estate.startPrice && estate.status !== (0, $cUbQm.EstateStatuses).Sold ? (0, $l8eky.formatLargeNumbers)(estate.startPrice) + \" kr\" : \"\",\n estate.status === (0, $cUbQm.EstateStatuses).Sold && estate.finalPrice ? \"Slutpris: \" + (0, $l8eky.formatLargeNumbers)(estate.finalPrice) + \" kr\" : \"\",\n estate.status === (0, $cUbQm.EstateStatuses).Sold && !estate.finalPrice && estate.startPrice ? (0, $l8eky.formatLargeNumbers)(estate.startPrice) + \" kr\" : \"\"\n ]\n }) : /*#__PURE__*/ (0, $a9eYm.jsx)((0, $a9eYm.Fragment), {}),\n hasRooms !== null && hasRooms !== 0 && estateType !== (0, $cUbQm.EstateType).Agriculture && isMediumScreen ? /*#__PURE__*/ (0, $a9eYm.jsx)(\"span\", {\n className: `text-black500 infoItem ${smallCard ? \"hidden mdplus:block\" : \"\"}`,\n children: estate?.numberOfRooms + \" rum\"\n }) : \"\",\n estate.livingspace && estateType !== (0, $cUbQm.EstateType).Agriculture && (!estate.otherSpace || estate.otherSpace === 0) && (isMediumScreen || estate.status !== (0, $cUbQm.EstateStatuses).Sold) ? /*#__PURE__*/ (0, $a9eYm.jsx)(\"span\", {\n className: `text-black500 infoItem ${smallCard ? \"hidden mdplus:block\" : \"\"}`,\n children: estate.livingspace && estate.livingspace !== 0 ? estate.livingspace + \" m\\xb2\" : \"\"\n }) : \"\",\n estate.livingspace && estateType === (0, $cUbQm.EstateType).Commercial ? /*#__PURE__*/ (0, $a9eYm.jsx)(\"span\", {\n className: `text-black500 infoItem ${smallCard ? \"hidden mdplus:block\" : \"\"}`,\n children: estate.livingspace && estate.livingspace !== 0 ? estate.livingspace + \" m\\xb2\" : \"\"\n }) : \"\",\n estate.livingspace && estateType !== (0, $cUbQm.EstateType).Agriculture && estateType !== (0, $cUbQm.EstateType).Commercial && estate.otherSpace && estate.otherSpace !== 0 && (isBigScreen || estate.status !== (0, $cUbQm.EstateStatuses).Sold) ? /*#__PURE__*/ (0, $a9eYm.jsx)(\"span\", {\n className: `text-black500 infoItem ${smallCard ? \"hidden mdplus:block\" : \"\"}`,\n children: estate.livingspace && estate.livingspace !== 0 ? estate.livingspace + \" + \" + estate.otherSpace + \" m\\xb2\" : \"\"\n }) : \"\",\n plotSize !== 0 && estateType === (0, $cUbQm.EstateType).Plot && /*#__PURE__*/ (0, $a9eYm.jsxs)(\"span\", {\n className: `text-black500 infoItem ${smallCard ? \"hidden mdplus:block\" : \"\"}`,\n children: [\n plotSize,\n \" m\",\n /*#__PURE__*/ (0, $a9eYm.jsx)(\"sup\", {\n children: \"2\"\n })\n ]\n }),\n propertyArea && totalPropertyArea && totalPropertyArea !== 0 && estateType === (0, $cUbQm.EstateType).Agriculture ? /*#__PURE__*/ (0, $a9eYm.jsxs)(\"span\", {\n className: \"text-black500 infoItem\",\n children: [\n totalPropertyArea,\n \" ha\"\n ]\n }) : \"\"\n ]\n }),\n estate.movingIn && moveinDate && (estate.status === (0, $cUbQm.EstateStatuses).Sold || estate.status === (0, $cUbQm.EstateStatuses).SoldOut) && /*#__PURE__*/ (0, $a9eYm.jsxs)(\"span\", {\n className: \"text-base text-black500\",\n children: [\n \"S\\xe5ld: \",\n (0, (/*@__PURE__*/$parcel$interopDefault($N2wHE)))(estate.movingIn, \"DD-MM-YYYY\").format(\"YYYY-MM-DD\")\n ]\n }),\n (estate.ldPlus || estate.greenEstate) && estate.status !== (0, $cUbQm.EstateStatuses).Sold && estate.status !== (0, $cUbQm.EstateStatuses).SoldOut && /*#__PURE__*/ (0, $a9eYm.jsxs)(\"div\", {\n className: \"flex flex-wrap\",\n children: [\n estate.ldPlus && /*#__PURE__*/ (0, $a9eYm.jsx)(\"span\", {\n className: \"mr-2 text-base text-black500\",\n children: (0, $cUbQm.Estates).LDPlus\n }),\n estate.greenEstate && /*#__PURE__*/ (0, $a9eYm.jsxs)(\"div\", {\n className: \"flex flex-wrap\",\n title: `${(0, $cUbQm.ServicesTitles).GreenEstate} inneb\\xe4r att bostaden har energideklaration klass A eller B`,\n children: [\n !brokerOrOffice && /*#__PURE__*/ (0, $a9eYm.jsx)(\"span\", {\n className: \"mr-2 text-base text-black500\",\n children: (0, $cUbQm.ServicesTitles).GreenEstate\n }),\n brokerOrOffice && (estate.ldPlus && !estate.headStartIcon || !estate.ldPlus && estate.headStartIcon || !estate.ldPlus && !estate.headStartIcon) && /*#__PURE__*/ (0, $a9eYm.jsx)(\"span\", {\n children: (0, $cUbQm.ServicesTitles).GreenEstate\n })\n ]\n })\n ]\n })\n ]\n });\n};\nvar $0fe54c1df2860e33$export$2e2bcd8739ae039 = $0fe54c1df2860e33$var$EstateCardContent;\n\n});\nparcelRegister(\"22cn8\", function(module, exports) {\n\n$parcel$export(module.exports, \"getFilterFromQueryParams\", function () { return $3a2a085f4d14c4e3$export$e21ccb11fb11305c; });\n$parcel$export(module.exports, \"filterToQuerystring\", function () { return $3a2a085f4d14c4e3$export$81fb3fd77062e5ad; });\n$parcel$export(module.exports, \"FilterContext\", function () { return $3a2a085f4d14c4e3$export$152247e07967bd8f; });\n$parcel$export(module.exports, \"getFilterFromPath\", function () { return $3a2a085f4d14c4e3$export$3f6d48775dbb7b16; });\n\nvar $cUbQm = parcelRequire(\"cUbQm\");\n\nvar $l8eky = parcelRequire(\"l8eky\");\n\nvar $515ZP = parcelRequire(\"515ZP\");\n\nvar $5J7FU = parcelRequire(\"5J7FU\");\n\nvar $dTCkE = parcelRequire(\"dTCkE\");\nasync function $3a2a085f4d14c4e3$export$e21ccb11fb11305c() {\n const tags = [];\n const params = new URLSearchParams(window.location.search);\n // estate types\n const estateTypeParam = params.get((0, $cUbQm.FilterParams).ESTATETYPE_PARAM);\n estateTypeParam?.split(\",\").forEach((estateType)=>{\n tags.push({\n type: \"estateType\",\n estateType: estateType\n });\n });\n const municiParam = params.get((0, $cUbQm.FilterParams).MUNICI_PARAM);\n municiParam?.split(\",\").forEach((municipality)=>{\n tags.push({\n type: \"munici\",\n id: municipality,\n label: `${municipality} (Kommun)`\n });\n });\n const countyParam = params.get((0, $cUbQm.FilterParams).COUNTY_PARAM);\n countyParam?.split(\",\").forEach((county)=>{\n tags.push({\n type: \"county\",\n id: county,\n label: `${county} (L\\xe4n)`\n });\n });\n const areaParam = params.get((0, $cUbQm.FilterParams).AREA_PARAM);\n const areaNames = params.get(\"areaNames\")?.split(\",\");\n areaParam?.split(\",\").forEach((area, i)=>{\n const areaNameFromQP = areaNames?.[i] ?? \"\";\n tags.push({\n type: \"area\",\n id: area,\n label: `${areaNameFromQP ? areaNameFromQP : area} (Omr\\xe5de)`\n });\n });\n // extra criterias\n const extraCriteriaParam = params.get((0, $cUbQm.FilterParams).EXTRACRITERIA_PARAM);\n extraCriteriaParam?.split(\",\").forEach((id)=>{\n const criteriaName = getExtraSearchCriteriaName(id);\n tags.push({\n type: \"extraCriteria\",\n id: id,\n text: criteriaName\n });\n });\n function getExtraSearchCriteriaName(id) {\n const criteriaResp = (0, $cUbQm.ExtraCriterias)[id];\n const criteriaName = criteriaResp?.text;\n return criteriaName;\n }\n // showOnlyHeadStart\n const fromheadStartQuery = params.get((0, $cUbQm.FilterParams).HEADSTART_PARAM);\n if (fromheadStartQuery !== null && ((0, $cUbQm.FilterParams).BROKERID_PARAM !== null || (0, $cUbQm.FilterParams).CUSTOMERID_PARAM !== null)) {\n const fromheadStartParam = fromheadStartQuery === \"true\" ? true : false;\n tags.push({\n type: (0, $cUbQm.FilterParams).HEADSTART_PARAM,\n isChecked: fromheadStartParam\n });\n }\n // showSold\n const fromSoldQuery = params.get((0, $cUbQm.FilterParams).SOLD_PARAM);\n if (fromSoldQuery !== null && ((0, $cUbQm.FilterParams).BROKERID_PARAM !== null || (0, $cUbQm.FilterParams).CUSTOMERID_PARAM !== null)) {\n const soldParam = fromSoldQuery === \"true\" ? true : false;\n tags.push({\n type: (0, $cUbQm.FilterParams).SOLD_PARAM,\n isChecked: soldParam\n });\n }\n // alignment\n const alignmentsParam = params.get((0, $cUbQm.FilterParams).ALIGNMENT_PARAM);\n alignmentsParam?.split(\",\").forEach((id)=>{\n id = id.replace(\"/\", \"-\");\n tags.push({\n type: \"alignment\",\n id: id\n });\n });\n //Broker param from offices\n const brokerParam = params.get((0, $cUbQm.FilterParams).BROKERID_PARAM);\n if (brokerParam !== null) {\n const brokerName = await (0, $515ZP.getBrokerName)(brokerParam);\n if (brokerName !== undefined) tags.push({\n type: \"broker\",\n id: brokerParam,\n label: brokerName\n });\n }\n //Office id from officepage\n const officeParam = params.get((0, $cUbQm.FilterParams).CUSTOMERID_PARAM);\n if (officeParam !== null) {\n const officeName = await (0, $515ZP.getOfficeName)(officeParam);\n tags.push({\n type: \"office\",\n id: officeParam,\n label: officeName\n });\n }\n //Sustainable choice\n const greenEstateParam = params.get((0, $cUbQm.FilterParams).GREENESTATES_PARAM);\n if (greenEstateParam !== null) tags.push({\n type: (0, $cUbQm.FilterParams).GREENESTATES_PARAM,\n label: (0, $cUbQm.ServicesTitles).GreenEstate,\n isChecked: greenEstateParam === \"true\" ? true : false\n });\n //Bidding\n const biddingParam = params.get((0, $cUbQm.FilterParams).BIDDING_PARAM);\n if (biddingParam !== null) tags.push({\n type: (0, $cUbQm.FilterParams).BIDDING_PARAM,\n label: (0, $5J7FU.ForSaleStrings).BiddingShort,\n isChecked: biddingParam === \"true\" ? true : false\n });\n //sorting\n const sortParam = params.get((0, $cUbQm.FilterParams).SORT_PARAM);\n if (sortParam !== null) tags.push({\n type: \"sortType\",\n id: sortParam,\n name: (0, $cUbQm.SortType)[parseInt(sortParam)].label\n });\n // price\n if (params.get((0, $cUbQm.FilterParams).PRICEMIN_PARAM) !== null && params.get((0, $cUbQm.FilterParams).PRICEMAX_PARAM) !== null) {\n const priceMinParam = Number(params.get((0, $cUbQm.FilterParams).PRICEMIN_PARAM));\n const priceMaxParam = Number(params.get((0, $cUbQm.FilterParams).PRICEMAX_PARAM));\n tags.push({\n type: \"rangeTag\",\n name: (0, $cUbQm.RangeTagNames).Price,\n minVal: priceMinParam,\n maxVal: priceMaxParam\n });\n }\n // rooms\n if (params.get((0, $cUbQm.FilterParams).ROOMMIN_PARAM) !== null && params.get((0, $cUbQm.FilterParams).ROOMMAX_PARAM) !== null) {\n const roomMinParam = Number(params.get((0, $cUbQm.FilterParams).ROOMMIN_PARAM));\n const roomMaxParam = Number(params.get((0, $cUbQm.FilterParams).ROOMMAX_PARAM));\n tags.push({\n type: \"rangeTag\",\n name: (0, $cUbQm.RangeTagNames).Room,\n minVal: roomMinParam,\n maxVal: roomMaxParam\n });\n }\n // livingspace\n if (params.get((0, $cUbQm.FilterParams).LIVINGSPACEMIN_PARAM) !== null && params.get((0, $cUbQm.FilterParams).LIVINGSPACEMAX_PARAM) !== null) {\n const livingSpaceMinParam = Number(params.get((0, $cUbQm.FilterParams).LIVINGSPACEMIN_PARAM));\n const livingSpaceMaxParam = Number(params.get((0, $cUbQm.FilterParams).LIVINGSPACEMAX_PARAM));\n tags.push({\n type: \"rangeTag\",\n name: (0, $cUbQm.RangeTagNames).LivingSpace,\n minVal: livingSpaceMinParam,\n maxVal: livingSpaceMaxParam\n });\n }\n // monthly cost\n if (params.get((0, $cUbQm.FilterParams).MONTHLYCOSTMIN_PARAM) !== null && params.get((0, $cUbQm.FilterParams).MONTHLYCOSTMAX_PARAM) !== null) {\n const monthlyCostMinParam = Number(params.get((0, $cUbQm.FilterParams).MONTHLYCOSTMIN_PARAM));\n const monthlyCostMaxParam = Number(params.get((0, $cUbQm.FilterParams).MONTHLYCOSTMAX_PARAM));\n tags.push({\n type: \"rangeTag\",\n name: (0, $cUbQm.RangeTagNames).Charge,\n minVal: monthlyCostMinParam,\n maxVal: monthlyCostMaxParam\n });\n }\n // plotarea\n if (params.get((0, $cUbQm.FilterParams).PLOTAREAMIN_PARAM) !== null && params.get((0, $cUbQm.FilterParams).PLOTAREAMAX_PARAM) !== null) {\n const plotAreaMinParam = Number(params.get((0, $cUbQm.FilterParams).PLOTAREAMIN_PARAM));\n const plotAreaMaxParam = Number(params.get((0, $cUbQm.FilterParams).PLOTAREAMAX_PARAM));\n tags.push({\n type: \"rangeTag\",\n name: (0, $cUbQm.RangeTagNames).PlotArea,\n minVal: plotAreaMinParam,\n maxVal: plotAreaMaxParam\n });\n }\n return tags;\n}\nfunction $3a2a085f4d14c4e3$export$81fb3fd77062e5ad(filter, page, myPagesCheck) {\n const filtersStrings = [];\n // page\n if (page != null) filtersStrings.push(`page=${page}`);\n //municipality\n if (filter.some((x)=>x.type === \"munici\" && !myPagesCheck)) filtersStrings.push(`${(0, $cUbQm.FilterParams).MUNICI_PARAM}=${filter.filter((x)=>x.type === \"munici\").map((x)=>x.id).join(\",\")}`);\n else if (filter.some((x)=>x.type === \"munici\" && myPagesCheck)) filtersStrings.push(`${(0, $cUbQm.FilterParams).MUNICI_PARAM}=${filter.filter((x)=>x.type === \"munici\").map((x)=>x.municipality).join(\",\")}`);\n //county\n if (filter.some((x)=>x.type === \"county\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).COUNTY_PARAM}=${filter.filter((x)=>x.type === \"county\").map((x)=>x.id).join(\",\")}`);\n //area\n if (filter.some((x)=>x.type === \"area\")) {\n filtersStrings.push(`${(0, $cUbQm.FilterParams).AREA_PARAM}=${filter.filter((x)=>x.type === \"area\").map((x)=>x.id).join(\",\")}`);\n filtersStrings.push(`${\"areaNames\"}=${filter.filter((x)=>x.type === \"area\").map((x)=>x.label?.split(\" (\")[0]).join(\",\")}`);\n }\n // estate types\n if (filter.some((x)=>x.type === \"estateType\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).ESTATETYPE_PARAM}=${filter.filter((x)=>x.type === \"estateType\").map((x)=>x.estateType).join(\",\")}`);\n // extra criterias\n if (filter.some((x)=>x.type === \"extraCriteria\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).EXTRACRITERIA_PARAM}=${filter.filter((x)=>x.type === \"extraCriteria\").map((x)=>x.id).join(\",\")}`);\n // alignment\n if (filter.some((x)=>x.type === \"alignment\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).ALIGNMENT_PARAM}=${filter.filter((x)=>x.type === \"alignment\").map((x)=>x.id).join(\",\")}`);\n if (filter.some((x)=>x.type === \"broker\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).BROKERID_PARAM}=${filter.filter((x)=>x.type === \"broker\").map((x)=>x.id)}`);\n if (filter.some((x)=>x.type === \"office\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).CUSTOMERID_PARAM}=${filter.filter((x)=>x.type === \"office\").map((x)=>x.id)}`);\n //Försprång\n if (filter.some((x)=>x.type === (0, $cUbQm.FilterParams).HEADSTART_PARAM)) filtersStrings.push(`${(0, $cUbQm.FilterParams).HEADSTART_PARAM}=${filter.filter((x)=>x.type === (0, $cUbQm.FilterParams).HEADSTART_PARAM).map((x)=>x.isChecked)}`);\n //Only show sold\n if (filter.some((x)=>x.type === (0, $cUbQm.FilterParams).SOLD_PARAM)) filtersStrings.push(`${(0, $cUbQm.FilterParams).SOLD_PARAM}=${filter.filter((x)=>x.type === (0, $cUbQm.FilterParams).SOLD_PARAM).map((x)=>x.isChecked)}`);\n //Sustainable choice\n if (filter.some((x)=>x.type === (0, $cUbQm.FilterParams).GREENESTATES_PARAM)) filtersStrings.push(`${(0, $cUbQm.FilterParams).GREENESTATES_PARAM}=${filter.filter((x)=>x.type === (0, $cUbQm.FilterParams).GREENESTATES_PARAM).map((x)=>x.isChecked)}`);\n //Bidding\n if (filter.some((x)=>x.type === (0, $cUbQm.FilterParams).BIDDING_PARAM)) filtersStrings.push(`${(0, $cUbQm.FilterParams).BIDDING_PARAM}=${filter.filter((x)=>x.type === (0, $cUbQm.FilterParams).BIDDING_PARAM).map((x)=>x.isChecked)}`);\n // price\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Pris\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).PRICEMIN_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Pris\").map((x)=>x.minVal).join(\",\")}`);\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Pris\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).PRICEMAX_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Pris\").map((x)=>x.maxVal).join(\",\")}`);\n //rooms\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Rum\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).ROOMMIN_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Rum\").map((x)=>x.minVal).join(\",\")}`);\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Rum\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).ROOMMAX_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Rum\").map((x)=>x.maxVal).join(\",\")}`);\n // livingspace\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Boarea\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).LIVINGSPACEMIN_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Boarea\").map((x)=>x.minVal).join(\",\")}`);\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Boarea\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).LIVINGSPACEMAX_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Boarea\").map((x)=>x.maxVal).join(\",\")}`);\n // Monthly cost\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Avgift\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).MONTHLYCOSTMIN_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Avgift\").map((x)=>x.minVal).join(\",\")}`);\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Avgift\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).MONTHLYCOSTMAX_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Avgift\").map((x)=>x.maxVal).join(\",\")}`);\n // Plot Area\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Tomtarea\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).PLOTAREAMIN_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Tomtarea\").map((x)=>x.minVal).join(\",\")}`);\n if (filter.some((x)=>x.type === \"rangeTag\" && x.name === \"Tomtarea\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).PLOTAREAMAX_PARAM}=${filter.filter((x)=>x.type === \"rangeTag\" && x.name === \"Tomtarea\").map((x)=>x.maxVal).join(\",\")}`);\n // sortType\n if (filter.some((x)=>x.type === \"sortType\")) filtersStrings.push(`${(0, $cUbQm.FilterParams).SORT_PARAM}=${filter.filter((x)=>x.type === \"sortType\").map((x)=>x.id)}`);\n return filtersStrings.length ? encodeURI(`?${filtersStrings.join(\"&\")}`) : \"\";\n}\nconst $3a2a085f4d14c4e3$export$152247e07967bd8f = /*#__PURE__*/ (0, $dTCkE.createContext)({});\nasync function $3a2a085f4d14c4e3$export$3f6d48775dbb7b16(path) {\n const tags = [];\n if (path.area) {\n const cameledArea = (0, $l8eky.makeCamelCase)(path.area);\n const withoutDashes = cameledArea.replace(/-/g, \" \");\n tags.push({\n type: \"area\",\n id: cameledArea,\n label: `${withoutDashes} (Omr\\xe5de)`\n });\n } else if (path.muni) {\n const cameledMunici = (0, $l8eky.makeCamelCase)(path.muni);\n const municipality = (0, $l8eky.makeCamelCase)(await (0, $515ZP.getMunicipalityTag)(cameledMunici));\n if (municipality !== undefined) tags.push({\n type: \"munici\",\n id: cameledMunici,\n label: `${municipality}`\n });\n } else if (path.county) {\n const cameledCounty = (0, $l8eky.makeCamelCase)(path.county);\n const county = (0, $l8eky.makeCamelCase)(await (0, $515ZP.getCountyTag)(cameledCounty));\n if (county !== undefined) tags.push({\n type: \"county\",\n id: cameledCounty,\n label: `${county}`\n });\n }\n if (path.estateType && path.estateType !== \"bostad\" && path.estateType !== \"bra-energiklass\") {\n let tempHolder = \"\";\n let prettyEstateTypeName = path.estateType;\n //ordinary cases\n if (path.estateType === \"bostadsratt\") {\n tempHolder = path.estateType;\n prettyEstateTypeName = $3a2a085f4d14c4e3$var$replaceAt(tempHolder, 8, \"\\xe4\");\n } else if (path.estateType === \"gard\") {\n tempHolder = path.estateType;\n prettyEstateTypeName = $3a2a085f4d14c4e3$var$replaceAt(tempHolder, 1, \"\\xe5\");\n }\n const withoutDashes = prettyEstateTypeName.replace(/-/g, \" \");\n const cameledEstateType = (0, $l8eky.makeCamelCase)(withoutDashes);\n tags.push({\n type: \"estateType\",\n estateType: cameledEstateType\n });\n } else if (path.estateType && path.estateType === \"bra-energiklass\") tags.push({\n type: (0, $cUbQm.FilterTypes).ShowGreenEstates,\n isChecked: true,\n label: (0, $cUbQm.ServicesTitles).GreenEstate\n });\n return tags;\n}\nfunction $3a2a085f4d14c4e3$var$replaceAt(myString, index, replacement) {\n return myString.substr(0, index) + replacement + myString.substr(index + replacement.length);\n}\n\n});\nparcelRegister(\"515ZP\", function(module, exports) {\n\n$parcel$export(module.exports, \"apiUrl\", function () { return $faac5a7a58925656$export$e9ddf1da8d18d6f; });\n$parcel$export(module.exports, \"kycPortalUrl\", function () { return $faac5a7a58925656$export$ad8fbf1335de6218; });\n$parcel$export(module.exports, \"getBrokerName\", function () { return $faac5a7a58925656$export$8e6d207ebd320889; });\n$parcel$export(module.exports, \"getOfficeName\", function () { return $faac5a7a58925656$export$e7fc2f87021c4f26; });\n$parcel$export(module.exports, \"getPersonalData\", function () { return $faac5a7a58925656$export$35cd3e25af2ef930; });\n$parcel$export(module.exports, \"getMunicipalityTag\", function () { return $faac5a7a58925656$export$930ee366b3d03280; });\n$parcel$export(module.exports, \"getCountyTag\", function () { return $faac5a7a58925656$export$cebb9be7766a1779; });\n$parcel$export(module.exports, \"getQuestionListData\", function () { return $faac5a7a58925656$export$f953ee8ad3c2f078; });\n$parcel$export(module.exports, \"getGeneralInfoData\", function () { return $faac5a7a58925656$export$cfa44af66bbf621d; });\n$parcel$export(module.exports, \"getEconomyInfoData\", function () { return $faac5a7a58925656$export$1c959a0887934c9; });\n$parcel$export(module.exports, \"getAboutEstateInfoData\", function () { return $faac5a7a58925656$export$b4f8909e2e1b029f; });\n$parcel$export(module.exports, \"getHomeAssignmentDates\", function () { return $faac5a7a58925656$export$c2f02f2cdcb26bb4; });\n$parcel$export(module.exports, \"getSurroundingInfoData\", function () { return $faac5a7a58925656$export$c5edcf354e7951a6; });\n$parcel$export(module.exports, \"getTechnicalInfoData\", function () { return $faac5a7a58925656$export$41378c6a48631b14; });\n$parcel$export(module.exports, \"getDeclarationBasisDates\", function () { return $faac5a7a58925656$export$23160db3718428b9; });\n$parcel$export(module.exports, \"getDeclarationBasisSettlement\", function () { return $faac5a7a58925656$export$5b598e839c07c5f4; });\n$parcel$export(module.exports, \"getDeclarationBasisSale\", function () { return $faac5a7a58925656$export$e05d5ef9aa09290e; });\n$parcel$export(module.exports, \"getDeclarationBasisPurchase\", function () { return $faac5a7a58925656$export$c7312eab72c6dcef; });\n$parcel$export(module.exports, \"getDeclarationBasisSuspension\", function () { return $faac5a7a58925656$export$f9dd191eee96b121; });\n$parcel$export(module.exports, \"getDeclarationBasisMAR\", function () { return $faac5a7a58925656$export$4905b08d33ae334f; });\n$parcel$export(module.exports, \"getToDoDates\", function () { return $faac5a7a58925656$export$8da75b13c89971e6; });\n$parcel$export(module.exports, \"getKycForm\", function () { return $faac5a7a58925656$export$ac86386cf209f951; });\n$parcel$export(module.exports, \"getWebsiteVisitor\", function () { return $faac5a7a58925656$export$1f48879c04f44a0f; });\n$parcel$export(module.exports, \"getMunicipalityData\", function () { return $faac5a7a58925656$export$9593ca3a476838b5; });\n$parcel$export(module.exports, \"getObjectTypeData\", function () { return $faac5a7a58925656$export$64e4b188c77435e6; });\n$parcel$export(module.exports, \"getLoginInfo\", function () { return $faac5a7a58925656$export$ebe451eb84baa5b8; });\n$parcel$export(module.exports, \"getGepositData\", function () { return $faac5a7a58925656$export$cc20294e6e95aa8; });\n$parcel$export(module.exports, \"getNrOfSpeculators\", function () { return $faac5a7a58925656$export$1c33aa1c52378f0; });\nconst $faac5a7a58925656$export$40edfb7eeb78c4e8 = true;\nconst $faac5a7a58925656$export$e9ddf1da8d18d6f = \"https://app-lansfast-api.azurewebsites.net\";\nconst $faac5a7a58925656$export$ad8fbf1335de6218 = \"https://kyc.lansfast.se\";\nconst $faac5a7a58925656$export$ad2637a4162a5855 = \"http://localhost:5208\";\nconst $faac5a7a58925656$export$90b486e772451dd = window.location.origin;\nconst $faac5a7a58925656$export$a1449de16bf292a7 = \"/umbraco/api\";\nconst $faac5a7a58925656$export$8e6d207ebd320889 = async (brokerId)=>{\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + `/api/Search/GetBrokerTag?brokerId=${brokerId}`);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$e7fc2f87021c4f26 = async (customerId)=>{\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + `/api/Search/GetOfficeTag?customerId=${customerId}`);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$35cd3e25af2ef930 = async (ssn)=>{\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + `/api/persondata/getpersoninformation?SSN=${ssn}`);\n const personalData = await response.json();\n return personalData;\n};\nconst $faac5a7a58925656$export$930ee366b3d03280 = async (municipality)=>{\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + `/api/Search/CreateMunicipalityTags?municipality=${municipality}`);\n const data = await response.json();\n return data?.tag;\n};\nconst $faac5a7a58925656$export$cebb9be7766a1779 = async (county)=>{\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + `/api/Search/CreateCountyTags?county=${county}`);\n const data = await response.json();\n return data?.tag;\n};\nconst $faac5a7a58925656$export$f953ee8ad3c2f078 = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/GetQuestionList?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$cfa44af66bbf621d = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/HomeAssignment/GetGeneralInfo?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$1c959a0887934c9 = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/HomeAssignment/GetEconomyInfo?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$b4f8909e2e1b029f = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/HomeAssignment/GetAboutEstateInfo?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$c2f02f2cdcb26bb4 = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/HomeAssignment/GetDates?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$c5edcf354e7951a6 = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/HomeAssignment/GetSurroundingInfo?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$41378c6a48631b14 = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/HomeAssignment/GetTechnicalInfo?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$23160db3718428b9 = async (sessionId, estateId)=>{\n const GET_URL = `/api/MyPages/DeclarationBasis/GetDates?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$5b598e839c07c5f4 = async (sessionId, estateId)=>{\n const GET_URL = `/api/MyPages/DeclarationBasis/GetSettlement?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$e05d5ef9aa09290e = async (sessionId, estateId)=>{\n const GET_URL = `/api/MyPages/DeclarationBasis/GetSale?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$c7312eab72c6dcef = async (sessionId, estateId)=>{\n const GET_URL = `/api/MyPages/DeclarationBasis/GetPurchase?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$f9dd191eee96b121 = async (sessionId, estateId)=>{\n const GET_URL = `/api/MyPages/DeclarationBasis/GetSuspension?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$4905b08d33ae334f = async (sessionId, estateId)=>{\n const GET_URL = `/api/MyPages/DeclarationBasis/GetMaintenanceAndRebuilding?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$8da75b13c89971e6 = async (sessionId, estateId)=>{\n const SAVE_URL = `/api/MyPages/GetToDoDates?` + new URLSearchParams({\n sessionId: sessionId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + SAVE_URL);\n const data = await response.json();\n return data;\n};\nconst $faac5a7a58925656$export$ac86386cf209f951 = async (userId, estateId)=>{\n const GET_URL = `/api/User/GetKycForms?` + new URLSearchParams({\n sessionId: userId,\n estateId: estateId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const data = await response.json();\n return data || null;\n};\nconst $faac5a7a58925656$export$1f48879c04f44a0f = async (estateId, sessionId)=>{\n const GET_URL = `/api/Statistics/SourceData?` + new URLSearchParams({\n estateId: estateId,\n sessionId: sessionId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const objectWebsiteStats = await response.json();\n return objectWebsiteStats;\n};\nconst $faac5a7a58925656$export$9593ca3a476838b5 = async (estateId, sessionId)=>{\n const GET_URL = `/api/Statistics/MunicipalityData?` + new URLSearchParams({\n estateId: estateId,\n sessionId: sessionId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const objectWebsiteStats = await response.json();\n return objectWebsiteStats;\n};\nconst $faac5a7a58925656$export$64e4b188c77435e6 = async (estateId, sessionId)=>{\n const GET_URL = `/api/Statistics/ObjectTypeData?` + new URLSearchParams({\n estateId: estateId,\n sessionId: sessionId\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const objectData = await response.json();\n return objectData;\n};\nconst $faac5a7a58925656$export$ebe451eb84baa5b8 = async ()=>{\n const GET_URL = \"/userapi/login\";\n const response = await fetch($faac5a7a58925656$export$90b486e772451dd + $faac5a7a58925656$export$a1449de16bf292a7 + GET_URL);\n const loginInfo = await response.json();\n return loginInfo;\n};\nconst $faac5a7a58925656$export$cc20294e6e95aa8 = async (query)=>{\n const GET_URL = `/api/Forms/GetGepositData?` + new URLSearchParams({\n query: query\n });\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + GET_URL);\n const specResult = await response.json();\n return specResult;\n};\nconst $faac5a7a58925656$export$1c33aa1c52378f0 = async (data)=>{\n const POST_URL = `/api/Forms/SpeculatorCheck`;\n const response = await fetch($faac5a7a58925656$export$e9ddf1da8d18d6f + POST_URL, {\n method: \"POST\",\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(data)\n });\n if (response.ok) {\n const specResult = await response.json();\n return specResult;\n } else data.setError(\"serverError\", {\n type: \"manual\",\n message: response\n });\n};\n\n});\n\n\n\n})();\n//# sourceMappingURL=EstateCardContent.ee603bf3.js.map\n","import { useContext, useEffect } from 'react';\r\nimport {\r\n EstateStatuses,\r\n EstateType,\r\n Estates,\r\n ServicesTitles,\r\n Status,\r\n} from '../../Enums';\r\nimport { capitalizeFirstLetter, formatLargeNumbers } from '../../helpers';\r\nimport { EstateCardDto } from '~js/React/services/generatedApi';\r\nimport moment from 'moment';\r\nimport 'moment/locale/sv';\r\nimport { FilterContext } from '~js/React/filterTools';\r\n\r\ninterface Props {\r\n estate: EstateCardDto;\r\n smallCard?: boolean;\r\n brokerOrOffice?: boolean;\r\n}\r\nconst EstateCardContent = ({\r\n estate,\r\n smallCard,\r\n brokerOrOffice,\r\n}: Props): JSX.Element => {\r\n const hasRooms = estate.numberOfRooms;\r\n const estateType = estate.estateType as EstateType;\r\n const city = estate?.city;\r\n const area = estate?.area;\r\n const plotSize = estate?.plotSize;\r\n const propertyArea = estate?.propertyArea;\r\n let moveinDate = new Date();\r\n let totalPropertyArea;\r\n const { isMediumScreen, isBigScreen } = useContext(FilterContext);\r\n\r\n if (estateType === EstateType.Agriculture) {\r\n totalPropertyArea = parseInt(propertyArea);\r\n }\r\n useEffect(() => {\r\n moveinDate = new Date(estate?.movingIn);\r\n }, [estate?.movingIn]);\r\n moment.locale('sv');\r\n\r\n return (\r\n \r\n {estate?.estateType === EstateType.Commercial ? (\r\n

{estate?.estateType}

\r\n ) : (\r\n <>\r\n )}\r\n {estate?.headStartIcon ? (\r\n

{Status.headStart}

\r\n ) : (\r\n <>\r\n )}\r\n \r\n {city &&\r\n area &&\r\n area !== '' &&\r\n city !== '' &&\r\n city?.toLowerCase() !== area?.toLowerCase() &&\r\n area?.toLowerCase().indexOf(city?.toLowerCase()) === -1 ? (\r\n <>\r\n {capitalizeFirstLetter(city?.toLowerCase())} -{' '}\r\n {capitalizeFirstLetter(area?.toLowerCase())}\r\n \r\n ) : area ? (\r\n <>{capitalizeFirstLetter(area?.toLowerCase())}\r\n ) : (\r\n <>\r\n )}\r\n\r\n {city && !area && <>{capitalizeFirstLetter(city?.toLowerCase())}}\r\n

\r\n\r\n {estate.streetAddress &&\r\n estate.streetAddress !== '-' &&\r\n !estate.projectName && (\r\n

\r\n {estate?.streetAddress}\r\n

\r\n )}\r\n {(!estate.streetAddress &&\r\n !estate.projectName &&\r\n !estate.propertyUnitDesignation) ||\r\n (estate.streetAddress === '-' && !estate.propertyUnitDesignation && (\r\n

\r\n Adress saknas\r\n

\r\n ))}\r\n {!estate.projectName &&\r\n (estate.streetAddress === '-' || estate.streetAddress === '') &&\r\n estate.propertyUnitDesignation !== null && (\r\n

\r\n {estate.propertyUnitDesignation}\r\n

\r\n )}\r\n {estate.projectName && (\r\n

\r\n {estate?.projectName}\r\n

\r\n )}\r\n \r\n {estate.startPrice ||\r\n (estate.status === EstateStatuses.Sold && estate?.finalPrice) ? (\r\n \r\n {estate.startPrice && estate.status !== EstateStatuses.Sold\r\n ? formatLargeNumbers(estate.startPrice) + ' kr'\r\n : ''}\r\n\r\n {estate.status === EstateStatuses.Sold && estate.finalPrice\r\n ? 'Slutpris: ' + formatLargeNumbers(estate.finalPrice) + ' kr'\r\n : ''}\r\n\r\n {estate.status === EstateStatuses.Sold &&\r\n !estate.finalPrice &&\r\n estate.startPrice\r\n ? formatLargeNumbers(estate.startPrice) + ' kr'\r\n : ''}\r\n \r\n ) : (\r\n <>\r\n )}\r\n\r\n {hasRooms !== null &&\r\n hasRooms !== 0 &&\r\n estateType !== EstateType.Agriculture &&\r\n isMediumScreen ? (\r\n \r\n {estate?.numberOfRooms + ' rum'}\r\n \r\n ) : (\r\n ''\r\n )}\r\n {estate.livingspace &&\r\n estateType !== EstateType.Agriculture &&\r\n (!estate.otherSpace || estate.otherSpace === 0) &&\r\n (isMediumScreen || estate.status !== EstateStatuses.Sold) ? (\r\n \r\n {estate.livingspace && estate.livingspace !== 0\r\n ? estate.livingspace + ' m²'\r\n : ''}\r\n \r\n ) : (\r\n ''\r\n )}\r\n {estate.livingspace && estateType === EstateType.Commercial ? (\r\n \r\n {estate.livingspace && estate.livingspace !== 0\r\n ? estate.livingspace + ' m²'\r\n : ''}\r\n \r\n ) : (\r\n ''\r\n )}\r\n {estate.livingspace &&\r\n estateType !== EstateType.Agriculture &&\r\n estateType !== EstateType.Commercial &&\r\n estate.otherSpace &&\r\n estate.otherSpace !== 0 &&\r\n (isBigScreen || estate.status !== EstateStatuses.Sold) ? (\r\n \r\n {estate.livingspace && estate.livingspace !== 0\r\n ? estate.livingspace + ' + ' + estate.otherSpace + ' m²'\r\n : ''}\r\n \r\n ) : (\r\n ''\r\n )}\r\n {plotSize !== 0 && estateType === EstateType.Plot && (\r\n \r\n {plotSize} m2\r\n \r\n )}\r\n {propertyArea &&\r\n totalPropertyArea &&\r\n totalPropertyArea !== 0 &&\r\n estateType === EstateType.Agriculture ? (\r\n {totalPropertyArea} ha\r\n ) : (\r\n ''\r\n )}\r\n

\r\n {estate.movingIn &&\r\n moveinDate &&\r\n (estate.status === EstateStatuses.Sold ||\r\n estate.status === EstateStatuses.SoldOut) && (\r\n \r\n Såld: {moment(estate.movingIn, 'DD-MM-YYYY').format('YYYY-MM-DD')}\r\n \r\n )}\r\n {(estate.ldPlus || estate.greenEstate) &&\r\n estate.status !== EstateStatuses.Sold &&\r\n estate.status !== EstateStatuses.SoldOut && (\r\n
\r\n {estate.ldPlus && (\r\n \r\n {Estates.LDPlus}\r\n \r\n )}\r\n {estate.greenEstate && (\r\n \r\n {!brokerOrOffice && (\r\n \r\n {ServicesTitles.GreenEstate}\r\n \r\n )}\r\n {brokerOrOffice &&\r\n ((estate.ldPlus && !estate.headStartIcon) ||\r\n (!estate.ldPlus && estate.headStartIcon) ||\r\n (!estate.ldPlus && !estate.headStartIcon)) && (\r\n {ServicesTitles.GreenEstate}\r\n )}\r\n
\r\n )}\r\n \r\n )}\r\n \r\n );\r\n};\r\nexport default EstateCardContent;\r\n","import {\r\n EstateType,\r\n FilterParams,\r\n ExtraCriterias,\r\n FilterTypes,\r\n ServicesTitles,\r\n SortType,\r\n RangeTagNames,\r\n} from './Enums';\r\nimport { makeCamelCase } from './helpers';\r\nimport {\r\n getBrokerName,\r\n getCountyTag,\r\n getMunicipalityTag,\r\n getOfficeName,\r\n} from './services/api';\r\nimport { ForSaleStrings } from './types/ForSaleString';\r\nimport { ITag } from './types/interfaces';\r\nimport { createContext } from 'react';\r\n\r\n// Collects params from query and set tags from those values\r\nexport async function getFilterFromQueryParams(): Promise {\r\n const tags: ITag[] = [];\r\n const params = new URLSearchParams(window.location.search);\r\n\r\n // estate types\r\n const estateTypeParam = params.get(FilterParams.ESTATETYPE_PARAM);\r\n estateTypeParam?.split(',').forEach((estateType) => {\r\n tags.push({\r\n type: 'estateType',\r\n estateType: estateType as EstateType,\r\n });\r\n });\r\n\r\n const municiParam = params.get(FilterParams.MUNICI_PARAM);\r\n municiParam?.split(',').forEach((municipality) => {\r\n tags.push({\r\n type: 'munici',\r\n id: municipality,\r\n label: `${municipality} (Kommun)`,\r\n });\r\n });\r\n\r\n const countyParam = params.get(FilterParams.COUNTY_PARAM);\r\n countyParam?.split(',').forEach((county) => {\r\n tags.push({ type: 'county', id: county, label: `${county} (Län)` });\r\n });\r\n\r\n const areaParam = params.get(FilterParams.AREA_PARAM);\r\n const areaNames = params.get('areaNames')?.split(',');\r\n areaParam?.split(',').forEach((area, i) => {\r\n const areaNameFromQP = areaNames?.[i] ?? '';\r\n tags.push({\r\n type: 'area',\r\n id: area,\r\n label: `${areaNameFromQP ? areaNameFromQP : area} (Område)`,\r\n });\r\n });\r\n\r\n // extra criterias\r\n const extraCriteriaParam = params.get(FilterParams.EXTRACRITERIA_PARAM);\r\n extraCriteriaParam?.split(',').forEach((id) => {\r\n const criteriaName = getExtraSearchCriteriaName(id);\r\n tags.push({ type: 'extraCriteria', id, text: criteriaName });\r\n });\r\n\r\n function getExtraSearchCriteriaName(id: string) {\r\n const criteriaResp = ExtraCriterias[id];\r\n const criteriaName = criteriaResp?.text;\r\n return criteriaName;\r\n }\r\n\r\n // showOnlyHeadStart\r\n const fromheadStartQuery = params.get(FilterParams.HEADSTART_PARAM);\r\n if (\r\n fromheadStartQuery !== null &&\r\n (FilterParams.BROKERID_PARAM !== null ||\r\n FilterParams.CUSTOMERID_PARAM !== null)\r\n ) {\r\n const fromheadStartParam = fromheadStartQuery === 'true' ? true : false;\r\n tags.push({\r\n type: FilterParams.HEADSTART_PARAM,\r\n isChecked: fromheadStartParam,\r\n });\r\n }\r\n\r\n // showSold\r\n const fromSoldQuery = params.get(FilterParams.SOLD_PARAM);\r\n if (\r\n fromSoldQuery !== null &&\r\n (FilterParams.BROKERID_PARAM !== null ||\r\n FilterParams.CUSTOMERID_PARAM !== null)\r\n ) {\r\n const soldParam = fromSoldQuery === 'true' ? true : false;\r\n tags.push({ type: FilterParams.SOLD_PARAM, isChecked: soldParam });\r\n }\r\n\r\n // alignment\r\n const alignmentsParam = params.get(FilterParams.ALIGNMENT_PARAM);\r\n alignmentsParam?.split(',').forEach((id) => {\r\n id = id.replace('/', '-');\r\n tags.push({ type: 'alignment', id });\r\n });\r\n\r\n //Broker param from offices\r\n const brokerParam = params.get(FilterParams.BROKERID_PARAM);\r\n if (brokerParam !== null) {\r\n const brokerName = await getBrokerName(brokerParam);\r\n if (brokerName !== undefined) {\r\n tags.push({\r\n type: 'broker',\r\n id: brokerParam,\r\n label: brokerName,\r\n });\r\n }\r\n }\r\n\r\n //Office id from officepage\r\n const officeParam = params.get(FilterParams.CUSTOMERID_PARAM);\r\n if (officeParam !== null) {\r\n const officeName = await getOfficeName(officeParam);\r\n tags.push({ type: 'office', id: officeParam, label: officeName });\r\n }\r\n\r\n //Sustainable choice\r\n const greenEstateParam = params.get(FilterParams.GREENESTATES_PARAM);\r\n if (greenEstateParam !== null) {\r\n tags.push({\r\n type: FilterParams.GREENESTATES_PARAM,\r\n label: ServicesTitles.GreenEstate,\r\n isChecked: greenEstateParam === 'true' ? true : false,\r\n });\r\n }\r\n //Bidding\r\n const biddingParam = params.get(FilterParams.BIDDING_PARAM);\r\n if (biddingParam !== null) {\r\n tags.push({\r\n type: FilterParams.BIDDING_PARAM,\r\n label: ForSaleStrings.BiddingShort,\r\n isChecked: biddingParam === 'true' ? true : false,\r\n });\r\n }\r\n //sorting\r\n const sortParam = params.get(FilterParams.SORT_PARAM);\r\n if (sortParam !== null) {\r\n tags.push({\r\n type: 'sortType',\r\n id: sortParam,\r\n name: SortType[parseInt(sortParam)].label,\r\n });\r\n }\r\n\r\n // price\r\n if (\r\n params.get(FilterParams.PRICEMIN_PARAM) !== null &&\r\n params.get(FilterParams.PRICEMAX_PARAM) !== null\r\n ) {\r\n const priceMinParam = Number(params.get(FilterParams.PRICEMIN_PARAM));\r\n const priceMaxParam = Number(params.get(FilterParams.PRICEMAX_PARAM));\r\n tags.push({\r\n type: 'rangeTag',\r\n name: RangeTagNames.Price,\r\n minVal: priceMinParam,\r\n maxVal: priceMaxParam,\r\n });\r\n }\r\n\r\n // rooms\r\n if (\r\n params.get(FilterParams.ROOMMIN_PARAM) !== null &&\r\n params.get(FilterParams.ROOMMAX_PARAM) !== null\r\n ) {\r\n const roomMinParam = Number(params.get(FilterParams.ROOMMIN_PARAM));\r\n const roomMaxParam = Number(params.get(FilterParams.ROOMMAX_PARAM));\r\n tags.push({\r\n type: 'rangeTag',\r\n name: RangeTagNames.Room,\r\n minVal: roomMinParam,\r\n maxVal: roomMaxParam,\r\n });\r\n }\r\n\r\n // livingspace\r\n if (\r\n params.get(FilterParams.LIVINGSPACEMIN_PARAM) !== null &&\r\n params.get(FilterParams.LIVINGSPACEMAX_PARAM) !== null\r\n ) {\r\n const livingSpaceMinParam = Number(\r\n params.get(FilterParams.LIVINGSPACEMIN_PARAM)\r\n );\r\n const livingSpaceMaxParam = Number(\r\n params.get(FilterParams.LIVINGSPACEMAX_PARAM)\r\n );\r\n tags.push({\r\n type: 'rangeTag',\r\n name: RangeTagNames.LivingSpace,\r\n minVal: livingSpaceMinParam,\r\n maxVal: livingSpaceMaxParam,\r\n });\r\n }\r\n\r\n // monthly cost\r\n if (\r\n params.get(FilterParams.MONTHLYCOSTMIN_PARAM) !== null &&\r\n params.get(FilterParams.MONTHLYCOSTMAX_PARAM) !== null\r\n ) {\r\n const monthlyCostMinParam = Number(\r\n params.get(FilterParams.MONTHLYCOSTMIN_PARAM)\r\n );\r\n const monthlyCostMaxParam = Number(\r\n params.get(FilterParams.MONTHLYCOSTMAX_PARAM)\r\n );\r\n tags.push({\r\n type: 'rangeTag',\r\n name: RangeTagNames.Charge,\r\n minVal: monthlyCostMinParam,\r\n maxVal: monthlyCostMaxParam,\r\n });\r\n }\r\n\r\n // plotarea\r\n if (\r\n params.get(FilterParams.PLOTAREAMIN_PARAM) !== null &&\r\n params.get(FilterParams.PLOTAREAMAX_PARAM) !== null\r\n ) {\r\n const plotAreaMinParam = Number(params.get(FilterParams.PLOTAREAMIN_PARAM));\r\n const plotAreaMaxParam = Number(params.get(FilterParams.PLOTAREAMAX_PARAM));\r\n tags.push({\r\n type: 'rangeTag',\r\n name: RangeTagNames.PlotArea,\r\n minVal: plotAreaMinParam,\r\n maxVal: plotAreaMaxParam,\r\n });\r\n }\r\n\r\n return tags;\r\n}\r\n\r\n//create querystring from our tags\r\nexport function filterToQuerystring(\r\n filter: ITag[],\r\n page?: number,\r\n myPagesCheck?: boolean\r\n): string {\r\n const filtersStrings = [];\r\n\r\n // page\r\n if (page != null) {\r\n filtersStrings.push(`page=${page}`);\r\n }\r\n\r\n //municipality\r\n if (filter.some((x) => x.type === 'munici' && !myPagesCheck)) {\r\n filtersStrings.push(\r\n `${FilterParams.MUNICI_PARAM}=${filter\r\n .filter((x) => x.type === 'munici')\r\n .map((x) => x.id)\r\n .join(',')}`\r\n );\r\n } else if (filter.some((x) => x.type === 'munici' && myPagesCheck)) {\r\n filtersStrings.push(\r\n `${FilterParams.MUNICI_PARAM}=${filter\r\n .filter((x) => x.type === 'munici')\r\n .map((x) => x.municipality)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n //county\r\n if (filter.some((x) => x.type === 'county')) {\r\n filtersStrings.push(\r\n `${FilterParams.COUNTY_PARAM}=${filter\r\n .filter((x) => x.type === 'county')\r\n .map((x) => x.id)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n //area\r\n if (filter.some((x) => x.type === 'area')) {\r\n filtersStrings.push(\r\n `${FilterParams.AREA_PARAM}=${filter\r\n .filter((x) => x.type === 'area')\r\n .map((x) => x.id)\r\n .join(',')}`\r\n );\r\n filtersStrings.push(\r\n `${'areaNames'}=${filter\r\n .filter((x) => x.type === 'area')\r\n .map((x) => x.label?.split(' (')[0])\r\n .join(',')}`\r\n );\r\n }\r\n\r\n // estate types\r\n if (filter.some((x) => x.type === 'estateType')) {\r\n filtersStrings.push(\r\n `${FilterParams.ESTATETYPE_PARAM}=${filter\r\n .filter((x) => x.type === 'estateType')\r\n .map((x) => x.estateType)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n // extra criterias\r\n if (filter.some((x) => x.type === 'extraCriteria')) {\r\n filtersStrings.push(\r\n `${FilterParams.EXTRACRITERIA_PARAM}=${filter\r\n .filter((x) => x.type === 'extraCriteria')\r\n .map((x) => x.id)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n // alignment\r\n if (filter.some((x) => x.type === 'alignment')) {\r\n filtersStrings.push(\r\n `${FilterParams.ALIGNMENT_PARAM}=${filter\r\n .filter((x) => x.type === 'alignment')\r\n .map((x) => x.id)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n if (filter.some((x) => x.type === 'broker')) {\r\n filtersStrings.push(\r\n `${FilterParams.BROKERID_PARAM}=${filter\r\n .filter((x) => x.type === 'broker')\r\n .map((x) => x.id)}`\r\n );\r\n }\r\n\r\n if (filter.some((x) => x.type === 'office')) {\r\n filtersStrings.push(\r\n `${FilterParams.CUSTOMERID_PARAM}=${filter\r\n .filter((x) => x.type === 'office')\r\n .map((x) => x.id)}`\r\n );\r\n }\r\n\r\n //Försprång\r\n if (filter.some((x) => x.type === FilterParams.HEADSTART_PARAM)) {\r\n filtersStrings.push(\r\n `${FilterParams.HEADSTART_PARAM}=${filter\r\n .filter((x) => x.type === FilterParams.HEADSTART_PARAM)\r\n .map((x) => x.isChecked)}`\r\n );\r\n }\r\n\r\n //Only show sold\r\n if (filter.some((x) => x.type === FilterParams.SOLD_PARAM)) {\r\n filtersStrings.push(\r\n `${FilterParams.SOLD_PARAM}=${filter\r\n .filter((x) => x.type === FilterParams.SOLD_PARAM)\r\n .map((x) => x.isChecked)}`\r\n );\r\n }\r\n //Sustainable choice\r\n if (filter.some((x) => x.type === FilterParams.GREENESTATES_PARAM)) {\r\n filtersStrings.push(\r\n `${FilterParams.GREENESTATES_PARAM}=${filter\r\n .filter((x) => x.type === FilterParams.GREENESTATES_PARAM)\r\n .map((x) => x.isChecked)}`\r\n );\r\n }\r\n //Bidding\r\n if (filter.some((x) => x.type === FilterParams.BIDDING_PARAM)) {\r\n filtersStrings.push(\r\n `${FilterParams.BIDDING_PARAM}=${filter\r\n .filter((x) => x.type === FilterParams.BIDDING_PARAM)\r\n .map((x) => x.isChecked)}`\r\n );\r\n }\r\n // price\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Pris')) {\r\n filtersStrings.push(\r\n `${FilterParams.PRICEMIN_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Pris')\r\n .map((x) => x.minVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Pris')) {\r\n filtersStrings.push(\r\n `${FilterParams.PRICEMAX_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Pris')\r\n .map((x) => x.maxVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n //rooms\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Rum')) {\r\n filtersStrings.push(\r\n `${FilterParams.ROOMMIN_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Rum')\r\n .map((x) => x.minVal)\r\n .join(',')}`\r\n );\r\n }\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Rum')) {\r\n filtersStrings.push(\r\n `${FilterParams.ROOMMAX_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Rum')\r\n .map((x) => x.maxVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n // livingspace\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Boarea')) {\r\n filtersStrings.push(\r\n `${FilterParams.LIVINGSPACEMIN_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Boarea')\r\n .map((x) => x.minVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Boarea')) {\r\n filtersStrings.push(\r\n `${FilterParams.LIVINGSPACEMAX_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Boarea')\r\n .map((x) => x.maxVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n // Monthly cost\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Avgift')) {\r\n filtersStrings.push(\r\n `${FilterParams.MONTHLYCOSTMIN_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Avgift')\r\n .map((x) => x.minVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Avgift')) {\r\n filtersStrings.push(\r\n `${FilterParams.MONTHLYCOSTMAX_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Avgift')\r\n .map((x) => x.maxVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n // Plot Area\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Tomtarea')) {\r\n filtersStrings.push(\r\n `${FilterParams.PLOTAREAMIN_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Tomtarea')\r\n .map((x) => x.minVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n if (filter.some((x) => x.type === 'rangeTag' && x.name === 'Tomtarea')) {\r\n filtersStrings.push(\r\n `${FilterParams.PLOTAREAMAX_PARAM}=${filter\r\n .filter((x) => x.type === 'rangeTag' && x.name === 'Tomtarea')\r\n .map((x) => x.maxVal)\r\n .join(',')}`\r\n );\r\n }\r\n\r\n // sortType\r\n if (filter.some((x) => x.type === 'sortType')) {\r\n filtersStrings.push(\r\n `${FilterParams.SORT_PARAM}=${filter\r\n .filter((x) => x.type === 'sortType')\r\n .map((x) => x.id)}`\r\n );\r\n }\r\n\r\n return filtersStrings.length ? encodeURI(`?${filtersStrings.join('&')}`) : '';\r\n}\r\n\r\n//Defining Context where all filtering options lives\r\nexport const FilterContext = createContext(\r\n {} as IFilterContext\r\n);\r\n\r\nexport interface IFilterContext {\r\n tags: ITag[];\r\n setTags(newVal: ITag[]): void;\r\n visibleExtraCrits: { [key: string]: ITag };\r\n setVisibleExtraCrits(newVal: { [key: string]: ITag }): void;\r\n sessionId?: string;\r\n user?: string;\r\n isBigScreen: boolean;\r\n isMediumScreen: boolean;\r\n isSmallScreen: boolean;\r\n}\r\n\r\n//For SEO purposes\r\nexport async function getFilterFromPath(\r\n path: Record\r\n): Promise {\r\n const tags: ITag[] = [];\r\n if (path.area) {\r\n const cameledArea = makeCamelCase(path.area);\r\n const withoutDashes = cameledArea.replace(/-/g, ' ');\r\n tags.push({\r\n type: 'area',\r\n id: cameledArea,\r\n label: `${withoutDashes} (Område)`,\r\n });\r\n } else if (path.muni) {\r\n const cameledMunici = makeCamelCase(path.muni);\r\n const municipality = makeCamelCase(await getMunicipalityTag(cameledMunici));\r\n if (municipality !== undefined) {\r\n tags.push({\r\n type: 'munici',\r\n id: cameledMunici,\r\n label: `${municipality}`,\r\n });\r\n }\r\n } else if (path.county) {\r\n const cameledCounty = makeCamelCase(path.county);\r\n const county = makeCamelCase(await getCountyTag(cameledCounty));\r\n if (county !== undefined) {\r\n tags.push({\r\n type: 'county',\r\n id: cameledCounty,\r\n label: `${county}`,\r\n });\r\n }\r\n }\r\n\r\n if (\r\n path.estateType &&\r\n path.estateType !== 'bostad' &&\r\n path.estateType !== 'bra-energiklass'\r\n ) {\r\n let tempHolder = '';\r\n let prettyEstateTypeName = path.estateType;\r\n //ordinary cases\r\n if (path.estateType === 'bostadsratt') {\r\n tempHolder = path.estateType;\r\n prettyEstateTypeName = replaceAt(tempHolder, 8, 'ä');\r\n } else if (path.estateType === 'gard') {\r\n tempHolder = path.estateType;\r\n prettyEstateTypeName = replaceAt(tempHolder, 1, 'å');\r\n }\r\n const withoutDashes = prettyEstateTypeName.replace(/-/g, ' ');\r\n\r\n const cameledEstateType = makeCamelCase(withoutDashes);\r\n tags.push({\r\n type: 'estateType',\r\n estateType: cameledEstateType as EstateType,\r\n });\r\n } else if (path.estateType && path.estateType === 'bra-energiklass') {\r\n tags.push({\r\n type: FilterTypes.ShowGreenEstates,\r\n isChecked: true,\r\n label: ServicesTitles.GreenEstate,\r\n });\r\n }\r\n\r\n return tags;\r\n}\r\n\r\nfunction replaceAt(myString: string, index: number, replacement: string) {\r\n return (\r\n myString.substr(0, index) +\r\n replacement +\r\n myString.substr(index + replacement.length)\r\n );\r\n}\r\n","import {\r\n DeclarationBasisDatesDataResp,\r\n SavedDeclarationBasisSettlementDataResp,\r\n HomeAssignmentDatesDataResp,\r\n SavedDeclarationBasisMARDataResp,\r\n SavedTodoDatesDataResp,\r\n KycFormResp,\r\n} from '../forms/MyPagesAssignments/General/AssignmentConstants';\r\n\r\nimport {\r\n PersonalDataResp,\r\n StatisticObject,\r\n LoginInfo,\r\n GepositRoot,\r\n SpeculationResponse,\r\n} from '../types/interfaces';\r\n\r\nimport {\r\n TagModel,\r\n GeneralInfo,\r\n EconomyInfo,\r\n AboutEstateInfo,\r\n SurroundingInfo,\r\n TechnicalInfo,\r\n Sale,\r\n Purchase,\r\n Suspension,\r\n QuestionList,\r\n} from './generatedApi';\r\nexport const isDev = true;\r\n// define URLs\r\nexport const apiUrl = 'https://app-lansfast-api.azurewebsites.net';\r\nexport const kycPortalUrl = 'https://kyc.lansfast.se';\r\n\r\n//Is needed to make mypages login to work with correct claims\r\nexport const localApiUrl = 'http://localhost:5208';\r\nexport const websiteUrl = window.location.origin;\r\nexport const umbracoApi = '/umbraco/api';\r\n\r\nexport const getBrokerName = async (brokerId: string): Promise => {\r\n const response = await fetch(\r\n apiUrl + `/api/Search/GetBrokerTag?brokerId=${brokerId}`\r\n );\r\n const data = (await response.json()) as string;\r\n return data;\r\n};\r\n\r\nexport const getOfficeName = async (customerId: string): Promise => {\r\n const response = await fetch(\r\n apiUrl + `/api/Search/GetOfficeTag?customerId=${customerId}`\r\n );\r\n const data = (await response.json()) as string;\r\n return data;\r\n};\r\n\r\nexport const getPersonalData = async (\r\n ssn?: string\r\n): Promise => {\r\n const response = await fetch(\r\n apiUrl + `/api/persondata/getpersoninformation?SSN=${ssn}`\r\n );\r\n const personalData = (await response.json()) as PersonalDataResp;\r\n return personalData;\r\n};\r\n\r\nexport const getMunicipalityTag = async (\r\n municipality: string\r\n): Promise => {\r\n const response = await fetch(\r\n apiUrl + `/api/Search/CreateMunicipalityTags?municipality=${municipality}`\r\n );\r\n const data = (await response.json()) as TagModel;\r\n\r\n return data?.tag;\r\n};\r\n\r\nexport const getCountyTag = async (county: string): Promise => {\r\n const response = await fetch(\r\n apiUrl + `/api/Search/CreateCountyTags?county=${county}`\r\n );\r\n const data = (await response.json()) as TagModel;\r\n return data?.tag;\r\n};\r\n\r\nexport const getQuestionListData = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/GetQuestionList?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as QuestionList;\r\n\r\n return data;\r\n};\r\nexport const getGeneralInfoData = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/HomeAssignment/GetGeneralInfo?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as GeneralInfo;\r\n return data;\r\n};\r\n\r\nexport const getEconomyInfoData = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/HomeAssignment/GetEconomyInfo?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as EconomyInfo;\r\n return data;\r\n};\r\n\r\nexport const getAboutEstateInfoData = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/HomeAssignment/GetAboutEstateInfo?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as AboutEstateInfo;\r\n return data;\r\n};\r\n\r\nexport const getHomeAssignmentDates = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/HomeAssignment/GetDates?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as HomeAssignmentDatesDataResp;\r\n return data;\r\n};\r\n\r\nexport const getSurroundingInfoData = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/HomeAssignment/GetSurroundingInfo?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as SurroundingInfo;\r\n return data;\r\n};\r\n\r\nexport const getTechnicalInfoData = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/HomeAssignment/GetTechnicalInfo?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as TechnicalInfo;\r\n return data;\r\n};\r\n\r\nexport const getDeclarationBasisDates = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/MyPages/DeclarationBasis/GetDates?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + GET_URL);\r\n const data = (await response.json()) as DeclarationBasisDatesDataResp;\r\n return data;\r\n};\r\n\r\nexport const getDeclarationBasisSettlement = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/MyPages/DeclarationBasis/GetSettlement?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + GET_URL);\r\n const data =\r\n (await response.json()) as SavedDeclarationBasisSettlementDataResp;\r\n return data;\r\n};\r\n\r\nexport const getDeclarationBasisSale = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/MyPages/DeclarationBasis/GetSale?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + GET_URL);\r\n const data = (await response.json()) as Sale;\r\n return data;\r\n};\r\n\r\nexport const getDeclarationBasisPurchase = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/MyPages/DeclarationBasis/GetPurchase?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + GET_URL);\r\n const data = (await response.json()) as Purchase;\r\n return data;\r\n};\r\n\r\nexport const getDeclarationBasisSuspension = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/MyPages/DeclarationBasis/GetSuspension?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + GET_URL);\r\n const data = (await response.json()) as Suspension;\r\n return data;\r\n};\r\n\r\nexport const getDeclarationBasisMAR = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/MyPages/DeclarationBasis/GetMaintenanceAndRebuilding?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + GET_URL);\r\n const data = (await response.json()) as SavedDeclarationBasisMARDataResp;\r\n return data;\r\n};\r\n\r\nexport const getToDoDates = async (\r\n sessionId: string,\r\n estateId: string\r\n): Promise => {\r\n const SAVE_URL =\r\n `/api/MyPages/GetToDoDates?` +\r\n new URLSearchParams({ sessionId: sessionId, estateId: estateId });\r\n const response = await fetch(apiUrl + SAVE_URL);\r\n const data = (await response.json()) as SavedTodoDatesDataResp;\r\n return data;\r\n};\r\n\r\nexport const getKycForm = async (\r\n userId: string,\r\n estateId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/User/GetKycForms?` +\r\n new URLSearchParams({ sessionId: userId, estateId: estateId });\r\n const response = await fetch(apiUrl + GET_URL);\r\n const data = await response.json();\r\n return data || null;\r\n};\r\n\r\nexport const getWebsiteVisitor = async (\r\n estateId: string,\r\n sessionId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/Statistics/SourceData?` +\r\n new URLSearchParams({ estateId: estateId, sessionId: sessionId });\r\n\r\n const response = await fetch(apiUrl + GET_URL);\r\n const objectWebsiteStats = (await response.json()) as StatisticObject[];\r\n return objectWebsiteStats;\r\n};\r\n\r\nexport const getMunicipalityData = async (\r\n estateId: string,\r\n sessionId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/Statistics/MunicipalityData?` +\r\n new URLSearchParams({ estateId: estateId, sessionId: sessionId });\r\n\r\n const response = await fetch(apiUrl + GET_URL);\r\n\r\n const objectWebsiteStats = await response.json();\r\n return objectWebsiteStats;\r\n};\r\nexport const getObjectTypeData = async (\r\n estateId: string,\r\n sessionId: string\r\n): Promise => {\r\n const GET_URL =\r\n `/api/Statistics/ObjectTypeData?` +\r\n new URLSearchParams({ estateId: estateId, sessionId: sessionId });\r\n\r\n const response = await fetch(apiUrl + GET_URL);\r\n const objectData = (await response.json()) as StatisticObject;\r\n return objectData;\r\n};\r\n\r\nexport const getLoginInfo = async (): Promise => {\r\n const GET_URL = '/userapi/login';\r\n const response = await fetch(websiteUrl + umbracoApi + GET_URL);\r\n const loginInfo = (await response.json()) as LoginInfo;\r\n return loginInfo;\r\n};\r\n\r\nexport const getGepositData = async (query: string): Promise => {\r\n const GET_URL =\r\n `/api/Forms/GetGepositData?` + new URLSearchParams({ query: query });\r\n\r\n const response = await fetch(apiUrl + GET_URL);\r\n const specResult = (await response.json()) as GepositRoot;\r\n return specResult;\r\n};\r\n\r\nexport const getNrOfSpeculators = async (\r\n data: any\r\n): Promise => {\r\n const POST_URL = `/api/Forms/SpeculatorCheck`;\r\n\r\n const response = await fetch(apiUrl + POST_URL, {\r\n method: 'POST',\r\n headers: {\r\n Accept: 'application/json',\r\n 'Content-Type': 'application/json',\r\n },\r\n body: JSON.stringify(data),\r\n });\r\n if (response.ok) {\r\n const specResult = (await response.json()) as SpeculationResponse;\r\n return specResult;\r\n } else {\r\n data.setError('serverError', {\r\n type: 'manual',\r\n message: response,\r\n });\r\n }\r\n};\r\n"],"names":["$parcel$interopDefault","a","__esModule","default","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","parcelRequire","$parcel$global","globalThis","self","window","global","parcelRegister","register","module","exports","value","$0fe54c1df2860e33$export$2e2bcd8739ae039","$a9eYm","$dTCkE","$cUbQm","$l8eky","$N2wHE","$22cn8","estate","smallCard","brokerOrOffice","totalPropertyArea","hasRooms","numberOfRooms","estateType","city","area","plotSize","propertyArea","moveinDate","Date","isMediumScreen","isBigScreen","useContext","FilterContext","EstateType","Agriculture","parseInt","useEffect","movingIn","locale","jsxs","className","Commercial","headStartIcon","Project","children","jsx","Fragment","Status","headStart","toLowerCase","indexOf","capitalizeFirstLetter","streetAddress","projectName","propertyUnitDesignation","startPrice","status","EstateStatuses","Sold","finalPrice","formatLargeNumbers","livingspace","otherSpace","Plot","SoldOut","format","ldPlus","greenEstate","Estates","LDPlus","title","ServicesTitles","GreenEstate","$3a2a085f4d14c4e3$export$e21ccb11fb11305c","$3a2a085f4d14c4e3$export$81fb3fd77062e5ad","$3a2a085f4d14c4e3$export$152247e07967bd8f","$3a2a085f4d14c4e3$export$3f6d48775dbb7b16","$515ZP","$5J7FU","tags","params","URLSearchParams","location","search","estateTypeParam","FilterParams","ESTATETYPE_PARAM","split","forEach","push","type","municiParam","MUNICI_PARAM","municipality","id","label","countyParam","COUNTY_PARAM","county","areaParam","AREA_PARAM","areaNames","i","areaNameFromQP","extraCriteriaParam","EXTRACRITERIA_PARAM","criteriaName","getExtraSearchCriteriaName","criteriaResp","ExtraCriterias","text","fromheadStartQuery","HEADSTART_PARAM","BROKERID_PARAM","CUSTOMERID_PARAM","isChecked","fromSoldQuery","SOLD_PARAM","alignmentsParam","ALIGNMENT_PARAM","replace","brokerParam","brokerName","getBrokerName","undefined","officeParam","officeName","getOfficeName","greenEstateParam","GREENESTATES_PARAM","biddingParam","BIDDING_PARAM","ForSaleStrings","BiddingShort","sortParam","SORT_PARAM","name","SortType","PRICEMIN_PARAM","PRICEMAX_PARAM","priceMinParam","Number","priceMaxParam","RangeTagNames","Price","minVal","maxVal","ROOMMIN_PARAM","ROOMMAX_PARAM","roomMinParam","roomMaxParam","Room","LIVINGSPACEMIN_PARAM","LIVINGSPACEMAX_PARAM","livingSpaceMinParam","livingSpaceMaxParam","LivingSpace","MONTHLYCOSTMIN_PARAM","MONTHLYCOSTMAX_PARAM","monthlyCostMinParam","monthlyCostMaxParam","Charge","PLOTAREAMIN_PARAM","PLOTAREAMAX_PARAM","plotAreaMinParam","plotAreaMaxParam","PlotArea","filter","page","myPagesCheck","filtersStrings","some","x","map","join","length","encodeURI","createContext","path","cameledArea","makeCamelCase","withoutDashes","muni","cameledMunici","getMunicipalityTag","cameledCounty","getCountyTag","prettyEstateTypeName","$3a2a085f4d14c4e3$var$replaceAt","cameledEstateType","FilterTypes","ShowGreenEstates","myString","index","replacement","substr","$faac5a7a58925656$export$e9ddf1da8d18d6f","$faac5a7a58925656$export$ad8fbf1335de6218","$faac5a7a58925656$export$8e6d207ebd320889","$faac5a7a58925656$export$e7fc2f87021c4f26","$faac5a7a58925656$export$35cd3e25af2ef930","$faac5a7a58925656$export$930ee366b3d03280","$faac5a7a58925656$export$cebb9be7766a1779","$faac5a7a58925656$export$f953ee8ad3c2f078","$faac5a7a58925656$export$cfa44af66bbf621d","$faac5a7a58925656$export$1c959a0887934c9","$faac5a7a58925656$export$b4f8909e2e1b029f","$faac5a7a58925656$export$c2f02f2cdcb26bb4","$faac5a7a58925656$export$c5edcf354e7951a6","$faac5a7a58925656$export$41378c6a48631b14","$faac5a7a58925656$export$23160db3718428b9","$faac5a7a58925656$export$5b598e839c07c5f4","$faac5a7a58925656$export$e05d5ef9aa09290e","$faac5a7a58925656$export$c7312eab72c6dcef","$faac5a7a58925656$export$f9dd191eee96b121","$faac5a7a58925656$export$4905b08d33ae334f","$faac5a7a58925656$export$8da75b13c89971e6","$faac5a7a58925656$export$ac86386cf209f951","$faac5a7a58925656$export$1f48879c04f44a0f","$faac5a7a58925656$export$9593ca3a476838b5","$faac5a7a58925656$export$64e4b188c77435e6","$faac5a7a58925656$export$ebe451eb84baa5b8","$faac5a7a58925656$export$cc20294e6e95aa8","$faac5a7a58925656$export$1c33aa1c52378f0","$faac5a7a58925656$export$90b486e772451dd","origin","brokerId","response","fetch","json","customerId","ssn","data","tag","sessionId","estateId","SAVE_URL","GET_URL","userId","query","method","headers","Accept","body","JSON","stringify","ok","setError","message"],"version":3,"file":"EstateCardContent.ee603bf3.js.map"}