{"version":3,"sources":["webpack:///./src/eventbus/event-bus.js","webpack:///./src/components/UI/DatePickerPopup.vue?ca93","webpack:///./src/components/UI/Form/InputDatePicker.vue","webpack:///./src/components/UI/DatePickerPopup.vue","webpack:///src/components/UI/DatePickerPopup.vue","webpack:///./src/components/UI/DatePickerPopup.vue?fcfb","webpack:///./src/components/UI/DatePickerPopup.vue?1aa5","webpack:///src/components/UI/Form/InputDatePicker.vue","webpack:///./src/components/UI/Form/InputDatePicker.vue?2b55","webpack:///./src/components/UI/Form/InputDatePicker.vue?64f7","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue","webpack:///src/components/UI/Form/BaseFieldTemplate.vue","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue?c7c7","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue?884f","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue?bcec"],"names":["EventBus","Vue","render","_vm","this","_c","_self","showInput","ref","inputId","staticClass","attrs","domProps","datePresentation","on","$event","showHideInput","removeFocusFromInput","_e","popupShown","directives","name","rawName","value","exclude","handler","expression","modifiers","key","isRange","refDatePickerPopup","$i18n","locale","updatedDates","hideDatePicker","model","mDates","callback","$$v","staticRenderFns","class","refName","showNoDateSelection","_s","$t","unselectDates","getDayName","currentDayIndex","setDateTo","_v","setDateToSelectedWeek","getMonthName","currentMonth","setDateToMonth","currentYear","setYear","onDrag","onDayClick","isSelectingDates","confirmChoice","applyNewDates","use","VCalendar","props","target","default","required","minDate","type","String","$options","filters","dateObjectIsoDateString","Date","maxDate","Object","dateFormat","Boolean","inject","data","concat","refDatePicker","ready","trigger","document","getElementById","readyCounter","initDates","getDay","getMonth","getFullYear","selectedDates","selectedDatesCounter","computed","output","start","end","created","mounted","self","body","appendChild","$el","t","setTimeout","addEventListener","scrollHandler","$refs","clearTimeout","beforeDestroy","resetBeforeDestroy","methods","val","parseIsoDateStringToDate","removeEventListener","parentNode","removeChild","$emit","day","arguments","length","undefined","dateNow","setDate","getDate","dayIndex","weekIndex","date","monthIndex","month","year","getHours","getMinutes","viewPortWidth","window","innerWidth","viewPortHeight","innerHeight","triggerRects","getBoundingClientRect","datePickerRects","vSpaceGap","hSpaceGap","canBeAddedAbove","top","height","canBeAddedBelow","style","left","width","right","component","components","DatePickerPopup","getTime","handleOutsideClick","watch","immediate","_objectSpread","elm","blur","doApplyBeforeClosing","bind","el","binding","vnode","context","e","stopPropagation","_binding$value","clickedOnExcludedEl","forEach","excludedEl","contains","unbind","labelForInput","label","fieldClasses","_t"],"mappings":"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","file":"js/app-main-components~invoices-list~reservation-list.js?id=e2565ab6dc95a90118ff","sourcesContent":["import Vue from 'vue'\nexport const EventBus = new Vue()\n\nexport default EventBus\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePickerPopup.vue?vue&type=style&index=0&id=851127bc&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showInput)?_c('input',{ref:_vm.inputId,staticClass:\"input\",attrs:{\"type\":\"text\",\"readonly\":\"readonly\",\"aria-readonly\":\"true\",\"autocomplete\":\"off\",\"aria-autocomplete\":\"both\",\"id\":_vm.inputId},domProps:{\"value\":_vm.datePresentation},on:{\"click\":function($event){return _vm.showHideInput()},\"focus\":_vm.removeFocusFromInput}}):_vm._e(),(_vm.popupShown)?_c('date-picker-popup',{directives:[{name:\"click-outside\",rawName:\"v-click-outside.bubble\",value:({ exclude: [_vm.inputId], handler: 'hideDatePicker' }),expression:\"{ exclude: [inputId], handler: 'hideDatePicker' }\",modifiers:{\"bubble\":true}}],key:'dp-mode-'+_vm.isRange,ref:_vm.refDatePickerPopup,attrs:{\"isRange\":\"\",\"locale\":_vm.$i18n.locale,\"target\":_vm.inputId},on:{\"updatedDates\":_vm.updatedDates,\"hide\":function($event){return _vm.hideDatePicker()}},model:{value:(_vm.mDates),callback:function ($$v) {_vm.mDates=$$v},expression:\"mDates\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('transition-group',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('div',{key:\"dateTimePickerBackground\",class:`dpPopup-background`}),_c('div',{key:\"dateTimePicker\",ref:_vm.refName,class:`dpPopup`},[_c('div',{class:`card`},[_c('div',{staticClass:\"columns-filters-datepicker\"},[_c('div',{staticClass:\"column-filters has-background-white-ter p-5\"},[(_vm.showNoDateSelection)?[_c('div',{staticClass:\"title is-6\",domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Header_QuickSelection'))}}),_c('div',{staticClass:\"row\"},[_c('a',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Link_NoSelection'))},on:{\"click\":function($event){return _vm.unselectDates()}}})])]:_vm._e(),_c('div',{staticClass:\"row\"},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Label_Day'))}}),_c('a',{domProps:{\"textContent\":_vm._s(_vm.getDayName(_vm.currentDayIndex - 1))},on:{\"click\":function($event){return _vm.setDateTo(-1)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.getDayName(_vm.currentDayIndex))},on:{\"click\":function($event){return _vm.setDateTo(0)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.getDayName(_vm.currentDayIndex + 1))},on:{\"click\":function($event){return _vm.setDateTo(1)}}})]),_c('div',{staticClass:\"row\"},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Label_Week'))}}),_c('a',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Link_Previous'))},on:{\"click\":function($event){return _vm.setDateToSelectedWeek(-1)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Link_Current'))},on:{\"click\":function($event){return _vm.setDateToSelectedWeek(0)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Link_Next'))},on:{\"click\":function($event){return _vm.setDateToSelectedWeek(1)}}})]),_c('div',{staticClass:\"row\"},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Label_Month'))}}),_c('a',{domProps:{\"textContent\":_vm._s(_vm.getMonthName(_vm.currentMonth - 1))},on:{\"click\":function($event){return _vm.setDateToMonth(_vm.currentMonth - 1)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.getMonthName(_vm.currentMonth))},on:{\"click\":function($event){return _vm.setDateToMonth(_vm.currentMonth)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.getMonthName(_vm.currentMonth + 1))},on:{\"click\":function($event){return _vm.setDateToMonth(_vm.currentMonth + 1)}}})]),_c('div',{staticClass:\"row\"},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.UI.DatePickerPopup.Label_Year'))}}),_c('a',{domProps:{\"textContent\":_vm._s(_vm.currentYear - 1)},on:{\"click\":function($event){return _vm.setYear(_vm.currentYear - 1)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.currentYear)},on:{\"click\":function($event){return _vm.setYear(_vm.currentYear)}}}),_vm._v(\" - \"),_c('a',{domProps:{\"textContent\":_vm._s(_vm.currentYear + 1)},on:{\"click\":function($event){return _vm.setYear(_vm.currentYear + 1)}}})])],2),_c('div',{staticClass:\"column-datepicker\"},[_c('v-date-picker',{attrs:{\"mode\":_vm.isRange ? 'range' : 'single',\"is-range\":\"\",\"is-inline\":true,\"locale\":_vm.$i18n.locale},on:{\"drag\":_vm.onDrag,\"dayclick\":_vm.onDayClick},model:{value:(_vm.mDates),callback:function ($$v) {_vm.mDates=$$v},expression:\"mDates\"}}),_c('div',{staticClass:\"has-text-centered pb-2\",class:{ 'has-text-grey-light': _vm.isSelectingDates },domProps:{\"textContent\":_vm._s(_vm.datePresentation)}})],1)]),(_vm.confirmChoice)?_c('footer',{class:`card-footer`},[_c('a',{staticClass:\"card-footer-item\",domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Cancel'))},on:{\"click\":function($event){return _vm.hideDatePicker()}}}),_c('a',{staticClass:\"card-footer-item has-text-weight-bold\",class:{ 'has-text-grey': _vm.isSelectingDates },domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Apply'))},on:{\"click\":function($event){return _vm.applyNewDates()}}})]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <transition-group\n    name=\"fade\"\n    mode=\"out-in\"\n  >\n    <div\n      key=\"dateTimePickerBackground\"\n      :class=\"`dpPopup-background`\"\n    ></div>\n    <div\n      key=\"dateTimePicker\"\n      :ref=\"refName\"\n      :class=\"`dpPopup`\"\n    >\n      <div :class=\"`card`\">\n        <div class=\"columns-filters-datepicker\">\n          <div class=\"column-filters has-background-white-ter p-5\">\n            <template v-if=\"showNoDateSelection\">\n              <div\n                class=\"title is-6\"\n                v-text=\"$t('Components.UI.DatePickerPopup.Header_QuickSelection')\"\n              ></div>\n              <div class=\"row\">\n                <a\n                  @click=\"unselectDates()\"\n                  v-text=\"$t('Components.UI.DatePickerPopup.Link_NoSelection')\"\n                ></a>\n              </div>\n            </template>\n            <div class=\"row\">\n              <span v-text=\"$t('Components.UI.DatePickerPopup.Label_Day')\"></span>\n              <a\n                @click=\"setDateTo(-1)\"\n                v-text=\"getDayName(currentDayIndex - 1)\"\n              ></a>\n              -\n              <a\n                @click=\"setDateTo(0)\"\n                v-text=\"getDayName(currentDayIndex)\"\n              ></a>\n              -\n              <a\n                @click=\"setDateTo(1)\"\n                v-text=\"getDayName(currentDayIndex + 1)\"\n              ></a>\n            </div>\n            <div class=\"row\">\n              <span v-text=\"$t('Components.UI.DatePickerPopup.Label_Week')\"></span>\n              <a\n                @click=\"setDateToSelectedWeek(-1)\"\n                v-text=\"$t('Components.UI.DatePickerPopup.Link_Previous')\"\n              ></a>\n              -\n              <a\n                @click=\"setDateToSelectedWeek(0)\"\n                v-text=\"$t('Components.UI.DatePickerPopup.Link_Current')\"\n              ></a>\n              -\n              <a\n                @click=\"setDateToSelectedWeek(1)\"\n                v-text=\"$t('Components.UI.DatePickerPopup.Link_Next')\"\n              ></a>\n            </div>\n            <div class=\"row\">\n              <span v-text=\"$t('Components.UI.DatePickerPopup.Label_Month')\"></span>\n              <a\n                @click=\"setDateToMonth(currentMonth - 1)\"\n                v-text=\"getMonthName(currentMonth - 1)\"\n              ></a>\n              -\n              <a\n                @click=\"setDateToMonth(currentMonth)\"\n                v-text=\"getMonthName(currentMonth)\"\n              ></a>\n              -\n              <a\n                @click=\"setDateToMonth(currentMonth + 1)\"\n                v-text=\"getMonthName(currentMonth + 1)\"\n              ></a>\n            </div>\n\n            <div class=\"row\">\n              <span v-text=\"$t('Components.UI.DatePickerPopup.Label_Year')\"></span>\n              <a\n                @click=\"setYear(currentYear - 1)\"\n                v-text=\"currentYear - 1\"\n              ></a>\n              -\n              <a\n                @click=\"setYear(currentYear)\"\n                v-text=\"currentYear\"\n              ></a>\n              -\n              <a\n                @click=\"setYear(currentYear + 1)\"\n                v-text=\"currentYear + 1\"\n              ></a>\n            </div>\n          </div>\n          <div class=\"column-datepicker\">\n            <v-date-picker\n              v-model=\"mDates\"\n              :mode=\"isRange ? 'range' : 'single'\"\n              @drag=\"onDrag\"\n              @dayclick=\"onDayClick\"\n              is-range\n              :is-inline=\"true\"\n              :locale=\"$i18n.locale\"\n            />\n            <div\n              v-text=\"datePresentation\"\n              class=\"has-text-centered pb-2\"\n              :class=\"{ 'has-text-grey-light': isSelectingDates }\"\n            ></div>\n          </div>\n        </div>\n\n        <footer\n          v-if=\"confirmChoice\"\n          :class=\"`card-footer`\"\n        >\n          <a\n            @click=\"hideDatePicker()\"\n            class=\"card-footer-item\"\n            v-text=\"$t('Form.Control.Cancel')\"\n          ></a>\n          <a\n            @click=\"applyNewDates()\"\n            class=\"card-footer-item has-text-weight-bold\"\n            :class=\"{ 'has-text-grey': isSelectingDates }\"\n            v-text=\"$t('Form.Control.Apply')\"\n          ></a>\n        </footer>\n      </div>\n    </div>\n  </transition-group>\n</template>\n\n<script>\nimport Vue from 'vue';\nimport VCalendar from 'v-calendar';\nVue.use(VCalendar, {});\n\nexport default {\n  name: 'date-picker-popup',\n\n  props: {\n    target: {\n      default: null,\n      required: true\n    },\n\n    minDate: {\n      type: String,\n      default: function () {\n        return this.$options.filters.dateObjectIsoDateString(new Date());\n      }\n    },\n\n    maxDate: {\n      type: String,\n      default: function () {\n        return this.$options.filters.dateObjectIsoDateString(new Date());\n      }\n    },\n\n    value: {\n      type: [Date, String, Object],\n      default: function () {\n        return this.$options.filters.dateObjectIsoDateString(new Date());\n      }\n    },\n\n    dateFormat: {\n      type: String,\n      default: 'shortDateFormat'\n    },\n\n    confirmChoice: {\n      type: Boolean,\n      default: true\n    },\n\n    isRange: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  inject: {\n    showNoDateSelection: {\n      type: Boolean,\n      default: true\n    }\n  },\n\n  data() {\n    return {\n      refName: `popup${this.target}`,\n      refDatePicker: null,\n      ready: false,\n      trigger: document.getElementById(this.target),\n      readyCounter: 0,\n      mDates: this.initDates(),\n      currentDayIndex: new Date().getDay(),\n      currentMonth: new Date().getMonth(),\n      currentYear: new Date().getFullYear(),\n      selectedDates: [],\n      selectedDatesCounter: 2\n    };\n  },\n\n  computed: {\n    isSelectingDates() {\n      return this.mDates !== null && this.selectedDatesCounter < 2;\n    },\n\n    datePresentation() {\n      let output = '';\n\n      if (this.mDates === null) {\n        return this.$t('Components.UI.DatePickerPopup.Link_NoSelection');\n      }\n\n      if (!this.isRange) {\n        output = this.$options.filters.dateFormat(this.mDates, this.$i18n.locale, this.dateFormat);\n      } else {\n        output = `${this.$options.filters.dateFormat(this.mDates.start, this.$i18n.locale, this.dateFormat)} - ${this.$options.filters.dateFormat(this.mDates.end, this.$i18n.locale, this.dateFormat)}`;\n      }\n      return output;\n    }\n  },\n\n  created() {},\n\n  mounted() {\n    let self = this;\n\n    // Append modal to body\n    document.body.appendChild(this.$el);\n    self.ready = true;\n    let t = setTimeout(() => {\n      document.addEventListener('scroll', self.scrollHandler, true);\n      self.refDatePicker = self.$refs[self.refName];\n      self.scrollHandler();\n      clearTimeout(t);\n    }, 50);\n  },\n\n  beforeDestroy() {\n    this.resetBeforeDestroy();\n  },\n\n  methods: {\n    /**\n     * drag listener\n     */\n    onDrag(val) {\n      if (val === null) {\n        this.selectedDates = this.mDates;\n        this.selectedDatesCounter = 2;\n        return;\n      }\n    },\n\n    /**\n     * day click listener\n     */\n    onDayClick(val) {\n      this.selectedDatesCounter = this.selectedDatesCounter === 2 ? 1 : 2;\n    },\n\n    /**\n     * Initialize prop dates data\n     */\n    initDates() {\n      if (this.value === null) {\n        return this.value;\n      }\n\n      if (!this.isRange) {\n        // Is single\n        if (typeof this.value === 'number') {\n          return new Date(this.value);\n        }\n        if (typeof this.value === 'string') {\n          return this.$options.filters.parseIsoDateStringToDate(this.value);\n        }\n        return this.value;\n      } else {\n        // Is range\n        return {\n          start: typeof this.value.start === 'string' ? this.$options.filters.parseIsoDateStringToDate(this.value.start) : new Date(this.value.start),\n          end: typeof this.value.end === 'string' ? this.$options.filters.parseIsoDateStringToDate(this.value.end) : new Date(this.value.end)\n        };\n      }\n    },\n\n    /**\n     * Action need to be done before destroy\n     */\n    resetBeforeDestroy() {\n      // Remove listeners\n      removeEventListener('scroll', this.scrollHandler);\n\n      // Hide date picker\n      this.ready = false;\n\n      // Remove node from body\n      if (this.$el.parentNode) {\n        this.$el.parentNode.removeChild(this.$el);\n      }\n    },\n\n    /**\n     * Date time popup actions\n     */\n    hideDatePicker() {\n      this.resetBeforeDestroy();\n      this.$emit('hide');\n    },\n\n    /**------------------------------------\n     * DATE CONTROLS\n     ------------------------------------*/\n\n    /**\n     * Clear selected dates\n     */\n    unselectDates() {\n      this.mDates = null;\n      this.applyNewDates();\n    },\n\n    /**\n     * Set date range to:\n     * 0 = today\n     * -1 = one day back\n     * 1 = one day ahead\n     */\n    setDateTo(day = 0) {\n      let dateNow = new Date();\n      dateNow.setDate(dateNow.getDate() + day);\n\n      this.mDates = {\n        start: new Date(dateNow.getFullYear(), dateNow.getMonth(), dateNow.getDate(), 12, 0),\n        end: new Date(dateNow.getFullYear(), dateNow.getMonth(), dateNow.getDate(), 12, 0)\n      };\n\n      this.applyNewDates();\n    },\n\n    getDayName(dayIndex) {\n      if (dayIndex === -1) {\n        // month is decemeber of past year\n        dayIndex = 6;\n      }\n      if (dayIndex === 7) {\n        // month is januari of comming year\n        dayIndex = 0;\n      }\n\n      return this.$options.filters.getDayName(dayIndex + 1, this.$i18n.locale, false);\n    },\n\n    /**\n     * Set date range to this week\n     */\n    setDateToSelectedWeek(weekIndex) {\n      let date = new Date();\n      if (weekIndex === -1) {\n        date = new Date(new Date().setDate(date.getDate() - 7));\n      }\n      if (weekIndex === 1) {\n        date = new Date(new Date().setDate(date.getDate() + 7));\n      }\n\n      let day = date.getDay();\n\n      this.mDates = {\n        start: new Date(date.getFullYear(), date.getMonth(), date.getDate() + ((day == 0 ? -6 : 1) - day), 12, 0),\n        end: new Date(date.getFullYear(), date.getMonth(), date.getDate() + ((day == 0 ? 0 : 7) - day), 12, 0)\n      };\n\n      this.applyNewDates();\n    },\n\n    getMonthName(monthIndex) {\n      let month = monthIndex;\n      let year = this.currentYear;\n\n      if (month === -1) {\n        // month is decemeber of past year\n        month = 11;\n        year = year - 1;\n      }\n      if (month === 12) {\n        // month is januari of comming year\n        month = 0;\n        year = year + 1;\n      }\n\n      let output = this.$options.filters.getMonthName(month + 1, this.$i18n.locale, false);\n      return (output += year !== this.currentYear ? ` (${year})` : '');\n    },\n\n    /**\n     * Set date range to this month\n     */\n    setDateToMonth(monthIndex) {\n      let month = monthIndex;\n      let year = this.currentYear;\n\n      if (month === -1) {\n        // month is decemeber of past year\n        month = 11;\n        year = year - 1;\n      }\n      if (month === 12) {\n        // month is januari of comming year\n        month = 0;\n        year = year + 1;\n      }\n\n      let dateNow = new Date();\n      this.mDates = {\n        start: new Date(year, month, 1, dateNow.getHours(), dateNow.getMinutes()),\n        end: new Date(year, month + 1, 0, dateNow.getHours(), dateNow.getMinutes())\n      };\n\n      // console.log(new Date(\n      //   year,\n      //   month + 1,\n      //   0,\n      //   dateNow.getHours(),\n      //   dateNow.getMinutes()\n      // )\n      // )\n\n      this.applyNewDates();\n    },\n\n    /**\n     * Set date range to selected year\n     */\n    setYear(year) {\n      let dateNow = new Date();\n      this.mDates = {\n        start: new Date(year, 0, 1, dateNow.getHours(), dateNow.getMinutes()),\n        end: new Date(year, 11, 31, dateNow.getHours(), dateNow.getMinutes())\n      };\n\n      this.applyNewDates();\n    },\n\n    /**\n     * Update date picker location on scroll\n     */\n    scrollHandler() {\n      // Check if datePickerRects is not undefined. After second time opening the date picker this issue occuers\n      const viewPortWidth = window.innerWidth;\n      const viewPortHeight = window.innerHeight;\n      const triggerRects = this.trigger.getBoundingClientRect();\n      const datePickerRects = this.refDatePicker.getBoundingClientRect();\n      const vSpaceGap = 5;\n      const hSpaceGap = 15;\n\n      let canBeAddedAbove = triggerRects.top - vSpaceGap - datePickerRects.height > 15;\n      let canBeAddedBelow = viewPortHeight - (triggerRects.top + triggerRects.height + vSpaceGap + datePickerRects.height) > 15;\n\n      // Position datepicker below the input\n      this.refDatePicker.style.top = `${triggerRects.top + triggerRects.height + vSpaceGap}px`;\n\n      if (!canBeAddedAbove && canBeAddedBelow) {\n        // Position datepicker below the input\n        this.refDatePicker.style.top = `${triggerRects.top + triggerRects.height + vSpaceGap}px`;\n      }\n\n      if (canBeAddedAbove && !canBeAddedBelow) {\n        // Place the datepicker above input\n        this.refDatePicker.style.top = `${triggerRects.top - vSpaceGap - datePickerRects.height}px`;\n      }\n\n      if (!canBeAddedAbove && !canBeAddedBelow) {\n        // Center the datepicker\n        this.refDatePicker.style.top = (viewPortHeight - datePickerRects.height) / 2 + 'px';\n      }\n\n      // Position date picker vertical in the center of the trigger element\n      this.refDatePicker.style.left = `${triggerRects.left - datePickerRects.width / 2 + triggerRects.width / 2}px`;\n\n      if (triggerRects.left - datePickerRects.width / 2 + triggerRects.width / 2 - hSpaceGap <= 0) {\n        // Date picker falls to the right of the screen. Set date picker due to the value of the hSpaceGap from the left of the screen\n        this.refDatePicker.style.left = `${hSpaceGap}px`;\n      } else if (triggerRects.left - datePickerRects.width / 2 + triggerRects.width / 2 + datePickerRects.width + hSpaceGap >= viewPortWidth) {\n        // Date picker falls to the right of the screen. Set date picker due to the value of the hSpaceGap from the right of the screen\n        this.refDatePicker.style.left = null;\n        this.refDatePicker.style.right = `${hSpaceGap}px`;\n      }\n    },\n\n    /**\n     * Proces dates and time methods\n     */\n    applyNewDates() {\n      this.$emit('updatedDates', this.mDates);\n      this.hideDatePicker();\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.dpPopup-background {\n  position: fixed;\n  z-index: 100001;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background-color: rgba($color: #333333, $alpha: 0.3);\n}\n\n.dpPopup {\n  position: fixed;\n  z-index: 100002;\n\n  .columns-filters-datepicker {\n    display: flex;\n    overflow: hidden;\n\n    .column-filters {\n      position: relative;\n      z-index: 1;\n      // width: 250px;\n      white-space: nowrap;\n      // box-shadow: -2px 0 10px 1px rgba(124, 124, 124, 0.432);\n\n      .row + .row {\n        border-top: 1px solid #ebebeb;\n        margin-top: 7px;\n        padding-top: 7px;\n      }\n\n      .row {\n        span {\n          display: block;\n          // width: 60px;\n        }\n      }\n    }\n\n    ::v-deep .vc-container {\n      border-color: transparent;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePickerPopup.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePickerPopup.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DatePickerPopup.vue?vue&type=template&id=851127bc&scoped=true\"\nimport script from \"./DatePickerPopup.vue?vue&type=script&lang=js\"\nexport * from \"./DatePickerPopup.vue?vue&type=script&lang=js\"\nimport style0 from \"./DatePickerPopup.vue?vue&type=style&index=0&id=851127bc&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"851127bc\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <input\n      v-if=\"showInput\"\n      type=\"text\"\n      readonly=\"readonly\"\n      aria-readonly=\"true\"\n      autocomplete=\"off\"\n      aria-autocomplete=\"both\"\n      :ref=\"inputId\"\n      class=\"input\"\n      :id=\"inputId\"\n      :value=\"datePresentation\"\n      @click=\"showHideInput()\"\n      @focus=\"removeFocusFromInput\"\n    />\n    <date-picker-popup\n      v-if=\"popupShown\"\n      :ref=\"refDatePickerPopup\"\n      :key=\"'dp-mode-'+isRange\"\n      isRange\n      :locale=\"$i18n.locale\"\n      v-model=\"mDates\"\n      :target=\"inputId\"\n      @updatedDates=\"updatedDates\"\n      @hide=\"hideDatePicker()\"\n      v-click-outside.bubble=\"{ exclude: [inputId], handler: 'hideDatePicker' }\"\n    />\n  </div>\n</template>\n\n<script>\nimport DatePickerPopup from '../DatePickerPopup.vue'\nexport default {\n  name: 'input-date-picker',\n\n  props: {\n    showInput: {\n      type: Boolean,\n      default: true,\n    },\n    value: {\n      type: [Date, String, Object],\n      default: function() {\n        return this.$options.filters.dateObjectIsoDateString(new Date())\n      },\n    },\n    dateFormat: {\n      type: String,\n      default: 'shortDateFormat',\n    },\n    isRange: {\n      type: Boolean,\n      default: false,\n    }\n  },\n\n  components: {\n    DatePickerPopup\n  },\n\n  data() {\n    return {\n      inputId: `dpInput${new Date().getTime()}`,\n      refDatePickerPopup: `popupWrapper${new Date().getTime()}`,\n      popupShown: false,\n      handleOutsideClick: null,\n      mDates: this.value,\n    }\n  },\n\n  computed: {\n    datePresentation() {\n      let output = ''\n\n      if (this.mDates === null) {\n        return this.$t(\"Components.UI.DatePickerPopup.Link_NoSelection\")\n      }\n\n      if (!this.isRange) {\n        output = this.$options.filters.dateFormat(\n          this.mDates,\n          this.$i18n.locale,\n          this.dateFormat\n        )\n      } else {\n        output = `${this.$options.filters.dateFormat(\n          this.mDates.start,\n          this.$i18n.locale,\n          this.dateFormat\n        )} - ${this.$options.filters.dateFormat(\n          this.mDates.end,\n          this.$i18n.locale,\n          this.dateFormat\n        )}`\n      }\n      return output\n    },\n  },\n\n  watch: {\n    value: {\n      immediate: true,\n      handler: function(val) {\n        if (val === null || (val.start.getFullYear() === 1900 && val.end.getFullYear() === 1900)) {\n          this.mDates = null\n          return\n        }\n        this.mDates = { ...{}, ...val }\n      }\n    },\n  },\n\n  methods: {\n    /**\n     * Remove focus from input field\n     */\n    removeFocusFromInput(elm) {\n      elm.target.blur()\n    },\n\n    showHideInput() {\n      this.popupShown = !this.popupShown\n    },\n\n    hideDatePicker() {\n      this.popupShown = false\n    },\n\n    doApplyBeforeClosing() {\n      this.$refs[this.refDatePickerPopup].applyNewDates()\n    },\n\n    // Update dates\n    updatedDates(val) {\n      if (val === null) {\n        val = {\n          start: new Date(1900, 0, 1),\n          end: new Date(1900, 0, 1),\n        }\n      }\n      this.$emit('input', val)\n      this.$emit('updatedDates', val)\n    },\n  },\n\n  directives: {\n    'click-outside': {\n      bind(el, binding, vnode) {\n        // Here's the click/touchstart handler\n        // (it is registered below)\n        vnode.context.handleOutsideClick = (e) => {\n          e.stopPropagation()\n\n          // Get the handler method name and the exclude array\n          // from the object used in v-closable\n          const { handler, exclude } = binding.value\n\n          // This variable indicates if the clicked element is excluded\n          let clickedOnExcludedEl = false\n\n          if (typeof exclude !== 'undefined') {\n            exclude.forEach((refName) => {\n              // We only run this code if we haven't detected\n              // any excluded element yet\n              if (!clickedOnExcludedEl) {\n                // Get the element using the reference name\n                let excludedEl = vnode.context.$refs[refName]\n                // See if this excluded element\n                // is the same element the user just clicked on\n                if (typeof excludedEl !== 'undefined') {\n                  clickedOnExcludedEl = excludedEl.contains(e.target)\n                }\n              }\n            })\n\n            // We check to see if the clicked element is not\n            // the dialog element and not excluded\n            if (!el.contains(e.target) && !clickedOnExcludedEl) {\n              // If the clicked element is outside the dialog\n              // and not the button, then call the outside-click handler\n              // from the same component this directive is used in\n              vnode.context[handler]()\n            }\n          }\n        }\n        // Register click/touchstart event listeners on the whole page\n        document.addEventListener('click', vnode.context.handleOutsideClick)\n        // document.addEventListener('touchstart', vnode.context.handleOutsideClick)\n      },\n\n      unbind(el, binding, vnode) {\n        // If the element that has v-closable is removed, then\n        // unbind click/touchstart listeners from the whole page\n        document.removeEventListener('click', vnode.context.handleOutsideClick)\n        // document.removeEventListener('touchstart', vnode.context.handleOutsideClick)\n      },\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDatePicker.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDatePicker.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./InputDatePicker.vue?vue&type=template&id=6cdb0a0c&scoped=true\"\nimport script from \"./InputDatePicker.vue?vue&type=script&lang=js\"\nexport * from \"./InputDatePicker.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6cdb0a0c\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"field\",class:{ 'is-horizontal': _vm.labelForInput, 'is-vertical': !_vm.labelForInput }},[_c('div',{staticClass:\"field-label is-normal has-text-left\"},[_c('label',{ref:\"label\",staticClass:\"label\"},[_vm._v(\" \"+_vm._s(_vm.label)+\" \"),(_vm.required)?_c('span',{staticClass:\"has-text-danger\"},[_vm._v(\"*\")]):_vm._e()])]),_c('div',{staticClass:\"field-body\"},[_c('div',{staticClass:\"field\",class:_vm.fieldClasses},[_vm._t(\"fields\")],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    class=\"field\"\n    :class=\"{ 'is-horizontal': labelForInput, 'is-vertical': !labelForInput }\"\n  >\n    <div class=\"field-label is-normal has-text-left\">\n      <label\n        ref=\"label\"\n        class=\"label\"\n      >\n        {{ label }}\n        <span\n          class=\"has-text-danger\"\n          v-if=\"required\"\n        >*</span>\n      </label>\n    </div>\n    <div class=\"field-body\">\n      <div\n        class=\"field\"\n        :class=\"fieldClasses\"\n      >\n        <slot name=\"fields\"></slot>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'base-field',\n\n  props: {\n    label: {\n      type: String,\n      default: ''\n    },\n\n    required: {\n      type: Boolean,\n      default: true\n    },\n\n    labelForInput: {\n      type: Boolean,\n      default: true\n    },\n\n    fieldClasses: {\n      type: String,\n      default: ''\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.flex {\n  display: flex;\n  align-items: center;\n}\n.is-borderless {\n  padding-left: 0;\n  border-color: transparent;\n  &:hover {\n    border-color: transparent;\n  }\n}\n\n.field.is-vertical {\n  .label {\n    margin-bottom: 0.5em;\n  }\n}\n$threshold: $desktop - ($gap * 2);\n@media screen and (min-width: $threshold) {\n  .field.is-horizontal {\n    display: flex;\n    align-items: center;\n\n    .field-label {\n      padding-top: unset;\n      flex-basis: 150px;\n      flex-grow: 0;\n    }\n  }\n}\n@media screen and (max-width: $threshold) {\n  .field.is-horizontal {\n    display: block;\n\n    .field-label {\n      flex-basis: unset;\n      flex-grow: unset;\n      padding-top: 0.375em;\n      margin-bottom: 0.5rem;\n    }\n  }\n}\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseFieldTemplate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseFieldTemplate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BaseFieldTemplate.vue?vue&type=template&id=331e34b6&scoped=true\"\nimport script from \"./BaseFieldTemplate.vue?vue&type=script&lang=js\"\nexport * from \"./BaseFieldTemplate.vue?vue&type=script&lang=js\"\nimport style0 from \"./BaseFieldTemplate.vue?vue&type=style&index=0&id=331e34b6&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"331e34b6\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseFieldTemplate.vue?vue&type=style&index=0&id=331e34b6&prod&lang=scss&scoped=true\""],"sourceRoot":""}