HEX
Server: Apache
System: Linux server1.ariadata.co 4.18.0-553.120.1.el8_10.x86_64 #1 SMP Mon Apr 20 18:04:27 EDT 2026 x86_64
User: nepi (1051)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system,show_source,popen,proc_open
Upload Files
File: /home/nepi/public_html/public/admin/js/chunk-2e2e6d82.619905a4.js.map
{"version":3,"sources":["webpack:///./src/layouts/calendar/layout.vue?80ac","webpack:///./src/layouts/calendar/Calendar.vue?405e","webpack:///./src/layouts/calendar/Day.vue?ff9c","webpack:///src/layouts/calendar/Day.vue","webpack:///./src/layouts/calendar/Day.vue?120c","webpack:///./src/layouts/calendar/Day.vue","webpack:///src/layouts/calendar/Calendar.vue","webpack:///./src/layouts/calendar/Calendar.vue?adb9","webpack:///./src/layouts/calendar/Calendar.vue","webpack:///./src/layouts/calendar/Popup.vue?8a1f","webpack:///src/layouts/calendar/Popup.vue","webpack:///./src/layouts/calendar/Popup.vue?a298","webpack:///./src/layouts/calendar/Popup.vue","webpack:///src/layouts/calendar/layout.vue","webpack:///./src/layouts/calendar/layout.vue?6550","webpack:///./src/layouts/calendar/layout.vue","webpack:///./src/layouts/calendar/Day.vue?074c","webpack:///./src/layouts/calendar/Calendar.vue?c6bd","webpack:///./src/layouts/calendar/layout.vue?5ac3","webpack:///./node_modules/@directus/extension-toolkit/mixins/layout.js","webpack:///./src/layouts/calendar/Popup.vue?4d0e"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","ref","_v","_s","$t","monthNames","date","getMonth","getFullYear","directives","name","rawName","value","expression","on","$event","decreaseYear","increaseYear","_l","i","key","class","setMonth","monthDistance","substr","decreaseMonth","staticClass","increaseMonth","hidden","resetMonth","swipeTo","items","openPopup","nativeOn","scroll","showPopup","popupDate","events","staticRenderFns","display","renderWeek","renderDate","$emit","getDate","today","week","_e","event","id","stopPropagation","goToItem","style","title","time","component","close","$parent","moveSidebar","day","changeDay","index","weekname","getDay","getEventCount","randomEmoji","addItemURL","module","exports","props","primaryKeyField","type","String","required","fields","Object","Array","default","viewOptions","viewQuery","loading","Boolean","lazyLoading","selection","link","sortField","collection"],"mappings":"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A,eAEA,aAEA,mBAEA,UAEA,mBAEA,YACA,UACA,WACA,QACA,QACA,MACA,OACA,OACA,SACA,YACA,UACA,WACA,YAEA,WACA,SACA,UACA,YACA,WACA,SACA,WACA,YAIA,UAGA,KAHA,WAIA,eAEA,OADA,8DACA,IAGA,OACA,KADA,SACA,GACA,iBAEA,YAJA,WAKA,0BAGA,QAjEA,WAkEA,wBACA,sCACA,sDACA,qDAEA,UAvEA,WAwEA,yDACA,wDAEA,SACA,QADA,SACA,cACA,wBACA,4BACA,KAMA,GAJA,EADA,kBACA,EAEA,EAEA,mBAEA,iDACA,EACA,gBACA,KACA,gBACA,IACA,YACA,IACA,aACA,IACA,eACA,IACA,eACA,EACA,gBACA,KACA,gBACA,IACA,YACA,IACA,aACA,IACA,eACA,IACA,eACA,oBACA,GACA,kBAGA,UACA,kCACA,eACA,WAEA,kBACA,4BACA,eAEA,mBAEA,mBACA,oBAGA,aAzDA,WA0DA,qBACA,wBAGA,aA9DA,WA+DA,oBACA,wBAGA,cAnEA,WAoEA,qBACA,sBAGA,cAxEA,WAyEA,oBACA,sBAGA,WA7EA,WA8EA,iDACA,sBAGA,SAlFA,SAkFA,GACA,mDACA,sBAGA,UAvFA,SAuFA,GACA,kBACA,kBAGA,YA5FA,SA4FA,GACA,SACA,wBACA,4BACA,yBACA,wBACA,yBAEA,cAEA,sCACA,qBACA,KACA,KAYA,GATA,mBACA,iBAEA,gCACA,qBAEA,6BACA,sBAEA,GAEA,qBACA,uBAWA,GATA,qCACA,wBACA,6BACA,KAEA,0BAEA,IAEA,qBACA,OACA,QACA,WACA,cACA,OACA,SAGA,YAOA,OAHA,MACA,yBAEA,IAGA,YAtJA,SAsJA,KACA,4BAEA,+BACA,+BACA,+BAEA,mCACA,+BAEA,aACA,OACA,GAGA,UArKA,SAqKA,KACA,OACA,kCACA,4BACA,0BAKA,cA9KA,SA8KA,GACA,0BACA,WACA,qBACA,8BACA,sBAGA,SAtLA,SAsLA,GACA,cACA,aACA,kBACA,MACA,iBACA,qBACA,MACA,gBACA,qBACA,MACA,QACA,QAIA,OAtMA,SAsMA,GACA,WACA,qBAEA,wBClW+V,ICQ3V,G,UAAY,eACd,EACAP,EACA6C,GACA,EACA,KACA,WACA,OAIa,e,2CCnBf,yBAAqjB,EAAG,G,oFCAxjB,yBAA0jB,EAAG,G,kCCA7jB,yBAAuf,EAAG,G,mBCA1f4B,EAAOC,QAAU,CACfC,MAAO,CACLC,gBAAiB,CACfC,KAAMC,OACNC,UAAU,GAEZC,OAAQ,CACNH,KAAMI,OACNF,UAAU,GAEZzC,MAAO,CACLuC,KAAMK,MACNC,QAAS,IAAM,IAEjBC,YAAa,CACXP,KAAMI,OACNE,QAAS,KAAM,KAEjBE,UAAW,CACTR,KAAMI,OACNE,QAAS,KAAM,KAEjBG,QAAS,CACPT,KAAMU,QACNJ,SAAS,GAEXK,YAAa,CACXX,KAAMU,QACNJ,SAAS,GAEXM,UAAW,CACTZ,KAAMK,MACNC,QAAS,IAAM,IAEjBO,KAAM,CACJb,KAAMC,OACNK,QAAS,MAEXQ,UAAW,CACTd,KAAMC,OACNK,QAAS,MAEXS,WAAY,CACVf,KAAMC,OACNK,QAAS,S,kCC5Cf,yBAAsf,EAAG,G","file":"js/chunk-2e2e6d82.619905a4.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"calendar\"}},[_c('div',{attrs:{\"id\":\"header\"}},[_c('div',{attrs:{\"id\":\"header-start\"}},[_c('div',{ref:\"dropdown\",attrs:{\"id\":\"date\"}},[_vm._v(\" \"+_vm._s(_vm.$t('months.' + _vm.monthNames[_vm.date.getMonth()]))+\" \"+_vm._s(_vm.date.getFullYear())+\" \"),_c('transition',{attrs:{\"name\":\"months\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showMonthSelect),expression:\"showMonthSelect\"}],attrs:{\"id\":\"date-select\"}},[_c('div',{attrs:{\"id\":\"date-header\"}},[_c('button',{on:{\"click\":function($event){return _vm.decreaseYear()}}},[_c('v-icon',{attrs:{\"name\":\"arrow_back\"}})],1),_vm._v(\" \"+_vm._s(_vm.date.getFullYear())+\" \"),_c('button',{on:{\"click\":function($event){return _vm.increaseYear()}}},[_c('v-icon',{attrs:{\"name\":\"arrow_forward\"}})],1)]),_c('div',{attrs:{\"id\":\"date-months\"}},_vm._l((12),function(i){return _c('div',{key:i,class:_vm.date.getMonth() + 1 == i ? 'mark-month' : '',on:{\"click\":function($event){_vm.setMonth(_vm.monthDistance - _vm.date.getMonth() + (i - 1))}}},[_vm._v(\" \"+_vm._s(_vm.monthNames[i - 1].substr(0, 3))+\" \")])}),0)])])],1),_c('div',{attrs:{\"id\":\"arrows\"}},[_c('button',{on:{\"click\":function($event){return _vm.decreaseMonth()}}},[_c('v-icon',{staticClass:\"icon\",attrs:{\"name\":\"arrow_back\"}})],1),_c('button',{on:{\"click\":function($event){return _vm.increaseMonth()}}},[_c('v-icon',{staticClass:\"icon\",attrs:{\"name\":\"arrow_forward\"}})],1)])]),_c('div',{attrs:{\"id\":\"header-end\"}},[_c('div',{staticClass:\"button\",class:{ hidden: _vm.monthDistance == 0 },attrs:{\"id\":\"today\"},on:{\"click\":function($event){return _vm.resetMonth()}}},[_vm._v(\" \"+_vm._s(_vm.$t('layouts.calendar.today'))+\" \")])])]),_c('div',{attrs:{\"id\":\"display\"}},[_c('transition',{attrs:{\"name\":_vm.swipeTo}},[_c('Calendar',{key:_vm.monthDistance,attrs:{\"month\":_vm.monthDistance,\"items\":_vm.items},on:{\"day\":_vm.openPopup},nativeOn:{\"wheel\":function($event){return _vm.scroll($event)}}})],1)],1),_c('Popup',{attrs:{\"open\":_vm.showPopup,\"parentdate\":_vm.popupDate,\"parentevents\":_vm.events},on:{\"close\":function($event){_vm.showPopup = false}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"view\"}},_vm._l((42),function(i){return _c('Day',{key:i,attrs:{\"display\":_vm.display(i),\"week\":_vm.renderWeek(i),\"date\":_vm.renderDate(i),\"events\":_vm.events(i)},on:{\"popup\":function($event){_vm.$emit('day', _vm.getDate(i))}},nativeOn:{\"click\":function($event){_vm.$emit('day', _vm.getDate(i))}}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"day\",class:{ hidden: _vm.hidden, today: _vm.today }},[_c('div',{staticClass:\"header\"},[(_vm.isWeek)?_c('div',{staticClass:\"header-week\"},[_vm._v(_vm._s(_vm.week.substr(0, 3)))]):_vm._e(),_c('div',{staticClass:\"header-day\"},[_vm._v(_vm._s(_vm.date))])]),_c('div',{staticClass:\"events\"},_vm._l((_vm.eventList),function(event){return _c('a',{key:event.id,on:{\"click\":function($event){$event.stopPropagation();return _vm.goToItem(event.id)}}},[_c('div',{staticClass:\"event\",class:event.id == -1 ? 'event-more' : '',style:(event.color),on:{\"click\":function($event){event.id == -1 ? _vm.$emit('popup') : ''}}},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(event.title))]),_c('span',{staticClass:\"time\"},[_vm._v(_vm._s(event.time.substr(0, 5)))])])])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div class=\"day\" :class=\"{ hidden, today }\">\n\t\t<div class=\"header\">\n\t\t\t<div v-if=\"isWeek\" class=\"header-week\">{{ week.substr(0, 3) }}</div>\n\t\t\t<div class=\"header-day\">{{ date }}</div>\n\t\t</div>\n\t\t<div class=\"events\">\n\t\t\t<a v-for=\"event in eventList\" :key=\"event.id\" @click.stop=\"goToItem(event.id)\">\n\t\t\t\t<div\n\t\t\t\t\tclass=\"event\"\n\t\t\t\t\t:class=\"event.id == -1 ? 'event-more' : ''\"\n\t\t\t\t\t:style=\"event.color\"\n\t\t\t\t\t@click=\"event.id == -1 ? $emit('popup') : ''\"\n\t\t\t\t>\n\t\t\t\t\t<span class=\"title\">{{ event.title }}</span>\n\t\t\t\t\t<span class=\"time\">{{ event.time.substr(0, 5) }}</span>\n\t\t\t\t</div>\n\t\t\t</a>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport { mapState } from 'vuex';\n\nexport default {\n\tprops: {\n\t\tweek: {\n\t\t\ttype: String,\n\t\t\tdefault: null\n\t\t},\n\t\tdisplay: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\tdate: {\n\t\t\ttype: Number,\n\t\t\trequired: true\n\t\t},\n\t\tevents: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => []\n\t\t}\n\t},\n\tdata() {\n\t\treturn {};\n\t},\n\tcomputed: {\n\t\t...mapState(['currentProjectKey']),\n\t\thidden() {\n\t\t\treturn this.display == 'hidden';\n\t\t},\n\t\ttoday() {\n\t\t\treturn this.display == 'today';\n\t\t},\n\t\tisWeek() {\n\t\t\treturn this.week != null;\n\t\t},\n\t\teventList() {\n\t\t\tif (!this.events) return;\n\n\t\t\tvar events = this.events;\n\t\t\tvar height = (this.$parent.innerHeight - 120) / 6;\n\t\t\theight -= 32;\n\t\t\tif (this.isWeek) {\n\t\t\t\theight -= 15;\n\t\t\t}\n\t\t\tif (this.today) {\n\t\t\t\theight -= 5;\n\t\t\t}\n\n\t\t\tvar space = Math.floor(height / 22);\n\n\t\t\tif (events.length > space) {\n\t\t\t\tevents = events.slice(0, space - 1);\n\t\t\t\tevents.push({\n\t\t\t\t\tid: -1,\n\t\t\t\t\ttitle: this.$t('layouts.calendar.moreEvents', {\n\t\t\t\t\t\tamount: this.events.length - space + 1\n\t\t\t\t\t}),\n\t\t\t\t\ttime: ''\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn events;\n\t\t}\n\t},\n\tmethods: {\n\t\tgoToItem(id) {\n\t\t\tif (id !== -1)\n\t\t\t\tthis.$router.push(\n\t\t\t\t\t`/${this.currentProjectKey}/collections/${this.$parent.$parent.collection}/${id}`\n\t\t\t\t);\n\t\t}\n\t}\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.day {\n\toverflow: hidden;\n\tbackground-color: var(--white);\n\tmax-height: 100%;\n}\n\n.day:hover {\n\tbackground-color: var(--highlight);\n}\n\n.header {\n\twidth: 100%;\n\tfont-size: 1.3em;\n\tfont-weight: 400;\n\tpadding: 10px 5px;\n}\n\n.header-week {\n\twidth: 32px;\n\ttext-align: center;\n\tfont-size: 0.7em;\n\tcolor: var(--blue-grey-300);\n}\n\n.header-day {\n\twidth: 100%;\n\twidth: 32px;\n\theight: 32px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tpadding-right: 1px;\n}\n.today .header-day {\n\tborder-radius: 50%;\n\tborder: 2px solid var(--blue-grey-900);\n\tcolor: var(--blue-grey-900);\n}\n\n.events {\n\t.event {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\twidth: 90%;\n\t\theight: 20px;\n\t\tmargin: 0 5% 2px;\n\t\tpadding: 2px 6px;\n\t\tcolor: var(--white);\n\t\tcursor: pointer;\n\t\tborder-radius: var(--border-radius);\n\t\tline-height: 14px;\n\t\t.title {\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\t}\n}\n\n.event-more {\n\t.title {\n\t\tcolor: var(--blue-grey-600);\n\t}\n\tbackground-color: transparent;\n\tjustify-content: center;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Day.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Day.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Day.vue?vue&type=template&id=0ce21240&scoped=true&\"\nimport script from \"./Day.vue?vue&type=script&lang=js&\"\nexport * from \"./Day.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Day.vue?vue&type=style&index=0&id=0ce21240&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  \"0ce21240\",\n  null\n  \n)\n\nexport default component.exports","<template>\n\t<div id=\"view\">\n\t\t<!-- 42 = 6 rows * 7 days -->\n\t\t<Day\n\t\t\tv-for=\"i in 42\"\n\t\t\t:key=\"i\"\n\t\t\t:display=\"display(i)\"\n\t\t\t:week=\"renderWeek(i)\"\n\t\t\t:date=\"renderDate(i)\"\n\t\t\t:events=\"events(i)\"\n\t\t\t@click.native=\"$emit('day', getDate(i))\"\n\t\t\t@popup=\"$emit('day', getDate(i))\"\n\t\t></Day>\n\t</div>\n</template>\n\n<script>\nimport Day from './Day.vue';\nimport { throttle } from 'lodash';\n\nexport default {\n\tcomponents: {\n\t\tDay\n\t},\n\tprops: ['month', 'items'],\n\tdata() {\n\t\treturn {\n\t\t\tinnerHeight: window.innerHeight\n\t\t};\n\t},\n\n\tcomputed: {\n\t\tdate() {\n\t\t\tvar date = new Date();\n\t\t\tdate = new Date(date.getFullYear(), date.getMonth() + this.month, 1);\n\t\t\treturn date;\n\t\t},\n\t\tmonthBegin() {\n\t\t\tvar date = new Date(this.date.getFullYear(), this.date.getMonth(), 1).getDay();\n\t\t\treturn date == 0 ? 7 : date;\n\t\t},\n\t\tmonthLength() {\n\t\t\treturn new Date(this.date.getFullYear(), this.date.getMonth() + 1, 0).getDate();\n\t\t},\n\t\ttoday() {\n\t\t\tvar date = new Date();\n\t\t\treturn date.getDate();\n\t\t}\n\t},\n\tcreated() {\n\t\tthis.updateHeight = throttle(this.updateHeight, 100);\n\t\twindow.addEventListener('resize', () => {\n\t\t\tthis.updateHeight();\n\t\t});\n\t},\n\tdestroyed() {\n\t\twindow.removeEventListener('resize', () => {\n\t\t\tthis.updateHeight();\n\t\t});\n\t},\n\n\tmethods: {\n\t\tevents(index) {\n\t\t\tvar currentDay = new Date(\n\t\t\t\tthis.date.getFullYear(),\n\t\t\t\tthis.date.getMonth(),\n\t\t\t\tindex - this.monthBegin + 1\n\t\t\t);\n\n\t\t\treturn this.$parent.eventsAtDay(currentDay);\n\t\t},\n\n\t\trenderWeek(index) {\n\t\t\tif (index < 8) {\n\t\t\t\treturn this.$t('weeks.' + this.$parent.weekNames[index - 1]);\n\t\t\t} else {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t},\n\n\t\trenderDate(index) {\n\t\t\tvar realDate = new Date(\n\t\t\t\tthis.date.getFullYear(),\n\t\t\t\tthis.date.getMonth(),\n\t\t\t\tindex - this.monthBegin + 1\n\t\t\t);\n\t\t\treturn realDate.getDate();\n\t\t},\n\n\t\tgetDate(index) {\n\t\t\tvar realDate = new Date(\n\t\t\t\tthis.date.getFullYear(),\n\t\t\t\tthis.date.getMonth(),\n\t\t\t\tindex - this.monthBegin + 1\n\t\t\t);\n\t\t\treturn realDate;\n\t\t},\n\n\t\t/*\n\t\t * calculates the display type for each day (hidden | today | default)\n\t\t */\n\t\tdisplay(index) {\n\t\t\tif (index < this.monthBegin || index >= this.monthBegin + this.monthLength) {\n\t\t\t\treturn 'hidden';\n\t\t\t} else if (this.month == 0 && index - this.monthBegin + 1 == this.today) {\n\t\t\t\treturn 'today';\n\t\t\t} else if (index - this.monthBegin < this.monthLength) {\n\t\t\t\treturn 'default';\n\t\t\t}\n\t\t},\n\t\tupdateHeight() {\n\t\t\tthis.innerHeight = window.innerHeight;\n\t\t}\n\t}\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.hidden {\n\topacity: 0.5;\n\tcursor: default !important;\n}\n\n#view {\n\ttransition: transform 500ms;\n\tposition: absolute;\n\theight: 100%;\n\twidth: 100%;\n\tdisplay: grid;\n\tgrid-template: repeat(6, 1fr) / repeat(7, 1fr);\n\tgrid-gap: 1px;\n\tborder: 1px solid var(--blue-grey-50);\n\tbackground-color: var(--blue-grey-50);\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Calendar.vue?vue&type=template&id=46dc78c5&scoped=true&\"\nimport script from \"./Calendar.vue?vue&type=script&lang=js&\"\nexport * from \"./Calendar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Calendar.vue?vue&type=style&index=0&id=46dc78c5&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  \"46dc78c5\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{\"name\":\"popup\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.open),expression:\"open\"}],attrs:{\"id\":\"wrapper\"}},[_c('div',{attrs:{\"id\":\"background\"},on:{\"click\":function($event){return _vm.close()}}}),_c('div',{attrs:{\"id\":\"popup\"}},[_c('div',{attrs:{\"id\":\"sidebar-header\"}},[_vm._v(\" \"+_vm._s(_vm.$t('months.' + _vm.$parent.monthNames[_vm.date.getMonth()]))+\" \"+_vm._s(_vm.date.getFullYear())+\" \")]),_c('div',{attrs:{\"id\":\"sidebar\"},on:{\"wheel\":_vm.scroll}},[_c('transition',{attrs:{\"name\":_vm.moveSidebar}},[_c('div',{attrs:{\"id\":\"dates-container\"}},_vm._l((_vm.days),function(day){return _c('div',{key:day.date.getDate(),staticClass:\"dates\",on:{\"click\":function($event){return _vm.changeDay(day.index)}}},[_c('span',{staticClass:\"dates-day\"},[_vm._v(_vm._s(_vm.weekname(day.date.getDay())))]),_c('span',{staticClass:\"dates-date\"},[_vm._v(_vm._s(day.date.getDate()))]),_c('div',{class:_vm.getEventCount(day.date) > 0\n\t\t\t\t\t\t\t\t\t\t? 'date-counter'\n\t\t\t\t\t\t\t\t\t\t: 'date-counter-hidden'},[_vm._v(\" \"+_vm._s(_vm.getEventCount(day.date))+\" \")])])}),0)])],1),_c('div',{attrs:{\"id\":\"header\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('layouts.calendar.events')))]),_c('button',{on:{\"click\":_vm.close}},[_c('v-icon',{attrs:{\"name\":\"close\"}})],1)]),_c('div',{attrs:{\"id\":\"events\"}},[_vm._l((_vm.events),function(event){return _c('div',{key:event.title,staticClass:\"event\",style:(event.color),on:{\"click\":function($event){return _vm.goToItem(event.id)}}},[_c('span',[_vm._v(_vm._s(event.title))]),_c('span',[_vm._v(_vm._s(event.time.substr(0, 5)))])])}),(_vm.getEventCount(_vm.date) == 0)?_c('div',{attrs:{\"id\":\"events-none\"}},[_c('span',[_vm._v(_vm._s(_vm.randomEmoji()))]),_c('br'),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('layouts.calendar.noEvents')))])]):_vm._e()],2),_c('a',{attrs:{\"id\":\"add\",\"href\":_vm.addItemURL}},[_c('v-icon',{attrs:{\"name\":\"add\"}})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<transition name=\"popup\">\n\t\t<div v-show=\"open\" id=\"wrapper\">\n\t\t\t<div id=\"background\" @click=\"close()\"></div>\n\t\t\t<div id=\"popup\">\n\t\t\t\t<div id=\"sidebar-header\">\n\t\t\t\t\t{{ $t('months.' + $parent.monthNames[date.getMonth()]) }}\n\t\t\t\t\t{{ date.getFullYear() }}\n\t\t\t\t</div>\n\t\t\t\t<div id=\"sidebar\" @wheel=\"scroll\">\n\t\t\t\t\t<transition :name=\"moveSidebar\">\n\t\t\t\t\t\t<div id=\"dates-container\">\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tv-for=\"day in days\"\n\t\t\t\t\t\t\t\t:key=\"day.date.getDate()\"\n\t\t\t\t\t\t\t\tclass=\"dates\"\n\t\t\t\t\t\t\t\t@click=\"changeDay(day.index)\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<span class=\"dates-day\">{{ weekname(day.date.getDay()) }}</span>\n\t\t\t\t\t\t\t\t<span class=\"dates-date\">{{ day.date.getDate() }}</span>\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t:class=\"\n\t\t\t\t\t\t\t\t\t\tgetEventCount(day.date) > 0\n\t\t\t\t\t\t\t\t\t\t\t? 'date-counter'\n\t\t\t\t\t\t\t\t\t\t\t: 'date-counter-hidden'\n\t\t\t\t\t\t\t\t\t\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{{ getEventCount(day.date) }}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</transition>\n\t\t\t\t</div>\n\t\t\t\t<div id=\"header\">\n\t\t\t\t\t<span>{{ $t('layouts.calendar.events') }}</span>\n\t\t\t\t\t<button @click=\"close\">\n\t\t\t\t\t\t<v-icon name=\"close\" />\n\t\t\t\t\t</button>\n\t\t\t\t</div>\n\t\t\t\t<div id=\"events\">\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-for=\"event in events\"\n\t\t\t\t\t\t:key=\"event.title\"\n\t\t\t\t\t\tclass=\"event\"\n\t\t\t\t\t\t:style=\"event.color\"\n\t\t\t\t\t\t@click=\"goToItem(event.id)\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span>{{ event.title }}</span>\n\t\t\t\t\t\t<span>{{ event.time.substr(0, 5) }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div v-if=\"getEventCount(date) == 0\" id=\"events-none\">\n\t\t\t\t\t\t<span>{{ randomEmoji() }}</span>\n\t\t\t\t\t\t<br />\n\t\t\t\t\t\t<br />\n\t\t\t\t\t\t<span>{{ $t('layouts.calendar.noEvents') }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<a id=\"add\" :href=\"addItemURL\"><v-icon name=\"add\" /></a>\n\t\t\t</div>\n\t\t</div>\n\t</transition>\n</template>\n\n<script>\nimport { mapState } from 'vuex';\nimport { throttle } from 'lodash';\n\nexport default {\n\tcomponents: {},\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\tparentdate: {\n\t\t\ttype: Date,\n\t\t\trequired: true\n\t\t},\n\t\tparentevents: {\n\t\t\ttype: Array,\n\t\t\trequired: true\n\t\t}\n\t},\n\tdata() {\n\t\treturn {\n\t\t\t// The differend animations for the sidebar.\n\t\t\tmoveSidebar: 'move-0',\n\t\t\tdate: ''\n\t\t};\n\t},\n\tcomputed: {\n\t\t...mapState(['currentProjectKey']),\n\t\t/*\n\t\t *   Array of days to display in the sidebar.\n\t\t */\n\t\tdays() {\n\t\t\tvar days = new Array();\n\n\t\t\tfor (var i = -4; i <= 4; i++) {\n\t\t\t\tvar date = new Date(\n\t\t\t\t\tthis.date.getFullYear(),\n\t\t\t\t\tthis.date.getMonth(),\n\t\t\t\t\tthis.date.getDate() + i\n\t\t\t\t);\n\t\t\t\tdays.push({ date: date, index: i });\n\t\t\t}\n\t\t\treturn days;\n\t\t},\n\n\t\t/*\n\t\t *   Events at the current day.\n\t\t *   It is seperated from the list of the events for each day\n\t\t *   because you can change the days in the popup, that they are not\n\t\t *   in the current month anymore.\n\t\t */\n\t\tevents() {\n\t\t\treturn this.$parent.eventsAtDay(this.date);\n\t\t},\n\t\taddItemURL() {\n\t\t\tvar url = this.$root._router.currentRoute.path;\n\t\t\treturn '#' + url + '/+';\n\t\t}\n\t},\n\twatch: {\n\t\tparentdate(newValue) {\n\t\t\tthis.date = newValue;\n\t\t}\n\t},\n\tcreated() {\n\t\tthis.date = this.parentdate;\n\t\tthis.scroll = throttle(this.scroll, 150);\n\t},\n\tmethods: {\n\t\t/*\n\t\t *   Gets the name of the week for a specific position in the sidebar.\n\t\t */\n\t\tweekname(day) {\n\t\t\treturn this.$t('weeks.' + this.$parent.weekNames[day == 0 ? 6 : day - 1]).substr(0, 3);\n\t\t},\n\n\t\tgoToItem(id) {\n\t\t\tthis.$router.push(\n\t\t\t\t`/${this.currentProjectKey}/collections/${this.$parent.collection}/${id}`\n\t\t\t);\n\t\t},\n\n\t\tchangeDay(distance) {\n\t\t\tthis.moveSidebar = 'move-' + distance;\n\t\t\tvar newDate = new Date(\n\t\t\t\tthis.date.getFullYear(),\n\t\t\t\tthis.date.getMonth(),\n\t\t\t\tthis.date.getDate() + distance\n\t\t\t);\n\t\t\tthis.date = newDate;\n\t\t\tthis.$parent.popupDate = newDate;\n\t\t},\n\n\t\tclose() {\n\t\t\tthis.$emit('close');\n\t\t\tthis.moveSidebar = 'move-0';\n\t\t},\n\n\t\tgetEventCount(date) {\n\t\t\tvar events = 0;\n\t\t\tvar dateId = this.$parent.viewOptions.date;\n\t\t\tvar datetimeId = this.$parent.viewOptions.datetime;\n\n\t\t\tif (!dateId && !datetimeId) return;\n\n\t\t\tfor (var i = 0; i < this.parentevents.length; i++) {\n\t\t\t\tvar item = this.parentevents[i];\n\t\t\t\tvar eventDate = '';\n\n\t\t\t\t// datetime first\n\t\t\t\tif (datetimeId && datetimeId !== '__none__') {\n\t\t\t\t\teventDate = new Date(item[datetimeId]);\n\t\t\t\t} else {\n\t\t\t\t\teventDate = new Date(item[dateId] + 'T00:00:00');\n\t\t\t\t}\n\n\t\t\t\tif (this.$parent.isSameDay(date, eventDate)) {\n\t\t\t\t\tevents++;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn events;\n\t\t},\n\n\t\trandomEmoji() {\n\t\t\tconst emoticons = [\n\t\t\t\t'(≧︿≦)',\n\t\t\t\t'¯\\\\(°_o)/¯',\n\t\t\t\t'(⌐⊙_⊙)',\n\t\t\t\t'( º﹃º )',\n\t\t\t\t'¯\\\\_(ツ)_/¯',\n\t\t\t\t'(·.·)',\n\t\t\t\t'\\\\(°Ω°)/'\n\t\t\t];\n\t\t\tconst index = Math.floor(Math.random() * emoticons.length);\n\t\t\treturn emoticons[index];\n\t\t},\n\t\tscroll(event) {\n\t\t\tif (event.deltaY > 0) {\n\t\t\t\tthis.changeDay(1);\n\t\t\t} else {\n\t\t\t\tthis.changeDay(-1);\n\t\t\t}\n\t\t}\n\t}\n};\n</script>\n\n<style type=\"scss\" scoped>\n#wrapper {\n\tdisplay: flex;\n\talign-items: center;\n\tposition: absolute;\n\tjustify-content: center;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\ttransition: opacity 300ms;\n}\n#background {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tbackground-color: rgba(38, 50, 56, 0.9);\n\tz-index: 30;\n}\n\n.popup-enter {\n\topacity: 0;\n}\n\n.popup-enter-to {\n\tz-index: 30;\n}\n\n.popup-leave-to {\n\topacity: 0;\n\tz-index: 30;\n}\n\n.popup-enter-active .popup-leave-active {\n\topacity: 1;\n}\n\n#popup {\n\tdisplay: grid;\n\tgrid-template-columns: 25% 75%;\n\tgrid-template-rows: 10% 90%;\n\tposition: relative;\n\tz-index: 30;\n\toverflow: hidden;\n\tbackground-color: var(--white);\n\twidth: 50%;\n\theight: 75%;\n\tborder-radius: var(--border-radius);\n}\n\n#header {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\tpadding: 20px;\n\tgrid-column: 2 / 3;\n}\n\n#header span {\n\tfont-size: 2em;\n\tfont-weight: 400;\n}\n\n#header i {\n\tcursor: pointer;\n}\n\n#sidebar-header {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tgrid-column: 1 / 2;\n\tgrid-row: 1 / 2;\n\tbackground-color: var(--blue-grey-50);\n\tfont-size: 1.5em;\n\tfont-weight: 400;\n\ttext-transform: capitalize;\n}\n\n#sidebar {\n\tgrid-column: 1 / 2;\n\tgrid-row: 2 / 3;\n\tbackground-color: var(--blue-grey-50);\n\theight: 100%;\n\toverflow: hidden;\n}\n\n#dates-container {\n\tmargin-top: calc((67.5vh / 5) * -2);\n\ttransition: transform 300ms;\n}\n\n.move-1-enter {\n\ttransform: translateY(calc(100% / 9));\n}\n.move-1-leave-to {\n\ttransform: translateY(calc(100% / -9));\n}\n\n.move-2-enter {\n\ttransform: translateY(calc(100% / 9 * 2));\n}\n.move-2-leave-to {\n\ttransform: translateY(calc(100% / -9 * 2));\n}\n\n.move--1-enter {\n\ttransform: translateY(calc(100% / -9));\n}\n.move--1-leave-to {\n\ttransform: translateY(calc(100% / 9));\n}\n\n.move--2-enter {\n\ttransform: translateY(calc(100% / -9 * 2));\n}\n.move--2-leave-to {\n\ttransform: translateY(calc(100% / 9 * 2));\n}\n\n.move-1-enter-active\n\t.move-1-leave-active\n\t.move-2-enter-active\n\t.move-2-leave-active\n\t.move--1-enter-active\n\t.move--1-leave-active\n\t.move--2-enter-active\n\t.move--2-leave-active {\n\ttransform: translateY(0);\n}\n\n.dates {\n\tdisplay: flex;\n\tposition: relative;\n\tflex-direction: column;\n\tjustify-content: center;\n\twidth: 100%;\n\theight: calc(67.5vh / 5);\n\tpadding: 0 30%;\n\tcolor: var(--blue-grey-300);\n\tcursor: pointer;\n}\n\n.dates:nth-child(5) {\n\tcolor: var(--blue-grey-600);\n}\n\n.dates::after {\n\tcontent: '';\n\tposition: absolute;\n\twidth: 60%;\n\theight: 2px;\n\tbackground-color: var(--blue-grey-200);\n\tborder-radius: 2px;\n\tbottom: 0;\n\tleft: 50%;\n\ttransform: translate(-50%);\n}\n\n.dates-day {\n\tfont-size: 1.2em;\n\tfont-weight: 400;\n}\n\n.dates-date {\n\tfont-size: 5em;\n\tline-height: 0.9em;\n\talign-self: center;\n}\n\n.date-counter-hidden {\n\twidth: 7px;\n\theight: 7px;\n\topacity: 0;\n}\n\n.date-counter {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-self: center;\n\twidth: 20px;\n\theight: 20px;\n\tline-height: 20px;\n\tborder-radius: 50%;\n\tcolor: var(--white);\n\tbackground-color: var(--blue-grey-900);\n}\n\n#events {\n\tgrid-row: 2 / 3;\n\tdisplay: flex;\n\tfloat: right;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n}\n\n#events-none {\n\ttext-align: center;\n\tcolor: var(--blue-grey-200);\n\tfont-size: 1.5em;\n}\n\n#events-none span:nth-child(1) {\n\tfont-size: 3em;\n}\n\n.event {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\twidth: 90%;\n\theight: 40px;\n\tborder-radius: 3px;\n\tmargin: 5px 0;\n\tpadding: 2px 15px;\n\tcolor: var(--white);\n\n\tfont-size: 1.2em;\n\tfont-weight: 400;\n\tcursor: pointer;\n}\n\n#add {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tposition: absolute;\n\tbottom: 20px;\n\tright: 20px;\n\twidth: 50px;\n\theight: 50px;\n\tbox-shadow: 1px 1px 4px 0px gray;\n\tborder-radius: 50%;\n\tbackground-color: var(--blue-grey-900);\n\ttext-decoration: none;\n\tcolor: var(--white);\n\tcursor: pointer;\n}\n\n#add i {\n\tfont-size: 2.5em;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Popup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Popup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Popup.vue?vue&type=template&id=bc565ce6&scoped=true&\"\nimport script from \"./Popup.vue?vue&type=script&lang=js&\"\nexport * from \"./Popup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Popup.vue?vue&type=style&index=0&id=bc565ce6&scoped=true&lang=css&\"\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  \"bc565ce6\",\n  null\n  \n)\n\nexport default component.exports","<template>\n\t<div id=\"calendar\">\n\t\t<div id=\"header\">\n\t\t\t<div id=\"header-start\">\n\t\t\t\t<div id=\"date\" ref=\"dropdown\">\n\t\t\t\t\t{{ $t('months.' + monthNames[date.getMonth()]) }}\n\t\t\t\t\t{{ date.getFullYear() }}\n\t\t\t\t\t<transition name=\"months\">\n\t\t\t\t\t\t<div v-show=\"showMonthSelect\" id=\"date-select\">\n\t\t\t\t\t\t\t<div id=\"date-header\">\n\t\t\t\t\t\t\t\t<button @click=\"decreaseYear()\">\n\t\t\t\t\t\t\t\t\t<v-icon name=\"arrow_back\" />\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t{{ date.getFullYear() }}\n\t\t\t\t\t\t\t\t<button @click=\"increaseYear()\">\n\t\t\t\t\t\t\t\t\t<v-icon name=\"arrow_forward\" />\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div id=\"date-months\">\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tv-for=\"i in 12\"\n\t\t\t\t\t\t\t\t\t:key=\"i\"\n\t\t\t\t\t\t\t\t\t:class=\"date.getMonth() + 1 == i ? 'mark-month' : ''\"\n\t\t\t\t\t\t\t\t\t@click=\"setMonth(monthDistance - date.getMonth() + (i - 1))\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{{ monthNames[i - 1].substr(0, 3) }}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</transition>\n\t\t\t\t</div>\n\t\t\t\t<div id=\"arrows\">\n\t\t\t\t\t<button @click=\"decreaseMonth()\">\n\t\t\t\t\t\t<v-icon class=\"icon\" name=\"arrow_back\" />\n\t\t\t\t\t</button>\n\t\t\t\t\t<button @click=\"increaseMonth()\">\n\t\t\t\t\t\t<v-icon class=\"icon\" name=\"arrow_forward\" />\n\t\t\t\t\t</button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div id=\"header-end\">\n\t\t\t\t<div\n\t\t\t\t\tid=\"today\"\n\t\t\t\t\tclass=\"button\"\n\t\t\t\t\t:class=\"{ hidden: monthDistance == 0 }\"\n\t\t\t\t\t@click=\"resetMonth()\"\n\t\t\t\t>\n\t\t\t\t\t{{ $t('layouts.calendar.today') }}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div id=\"display\">\n\t\t\t<transition :name=\"swipeTo\">\n\t\t\t\t<Calendar\n\t\t\t\t\t:key=\"monthDistance\"\n\t\t\t\t\t:month=\"monthDistance\"\n\t\t\t\t\t:items=\"items\"\n\t\t\t\t\t@day=\"openPopup\"\n\t\t\t\t\t@wheel.native=\"scroll\"\n\t\t\t\t></Calendar>\n\t\t\t</transition>\n\t\t</div>\n\t\t<Popup\n\t\t\t:open=\"showPopup\"\n\t\t\t:parentdate=\"popupDate\"\n\t\t\t:parentevents=\"events\"\n\t\t\t@close=\"showPopup = false\"\n\t\t></Popup>\n\t</div>\n</template>\n\n<script>\nimport mixin from '@directus/extension-toolkit/mixins/layout';\nimport Calendar from './Calendar.vue';\nimport Popup from './Popup.vue';\nimport { throtle } from 'lodash';\n\nexport default {\n\tcomponents: {\n\t\tCalendar,\n\t\tPopup\n\t},\n\tmixins: [mixin],\n\tprops: ['items'],\n\tdata() {\n\t\treturn {\n\t\t\t//the distance (in months) of the current month\n\t\t\tmonthDistance: 0,\n\n\t\t\t//animates the calendar swipe animation in the right direction\n\t\t\tswipeTo: 'left',\n\n\t\t\tshowPopup: false,\n\n\t\t\tpopupDate: new Date(),\n\n\t\t\tevents: [],\n\n\t\t\tshowMonthSelect: false,\n\n\t\t\tmonthNames: [\n\t\t\t\t'january',\n\t\t\t\t'february',\n\t\t\t\t'march',\n\t\t\t\t'april',\n\t\t\t\t'may',\n\t\t\t\t'june',\n\t\t\t\t'july',\n\t\t\t\t'august',\n\t\t\t\t'september',\n\t\t\t\t'october',\n\t\t\t\t'november',\n\t\t\t\t'december'\n\t\t\t],\n\t\t\tweekNames: [\n\t\t\t\t'monday',\n\t\t\t\t'tuesday',\n\t\t\t\t'wednesday',\n\t\t\t\t'thursday',\n\t\t\t\t'friday',\n\t\t\t\t'saturday',\n\t\t\t\t'sunday'\n\t\t\t]\n\t\t};\n\t},\n\tcomputed: {\n\t\t// Get the date of the view based on the delta of the months that the user\n\t\t// has scrolled\n\t\tdate() {\n\t\t\tvar date = new Date();\n\t\t\tdate = new Date(date.getFullYear(), date.getMonth() + this.monthDistance, 1);\n\t\t\treturn date;\n\t\t}\n\t},\n\twatch: {\n\t\tdate(newValue) {\n\t\t\tthis.getData(newValue);\n\t\t},\n\t\tviewOptions() {\n\t\t\tthis.getData(this.date);\n\t\t}\n\t},\n\tcreated() {\n\t\tthis.getData(this.date);\n\t\tthis.scroll = throttle(this.scroll, 200);\n\t\tdocument.addEventListener('click', this.documentClick);\n\t\tdocument.addEventListener('keypress', this.keyPress);\n\t},\n\tdestroyed() {\n\t\tdocument.removeEventListener('click', this.documentClick);\n\t\tdocument.removeEventListener('keypress', this.keyPress);\n\t},\n\tmethods: {\n\t\tgetData(date) {\n\t\t\tvar dateId = this.viewOptions.date;\n\t\t\tvar datetimeId = this.viewOptions.datetime;\n\t\t\tvar columnName = '';\n\t\t\tif (datetimeId && datetimeId !== '__none__') {\n\t\t\t\tcolumnName = datetimeId;\n\t\t\t} else {\n\t\t\t\tcolumnName = dateId;\n\t\t\t}\n\t\t\tif (!columnName || columnName === '__none__') return;\n\n\t\t\tvar endOfMonth = new Date(date.getFullYear(), date.getMonth() + 1, 0);\n\t\t\tvar from =\n\t\t\t\tdate.getFullYear() +\n\t\t\t\t'-' +\n\t\t\t\t(date.getMonth() + 1) +\n\t\t\t\t'-' +\n\t\t\t\tdate.getDate() +\n\t\t\t\t' ' +\n\t\t\t\tdate.getHours() +\n\t\t\t\t':' +\n\t\t\t\tdate.getMinutes() +\n\t\t\t\t':' +\n\t\t\t\tdate.getSeconds();\n\t\t\tvar to =\n\t\t\t\tendOfMonth.getFullYear() +\n\t\t\t\t'-' +\n\t\t\t\t(endOfMonth.getMonth() + 1) +\n\t\t\t\t'-' +\n\t\t\t\tendOfMonth.getDate() +\n\t\t\t\t' ' +\n\t\t\t\tendOfMonth.getHours() +\n\t\t\t\t':' +\n\t\t\t\tendOfMonth.getMinutes() +\n\t\t\t\t':' +\n\t\t\t\tendOfMonth.getSeconds();\n\t\t\tlet filter = {\n\t\t\t\t[columnName]: {\n\t\t\t\t\tbetween: from + ',' + to\n\t\t\t\t}\n\t\t\t};\n\t\t\tthis.$api\n\t\t\t\t.getItems(this.$parent.collection, {\n\t\t\t\t\tfields: '*.*.*',\n\t\t\t\t\tfilter: filter\n\t\t\t\t})\n\t\t\t\t.then(res => {\n\t\t\t\t\tres.data.forEach(item => {\n\t\t\t\t\t\titem.to = 'test';\n\t\t\t\t\t});\n\t\t\t\t\tthis.events = res.data;\n\t\t\t\t})\n\t\t\t\t.catch(e => {\n\t\t\t\t\tconsole.log(e);\n\t\t\t\t});\n\t\t},\n\t\tincreaseYear() {\n\t\t\tthis.swipeTo = 'right';\n\t\t\tthis.monthDistance += 12;\n\t\t},\n\n\t\tdecreaseYear() {\n\t\t\tthis.swipeTo = 'left';\n\t\t\tthis.monthDistance -= 12;\n\t\t},\n\n\t\tincreaseMonth() {\n\t\t\tthis.swipeTo = 'right';\n\t\t\tthis.monthDistance++;\n\t\t},\n\n\t\tdecreaseMonth() {\n\t\t\tthis.swipeTo = 'left';\n\t\t\tthis.monthDistance--;\n\t\t},\n\n\t\tresetMonth() {\n\t\t\tthis.swipeTo = this.monthDistance > 0 ? 'left' : 'right';\n\t\t\tthis.monthDistance = 0;\n\t\t},\n\n\t\tsetMonth(index) {\n\t\t\tthis.swipeTo = this.monthDistance - index > 0 ? 'left' : 'right';\n\t\t\tthis.monthDistance = index;\n\t\t},\n\n\t\topenPopup(date) {\n\t\t\tthis.showPopup = true;\n\t\t\tthis.popupDate = date;\n\t\t},\n\n\t\teventsAtDay(date) {\n\t\t\tvar events = [];\n\t\t\tvar dateId = this.viewOptions.date;\n\t\t\tvar datetimeId = this.viewOptions.datetime;\n\t\t\tvar titleId = this.viewOptions.title;\n\t\t\tvar timeId = this.viewOptions.time;\n\t\t\tvar colorId = this.viewOptions.color;\n\n\t\t\tif (!(dateId || datetimeId) || !titleId) return;\n\n\t\t\tfor (var i = 0; i < this.events.length; i++) {\n\t\t\t\tvar item = this.events[i];\n\t\t\t\tvar eventDate = '',\n\t\t\t\t\ttime = '';\n\n\t\t\t\t// datetime first\n\t\t\t\tif (datetimeId && datetimeId !== '__none__') {\n\t\t\t\t\teventDate = new Date(item[datetimeId]);\n\t\t\t\t\t// allow to overridetime of datetime if time field is set\n\t\t\t\t\tif (timeId === '__none__') time = item[datetimeId].slice(-8);\n\t\t\t\t\telse time = item[timeId] && timeId != 0 ? item[timeId] : '';\n\t\t\t\t} else {\n\t\t\t\t\teventDate = new Date(item[dateId] + 'T00:00:00');\n\t\t\t\t\ttime = item[timeId] && timeId != 0 ? item[timeId] : '';\n\t\t\t\t}\n\t\t\t\tif (!eventDate) continue;\n\n\t\t\t\tvar color = item[colorId] || 'accent';\n\t\t\t\tvar colorOutput = 'background-color: ';\n\n\t\t\t\tif (color.match(/^\\d{1,3},\\d{1,3},\\d{1,3}$/)) {\n\t\t\t\t\tcolorOutput += `rgb(${color})`;\n\t\t\t\t} else if (color.match(/^#[0-9a-f]{3,6}$/i)) {\n\t\t\t\t\tcolorOutput += color;\n\t\t\t\t} else {\n\t\t\t\t\tcolorOutput += `var(--${color})`;\n\t\t\t\t}\n\t\t\t\tcolor = colorOutput;\n\n\t\t\t\tif (this.isSameDay(date, eventDate)) {\n\t\t\t\t\tvar event = {\n\t\t\t\t\t\tid: item.id,\n\t\t\t\t\t\ttitle: item[titleId],\n\t\t\t\t\t\tto: item.__link__,\n\t\t\t\t\t\ttime,\n\t\t\t\t\t\tcolor\n\t\t\t\t\t};\n\n\t\t\t\t\tevents.push(event);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (timeId != 0) {\n\t\t\t\tevents.sort(this.compareTime);\n\t\t\t}\n\t\t\treturn events;\n\t\t},\n\n\t\tcompareTime(time1, time2) {\n\t\t\tvar timeId = this.viewOptions.time;\n\n\t\t\tif (time1[timeId] == '' && time2[timeId] == '') return 0;\n\t\t\tif (time1[timeId] != '' && time2[timeId] == '') return -1;\n\t\t\tif (time1[timeId] == '' && time2[timeId] != '') return 1;\n\n\t\t\tvar timeA = new Date('1970-01-01T' + time1[timeId]);\n\t\t\tvar timeB = new Date('1970-01-01T' + time2[timeId]);\n\n\t\t\tif (timeA > timeB) return 1;\n\t\t\tif (timeA < timeB) return -1;\n\t\t\treturn 0;\n\t\t},\n\n\t\tisSameDay(date1, date2) {\n\t\t\treturn (\n\t\t\t\tdate1.getFullYear() == date2.getFullYear() &&\n\t\t\t\tdate1.getMonth() == date2.getMonth() &&\n\t\t\t\tdate1.getDate() == date2.getDate()\n\t\t\t);\n\t\t},\n\n\t\t//opens or closes the date select dropdown\n\t\tdocumentClick(event) {\n\t\t\tvar dropdown = this.$refs.dropdown;\n\t\t\tvar target = event.target;\n\t\t\tthis.showMonthSelect =\n\t\t\t\t(target === dropdown && !this.showMonthSelect) ||\n\t\t\t\t(dropdown.contains(target) && target !== dropdown);\n\t\t},\n\n\t\tkeyPress(event) {\n\t\t\tswitch (event.key) {\n\t\t\t\tcase 'Escape':\n\t\t\t\t\tthis.showPopup = false;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ArrowRight':\n\t\t\t\t\tthis.increaseMonth();\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ArrowLeft':\n\t\t\t\t\tthis.decreaseMonth();\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\n\t\tscroll(event) {\n\t\t\tif (event.deltaY > 0) {\n\t\t\t\tthis.increaseMonth();\n\t\t\t} else {\n\t\t\t\tthis.decreaseMonth();\n\t\t\t}\n\t\t}\n\t}\n};\n</script>\n\n<style type=\"scss\" scoped>\n.hidden {\n\topacity: 0.5;\n\tcursor: default !important;\n}\n.left-enter {\n\ttransform: translate(-100%);\n}\n\n.left-leave-to {\n\ttransform: translate(100%);\n}\n\n.right-enter {\n\ttransform: translate(100%);\n}\n\n.right-leave-to {\n\ttransform: translate(-100%);\n}\n\n.left-enter-active .left-leave-active .right-enter-active .right-leave-active {\n\ttransform: translate(0);\n}\n.button {\n\theight: 40px;\n\twidth: 136px;\n\tborder-radius: var(--border-radius);\n\tborder: var(--input-border-width) solid var(--blue-grey-400);\n\tcursor: pointer;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n#calendar {\n\twidth: 100%;\n\theight: calc(100vh - 4.62rem);\n}\n\n#header {\n\theight: var(--header-height);\n\tpadding: 0 20px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n}\n\n#header-start {\n\tdisplay: flex;\n\twidth: 300px;\n}\n\n#date {\n\tcursor: pointer;\n\tfont-size: 1.5em;\n\tfont-weight: 400;\n\twidth: 180px;\n\ttext-transform: capitalize;\n\tposition: relative;\n\ttext-align: left;\n}\n\n.months-enter {\n\topacity: 0;\n}\n\n.months-leave-to {\n\topacity: 0;\n}\n\n.months-enter-active .months-leave-active {\n\topacity: 1;\n}\n\n#date-select {\n\tpadding: 8px 4px;\n\tposition: absolute;\n\ttop: 100%;\n\twidth: 100%;\n\tz-index: 1;\n\tborder-radius: var(--border-radius);\n\tbackground-color: var(--blue-grey-200);\n\ttransition: opacity 100ms;\n}\n\n#date-header {\n\tdisplay: flex;\n\tmargin: 5px 0 10px 0;\n\tjustify-content: space-around;\n}\n\n#date-header i {\n\tcursor: pointer;\n}\n\n.mark-month {\n\tfont-weight: 500;\n\tcolor: var(--blue-grey-800);\n\t/* border: 1px solid var(--blue-grey-600);\n    border-radius: var(--border-radius); */\n}\n\n#date-months {\n\tdisplay: grid;\n\tgrid-template: repeat(4, 1fr) / repeat(3, 1fr);\n\tfont-size: 0.8em;\n\tline-height: 1.6em;\n\ttext-align: center;\n}\n\n#date-months div {\n\tcursor: pointer;\n}\n\n#arrows i {\n\tpadding: 0 5px;\n\tfont-size: 2em;\n\tcursor: pointer;\n}\n\n#today {\n\tcolor: var(--blue-grey-600);\n\ttext-transform: uppercase;\n}\n\n#display {\n\tposition: relative;\n\twidth: 100%;\n\theight: calc(100% - var(--header-height));\n\toverflow: hidden;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./layout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./layout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./layout.vue?vue&type=template&id=efd311c2&scoped=true&\"\nimport script from \"./layout.vue?vue&type=script&lang=js&\"\nexport * from \"./layout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./layout.vue?vue&type=style&index=0&id=efd311c2&scoped=true&lang=css&\"\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  \"efd311c2\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Day.vue?vue&type=style&index=0&id=0ce21240&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Day.vue?vue&type=style&index=0&id=0ce21240&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=style&index=0&id=46dc78c5&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=style&index=0&id=46dc78c5&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./layout.vue?vue&type=style&index=0&id=efd311c2&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./layout.vue?vue&type=style&index=0&id=efd311c2&scoped=true&lang=css&\"","module.exports = {\n  props: {\n    primaryKeyField: {\n      type: String,\n      required: true\n    },\n    fields: {\n      type: Object,\n      required: true\n    },\n    items: {\n      type: Array,\n      default: () => ([])\n    },\n    viewOptions: {\n      type: Object,\n      default: () => ({})\n    },\n    viewQuery: {\n      type: Object,\n      default: () => ({})\n    },\n    loading: {\n      type: Boolean,\n      default: false\n    },\n    lazyLoading: {\n      type: Boolean,\n      default: false\n    },\n    selection: {\n      type: Array,\n      default: () => []\n    },\n    link: {\n      type: String,\n      default: null\n    },\n    sortField: {\n      type: String,\n      default: null\n    },\n    collection: {\n      type: String,\n      default: null\n    }\n  }\n};\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Popup.vue?vue&type=style&index=0&id=bc565ce6&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Popup.vue?vue&type=style&index=0&id=bc565ce6&scoped=true&lang=css&\""],"sourceRoot":""}