{"version":3,"sources":["webpack:///./src/views/Availability.vue?b13d","webpack:///./src/views/Availability.vue","webpack:///./src/views/Availability.vue?15e2"],"names":["$maxxpm","inject","postedUnits","ref","loadingUnits","loadJotform","iframe","ifr","document","getElementById","config","availability","waitingListJotformId","src","iframeParams","window","location","href","indexOf","concat","substr","split","push","join","handleIFrameMessage","e","data","args","length","scrollIntoView","style","height","isNaN","parseInt","minHeight","clientHeight","innerHeight","reload","isPermitted","origin","script","createElement","type","body","appendChild","exitFullscreen","mozCancelFullScreen","mozCancelFullscreen","webkitExitFullscreen","msExitFullscreen","isJotForm","contentWindow","urls","docurl","encodeURIComponent","URL","referrer","postMessage","JSON","stringify","value","originUrl","whitelisted_domains","url","hostname","result","forEach","element","slice","addEventListener","attachEvent","onBeforeMount","async","posted","axios","get","filter","unit","property_groups","includes","propertyGroup","rentlyUnits","map","rently","find","rentlyUnit","rentable_uid","status_title","rently_id","id","auto_showing","agent_showing","__exports__"],"mappings":"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","file":"js/availability.826c8029.js","sourcesContent":["export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Availability.vue?vue&type=style&index=0&id=f353fa6e&scoped=true&lang=css\"","<template>\n  <Banner\n    :backgroundImage=\"$maxxpm.config.availability.banner.image\"\n    :backgroundVideo=\"$maxxpm.config.availability.banner.video\"\n    class=\"pt-6 pb-6 text-center\"\n  >\n    <h1 class=\"text-white display-1\">Available Units</h1>\n    <p class=\"text-white display-7 mt-4\">Unit availability is updated often from Monday-Friday during business hours. Evenings and weekends may not reflect accurate availability dates.</p>\n  </Banner>\n  <div class=\"grid container\">\n    <div\n      class=\"col-12 text-center\"\n      v-if=\"loadingUnits\"\n    >\n      <i class=\"pi pi-spin pi-spinner units-loading\"></i>\n    </div>\n    <div\n      class=\"col-12\"\n      v-else-if=\"$maxxpm.config.availability.hasWaitingList && !postedUnits.length\"\n    >\n      <p class=\"text-center text-xl mb-0\">Sorry, there are no available units at this time.</p>\n      <iframe\n        :id=\"`JotFormIFrame-${$maxxpm.config.availability.waitingListJotformId}`\"\n        title=\"Vista View Waiting List\"\n        onload=\"window.parent.scrollTo(0,0)\"\n        allowtransparency=\"true\"\n        allowfullscreen=\"true\"\n        allow=\"geolocation; microphone; camera\"\n        :src=\"`https://form.jotform.com/${$maxxpm.config.availability.waitingListJotformId}`\"\n        frameborder=\"0\"\n        style=\"min-width: 100%; max-width: 100%; height: 539px; border: none\"\n        scrolling=\"no\"\n      >\n      </iframe>\n    </div>\n    <div\n      class=\"listings-container\"\n      v-else\n    >\n      <UnitListing\n        v-for=\"unit in postedUnits\"\n        :key=\"unit.id\"\n        :unit=\"unit\"\n        source=\"vistaviewcondorentals.com\"\n      />\n    </div>\n  </div>\n</template>\n\n<script setup>\nimport { ref, inject, onBeforeMount } from \"vue\";\nimport { UnitListing, Banner } from \"@maxxpm/vue-components\";\n\nimport axios from \"axios\";\n\nconst $maxxpm = inject(\"$maxxpm\");\n\nconst postedUnits = ref([]);\nconst loadingUnits = ref(true);\n\nonBeforeMount(async () => {\n  const posted = await axios.get(\"https://cdn.maxxpm.com/posted_units.json\");\n  postedUnits.value = posted.data.filter((unit) => unit.property_groups && unit.property_groups.includes($maxxpm.config.availability.propertyGroup));\n\n  let rentlyUnits = await axios.get(\"https://cdn.maxxpm.com/rently_units.json\");\n\n  postedUnits.value = postedUnits.value.map((unit) => {\n    const rently = rentlyUnits.data.find((rentlyUnit) => rentlyUnit[\"unit#\"] === unit.rentable_uid);\n    if (rently) {\n      if (!rently.status_title.includes(\"Inactive\")) {\n        unit.rently_id = rently.id;\n      }\n\n      unit.auto_showing = rently.status_title.includes(\"Auto Showing\");\n      unit.agent_showing = rently.status_title.includes(\"Agent Showing\");\n    }\n    return unit;\n  });\n\n  loadingUnits.value = false;\n  if (!postedUnits.value.length) {\n    loadJotform();\n  }\n});\n\nfunction loadJotform() {\n  let iframe;\n  var ifr = document.getElementById(`JotFormIFrame-${$maxxpm.config.availability.waitingListJotformId}`);\n  if (ifr) {\n    var src = ifr.src;\n    var iframeParams = [];\n    if (window.location.href && window.location.href.indexOf(\"?\") > -1) {\n      iframeParams = iframeParams.concat(window.location.href.substr(window.location.href.indexOf(\"?\") + 1).split(\"&\"));\n    }\n    if (src && src.indexOf(\"?\") > -1) {\n      iframeParams = iframeParams.concat(src.substr(src.indexOf(\"?\") + 1).split(\"&\"));\n      src = src.substr(0, src.indexOf(\"?\"));\n    }\n    iframeParams.push(\"isIframeEmbed=1\");\n    ifr.src = src + \"?\" + iframeParams.join(\"&\");\n  }\n  window.handleIFrameMessage = function (e) {\n    if (typeof e.data === \"object\") {\n      return;\n    }\n    var args = e.data.split(\":\");\n    if (args.length > 2) {\n      iframe = document.getElementById(\"JotFormIFrame-\" + args[args.length - 1]);\n    } else {\n      iframe = document.getElementById(\"JotFormIFrame\");\n    }\n    if (!iframe) {\n      return;\n    }\n    switch (args[0]) {\n      case \"scrollIntoView\":\n        iframe.scrollIntoView();\n        break;\n      case \"setHeight\":\n        iframe.style.height = args[1] + \"px\";\n        if (!isNaN(args[1]) && parseInt(iframe.style.minHeight) > parseInt(args[1])) {\n          iframe.style.minHeight = args[1] + \"px\";\n        }\n        break;\n      case \"collapseErrorPage\":\n        if (iframe.clientHeight > window.innerHeight) {\n          iframe.style.height = window.innerHeight + \"px\";\n        }\n        break;\n      case \"reloadPage\":\n        window.location.reload();\n        break;\n      case \"loadScript\":\n        if (!window.isPermitted(e.origin, [\"jotform.com\", \"jotform.pro\"])) {\n          break;\n        }\n        var src = args[1];\n        if (args.length > 3) {\n          src = args[1] + \":\" + args[2];\n        }\n        var script = document.createElement(\"script\");\n        script.src = src;\n        script.type = \"text/javascript\";\n        document.body.appendChild(script);\n        break;\n      case \"exitFullscreen\":\n        if (window.document.exitFullscreen) window.document.exitFullscreen();\n        else if (window.document.mozCancelFullScreen) window.document.mozCancelFullScreen();\n        else if (window.document.mozCancelFullscreen) window.document.mozCancelFullScreen();\n        else if (window.document.webkitExitFullscreen) window.document.webkitExitFullscreen();\n        else if (window.document.msExitFullscreen) window.document.msExitFullscreen();\n        break;\n    }\n    var isJotForm = e.origin.indexOf(\"jotform\") > -1 ? true : false;\n    if (isJotForm && \"contentWindow\" in iframe && \"postMessage\" in iframe.contentWindow) {\n      var urls = {\n        docurl: encodeURIComponent(document.URL),\n        referrer: encodeURIComponent(document.referrer),\n      };\n      iframe.contentWindow.postMessage(JSON.stringify({ type: \"urls\", value: urls }), \"*\");\n    }\n  };\n  window.isPermitted = function (originUrl, whitelisted_domains) {\n    var url = document.createElement(\"a\");\n    url.href = originUrl;\n    var hostname = url.hostname;\n    var result = false;\n    if (typeof hostname !== \"undefined\") {\n      whitelisted_domains.forEach(function (element) {\n        if (hostname.slice(-1 * element.length - 1) === \".\".concat(element) || hostname === element) {\n          result = true;\n        }\n      });\n      return result;\n    }\n  };\n  if (window.addEventListener) {\n    window.addEventListener(\"message\", window.handleIFrameMessage, false);\n  } else if (window.attachEvent) {\n    window.attachEvent(\"onmessage\", window.handleIFrameMessage);\n  }\n}\n</script>\n\n<style scoped>\n.listings-container {\n  display: flex;\n  width: 100%;\n  flex-wrap: wrap;\n  justify-content: center;\n}\n\n.units-loading {\n  color: var(--mdb-secondary);\n  font-size: 3rem;\n  margin: 3rem 0;\n}\n\n.container {\n  width: 95vw;\n  max-width: 1200px;\n  margin: auto;\n}\n</style>\n","import script from \"./Availability.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Availability.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./Availability.vue?vue&type=style&index=0&id=f353fa6e&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src2714964334/src/vistaviewcondorentals/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-f353fa6e\"]])\n\nexport default __exports__"],"sourceRoot":""}