diff --git a/app/dist/index.html b/app/dist/index.html index 9611408..81fc3ed 100644 --- a/app/dist/index.html +++ b/app/dist/index.html @@ -1 +1 @@ -ToDo by JANDL
\ No newline at end of file +ToDo by JANDL
\ No newline at end of file diff --git a/app/dist/js/index.1c4f6082.js.map b/app/dist/js/index.1c4f6082.js.map deleted file mode 100644 index dae953b..0000000 --- a/app/dist/js/index.1c4f6082.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"js/index.1c4f6082.js","mappings":"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","sources":["webpack://jandl/./node_modules/@stencil/core/internal/client/ lazy ^\\.\\/.*\\.entry\\.js.*$ include: \\.entry\\.js$ exclude: \\.system\\.entry\\.js$ namespace object","webpack://jandl/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://jandl/./src/plugins/app/_config/webfontloader.ts","webpack://jandl/./src/plugins/app/_config/vuetify.ts","webpack://jandl/./src/plugins/app/_config/quill.util.ts","webpack://jandl/./src/plugins/app/_config/App.vue","webpack://jandl/./src/plugins/tm@modal/team/z-delete-team-modal.vue","webpack://jandl/./src/plugins/tm@modal/_mixins/modal.mixin.ts","webpack://jandl/./src/plugins/tm@modal/team/z-delete-team-modal.vue?889d","webpack://jandl/./src/plugins/tm@modal/team/z-team-modal.vue","webpack://jandl/./src/plugins/tm@modal/team/z-team-modal.vue?719b","webpack://jandl/./src/plugins/tm@modal/task/z-delete-task-modal.vue","webpack://jandl/./src/plugins/tm@modal/task/z-delete-task-modal.vue?dac1","webpack://jandl/./src/plugins/tm@modal/task/z-delete-timeblock-modal.vue","webpack://jandl/./src/plugins/tm@modal/task/z-delete-timeblock-modal.vue?c410","webpack://jandl/./src/plugins/tm@modal/task/z-task-modal.vue","webpack://jandl/./src/plugins/tm@_components/z-files-upload.vue","webpack://jandl/./src/plugins/tm@_components/z-files-upload.vue?aefd","webpack://jandl/./src/plugins/tm@modal/_mixins/vuetify-fix-focus.ts","webpack://jandl/./src/plugins/tm@modal/master-task/_mixins/selects.mixin.ts","webpack://jandl/./src/plugins/tm@modal/task/_components/z-task-readonly-info.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-mastertask-name.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-mastertask-name.vue?35d3","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-mastertask-status.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-mastertask-status.vue?8d63","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-timeblocks.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-timeblocks.vue?441a","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-created-by.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-created-by.vue?b16b","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-assigned-employee.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-assigned-employee.vue?4068","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-planned-time.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-planned-time.vue?2bd6","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-spent-time.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-spent-time.vue?618a","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-remaining-time.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-remaining-time.vue?016a","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-deadline.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-deadline.vue?2a63","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-description.vue","webpack://jandl/./src/plugins/tm@_utils/server-links.utils.ts","webpack://jandl/./src/plugins/tm@modal/task/_components/_components/a-task-description.vue?bb5a","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-files.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-files.vue?7ebd","webpack://jandl/./src/plugins/tm@modal/task/_components/z-task-readonly-info.vue?692c","webpack://jandl/./src/plugins/tm@modal/task/_components/a-timeblock.vue","webpack://jandl/./src/plugins/tm@modal/task/_components/a-timeblock.vue?fbbd","webpack://jandl/./src/plugins/tm@modal/task/z-task-modal.vue?a3ab","webpack://jandl/./src/plugins/tm@modal/blocker/z-delete-blocker-modal.vue","webpack://jandl/./src/plugins/tm@modal/blocker/z-delete-blocker-modal.vue?6a87","webpack://jandl/./src/plugins/tm@modal/task/z-complete-task-modal.vue","webpack://jandl/./src/plugins/tm@modal/task/z-complete-task-modal.vue?2beb","webpack://jandl/./src/plugins/tm@modal/master-task/z-complete-master-task-modal.vue","webpack://jandl/./src/plugins/tm@modal/master-task/z-complete-master-task-modal.vue?b36c","webpack://jandl/./src/plugins/tm@modal/task/z-task-add-time-modal.vue","webpack://jandl/./src/plugins/tm@modal/task/z-task-add-time-modal.vue?f996","webpack://jandl/./src/plugins/tm@modal/blocker/z-blocker-modal.vue","webpack://jandl/./src/plugins/tm@modal/blocker/z-blocker-modal.vue?7f6d","webpack://jandl/./src/plugins/tm@modal/master-task/z-delete-master-task-modal.vue","webpack://jandl/./src/plugins/tm@modal/master-task/z-delete-master-task-modal.vue?9c83","webpack://jandl/./src/plugins/tm@modal/master-task/z-master-task-modal.vue","webpack://jandl/./src/plugins/tm@modal/master-task/_components/a-tasks-table.vue","webpack://jandl/./src/plugins/tm@modal/master-task/_components/a-tasks-table.vue?85a6","webpack://jandl/./src/plugins/tm@modal/master-task/_components/a-mastertask-description.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-deadline.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-deadline.vue?6f7e","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-description.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-description.vue?014c","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-planned-time.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-planned-time.vue?c190","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-remaining-time.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-remaining-time.vue?5784","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-spent-time.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-spent-time.vue?ae50","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-status.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-status.vue?c1f6","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-team.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-team.vue?105d","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-estimated-duration.vue","webpack://jandl/./src/plugins/tm@modal/_components/read-only/z-estimated-duration.vue?eed0","webpack://jandl/./src/plugins/tm@modal/master-task/_components/a-mastertask-description.vue?b7f6","webpack://jandl/./src/plugins/tm@modal/master-task/z-master-task-modal.vue?651e","webpack://jandl/./src/plugins/tm@modal/master-task/z-delete-team-member-modal.vue","webpack://jandl/./src/plugins/tm@modal/master-task/z-delete-team-member-modal.vue?d914","webpack://jandl/./src/plugins/tm@modal/task-cell/z-show-menu-modal.vue","webpack://jandl/./src/plugins/tm@modal/task-cell/z-show-menu-modal.vue?b1a2","webpack://jandl/./src/plugins/tm@modal/task/z-unable-to-edit-office-task-modal.vue","webpack://jandl/./src/plugins/tm@modal/task/z-unable-to-edit-office-task-modal.vue?7dd8","webpack://jandl/./src/plugins/tm@modal/task/z-unable-to-complete-task-modal.vue","webpack://jandl/./src/plugins/tm@modal/task/z-unable-to-complete-task-modal.vue?691c","webpack://jandl/./src/plugins/app/_config/App.vue?b414","webpack://jandl/./src/store.ts","webpack://jandl/./src/plugins/app/_config/router.ts","webpack://jandl/./src/plugins/w/axios/models/axios.ts","webpack://jandl/./src/plugins/w/axios/index.ts","webpack://jandl/./src/plugins/w/moxios/utils/moxios.util.ts","webpack://jandl/./src/plugins/w/moxios/models/moxios.ts","webpack://jandl/./src/plugins/w/moxios/index.ts","webpack://jandl/./src/plugins/w/events/index.ts","webpack://jandl/./src/plugins/w/i18n/models/i18n.ts","webpack://jandl/./src/plugins/w/i18n/index.ts","webpack://jandl/./src/plugins/w/ionic/index.ts","webpack://jandl/./src/plugins/w/auth/refreshExpired.ts","webpack://jandl/./src/plugins/w/auth/auth.store.ts","webpack://jandl/./src/plugins/w/auth/index.ts","webpack://jandl/./src/plugins/w/toast/index.ts","webpack://jandl/./src/plugins/w/loadable/_components/w-loadable.vue","webpack://jandl/./src/plugins/w/loadable/_components/w-loadable.vue?0367","webpack://jandl/./src/plugins/w/loadable/index.ts","webpack://jandl/./src/plugins/w/w/index.ts","webpack://jandl/./src/plugins/w/toast/utils/toast.utils.ts","webpack://jandl/./src/plugins/w@custom/axios/models/axios.ts","webpack://jandl/./src/plugins/w@custom/axios/index.ts","webpack://jandl/./src/plugins/tm@_store/store/index.ts","webpack://jandl/./src/plugins/tm@_store/index.ts","webpack://jandl/./src/plugins/app@vendor/vue-cal/index.vue","webpack://jandl/./src/plugins/app@vendor/vue-cal/utils/date.js","webpack://jandl/./src/plugins/app@vendor/vue-cal/utils/cell.js","webpack://jandl/./src/plugins/app@vendor/vue-cal/utils/event.js","webpack://jandl/./src/plugins/app@vendor/vue-cal/header.vue","webpack://jandl/./src/plugins/app@vendor/vue-cal/weekdays-headings.vue","webpack://jandl/./src/plugins/app@vendor/vue-cal/weekdays-headings.vue?fe42","webpack://jandl/./src/plugins/app@vendor/vue-cal/header.vue?387a","webpack://jandl/./src/plugins/app@vendor/vue-cal/all-day-bar.vue","webpack://jandl/./src/plugins/app@vendor/vue-cal/cell.vue","webpack://jandl/./src/plugins/app@vendor/vue-cal/event.vue","webpack://jandl/./src/plugins/app@vendor/vue-cal/event.vue?094d","webpack://jandl/./src/plugins/app@vendor/vue-cal/cell.vue?9ee5","webpack://jandl/./src/plugins/app@vendor/vue-cal/all-day-bar.vue?9528","webpack://jandl/./src/plugins/app@vendor/vue-cal/index.vue?26da","webpack://jandl/./src/plugins/app@vendor/vue-cal/index.ts","webpack://jandl/./src/plugins/app/_config/main.ts","webpack://jandl/./src/plugins/lib@auth/_utils/error.utils.ts","webpack://jandl/./src/plugins/tm@_mixins/autocomplete.mixin.ts","webpack://jandl/./src/plugins/tm@_utils/tm.utils.ts","webpack://jandl/./src/locales/ sync [A-Za-z0-9-_,\\s]+\\.json$/","webpack://jandl/./src/plugins/app@vendor/vue-cal/i18n/ lazy ^\\.\\/.*\\.json$ namespace object","webpack://jandl/webpack/bootstrap","webpack://jandl/webpack/runtime/chunk loaded","webpack://jandl/webpack/runtime/compat get default export","webpack://jandl/webpack/runtime/create fake namespace object","webpack://jandl/webpack/runtime/define property getters","webpack://jandl/webpack/runtime/ensure chunk","webpack://jandl/webpack/runtime/get javascript chunk filename","webpack://jandl/webpack/runtime/get mini-css chunk filename","webpack://jandl/webpack/runtime/global","webpack://jandl/webpack/runtime/hasOwnProperty shorthand","webpack://jandl/webpack/runtime/load script","webpack://jandl/webpack/runtime/make namespace object","webpack://jandl/webpack/runtime/node module decorator","webpack://jandl/webpack/runtime/publicPath","webpack://jandl/webpack/runtime/css loading","webpack://jandl/webpack/runtime/jsonp chunk loading","webpack://jandl/webpack/startup"],"sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 41993;\nmodule.exports = webpackEmptyAsyncContext;","var map = {\n\t\"./af\": 63906,\n\t\"./af.js\": 63906,\n\t\"./ar\": 40902,\n\t\"./ar-dz\": 3853,\n\t\"./ar-dz.js\": 3853,\n\t\"./ar-kw\": 20299,\n\t\"./ar-kw.js\": 20299,\n\t\"./ar-ly\": 96825,\n\t\"./ar-ly.js\": 96825,\n\t\"./ar-ma\": 66379,\n\t\"./ar-ma.js\": 66379,\n\t\"./ar-sa\": 87700,\n\t\"./ar-sa.js\": 87700,\n\t\"./ar-tn\": 2059,\n\t\"./ar-tn.js\": 2059,\n\t\"./ar.js\": 40902,\n\t\"./az\": 76043,\n\t\"./az.js\": 76043,\n\t\"./be\": 7936,\n\t\"./be.js\": 7936,\n\t\"./bg\": 34078,\n\t\"./bg.js\": 34078,\n\t\"./bm\": 14014,\n\t\"./bm.js\": 14014,\n\t\"./bn\": 29554,\n\t\"./bn-bd\": 17114,\n\t\"./bn-bd.js\": 17114,\n\t\"./bn.js\": 29554,\n\t\"./bo\": 6529,\n\t\"./bo.js\": 6529,\n\t\"./br\": 65437,\n\t\"./br.js\": 65437,\n\t\"./bs\": 19647,\n\t\"./bs.js\": 19647,\n\t\"./ca\": 59951,\n\t\"./ca.js\": 59951,\n\t\"./cs\": 26113,\n\t\"./cs.js\": 26113,\n\t\"./cv\": 37965,\n\t\"./cv.js\": 37965,\n\t\"./cy\": 35858,\n\t\"./cy.js\": 35858,\n\t\"./da\": 33515,\n\t\"./da.js\": 33515,\n\t\"./de\": 62831,\n\t\"./de-at\": 6263,\n\t\"./de-at.js\": 6263,\n\t\"./de-ch\": 51127,\n\t\"./de-ch.js\": 51127,\n\t\"./de.js\": 62831,\n\t\"./dv\": 4510,\n\t\"./dv.js\": 4510,\n\t\"./el\": 68616,\n\t\"./el.js\": 68616,\n\t\"./en-au\": 24595,\n\t\"./en-au.js\": 24595,\n\t\"./en-ca\": 73545,\n\t\"./en-ca.js\": 73545,\n\t\"./en-gb\": 79609,\n\t\"./en-gb.js\": 79609,\n\t\"./en-ie\": 43727,\n\t\"./en-ie.js\": 43727,\n\t\"./en-il\": 93302,\n\t\"./en-il.js\": 93302,\n\t\"./en-in\": 46305,\n\t\"./en-in.js\": 46305,\n\t\"./en-nz\": 39128,\n\t\"./en-nz.js\": 39128,\n\t\"./en-sg\": 84569,\n\t\"./en-sg.js\": 84569,\n\t\"./eo\": 50650,\n\t\"./eo.js\": 50650,\n\t\"./es\": 26358,\n\t\"./es-do\": 64214,\n\t\"./es-do.js\": 64214,\n\t\"./es-mx\": 38639,\n\t\"./es-mx.js\": 38639,\n\t\"./es-us\": 30232,\n\t\"./es-us.js\": 30232,\n\t\"./es.js\": 26358,\n\t\"./et\": 47279,\n\t\"./et.js\": 47279,\n\t\"./eu\": 15515,\n\t\"./eu.js\": 15515,\n\t\"./fa\": 27981,\n\t\"./fa.js\": 27981,\n\t\"./fi\": 37090,\n\t\"./fi.js\": 37090,\n\t\"./fil\": 79208,\n\t\"./fil.js\": 79208,\n\t\"./fo\": 2799,\n\t\"./fo.js\": 2799,\n\t\"./fr\": 23463,\n\t\"./fr-ca\": 2213,\n\t\"./fr-ca.js\": 2213,\n\t\"./fr-ch\": 52848,\n\t\"./fr-ch.js\": 52848,\n\t\"./fr.js\": 23463,\n\t\"./fy\": 41468,\n\t\"./fy.js\": 41468,\n\t\"./ga\": 88163,\n\t\"./ga.js\": 88163,\n\t\"./gd\": 2898,\n\t\"./gd.js\": 2898,\n\t\"./gl\": 76312,\n\t\"./gl.js\": 76312,\n\t\"./gom-deva\": 20682,\n\t\"./gom-deva.js\": 20682,\n\t\"./gom-latn\": 49178,\n\t\"./gom-latn.js\": 49178,\n\t\"./gu\": 31400,\n\t\"./gu.js\": 31400,\n\t\"./he\": 52795,\n\t\"./he.js\": 52795,\n\t\"./hi\": 17009,\n\t\"./hi.js\": 17009,\n\t\"./hr\": 46506,\n\t\"./hr.js\": 46506,\n\t\"./hu\": 69565,\n\t\"./hu.js\": 69565,\n\t\"./hy-am\": 93864,\n\t\"./hy-am.js\": 93864,\n\t\"./id\": 5626,\n\t\"./id.js\": 5626,\n\t\"./is\": 36649,\n\t\"./is.js\": 36649,\n\t\"./it\": 90151,\n\t\"./it-ch\": 95348,\n\t\"./it-ch.js\": 95348,\n\t\"./it.js\": 90151,\n\t\"./ja\": 79830,\n\t\"./ja.js\": 79830,\n\t\"./jv\": 33751,\n\t\"./jv.js\": 33751,\n\t\"./ka\": 63365,\n\t\"./ka.js\": 63365,\n\t\"./kk\": 85980,\n\t\"./kk.js\": 85980,\n\t\"./km\": 99571,\n\t\"./km.js\": 99571,\n\t\"./kn\": 25880,\n\t\"./kn.js\": 25880,\n\t\"./ko\": 16809,\n\t\"./ko.js\": 16809,\n\t\"./ku\": 96773,\n\t\"./ku.js\": 96773,\n\t\"./ky\": 65505,\n\t\"./ky.js\": 65505,\n\t\"./lb\": 50553,\n\t\"./lb.js\": 50553,\n\t\"./lo\": 51237,\n\t\"./lo.js\": 51237,\n\t\"./lt\": 91563,\n\t\"./lt.js\": 91563,\n\t\"./lv\": 61057,\n\t\"./lv.js\": 61057,\n\t\"./me\": 96495,\n\t\"./me.js\": 96495,\n\t\"./mi\": 83096,\n\t\"./mi.js\": 83096,\n\t\"./mk\": 43874,\n\t\"./mk.js\": 43874,\n\t\"./ml\": 46055,\n\t\"./ml.js\": 46055,\n\t\"./mn\": 87747,\n\t\"./mn.js\": 87747,\n\t\"./mr\": 17113,\n\t\"./mr.js\": 17113,\n\t\"./ms\": 8687,\n\t\"./ms-my\": 7948,\n\t\"./ms-my.js\": 7948,\n\t\"./ms.js\": 8687,\n\t\"./mt\": 14532,\n\t\"./mt.js\": 14532,\n\t\"./my\": 4655,\n\t\"./my.js\": 4655,\n\t\"./nb\": 56961,\n\t\"./nb.js\": 56961,\n\t\"./ne\": 2512,\n\t\"./ne.js\": 2512,\n\t\"./nl\": 48448,\n\t\"./nl-be\": 72936,\n\t\"./nl-be.js\": 72936,\n\t\"./nl.js\": 48448,\n\t\"./nn\": 49031,\n\t\"./nn.js\": 49031,\n\t\"./oc-lnc\": 5174,\n\t\"./oc-lnc.js\": 5174,\n\t\"./pa-in\": 30118,\n\t\"./pa-in.js\": 30118,\n\t\"./pl\": 93448,\n\t\"./pl.js\": 93448,\n\t\"./pt\": 33518,\n\t\"./pt-br\": 62447,\n\t\"./pt-br.js\": 62447,\n\t\"./pt.js\": 33518,\n\t\"./ro\": 70817,\n\t\"./ro.js\": 70817,\n\t\"./ru\": 10262,\n\t\"./ru.js\": 10262,\n\t\"./sd\": 58990,\n\t\"./sd.js\": 58990,\n\t\"./se\": 43842,\n\t\"./se.js\": 43842,\n\t\"./si\": 37711,\n\t\"./si.js\": 37711,\n\t\"./sk\": 80756,\n\t\"./sk.js\": 80756,\n\t\"./sl\": 3772,\n\t\"./sl.js\": 3772,\n\t\"./sq\": 6187,\n\t\"./sq.js\": 6187,\n\t\"./sr\": 40732,\n\t\"./sr-cyrl\": 75713,\n\t\"./sr-cyrl.js\": 75713,\n\t\"./sr.js\": 40732,\n\t\"./ss\": 99455,\n\t\"./ss.js\": 99455,\n\t\"./sv\": 69770,\n\t\"./sv.js\": 69770,\n\t\"./sw\": 80959,\n\t\"./sw.js\": 80959,\n\t\"./ta\": 36459,\n\t\"./ta.js\": 36459,\n\t\"./te\": 25302,\n\t\"./te.js\": 25302,\n\t\"./tet\": 67975,\n\t\"./tet.js\": 67975,\n\t\"./tg\": 71294,\n\t\"./tg.js\": 71294,\n\t\"./th\": 2385,\n\t\"./th.js\": 2385,\n\t\"./tk\": 24613,\n\t\"./tk.js\": 24613,\n\t\"./tl-ph\": 58668,\n\t\"./tl-ph.js\": 58668,\n\t\"./tlh\": 58190,\n\t\"./tlh.js\": 58190,\n\t\"./tr\": 74506,\n\t\"./tr.js\": 74506,\n\t\"./tzl\": 63440,\n\t\"./tzl.js\": 63440,\n\t\"./tzm\": 69852,\n\t\"./tzm-latn\": 42350,\n\t\"./tzm-latn.js\": 42350,\n\t\"./tzm.js\": 69852,\n\t\"./ug-cn\": 70730,\n\t\"./ug-cn.js\": 70730,\n\t\"./uk\": 40099,\n\t\"./uk.js\": 40099,\n\t\"./ur\": 72100,\n\t\"./ur.js\": 72100,\n\t\"./uz\": 96002,\n\t\"./uz-latn\": 26322,\n\t\"./uz-latn.js\": 26322,\n\t\"./uz.js\": 96002,\n\t\"./vi\": 14207,\n\t\"./vi.js\": 14207,\n\t\"./x-pseudo\": 24674,\n\t\"./x-pseudo.js\": 24674,\n\t\"./yo\": 10570,\n\t\"./yo.js\": 10570,\n\t\"./zh-cn\": 73644,\n\t\"./zh-cn.js\": 73644,\n\t\"./zh-hk\": 22591,\n\t\"./zh-hk.js\": 22591,\n\t\"./zh-mo\": 89503,\n\t\"./zh-mo.js\": 89503,\n\t\"./zh-tw\": 88080,\n\t\"./zh-tw.js\": 88080\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","export async function loadFonts() {\n\tconst webFontLoader = await import('webfontloader')\n\n\twebFontLoader.load({\n\t\tgoogle: {\n\t\t\tfamilies: ['Roboto:100,300,400,500,700,900&display=swap']\n\t\t}\n\t})\n}\n","import { createVuetify } from \"vuetify\"\nimport \"@mdi/font/css/materialdesignicons.css\"\nimport \"vuetify/styles\"\n\nexport default createVuetify()","import { Quill } from '@vueup/vue-quill'\n\nexport function registerQuillUrlSanitizer() {\n const Link = Quill.import('formats/link')\n\n // Extend the protocol whitelist\n Link.PROTOCOL_WHITELIST.push('smb', 'fmp', 'radar', 'rdar', 'sms', '\\\\')\n\n class CustomLinkSanitizer extends Link {\n static sanitize(url) {\n const sanitizedUrl = super.sanitize(url)\n\n if (!sanitizedUrl || sanitizedUrl === 'about:blank') return sanitizedUrl\n\n const protocolWhitelist = Link.PROTOCOL_WHITELIST\n const hasWhitelistedProtocol = protocolWhitelist.some(protocol => sanitizedUrl.startsWith(protocol))\n\n if (hasWhitelistedProtocol) return sanitizedUrl\n\n return `https://${sanitizedUrl}`\n } \n }\n\n Quill.register('formats/link', CustomLinkSanitizer, true)\n}","\n\n","\n\n","export default {\n\tmounted() {\n\t\twindow.addEventListener('keydown', this.handleKeyDown)\n\t},\n\n\tmethods: {\n\t\thandleKeyDown(event) {\n\t\t\t// if (event.keyCode === 27) this.closeModal()\n\t\t\tif (event.keyCode === 27) this.visible = false\n\t\t}\n\t},\n}","import { render } from \"./z-delete-team-modal.vue?vue&type=template&id=67985565\"\nimport script from \"./z-delete-team-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-team-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-team-modal.vue?vue&type=template&id=3218e2d8\"\nimport script from \"./z-team-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-team-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-delete-task-modal.vue?vue&type=template&id=69a1b060\"\nimport script from \"./z-delete-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./z-delete-timeblock-modal.vue?vue&type=template&id=d203e48e&scoped=true\"\nimport script from \"./z-delete-timeblock-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-timeblock-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-delete-timeblock-modal.vue?vue&type=style&index=0&id=d203e48e&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d203e48e\"]])\n\nexport default __exports__","\n\n\n\n\n","\n\n\n\n","import { render } from \"./z-files-upload.vue?vue&type=template&id=a2a40214&scoped=true\"\nimport script from \"./z-files-upload.vue?vue&type=script&lang=js\"\nexport * from \"./z-files-upload.vue?vue&type=script&lang=js\"\n\nimport \"./z-files-upload.vue?vue&type=style&index=0&id=a2a40214&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a2a40214\"]])\n\nexport default __exports__","export default {\n // Mixin to fix autofocus on v-input in modals where date selects are used\n data() {\n return {\n preventInputFocus: false,\n savedScrollPosition: null,\n };\n },\n\n methods: {\n setFocusEvent() {\n document.querySelectorAll('.v-autocomplete input').forEach((input) => {\n input.addEventListener('focus', this.onInputFocus);\n });\n },\n\n onDateFocus($event) {\n if ($event == undefined) {\n this.preventInputFocus = true;\n }\n },\n\n onDateOpen($event) {\n // $event should be the element reference (or any truthy value to trigger saving)\n if ($event) {\n // Find the scrollable modal container\n const modalContent = document.querySelector('.v-dialog .modal-content');\n if (modalContent) {\n this.savedScrollPosition = modalContent.scrollTop;\n }\n\n this.preventInputFocus = true;\n\n // Reset after datepicker is opened\n setTimeout(() => {\n this.preventInputFocus = false;\n this.savedScrollPosition = null;\n }, 500);\n }\n },\n\n onInputFocus($event) {\n // If we have a saved scroll position and an unwanted focus happened\n if (this.preventInputFocus && this.savedScrollPosition !== null) {\n const target = $event.target;\n\n // Only intercept text input focus (autocomplete fields)\n if (target.tagName === 'INPUT' && target.type === 'text') {\n // Blur the focused element\n setTimeout(() => {\n target.blur();\n\n const modalContent = document.querySelector(\n '.v-dialog .modal-content',\n );\n if (modalContent && this.savedScrollPosition !== null) {\n modalContent.scrollTop = this.savedScrollPosition;\n }\n }, 0);\n }\n }\n },\n },\n};\n","export default {\n\tcomputed: {\n\t\temployeesOptions() {\n\t\t\tconst selectedEmployees = [...this.mastertask.employees].map(employee => employee.id)\n\n\t\t\treturn this.enrichedEmployees.filter(\n\t\t\t\t(employee) => !selectedEmployees.includes(employee.id)\n\t\t\t) || []\n\t\t},\n\n\t\tprojectsOptions() {\n\t\t\t// Added to \"paginate\" projects, because v-autocomplete was unable to handle so many projects at once\n\n\t\t\tconst pattern = /[^a-zA-Z0-9 ]/g\n\n\t\t\tconst normalizedInput = this.projectCodeSearch\n\t\t\t\t? this.projectCodeSearch.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').replace(pattern, '')\n\t\t\t\t: ''\n\n\t\t\tconst projects = this.projects.filter(project => {\n\t\t\t\tconst normalizedProjectCode = project.code.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').replace(pattern, '')\n\t\t\t\treturn normalizedProjectCode.toLowerCase().includes(normalizedInput.toLowerCase())\n\t\t\t})\n\n\t\t\tlet filteredProjects \t= projects?.length ? projects.slice(0, 10) : this.projects.slice(0, 10)\n\n\t\t\tif (!this.mastertask?.project_id)\n\t\t\t\treturn filteredProjects\n\n\t\t\tconst selectedProject \t= this.projects.find(project => project.id == this.mastertask?.project_id)\n\t\t\tfilteredProjects \t\t= filteredProjects.filter(project => project.id != selectedProject.id)\n\n\t\t\treturn [...filteredProjects, selectedProject]\n\t\t}\n\t},\n\n\tmethods: {\n\t\t// onProjectSelected(id) {\n\t\t// \tconst project = this.projects.find(project => project.id == id)\n\t\t// \tthis.mastertask.project_code = project.code\n\t\t// \tthis.mastertask.project_id \t = project.id\n\t\t// },\n\n\t\tonEmployeeSelected(id) {\n\t\t\tconst employee = this.enrichedEmployees.find(employee => employee.id == id)\n\t\t\tthis.mastertask.employees.push(employee)\n\t\t\tthis.showAddEmployeeInput = false\n\t\t},\n\n\t\tonEmployeeDurationChanged() {\n\t\t\tlet totalDuration = 0\n\n\t\t\tthis.mastertask.employees = this.mastertask.employees.map(employee => {\n\t\t\t\tif (typeof employee.duration == 'string') {\n\t\t\t\t\ttotalDuration += parseFloat(employee.duration)\n\t\t\t\t\temployee.duration = parseFloat(employee.duration)\n\t\t\t\t\temployee.invalid = false\n\t\t\t\t}\n\t\t\t\telse if (typeof employee.duration == 'number') {\n\t\t\t\t\ttotalDuration += employee.duration\n\t\t\t\t\temployee.invalid = false\n\t\t\t\t}\n\n\t\t\t\treturn employee\n\t\t\t})\n\n\t\t\tthis.mastertask.duration = totalDuration\n\t\t}\n\t},\n\n\twatch: {\n\t\t'mastertask.team_id'(value) {\n\t\t\tif (!value) return\n\t\t\t\n\t\t\tconst team = this.teams.find(team => team.id == value)\n\t\t\tif (!team) return\n\n\t\t\tthis.mastertask.team \t\t= JSON.parse(JSON.stringify(team))\n\t\t\tthis.mastertask.employees = [...this.mastertask.team.employees]\n\t\t},\n\t}\n}","\n\n\n","\n\n\n","import { render } from \"./a-mastertask-name.vue?vue&type=template&id=154bd9ae\"\nimport script from \"./a-mastertask-name.vue?vue&type=script&lang=js\"\nexport * from \"./a-mastertask-name.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./a-mastertask-status.vue?vue&type=template&id=40b1e729\"\nimport script from \"./a-mastertask-status.vue?vue&type=script&lang=js\"\nexport * from \"./a-mastertask-status.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./a-task-timeblocks.vue?vue&type=template&id=37c877b0\"\nimport script from \"./a-task-timeblocks.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-timeblocks.vue?vue&type=script&lang=js\"\n\nimport \"./a-task-timeblocks.vue?vue&type=style&index=0&id=37c877b0&lang=sass\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-created-by.vue?vue&type=template&id=76476816\"\nimport script from \"./z-created-by.vue?vue&type=script&lang=js\"\nexport * from \"./z-created-by.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./a-task-assigned-employee.vue?vue&type=template&id=e04c27ce\"\nimport script from \"./a-task-assigned-employee.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-assigned-employee.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./a-task-planned-time.vue?vue&type=template&id=5c6a17d5\"\nimport script from \"./a-task-planned-time.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-planned-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./a-task-spent-time.vue?vue&type=template&id=dc6acca2&scoped=true\"\nimport script from \"./a-task-spent-time.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-spent-time.vue?vue&type=script&lang=js\"\n\nimport \"./a-task-spent-time.vue?vue&type=style&index=0&id=dc6acca2&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-dc6acca2\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./a-task-remaining-time.vue?vue&type=template&id=76900acb\"\nimport script from \"./a-task-remaining-time.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-remaining-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./a-task-deadline.vue?vue&type=template&id=1d87e2c9\"\nimport script from \"./a-task-deadline.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-deadline.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { useToast } from 'vue-toast-notification';\nconst toast = useToast();\n\ndeclare global {\n interface Window {\n\ttoast: typeof toast;\n }\n}\n\nwindow.toast = toast;\n\nexport function detectOS() {\n\tconst platform = window.navigator.platform\n\tconst macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K']\n\tconst windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE']\n\n\tif (macosPlatforms.indexOf(platform) !== -1) {\n\t\treturn 'mac'\n\t} else if (windowsPlatforms.indexOf(platform) !== -1) {\n\t\treturn 'win'\n\t}\n\treturn 'win'\n}\n\nexport function prepareHTMLDescription(description) {\n\tif (!description) return description\n\n\tconst os = detectOS()\n\n\tif (os === 'mac') {\n\t\tdescription = description.replace(/\\\\\\\\/g, 'smb://')\n\n\t\t// find all smb links and replace them with clickable links, separated by ' ', '<', '>', '\"', and '(', ')' characters\n\t\tdescription = description = description.replace(/(smb:\\/\\/[^\\s<>\"()]+)/g, function(match) {\n\t\t\treturn '' + match.replace(/\\\\/g, '/') + ''\n\t\t})\n\t} else {\n\t\tdescription = description.replace(/smb:\\/\\//g, '\\\\\\\\')\n\n\t\t\n\t\t// find all windows links and replace them with clickable links, separated by ' ', '<', '>', '\"', and '(', ')' characters\n\t\tdescription = description.replace(/(\\\\\\\\[^\\s<>\"()]+)/g, function(match) {\n\t\t\tmatch = match.replaceAll('/', '\\\\')\n\t\t\treturn '' + match + '';\n\t\t});\n\t}\n\n\treturn description;\n}\n\nfunction getCopyFunction(text) {\n\treturn `\n\t\tif (navigator.clipboard && navigator.clipboard.writeText) {\n\t\t\tnavigator.clipboard.writeText('${text.replace(/\\\\/g, '\\\\\\\\')}').then(() => {\n\t\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t\t}).catch(err => {\n\t\t\t\twindow.toast.error('Failed to copy link to clipboard!')\n\t\t\t});\n\t\t} else {\n\t\t\tconst input = document.createElement('input');\n\t\t\tinput.style.position = 'fixed';\n\t\t\tinput.style.opacity = 0;\n\t\t\tinput.style.pointerEvents = 'none';\n\t\t\tinput.value = '${text.replace(/\\\\/g, '\\\\\\\\')}';\n\t\t\tdocument.body.appendChild(input);\n\t\t\tinput.select();\n\t\t\tinput.focus();\n\t\t\tdocument.execCommand('copy');\n\t\t\tdocument.body.removeChild(input);\n\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t}\n\t`\n}","import { render } from \"./a-task-description.vue?vue&type=template&id=37e8334d\"\nimport script from \"./a-task-description.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-description.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n","import { render } from \"./z-files.vue?vue&type=template&id=f01fa1ac&scoped=true\"\nimport script from \"./z-files.vue?vue&type=script&lang=js\"\nexport * from \"./z-files.vue?vue&type=script&lang=js\"\n\nimport \"./z-files.vue?vue&type=style&index=0&id=f01fa1ac&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f01fa1ac\"]])\n\nexport default __exports__","import { render } from \"./z-task-readonly-info.vue?vue&type=template&id=ed26273c\"\nimport script from \"./z-task-readonly-info.vue?vue&type=script&lang=js\"\nexport * from \"./z-task-readonly-info.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./a-timeblock.vue?vue&type=template&id=4d980d7a&scoped=true\"\nimport script from \"./a-timeblock.vue?vue&type=script&lang=js\"\nexport * from \"./a-timeblock.vue?vue&type=script&lang=js\"\n\nimport \"./a-timeblock.vue?vue&type=style&index=0&id=4d980d7a&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4d980d7a\"]])\n\nexport default __exports__","import { render } from \"./z-task-modal.vue?vue&type=template&id=3db8381d&scoped=true\"\nimport script from \"./z-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-task-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-task-modal.vue?vue&type=style&index=0&id=3db8381d&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3db8381d\"]])\n\nexport default __exports__","\n\n","import { render } from \"./z-delete-blocker-modal.vue?vue&type=template&id=fe8d1392\"\nimport script from \"./z-delete-blocker-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-blocker-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-complete-task-modal.vue?vue&type=template&id=0e2bf271\"\nimport script from \"./z-complete-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-complete-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-complete-master-task-modal.vue?vue&type=template&id=62a2645e\"\nimport script from \"./z-complete-master-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-complete-master-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-task-add-time-modal.vue?vue&type=template&id=2d4f711c\"\nimport script from \"./z-task-add-time-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-task-add-time-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-blocker-modal.vue?vue&type=template&id=1ca4825a\"\nimport script from \"./z-blocker-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-blocker-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-delete-master-task-modal.vue?vue&type=template&id=9419f686\"\nimport script from \"./z-delete-master-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-master-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","\n\n\n\n\n","import { render } from \"./a-tasks-table.vue?vue&type=template&id=753dec0e&scoped=true\"\nimport script from \"./a-tasks-table.vue?vue&type=script&lang=js\"\nexport * from \"./a-tasks-table.vue?vue&type=script&lang=js\"\n\nimport \"./a-tasks-table.vue?vue&type=style&index=0&id=753dec0e&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-753dec0e\"]])\n\nexport default __exports__","\n\n\n","\n\n","import { render } from \"./z-deadline.vue?vue&type=template&id=13a73f8f\"\nimport script from \"./z-deadline.vue?vue&type=script&lang=js\"\nexport * from \"./z-deadline.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-description.vue?vue&type=template&id=09dc9550\"\nimport script from \"./z-description.vue?vue&type=script&lang=js\"\nexport * from \"./z-description.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-planned-time.vue?vue&type=template&id=0c44c1d0\"\nimport script from \"./z-planned-time.vue?vue&type=script&lang=js\"\nexport * from \"./z-planned-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-remaining-time.vue?vue&type=template&id=759929d5\"\nimport script from \"./z-remaining-time.vue?vue&type=script&lang=js\"\nexport * from \"./z-remaining-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-spent-time.vue?vue&type=template&id=cc4966e2\"\nimport script from \"./z-spent-time.vue?vue&type=script&lang=js\"\nexport * from \"./z-spent-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-status.vue?vue&type=template&id=5a460912\"\nimport script from \"./z-status.vue?vue&type=script&lang=js\"\nexport * from \"./z-status.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-team.vue?vue&type=template&id=3dfe3a63\"\nimport script from \"./z-team.vue?vue&type=script&lang=js\"\nexport * from \"./z-team.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-estimated-duration.vue?vue&type=template&id=5c7dad8e\"\nimport script from \"./z-estimated-duration.vue?vue&type=script&lang=js\"\nexport * from \"./z-estimated-duration.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./a-mastertask-description.vue?vue&type=template&id=2ed63137\"\nimport script from \"./a-mastertask-description.vue?vue&type=script&lang=js\"\nexport * from \"./a-mastertask-description.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./z-master-task-modal.vue?vue&type=template&id=ea627ecc&scoped=true\"\nimport script from \"./z-master-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-master-task-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-master-task-modal.vue?vue&type=style&index=0&id=ea627ecc&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-ea627ecc\"]])\n\nexport default __exports__","\r\n\r\n","import { render } from \"./z-delete-team-member-modal.vue?vue&type=template&id=554335ff\"\nimport script from \"./z-delete-team-member-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-team-member-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-show-menu-modal.vue?vue&type=template&id=1399b161\"\nimport script from \"./z-show-menu-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-show-menu-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-unable-to-edit-office-task-modal.vue?vue&type=template&id=4cd44904\"\nimport script from \"./z-unable-to-edit-office-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-unable-to-edit-office-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./z-unable-to-complete-task-modal.vue?vue&type=template&id=f007e35e&scoped=true\"\nimport script from \"./z-unable-to-complete-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-unable-to-complete-task-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-unable-to-complete-task-modal.vue?vue&type=style&index=0&id=f007e35e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f007e35e\"]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=0c83946b\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createStore } from \"vuex\";\n\nexport default createStore({\n state: {},\n getters: {},\n mutations: {},\n actions: {},\n modules: {},\n});","import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'\nimport store from '@/store'\n\nconst routes: Array = [\n\t{\n\t\tpath: '',\n\t\tredirect: '/auth'\n\t},\n\t{\n\t\tpath: '/auth/',\n\t\tcomponent: () => import('@/plugins/app/_layout/auth/auth.layout.vue'),\n\t\tchildren: [\n\t\t\t{\n\t\t\t\tpath: '',\n\t\t\t\tredirect: '/auth/login'\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/login',\n\t\t\t\tname: 'Login',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/login/login.vue'),\n\t\t\t\tmeta: {requiresAuth: false}\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/forgot-password',\n\t\t\t\tname: 'Forgot password',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/forgot-password/forgot-password.vue'),\n\t\t\t\tmeta: {requiresAuth: false}\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/forgot-success',\n\t\t\t\tname: 'Forgot success',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/forgot-success/forgot-success.vue'),\n\t\t\t\tmeta: {requiresAuth: false}\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/reset-password',\n\t\t\t\tname: 'Reset password',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/reset-password/reset-password.vue'),\n\t\t\t\tmeta: {requiresAuth: null}\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\tpath: '/app',\n\t\tcomponent: () => import('@/plugins/app/_layout/app/app.layout.vue'),\n\t\tchildren: [\n\t\t\t{\n\t\t\t\tpath: '',\n\t\t\t\tredirect: '/app/dashboard'\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/app/dashboard',\n\t\t\t\tredirect: '/app/dashboard/tasks',\n\t\t\t\tchildren: [\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/tasks',\n\t\t\t\t\t\tname: 'Dashboard - Tasks',\n\t\t\t\t\t\tmeta: { title: 'Sub Tasks', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@dashboard/tasks/tasks.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/teams',\n\t\t\t\t\t\tname: 'Dashboard - Teams',\n\t\t\t\t\t\tmeta: { title: 'Teams Overview', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@dashboard/teams/teams.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/projects',\n\t\t\t\t\t\tname: 'Dashboard - Projects',\n\t\t\t\t\t\tmeta: { title: 'Projects overview', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@dashboard/projects/projects.vue')\n\t\t\t\t\t},\n\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/overview/unscheduled',\n\t\t\t\t\t\tname: 'Overview - Unscheduled tasks',\n\t\t\t\t\t\tmeta: { title: 'Unscheduled Sub Tasks', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@overview/tasks-unscheduled/tasks-unscheduled.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/overview/ongoing',\n\t\t\t\t\t\tname: 'Overview - Ongoing tasks',\n\t\t\t\t\t\tmeta: { title: 'Ongoing Sub Tasks', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@overview/tasks-ongoing/tasks-ongoing.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/overview/teams',\n\t\t\t\t\t\tname: 'Overview - Teams',\n\t\t\t\t\t\tmeta: { title: 'Teams', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@overview/teams/teams.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/user',\n\t\t\t\t\t\tname: 'Dashboard - User',\n\t\t\t\t\t\tmeta: { title: 'Profile', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@profile/profile/my-profile.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/search',\n\t\t\t\t\t\tname: 'Search',\n\t\t\t\t\t\tmeta: { title: 'Search Results', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/lib@search/search/search.vue')\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\tpath: '/:catchAll(.*)',\n\t\tname: '404',\n\t\tcomponent: () => import('@/plugins/w@screen/404/404.vue'),\n\t\tmeta: {requiresAuth: null}\n\t}\n]\n\nconst router = createRouter({\n\thistory: createWebHashHistory(process.env.BASE_URL),\n\troutes\n})\n\nrouter.beforeEach((to, from, next) => {\n\tconst isLoggedIn = store.getters['auth/isLoggedIn']\n\n\tif (to.meta.requiresAuth === true) {\n\t\tif (isLoggedIn)\n\t\t\treturn next()\n\t\telse\n\t\t\treturn next({name: 'Login'})\n\t} else if (to.meta.requiresAuth === false) {\n\t\tif (!isLoggedIn)\n\t\t\treturn next()\n\t\telse\n\t\t\treturn next({name: 'Dashboard - Tasks'})\n\t} else {\n\t\treturn next()\n\t}\n})\n\nexport default router\n","import axios from 'axios'\nimport store from '@/store'\n\naxios.defaults.baseURL = process.env.VUE_APP_WAXIOS_URL\n\nexport default {\n\tasync get(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync get_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync get_data(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync get_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => Promise.resolve(response.data.data))\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync post(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync post_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync post_data(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync post_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync delete(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync delete_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync delete_data(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync delete_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync patch(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync patch_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync patch_data(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync patch_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync put(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync put_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync put_data(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync put_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\t_config(config: any) {\n\t\tif (config) console.error('NOT IMPLEMENTED')\n\n\t\tif (!store.getters['auth/token']) {\n\t\t\treturn {headers: {}}\n\t\t}\n\n\t\treturn {\n\t\t\theaders: {\n\t\t\t\tAuthorization: `Bearer ${store.getters['auth/token']}`\n\t\t\t}\n\t\t}\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport axios \t\tfrom './models/axios'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.config.globalProperties.$axios = axios\n\t}\n}","export const encodeGetParams = p =>\n\tObject.entries(p).map(kv => kv.map(encodeURIComponent).join('=')).join('&')\n\nexport function strToRegex(s) {\n\tlet re = s\n\tre = re.replace(/\\//g, '\\\\/')\n\tre = re.replace(/\\./g, '\\\\.')\n\tre = re.replace(/\\([^)]+\\)/g, '[^/]+')\n\treturn re\n}\n","import axios from 'axios'\nimport { encodeGetParams, strToRegex } from '../utils/moxios.util'\n\nexport class Moxios {\n\t_mocks = {}\n\n\tconstructor() {\n\t\taxios.interceptors.request.use(this._redirectRequestToMock.bind(this))\n\t\tthis._mocks = {}\n\t}\n\n\tmock(append) {\n\t\tfor (const k in append) {\n\t\t\tlet m = append[k]\n\n\t\t\tif (m === false) continue\n\n\t\t\tm = {}\n\n\t\t\tm.name = k\n\t\t\tm.url = k.split(' ')[1]\n\n\t\t\tif (!m.reUrl)\n\t\t\t\tm.reUrl = strToRegex( m.url )\n\n\t\t\tif (!m.matchMethod)\n\t\t\t\tm.matchMethod = k.split(' ')[0].toLowerCase()\n\n\t\t\tthis._mocks[k] = m\n\t\t}\n\t}\n\n\n\t_redirectRequestToMock(config) {\n\t\t// if (localStorage['isMoxios'] == 'false') {\n\t\t// \treturn config\n\t\t// }\n\n\t\tconst url = config.url.replace(/https?:\\/\\/[^/?]+/, '')\n\n\t\tlet mocked\n\n\t\tfor (const k in this._mocks) {\n\t\t\tconst m = this._mocks[k]\n\n\t\t\tif (config.method == m.matchMethod && url.match(m.reUrl)) {\n\t\t\t\tmocked = m\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\n\t\tif (mocked) {\n\t\t\tif (!mocked.fname)\n\t\t\t\tprocess.env.VUE_APP_PLATFORM\n\t\t\t\t\t? mocked.fname = `/mock/${process.env.VUE_APP_PLATFORM}/${mocked.url}.${config.method.toUpperCase()}.json`\n\t\t\t\t\t: mocked.fname = `/mock/${mocked.url}.${config.method.toUpperCase()}.json`\n\n\n\t\t\tconsole.log(mocked.fname = `/mock/${mocked.url}.${config.method.toUpperCase()}.json`)\n\n\t\t\tconst c = {\n\t\t\t\tmethod: 'get',\n\t\t\t\turl: window.location.origin + mocked.fname+'?___MOCK___&'+encodeGetParams(config.data||{}),\n\t\t\t}\n\n\t\t\tconfig = {...config, ...c}\n\t\t}\n\n\t\treturn config\n\t}\n\n}\n\n","import { App } \t\tfrom 'vue'\nimport { Moxios } \tfrom './models/moxios'\nimport { Options } \tfrom './types/index.js'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tconst moxios = new Moxios()\n\n\t\tif (!options || !options.routes || !Object.values(options.routes).length || options.disabled === true) return\n\n\t\tmoxios.mock(options.routes)\n\t}\n}","import { Options } \tfrom './types'\nimport mitt \t\tfrom 'mitt'\n\nexport default {\n\tinstall: (app, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tconst events = mitt()\n\t\tapp.config.globalProperties.$events = events\n\t}\n}","import { Language, Options } from \"../types\"\nimport { Ref, ref } from 'vue'\nimport axios from 'axios'\nimport { createI18n, I18n as I18nType } from 'vue-i18n'\nimport { Preferences } from '@capacitor/preferences'\n\n\nexport class I18n {\n\tpublic currentLanguage: Ref = ref();\n\tpublic availableLanguages: Language[];\n\tpublic vendorI18n: I18nType\n\tpublic defaultLanguage: Language | null;\n\n\tprivate languageKey: string;\n\n\tconstructor(properties: Options) {\n\t\tthis.availableLanguages = properties.languages || []\n\t\tthis.defaultLanguage = properties.languages.find(language => language.value == properties.defaultLanguage)\n\t\tthis.languageKey = properties.languageKey || process.env.VUE_APP_PLATFORM + '_language' || 'w18n_language'\n\n\t\tthis.vendorI18n = createI18n({\n\t\t\tlegacy: true,\n\t\t\tfallbackLocale: this.defaultLanguage.value,\n\t\t\tmessages: this._loadLocaleMessages(),\n\t\t\tmissing: this._missingTranslation,\n\t\t\tpostTranslation: this._postTranslation,\n\t\t})\n\n\t\tthis.changeLanguage({ title: \"Slovenský\", flag: \"sk\", value: \"sk\" })\n\t\tthis.initCurrentLanguage()\n\t}\n\n\tpublic async initCurrentLanguage() {\n\t\tconst { value } = await Preferences.get({ key: this.languageKey })\n\n\t\tif (value) {\n\t\t\tthis.currentLanguage.value = JSON.parse(value)\n\t\t} else if (this.defaultLanguage) {\n\t\t\tthis.currentLanguage.value = this.defaultLanguage\n\t\t} else if (this.availableLanguages[0]) {\n\t\t\tthis.currentLanguage.value = this.availableLanguages[0]\n\t\t} else {\n\t\t\treturn console.error('[w18n] Could not init current language')\n\t\t}\n\n\t\tconst availableLanguages = {}\n\n\t\tthis.availableLanguages.forEach(language => {\n\t\t\tavailableLanguages[language.value] = language.title\n\t\t})\n\n\t\tthis.changeLanguage(this.currentLanguage.value)\n\t\t// Translations.setup(this.currentLanguage.value.value, availableLanguages)\n\n\t\tthis._addAxiosHeaders()\n\t}\n\n\tpublic changeLanguage(language: Language) {\n\t\tthis.currentLanguage.value = language\n\t\tthis._addAxiosHeaders()\n\n\t\tPreferences.set({\n\t\t\tkey: this.languageKey,\n\t\t\tvalue: JSON.stringify(language)\n\t\t})\n\n\t\tthis.vendorI18n.global.locale = language.value\n\t}\n\n\n\tprivate _addAxiosHeaders() {\n\t\taxios.interceptors.request.use(config => {\n\t\t\tif (this.currentLanguage.value && this.currentLanguage.value.value) {\n\t\t\t\tconfig.headers['Accept-Language'] = this.currentLanguage.value.value\n\t\t\t}\n\n\t\t\treturn config\n\t\t})\n\n\t\taxios.interceptors.response.use(\n\t\t\t(response) => {\n\t\t\t\treturn response\n\t\t\t},\n\t\t\t(error) => {\n\t\t\t\treturn Promise.reject(error?.response || error)\n\t\t\t}\n\t\t)\n\t}\n\n\tpublic _loadLocaleMessages(path = '@/locales') {\n\t\tlet locales\n\t\ttry {\n\t\t\tlocales = require.context(\n\t\t\t\t'@/locales',\n\t\t\t\ttrue,\n\t\t\t\t/[A-Za-z0-9-_,\\s]+\\.json$/i\n\t\t\t)\n\t\t} catch (error) {\n\t\t\tconsole.warn('[@wezeo/i18n] Could not initialize i18n. Missing folder /src/locales.')\n\t\t\treturn {}\n\t\t}\n\n\t\tconst messages: { [key: string]: { [key: string]: string } } = {}\n\n\t\tlocales.keys().forEach((key) => {\n\t\t\tconst matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n\t\t\tif (matched && matched.length > 1) {\n\t\t\t\tconst locale = matched[1]\n\n\t\t\t\tmessages[locale] = locales(key)\n\t\t\t}\n\t\t})\n\t\treturn messages\n\t}\n\n\tprivate _missingTranslation = (locale, key, instance?, type?) => {\n\t\treturn key\n\t}\n\n\tprivate _postTranslation = (translated) => {\n\t\treturn translated\n\t}\n}\n","import { Options } \tfrom './types'\nimport { I18n } \tfrom './models/i18n'\nimport events \t\tfrom '@/plugins/w/events'\n\nexport default {\n\tinstall: (app, options: Options) => {\n\t\tif (options && options.disabled === true)\n\t\t\treturn\n\n\t\tif (!options || !options.languages || !options.defaultLanguage)\n\t\t\treturn console.warn('[@wezeo/i18n] Could not initialize i18n. Missing configuration options.')\n\n\t\tif (!app.config.globalProperties.$events) {\n\t\t\tapp.use(events)\n\t\t}\n\n\t\tconst i18n = new I18n(options)\n\n\t\tapp.use(i18n.vendorI18n)\n\t\tapp.config.globalProperties.$w18n = i18n\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\n\n\nimport {\n\tIonContent, IonPage, IonLabel, IonBackButton, IonCheckbox, IonText, IonButton, IonItem,\n\tIonToolbar, IonHeader, IonFooter, IonSlides, IonSlide, IonRow, IonCol, IonGrid, IonInput, IonButtons,\n\tIonIcon, IonList, IonTitle, IonMenu, IonRouterOutlet, IonMenuButton, IonSegment, IonSegmentButton, IonVirtualScroll,\n\tIonTextarea, IonSearchbar, IonRefresherContent, IonRefresher, IonInfiniteScrollContent, IonInfiniteScroll, IonAvatar,\n\tIonModal, IonRadioGroup, IonRadio, IonNote, IonCard, IonCardContent, IonTabBar, IonTabButton, IonMenuToggle, IonFab,\n\tIonFabButton, IonReorderGroup, IonReorder, IonFabList, IonSelect, IonSelectOption, IonToggle, IonBadge, IonChip, IonTabs, IonItemGroup, IonThumbnail, IonItemSliding, IonItemOption, IonItemOptions, IonImg, IonSkeletonText, IonSpinner, IonSplitPane\n} from '@ionic/vue'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.component('ion-content', IonContent)\n\t\tapp.component('ion-page', IonPage)\n\t\tapp.component('ion-label', IonLabel)\n\t\tapp.component('ion-back-button', IonBackButton)\n\t\tapp.component('ion-checkbox', IonCheckbox)\n\t\tapp.component('ion-text', IonText)\n\t\tapp.component('ion-button', IonButton)\n\t\tapp.component('ion-item', IonItem)\n\t\tapp.component('ion-item-group', IonItemGroup)\n\t\tapp.component('ion-item-sliding', IonItemSliding)\n\t\tapp.component('ion-item-option', IonItemOption)\n\t\tapp.component('ion-item-options', IonItemOptions)\n\t\tapp.component('ion-toolbar', IonToolbar)\n\t\tapp.component('ion-header', IonHeader)\n\t\tapp.component('ion-footer', IonFooter)\n\t\tapp.component('ion-slides', IonSlides)\n\t\tapp.component('ion-slide', IonSlide)\n\t\tapp.component('ion-spinner', IonSpinner)\n\t\tapp.component('ion-row', IonRow)\n\t\tapp.component('ion-col', IonCol)\n\t\tapp.component('ion-grid', IonGrid)\n\t\tapp.component('ion-input', IonInput)\n\t\tapp.component('ion-buttons', IonButtons)\n\t\tapp.component('ion-icon', IonIcon)\n\t\tapp.component('ion-img', IonImg)\n\t\tapp.component('ion-list', IonList)\n\t\tapp.component('ion-skeleton-text', IonSkeletonText)\n\t\tapp.component('ion-title', IonTitle)\n\t\tapp.component('ion-menu', IonMenu),\n\t\tapp.component('ion-split-pane', IonSplitPane)\n\t\tapp.component('ion-menu-button', IonMenuButton)\n\t\tapp.component('ion-router-outlet', IonRouterOutlet)\n\t\tapp.component('ion-segment', IonSegment)\n\t\tapp.component('ion-segment-button', IonSegmentButton)\n\t\tapp.component('ion-virtual-scroll', IonVirtualScroll)\n\t\tapp.component('ion-textarea', IonTextarea)\n\t\tapp.component('ion-searchbar', IonSearchbar)\n\t\tapp.component('ion-refresher-content', IonRefresherContent)\n\t\tapp.component('ion-refresher', IonRefresher)\n\t\tapp.component('ion-infinite-scroll-content', IonInfiniteScrollContent)\n\t\tapp.component('ion-infinite-scroll', IonInfiniteScroll)\n\t\tapp.component('ion-avatar', IonAvatar)\n\t\tapp.component('ion-thumbnail', IonThumbnail)\n\t\tapp.component('ion-modal', IonModal)\n\t\tapp.component('ion-radio-group', IonRadioGroup)\n\t\tapp.component('ion-radio', IonRadio)\n\t\tapp.component('ion-note', IonNote)\n\t\tapp.component('ion-card', IonCard)\n\t\tapp.component('ion-card-content', IonCardContent)\n\t\tapp.component('ion-tab-bar', IonTabBar)\n\t\tapp.component('ion-tab-button', IonTabButton),\n\t\tapp.component('ion-menu-toggle', IonMenuToggle)\n\t\tapp.component('ion-fab', IonFab)\n\t\tapp.component('ion-fab-button', IonFabButton)\n\t\tapp.component('ion-fab-list', IonFabList)\n\t\tapp.component('ion-reorder-group', IonReorderGroup)\n\t\tapp.component('ion-reorder', IonReorder)\n\t\tapp.component('ion-select', IonSelect)\n\t\tapp.component('ion-select-option', IonSelectOption)\n\t\tapp.component('ion-toggle', IonToggle)\n\t\tapp.component('ion-badge', IonBadge)\n\t\tapp.component('ion-chip', IonChip),\n\t\tapp.component('ion-tabs', IonTabs)\n\t}\n}","/* eslint-disable */\nimport axios from 'axios'\nimport store from '@/store'\n\nasync function _unauthorised(error: any) {\n\tif (error?.response?.data?.message == 'Unauthenticated.')\n\t\treturn store.dispatch('auth/logout')\n\t\n\treturn Promise.reject(error)\n}\n\naxios.interceptors.response.use(\n\t(response) => response,\n\t(error) => _unauthorised(error),\n)","import axios from '@/plugins/w/axios/models/axios'\nimport './refreshExpired'\n\nexport default {\n\tnamespaced: true,\n\tstate: {\n\t\ttoken: localStorage.getItem('wzo_vue_user_token') || '',\n\t\tuser: JSON.parse(localStorage.getItem('wzo_vue_user_user') || '{}'),\n\t},\n\tmutations: {\n\t\tauth_success(state: any, data: any) {\n\t\t\tif (data.token) {\n\t\t\t\tstate.token = data.token\n\t\t\t\tlocalStorage.setItem('wzo_vue_user_token', data.token)\n\t\t\t}\n\n\t\t\tif (data.user) {\n\t\t\t\tstate.user = data.user\n\t\t\t\tlocalStorage.setItem('wzo_vue_user_user', JSON.stringify(data.user))\n\t\t\t}\n\t\t},\n\t\tauth_error(state: any) {\n\t\t\tstate.token = ''\n\t\t\tlocalStorage.removeItem('wzo_vue_user_token')\n\t\t\tlocalStorage.removeItem('wzo_vue_user_user')\n\t\t},\n\t\tlogout(state: any) {\n\t\t\tstate.token = ''\n\t\t\tstate.user = null\n\t\t\tlocalStorage.removeItem('wzo_vue_user_token')\n\t\t\tlocalStorage.removeItem('wzo_vue_user_user')\n\t\t\twindow.open(location.origin, \"_self\")\n\t\t}\n\t},\n\tactions: {\n\t\tlogin({commit}: {commit: any}, credentials: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.post('v1/tokens/create', {data: credentials})\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst token = response.token\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\ttoken: token,\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(response)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\tcommit('auth_error')\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\tsignup({commit }: {commit: any}, credentials: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\tcommit('auth_request')\n\n\t\t\t\taxios.post_data('v1/auth/signup', credentials)\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst token = response.token\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\ttoken: token,\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(response)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\tcommit('auth_error')\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\t// eslint-disable-next-line\n\t\tlogout({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve) => {\n\t\t\t\taxios.post_auth_data('v1/auth/invalidate')\n\t\t\t\t\t.finally(() => {\n\t\t\t\t\t\tcommit('logout')\n\t\t\t\t\t\tresolve(null)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\t// eslint-disable-next-line\n\t\tforgotPassword({commit}: {commit: any}, credentials: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.post('v1/users/forgot', {data: credentials})\n\t\t\t\t\t.then(response => resolve(response))\n\t\t\t\t\t.catch(error => reject(error))\n\t\t\t})\n\t\t},\n\t\t// eslint-disable-next-line\n\t\tresetPassword({commit}: {commit: any}, credentials: any) {\n\t\t\tcommit('auth_success', {token: credentials.token})\n\t\t\t\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.post_auth_data('v1/users/reset', {data: credentials})\n\t\t\t\t\t.then(response => {\n\t\t\t\t\t\tcommit('logout')\n\t\t\t\t\t\tresolve(response)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => reject(error))\n\t\t\t})\n\t\t},\n\t\tasync refreshToken({commit}: {commit: any}) {\n\t\t\ttry {\n\t\t\t\tconst response: any = await axios.post_auth_data('v1/auth/refresh')\n\n\t\t\t\tconst token = response.token\n\t\t\t\tconst user = response.user\n\n\t\t\t\tcommit('auth_success', {\n\t\t\t\t\ttoken: token,\n\t\t\t\t\tuser: user\n\t\t\t\t})\n\n\t\t\t\treturn token\n\t\t\t} catch (error) {\n\t\t\t\tcommit('auth_error')\n\t\t\t\tconsole.error(error)\n\t\t\t}\n\t\t},\n\t\tasync userInfo({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/auth/info')\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(user)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\tupdateUserInfo({commit}: {commit: any}, data: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.put_auth(`v1/users/${data.id}`, {data: data})\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(user)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t},\n\tgetters: {\n\t\tisLoggedIn: (state: any) => {\n\t\t\treturn !!state.token\n\t\t},\n\t\tuser: (state: any) => {\n\t\t\treturn state.user\n\t\t},\n\t\ttoken: (state: any) => {\n\t\t\treturn (state.token && state.token != undefined) ? state.token : null\n\t\t}\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport auth \t\tfrom './auth.store'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled == true) return\n\n\t\tif (!app.config.globalProperties.$store)\n\t\t\treturn console.warn('[w/auth] Could not initialize. App does not have vuex store added.')\n\n\t\tapp.config.globalProperties.$store.registerModule('auth', auth)\n\t}\n}","import { Options } \tfrom './types'\n// import { Toast } from './models/Toast'\nimport 'vue-toast-notification/dist/theme-sugar.css'\nimport VueToast from 'vue-toast-notification'\n\nexport default {\n\tinstall: (app, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.use(VueToast)\n\n\t\t// app.config.globalProperties.$wToast = new Toast()\n\t\tapp.config.globalProperties.$parseError = (error) => error?.data?.message || error?.response?.data?.message || error?.message || error\n\t}\n}","\n\n\n\n","import { render } from \"./w-loadable.vue?vue&type=template&id=a2444234&scoped=true\"\nimport script from \"./w-loadable.vue?vue&type=script&lang=js\"\nexport * from \"./w-loadable.vue?vue&type=script&lang=js\"\n\nimport \"./w-loadable.vue?vue&type=style&index=0&id=a2444234&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a2444234\"]])\n\nexport default __exports__","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport WLoadable\tfrom './_components/w-loadable.vue'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.component('W-loadable', WLoadable)\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\n\nimport axios\t \tfrom '@/plugins/w/axios'\nimport moxios\t \tfrom '@/plugins/w/moxios'\nimport events\t \tfrom '@/plugins/w/events'\nimport i18n\t \t\tfrom '@/plugins/w/i18n'\nimport ionic\t \tfrom '@/plugins/w/ionic'\nimport auth\t\t\tfrom '@/plugins/w/auth'\nimport toast\t\tfrom '@/plugins/w/toast'\nimport loadable\t\tfrom '@/plugins/w/loadable'\n\nexport default {\n\tinstall: (app: App, options: Options = {}) => {\n\t\tevents.install(app, options.events)\n\t\taxios.install(app, options.axios)\n\t\ti18n.install(app, options.i18n)\n\t\tmoxios.install(app, options.moxios)\n\t\tionic.install(app, options.ionic)\n\t\tauth.install(app, options.auth)\n\t\ttoast.install(app, options.toast)\n\t\tloadable.install(app, options.loadable)\n\t}\n}","import { $t } from '@/plugins/app/_config/main'\n\nexport default {\n\tparseAndTranslate(data) {\n\t\tconst errorsArray = this._parseToArrayOfStrings(data)\n\t\treturn errorsArray.join(', ')\n\t},\n\n\t_parseToArrayOfStrings(data) {\n\t\tif (data?.data?.message) {\n\t\t\treturn [$t(data.data.message)]\n\t\t}\n\n\t\tif (typeof data == 'string') {\n\t\t\treturn [$t(data)]\n\t\t}\n\n\t\tif (data?.response?.data)\n\t\t\treturn Object.values(data?.response?.data)\n\n\t\tif (data && data.error && typeof data.error == 'string') {\n\t\t\treturn [$t(data.error)]\n\t\t}\n\n\t\tif (data && data.error && typeof data.error == 'object') {\n\t\t\treturn Object.values($t(data.error))\n\t\t}\n\n\t\tif (data.data && data.data.error && typeof data.data.error == 'string') {\n\t\t\treturn [$t(data.data.error)]\n\t\t}\n\n\t\tif (data && data.data && data.data.error && typeof data.data.error == 'object') {\n\t\t\treturn Object.values(data.data.error).map(error => $t(error[0]) + ' ')\n\t\t}\n\n\t\tif (data.statusText) {\n\t\t\treturn [$t(data.statusText)]\n\t\t}\n\n\t\treturn [data]\n\t}\n}","import axios from 'axios'\nimport store from '@/store'\nimport toastUtils from '@/plugins/w/toast/utils/toast.utils'\n\naxios.defaults.baseURL = process.env.VUE_APP_WAXIOS_URL\n\nexport default {\n\tasync get(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync get_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync get_data(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync get_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => Promise.resolve(response.data.data))\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync post(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync post_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync post_data(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync post_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync delete(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync delete_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync delete_data(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync delete_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync patch(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync patch_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync patch_auth_form(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\t\tconfig.headers['Content-Type'] = 'multipart/form-data'\n\t\tconst formData = this._objectToFormData(params)\n\t\tformData.append('_method', 'put')\n\t\tconfig.transformRequest = formData => formData\n\n\t\treturn axios.post(url, formData, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync patch_data(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync patch_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync put(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync put_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, {data: params}, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync put_data(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync put_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, {data: params}, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\t_config(config: any) {\n\t\tif (config) console.error('NOT IMPLEMENTED')\n\n\t\tif (!store.getters['auth/token']) {\n\t\t\treturn {headers: {}}\n\t\t}\n\n\t\treturn {\n\t\t\theaders: {\n\t\t\t\tAuthorization: `Bearer ${store.getters['auth/token']}`\n\t\t\t}\n\t\t}\n\t},\n\n\t_buildFormData(formData, data, parentKey) {\n\t\tif (data && typeof data === 'object' && !(data instanceof Date) && !(data instanceof File))\n\t\t\tObject.keys(data).forEach(key => this._buildFormData(formData, data[key], parentKey ? `${parentKey}[${key}]` : key));\n\t\telse\n\t\t\tformData.append(parentKey, data == null ? '' : data);\n\t},\n\n\t_objectToFormData(data) {\n\t\tconst formData = new FormData()\n\t\tthis._buildFormData(formData, {data: data})\n\n\t\treturn formData\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport axios \t\tfrom './models/axios'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.config.globalProperties.$axios = axios\n\t}\n}","import axios from '@/plugins/w@custom/axios/models/axios'\nimport store from '@/store'\n\nexport default {\n\tnamespaced: true,\n\n\tstate: {\n\t\tmastertasks: null,\n\t\temployees: null,\n\t\tteams: null,\n\t\tprojects: null,\n\t\tunscheduledSubtasks: null,\n\t\tongoingSubtasks: null,\n\t\tinitialized: false,\n\t\tongoingSubtasksEmployeeId: null,\n\t\tunscheduledSubtasksEmployeeId: null\n\t},\n\n\tmutations: {\n\t\tset_mastertasks(state: any, mastertasks: any) {\n\t\t\tstate.mastertasks = mastertasks\n\t\t},\n\n\t\tset_employees(state: any, employees: any) {\n\t\t\tstate.employees = employees\n\n\t\t\t// TODO: Remove\n\t\t\t// const employee = employees.find(employee => employee.email == 'zachariah.vonrueden@jandl.sk')\n\t\t\t// store.commit('auth/auth_success', {\n\t\t\t// \tuser: employee\n\t\t\t// })\n\t\t},\n\n\t\tset_teams(state: any, teams: any) {\n\t\t\tstate.teams = teams\n\t\t},\n\n\t\tset_projects(state: any, projects: any) {\n\t\t\tstate.projects = projects\n\t\t},\n\n\t\tset_unscheduled_subtasks(state: any, subtasks: any) {\n\t\t\tstate.unscheduledSubtasks = subtasks\n\t\t},\n\n\t\tset_ongoing_subtasks(state: any, subtasks: any) {\n\t\t\tstate.ongoingSubtasks = subtasks\n\t\t},\n\n\t\tremove_ongoing_subtask(state: any, subtaskId: any) {\n\t\t\tstate.ongoingSubtasks = state.ongoingSubtasks.filter(st => st.id != subtaskId)\n\t\t},\n\n\t\tupdate_team(state: any, team: any) {\n\t\t\tstate.teams = state.teams.map(t => {\n\t\t\t\tif (t.id == team.id)\n\t\t\t\t\treturn team\n\n\t\t\t\treturn t\n\t\t\t})\n\t\t},\n\n\t\tsave_team(state: any, team: any) {\n\t\t\tstate.teams.push(team)\n\t\t},\n\n\t\tdelete_team(state: any, team: any) {\n\t\t\tstate.teams = state.teams.filter(t => t.id != team.id)\n\t\t},\n\n\t\tupdate_subtask(state: any, subtask: any) {\n\t\t\tstate.unscheduledSubtasks \t= state.unscheduledSubtasks.map(st \t\t=> st.id == subtask.id ? subtask : st)\n\t\t\tstate.ongoingSubtasks \t\t= state.ongoingSubtasks.map(st \t\t\t=> st.id == subtask.id ? subtask : st)\n\t\t\t\n\t\t\t// state.mastertasks \t\t\t= state.mastertasks.map(mastertask \t\t=> {\n\t\t\t// \tmastertask.subtasks \t= mastertask.subtasks.map(st => st.id == subtask.id ? subtask : st)\n\t\t\t// \treturn mastertask\n\t\t\t// })\n\t\t},\n\n\t\tdelete_subtask(state: any, subtask: any) {\n\t\t\tstate.unscheduledSubtasks \t= state.unscheduledSubtasks.filter(st \t=> st.id != subtask.id)\n\t\t\tstate.ongoingSubtasks \t\t= state.ongoingSubtasks.filter(st \t\t=> st.id != subtask.id)\n\n\t\t\t// state.mastertasks \t\t\t= state.mastertasks.map(mastertask \t\t=> {\n\t\t\t// \tmastertask.subtasks = mastertask.subtasks.filter(st => st.id != subtask.id)\n\t\t\t// \treturn mastertask\n\t\t\t// })\n\t\t},\n\n\t\tset_ongoing_subtasks_employee_id(state: any, employeeId: any) {\n\t\t\tstate.ongoingSubtasksEmployeeId = employeeId\n\t\t},\n\n\t\tset_unscheduled_subtasks_employee_id(state: any, employeeId: any) {\n\t\t\tstate.unscheduledSubtasksEmployeeId = employeeId\n\t\t},\n\n\t\tinitialized(state: any) {\n\t\t\tstate.initialized = true\n\t\t}\n\t},\n\n\tactions: {\n\t\tinitialize({dispatch, commit}: {dispatch: any, commit: any}) {\n\t\t\treturn Promise.all([\n\t\t\t\tdispatch('loadMastertasks'),\n\t\t\t\tdispatch('loadEmployees'),\n\t\t\t\tdispatch('loadTeams'),\n\t\t\t\tdispatch('loadProjects'),\n\t\t\t\tdispatch('loadUnscheduledSubtasks'),\n\t\t\t\tdispatch('loadOngoingSubtasks')\n\t\t\t]).then(() => commit('initialized'))\n\t\t},\n\n\t\treloadSubtasks({dispatch}: {dispatch: any}) {\n\t\t\treturn Promise.all([\n\t\t\t\tdispatch('loadMastertasks'),\n\t\t\t\tdispatch('loadProjects'),\n\t\t\t\tdispatch('loadUnscheduledSubtasks'),\n\t\t\t\tdispatch('loadOngoingSubtasks')\n\t\t\t])\n\t\t},\n\n\t\treloadMastertasks({dispatch}: {dispatch: any}) {\n\t\t\treturn Promise.all([\n\t\t\t\tdispatch('loadMastertasks')\n\t\t\t])\n\t\t},\n\n\t\tloadMastertasks({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\t// axios.get_auth('v1/mastertasks')\n\t\t\t\taxios.get_auth('v1/mastertasks/?simple=true')\n\t\t\t\t\t.then(({ mastertasks }) => {\n\t\t\t\t\t\tcommit('set_mastertasks', mastertasks)\n\t\t\t\t\t\tresolve(mastertasks)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_mastertasks', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\n\t\tloadEmployees({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/employees')\n\t\t\t\t\t.then(employees => {\n\t\t\t\t\t\tcommit('set_employees', employees)\n\t\t\t\t\t\tresolve(employees)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_employees', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t\t\n\t\t},\n\n\t\tloadTeams({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/teams')\n\t\t\t\t\t.then(teams => {\n\t\t\t\t\t\tcommit('set_teams', teams)\n\t\t\t\t\t\tresolve(teams)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_teams', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\n\t\tloadProjects({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/projects')\n\t\t\t\t\t.then(project => {\n\t\t\t\t\t\tcommit('set_projects', project)\n\t\t\t\t\t\tresolve(project)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_projects', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t\t\n\t\t},\n\n\t\tloadUnscheduledSubtasks({commit, state}: {commit: any, state: any}, employeeId = undefined) {\n\t\t\tlet employeeIdToUse = undefined\n\n\t\t\tif (employeeId) {\n\t\t\t\temployeeIdToUse = employeeId\n\t\t\t\tcommit('set_unscheduled_subtasks_employee_id', employeeId)\n\t\t\t} else if (state.unscheduledSubtasksEmployeeId) {\n\t\t\t\temployeeIdToUse = state.unscheduledSubtasksEmployeeId\n\t\t\t} else {\n\t\t\t\temployeeIdToUse = store.getters['auth/user']?.id\n\t\t\t}\n\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth(`v1/subtasks?type=unscheduled&employee_id=${employeeIdToUse}`)\n\t\t\t\t\t.then(({subtasks}) => {\n\t\t\t\t\t\tcommit('set_unscheduled_subtasks', subtasks)\n\t\t\t\t\t\tresolve(subtasks)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_unscheduled_subtasks', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\n\t\tloadOngoingSubtasks({commit, state}: {commit: any, state: any}, employeeId = undefined) {\n\t\t\tlet employeeIdToUse = undefined\n\n\t\t\tif (employeeId) {\n\t\t\t\temployeeIdToUse = employeeId\n\t\t\t\tcommit('set_ongoing_subtasks_employee_id', employeeId)\n\t\t\t} else if (state.ongoingSubtasksEmployeeId) {\n\t\t\t\temployeeIdToUse = state.ongoingSubtasksEmployeeId\n\t\t\t} else {\n\t\t\t\temployeeIdToUse = store.getters['auth/user']?.id\n\t\t\t\tcommit('set_ongoing_subtasks_employee_id', employeeIdToUse)\n\t\t\t}\n\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth(`v1/subtasks?type=ongoing&employee_id=${employeeIdToUse}`)\n\t\t\t\t\t.then(({subtasks}) => {\n\t\t\t\t\t\tcommit('set_ongoing_subtasks', subtasks)\n\t\t\t\t\t\tresolve(subtasks)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_ongoing_subtasks', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t},\n\n\t\tremoveOngoingSubtask({commit}: {commit: any}, subtaskId: any) {\n\t\t\tcommit('remove_ongoing_subtask', subtaskId)\n\t\t}\n\n\t},\n\n\tgetters: {\n\t\tmastertasks: (state: any) => {\n\t\t\treturn state.mastertasks\n\t\t},\n\n\t\temployees: (state: any) => {\n\t\t\treturn state.employees\n\t\t},\n\n\t\tenrichedEmployees: (state: any) => {\n\t\t\tif (!state.employees) return []\n\t\t\t\n\t\t\treturn state.employees.map(employee => ({\n\t\t\t\t...employee, \n\t\t\t\t_fullName: `${ employee.name } ${ employee.surname }`,\n\t\t\t\t_initials: employee.name.charAt(0) + employee.surname.charAt(0)\n\t\t\t})).sort((a, b) => a.name < b.name ? -1 : 1)\n\t\t},\n\n\t\tteams: (state: any) => {\n\t\t\treturn state.teams\n\t\t},\n\n\t\tprojects: (state: any) => {\n\t\t\treturn state.projects\n\t\t},\n\n\t\tunscheduledSubtasks: (state: any) => {\n\t\t\treturn state.unscheduledSubtasks\n\t\t},\n\n\t\tongoingSubtasks: (state: any) => {\n\t\t\treturn state.ongoingSubtasks\n\t\t},\n\n\t\tisInitialized: (state: any) => {\n\t\t\treturn state.initialized\n\t\t}\n\t}\n}","import { App } \t\tfrom 'vue'\nimport tmStore \tfrom './store'\n\nexport default {\n\tinstall: (app: App) => {\n\t\tapp.config.globalProperties.$store.registerModule('tm', tmStore)\n\t}\n}","\n\n\n","/**\n * Date Utils & prototypes.\n *\n * Waiting for VS Code to support JavaScript private fields.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_fields\n * Meantime keep `_` for private.\n */\n\nlet now, todayDate, todayF, self\nlet _dateObject = {}\nlet _timeObject = {}\n\nexport default class DateUtils {\n texts = {}\n\n constructor (texts, noPrototypes = false) {\n self = this // For use in Date prototypes.\n this._texts = texts\n\n // Add prototypes ASAP - only once.\n if (!noPrototypes && Date && !Date.prototype.addDays) this._initDatePrototypes()\n\n // @todo: This would be nicer, but how to set Date.noPrototypes ASAP only if user wants?\n // if (Date.noPrototypes) delete Date.noPrototypes\n // else this._initDatePrototypes()\n }\n\n _initDatePrototypes () {\n /* eslint-disable no-extend-native */\n Date.prototype.addDays = function (days) { return self.addDays(this, days) }\n Date.prototype.subtractDays = function (days) { return self.subtractDays(this, days) }\n Date.prototype.addHours = function (hours) { return self.addHours(this, hours) }\n Date.prototype.subtractHours = function (hours) { return self.subtractHours(this, hours) }\n Date.prototype.addMinutes = function (minutes) { return self.addMinutes(this, minutes) }\n Date.prototype.subtractMinutes = function (minutes) { return self.subtractMinutes(this, minutes) }\n Date.prototype.getWeek = function () { return self.getWeek(this) }\n Date.prototype.isToday = function () { return self.isToday(this) }\n Date.prototype.isLeapYear = function () { return self.isLeapYear(this) }\n Date.prototype.format = function (format = 'YYYY-MM-DD') { return self.formatDate(this, format) }\n Date.prototype.formatTime = function (format = 'HH:mm') { return self.formatTime(this, format) }\n /* eslint-enable no-extend-native */\n }\n\n removePrototypes () {\n delete Date.prototype.addDays\n delete Date.prototype.subtractDays\n delete Date.prototype.addHours\n delete Date.prototype.subtractHours\n delete Date.prototype.addMinutes\n delete Date.prototype.subtractMinutes\n delete Date.prototype.getWeek\n delete Date.prototype.isToday\n delete Date.prototype.isLeapYear\n delete Date.prototype.format\n delete Date.prototype.formatTime\n }\n\n updateTexts (texts) {\n this._texts = texts\n }\n\n // Cache Today's date (to a maximum) for better isToday() performances. Formatted without leading 0.\n // We still need to update Today's date when Today changes without page refresh.\n _todayFormatted () {\n if (todayDate !== (new Date()).getDate()) {\n now = new Date()\n todayDate = now.getDate()\n todayF = `${now.getFullYear()}-${now.getMonth()}-${now.getDate()}`\n }\n\n return todayF\n }\n\n // UTILITIES.\n // ====================================================================\n addDays (date, days) {\n const d = new Date(date.valueOf())\n d.setDate(d.getDate() + days)\n return d\n }\n\n subtractDays (date, days) {\n const d = new Date(date.valueOf())\n d.setDate(d.getDate() - days)\n return d\n }\n\n addHours (date, hours) {\n const d = new Date(date.valueOf())\n d.setHours(d.getHours() + hours)\n return d\n }\n\n subtractHours (date, hours) {\n const d = new Date(date.valueOf())\n d.setHours(d.getHours() - hours)\n return d\n }\n\n addMinutes (date, minutes) {\n const d = new Date(date.valueOf())\n d.setMinutes(d.getMinutes() + minutes)\n return d\n }\n\n subtractMinutes (date, minutes) {\n const d = new Date(date.valueOf())\n d.setMinutes(d.getMinutes() - minutes)\n return d\n }\n\n getWeek (date) {\n const d = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))\n const dayNum = d.getUTCDay() || 7\n d.setUTCDate(d.getUTCDate() + 4 - dayNum)\n const yearStart = new Date(Date.UTC(d.getUTCFullYear(), 0, 1))\n return Math.ceil((((d - yearStart) / 86400000) + 1) / 7)\n }\n\n isToday (date) {\n return `${date.getFullYear()}-${date.getMonth()}-${date.getDate()}` === this._todayFormatted()\n }\n\n isLeapYear (date) {\n const year = date.getFullYear()\n return !(year % 400) || (year % 100 && !(year % 4))\n }\n\n // Returns today if it's FirstDayOfWeek (Monday or Sunday) or previous FirstDayOfWeek otherwise.\n getPreviousFirstDayOfWeek (date = null, weekStartsOnSunday) {\n const prevFirstDayOfWeek = (date && new Date(date.valueOf())) || new Date()\n const dayModifier = weekStartsOnSunday ? 7 : 6\n prevFirstDayOfWeek.setDate(prevFirstDayOfWeek.getDate() - (prevFirstDayOfWeek.getDay() + dayModifier) % 7)\n return prevFirstDayOfWeek\n }\n\n /**\n * Converts a string to a Javascript Date object. If a Date object is passed, return it as is.\n *\n * @param {String | Date} date the string to convert to Date.\n * @return {Date} the equivalent Javascript Date object.\n */\n stringToDate (date) {\n if (date instanceof Date) return date\n // Regexp way is less performant: https://jsperf.com/string-to-date-regexp-vs-new-date\n // const [, y, m, d, h = 0, min = 0] = date.match(/(\\d{4})-(\\d{2})-(\\d{2})(?: (\\d{2}):(\\d{2}))?/)\n // return new Date(y, parseInt(m) - 1, d, h, min)\n\n if (date.length === 10) date += ' 00:00'\n return new Date(date.replace(/-/g, '/')) // replace '-' with '/' for Safari.\n }\n\n /**\n * Simply takes a Date and returns the associated time in minutes (sum of hours + minutes).\n *\n * @param {Date} date the JavaScript Date to extract minutes from.\n * @return {Number} the number of minutes (total of hours plus minutes).\n */\n dateToMinutes = date => date.getHours() * 60 + date.getMinutes()\n\n /**\n * Count the number of days this date range spans onto.\n * E.g. countDays(2019-11-02 18:00, 2019-11-03 02:00) = 2\n *\n * @param {String | Date} start the start date\n * @param {String | Date} end the end date\n * @return {Integer} The number of days this date range involves\n */\n countDays (start, end) {\n // replace '-' with '/' for Safari.\n if (typeof start === 'string') start = start.replace(/-/g, '/')\n if (typeof end === 'string') end = end.replace(/-/g, '/')\n\n // Set start & end at midnight then compare the delta. Don't modify the original dates.\n start = (new Date(start)).setHours(0, 0, 0, 0)\n // Set end at midnight plus 1 sec, so Math.ceil will round it up to a full day.\n end = (new Date(end)).setHours(0, 0, 1, 0)\n\n // Remove the potential daylight saving delta.\n const timezoneDiffMs = (new Date(end).getTimezoneOffset() - new Date(start).getTimezoneOffset()) * 60 * 1000\n return Math.ceil((end - start - timezoneDiffMs) / (24 * 3600 * 1000))\n }\n\n /**\n * Take 2 dates and check if within the same time step (useful in overlapping events).\n *\n * @return {Boolean} `true` if their time is included in the same time step,\n * this means these 2 dates are very close.\n */\n datesInSameTimeStep (date1, date2, timeStep) {\n return Math.abs(date1.getTime() - date2.getTime()) <= timeStep * 60 * 1000\n }\n // ====================================================================\n\n // FORMATTERS.\n // ====================================================================\n /**\n * Formats a date/time to the given format and returns the formatted string.\n *\n * @param {Date} date a JavaScript Date object to format.\n * @param {String} format the wanted format.\n * @param {Object} texts Optional: the localized texts object to override the vue-cal one in this._texts.\n * This becomes useful when showing multiple instances with different languages,\n * like in the documentation page.\n * @return {String} the formatted date.\n */\n formatDate (date, format = 'YYYY-MM-DD', texts = null) {\n if (!texts) texts = this._texts\n if (!format) format = 'YYYY-MM-DD' // Allows passing null for default format.\n if (format === 'YYYY-MM-DD') return this.formatDateLite(date)\n\n // Reinit the date and time object on each function call.\n _dateObject = {}\n _timeObject = {}\n\n // Each keyword is a function to load the dateObject or timeObject on demand: no wasted resource.\n const dateObj = {\n YYYY: () => this._hydrateDateObject(date, texts).YYYY,\n YY: () => this._hydrateDateObject(date, texts).YY(),\n M: () => this._hydrateDateObject(date, texts).M,\n MM: () => this._hydrateDateObject(date, texts).MM(),\n MMM: () => this._hydrateDateObject(date, texts).MMM(),\n MMMM: () => this._hydrateDateObject(date, texts).MMMM(),\n MMMMG: () => this._hydrateDateObject(date, texts).MMMMG(),\n D: () => this._hydrateDateObject(date, texts).D,\n DD: () => this._hydrateDateObject(date, texts).DD(),\n S: () => this._hydrateDateObject(date, texts).S(),\n d: () => this._hydrateDateObject(date, texts).d,\n dd: () => this._hydrateDateObject(date, texts).dd(),\n ddd: () => this._hydrateDateObject(date, texts).ddd(),\n dddd: () => this._hydrateDateObject(date, texts).dddd(),\n HH: () => this._hydrateTimeObject(date, texts).HH,\n H: () => this._hydrateTimeObject(date, texts).H,\n hh: () => this._hydrateTimeObject(date, texts).hh,\n h: () => this._hydrateTimeObject(date, texts).h,\n am: () => this._hydrateTimeObject(date, texts).am,\n AM: () => this._hydrateTimeObject(date, texts).AM,\n mm: () => this._hydrateTimeObject(date, texts).mm,\n m: () => this._hydrateTimeObject(date, texts).m\n }\n\n return format.replace(/(\\{[a-zA-Z]+\\}|[a-zA-Z]+)/g, (m, contents) => {\n const result = dateObj[contents.replace(/\\{|\\}/g, '')]\n return result !== undefined ? result() : contents\n })\n }\n\n // More performant function to convert a Date to `YYYY-MM-DD` formatted string only.\n formatDateLite (date) {\n const m = date.getMonth() + 1\n const d = date.getDate()\n return `${date.getFullYear()}-${m < 10 ? '0' : ''}${m}-${d < 10 ? '0' : ''}${d}`\n }\n\n /**\n * Formats a time (from Date or number of mins) to the given format and returns the formatted string.\n *\n * @param {Date | Number} date a JavaScript Date object or a time in minutes.\n * @param {String} format the wanted format.\n * @param {Object} texts Optional: the localized texts object to override the vue-cal one in this._texts.\n * This becomes useful when showing multiple instances with different languages,\n * like in the documentation page.\n * @param {Boolean} round if time is 23:59:59, rounds up to 24:00 for formatting only.\n * @return {String} the formatted time.\n */\n formatTime (date, format = 'HH:mm', texts = null, round = false) {\n let shouldRound = false\n if (round) {\n const [h, m, s] = [date.getHours(), date.getMinutes(), date.getSeconds()]\n if ((h + m + s) === (23 + 59 + 59)) shouldRound = true\n }\n\n if (date instanceof Date && format === 'HH:mm') return shouldRound ? '24:00' : this.formatTimeLite(date)\n\n _timeObject = {} // Reinit the time object on each function call.\n if (!texts) texts = this._texts\n const timeObj = this._hydrateTimeObject(date, texts)\n\n const formatted = format.replace(/(\\{[a-zA-Z]+\\}|[a-zA-Z]+)/g, (m, contents) => {\n const result = timeObj[contents.replace(/\\{|\\}/g, '')]\n return result !== undefined ? result : contents\n })\n\n // Round 23:59:59 to 24:00. For 12-hour format there is nothing to replace: as both are 12am.\n // Also don't return `24:00` straight away as the user format may be different.\n return shouldRound ? formatted.replace('23:59', '24:00') : formatted\n }\n\n /**\n * Formats a time to 'HH:mm' from a Date and returns the formatted string.\n *\n * @param {Date} date a JavaScript Date object to format.\n * @return {String} the formatted time.\n */\n formatTimeLite (date) {\n const h = date.getHours()\n const m = date.getMinutes()\n return `${(h < 10 ? '0' : '') + h}:${(m < 10 ? '0' : '') + m}`\n }\n\n _nth (d) {\n if (d > 3 && d < 21) return 'th'\n switch (d % 10) {\n case 1: return 'st'\n case 2: return 'nd'\n case 3: return 'rd'\n default: return 'th'\n }\n }\n\n _hydrateDateObject (date, texts) {\n if (_dateObject.D) return _dateObject\n\n const YYYY = date.getFullYear()\n const M = date.getMonth() + 1\n const D = date.getDate()\n const day = date.getDay() // Day of the week.\n const dayNumber = (day - 1 + 7) % 7 // Day of the week. 0 to 6 with 6 = Sunday.\n // Some of this props are functions, to only calculate on demand.\n _dateObject = {\n // Year.\n YYYY, // 2019.\n YY: () => YYYY.toString().substring(2), // 19.\n\n // Month.\n M, // 1 to 12.\n MM: () => (M < 10 ? '0' : '') + M, // 01 to 12.\n MMM: () => texts.months[M - 1].substring(0, 3), // Jan to Dec.\n MMMM: () => texts.months[M - 1], // January to December.\n MMMMG: () => (texts.monthsGenitive || texts.months)[M - 1], // January to December in genitive form (Greek...)\n\n // Day.\n D, // 1 to 31.\n DD: () => (D < 10 ? '0' : '') + D, // 01 to 31.\n S: () => this._nth(D), // st, nd, rd, th.\n\n // Day of the week.\n d: dayNumber + 1, // 1 to 7 with 7 = Sunday.\n dd: () => texts.weekDays[dayNumber][0], // M to S.\n ddd: () => texts.weekDays[dayNumber].substr(0, 3), // Mon to Sun.\n dddd: () => texts.weekDays[dayNumber] // Monday to Sunday.\n }\n\n return _dateObject\n }\n\n _hydrateTimeObject (date, texts) {\n if (_timeObject.am) return _timeObject\n\n let H, m\n if (date instanceof Date) {\n H = date.getHours()\n m = date.getMinutes()\n }\n else {\n H = Math.floor(date / 60)\n m = Math.floor(date % 60)\n }\n\n const h = H % 12 ? H % 12 : 12\n const am = (texts || { am: 'am', pm: 'pm' })[H === 24 || H < 12 ? 'am' : 'pm']\n _timeObject = {\n H,\n h,\n HH: (H < 10 ? '0' : '') + H,\n hh: (h < 10 ? '0' : '') + h,\n am,\n AM: am.toUpperCase(),\n m,\n mm: (m < 10 ? '0' : '') + m\n }\n\n return _timeObject\n }\n // ====================================================================\n}\n","/**\n * Cell Utils.\n *\n * Waiting for VS Code to support JavaScript private fields.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_fields\n * Meantime keep `_` for private.\n */\n\nconst minutesInADay = 24 * 60\n\nexport default class CellUtils {\n _vuecal = null\n\n constructor (vuecal) {\n this._vuecal = vuecal\n }\n\n /**\n * Select a cell and go to narrower view on double click or single click according to vuecalProps option.\n *\n * @param {Boolean} force Force switching to narrower view.\n * @param {Date} date The selected cell date at the exact time where it was clicked (through cursor coords).\n * @param {Integer} split The selected cell split if any.\n */\n selectCell = (force = false, date, split) => {\n // Cell-click event returns a date and time at cursor position.\n this._vuecal.$emit('cell-click', split ? { date, split } : date)\n\n // Switch to narrower view.\n if (this._vuecal.clickToNavigate || force) this._vuecal.switchToNarrowerView()\n\n // Handle double click manually for touch devices.\n else if (this._vuecal.dblclickToNavigate && 'ontouchstart' in window) {\n this._vuecal.domEvents.dblTapACell.taps++\n\n setTimeout(() => (this._vuecal.domEvents.dblTapACell.taps = 0), this._vuecal.domEvents.dblTapACell.timeout)\n\n if (this._vuecal.domEvents.dblTapACell.taps >= 2) {\n this._vuecal.domEvents.dblTapACell.taps = 0\n this._vuecal.switchToNarrowerView()\n this._vuecal.$emit('cell-dblclick', split ? { date, split } : date)\n }\n }\n }\n\n /**\n * Select a cell and go to narrower view on enter.\n *\n * @param {Boolean} force Force switching to narrower view.\n * @param {Date} date The selected cell date at the exact time where it was clicked (through cursor coords).\n * @param {Integer} split The selected cell split if any.\n */\n keyPressEnterCell = (date, split) => {\n // Cell-key-press-enter event returns a date and time at cursor position.\n this._vuecal.$emit('cell-keypress-enter', split ? { date, split } : date)\n\n // Switch to narrower view.\n this._vuecal.switchToNarrowerView()\n }\n\n /**\n * Get the coordinates of the mouse cursor from the cells wrapper referential (`ref=\"cells\"`).\n *\n * @todo Cache bounding box & update it on resize.\n * @param {Object} e the native DOM event object.\n * @return {Object} containing { x: {Number}, y: {Number} }\n */\n getPosition = e => {\n const { left, top } = this._vuecal.cellsEl.getBoundingClientRect()\n const { clientX, clientY } = 'ontouchstart' in window && e.touches ? e.touches[0] : e\n return { x: clientX - left, y: clientY - top }\n }\n\n /**\n * Get the number of minutes from the top to the mouse cursor.\n * Returns a constrained time between 0 and 24 * 60.\n *\n * @param {Object} e the native DOM event object.\n * @return {Object} containing { minutes: {Number}, cursorCoords: { x: {Number}, y: {Number} } }\n */\n minutesAtCursor = e => {\n let minutes = 0\n let cursorCoords = { x: 0, y: 0 }\n const { timeStep, timeCellHeight, timeFrom } = this._vuecal.$props\n\n if (typeof e === 'number') minutes = e\n else if (typeof e === 'object') {\n cursorCoords = this.getPosition(e)\n minutes = Math.round(cursorCoords.y * timeStep / parseInt(timeCellHeight) + timeFrom)\n }\n\n return { minutes: Math.max(Math.min(minutes, minutesInADay), 0), cursorCoords }\n }\n}\n","/**\n * Events Utils.\n *\n * Waiting for VS Code to support JavaScript private fields.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_fields\n * Meantime keep `_` for private.\n */\n\nconst defaultEventDuration = 2 // In hours.\nconst minutesInADay = 24 * 60 // Don't do the maths every time.\n\nlet ud\n\n// Event overlaps: only for the current view, recreated on view change.\nlet _cellOverlaps, _comparisonArray\n\n// This is an approximation, it will not work with DLS time.\n// const approxDayMilliseconds = minutesInADay * 60 * 1000\n// This is an approximate minimum we can get in a year. Purposely stay below 365 but close.\n// const minYearMilliseconds = 364 * approxDayMilliseconds // Don't do the maths every time.\n\nexport default class EventUtils {\n _vuecal = null\n\n eventDefaults = {\n _eid: null,\n start: '', // Externally given formatted date & time or Date object.\n startTimeMinutes: 0,\n end: '', // Externally given formatted date & time or Date object.\n endTimeMinutes: 0,\n title: '',\n content: '',\n background: false,\n allDay: false,\n segments: null,\n repeat: null,\n daysCount: 1,\n deletable: true,\n deleting: false,\n titleEditable: true,\n resizable: true,\n resizing: false,\n draggable: true,\n dragging: false,\n draggingStatic: false, // Controls the CSS class of the static clone while dragging.\n focused: false,\n class: ''\n }\n\n constructor (vuecal, dateUtils) {\n this._vuecal = vuecal\n ud = dateUtils\n }\n\n /**\n * Create an event at the given date and time, and allow overriding\n * event attributes through the eventOptions object.\n *\n * @param {Date | String} dateTime The date and time of the new event start.\n * @param {Number} duration the event duration in minutes.\n * @param {Object} eventOptions some options to override the `eventDefaults` - optional.\n */\n createAnEvent (dateTime, duration, eventOptions) {\n if (typeof dateTime === 'string') dateTime = ud.stringToDate(dateTime)\n if (!(dateTime instanceof Date)) return false\n\n const startTimeMinutes = ud.dateToMinutes(dateTime)\n duration = duration * 1 || defaultEventDuration * 60\n const endTimeMinutes = startTimeMinutes + duration\n const end = ud.addMinutes(new Date(dateTime), duration)\n\n // Automatically add the required endTimeMinutes when passing an end.\n if (eventOptions.end) {\n if (typeof eventOptions.end === 'string') eventOptions.end = ud.stringToDate(eventOptions.end)\n eventOptions.endTimeMinutes = ud.dateToMinutes(eventOptions.end)\n }\n\n const event = {\n ...this.eventDefaults,\n _eid: `${this._vuecal._.uid}_${this._vuecal.eventIdIncrement++}`,\n start: dateTime,\n startTimeMinutes,\n end,\n endTimeMinutes,\n segments: null,\n ...eventOptions\n }\n\n // If the onEventCreate() function is given as a parameter to vue-cal:\n // 1. give it access to the created event & the deleteAnEvent() function.\n // 2. Prevent creation of the event if this function returns false.\n if (typeof this._vuecal.onEventCreate === 'function') {\n if (!this._vuecal.onEventCreate(event, () => this.deleteAnEvent(event))) return\n }\n\n // Check if event is a multiple day event and update days count.\n if (event.startDateF !== event.endDateF) {\n event.daysCount = ud.countDays(event.start, event.end)\n }\n\n // Add event to the mutableEvents array.\n this._vuecal.mutableEvents.push(event)\n\n // Add the new event to the current view.\n // The event may have been edited on the fly to become a multiple-day event,\n // the method addEventsToView makes sure the segments are created.\n this._vuecal.addEventsToView([event])\n\n this._vuecal.emitWithEvent('event-create', event)\n this._vuecal.$emit('event-change', { event: this._vuecal.cleanupEvent(event), originalEvent: null })\n\n return event\n }\n\n /**\n * Add an event segment (= day) to a multiple-day event.\n *\n * @param {Object} e the multiple-day event to add segment in.\n */\n addEventSegment (e) {\n // If event was previously single-day, event.segments = null,\n // so first create the first segment (first day).\n if (!e.segments) {\n e.segments = {}\n e.segments[ud.formatDateLite(e.start)] = {\n start: e.start,\n startTimeMinutes: e.startTimeMinutes,\n endTimeMinutes: minutesInADay,\n isFirstDay: true,\n isLastDay: false\n }\n }\n\n // Modify the last segment - which will not stay the last one after this function.\n const previousSegment = e.segments[ud.formatDateLite(e.end)]\n // previousSegment might not exist when dragging too fast, prevent errors.\n if (previousSegment) {\n previousSegment.isLastDay = false\n previousSegment.endTimeMinutes = minutesInADay\n }\n else {\n // @todo: when moving fast might lose the previousSegment.\n // Trying to update it would then result in an error, but do nothing would create a visual bug.\n }\n\n // Create the new last segment.\n const start = ud.addDays(e.end, 1)\n const formattedDate = ud.formatDateLite(start)\n start.setHours(0, 0, 0, 0)\n e.segments[formattedDate] = {\n start,\n startTimeMinutes: 0,\n endTimeMinutes: e.endTimeMinutes,\n isFirstDay: false,\n isLastDay: true\n }\n\n e.end = ud.addMinutes(start, e.endTimeMinutes)\n e.daysCount = Object.keys(e.segments).length\n\n return formattedDate\n }\n\n /**\n * Remove an event segment (= day) from a multiple-day event.\n *\n * @param {Object} e the multiple-day event to remove segments from.\n */\n removeEventSegment (e) {\n let segmentsCount = Object.keys(e.segments).length\n if (segmentsCount <= 1) return ud.formatDateLite(e.end)\n\n // Remove the last segment.\n delete e.segments[ud.formatDateLite(e.end)]\n segmentsCount--\n\n const end = ud.subtractDays(e.end, 1)\n const formattedDate = ud.formatDateLite(end)\n const previousSegment = e.segments[formattedDate]\n\n // If no more segments, reset the segments attribute to null.\n if (!segmentsCount) e.segments = null\n\n // previousSegment might not exist when dragging too fast, prevent errors.\n else if (previousSegment) {\n // Modify the new last segment.\n previousSegment.isLastDay = true\n previousSegment.endTimeMinutes = e.endTimeMinutes\n }\n else {\n // @todo: when moving fast might lose the previousSegment.\n // Trying to update it would then result in an error, but do nothing would create a visual bug.\n }\n\n e.daysCount = segmentsCount || 1\n e.end = end\n\n return formattedDate\n }\n\n /**\n * Create 1 segment per day of the given event, but only within the current view.\n * (It won't create segments for all the days in view that are not in the event!)\n *\n * An event segment is a piece of event per day that contains more day-specific data.\n *\n * @param {Object} e the multiple-day event to create segments for.\n * @param {Date} viewStartDate the starting date of the view.\n * @param {Date} viewEndDate the ending date of the view.\n */\n createEventSegments (e, viewStartDate, viewEndDate) {\n const viewStartTimestamp = viewStartDate.getTime()\n const viewEndTimestamp = viewEndDate.getTime()\n let eventStart = e.start.getTime()\n let eventEnd = e.end.getTime()\n let repeatedEventStartFound = false\n let timestamp, end, eventStartAtMidnight\n\n // @todo: I don't think we still need that:\n // Removing 1 sec when ending at 00:00, so that we don't create a segment for nothing on last day.\n if (!e.end.getHours() && !e.end.getMinutes()) eventEnd -= 1000\n\n e.segments = {}\n\n // The goal is to create 1 segment per day in the event, but only within the current view.\n if (!e.repeat) { // Simple case first.\n timestamp = Math.max(viewStartTimestamp, eventStart)\n end = Math.min(viewEndTimestamp, eventEnd)\n }\n else {\n // Start at the beginning of the range, and end at soonest between `repeat.until` if any or range end.\n // This range will most likely be too large (e.g. whole week) and we need to narrow it\n // down in the while loop below.\n // We must not create unused segments, it would break the render or result in weird behaviors.\n timestamp = viewStartTimestamp\n end = Math.min(\n viewEndTimestamp,\n e.repeat.until ? ud.stringToDate(e.repeat.until).getTime() : viewEndTimestamp\n )\n }\n\n while (timestamp <= end) {\n let createSegment = false\n // Be careful not to simply add 24 hours!\n // In case of DLS, that would cause the event to never end and browser to hang.\n // So use `addDays(1)` instead.\n const nextMidnight = ud.addDays(new Date(timestamp), 1).setHours(0, 0, 0, 0)\n let isFirstDay, isLastDay, start, formattedDate\n\n if (e.repeat) {\n const tmpDate = new Date(timestamp)\n const tmpDateFormatted = ud.formatDateLite(tmpDate)\n // If the current day in loop is a known date of the repeated event (in `e.occurrences`),\n // then we found the first day of the event repetition, now update the `eventStart` and\n // the end of the loop at current day + event days count.\n if (repeatedEventStartFound || (e.occurrences && e.occurrences[tmpDateFormatted])) {\n if (!repeatedEventStartFound) {\n eventStart = e.occurrences[tmpDateFormatted].start\n eventStartAtMidnight = new Date(eventStart).setHours(0, 0, 0, 0)\n eventEnd = e.occurrences[tmpDateFormatted].end\n }\n repeatedEventStartFound = true\n createSegment = true\n }\n\n isFirstDay = timestamp === eventStartAtMidnight\n isLastDay = tmpDateFormatted === ud.formatDateLite(new Date(eventEnd))\n start = new Date(isFirstDay ? eventStart : timestamp)\n formattedDate = ud.formatDateLite(start)\n // We want to find any potential other repetition of event in same range.\n if (isLastDay) repeatedEventStartFound = false\n }\n else {\n createSegment = true\n isFirstDay = timestamp === eventStart\n isLastDay = end === eventEnd && nextMidnight > end\n start = isFirstDay ? e.start : new Date(timestamp)\n formattedDate = ud.formatDateLite(isFirstDay ? e.start : start)\n }\n\n if (createSegment) {\n e.segments[formattedDate] = {\n start,\n startTimeMinutes: isFirstDay ? e.startTimeMinutes : 0,\n endTimeMinutes: isLastDay ? e.endTimeMinutes : minutesInADay,\n isFirstDay,\n isLastDay\n }\n }\n\n timestamp = nextMidnight\n }\n\n return e\n }\n\n /**\n * Delete an event.\n *\n * @param {Object} event the calendar event to delete.\n */\n deleteAnEvent (event) {\n this._vuecal.emitWithEvent('event-delete', event)\n\n // Delete the event globally.\n this._vuecal.mutableEvents = this._vuecal.mutableEvents.filter(e => e._eid !== event._eid)\n // Delete the event from the current view.\n // checkCellOverlappingEvents() will be re-run automatically from the cell computed events.\n this._vuecal.view.events = this._vuecal.view.events.filter(e => e._eid !== event._eid)\n }\n\n // EVENT OVERLAPS.\n // ===================================================================\n // Will recalculate all the overlaps of the current cell OR split.\n // cellEvents will contain only the current split events if in a split.\n checkCellOverlappingEvents (cellEvents, options) {\n _comparisonArray = cellEvents.slice(0)\n _cellOverlaps = {}\n\n // Can't filter background events before calling this function otherwise\n // when an event is changed to background it would not update its previous overlaps.\n cellEvents.forEach(e => {\n // For performance, never compare the current event in the next loops.\n // The array is smaller and smaller as we loop.\n _comparisonArray.shift()\n\n if (!_cellOverlaps[e._eid]) _cellOverlaps[e._eid] = { overlaps: [], start: e.start, position: 0, sameOverlaps: [] }\n _cellOverlaps[e._eid].position = 0\n\n _comparisonArray.forEach(e2 => {\n if (!_cellOverlaps[e2._eid]) _cellOverlaps[e2._eid] = { overlaps: [], start: e2.start, position: 0, sameOverlaps: [] }\n\n const eventIsInRange = this.eventInRange(e2, e.start, e.end)\n const eventSameOverlap = this.eventSameRange(e2, e)\n const eventsInSameTimeStep = options.overlapsPerTimeStep ? ud.datesInSameTimeStep(e.start, e2.start, options.timeStep) : 1\n // Add to the overlaps array if overlapping.\n if (!e.background && !e.allDay && !e2.background && !e2.allDay && eventIsInRange && eventsInSameTimeStep) {\n _cellOverlaps[e._eid].overlaps.push(e2._eid)\n _cellOverlaps[e._eid].overlaps = [...new Set(_cellOverlaps[e._eid].overlaps)] // Dedupe, most performant way.\n\n _cellOverlaps[e2._eid].overlaps.push(e._eid)\n _cellOverlaps[e2._eid].overlaps = [...new Set(_cellOverlaps[e2._eid].overlaps)] // Dedupe, most performant way.\n _cellOverlaps[e2._eid].position++\n \n if (eventSameOverlap) {\n _cellOverlaps[e._eid].sameOverlaps.push(e2._eid)\n _cellOverlaps[e._eid].sameOverlaps = [...new Set(_cellOverlaps[e._eid].sameOverlaps)] // Dedupe, most performant way.\n\n _cellOverlaps[e2._eid].sameOverlaps.push(e._eid)\n _cellOverlaps[e2._eid].sameOverlaps = [...new Set(_cellOverlaps[e2._eid].sameOverlaps)] // Dedupe, most performant way.\n }\n }\n // Remove from the overlaps array if not overlapping or if 1 of the 2 events is background or all-day long.\n else {\n let pos1, pos2\n if ((pos1 = (_cellOverlaps[e._eid] || { overlaps: [] }).overlaps.indexOf(e2._eid)) > -1) _cellOverlaps[e._eid].overlaps.splice(pos1, 1)\n if ((pos2 = (_cellOverlaps[e2._eid] || { overlaps: [] }).overlaps.indexOf(e._eid)) > -1) _cellOverlaps[e2._eid].overlaps.splice(pos2, 1)\n _cellOverlaps[e2._eid].position--\n }\n })\n })\n\n // Overlaps streak is the longest horizontal set of simultaneous events.\n // This is determining the width of events in a streak.\n // e.g. 3 overlapping events in a cell:\n // ___ ___\n // | 1 | |_2_| 1 overlaps 2 & 3; 2 & 3 don't overlap;\n // | | ___ => streak = 2; each width = 50% not 33%.\n // |___| |_3_|\n let longestStreak = 0\n for (const id in _cellOverlaps) {\n const item = _cellOverlaps[id]\n\n // Calculate the position of each event in current streak (determines the CSS left property).\n const overlapsRow = item.overlaps.map(id2 => ({ id: id2, start: _cellOverlaps[id2].start }))\n overlapsRow.push({ id, start: item.start })\n overlapsRow.sort((a, b) => a.start < b.start ? -1 : (a.start > b.start ? 1 : (a.id > b.id ? -1 : 1)))\n item.position = overlapsRow.findIndex(e => e.id === id)\n\n longestStreak = Math.max(this.getOverlapsStreak(item, _cellOverlaps), longestStreak)\n }\n\n // console.log([_cellOverlaps, longestStreak])\n\n return [_cellOverlaps, longestStreak]\n }\n\n /**\n * Overlaps streak is the longest horizontal set of simultaneous events.\n * This is determining the width of each events in this streak.\n * E.g. 3 overlapping events [1, 2, 3]; 1 overlaps 2 & 3; 2 & 3 don't overlap;\n * => streak = 2; each width = 50% not 33%.\n *\n * @param {Object} event The current event we are checking among all the events of the current cell.\n * @param {Object} cellOverlaps An indexed array of all the events overlaps for the current cell.\n * @return {Number} The number of simultaneous event for this event.\n */\n getOverlapsStreak (event, cellOverlaps = {}) {\n let streak = event.overlaps.length + 1\n let removeFromStreak = []\n event.overlaps.forEach(id => {\n if (!removeFromStreak.includes(id)) {\n const overlapsWithoutSelf = event.overlaps.filter(id2 => id2 !== id)\n overlapsWithoutSelf.forEach(id3 => {\n if (!cellOverlaps[id3].overlaps.includes(id)) removeFromStreak.push(id3)\n })\n }\n })\n\n removeFromStreak = [...new Set(removeFromStreak)] // Dedupe, most performant way.\n streak -= removeFromStreak.length\n return streak\n }\n\n /**\n * Tells whether an event is in a given date range, even partially.\n *\n * @param {Object} event The event to test.\n * @param {Date} start The start of range date object.\n * @param {Date} end The end of range date object.\n * @return {Boolean} true if in range, even partially.\n */\n eventInRange (event, start, end) {\n // Check if all-day or timeless event (if date but no time there won't be a `:` in event.start).\n if (event.allDay || !this._vuecal.time) {\n // Get the date and discard the time if any, then check it's within the date range.\n const startTimestamp = new Date(event.start).setHours(0, 0, 0, 0)\n const endTimestamp = new Date(event.end).setHours(23, 59, 0, 0)\n return (endTimestamp >= new Date(start).setHours(0, 0, 0, 0) &&\n startTimestamp <= new Date(end).setHours(0, 0, 0, 0))\n }\n\n const startTimestamp = event.start.getTime()\n const endTimestamp = event.end.getTime()\n return startTimestamp < end.getTime() && endTimestamp > start.getTime()\n }\n\n eventSameRange(event1, event2) {\n const isSameStart = event1.start.getTime() == event2.start.getTime()\n const isSameEnd = event1.end.getTime() == event2.end.getTime()\n return isSameStart && isSameEnd\n }\n}\n","
{{ split.label }}
","
","import { render } from \"./weekdays-headings.vue?vue&type=template&id=339102eb&lang=pug\"\nimport script from \"./weekdays-headings.vue?vue&type=script&lang=js\"\nexport * from \"./weekdays-headings.vue?vue&type=script&lang=js\"\n\nimport \"./weekdays-headings.vue?vue&type=style&index=0&id=339102eb&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./header.vue?vue&type=template&id=19ea4718&lang=pug\"\nimport script from \"./header.vue?vue&type=script&lang=js\"\nexport * from \"./header.vue?vue&type=script&lang=js\"\n\nimport \"./header.vue?vue&type=style&index=0&id=19ea4718&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","
{{ label }}
","
{{ cell.label }}\n
","
{{ vuecal.texts.deleteEvent }}
","import { render } from \"./event.vue?vue&type=template&id=4b2ee15a&lang=pug\"\nimport script from \"./event.vue?vue&type=script&lang=js\"\nexport * from \"./event.vue?vue&type=script&lang=js\"\n\nimport \"./event.vue?vue&type=style&index=0&id=4b2ee15a&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./cell.vue?vue&type=template&id=16734c58&lang=pug\"\nimport script from \"./cell.vue?vue&type=script&lang=js\"\nexport * from \"./cell.vue?vue&type=script&lang=js\"\n\nimport \"./cell.vue?vue&type=style&index=0&id=16734c58&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./all-day-bar.vue?vue&type=template&id=1fec77b5&lang=pug\"\nimport script from \"./all-day-bar.vue?vue&type=script&lang=js\"\nexport * from \"./all-day-bar.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./index.vue?vue&type=template&id=59399e28\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { App } \t\tfrom 'vue'\nimport VueCal from './index.vue'\n\n\nexport default {\n\tinstall: (app: App) => {\n\n\t\tapp.component('Vue-cal', VueCal)\n\t}\n}","import { createApp } \tfrom 'vue'\nimport { IonicVue } \tfrom '@ionic/vue'\nimport { loadFonts } \tfrom './webfontloader'\nimport vuetify \t\t\tfrom './vuetify'\nimport { registerQuillUrlSanitizer } from './quill.util'\nimport loader \t\t\tfrom 'vue-loading-overlay'\nimport App \t\t\t\tfrom './App.vue'\n\nimport router \t\t\tfrom './router'\nimport store \t\t\tfrom '@/store'\nimport w \t\t\t\tfrom '@/plugins/w/w'\nimport axiosCustom from '@/plugins/w@custom/axios'\nimport tmStore \t\t\tfrom '@/plugins/tm@_store'\nimport vueCal \t\t\tfrom '@/plugins/app@vendor/vue-cal'\nimport { Options } \t\tfrom '@/plugins/w/w/types'\n\nimport '@ionic/vue/css/core.css'\nimport '@ionic/vue/css/normalize.css'\nimport '@ionic/vue/css/structure.css'\nimport '@ionic/vue/css/typography.css'\nimport '@ionic/vue/css/padding.css'\nimport '@ionic/vue/css/float-elements.css'\nimport '@ionic/vue/css/text-alignment.css'\nimport '@ionic/vue/css/text-transformation.css'\nimport '@ionic/vue/css/flex-utils.css'\nimport '@ionic/vue/css/display.css'\n\nimport '@/plugins/app/_theme/index.sass'\nimport 'vue-loading-overlay/dist/vue-loading.css'\nimport '@vuepic/vue-datepicker/dist/main.css'\n\nloadFonts()\nregisterQuillUrlSanitizer()\n\nconst options: Options = {\n\taxios: {\n\t\tdisabled: true\n\t},\n\ti18n: {\n\t\tlanguages: [\n\t\t\t{\n\t\t\t\ttitle: \"Slovenský\", flag: \"sk\", value: \"sk\"\n\t\t\t}\n\t\t],\n\t\tdefaultLanguage: 'sk'\n\t},\n\tmoxios: {\n\t\troutes: {\n\t\t\t// 'GET v1/auth/info': true,\n\t\t\t// 'POST v1/auth/forgot': true,\n\t\t\t// 'POST v1/auth/reset': true,\n\t\t\t// 'POST v1/auth/info': true,\n\t\t\t// 'POST v1/auth/invalidate': true,\n\t\t\t// 'POST v1/auth/login': true,\n\t\t\t// 'POST v1/auth/post': true,\n\n\t\t\t'GET v1/overview/teams': true,\n\t\t\t'GET v1/overview/tasks': true,\n\t\t\t// 'GET v1/search': true,\n\t\t}\n\t}\n}\n\nconst app = createApp(App)\n\t.use(router)\n\t.use(store)\n\t.use(axiosCustom)\n\t.use(w, options)\n\t.use(IonicVue)\n\t.use(vuetify)\n\t.use(vueCal)\n\t.use(tmStore)\n\t.use(loader, {\n\t\tcolor: '#6200EE'\n\t})\n\t.mount('#app')\n\n// @ts-expect-error\nexport const $t = app.$i18n.t\n","import { $t } from '@/plugins/app/_config/main'\n\nexport default {\n\tparseErrors(errors) {\n\t\t// @ts-expect-error\n\t\treturn Object.values(errors).map(error => $t(error?.$message)).join('. ')\n\t}\n}","export default {\n\tmethods: {\n\t\tcustomFilter(item, input) {\n\t\t\t// Replace accented characters with non-accented equivalents\n\t\t\tconst normalizedItem = item.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n\t\t\tconst normalizedInput = input.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n\t\t\t\n\t\t\t// Remove any character that is not a letter, number, or space from both the item and the input\n\t\t\tconst pattern = /[^a-zA-Z0-9 ]/g;\n\t\t\tconst cleanedItem = normalizedItem.replace(pattern, '');\n\t\t\tconst cleanedInput = normalizedInput.replace(pattern, '');\n\t\t\t\n\t\t\t// Check if the cleaned item starts with the cleaned input and return empty value for dropdown if present\n\t\t\treturn cleanedItem.toLowerCase().includes(cleanedInput.toLowerCase()) || item === '';\n\t\t}\n\t}\n}","import moment from 'moment';\n\nexport default {\n enrichEmployees(employees) {\n return employees.map((employee) => ({\n ...employee,\n _fullName: `${employee.name} ${employee.surname}`,\n _initials: employee.name.charAt(0) + employee.surname.charAt(0),\n }));\n },\n\n formatDateTime(date) {\n moment(date);\n return moment(date).format('DD.MM.yyyy, HH:mm');\n },\n\n formatTimeblockDateTime(timeblock) {\n // Handle new format with separate date and time fields\n if (timeblock.date && timeblock.starts_at_time) {\n const dateStr = moment(timeblock.date).format('DD.MM.yyyy');\n return `${dateStr}, ${timeblock.starts_at_time}`;\n }\n // Fallback to old format\n if (timeblock.start) {\n return this.formatDateTime(timeblock.start);\n }\n return '';\n },\n\n formatDateTimeForBackend(date) {\n return moment(date).format('YYYY-MM-DD HH:mm:ss');\n },\n\n formatDate(date) {\n return moment(date).format('DD.MM.yyyy');\n },\n\n isBefore(date, compareTo = null) {\n return moment(date).isBefore(moment(compareTo));\n },\n\n isAfter(date, compareTo = moment()) {\n return moment(date).isAfter(moment(compareTo));\n },\n};\n","var map = {\n\t\"./en.json\": 20790,\n\t\"./sk.json\": 71941\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 8973;","var map = {\n\t\"./ar.json\": [\n\t\t68568,\n\t\t8568\n\t],\n\t\"./bg.json\": [\n\t\t20684,\n\t\t684\n\t],\n\t\"./bn.json\": [\n\t\t61170,\n\t\t1170\n\t],\n\t\"./bs.json\": [\n\t\t41161,\n\t\t1161\n\t],\n\t\"./ca.json\": [\n\t\t40612,\n\t\t612\n\t],\n\t\"./cs.json\": [\n\t\t50213,\n\t\t213\n\t],\n\t\"./da.json\": [\n\t\t98542,\n\t\t8542\n\t],\n\t\"./de.json\": [\n\t\t4701,\n\t\t4701\n\t],\n\t\"./el.json\": [\n\t\t20453,\n\t\t453\n\t],\n\t\"./en.json\": [\n\t\t3320,\n\t\t3320\n\t],\n\t\"./es.json\": [\n\t\t60076,\n\t\t76\n\t],\n\t\"./et.json\": [\n\t\t44075,\n\t\t4075\n\t],\n\t\"./fa.json\": [\n\t\t69004,\n\t\t9004\n\t],\n\t\"./fr.json\": [\n\t\t60007,\n\t\t7\n\t],\n\t\"./he.json\": [\n\t\t23746,\n\t\t3746\n\t],\n\t\"./hr.json\": [\n\t\t92921,\n\t\t2921\n\t],\n\t\"./hu.json\": [\n\t\t75723,\n\t\t5723\n\t],\n\t\"./id.json\": [\n\t\t12502,\n\t\t2502\n\t],\n\t\"./is.json\": [\n\t\t13214,\n\t\t3214\n\t],\n\t\"./it.json\": [\n\t\t51380,\n\t\t1380\n\t],\n\t\"./ja.json\": [\n\t\t72484,\n\t\t2484\n\t],\n\t\"./ka.json\": [\n\t\t60285,\n\t\t285\n\t],\n\t\"./ko.json\": [\n\t\t79249,\n\t\t9249\n\t],\n\t\"./lt.json\": [\n\t\t42838,\n\t\t2838\n\t],\n\t\"./mn.json\": [\n\t\t6177,\n\t\t6177\n\t],\n\t\"./nl.json\": [\n\t\t99729,\n\t\t9729\n\t],\n\t\"./no.json\": [\n\t\t49409,\n\t\t9409\n\t],\n\t\"./pl.json\": [\n\t\t25409,\n\t\t5409\n\t],\n\t\"./pt-br.json\": [\n\t\t74529,\n\t\t4529\n\t],\n\t\"./ro.json\": [\n\t\t29715,\n\t\t9715\n\t],\n\t\"./ru.json\": [\n\t\t32113,\n\t\t2113\n\t],\n\t\"./sk.json\": [\n\t\t30229,\n\t\t229\n\t],\n\t\"./sl.json\": [\n\t\t28636,\n\t\t8636\n\t],\n\t\"./sq.json\": [\n\t\t204,\n\t\t204\n\t],\n\t\"./sr.json\": [\n\t\t55553,\n\t\t5553\n\t],\n\t\"./sv.json\": [\n\t\t75979,\n\t\t5979\n\t],\n\t\"./tr.json\": [\n\t\t5268,\n\t\t5268\n\t],\n\t\"./uk.json\": [\n\t\t14057,\n\t\t4057\n\t],\n\t\"./vi.json\": [\n\t\t88929,\n\t\t8929\n\t],\n\t\"./zh-cn.json\": [\n\t\t56730,\n\t\t6730\n\t],\n\t\"./zh-hk.json\": [\n\t\t30841,\n\t\t841\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 3 | 16);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 66667;\nmodule.exports = webpackAsyncContext;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"7\":\"7cef58a7\",\"76\":\"9977e9df\",\"188\":\"d74ce2b2\",\"204\":\"4dd3d03d\",\"213\":\"c9ed5252\",\"229\":\"b09f2145\",\"285\":\"6a0985b5\",\"453\":\"04d72c77\",\"612\":\"4ea201aa\",\"684\":\"017ebeb8\",\"841\":\"65cae984\",\"907\":\"bfa01f81\",\"924\":\"ddc3fd73\",\"1097\":\"88cdd882\",\"1161\":\"59a7c68b\",\"1170\":\"16217940\",\"1277\":\"95db0fe3\",\"1380\":\"fc40de11\",\"1466\":\"c5d34b19\",\"2113\":\"2a1bcdfa\",\"2484\":\"6def3002\",\"2502\":\"66addef9\",\"2612\":\"ea780a2e\",\"2838\":\"aa69ee5c\",\"2921\":\"b5aad8e9\",\"3214\":\"72d306e7\",\"3311\":\"bcab8a66\",\"3320\":\"fe7033d0\",\"3657\":\"e558064c\",\"3728\":\"3e558208\",\"3746\":\"09ee0424\",\"3862\":\"b079a5bd\",\"4057\":\"4b3b38fd\",\"4075\":\"2d83f71e\",\"4392\":\"02bf9f00\",\"4518\":\"8e2c3fa8\",\"4529\":\"6ff3334b\",\"4578\":\"5a7acff1\",\"4701\":\"e34c277a\",\"5268\":\"5d463fbd\",\"5409\":\"4ce439c3\",\"5456\":\"e8c8face\",\"5553\":\"032fcbe7\",\"5723\":\"09853a5d\",\"5979\":\"385e1b41\",\"6177\":\"12db94aa\",\"6730\":\"61289e01\",\"7073\":\"57c96578\",\"7343\":\"1e290ed5\",\"8024\":\"bb377405\",\"8059\":\"91d676ea\",\"8520\":\"cb7009ea\",\"8542\":\"09badcc3\",\"8568\":\"7f0dfd32\",\"8636\":\"2a90cf11\",\"8731\":\"a28fea96\",\"8929\":\"ea6da50f\",\"8990\":\"6dd37151\",\"9004\":\"ffe04245\",\"9033\":\"727fb9e6\",\"9249\":\"d2b0f88c\",\"9407\":\"ed2e3833\",\"9409\":\"339f5afb\",\"9715\":\"21ca1afa\",\"9729\":\"812aea5b\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"188\":\"37c2c58b\",\"907\":\"fa9ddfdd\",\"1277\":\"d65f48ae\",\"2612\":\"f67d9d9c\",\"3862\":\"f5c9dd84\",\"4392\":\"01299cfb\",\"5456\":\"2cf84289\",\"7073\":\"3978ef96\",\"8059\":\"2ab138a8\",\"9033\":\"ace2e544\",\"9407\":\"f4af91bc\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"jandl:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t};\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","var createStylesheet = function(chunkId, fullhref, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t4826: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"188\":1,\"907\":1,\"1277\":1,\"2612\":1,\"3862\":1,\"4392\":1,\"5456\":1,\"7073\":1,\"8059\":1,\"9033\":1,\"9407\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t4826: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkjandl\"] = self[\"webpackChunkjandl\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4998], function() { return __webpack_require__(98795); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","id","module","exports","map","webpackContext","webpackContextResolve","__webpack_require__","o","Object","async","loadFonts","webFontLoader","load","google","families","createVuetify","registerQuillUrlSanitizer","Link","Quill","PROTOCOL_WHITELIST","push","CustomLinkSanitizer","static","url","sanitizedUrl","super","sanitize","protocolWhitelist","hasWhitelistedProtocol","some","protocol","startsWith","_createVNode","_component_v_app","_component_v_main","_component_router_view","_component_Z_team_modal","ref","onUpdate","$options","_component_Z_delete_team_modal","_component_Z_task_modal","onOnSubtaskEdited","_component_Z_delete_task_modal","onOnSubtaskDeleted","_component_Z_delete_timeBlock_modal","_component_Z_delete_blocker_modal","onOnBlockerDeleted","_component_Z_delete_master_task_modal","onOnMastertaskDeleted","_component_Z_complete_task_modal","_component_Z_complete_master_task_modal","onMasterTaskEdited","_component_Z_task_add_time_modal","_component_Z_blocker_modal","_component_Z_master_task_modal","_component_Z_delete_team_member_modal","_component_Z_show_menu_modal","_component_Z_unable_to_edit_office_task_modal","_component_Z_unable_to_complete_task_modal","class","_createBlock","_component_v_dialog","$data","persistent","_component_v_card","_createElementVNode","_hoisted_1","name","_component_v_icon","onClick","icon","size","_component_v_card_actions","_component_v_btn","variant","disabled","mounted","window","addEventListener","this","handleKeyDown","methods","event","keyCode","visible","mixins","modalMixin","emits","data","team","isDeleting","closeModal","$axios","delete_auth","$emit","$store","commit","error","$toast","$parseError","__exports__","height","_component_W_loadable","content","_component_v_text_field","$errors","length","label","hint","parseErrors","_createElementBlock","_Fragment","employees","employee","index","key","_fullName","splice","_component_v_autocomplete","_ctx","items","clearable","atLeastOne","value","AutocompleteMixin","v$","useVuelidate","errorUtils","employeeSelect","computed","mapGetters","employeesOptions","selectedEmployeesIds","enrichedEmployees","filter","includes","validations","required","$nextTick","$reset","t","get_auth_data","_enrichTeam","$validate","put_auth","fullTeamResource","post_auth","tmUtils","watch","employeeId","find","$refs","autocomplete","search","project_code","subtask","_hoisted_2","timeblocks","timeblock","is_finished","formatDateTime","start","end","JSON","parse","stringify","deadline","_update","deleteTimeblockWithoutId","i","timesheets","timesheet","employee_name","date","dateStr","moment","format","starts_at_time","ends_at_time","$events","emit","message","d","_hoisted_3","_hoisted_4","_hoisted_7","_hoisted_8","onFocus","master_task_id","item","title","_component_Datepicker","onOpen","Date","locale","placeholder","_deadline_time","type","employee_id","version","xmlns","width","viewBox","duration","_hoisted_10","_component_A_timeblock","onUpdateTimeblock","val","onRemoveTimeblock","deletable","editable","_hoisted_11","_hoisted_12","_component_QuillEditor","description","theme","onInput","$event","srcElement","innerHTML","_component_Z_files_upload","files","onFilesUploaded","_hoisted_13","_master_task","_hoisted_14","_hoisted_15","src","require","alt","_hoisted_18","_component_Z_task_readonly_info","onCloseModal","onUpdateSubtask","_hoisted_19","multiple","accept","onChange","fileUpload","click","file","_component_v_chip","toFixed","indexOf","$props","props","Array","default","isSaving","Boolean","uploadedFiles","created","maxSize","oversizedFiles","remove","preventInputFocus","savedScrollPosition","setFocusEvent","document","querySelectorAll","forEach","input","onInputFocus","onDateFocus","undefined","onDateOpen","modalContent","querySelector","scrollTop","setTimeout","target","tagName","blur","selectedEmployees","mastertask","projectsOptions","pattern","normalizedInput","projectCodeSearch","normalize","replace","projects","project","normalizedProjectCode","toLowerCase","filteredProjects","slice","project_id","selectedProject","onEmployeeSelected","showAddEmployeeInput","onEmployeeDurationChanged","totalDuration","parseFloat","invalid","teams","_component_A_mastertask_name","color","_component_A_mastertask_status","isFinished","_component_A_task_deadline","_component_A_task_timeblocks","_component_Z_created_by","created_by","_component_A_task_assigned_employee","_employee","_component_A_task_planned_time","hours","_component_A_task_remaining_time","spent_time","_component_A_task_spent_time","_component_A_task_description","master_task_description","_component_Z_files","_component_v_row","_component_v_col","cols","_component_v_sheet","style","backgroundColor","String","Number","openMastertask","editMode","completed","_hoisted_5","_hoisted_6","form","components","Datepicker","showModal","isOffice365Task","formatTimeblockStart","formatTimeblockEnd","_mergeDeadlineTimeDate","isAfterDeadline","originalTimeblock","timeblockForBackend","newTimeblock","startMoment","endMoment","convertedTimeblock","toDate","getDeadline","mDate","mDeadline","minutes","split","isAfter","master_task_deadline","timeParts","setHours","parseInt","setMinutes","_initials","charAt","surname","time","timestamp","_hoisted_9","numeric","minValue","user","console","log","formatDate","_component_v_tooltip","text","location","activator","_mergeProps","deadlineTime","getMasterTaskDeadline","toast","useToast","detectOS","platform","navigator","macosPlatforms","windowsPlatforms","prepareHTMLDescription","os","match","replaceAll","getCopyFunction","mastertaskDescription","copiedIndices","preparedDescription","preparedMastertaskDescription","emptyMessage","file_size","isLoading","response","fetch","path","blob","FileSaver","ZFiles","AMastertaskName","AMastertaskStatus","ATaskTimeblocks","ZCreatedBy","ATaskAssignedEmployee","ATaskPlannedTime","ATaskSpentTime","ATaskRemainingTime","ATaskDescription","ATaskDeadline","Function","requiredIf","handleDatepickerClick","scrollTarget","openDatepicker","calendar","datepickerWrapper","modalContainer","wrapperRect","getBoundingClientRect","modalRect","topPosition","top","left","openMenu","updateDate","updated","updateStartTime","updateEndTime","VuetifyFixFocusMixin","SelectsMixin","ZTaskReadonlyInfo","ATimeblock","ZFilesUpload","QuillEditor","employeeValidations","showDatePicker","selectedNewDate","wasFormValidationTriggered","enrichedMastertasks","mastertasks","editableTimeblocks","get","set","on","splittedDeadline","convertedTimeblocks","_enrichTask","$forceUpdate","toggleEditMode","mode","updateTimeblock","addTimeblock","removeTimeblock","savedSubtask","localStorage","getItem","parsedSubtask","setHTML","master_task","deleteTimeblock","$router","$route","employeesValid","_validateEmployees","timeblocksValid","_validateTimeblocks","validateAllFields","getHTML","patch_auth_form","removeItem","validEmployees","subtaskCopy","subtasks","openDeleteTaskModal","showCompleteTaskModal","filesUploaded","updateSubtask","hasValidEmployee","isError","valid","isValid","_created_by","oldValue","handler","lastEmployee","deep","subtaskData","setItem","blocker","tempSubtask","tempMastertask","payload","datepicker","clearValue","_syncDatesTimes","splittedStart","splittedEnd","estimated_duration","_component_v_select","team_id","_allEmployees","min","onKeyup","_component_A_mastertask_description","_component_A_tasks_table","_component_v_table","_employeeInitials","_employeeFullName","checkmark","bin","eye","office365","enrichedtasks","openTaskModal","_component_Z_status","status","_component_Z_deadline","_component_Z_team","_component_Z_estimated_duration","_component_Z_planned_time","_component_Z_remaining_time","time_worked","_component_Z_spent_time","_component_Z_description","inheritedDescription","preparedInheritedDescription","isExceeded","enrichedEmployeesInTeam","enrichedEmployeesOutsideTeam","employeesOutsideOfTeam","em","ZDeadline","ZDescription","ZPlannedTime","ZRemainingTime","ZSpentTime","ZStatus","ZTeam","ZEstimatedDuration","AMastertaskDescription","ATasksTable","enrichedSubtasks","quillEditorRequired","minLength","$each","closeBothModals","teamId","memberId","task","beforeUnmount","off","removeEmployee","removeMemberAlert","member","loadMastertask","savedMastertask","parsedMastertask","toggleIsFinished","vuelidateValid","post_auth_data","openDeleteMasterTaskModal","addTask","onQuillEditorInput","getHours","getMinutes","toString","padStart","oldTeamEmployeesIds","employeesNotInOldTeam","_","_component_v_card_text","_component_v_spacer","localData","createTask","onTaskCreated","createBlocker","onBlockerCreated","loading","loadingTimeblocks","loadingCloseAll","areAllTimeblocksFinished","every","_finishSubtask","dispatch","promises","all","ZDeleteTeamModal","ZTeamModal","ZDeleteTaskModal","ZDeleteBlockerModal","ZTaskModal","ZMasterTaskModal","ZCompleteTaskModal","ZTaskAddTimeModal","ZBlockerModal","ZDeleteMasterTaskModal","ZDeleteTeamMemberModal","ZShowMenuModal","ZCompleteMasterTaskModal","ZDeleteTimeBlockModal","ZUnableToEditOfficeTaskModal","ZUnableToCompleteTaskModal","query","_showModalsAfterInicialization","onTeamUpdate","onTaskDeleted","onBlockerDeleted","onTaskEdited","onMasterTaskDeleted","repeat","getters","render","createStore","state","mutations","actions","modules","routes","redirect","component","children","meta","requiresAuth","router","createRouter","history","createWebHashHistory","process","beforeEach","to","from","next","isLoggedIn","store","axios","config","catch","reject","_config","params","headers","Authorization","install","app","options","globalProperties","encodeGetParams","p","entries","kv","encodeURIComponent","join","strToRegex","s","re","Moxios","constructor","_redirectRequestToMock","bind","_mocks","mock","append","k","m","reUrl","matchMethod","mocked","method","fname","VUE_APP_PLATFORM","toUpperCase","c","origin","moxios","values","events","mitt","I18n","properties","instance","translated","availableLanguages","languages","defaultLanguage","language","languageKey","vendorI18n","createI18n","legacy","fallbackLocale","messages","_loadLocaleMessages","missing","_missingTranslation","postTranslation","_postTranslation","changeLanguage","flag","initCurrentLanguage","Preferences","currentLanguage","_addAxiosHeaders","global","locales","warn","matched","use","i18n","$w18n","IonContent","IonPage","IonLabel","IonBackButton","IonCheckbox","IonText","IonButton","IonItem","IonItemGroup","IonItemSliding","IonItemOption","IonItemOptions","IonToolbar","IonHeader","IonFooter","IonSlides","IonSlide","IonSpinner","IonRow","IonCol","IonGrid","IonInput","IonButtons","IonIcon","IonImg","IonList","IonSkeletonText","IonTitle","IonMenu","IonSplitPane","IonMenuButton","IonRouterOutlet","IonSegment","IonSegmentButton","IonVirtualScroll","IonTextarea","IonSearchbar","IonRefresherContent","IonRefresher","IonInfiniteScrollContent","IonInfiniteScroll","IonAvatar","IonThumbnail","IonModal","IonRadioGroup","IonRadio","IonNote","IonCard","IonCardContent","IonTabBar","IonTabButton","IonMenuToggle","IonFab","IonFabButton","IonFabList","IonReorderGroup","IonReorder","IonSelect","IonSelectOption","IonToggle","IonBadge","IonChip","IonTabs","_unauthorised","namespaced","token","auth_success","auth_error","logout","open","login","credentials","signup","finally","forgotPassword","resetPassword","updateUserInfo","registerModule","auth","VueToast","_renderSlot","loader","_startLoading","_stopLoading","WLoadable","ionic","loadable","parseAndTranslate","errorsArray","_parseToArrayOfStrings","$t","statusText","toastUtils","_objectToFormData","formData","transformRequest","_buildFormData","parentKey","File","FormData","unscheduledSubtasks","ongoingSubtasks","initialized","ongoingSubtasksEmployeeId","unscheduledSubtasksEmployeeId","set_mastertasks","set_employees","set_teams","set_projects","set_unscheduled_subtasks","set_ongoing_subtasks","remove_ongoing_subtask","subtaskId","st","update_team","save_team","delete_team","update_subtask","delete_subtask","set_ongoing_subtasks_employee_id","set_unscheduled_subtasks_employee_id","initialize","reloadSubtasks","reloadMastertasks","loadMastertasks","loadEmployees","loadTeams","loadProjects","loadUnscheduledSubtasks","employeeIdToUse","loadOngoingSubtasks","removeOngoingSubtask","sort","a","b","isInitialized","tmStore","grow","row","column","_hoisted_27","lang","_component_vuecal_header","views","weekDaysInHeader","heading","view","_Transition","appear","_component_all_day_bar","titleEditable","contenteditable","onBlur","vuecal__flex","allDay","cell","week","wrap","_component_weekdays_headings","unscheduledTime","el","_component_vuecal_cell","selectCell","goNarrower","noEvent","_hoisted_22","formatTime","endTimeMinutes","daysCount","segments","formattedDate","isFirstDay","_hoisted_24","day","_hoisted_26","now","todayDate","todayF","self","_dateObject","_timeObject","DateUtils","texts","noPrototypes","_texts","prototype","addDays","_initDatePrototypes","days","subtractDays","addHours","subtractHours","addMinutes","subtractMinutes","getWeek","isToday","isLeapYear","removePrototypes","updateTexts","_todayFormatted","getDate","getFullYear","getMonth","valueOf","setDate","UTC","dayNum","getUTCDay","setUTCDate","getUTCDate","yearStart","getUTCFullYear","Math","ceil","year","getPreviousFirstDayOfWeek","weekStartsOnSunday","prevFirstDayOfWeek","dayModifier","getDay","stringToDate","countDays","timezoneDiffMs","getTimezoneOffset","datesInSameTimeStep","date1","date2","timeStep","abs","getTime","formatDateLite","dateObj","YYYY","_hydrateDateObject","YY","M","MM","MMM","MMMM","MMMMG","D","DD","S","dd","ddd","dddd","HH","_hydrateTimeObject","H","hh","h","am","AM","mm","contents","result","round","shouldRound","getSeconds","formatTimeLite","timeObj","formatted","_nth","dayNumber","substring","months","monthsGenitive","weekDays","substr","floor","pm","minutesInADay","CellUtils","vuecal","force","_vuecal","clickToNavigate","switchToNarrowerView","dblclickToNavigate","domEvents","dblTapACell","taps","timeout","cellsEl","clientX","clientY","touches","x","y","cursorCoords","timeCellHeight","timeFrom","getPosition","max","defaultEventDuration","ud","_cellOverlaps","_comparisonArray","EventUtils","dateUtils","_eid","startTimeMinutes","background","deleting","resizable","resizing","draggable","dragging","draggingStatic","focused","createAnEvent","dateTime","eventOptions","dateToMinutes","eventDefaults","uid","eventIdIncrement","onEventCreate","deleteAnEvent","startDateF","endDateF","mutableEvents","addEventsToView","emitWithEvent","cleanupEvent","originalEvent","addEventSegment","isLastDay","previousSegment","removeEventSegment","segmentsCount","createEventSegments","viewStartDate","viewEndDate","viewStartTimestamp","viewEndTimestamp","eventStartAtMidnight","eventStart","eventEnd","repeatedEventStartFound","until","createSegment","nextMidnight","tmpDate","tmpDateFormatted","occurrences","checkCellOverlappingEvents","cellEvents","shift","overlaps","position","sameOverlaps","e2","eventIsInRange","eventInRange","eventSameOverlap","eventSameRange","eventsInSameTimeStep","overlapsPerTimeStep","pos1","pos2","Set","longestStreak","overlapsRow","id2","findIndex","getOverlapsStreak","cellOverlaps","streak","removeFromStreak","overlapsWithoutSelf","id3","startTimestamp","endTimestamp","event1","event2","isSameStart","isSameEnd","role","hideViewSelector","_createCommentVNode","_renderList","v","enabled","_normalizeClass","highlightedControl","onDragenter","drag","viewSelectorDragEnter","onDragleave","viewSelectorDragLeave","hideTitleBar","transitions","_resolveDynamicComponent","startDate","todayButton","_createSlots","$slots","fn","_createTextVNode","hide","today","clickable","toLocaleDateString","_normalizeStyle","onDblclick","dayOfMonth","full","small","xsmall","hasSplits","stickySplitLabels","daySplits","inject","transitionDirection","DOMEvent","selectedDate","utils","cleanupHeading","initials","onTimelineScroll","viewPortOffset","headings","todayFound","startWeekOnSunday","short","cellWidth","reduce","total","weekdayCellStyles","hideWeekdays","cellHeadingsClickable","WeekdaysHeadings","editEvents","viewProps","goToToday","updateSelectedDate","switchToBroaderView","broaderView","switchView","direction","enabledViews","showDaySplits","minSplitWidth","dnd","isWeekView","isMonthView","minTimestamp","maxTimestamp","_TransitionGroup","tag","tabindex","onKeypress","_withKeys","onTouchstart","onMousedown","onContextmenu","cellContextmenu","cellDragEnter","onDragover","cellDragOver","cellDragLeave","onDrop","cellDragDrop","showTimeInCells","timeCells","block","eventsOnMonthView","j","_component_event","allOverlaps","overlapsStreak","cellOverlapsStreak","eventId","onMouseenter","onMouseleave","_withModifiers","onMouseup","onTouchend","onTouchmove","onDragstart","onDragend","delete","deleteEvent","cellFormattedDate","eventPosition","touch","dragThreshold","startX","startY","dragged","onMouseDown","targetElement","nodeName","parentElement","classList","contains","preventDefault","clickHoldAnEvent","focusAnEvent","resizeAnEvent","dragAnEvent","focusEvent","timeoutId","onMouseUp","mousedUp","onMouseEnter","onMouseLeave","onTouchMove","onEventClick","onTouchStart","onEnterKeypress","onDblClick","onEventDblclick","onDragStart","eventDragStart","onDragEnd","eventDragEnd","onResizeHandleMouseDown","assign","segment","originalEnd","originalEndTimeMinutes","touchDeleteEvent","cancelDeleteEvent","focusedEvent","cancelDelete","eventDimensions","minutesFromTop","timeTo","bottom","eventStyles","zIdnex","master_task_color","isArray","sameOverlapsLength","parentNotSameOverlaps","minEventWidth","eventClasses","is_blocker","resize","Event","cellSplits","timeAtCursor","highlighted","highlightedSplit","getSplitAtCursor","targetIsSplit","findAncestor","attributes","splitClasses","isWeekend","eventsCount","splitsCount","isDOMElementAnEvent","onCellkeyPressEnter","isSelected","onCellFocus","keyPressEnterCell","isDisabled","onCellMouseDown","clickHoldACell","cancelClickEventCreation","eventCreated","minutesAtCursor","mouseDownOnEvent","create","setUpEventCreation","startCursorY","dragToCreateEvent","dragCreateAnEvent","snapToTime","timeMinutes","plusHalfSnapTime","cellClickHold","setUpCellHoldTimer","cellId","onCellTouchStart","onCellClick","dateFrom","offsetY","dateTo","isTeamCalendar","onCellDblClick","onCellContextMenu","stopPropagation","nowInMinutes","isBeforeMinDate","endDate","isAfterMaxDate","disableDays","isYearsOrYearView","selected","isWeekOrDayView","specialHours","timeScale","cellStart","cellEnd","eventsCountOnYearView","outOfScopeEvents","showAllDayEvents","singleDayInRange","multipleDayInRange","recurrMultDayInRange","splits","cellClasses","current","outOfScope","cellStyles","timelineVisible","todaysTimePosition","Cell","cells","shortEvents","cellOrSplitMinWidth","hasCellOrSplitWidth","minCellWidth","textsDefaults","fill","weekDaysShort","years","month","createEvent","dateFormat","validViews","Header","AllDayBar","provide","previous","activeView","scrollToHour","allDayBarHeight","disableDatePrototypes","disableViews","dragToCreateThreshold","editableEvents","hideBody","hideWeekends","maxDate","minDate","resizeX","showWeekNumbers","splitDays","timeFormat","twelveHour","watchRealTime","ready","firstCellDate","lastCellDate","timeTickerIds","startCell","endCell","loadDragAndDrop","DragAndDrop","validateView","fromViewSelector","viewDateBeforeChange","oldView","setSeconds","daysToAdd","daysToSubtract","weekDaysCount","viewDate","previousNext","modifier","viewId","weekDay","weekDayIndex","isDayHidden","daysWithIndex","dayToShow","daysFromDate","reverse","ue","filteredEvents","Class","onMouseMove","eventResizing","eventDragCreation","isClickHoldingEvent","wasResizing","hasResized","dragCreatedEvent","dragCreateStarted","mouseUpOnEvent","eventClicked","mutableEvent","cleanEvent","oldDate","unfocusEvent","clearTimeout","eventClickHandler","onKeyUp","newEndTimeMins","offsetWidth","childElementCount","newEnd","newDaysCount","lastSegmentFormattedDate","dragFromBottom","onEventTitleBlur","oldTitle","updateMutableEvents","multipleDays","discardProps","prop","eventName","getWeekNumber","weekFromFirstCell","firstCellWeekNumber","firstCellDateWeekNumber","currentWeekNumber","timeTick","updateDateTexts","alignWithScrollbar","cellOrSplitHasEvents","loadLocale","currentView","hasTouch","hasEventClickHandler","passive","oncontextmenu","viewportTimelineOffset","removeEventListener","hasTimeColumn","isShortMonthView","TimeFormat","hasShortEvents","minWidth","visibleDaysCount","allDayBar","isNaN","viewCells","unshift","pop","specialDayHours","viewTitle","lastDayOfWeek","y1","m1","formattedMonthYear","y2","m2","fromYear","apply","firstDayOfWeek","dayOfWeek","isDayView","cssClasses","isYearsView","isYearView","oldEvents","newVal","VueCal","createApp","App","axiosCustom","w","IonicVue","vuetify","vueCal","mount","$i18n","errors","$message","customFilter","normalizedItem","cleanedItem","cleanedInput","enrichEmployees","formatTimeblockDateTime","formatDateTimeForBackend","isBefore","compareTo","webpackAsyncContext","ids","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","r","n","getter","__esModule","leafPrototypes","getProto","getPrototypeOf","obj","__proto__","ns","def","getOwnPropertyNames","definition","defineProperty","enumerable","f","chunkId","u","miniCssF","g","globalThis","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onerror","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","nmd","paths","createStylesheet","fullhref","linkTag","rel","onLinkComplete","errorType","realHref","href","err","request","findStylesheet","existingLinkTags","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/app/dist/js/index.1c4f6082.js b/app/dist/js/index.1c7cf57a.js similarity index 79% rename from app/dist/js/index.1c4f6082.js rename to app/dist/js/index.1c7cf57a.js index 9f1a688..aa62cb3 100644 --- a/app/dist/js/index.1c4f6082.js +++ b/app/dist/js/index.1c7cf57a.js @@ -1,2 +1,2 @@ -(function(){var e={41993:function(e){function t(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}t.keys=function(){return[]},t.resolve=t,t.id=41993,e.exports=t},46700:function(e,t,s){var a={"./af":63906,"./af.js":63906,"./ar":40902,"./ar-dz":3853,"./ar-dz.js":3853,"./ar-kw":20299,"./ar-kw.js":20299,"./ar-ly":96825,"./ar-ly.js":96825,"./ar-ma":66379,"./ar-ma.js":66379,"./ar-sa":87700,"./ar-sa.js":87700,"./ar-tn":2059,"./ar-tn.js":2059,"./ar.js":40902,"./az":76043,"./az.js":76043,"./be":7936,"./be.js":7936,"./bg":34078,"./bg.js":34078,"./bm":14014,"./bm.js":14014,"./bn":29554,"./bn-bd":17114,"./bn-bd.js":17114,"./bn.js":29554,"./bo":6529,"./bo.js":6529,"./br":65437,"./br.js":65437,"./bs":19647,"./bs.js":19647,"./ca":59951,"./ca.js":59951,"./cs":26113,"./cs.js":26113,"./cv":37965,"./cv.js":37965,"./cy":35858,"./cy.js":35858,"./da":33515,"./da.js":33515,"./de":62831,"./de-at":6263,"./de-at.js":6263,"./de-ch":51127,"./de-ch.js":51127,"./de.js":62831,"./dv":4510,"./dv.js":4510,"./el":68616,"./el.js":68616,"./en-au":24595,"./en-au.js":24595,"./en-ca":73545,"./en-ca.js":73545,"./en-gb":79609,"./en-gb.js":79609,"./en-ie":43727,"./en-ie.js":43727,"./en-il":93302,"./en-il.js":93302,"./en-in":46305,"./en-in.js":46305,"./en-nz":39128,"./en-nz.js":39128,"./en-sg":84569,"./en-sg.js":84569,"./eo":50650,"./eo.js":50650,"./es":26358,"./es-do":64214,"./es-do.js":64214,"./es-mx":38639,"./es-mx.js":38639,"./es-us":30232,"./es-us.js":30232,"./es.js":26358,"./et":47279,"./et.js":47279,"./eu":15515,"./eu.js":15515,"./fa":27981,"./fa.js":27981,"./fi":37090,"./fi.js":37090,"./fil":79208,"./fil.js":79208,"./fo":2799,"./fo.js":2799,"./fr":23463,"./fr-ca":2213,"./fr-ca.js":2213,"./fr-ch":52848,"./fr-ch.js":52848,"./fr.js":23463,"./fy":41468,"./fy.js":41468,"./ga":88163,"./ga.js":88163,"./gd":2898,"./gd.js":2898,"./gl":76312,"./gl.js":76312,"./gom-deva":20682,"./gom-deva.js":20682,"./gom-latn":49178,"./gom-latn.js":49178,"./gu":31400,"./gu.js":31400,"./he":52795,"./he.js":52795,"./hi":17009,"./hi.js":17009,"./hr":46506,"./hr.js":46506,"./hu":69565,"./hu.js":69565,"./hy-am":93864,"./hy-am.js":93864,"./id":5626,"./id.js":5626,"./is":36649,"./is.js":36649,"./it":90151,"./it-ch":95348,"./it-ch.js":95348,"./it.js":90151,"./ja":79830,"./ja.js":79830,"./jv":33751,"./jv.js":33751,"./ka":63365,"./ka.js":63365,"./kk":85980,"./kk.js":85980,"./km":99571,"./km.js":99571,"./kn":25880,"./kn.js":25880,"./ko":16809,"./ko.js":16809,"./ku":96773,"./ku.js":96773,"./ky":65505,"./ky.js":65505,"./lb":50553,"./lb.js":50553,"./lo":51237,"./lo.js":51237,"./lt":91563,"./lt.js":91563,"./lv":61057,"./lv.js":61057,"./me":96495,"./me.js":96495,"./mi":83096,"./mi.js":83096,"./mk":43874,"./mk.js":43874,"./ml":46055,"./ml.js":46055,"./mn":87747,"./mn.js":87747,"./mr":17113,"./mr.js":17113,"./ms":8687,"./ms-my":7948,"./ms-my.js":7948,"./ms.js":8687,"./mt":14532,"./mt.js":14532,"./my":4655,"./my.js":4655,"./nb":56961,"./nb.js":56961,"./ne":2512,"./ne.js":2512,"./nl":48448,"./nl-be":72936,"./nl-be.js":72936,"./nl.js":48448,"./nn":49031,"./nn.js":49031,"./oc-lnc":5174,"./oc-lnc.js":5174,"./pa-in":30118,"./pa-in.js":30118,"./pl":93448,"./pl.js":93448,"./pt":33518,"./pt-br":62447,"./pt-br.js":62447,"./pt.js":33518,"./ro":70817,"./ro.js":70817,"./ru":10262,"./ru.js":10262,"./sd":58990,"./sd.js":58990,"./se":43842,"./se.js":43842,"./si":37711,"./si.js":37711,"./sk":80756,"./sk.js":80756,"./sl":3772,"./sl.js":3772,"./sq":6187,"./sq.js":6187,"./sr":40732,"./sr-cyrl":75713,"./sr-cyrl.js":75713,"./sr.js":40732,"./ss":99455,"./ss.js":99455,"./sv":69770,"./sv.js":69770,"./sw":80959,"./sw.js":80959,"./ta":36459,"./ta.js":36459,"./te":25302,"./te.js":25302,"./tet":67975,"./tet.js":67975,"./tg":71294,"./tg.js":71294,"./th":2385,"./th.js":2385,"./tk":24613,"./tk.js":24613,"./tl-ph":58668,"./tl-ph.js":58668,"./tlh":58190,"./tlh.js":58190,"./tr":74506,"./tr.js":74506,"./tzl":63440,"./tzl.js":63440,"./tzm":69852,"./tzm-latn":42350,"./tzm-latn.js":42350,"./tzm.js":69852,"./ug-cn":70730,"./ug-cn.js":70730,"./uk":40099,"./uk.js":40099,"./ur":72100,"./ur.js":72100,"./uz":96002,"./uz-latn":26322,"./uz-latn.js":26322,"./uz.js":96002,"./vi":14207,"./vi.js":14207,"./x-pseudo":24674,"./x-pseudo.js":24674,"./yo":10570,"./yo.js":10570,"./zh-cn":73644,"./zh-cn.js":73644,"./zh-hk":22591,"./zh-hk.js":22591,"./zh-mo":89503,"./zh-mo.js":89503,"./zh-tw":88080,"./zh-tw.js":88080};function i(e){var t=n(e);return s(t)}function n(e){if(!s.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}i.keys=function(){return Object.keys(a)},i.resolve=n,e.exports=i,i.id=46700},98795:function(e,t,s){"use strict";s.d(t,{$t:function(){return Nr}});var a=s(49242),i=s(74973);async function n(){const e=await s.e(3657).then(s.t.bind(s,33657,23));e.load({google:{families:["Roboto:100,300,400,500,700,900&display=swap"]}})}var l=s(38685),o=(s(29773),(0,l.Rd)()),r=(s(57658),s(96149));function d(){const e=r.CX["import"]("formats/link");e.PROTOCOL_WHITELIST.push("smb","fmp","radar","rdar","sms","\\");class t extends e{static sanitize(t){const s=super.sanitize(t);if(!s||"about:blank"===s)return s;const a=e.PROTOCOL_WHITELIST,i=a.some((e=>s.startsWith(e)));return i?s:`https://${s}`}}r.CX.register("formats/link",t,!0)}var u=s(73752),c=s.n(u),m=s(73396),h=s(97718),p=s(29271);function v(e,t,s,a,i,n){const l=(0,m.up)("router-view"),o=(0,m.up)("Z-team-modal"),r=(0,m.up)("Z-delete-team-modal"),d=(0,m.up)("Z-task-modal"),u=(0,m.up)("Z-delete-task-modal"),c=(0,m.up)("Z-delete-timeBlock-modal"),v=(0,m.up)("Z-delete-blocker-modal"),k=(0,m.up)("Z-delete-master-task-modal"),f=(0,m.up)("Z-complete-task-modal"),_=(0,m.up)("Z-complete-master-task-modal"),b=(0,m.up)("Z-task-add-time-modal"),g=(0,m.up)("Z-blocker-modal"),w=(0,m.up)("Z-master-task-modal"),y=(0,m.up)("Z-delete-team-member-modal"),D=(0,m.up)("Z-show-menu-modal"),M=(0,m.up)("Z-unable-to-edit-office-task-modal"),T=(0,m.up)("Z-unable-to-complete-task-modal");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(h.q,null,{default:(0,m.w5)((()=>[(0,m.Wm)(p.O,null,{default:(0,m.w5)((()=>[(0,m.Wm)(l)])),_:1})])),_:1}),(0,m.Wm)(o,{ref:"z-team-modal",onUpdate:n.onTeamUpdate},null,8,["onUpdate"]),(0,m.Wm)(r,{ref:"z-delete-team-modal",onUpdate:n.onTeamUpdate},null,8,["onUpdate"]),(0,m.Wm)(d,{ref:"z-task-modal",onOnSubtaskEdited:n.onTaskEdited},null,8,["onOnSubtaskEdited"]),(0,m.Wm)(u,{ref:"z-delete-task-modal",onOnSubtaskDeleted:n.onTaskDeleted},null,8,["onOnSubtaskDeleted"]),(0,m.Wm)(c,{ref:"z-delete-timeblock-modal",onOnSubtaskEdited:n.onTaskEdited},null,8,["onOnSubtaskEdited"]),(0,m.Wm)(v,{ref:"z-delete-blocker-modal",onOnBlockerDeleted:n.onBlockerDeleted},null,8,["onOnBlockerDeleted"]),(0,m.Wm)(k,{ref:"z-delete-master-task-modal",onOnMastertaskDeleted:n.onMasterTaskDeleted},null,8,["onOnMastertaskDeleted"]),(0,m.Wm)(f,{ref:"z-complete-task-modal",onOnSubtaskEdited:n.onTaskEdited},null,8,["onOnSubtaskEdited"]),(0,m.Wm)(_,{ref:"z-complete-master-task-modal",onMasterTaskEdited:n.onMasterTaskEdited},null,8,["onMasterTaskEdited"]),(0,m.Wm)(b,{ref:"z-task-add-time-modal"},null,512),(0,m.Wm)(g,{ref:"z-blocker-modal"},null,512),(0,m.Wm)(w,{ref:"z-master-task-modal",onMasterTaskEdited:n.onMasterTaskEdited},null,8,["onMasterTaskEdited"]),(0,m.Wm)(y,{ref:"z-delete-team-member-modal"},null,512),(0,m.Wm)(D,{ref:"z-show-menu-modal"},null,512),(0,m.Wm)(M,{ref:"z-unable-to-edit-office-task-modal"},null,512),(0,m.Wm)(T,{ref:"z-unable-to-complete-task-modal"},null,512)],64)}var k=s(87139),f=s(67312),_=s(75039),b=s(91334),g=s(33601),w=s(53289);const y={class:"d-flex justify-space-between align-center"};function D(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",y,[(0,m._)("h1",null,[(0,m.Uk)(" Ste si istý, že chcete zmazať tím "),(0,m._)("b",null,(0,k.zw)(n.team.name),1),(0,m.Uk)("? ")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteTeam()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var M={mounted(){window.addEventListener("keydown",this.handleKeyDown)},methods:{handleKeyDown(e){27===e.keyCode&&(this.visible=!1)}}},T={mixins:[M],emits:["update"],data(){return{visible:!1,team:null,isDeleting:!1}},methods:{async showModal({team:e}){this.team=e,this.visible=!0},closeModal(){this.visible=!1},async deleteTeam(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/teams/${this.team.id}`),this.visible=!1,this.$emit("update",this.team),this.$store.commit("tm/delete_team",this.team)}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}},$=s(40089);const C=(0,$.Z)(T,[["render",D]]);var j=C,E=s(60988),x=s(45869);const W={class:"d-flex justify-space-between align-center modal-header"};function S(e,t,s,i,n,l){const o=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[4]||(t[4]=e=>n.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(o,{content:n.team,class:"h-100"},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,{height:"100%",class:"d-flex flex-column"},{default:(0,m.w5)((()=>[(0,m._)("div",W,[(0,m._)("h1",null,(0,k.zw)(n.team.id?"Upraviť tím":"Vytvoriť tím"),1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{class:(0,k.C_)(["modal-input",{error:n.v$.team.name.$errors.length}]),label:"Názov tímu",variant:"solo",hint:n.v$.team.name.$errors?n.errorUtils.parseErrors(n.v$.team.name.$errors):null,modelValue:n.team.name,"onUpdate:modelValue":t[1]||(t[1]=e=>n.team.name=e)},null,8,["class","hint","modelValue"]),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.team.employees,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{class:"relative w-100",key:e.id},[(0,m.Wm)(x.hw,{class:"modal-input",disabled:"",label:"Zamestanec",variant:"solo",modelValue:n.team.employees[t]._fullName,"onUpdate:modelValue":e=>n.team.employees[t]._fullName=e},null,8,["modelValue","onUpdate:modelValue"]),(0,m.Wm)(w.t,{class:"remove-input",onClick:(0,a.iM)((e=>n.team.employees.splice(t,1)),["stop"]),icon:"mdi-close",size:"small"},null,8,["onClick"])])))),128)),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:n.employeeSelect,"onUpdate:modelValue":t[2]||(t[2]=e=>n.employeeSelect=e),label:"Priradený",class:(0,k.C_)([{error:n.v$.team.employees.$errors.length},"modal-input"]),items:l.employeesOptions,"item-title":"_fullName","item-value":"id",variant:"solo",clearable:"",ref:"autocomplete"},null,8,["custom-filter","modelValue","class","items"])])),_:1}),(0,m.Wm)(f.T,{class:"button primary block",onClick:t[3]||(t[3]=e=>l.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(n.team.id?"UPRAVIŤ":"VYTVORIŤ"),1)])),_:1})])),_:1})])),_:1},8,["content"])])),_:1},8,["modelValue"])}var O=s(33053),V=s(69117),z=s(7648),A=s(34407),U=s(20065),H=s(83299);const Z=e=>e.length;var I={mixins:[H.Z,M],emits:["close","update"],data(){return{visible:!1,v$:(0,O.ZP)(),errorUtils:z.Z,employeeSelect:null,team:null}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),employeesOptions(){const e=this.team.employees.map((e=>e.id));return this.enrichedEmployees.filter((t=>!e.includes(t.id)))}},validations(){return{team:{name:{required:V.C1},employees:{atLeastOne:Z}}}},methods:{async showModal({team:e=null}){this.visible=!0,this.team=null,this.$nextTick((()=>this.v$.$reset()));try{if(e?.id){const t=await this.$axios.get_auth_data(`v1/teams/${e.id}`);this.team=this._enrichTeam(t)}else this.team={employees:[]}}catch(t){this.$toast.error(this.$parseError(t))}},closeModal(){this.visible=!1,this.$emit("close",this.team)},async save(){if(await this.v$.$validate())try{if(this.team.id){const{team:e}=await this.$axios.put_auth(`v1/teams/${this.team.id}`,this.team),t=await this.$axios.get_auth_data(`v1/teams/${e.id}`);this.$store.commit("tm/update_team",t)}else{const{team:e}=await this.$axios.post_auth("v1/teams",this.team),t=await this.$axios.get_auth_data(`v1/teams/${e.id}`);this.$store.commit("tm/save_team",t)}this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}},_enrichTeam(e){return e.employees=A.Z.enrichEmployees(e.employees),e}},watch:{employeeSelect(e){if(!e)return;const t=this.enrichedEmployees.find((t=>t.id==e));this.team.employees.push(t),this.employeeSelect=null,this.$refs.autocomplete.search=""}}};const F=(0,$.Z)(I,[["render",S]]);var Y=F;const P={class:"d-flex justify-space-between align-center"};function L(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",P,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete zmazať sub task z mastertasku "),(0,m._)("b",null,(0,k.zw)(n.subtask.project_code),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteTask()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var N={mixins:[M],emits:["on-subtask-deleted"],data(){return{visible:!1,subtask:null,isDeleting:!1}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},closeModal(){this.visible=!1},async deleteTask(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/subtasks/${this.subtask.id}`),this.$store.commit("tm/delete_subtask",this.subtask),this.closeModal(),this.$emit("on-subtask-deleted",this.subtask)}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}};const q=(0,$.Z)(N,[["render",L]]);var B=q;const R=e=>((0,m.dD)("data-v-d203e48e"),e=e(),(0,m.Cn)(),e),K={class:"d-flex justify-space-between align-center"},J=R((()=>(0,m._)("h4",{class:"mt-3"},"Vyberte časový úsek, ktorý chcete odstrániť",-1)));function G(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[1]||(t[1]=e=>n.visible=e),"max-width":"500",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",K,[J,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.subtask.timeblocks,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center justify-center mb-3 mt-3"},[(0,m._)("p",{class:(0,k.C_)(["task-badge rounded-pill",{"strike-through":e.is_finished}])},(0,k.zw)(n.tmUtils.formatDateTime(e.start))+" - "+(0,k.zw)(n.tmUtils.formatDateTime(e.end)),3),(0,m.Wm)(w.t,{onClick:(0,a.iM)((s=>n.subtask.id?l.deleteTimeblock(e):l.deleteTimeblockWithoutId(t)),["stop"]),class:"close-icon circle-border cursor-pointer ml-3 text-red",icon:"mdi-close",size:"medium"},null,8,["onClick"])])))),128))])),_:1})])),_:1},8,["modelValue"])}var X=s(36797),Q=s.n(X),ee={mixins:[M],emits:["on-subtask-edited"],data(){return{visible:!1,subtask:null,isDeleting:!1,tmUtils:A.Z}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},closeModal(){this.visible=!1},async deleteTimeblock({id:e}){const t=JSON.parse(JSON.stringify(this.subtask));t.timeblocks=t.timeblocks.filter((t=>t.id!=e)),t.deadline&&(t.deadline=A.Z.formatDateTimeForBackend(t.deadline)),this._update(t)},deleteTimeblockWithoutId(e){this.$emit("delete-timeblock")},async _update(e){try{const t=e.timesheets.map((e=>(delete e.employee_name,e))),s=(e.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${e.id}`,{...e,timesheets:t,timeblocks:s});this.closeModal(),this.$events.emit("on-subtask-edited",a)}catch(t){this.$toast.error(t.message||t)}}}};const te=(0,$.Z)(ee,[["render",G],["__scopeId","data-v-d203e48e"]]);var se=te;const ae=e=>((0,m.dD)("data-v-3db8381d"),e=e(),(0,m.Cn)(),e),ie={class:"d-flex justify-space-between align-center modal-header"},ne={class:"splitted-inputs"},le=ae((()=>(0,m._)("path",{d:"M23.057 7.057l-16 16c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l16-16c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0z"},null,-1))),oe=ae((()=>(0,m._)("path",{d:"M7.057 8.943l16 16c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885l-16-16c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"},null,-1))),re=[le,oe],de=["onClick"],ue=ae((()=>(0,m._)("path",{d:"M23.057 7.057l-16 16c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l16-16c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0z"},null,-1))),ce=ae((()=>(0,m._)("path",{d:"M7.057 8.943l16 16c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885l-16-16c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"},null,-1))),me=[ue,ce],he={class:"timeblocks w-100"},pe={key:0,class:"end-button w-100"},ve={class:"w-100 modal-input"},ke={class:"d-flex justify-space-between align-center"},fe={class:"d-flex justify-space-between align-center modal-header border-bottom pb-4"},_e={class:"d-flex justify-start"},be=["src"],ge=["src"],we={class:"w-100"},ye={class:"d-flex justify-start align-center mt-8"};function De(e,t,i,n,l,o){const r=(0,m.up)("Datepicker"),d=(0,m.up)("A-timeblock"),u=(0,m.up)("QuillEditor"),c=(0,m.up)("Z-files-upload"),h=(0,m.up)("Z-task-readonly-info"),p=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:l.visible,"onUpdate:modelValue":t[22]||(t[22]=e=>l.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(p,{content:l.subtask,class:"h-100"},{default:(0,m.w5)((()=>[l.editMode?((0,m.wg)(),(0,m.j4)(_._,{key:0,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",ie,[(0,m._)("h1",null,(0,k.zw)(l.subtask?.id?"Upraviť sub task":"Vytvoriť sub task"),1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{modelValue:l.subtask.project_code,"onUpdate:modelValue":t[1]||(t[1]=e=>l.subtask.project_code=e),label:"Kód projektu",value:l.subtask.project_code,onFocus:e.onInputFocus,class:"modal-input",variant:"solo",disabled:""},null,8,["modelValue","value","onFocus"]),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:l.subtask.master_task_id,"onUpdate:modelValue":t[2]||(t[2]=e=>l.subtask.master_task_id=e),label:"Master task",class:(0,k.C_)([{error:l.v$.subtask.master_task_id.$errors.length},"modal-input"]),items:o.enrichedMastertasks,"item-title":e=>e._fullName||e.name,"item-value":"id",variant:"solo",clearable:"",onFocus:e.onInputFocus},null,8,["custom-filter","modelValue","class","items","item-title","onFocus"]),(0,m.Wm)(x.hw,{modelValue:l.subtask.title,"onUpdate:modelValue":t[3]||(t[3]=e=>l.subtask.title=e),onFocus:e.onInputFocus,class:"modal-input",label:"Názov subtasku",variant:"solo"},null,8,["modelValue","onFocus"]),(0,m._)("div",ne,[(0,m._)("div",{onClick:t[5]||(t[5]=e=>o.openDatepicker("datepicker-01")),class:"datepicker-wrapper"},[(0,m.Wm)(r,{modelValue:l.subtask.deadline,"onUpdate:modelValue":t[4]||(t[4]=e=>l.subtask.deadline=e),onOpen:e.onDateOpen,ref:"datepicker-01","auto-apply":!0,"min-date":new Date,class:(0,k.C_)(["modal-input left datepicker-input",{error:l.v$.subtask.deadline.$errors?.length}]),format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Deadline",validations:l.v$.subtask.deadline},null,8,["modelValue","onOpen","min-date","class","validations"])]),(0,m.Wm)(x.hw,{class:(0,k.C_)(["modal-input right",{error:l.v$.subtask._deadline_time.$errors.length}]),variant:"solo",modelValue:l.subtask._deadline_time,"onUpdate:modelValue":t[6]||(t[6]=e=>l.subtask._deadline_time=e),label:"Čas","append-inner-icon":"mdi-clock-outline",type:"time",onFocus:e.onInputFocus,hint:l.v$.subtask._deadline_time.$errors?l.errorUtils.parseErrors(l.v$.subtask._deadline_time.$errors):null},null,8,["modelValue","onFocus","class","hint"])]),l.subtask.id?((0,m.wg)(),(0,m.iD)(m.HY,{key:0},[(0,m._)("div",{class:(0,k.C_)(["employee-wrapper",{"hide-arrow":l.subtask.employee_id}])},[l.subtask.employee_id?((0,m.wg)(),(0,m.iD)("svg",{key:0,version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 32 32",class:"dp__icon dp__clear_icon dp__input_icons","data-test":"clear-icon",onClick:t[7]||(t[7]=(0,a.iM)((e=>{o.handleOnRemoveEmployee(),l.subtask.employee_id=null,l.subtask.employee=null}),["prevent"]))},re)):(0,m.kq)("",!0),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:l.subtask.employee_id,"onUpdate:modelValue":[t[8]||(t[8]=e=>l.subtask.employee_id=e),t[9]||(t[9]=e=>l.employeeValidations[0]?l.employeeValidations[0].employee=!1:null)],label:"Priradený",items:e.enrichedEmployees,"item-title":"_fullName","item-value":"id",variant:"solo",class:(0,k.C_)(["modal-input",{error:l.employeeValidations[0]?.employee}])},null,8,["custom-filter","modelValue","items","class"])],2),(0,m.Wm)(x.hw,{modelValue:l.subtask.duration,"onUpdate:modelValue":[t[10]||(t[10]=e=>l.subtask.duration=e),t[11]||(t[11]=e=>l.employeeValidations[0]?l.employeeValidations[0].duration=!1:null)],class:(0,k.C_)(["modal-input",{error:l.employeeValidations[0]?.duration}]),variant:"solo",type:"number",label:"Časový odhad","append-inner-icon":"mdi-clock-outline",onFocus:e.onInputFocus},null,8,["modelValue","class","onFocus"])],64)):((0,m.wg)(!0),(0,m.iD)(m.HY,{key:1},(0,m.Ko)(l.subtask.employees,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{key:`employee-${s}`,class:(0,k.C_)(["splitted-inputs remove-employee",{"hide-arrow":t?.id}])},[(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:t.id,"onUpdate:modelValue":[e=>t.id=e,e=>l.employeeValidations[s]?l.employeeValidations[s].employee=!1:null],label:"Priradený",items:e.enrichedEmployees,"item-title":"_fullName","item-value":"id",variant:"solo",class:(0,k.C_)(["modal-input left",{error:l.employeeValidations[s]?.employee}])},null,8,["custom-filter","modelValue","onUpdate:modelValue","items","class"]),t.id?((0,m.wg)(),(0,m.iD)("svg",{key:0,version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 32 32",class:"dp__icon dp__clear_icon dp__input_icons","data-test":"clear-icon",onClick:(0,a.iM)((e=>{o.handleOnRemoveEmployee(),t.id=null}),["prevent"])},me,8,de)):(0,m.kq)("",!0),(0,m.Wm)(x.hw,{modelValue:t.duration,"onUpdate:modelValue":[e=>t.duration=e,e=>l.employeeValidations[s]?l.employeeValidations[s].duration=!1:null],class:(0,k.C_)(["modal-input right",{error:l.employeeValidations[s]?.duration}]),variant:"solo",type:"number",label:"Časový odhad","append-inner-icon":"mdi-clock-outline",onFocus:e.onInputFocus},null,8,["modelValue","onUpdate:modelValue","class","onFocus"])],2)))),128)),(0,m._)("div",he,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(o.editableTimeblocks,((t,s)=>((0,m.wg)(),(0,m.j4)(d,{key:s,onUpdateTimeblock:e=>o.updateTimeblock(e,s),onRemoveTimeblock:e=>o.removeTimeblock(s),timeblock:t,deletable:s>0,editable:!0,ref_for:!0,ref:`timetable-${s}`,"prevent-input-focus":e.preventInputFocus,"on-input-focus":e.onInputFocus,"on-date-open":e.onDateOpen,index:s},null,8,["onUpdateTimeblock","onRemoveTimeblock","timeblock","deletable","prevent-input-focus","on-input-focus","on-date-open","index"])))),128)),l.subtask.id?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",pe,[(0,m._)("button",{onClick:t[12]||(t[12]=(...e)=>o.addTimeblock&&o.addTimeblock(...e))},"Pridať časový blok")]))]),(0,m._)("div",ve,[(0,m.Wm)(u,{ref:"description",modelValue:l.subtask.description,"onUpdate:modelValue":t[13]||(t[13]=e=>l.subtask.description=e),placeholder:"Popis",theme:"snow",class:"rich-text-editor",onInput:t[14]||(t[14]=e=>l.subtask.description=e.srcElement.innerHTML)},null,8,["modelValue"])]),(0,m.Wm)(c,{class:"mt-15 files",files:l.subtask.files,onFilesUploaded:o.filesUploaded,"is-saving":l.isSaving},null,8,["files","onFilesUploaded","is-saving"])])),_:1}),l.isSaving?((0,m.wg)(),(0,m.j4)(f.T,{key:1,class:"button primary disabled",disabled:""},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(e.$t("Ukladám...")),1)])),_:1})):((0,m.wg)(),(0,m.j4)(f.T,{key:0,class:"button primary",onClick:t[15]||(t[15]=e=>o.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(l.subtask.id?"UPRAVIŤ":"VYTVORIŤ"),1)])),_:1}))])),_:1})):((0,m.wg)(),(0,m.j4)(_._,{key:1,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",ke,[(0,m._)("div",null,[(0,m._)("p",null,(0,k.zw)(l.subtask._master_task.project_code),1),(0,m._)("h1",null,(0,k.zw)(l.subtask._master_task.name),1)]),(0,m.Wm)(w.t,{onClick:t[16]||(t[16]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"pb-5"})]),(0,m._)("div",fe,[(0,m._)("h1",null,(0,k.zw)(l.subtask.title),1),(0,m._)("div",_e,[(0,m._)("img",{class:"icon",src:s(60666),alt:"pencil-icon",onClick:t[17]||(t[17]=(0,a.iM)(((...e)=>o.toggleEditMode&&o.toggleEditMode(...e)),["stop"]))},null,8,be),(0,m._)("img",{class:"icon trash",src:s(27484),alt:"trash-icon",onClick:t[18]||(t[18]=(0,a.iM)((e=>o.openDeleteTaskModal(l.subtask)),["stop"]))},null,8,ge)])]),(0,m.Wm)(b.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m._)("div",we,[(0,m.Wm)(h,{subtask:l.subtask,onCloseModal:o.closeModal,onUpdateSubtask:o.updateSubtask},null,8,["subtask","onCloseModal","onUpdateSubtask"]),(0,m._)("div",ye,[l.subtask.is_finished?((0,m.wg)(),(0,m.j4)(f.T,{key:1,class:"button secondary",onClick:t[20]||(t[20]=(0,a.iM)((e=>o.showCompleteTaskModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("Znovu otvoriť")])),_:1})):((0,m.wg)(),(0,m.j4)(f.T,{key:0,class:"done-btn",onClick:t[19]||(t[19]=(0,a.iM)((e=>o.showCompleteTaskModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("Dokončiť")])),_:1})),(0,m.Wm)(f.T,{class:"button secondary",onClick:t[21]||(t[21]=e=>o.closeModal())},{default:(0,m.w5)((()=>[(0,m.Uk)("Uložiť zmeny")])),_:1})])])])),_:1})])),_:1}))])),_:1},8,["content"])])),_:1},8,["modelValue"])}var Me=s(63972),Te=s(87103);const $e={class:"w-100 d-flex align-center"},Ce={key:0,class:"m-2 d-flex align-center flex-wrap"},je={key:0,class:"d-flex align-center"},Ee=["src"];function xe(e,t,i,n,l,o){return(0,m.wg)(),(0,m.iD)("div",$e,[(0,m._)("input",{type:"file",multiple:"",name:"file",id:"fileInput",class:"hidden-input",accept:"*",onChange:t[0]||(t[0]=(...e)=>o.onChange&&o.onChange(...e)),ref:"fileUpload"},null,544),(0,m.Wm)(f.T,{class:"upload-btn",onClick:t[1]||(t[1]=t=>e.$refs.fileUpload.click())},{default:(0,m.w5)((()=>[(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-cloud-upload-outline"}),(0,m.Uk)("NAHRAŤ ")])),_:1}),l.uploadedFiles?((0,m.wg)(),(0,m.iD)("div",Ce,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.uploadedFiles,(e=>((0,m.wg)(),(0,m.iD)("div",{key:e.name,class:"mx-2"},[(0,m.Wm)(Te.v,{class:"mt-2"},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(e.name)+" ",1),(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-paperclip"}),(0,m._)("p",null,(0,k.zw)((e.size/1048576).toFixed(2))+" MB",1),(0,m.Wm)(w.t,{size:"small",icon:"mdi-close",onClick:(0,a.iM)((t=>o.remove(l.uploadedFiles.indexOf(e))),["stop"])},null,8,["onClick"])])),_:2},1024)])))),128)),i.isSaving?((0,m.wg)(),(0,m.iD)("div",je,[i.isSaving?((0,m.wg)(),(0,m.iD)("img",{key:0,class:"gif-loader",src:s(14214),alt:"Loading..."},null,8,Ee)):(0,m.kq)("",!0)])):(0,m.kq)("",!0)])):(0,m.kq)("",!0)])}var We={emit:["files-uploaded"],props:{files:{type:Array,default:()=>[]},isSaving:{type:Boolean,required:!1}},data(){return{uploadedFiles:[]}},created(){this.uploadedFiles=this.files},methods:{onChange(){const e=[...this.$refs.fileUpload.files],t=52428800,s=e.filter((e=>e.size>t));s.length>0?this.$toast.error("File is too large. Maximum file size is 50 MB."):(this.uploadedFiles=[...this.uploadedFiles,...e],this.$emit("files-uploaded",this.uploadedFiles),this.$refs.fileUpload.value="")},remove(e){this.uploadedFiles.splice(e,1)}}};const Se=(0,$.Z)(We,[["render",xe],["__scopeId","data-v-a2a40214"]]);var Oe=Se,Ve={data(){return{preventInputFocus:!1,savedScrollPosition:null}},methods:{setFocusEvent(){document.querySelectorAll(".v-autocomplete input").forEach((e=>{e.addEventListener("focus",this.onInputFocus)}))},onDateFocus(e){void 0==e&&(this.preventInputFocus=!0)},onDateOpen(e){if(e){const e=document.querySelector(".v-dialog .modal-content");e&&(this.savedScrollPosition=e.scrollTop),this.preventInputFocus=!0,setTimeout((()=>{this.preventInputFocus=!1,this.savedScrollPosition=null}),500)}},onInputFocus(e){if(this.preventInputFocus&&null!==this.savedScrollPosition){const t=e.target;"INPUT"===t.tagName&&"text"===t.type&&setTimeout((()=>{t.blur();const e=document.querySelector(".v-dialog .modal-content");e&&null!==this.savedScrollPosition&&(e.scrollTop=this.savedScrollPosition)}),0)}}}},ze={computed:{employeesOptions(){const e=[...this.mastertask.employees].map((e=>e.id));return this.enrichedEmployees.filter((t=>!e.includes(t.id)))||[]},projectsOptions(){const e=/[^a-zA-Z0-9 ]/g,t=this.projectCodeSearch?this.projectCodeSearch.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(e,""):"",s=this.projects.filter((s=>{const a=s.code.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(e,"");return a.toLowerCase().includes(t.toLowerCase())}));let a=s?.length?s.slice(0,10):this.projects.slice(0,10);if(!this.mastertask?.project_id)return a;const i=this.projects.find((e=>e.id==this.mastertask?.project_id));return a=a.filter((e=>e.id!=i.id)),[...a,i]}},methods:{onEmployeeSelected(e){const t=this.enrichedEmployees.find((t=>t.id==e));this.mastertask.employees.push(t),this.showAddEmployeeInput=!1},onEmployeeDurationChanged(){let e=0;this.mastertask.employees=this.mastertask.employees.map((t=>("string"==typeof t.duration?(e+=parseFloat(t.duration),t.duration=parseFloat(t.duration),t.invalid=!1):"number"==typeof t.duration&&(e+=t.duration,t.invalid=!1),t))),this.mastertask.duration=e}},watch:{"mastertask.team_id"(e){if(!e)return;const t=this.teams.find((t=>t.id==e));t&&(this.mastertask.team=JSON.parse(JSON.stringify(t)),this.mastertask.employees=[...this.mastertask.team.employees])}}},Ae=s(66154);function Ue(e,t,s,a,i,n){const l=(0,m.up)("A-mastertask-name"),o=(0,m.up)("A-mastertask-status"),r=(0,m.up)("A-task-deadline"),d=(0,m.up)("A-task-timeblocks"),u=(0,m.up)("Z-created-by"),c=(0,m.up)("A-task-assigned-employee"),h=(0,m.up)("A-task-planned-time"),p=(0,m.up)("A-task-remaining-time"),v=(0,m.up)("A-task-spent-time"),k=(0,m.up)("A-task-description"),f=(0,m.up)("Z-files");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(l,{name:s.subtask._master_task.name,id:s.subtask.master_task_id,color:s.subtask._master_task.color,onCloseModal:t[0]||(t[0]=t=>e.$emit("close-modal"))},null,8,["name","id","color"]),(0,m.Wm)(o,{isFinished:s.subtask.is_finished},null,8,["isFinished"]),(0,m.Wm)(r,{subtask:s.subtask},null,8,["subtask"]),(0,m.Wm)(d,{timeblocks:s.subtask.timeblocks,subtask:s.subtask,onUpdateSubtask:t[1]||(t[1]=t=>e.$emit("update-subtask",t))},null,8,["timeblocks","subtask"]),(0,m.Wm)(u,{"employee-id":s.subtask.created_by},null,8,["employee-id"]),(0,m.Wm)(c,{employee:s.subtask._employee},null,8,["employee"]),(0,m.Wm)(h,{hours:s.subtask.duration},null,8,["hours"]),(0,m.Wm)(p,{hours:s.subtask.duration-s.subtask.spent_time},null,8,["hours"]),(0,m.Wm)(v,{hours:s.subtask.spent_time,subtask:s.subtask},null,8,["hours","subtask"]),(0,m.Wm)(k,{description:s.subtask.description,"mastertask-description":s.subtask.master_task_description},null,8,["description","mastertask-description"]),(0,m.Wm)(f,{files:s.subtask.files},null,8,["files"])],64)}var He=s(16824),Ze=s(68521),Ie=s(74286);const Fe={class:"d-flex align-center"},Ye=(0,m._)("p",{class:"mx-3"},"Mastertask",-1);function Pe(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Fe,[(0,m.Wm)(w.t,{icon:"mdi-link",size:"large"}),Ye])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",{class:"task-badge px-4 py-2 rounded-pill hover",onClick:t[0]||(t[0]=e=>n.openMastertask()),style:(0,k.j5)({backgroundColor:s.color})},(0,k.zw)(s.name),5)])),_:1})])),_:1})])),_:1})}var Le={emits:["close-modal"],props:{name:{type:String,required:!0},id:{type:Number,required:!0},color:{type:String,required:!0}},methods:{openMastertask(){this.$emit("close-modal"),this.$events.emit("show-mastertask-modal",{mastertask:{id:this.id},editMode:!1})}}};const Ne=(0,$.Z)(Le,[["render",Pe]]);var qe=Ne;const Be={class:"d-flex align-center"},Re=(0,m._)("p",{class:"mx-3"},"Status",-1),Ke={key:0,class:"status-badge px-4 py-2 rounded-pill"},Je={key:1,class:"status-badge px-4 py-2 rounded-pill"};function Ge(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Be,[(0,m.Wm)(w.t,{icon:"mdi-drag-vertical",size:"large"}),Re])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[s.isFinished?((0,m.wg)(),(0,m.iD)("p",Ke,"Ukončený")):((0,m.wg)(),(0,m.iD)("p",Je,"Neukončený"))])),_:1})])),_:1})])),_:1})}var Xe={props:{isFinished:{type:Number,default:()=>0}}};const Qe=(0,$.Z)(Xe,[["render",Ge]]);var et=Qe;const tt={class:"d-flex align-center"},st=(0,m._)("p",{class:"mx-3"},"Trvanie",-1),at={key:0,class:"d-flex align-center mb-3"},it=(0,m._)("p",{class:"task-badge rounded-pill"},"Pridať záznam",-1),nt={class:"d-flex justify-space-between align-center"},lt=(0,m._)("h1",null,"Pridať dátum",-1),ot={class:"d-flex justify-space-between align-center"},rt={class:"text-red"},dt=(0,m._)("br",null,null,-1),ut={class:"text-black"};function ct(e,t,s,i,n,l){const o=(0,m.up)("Datepicker");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",tt,[(0,m.Wm)(w.t,{icon:"mdi-calendar-week",size:"large"}),st])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[l.isOffice365Task?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",at,[(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=e=>n.showModal=!0),class:"add-date cursor-pointer mr-2",icon:"mdi-plus",size:"medium"}),it])),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.timeblocks,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center mb-3"},[l.isOffice365Task?(0,m.kq)("",!0):((0,m.wg)(),(0,m.j4)(w.t,{key:0,onClick:(0,a.iM)((a=>s.subtask.id?l.deleteTimeblock(e):l.deleteTimeblockWithoutId(t)),["stop"]),class:"circle-border cursor-pointer mr-2",icon:"mdi-minus",size:"medium"},null,8,["onClick"])),(0,m._)("p",{class:(0,k.C_)(["task-badge rounded-pill",{"strike-through":e.is_finished}])},(0,k.zw)(l.formatTimeblockStart(e))+" - "+(0,k.zw)(l.formatTimeblockEnd(e)),3),l.isOffice365Task?(0,m.kq)("",!0):(0,m.wy)(((0,m.wg)(),(0,m.j4)(w.t,{key:1,onClick:(0,a.iM)((t=>l.toggleTimeblockIsFinished(e)),["stop"]),class:(0,k.C_)(["circle-border cursor-pointer ml-2",{completed:e.is_finished}]),icon:"mdi-check",size:"medium"},null,8,["onClick","class"])),[[a.F8,s.subtask.id]])])))),128))])),_:1})])),_:1})])),_:1}),(0,m.Wm)(g.B,{"max-width":"750",modelValue:n.showModal,"onUpdate:modelValue":t[6]||(t[6]=e=>n.showModal=e),persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",nt,[lt,(0,m.Wm)(w.t,{onClick:t[1]||(t[1]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(o,{modelValue:n.form.date,"onUpdate:modelValue":t[2]||(t[2]=e=>n.form.date=e),format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum","auto-apply":!0,"enable-time-picker":!1,class:(0,k.C_)(["mb-5 modal-input",{error:n.v$.form.date.$errors.length}])},null,8,["modelValue","class"]),(0,m.Wm)(x.hw,{modelValue:n.form.starts_at_time,"onUpdate:modelValue":t[3]||(t[3]=e=>n.form.starts_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.form.starts_at_time.$errors?n.errorUtils.parseErrors(n.v$.form.starts_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.form.starts_at_time.$errors.length},"mb-1 modal-input"]),label:"Začiatok"},null,8,["modelValue","hint","class"]),(0,m.Wm)(x.hw,{modelValue:n.form.ends_at_time,"onUpdate:modelValue":t[4]||(t[4]=e=>n.form.ends_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.form.ends_at_time.$errors?n.errorUtils.parseErrors(n.v$.form.ends_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.form.ends_at_time.$errors.length},"modal-input"]),label:"Koniec"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{onClick:t[5]||(t[5]=e=>l.submit()),class:"button primary mt-5"},{default:(0,m.w5)((()=>[(0,m.Uk)("Potvrdiť")])),_:1})])),_:1})])),_:1},8,["modelValue"]),(0,m.Wm)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[10]||(t[10]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",ot,[(0,m._)("h1",rt,[(0,m.Uk)(" Ste si istý, že chcete pridať timeblock po deadline "),dt,(0,m._)("b",ut,"z mastertasku "+(0,k.zw)(s.subtask?.project_code)+" ?",1)]),(0,m.Wm)(w.t,{onClick:t[7]||(t[7]=(0,a.iM)((e=>n.visible=!1),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[8]||(t[8]=(0,a.iM)((e=>l.confirmSubmit()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[9]||(t[9]=(0,a.iM)((e=>n.visible=!1),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])],64)}var mt={mixins:[M],emits:["update-subtask"],components:{Datepicker:Me.Z},props:{timeblocks:{type:Array,required:!0},subtask:{type:Object,required:!0}},data(){return{v$:(0,O.ZP)(),errorUtils:z.Z,tmUtils:A.Z,showModal:!1,visible:!1,form:{date:null,starts_at_time:"09:00",ends_at_time:"16:00"}}},validations(){return{form:{date:{required:V.C1},starts_at_time:{required:V.C1},ends_at_time:{required:V.C1}}}},computed:{...(0,U.Se)("tm",["mastertasks"]),isOffice365Task(){return"office365"==this.subtask.type}},methods:{formatTimeblockStart(e){if(e.date&&e.starts_at_time){const t=Q()(e.date).format("DD.MM.yyyy");return`${t}, ${e.starts_at_time}`}return e.start?A.Z.formatDateTime(e.start):""},formatTimeblockEnd(e){return e.date&&e.ends_at_time?e.ends_at_time:e.end?A.Z.formatDateTime(e.end):""},async submit(){if(!await this.v$.$validate())return;const e=JSON.parse(JSON.stringify(this.subtask));e?.timeblocks||(e.timeblocks=[]),e?.timesheets||(e.timesheets=[]),e?.is_finished||(e.is_finished=0),e.timeblocks.push({id:null,date:this.form.date,starts_at_time:this.form.starts_at_time,ends_at_time:this.form.ends_at_time,is_finished:0}),e.deadline&&(e.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate()));const t=this.isAfterDeadline();t?this.visible=!0:e.id?this._update(e):(this.$emit("update-unfinished-subtask",e),this.closeModal())},async confirmSubmit(){const e=JSON.parse(JSON.stringify(this.subtask));if(e?.timeblocks||(e.timeblocks=[]),e?.timesheets||(e.timesheets=[]),e?.is_finished||(e.is_finished=0),e.timeblocks.push({id:null,date:this.form.date,starts_at_time:this.form.starts_at_time,ends_at_time:this.form.ends_at_time,is_finished:0}),e.deadline&&(e.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),!e.id)return this.$emit("update-unfinished-subtask",e),void this.closeModal();this.visible=!1,this._update(e)},async toggleTimeblockIsFinished(e){const t=JSON.parse(JSON.stringify(this.subtask)),s=JSON.parse(JSON.stringify(e));s.is_finished=1==s.is_finished?0:1;try{const e={id:s.id,is_finished:s.is_finished};if(s.date){const t=Q()(s.date).format("YYYY-MM-DD");e.start=`${t} ${s.starts_at_time}:00`,e.end=`${t} ${s.ends_at_time}:00`}else e.start=s.start,e.end=s.end;const{data:a}=await this.$axios.put_auth(`v1/timeblocks/${s.id}`,e),i=Q()(a.start,"YYYY-MM-DD HH:mm:ss"),n=Q()(a.end,"YYYY-MM-DD HH:mm:ss"),l={id:a.id,date:i.toDate(),starts_at_time:i.format("HH:mm"),ends_at_time:n.format("HH:mm"),is_finished:a.is_finished};t.timeblocks=t.timeblocks.map((e=>e.id==l.id?l:e)),this.$events.emit("on-subtask-edited",t),this.$emit("update-subtask",t),s.is_finished&&this.$events.emit("show-task-add-time-modal",{subtask:t})}catch(a){this.$toast.error(a.message||a)}},async deleteTimeblock({id:e}){const t=JSON.parse(JSON.stringify(this.subtask));t.timeblocks=t.timeblocks.filter((t=>t.id!=e)),t.deadline&&(t.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),this._update(t)},deleteTimeblockWithoutId(e){this.$emit("delete-timeblock")},async _update(e){try{const t=e.timesheets.map((e=>(delete e.employee_name,e))),s=(e.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${e.id}`,{...e,timesheets:t,timeblocks:s});this.closeModal(),this.$events.emit("on-subtask-edited",a)}catch(t){this.$toast.error(t.message||t)}},isAfterDeadline(){const e=this.getDeadline(this.subtask);if(!e)return;const t=Q()(this.form.date),s=Q()(e),[a,i]=this.form.ends_at_time.split(":").map(Number);return t.hours(a),t.minutes(i),t.isAfter(s)},getDeadline(e){return e?.deadline?e.deadline:e.master_task_deadline},_mergeDeadlineTimeDate(){const e=new Date(this.subtask.deadline),t=this.subtask._deadline_time.split(":");return e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),e},closeModal(){this.form={date:null,starts_at_time:"09:00",ends_at_time:"16:00"},this.showModal=!1,this.$nextTick((()=>this.v$.$reset()))}}};const ht=(0,$.Z)(mt,[["render",ct]]);var pt=ht;const vt={class:"d-flex align-center"},kt=(0,m._)("p",{class:"mx-3"},"Vytvoril",-1),ft={class:"employee-selected-avatar d-flex justify-center align-center"},_t={class:"ml-2"};function bt(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",vt,[(0,m.Wm)(w.t,{icon:"mdi-account-star-outline",size:"large"}),kt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3 d-flex align-center"},{default:(0,m.w5)((()=>[(0,m._)("p",ft,(0,k.zw)(n.employee?n.employee._initials:"?"),1),(0,m._)("p",_t,(0,k.zw)(n.employee?n.employee._fullName:e.$t("Unasigned")),1)])),_:1})])),_:1})])),_:1})}var gt={props:{employeeId:{type:[Number],required:!1}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),employee(){return this.enrichedEmployees.find((e=>e.id==this.employeeId))}}};const wt=(0,$.Z)(gt,[["render",bt]]);var yt=wt;const Dt={class:"d-flex align-center"},Mt=(0,m._)("p",{class:"mx-3"},"Priradený",-1),Tt={class:"employee-selected-avatar d-flex justify-center align-center"},$t=["innerHTML"];function Ct(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Dt,[(0,m.Wm)(w.t,{icon:"mdi-account-outline",size:"large"}),Mt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3 d-flex align-center"},{default:(0,m.w5)((()=>[(0,m._)("p",Tt,(0,k.zw)(s.employee.name.charAt(0)+s.employee.surname.charAt(0)),1),(0,m._)("p",{class:"ml-2",innerHTML:`${s.employee.name} ${s.employee.surname}`},null,8,$t)])),_:1})])),_:1})])),_:1})}var jt={props:{employee:{type:Object,required:!0}}};const Et=(0,$.Z)(jt,[["render",Ct]]);var xt=Et;const Wt={class:"d-flex align-center"},St=(0,m._)("p",{class:"mx-3"},"Naplánovaný čas",-1);function Ot(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Wt,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),St])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1})])),_:1})])),_:1})}var Vt={props:{hours:{type:Number,required:!0}}};const zt=(0,$.Z)(Vt,[["render",Ot]]);var At=zt;const Ut=e=>((0,m.dD)("data-v-dc6acca2"),e=e(),(0,m.Cn)(),e),Ht={class:"d-flex align-center"},Zt=Ut((()=>(0,m._)("p",{class:"mx-3"},"Odpracovaný čas",-1))),It={class:"d-flex align-center mb-3"},Ft=Ut((()=>(0,m._)("p",{class:"task-badge rounded-pill"},"Pridať záznam",-1))),Yt={class:"d-flex align-center flex-start width-100"},Pt={class:"task-badge rounded-pill"},Lt={class:"ml-5"},Nt={class:"d-flex justify-space-between align-center"},qt=Ut((()=>(0,m._)("h1",null,"Pridať odpracovaný čas",-1)));function Bt(e,t,s,i,n,l){return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Ht,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Zt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1}),(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",It,[(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=e=>n.showModal=!0),class:"add-date cursor-pointer mr-2",icon:"mdi-plus",size:"medium"}),Ft]),s.subtask.timesheets.length?((0,m.wg)(!0),(0,m.iD)(m.HY,{key:0},(0,m.Ko)(s.subtask.timesheets,(e=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center mb-3"},[(0,m.Wm)(w.t,{onClick:(0,a.iM)((t=>l.deleteTimesheet(e)),["stop"]),class:"circle-border cursor-pointer mr-2",icon:"mdi-minus",size:"medium"},null,8,["onClick"]),(0,m._)("div",Yt,[(0,m._)("p",Pt,(0,k.zw)(e.time),1),(0,m._)("p",Lt,(0,k.zw)(e.employee_name)+" ("+(0,k.zw)(e.timestamp)+") ",1)])])))),128)):(0,m.kq)("",!0)])),_:1})])),_:1})])),_:1}),(0,m.Wm)(g.B,{"max-width":"750",modelValue:n.showModal,"onUpdate:modelValue":t[4]||(t[4]=e=>n.showModal=e),persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Nt,[qt,(0,m.Wm)(w.t,{onClick:t[1]||(t[1]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{modelValue:n.form.hours,"onUpdate:modelValue":t[2]||(t[2]=e=>n.form.hours=e),variant:"solo","bg-color":"white",type:"number",hint:n.v$.form.hours.$errors?n.errorUtils.parseErrors(n.v$.form.hours.$errors):null,class:(0,k.C_)([{error:n.v$.form.hours.$errors.length},"mb-2"]),label:"Odpracovaný čas"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{onClick:t[3]||(t[3]=e=>l.submit()),class:"button primary mt-5"},{default:(0,m.w5)((()=>[(0,m.Uk)("Potvrdiť")])),_:1})])),_:1})])),_:1},8,["modelValue"])],64)}var Rt=s(15941),Kt={mixins:[M],props:{hours:{type:Number,required:!0},subtask:{type:Object,required:!0}},data(){return{moment:Q(),v$:(0,O.ZP)(),errorUtils:z.Z,showModal:!1,form:{hours:null}}},validations(){return{form:{hours:{required:V.C1,numeric:V.uR,minValue:(0,V.uv)(.1)}}}},computed:{...(0,U.Se)("auth",["user"])},methods:{async submit(){if(!await this.v$.$validate())return;const e=JSON.parse(JSON.stringify(this.subtask));e.timesheets.push({id:null,employee_id:this.user.id,time:"string"==typeof this.form.hours?parseFloat(this.form.hours):this.form.hours}),e.deadline&&(e.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),this._update(e)},async deleteTimesheet({id:e}){const t=JSON.parse(JSON.stringify(this.subtask));t.timesheets=t.timesheets.filter((t=>t.id!=e)),t.deadline&&(t.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),this._update(t)},closeModal(){this.form={hours:null},this.showModal=!1,this.$nextTick((()=>this.v$.$reset()))},async _update(e){try{const t=e.timesheets.map((e=>(delete e.employee_name,e))),s=(e.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${e.id}`,{...e,timesheets:t,timeblocks:s});this.closeModal(),this.$events.emit("on-subtask-edited",a)}catch(t){this.$toast.error(t.message||t)}},_mergeDeadlineTimeDate(){const e=new Date(this.subtask.deadline);Rt.log("a-task-spent-time",this.subtask);const t=this.subtask._deadline_time.split(":");return e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),e}}};const Jt=(0,$.Z)(Kt,[["render",Bt],["__scopeId","data-v-dc6acca2"]]);var Gt=Jt;const Xt={class:"d-flex align-center"},Qt=(0,m._)("p",{class:"mx-3"},"Zostávajúci čas",-1);function es(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center border-bottom"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Xt,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Qt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours.toFixed(2))+" h",1)])),_:1})])),_:1})])),_:1})}var ts={props:{hours:{type:Number,required:!0}}};const ss=(0,$.Z)(ts,[["render",es]]);var as=ss,is=s(80678);const ns={class:"d-flex align-center"},ls=(0,m._)("p",{class:"mx-3"},"Deadline",-1);function os(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",ns,[(0,m.Wm)(w.t,{icon:"mdi-calendar-week",size:"large"}),ls])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[s.subtask.deadline?((0,m.wg)(),(0,m.iD)("p",{key:0,class:(0,k.C_)(""+(i.tmUtils.isAfter(s.subtask.deadline)?"text-black":"text-red-darken-4"))},(0,k.zw)(i.tmUtils.formatDate(s.subtask.deadline))+" "+(0,k.zw)(n.deadlineTime),3)):((0,m.wg)(),(0,m.j4)(is.N,{key:1,text:"Deadline z Mastertasku",location:"end"},{activator:(0,m.w5)((({props:e})=>[(0,m._)("span",(0,m.dG)({class:"cursor-pointer"},e),(0,k.zw)(n.getMasterTaskDeadline(s.subtask))+"*",17)])),_:1}))])),_:1})])),_:1})])),_:1})}var rs={props:{subtask:{type:[String,Object,null],required:!0}},computed:{...(0,U.Se)("tm",["mastertasks"]),deadlineTime(){const e=this.subtask?._deadline_time;return e?Q()(e,"HH:mm:ss").format("HH:mm"):""}},data(){return{tmUtils:A.Z}},methods:{getMasterTaskDeadline(e){return e?.deadline?e.deadline:e.master_task_deadline}}};const ds=(0,$.Z)(rs,[["render",os]]);var us=ds;const cs={key:0,class:"px-5 py-5 border-bottom"},ms=(0,m._)("p",null,"Popis zadania",-1),hs=["innerHTML"],ps={key:1,class:"px-5 py-5 border-bottom"},vs=(0,m._)("p",null,"Popis mastertasku",-1),ks=["innerHTML"];function fs(e,t,s,a,i,n){return(0,m.wg)(),(0,m.iD)(m.HY,null,[s.description?((0,m.wg)(),(0,m.iD)("div",cs,[ms,(0,m._)("section",{innerHTML:i.preparedDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,hs)])):(0,m.kq)("",!0),s.mastertaskDescription?((0,m.wg)(),(0,m.iD)("div",ps,[vs,(0,m._)("section",{innerHTML:i.preparedMastertaskDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,ks)])):(0,m.kq)("",!0)],64)}var _s=s(46215),bs=s.n(_s);const gs=(0,_s.useToast)();function ws(){const e=window.navigator.platform,t=["Macintosh","MacIntel","MacPPC","Mac68K"],s=["Win32","Win64","Windows","WinCE"];return-1!==t.indexOf(e)?"mac":(s.indexOf(e),"win")}function ys(e){if(!e)return e;const t=ws();return"mac"===t?(e=e.replace(/\\\\/g,"smb://"),e=e=e.replace(/(smb:\/\/[^\s<>"()]+)/g,(function(e){return''+e.replace(/\\/g,"/")+""}))):(e=e.replace(/smb:\/\//g,"\\\\"),e=e.replace(/(\\\\[^\s<>"()]+)/g,(function(e){return e=e.replaceAll("/","\\"),''+e+""}))),e}function Ds(e){return`\n\t\tif (navigator.clipboard && navigator.clipboard.writeText) {\n\t\t\tnavigator.clipboard.writeText('${e.replace(/\\/g,"\\\\")}').then(() => {\n\t\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t\t}).catch(err => {\n\t\t\t\twindow.toast.error('Failed to copy link to clipboard!')\n\t\t\t});\n\t\t} else {\n\t\t\tconst input = document.createElement('input');\n\t\t\tinput.style.position = 'fixed';\n\t\t\tinput.style.opacity = 0;\n\t\t\tinput.style.pointerEvents = 'none';\n\t\t\tinput.value = '${e.replace(/\\/g,"\\\\")}';\n\t\t\tdocument.body.appendChild(input);\n\t\t\tinput.select();\n\t\t\tinput.focus();\n\t\t\tdocument.execCommand('copy');\n\t\t\tdocument.body.removeChild(input);\n\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t}\n\t`}window.toast=gs;var Ms={props:{description:{type:String||null,default:()=>null},mastertaskDescription:{type:String||null,default:()=>null}},data(){return{copiedIndices:[],preparedDescription:"",preparedMastertaskDescription:""}},mounted(){this.preparedDescription=ys(this.description),this.preparedMastertaskDescription=ys(this.mastertaskDescription)}};const Ts=(0,$.Z)(Ms,[["render",fs]]);var $s=Ts;const Cs=e=>((0,m.dD)("data-v-f01fa1ac"),e=e(),(0,m.Cn)(),e),js=Cs((()=>(0,m._)("p",{class:"mt-5"},"Prílohy",-1))),Es={class:"w-100 d-flex align-center"},xs=["onClick"],Ws={key:0,class:"d-flex align-center"},Ss=["src"],Os=Cs((()=>(0,m._)("p",{class:"ml-2"},"Súbor sa sťahuje, počkajte prosím",-1)));function Vs(e,t,a,i,n,l){const o=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.iD)(m.HY,null,[js,(0,m._)("div",Es,[(0,m.Wm)(o,{content:a.files,emptyMessage:"Žiadne prílohy neboli nahraté"},{default:(0,m.w5)((()=>[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(a.files,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:(0,k.C_)(["d-flex align-center flex-wrap",[0===t?"ml-0":"ml-2"]])},[(0,m.Wm)(Te.v,{class:"mt-2"},{default:(0,m.w5)((()=>[(0,m._)("p",{onClick:t=>l.downloadFile(e),class:"cursor-pointer"},(0,k.zw)(e.name),9,xs),(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-paperclip"}),(0,m._)("p",null,(0,k.zw)((e.file_size/1048576).toFixed(2))+" MB",1)])),_:2},1024),e.isLoading?((0,m.wg)(),(0,m.iD)("div",Ws,[(0,m._)("img",{class:"gif-loader",src:s(14214),alt:"Loading..."},null,8,Ss),Os])):(0,m.kq)("",!0)],2)))),128))])),_:1},8,["content"])])],64)}var zs={props:{files:{type:Array,default:()=>[]}},data(){return{isLoading:!1}},methods:{async downloadFile(e){e.isLoading=!0;try{const t=await fetch(e.path),s=await t.blob();Ae.saveAs(s,e.name)}catch(t){this.$toast.error(this.$parseError(t))}finally{e.isLoading=!1}}}};const As=(0,$.Z)(zs,[["render",Vs],["__scopeId","data-v-f01fa1ac"]]);var Us=As,Hs={emits:["close-modal","update-subtask"],components:{ZFiles:Us,AMastertaskName:qe,AMastertaskStatus:et,ATaskTimeblocks:pt,ZCreatedBy:yt,ATaskAssignedEmployee:xt,ATaskPlannedTime:At,ATaskSpentTime:Gt,ATaskRemainingTime:as,ATaskDescription:$s,ATaskDeadline:us},props:{subtask:{type:Object,required:!0}}};const Zs=(0,$.Z)(Hs,[["render",Ue]]);var Is=Zs;const Fs={class:"timeblock w-100"},Ys={key:0,class:"x-button"},Ps={class:"splitted-time-inputs"};function Ls(e,t,s,a,i,n){const l=(0,m.up)("Datepicker");return(0,m.wg)(),(0,m.iD)("div",Fs,[s.deletable&&s.editable?((0,m.wg)(),(0,m.iD)("div",Ys,[(0,m._)("button",{onClick:t[0]||(t[0]=t=>e.$emit("removeTimeblock")),class:"x-button"},"x")])):(0,m.kq)("",!0),(0,m._)("div",{onClick:t[1]||(t[1]=(...e)=>n.handleDatepickerClick&&n.handleDatepickerClick(...e)),class:"datepicker-wrapper",ref:`timeblock-datepicker-wrapper-${s.index}`},[(0,m.Wm)(l,{"model-value":s.timeblock.date,ref:`timeblock-datepicker-${s.index}`,"onUpdate:modelValue":n.updateDate,format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum","auto-apply":!0,"enable-time-picker":!1,class:"mb-5 modal-input datepicker-input"},null,8,["model-value","onUpdate:modelValue"])],512),(0,m._)("div",Ps,[(0,m.Wm)(x.hw,{value:s.timeblock.starts_at_time,onInput:n.updateStartTime,class:(0,k.C_)({error:i.v$?.timeblock.starts_at_time.$errors.length}),type:"time",variant:"solo","bg-color":"white",label:"Začiatok"},null,8,["value","onInput","class"]),(0,m.Wm)(x.hw,{value:s.timeblock.ends_at_time,onInput:n.updateEndTime,class:(0,k.C_)({error:i.v$?.timeblock.ends_at_time.$errors.length}),type:"time",variant:"solo","bg-color":"white",label:"Koniec"},null,8,["value","onInput","class"])])])}var Ns={components:{Datepicker:Me.Z},props:{timeblock:{type:Object,required:!0},deletable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},preventInputFocus:{type:Boolean,default:!1},onInputFocus:{type:Function,default:()=>({})},onDateOpen:{type:Function,default:()=>({})},index:{type:Number}},data(){return{v$:(0,O.ZP)()}},validations(){return{timeblock:{starts_at_time:{required:(0,V.CF)(this.timeblock.date)},ends_at_time:{required:(0,V.CF)(this.timeblock.date)}}}},methods:{handleDatepickerClick(){const e=this.$refs[`timeblock-datepicker-wrapper-${this.index}`];this.onDateOpen(e),this.openDatepicker(`timeblock-datepicker-${this.index}`),setTimeout((()=>{const e=document.querySelector(".dp__menu.dp__menu_index.dp__theme_light");if(!e)return;const t=this.$refs[`timeblock-datepicker-wrapper-${this.index}`],s=document.querySelector(".v-overlay__content");if(!t||!s)return;const a=t.getBoundingClientRect(),i=s.getBoundingClientRect(),n=a.top-i.top+a.height;a.left,i.left;e.style.top=`${n+210}px`}),100)},async openDatepicker(e){this.$refs[e].openMenu()},updateDate(e){const t={...this.timeblock,date:e};this.$emit("updateTimeblock",t)},updateStartTime(e){const t={...this.timeblock,starts_at_time:e.target.value};this.$emit("updateTimeblock",t)},updateEndTime(e){const t={...this.timeblock,ends_at_time:e.target.value};this.$emit("updateTimeblock",t)}}};const qs=(0,$.Z)(Ns,[["render",Ls],["__scopeId","data-v-4d980d7a"]]);var Bs=qs,Rs=s(15941),Ks={emits:["close","refresh"],mixins:[Ve,ze,H.Z,M],components:{ZTaskReadonlyInfo:Is,ATimeblock:Bs,ZFilesUpload:Oe,Datepicker:Me.Z,QuillEditor:r.Bn},data(){return{tmUtils:A.Z,editMode:!1,visible:!1,subtask:null,isSaving:!1,errorUtils:z.Z,v$:(0,O.ZP)(),employeeValidations:[],showDatePicker:!1,selectedNewDate:[],timeblocks:[{date:null,starts_at_time:null,ends_at_time:null}],wasFormValidationTriggered:!1}},computed:{...(0,U.Se)("tm",["mastertasks","enrichedEmployees"]),enrichedMastertasks(){return this.mastertasks.map((e=>({...e,_fullName:`${e.name} [${e.project_code}]`})))},editableTimeblocks:{get(){return this.subtask?.id?this.subtask.timeblocks||[]:this.timeblocks},set(e){this.subtask?.id?this.subtask.timeblocks=e:this.timeblocks=e}}},validations(){return{subtask:{master_task_id:{required:V.C1},deadline:{required:V.C1},_deadline_time:{required:V.C1}}}},mounted(){this.$events.on("add-timeblock",(e=>{this.subtask?.timeblocks||(this.subtask.timeblocks=[]),this.subtask?.timesheets||(this.subtask.timesheets=[]),this.subtask?.is_finished||(this.subtask.is_finished=0),this.subtask.timeblocks.push(e)})),this.$events.on("on-subtask-edited",(e=>{if(e?.id!==this.subtask?.id)return;const t=JSON.parse(JSON.stringify(e)),s=t.deadline?.split(" ")||[];t.deadline=s[0],t._deadline_time=s[1];const a=[];t.timeblocks&&t.timeblocks.length>0&&t.timeblocks.forEach((e=>{if(e.date)a.push(e);else if(e.start&&e.end){const t=Q()(e.start,"YYYY-MM-DD HH:mm:ss"),s=Q()(e.end,"YYYY-MM-DD HH:mm:ss");a.push({id:e.id||null,date:t.toDate(),starts_at_time:t.format("HH:mm"),ends_at_time:s.format("HH:mm"),is_finished:e.is_finished||0})}})),t.timeblocks=a,this.subtask=this._enrichTask(t),this.$forceUpdate()})),this.$events.on("on-subtask-deleted",(e=>{e?.id==this.subtask?.id&&this.closeModal()}))},methods:{toggleEditMode(){if("office365"==this.subtask.type)return this.$events.emit("show-unable-to-edit-office-task-modal",{mode:"edit"});this.editMode=!this.editMode},openDatepicker(e){this.$refs[e].openMenu()},updateTimeblock(e,t){this.subtask?.id?this.subtask.timeblocks[t]=e:this.timeblocks[t]=e},addTimeblock(){const e={date:null,starts_at_time:null,ends_at_time:null};this.subtask?.id?(this.subtask.timeblocks||(this.subtask.timeblocks=[]),this.subtask.timeblocks.push(e)):this.timeblocks.push(e)},removeTimeblock(e){this.subtask?.id?this.subtask.timeblocks.splice(e,1):this.timeblocks.splice(e,1)},async showModal({subtask:e,editMode:t=!1,mastertask:s={}}){this.isSaving=!1,this.subtask=null,this.visible=!0,this.timeblocks=[{date:null,starts_at_time:null,ends_at_time:null}],this.$nextTick((()=>{this.v$.$reset(),this.setFocusEvent()}));try{if(e?.id){const s=await this.$axios.get_auth_data(`v1/subtasks/${e.id}`),a=[];if(s.timeblocks&&s.timeblocks.length>0&&s.timeblocks.forEach((e=>{if(e.date)a.push(e);else if(e.start&&e.end){const t=Q()(e.start,"YYYY-MM-DD HH:mm:ss"),s=Q()(e.end,"YYYY-MM-DD HH:mm:ss");a.push({id:e.id||null,date:t.toDate(),starts_at_time:t.format("HH:mm"),ends_at_time:s.format("HH:mm"),is_finished:e.is_finished||0})}})),s.timeblocks=a,!s.deadline)return this.editMode=t||!s.id,this.subtask=this._enrichTask(s);const i=s.deadline.split(" ");s.deadline=i[0],s._deadline_time=i[1],this.subtask=this._enrichTask(s)}else{const t=localStorage.getItem("subtaskData");try{if(!t)throw new Error("subtaskData is null or undefined");{const e=JSON.parse(t);if(this.subtask=e,"object"!==typeof this.subtask||null===this.subtask)throw new Error("Parsed subtask is not an object");this.$nextTick((()=>{this.$refs["description"]?.setHTML(this.subtask.description||"")}))}}catch(a){Rs.error("Error parsing subtaskData:",a),this.subtask={master_task:s,employees:[{}],_deadline_time:"17:00"}}if(e?.deadline&&e._deadline_time&&e.employee_id){const t=this.enrichedEmployees.find((t=>t.id==e.employee_id));this.subtask.employees=[t],this.subtask.deadline=e.deadline,this.subtask._deadline_time=e._deadline_time}e?.master_task_id&&e?.project_code&&(this.subtask.master_task_id=e.master_task_id,this.subtask.project_code=e.project_code)}this.editMode=t||!this.subtask.id}catch(a){this.$toast.error(this.$parseError(a))}},deleteTimeblock(e){this.subtask.timeblocks.splice(e,1)},closeModal(){this.visible=!1,this.$router.replace({name:this.$route.name})},async validateAllFields(){const e=await this._validateEmployees(),t=await this._validateTimeblocks();if(await this.v$.$validate()&&e&&t)return!0},async handleOnRemoveEmployee(){this.wasFormValidationTriggered&&setTimeout((async()=>{this.validateAllFields()}),100)},async save(){if(this.wasFormValidationTriggered=!0,await this.validateAllFields()){this.subtask.description=this.$refs["description"].getHTML(),this._mergeDeadlineTimeDate();try{if(this.isSaving=!0,this.subtask.deadline=Q()(this.subtask.deadline).format("YYYY-MM-DD HH:mm:SS"),this.subtask?.id){const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date)).map((e=>{const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:s}=await this.$axios.patch_auth_form(`v1/subtasks/${this.subtask.id}`,{...this.subtask,timesheets:e,timeblocks:t});localStorage.removeItem("subtaskData"),this.$store.commit("tm/update_subtask",s),this.$events.emit("on-subtask-edited",this.subtask)}else{const e=this.subtask.employees.filter((e=>e.id&&e.duration));e.forEach((e=>{e.timeblocks=this.timeblocks.filter((e=>e.date)).map((e=>({start:`${Q()(e.date).format("YYYY-MM-DD")} ${e.starts_at_time}:00`,end:`${Q()(e.date).format("YYYY-MM-DD")} ${e.ends_at_time}:00`,id:null})))}));const t={...this.subtask,employees:e};delete t._master_task;const{subtasks:s}=await this.$axios.post_auth(`v1/mastertasks/${this.subtask.master_task_id}/subtasks`,t);localStorage.removeItem("subtaskData"),this.subtask.id=s[0].id,s.forEach((e=>{this.$store.commit("tm/update_subtask",e),this.$events.emit("on-subtask-edited",this.subtask)})),this.$events.emit("task-created"),this.$events.emit("close-both-modals")}this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isSaving=!1}}},openDeleteTaskModal(e){if("office365"==e.type)return this.$events.emit("show-unable-to-edit-office-task-modal",{mode:"delete"});this.$events.emit("show-delete-task-modal",{subtask:e})},showCompleteTaskModal(){this.$events.emit("show-complete-task-modal",{subtask:this.subtask}),this.subtask.deadline&&(this.subtask.deadline=A.Z.formatDateTimeForBackend(this.subtask.deadline))},filesUploaded(e){this.subtask.files=e},updateSubtask(e){this.subtask=e},_mergeDeadlineTimeDate(){const e=new Date(this.subtask.deadline);Rs.log("z-task-modal",this.subtask);const t=this.subtask._deadline_time.split(":");e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),this.subtask.deadline=e},_validateEmployees(){return new Promise((e=>{if(this.employeeValidations=[],this.subtask.id)this.subtask.employee_id&&this.subtask.duration||(this.employeeValidations[0]={employee:!this.subtask.employee_id,duration:!this.subtask.duration});else{let e=!1;this.subtask.employees.forEach(((t,s)=>{t.id||t.duration?(t.id||t.duration)&&(this.employeeValidations[s]={employee:!t.id,duration:!t.duration},t.id&&t.duration&&(e=!0)):0!==s||e||(this.employeeValidations[s]={employee:!0,duration:!0})}))}const t=this.employeeValidations.some((e=>e.duration||e.employee));e(!t)}))},async _validateTimeblocks(){let e=!0;const t=this.editableTimeblocks;for(let s=0;st.id==e.created_by)),_employee:this.enrichedEmployees.find((t=>t.id==e.employee_id)),_master_task:this.mastertasks.find((t=>t.id==e.master_task_id))}}},watch:{"subtask.employee_id"(e,t){e&&t&&(this.subtask.timeblocks=[],this.subtask._employee=this.enrichedEmployees.find((e=>e.id==this.subtask.employee_id)))},"subtask.employees":{handler(){if(!this.subtask?.employees)return;const e=this.subtask.employees[this.subtask.employees.length-1];(e?.id||e?.duration)&&this.subtask.employees.push({})},deep:!0},"subtask.master_task_id"(e){e&&(this.subtask._master_task=this.mastertasks.find((e=>e.id==this.subtask.master_task_id)),this.subtask.project_code=this.subtask._master_task?.project_code||null)},editMode(){this.$nextTick((()=>{this.$refs["description"]?.setHTML(this.subtask.description||"")}))},subtask:{handler(e){if(this.editMode&&!this.subtask?.id){const t=e?.employees?.filter((e=>e?.id||e?.duration))||[{}],s={...e,employees:t&&t.length>0?t:[{}]};Rs.log("subtaskData",s),localStorage.setItem("subtaskData",JSON.stringify(s))}},deep:!0}}};const Js=(0,$.Z)(Ks,[["render",De],["__scopeId","data-v-3db8381d"]]);var Gs=Js;const Xs={class:"d-flex justify-space-between align-center"};function Qs(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Xs,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete zmazať "),(0,m._)("b",null,(0,k.zw)(n.blocker.name),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteBlocker()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var ea={mixins:[M],emits:["on-blocker-deleted"],data(){return{visible:!1,blocker:null,isDeleting:!1}},methods:{async showModal({blocker:e}){this.blocker=e,this.visible=!0},closeModal(){this.visible=!1},async deleteBlocker(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/blockers/${this.blocker.id}`),this.$emit("on-blocker-deleted",this.blocker),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}};const ta=(0,$.Z)(ea,[["render",Qs]]);var sa=ta;const aa={class:"d-flex justify-space-between align-center"};function ia(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",aa,[(0,m._)("h1",null,[(0,m.Uk)(" Ste si istý, že chcete "+(0,k.zw)(n.subtask.is_finished?"znovu otvoriť":"dokončiť")+" sub task, z mastertasku ",1),(0,m._)("b",null,(0,k.zw)(n.subtask?.master_task?.name||n.subtask.master_task),1),(0,m.Uk)("? ")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.complete())},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>n.visible=!1),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var na={mixins:[M],emits:["close","on-subtask-edited"],data(){return{visible:!1,subtask:null}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},async complete(){try{const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),s={...this.subtask,is_finished:this.subtask.is_finished?0:1,timesheets:e,timeblocks:t},{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${s.id}`,s);this.visible=!1,this.$emit("on-subtask-edited",a)}catch(e){this.$toast.error(this.$parseError(e))}},closeModal(){this.visible=!1}}};const la=(0,$.Z)(na,[["render",ia]]);var oa=la;const ra={class:"d-flex justify-space-between align-center"};function da(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",ra,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete "+(0,k.zw)(n.mastertask.is_finished?"znovu otvoriť":"dokončiť")+" ",1),(0,m._)("b",null,(0,k.zw)(n.mastertask?.name),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>n.visible=!1),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.complete())},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>n.visible=!1),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var ua={mixins:[M],emits:["close","master-task-edited"],data(){return{visible:!1,mastertask:null}},methods:{async showModal({mastertask:e}){this.mastertask=e,this.visible=!0},async complete(){try{const e={...this.mastertask,is_finished:this.mastertask.is_finished?0:1},{mastertask:t}=await this.$axios.put_auth(`v1/mastertasks/${e.id}`,e);this.visible=!1,this.$emit("master-task-edited",t),this.$events.emit("close-both-modals")}catch(e){this.$toast.error(this.$parseError(e))}}}};const ca=(0,$.Z)(ua,[["render",da]]);var ma=ca;const ha={class:"d-flex justify-space-between align-center"},pa=(0,m._)("h1",null,"Pridať odpracovaný čas",-1);function va(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{"max-width":"750",modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",ha,[pa,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{modelValue:n.form.hours,"onUpdate:modelValue":t[1]||(t[1]=e=>n.form.hours=e),variant:"solo","bg-color":"white",type:"number",hint:n.v$.form.hours.$errors?n.errorUtils.parseErrors(n.v$.form.hours.$errors):null,class:(0,k.C_)([{error:n.v$.form.hours.$errors.length},"mb-2"]),label:"Odpracovaný čas"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{onClick:t[2]||(t[2]=e=>l.submit()),class:"button primary mt-5"},{default:(0,m.w5)((()=>[(0,m.Uk)("Potvrdiť")])),_:1})])),_:1})])),_:1},8,["modelValue"])}var ka={mixins:[M],emits:["close","on-subtask-edited"],data(){return{v$:(0,O.ZP)(),errorUtils:z.Z,visible:!1,subtask:null,form:{hours:null}}},validations(){return{form:{hours:{required:V.C1,numeric:V.uR,minValue:(0,V.uv)(.1)}}}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0,this.form.hours=null,this.$nextTick((()=>this.v$.$reset()))},async submit(){if(!await this.v$.$validate())return;this.subtask.deadline&&(this.subtask.deadline=A.Z.formatDateTimeForBackend(this.subtask.deadline)),this.subtask.timesheets.push({id:null,employee_id:this.subtask.employee_id,time:"string"==typeof this.form.hours?parseFloat(this.form.hours):this.form.hours});const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),s={...this.subtask,timesheets:e,timeblocks:t};try{const{subtask:e}=await this.$axios.put_auth(`v1/subtasks/${this.subtask.id}`,s);this.closeModal(),this.$events.emit("on-subtask-edited",e)}catch(a){this.$toast.error(a.message||a)}},closeModal(){this.visible=!1,this.v$.$reset()}}};const fa=(0,$.Z)(ka,[["render",va]]);var _a=fa;const ba={class:"d-flex justify-space-between align-center modal-header"};function ga(e,t,s,i,n,l){const o=(0,m.up)("Datepicker"),r=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[7]||(t[7]=e=>n.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(r,{content:n.blocker,class:"h-100"},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,{height:"100%",class:"d-flex flex-column"},{default:(0,m.w5)((()=>[(0,m._)("div",ba,[(0,m._)("h1",null,(0,k.zw)(n.blocker.id?"Upraviť":"Vytvoriť")+" blocker",1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:n.v$.blocker.name.$errors.length}]),label:"Názov blockeru",hint:n.v$.blocker.name.$errors?n.errorUtils.parseErrors(n.v$.blocker.name.$errors):null,modelValue:n.blocker.name,"onUpdate:modelValue":t[1]||(t[1]=e=>n.blocker.name=e),variant:"solo"},null,8,["onFocus","class","hint","modelValue"]),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,clearable:"",label:"Vyhľadať zamestnanca",items:[...e.enrichedEmployees],"item-title":"_fullName","item-value":"id",variant:"solo",class:"modal-input",modelValue:n.blocker.employee_id,"onUpdate:modelValue":t[2]||(t[2]=e=>n.blocker.employee_id=e)},null,8,["custom-filter","items","modelValue"]),(0,m.Wm)(o,{class:(0,k.C_)(["modal-input mb-5",{error:n.v$.datepicker.$errors?.length}]),modelValue:n.datepicker,"onUpdate:modelValue":t[3]||(t[3]=e=>n.datepicker=e),"auto-apply":!0,format:"dd.MM.yyyy",locale:"sk",validations:n.v$.datepicker,"select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum","enable-time-picker":!1,ref:"datepicker"},null,8,["modelValue","class","validations"]),(0,m.Wm)(x.hw,{modelValue:n.starts_at_time,"onUpdate:modelValue":t[4]||(t[4]=e=>n.starts_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.starts_at_time.$errors?n.errorUtils.parseErrors(n.v$.starts_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.starts_at_time.$errors.length},"mb-1 modal-input"]),label:"Začiatok"},null,8,["modelValue","hint","class"]),(0,m.Wm)(x.hw,{modelValue:n.ends_at_time,"onUpdate:modelValue":t[5]||(t[5]=e=>n.ends_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.ends_at_time.$errors?n.errorUtils.parseErrors(n.v$.ends_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.ends_at_time.$errors.length},"modal-input"]),label:"Koniec"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{class:"button primary",onClick:t[6]||(t[6]=e=>l.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(n.blocker.id?"UPRAVIŤ":"VYTVORIŤ"),1)])),_:1})])),_:1})])),_:1},8,["content"])])),_:1},8,["modelValue"])}var wa={mixins:[Ve,H.Z,M],emits:["close"],components:{Datepicker:Me.Z},data(){return{visible:!1,v$:(0,O.ZP)(),errorUtils:z.Z,blocker:null,datepicker:null,starts_at_time:null,ends_at_time:null,employee:null}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),...(0,U.Se)("auth",["user"])},validations(){return{blocker:{name:{required:V.C1},start:{required:V.C1},end:{required:V.C1}},starts_at_time:{required:V.C1},ends_at_time:{required:V.C1},datepicker:{required:V.C1}}},methods:{async showModal({blocker:e}){this.visible=!0,this.blocker=null,this.datepicker=null,this.starts_at_time=null,this.ends_at_time=null,this.$nextTick((()=>{this.setFocusEvent(),this.v$.$reset()}));try{e?.id?(e=await this.$axios.get_auth_data(`v1/blockers/${e.id}`),this.starts_at_time=Q()(e.start).format("HH:mm"),this.ends_at_time=Q()(e.end).format("HH:mm"),this.datepicker=new Date(e.start),e.employee_id=e.employee.id,this.blocker=e):(this.blocker={start:null,employee_id:this.user.id},e.starts_at_time&&e.datepicker&&e.employee_id&&(this.datepicker=e.datepicker,this.starts_at_time=e.starts_at_time,this.blocker.employee_id=e.employee_id))}catch(t){this.$toast.error(this.$parseError(t))}},async save(){if(await this.v$.$validate())try{if(this.blocker.id){const{blocker:e}=await this.$axios.put_auth(`v1/blockers/${this.blocker.id}`,this.blocker);this.blocker=e}else{const{blocker:e}=await this.$axios.post_auth("v1/blockers",this.blocker);this.blocker=e}this.$events.emit("on-blocker-edited",this.blocker),this.$events.emit("blocker-created"),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}},closeModal(){this.$refs["datepicker"].clearValue(),this.visible=!1,this.$emit("close",this.blocker)},onEmployeeSelected({key:e}){this.blocker.employee=this.enrichedEmployees.find((t=>t.id==e))},_syncDatesTimes(){if(!this.starts_at_time||!this.ends_at_time||!this.datepicker)return;const e=this.starts_at_time.split(":"),t=this.ends_at_time.split(":");this.blocker.start=Q()(this.datepicker).set({hours:parseInt(e[0]),minutes:parseInt(e[1])}).format("YYYY-MM-DD HH:mm"),this.blocker.end=Q()(this.datepicker).set({hours:parseInt(t[0]),minutes:parseInt(t[1])}).format("YYYY-MM-DD HH:mm")}},watch:{ends_at_time(){this._syncDatesTimes()},starts_at_time(){this._syncDatesTimes()},datepicker(){this._syncDatesTimes()}}};const ya=(0,$.Z)(wa,[["render",ga]]);var Da=ya;const Ma={class:"d-flex justify-space-between align-center"};function Ta(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Ma,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete zmazať "),(0,m._)("b",null,(0,k.zw)(n.mastertask.name),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteMasterTask()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var $a={mixins:[M],emits:["on-mastertask-deleted"],data(){return{visible:!1,mastertask:null,isDeleting:!1}},methods:{async showModal({mastertask:e}){this.mastertask=e,this.visible=!0},closeModal(){this.visible=!1},async deleteMasterTask(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/mastertasks/${this.mastertask.id}`),this.$emit("on-mastertask-deleted",this.mastertask),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}};const Ca=(0,$.Z)($a,[["render",Ta]]);var ja=Ca,Ea=s(10240);const xa={class:"d-flex justify-space-between align-center modal-header"},Wa={class:"splitted-inputs"},Sa={class:"employee-select-avatar d-flex justify-center align-center"},Oa={class:"employee-select-avatar d-flex justify-center align-center"},Va={class:"d-flex justify-space-between align-center"},za={class:"d-flex justify-space-between align-center modal-header border-bottom pb-4"},Aa={class:"d-flex justify-start"},Ua=["src"],Ha=["src"],Za={class:"w-100"},Ia={class:"d-flex justify-start align-center mt-8"},Fa={class:"d-flex align-center"};function Ya(e,t,i,n,l,o){const r=(0,m.up)("Datepicker"),d=(0,m.up)("QuillEditor"),u=(0,m.up)("Z-files-upload"),c=(0,m.up)("A-mastertask-description"),h=(0,m.up)("A-tasks-table"),p=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:l.visible,"onUpdate:modelValue":t[18]||(t[18]=e=>l.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(p,{content:l.mastertask,class:"h-100"},{default:(0,m.w5)((()=>[l.editMode?((0,m.wg)(),(0,m.j4)(_._,{key:0,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",xa,[(0,m._)("h1",null,(0,k.zw)(l.mastertask?.id?"Upraviť master task":"Vytvoriť master task"),1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:l.mastertask.project_id,"onUpdate:modelValue":t[1]||(t[1]=e=>l.mastertask.project_id=e),label:e.$t("Project code"),class:(0,k.C_)([{error:l.v$.mastertask.project_id.$errors.length},"modal-input"]),items:e.projectsOptions,"item-title":"code","item-value":"id",variant:"solo",clearable:"","onUpdate:search":t[2]||(t[2]=e=>l.projectCodeSearch=e)},null,8,["custom-filter","modelValue","label","class","items"]),(0,m.Wm)(x.hw,{modelValue:l.mastertask.name,"onUpdate:modelValue":t[3]||(t[3]=e=>l.mastertask.name=e),onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:l.v$.mastertask.name.$errors.length}]),label:"Názov mastertasku",variant:"solo",hint:l.v$.mastertask.name.$errors?l.errorUtils.parseErrors(l.v$.mastertask.name.$errors):null},null,8,["modelValue","onFocus","class","hint"]),(0,m._)("div",Wa,[(0,m._)("div",{onClick:t[5]||(t[5]=(...e)=>o.handleDatepickerClick&&o.handleDatepickerClick(...e)),class:"datepicker-wrapper left",ref:"datepicker-wrapper"},[(0,m.Wm)(r,{modelValue:l.mastertask.deadline,"onUpdate:modelValue":t[4]||(t[4]=e=>l.mastertask.deadline=e),ref:"datepicker","auto-apply":!0,"min-date":new Date,class:(0,k.C_)(["modal-input datepicker-input",{error:l.v$.mastertask.deadline.$errors?.length}]),format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum",validations:l.v$.mastertask.deadline},null,8,["modelValue","min-date","class","validations"])],512),(0,m.Wm)(x.hw,{class:(0,k.C_)(["modal-input right",{error:l.v$.mastertask._deadline_time.$errors.length}]),variant:"solo",modelValue:l.mastertask._deadline_time,"onUpdate:modelValue":t[6]||(t[6]=e=>l.mastertask._deadline_time=e),label:"Čas","append-inner-icon":"mdi-clock-outline",type:"time",onFocus:e.onInputFocus,hint:l.v$.mastertask._deadline_time.$errors?l.errorUtils.parseErrors(l.v$.mastertask._deadline_time.$errors):null},null,8,["modelValue","onFocus","class","hint"])]),(0,m.Wm)(x.hw,{modelValue:l.mastertask.estimated_duration,"onUpdate:modelValue":t[7]||(t[7]=e=>l.mastertask.estimated_duration=e),onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:l.v$.mastertask.estimated_duration.$errors.length}]),variant:"solo",type:"number",label:"Nacenené hodiny",hint:l.v$.mastertask.estimated_duration.$errors?l.errorUtils.parseErrors(l.v$.mastertask.estimated_duration.$errors):null},null,8,["modelValue","onFocus","class","hint"]),(0,m.Wm)(x.hw,{modelValue:l.mastertask.duration,"onUpdate:modelValue":t[8]||(t[8]=e=>l.mastertask.duration=e),onFocus:e.onInputFocus,class:"modal-input",variant:"solo",type:"number",label:`${l.mastertask.duration} h`,disabled:!0},null,8,["modelValue","onFocus","label"]),(0,m.Wm)(Ea.r,{modelValue:l.mastertask.team_id,"onUpdate:modelValue":t[9]||(t[9]=e=>l.mastertask.team_id=e),onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input border-select",{error:l.v$.mastertask.employees.$errors.length}]),label:"Tím",variant:"solo",items:e.teams,"item-value":"id","item-title":"name",disabled:!!l.mastertask.id,clearable:!0},null,8,["modelValue","onFocus","class","items","disabled"]),l.mastertask.id?((0,m.wg)(!0),(0,m.iD)(m.HY,{key:1},(0,m.Ko)(l.mastertask._allEmployees,(e=>((0,m.wg)(),(0,m.j4)(x.hw,{key:e.id,class:"modal-input",label:`${e.name} ${e.surname}`,variant:"solo",placeholder:"h",modelValue:e.duration,"onUpdate:modelValue":t=>e.duration=t,type:"number",disabled:!0},{default:(0,m.w5)((()=>[(0,m._)("p",Oa,(0,k.zw)(e?.name.charAt(0)+e?.surname.charAt(0)),1),(0,m.Wm)(w.t,{onClick:(0,a.iM)((t=>o.removeEmployee(e)),["stop"]),class:"remove-input",icon:"mdi-close-circle",size:"default"},null,8,["onClick"])])),_:2},1032,["label","modelValue","onUpdate:modelValue"])))),128)):((0,m.wg)(!0),(0,m.iD)(m.HY,{key:0},(0,m.Ko)(l.mastertask.employees,((t,s)=>((0,m.wg)(),(0,m.j4)(x.hw,{key:t.id,onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:t.invalid}]),label:`${t.name} ${t.surname}`,variant:"solo",placeholder:"h",modelValue:l.mastertask.employees[s].duration,"onUpdate:modelValue":e=>l.mastertask.employees[s].duration=e,type:"number",min:"1",onInput:e.onEmployeeDurationChanged},{default:(0,m.w5)((()=>[(0,m._)("p",Sa,(0,k.zw)(t?.name.charAt(0)+t?.surname.charAt(0)),1),(0,m.Wm)(w.t,{onClick:(0,a.iM)((e=>o.removeEmployee(t)),["stop"]),class:"remove-input",icon:"mdi-close-circle",size:"default"},null,8,["onClick"])])),_:2},1032,["onFocus","class","label","modelValue","onUpdate:modelValue","onInput"])))),128)),l.showAddEmployeeInput?((0,m.wg)(),(0,m.j4)(E.f,{key:2,"custom-filter":e.customFilter,"match-any":!0,label:e.$t("Search for employee"),class:(0,k.C_)([{error:l.v$.mastertask.project_id.$errors.length},"modal-input"]),items:e.employeesOptions,"item-title":"_fullName","item-value":"id",variant:"solo",clearable:"","onUpdate:modelValue":e.onEmployeeSelected},null,8,["custom-filter","label","class","items","onUpdate:modelValue"])):(0,m.kq)("",!0),(0,m.Wm)(f.T,{disabled:!!l.mastertask.id,class:(0,k.C_)(["w-100 mb-5 button secondary",{error:l.v$.mastertask.project_id.$errors.length}]),onClick:t[10]||(t[10]=e=>l.showAddEmployeeInput=!0)},{default:(0,m.w5)((()=>[(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-plus"}),(0,m.Uk)("Pridať zamestnanca ")])),_:1},8,["disabled","class"]),(0,m._)("div",{class:(0,k.C_)(["w-100 modal-input",{error:l.v$.mastertask.description.$errors.length}])},[(0,m.Wm)(d,{ref:"description",modelValue:l.mastertask.description,"onUpdate:modelValue":t[11]||(t[11]=e=>l.mastertask.description=e),placeholder:"Popis",theme:"snow",class:"rich-text-editor",onKeyup:o.onQuillEditorInput},null,8,["modelValue","onKeyup"])],2),(0,m.Wm)(u,{class:"mt-15 files",files:l.mastertask.files,onFilesUploaded:o.filesUploaded,"is-saving":l.isSaving},null,8,["files","onFilesUploaded","is-saving"])])),_:1}),l.isSaving?((0,m.wg)(),(0,m.j4)(f.T,{key:1,class:"button primary disabled",disabled:""},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(e.$t("Ukladám...")),1)])),_:1})):((0,m.wg)(),(0,m.j4)(f.T,{key:0,class:"button primary",onClick:t[12]||(t[12]=e=>o.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(l.mastertask.id?"ULOŽIŤ":"VYTVORIŤ"),1)])),_:1}))])),_:1})):((0,m.wg)(),(0,m.j4)(_._,{key:1,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",Va,[(0,m._)("p",null,(0,k.zw)(l.mastertask.project_code),1),(0,m.Wm)(w.t,{onClick:t[13]||(t[13]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"pb-5"})]),(0,m._)("div",za,[(0,m._)("h1",null,(0,k.zw)(l.mastertask.name),1),(0,m._)("div",Aa,[l.mastertask.is_finished?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("img",{key:0,class:"icon",src:s(60666),alt:"pencil-icon",onClick:t[14]||(t[14]=(0,a.iM)((e=>l.editMode=!l.editMode),["stop"]))},null,8,Ua)),(0,m._)("img",{class:"icon trash",src:s(27484),alt:"trash-icon",onClick:t[15]||(t[15]=(0,a.iM)((e=>o.openDeleteMasterTaskModal(l.mastertask)),["stop"]))},null,8,Ha)])]),(0,m.Wm)(b.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m._)("div",Za,[(0,m.Wm)(c,{mastertask:l.mastertask},null,8,["mastertask"]),(0,m._)("div",Ia,[(0,m.Wm)(f.T,{class:"button primary",onClick:t[16]||(t[16]=e=>o.toggleIsFinished(l.mastertask))},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(l.mastertask.is_finished?"Otvoriť mastertask":"Ukončiť mastertask"),1)])),_:1})]),(0,m.Wm)(h,{subtasks:l.mastertask.subtasks},null,8,["subtasks"]),(0,m._)("div",Fa,[(0,m.Wm)(f.T,{class:"subtask-btn w-100",onClick:t[17]||(t[17]=e=>o.addTask())},{default:(0,m.w5)((()=>[(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-plus"}),(0,m.Uk)("Pridať sub task")])),_:1})])])])),_:1})])),_:1}))])),_:1},8,["content"])])),_:1},8,["modelValue"])}var Pa=s(4413);const La={class:"px-5 py-5"},Na={key:0,class:"w-25"},qa={key:1,class:"w-50"},Ba={class:"d-flex align-center"},Ra={class:"employee-selected-avatar d-flex justify-center align-center"},Ka={class:"ml-2 line-clamp"},Ja={key:0,class:"text-light-green"},Ga={key:1},Xa={class:"task-action"},Qa={class:"d-flex justify-start align-center"},ei=["src","onClick"],ti=["src"],si=["src","onClick"],ai=["src","onClick"],ii=["src","onClick"],ni=["src","onClick"];function li(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(Pa.Y,{class:"mt-7 mb-5"},{default:(0,m.w5)((()=>[(0,m._)("tbody",La,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.enrichedtasks,(e=>((0,m.wg)(),(0,m.iD)("tr",{key:e.id},[e?.title?((0,m.wg)(),(0,m.iD)("td",Na,(0,k.zw)(e.title),1)):((0,m.wg)(),(0,m.iD)("td",qa,(0,k.zw)(e?.master_task),1)),(0,m._)("td",Ba,[(0,m._)("p",Ra,(0,k.zw)(e._employeeInitials),1),(0,m._)("p",Ka,(0,k.zw)(e._employeeFullName),1)]),(0,m._)("td",null,[e.is_finished?((0,m.wg)(),(0,m.iD)("p",Ja,"Ukončený")):(0,m.kq)("",!0),e.is_finished?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("p",Ga,"Neukončený"))]),(0,m._)("td",Xa,[(0,m._)("div",Qa,["office365"==s.subtasks.type?((0,m.wg)(),(0,m.iD)(m.HY,{key:0},[(0,m._)("img",{class:"pencil-icon ml-2",src:n.eye,alt:"pencil-icon",onClick:(0,a.iM)((t=>l.openTaskModal(e)),["stop"])},null,8,ei),(0,m._)("img",{class:"office-icon",src:n.office365},null,8,ti)],64)):((0,m.wg)(),(0,m.iD)(m.HY,{key:1},[e.is_finished?((0,m.wg)(),(0,m.iD)("img",{key:0,class:"pencil-icon is-finished",src:n.checkmark,alt:"checkmark-icon",onClick:(0,a.iM)((t=>l.clickCompleteTask(e)),["stop"])},null,8,si)):(0,m.kq)("",!0),e.is_finished?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("img",{key:1,class:"pencil-icon",src:n.checkmark,alt:"checkmark-icon",onClick:(0,a.iM)((t=>l.clickCompleteTask(e)),["stop"])},null,8,ai)),(0,m._)("img",{class:"pencil-icon ml-2",src:n.eye,alt:"pencil-icon",onClick:(0,a.iM)((t=>l.openTaskModal(e)),["stop"])},null,8,ii),(0,m._)("img",{class:"trash-icon",src:n.bin,alt:"trash-icon",onClick:(0,a.iM)((t=>l.openDeleteTaskModal(e)),["stop"])},null,8,ni)],64))])])])))),128))])])),_:1})}var oi=s(65687),ri={props:{subtasks:{type:Array,required:!0}},data(){return{checkmark:oi.d2,bin:oi.Ly,eye:oi.iy,office365:oi.QS}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),enrichedtasks(){return this.subtasks.map((e=>{const t=this.enrichedEmployees.find((t=>t.id==e.employee_id));return{...e,_employeeInitials:t?t._initials:"?",_employeeFullName:t?t._fullName:""}}))}},methods:{openDeleteTaskModal(e){this.$events.emit("show-delete-task-modal",{subtask:e})},openTaskModal(e){this.$events.emit("show-subtask-modal",{subtask:e,editMode:!1})},async clickCompleteTask(e){this.$events.emit("show-complete-task-modal",{subtask:e})}}};const di=(0,$.Z)(ri,[["render",li],["__scopeId","data-v-753dec0e"]]);var ui=di;function ci(e,t,s,a,i,n){const l=(0,m.up)("Z-status"),o=(0,m.up)("Z-deadline"),r=(0,m.up)("Z-created-by"),d=(0,m.up)("Z-team"),u=(0,m.up)("Z-estimated-duration"),c=(0,m.up)("Z-planned-time"),h=(0,m.up)("Z-remaining-time"),p=(0,m.up)("Z-spent-time"),v=(0,m.up)("Z-description"),k=(0,m.up)("Z-files");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(l,{status:s.mastertask.is_finished},null,8,["status"]),(0,m.Wm)(o,{deadline:s.mastertask.deadline},null,8,["deadline"]),(0,m.Wm)(r,{"employee-id":s.mastertask.created_by},null,8,["employee-id"]),(0,m.Wm)(d,{team:s.mastertask.team,employees:s.mastertask._allEmployees||s.mastertask.employees},null,8,["team","employees"]),(0,m.Wm)(u,{hours:s.mastertask.estimated_duration},null,8,["hours"]),(0,m.Wm)(c,{hours:s.mastertask.duration},null,8,["hours"]),(0,m.Wm)(h,{hours:s.mastertask.duration-s.mastertask.time_worked},null,8,["hours"]),(0,m.Wm)(p,{hours:s.mastertask.time_worked,"is-exceeded":s.mastertask.time_worked>s.mastertask.duration},null,8,["hours","is-exceeded"]),(0,m.Wm)(v,{description:s.mastertask.description},null,8,["description"]),(0,m.Wm)(k,{files:s.mastertask.files},null,8,["files"])],64)}const mi={class:"d-flex align-center"},hi=(0,m._)("p",{class:"mx-3"},"Deadline",-1);function pi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",mi,[(0,m.Wm)(w.t,{icon:"mdi-calendar-week",size:"large"}),hi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",{class:(0,k.C_)(""+(i.tmUtils.isAfter(s.deadline)?"text-black":"text-red-darken-4"))},(0,k.zw)(i.tmUtils.formatDateTime(s.deadline)),3)])),_:1})])),_:1})])),_:1})}var vi={props:{deadline:{type:String,required:!0}},data(){return{tmUtils:A.Z}}};const ki=(0,$.Z)(vi,[["render",pi]]);var fi=ki;const _i={key:0,class:"px-5 py-5 border-bottom"},bi=(0,m._)("p",null,"Popis zadania",-1),gi=["innerHTML"],wi={key:1,class:"px-5 py-5 border-bottom"},yi=(0,m._)("p",null,"Popis mastertasku",-1),Di=["innerHTML"];function Mi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.iD)(m.HY,null,[s.description?((0,m.wg)(),(0,m.iD)("div",_i,[bi,(0,m._)("section",{innerHTML:i.preparedDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,gi)])):(0,m.kq)("",!0),s.inheritedDescription?((0,m.wg)(),(0,m.iD)("div",wi,[yi,(0,m._)("section",{innerHTML:i.preparedInheritedDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,Di)])):(0,m.kq)("",!0)],64)}var Ti={props:{description:{type:String||null,default:()=>null},inheritedDescription:{type:String||null,default:()=>null}},data(){return{copiedIndices:[],preparedDescription:"",preparedInheritedDescription:""}},mounted(){this.preparedDescription=ys(this.description),this.preparedInheritedDescription=ys(this.inheritedDescription)}};const $i=(0,$.Z)(Ti,[["render",Mi]]);var Ci=$i;const ji={class:"d-flex align-center"},Ei=(0,m._)("p",{class:"mx-3"},"Naplánovaný čas",-1);function xi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",ji,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Ei])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1})])),_:1})])),_:1})}var Wi={props:{hours:{type:Number,required:!0}}};const Si=(0,$.Z)(Wi,[["render",xi]]);var Oi=Si;const Vi={class:"d-flex align-center"},zi=(0,m._)("p",{class:"mx-3"},"Zostávajúci čas",-1);function Ai(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center border-bottom"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Vi,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),zi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1})])),_:1})])),_:1})}var Ui={props:{hours:{type:Number,required:!0}}};const Hi=(0,$.Z)(Ui,[["render",Ai]]);var Zi=Hi;const Ii={class:"d-flex align-center"},Fi=(0,m._)("p",{class:"mx-3"},"Odpracovaný čas",-1);function Yi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Ii,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Fi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",{class:(0,k.C_)(s.isExceeded?"text-red-darken-4":"text-black")},(0,k.zw)(s.hours)+" h",3)])),_:1})])),_:1})])),_:1})}var Pi={props:{hours:{type:Number,required:!0},isExceeded:{type:Boolean,required:!0}}};const Li=(0,$.Z)(Pi,[["render",Yi]]);var Ni=Li;const qi={class:"d-flex align-center"},Bi=(0,m._)("p",{class:"mx-3"},"Status",-1),Ri={key:0,class:"status-badge px-4 py-2 rounded-pill"},Ki={key:1,class:"status-badge px-4 py-2 rounded-pill"};function Ji(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",qi,[(0,m.Wm)(w.t,{icon:"mdi-drag-vertical",size:"large"}),Bi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[1==s.status?((0,m.wg)(),(0,m.iD)("p",Ri,"Ukončený")):0==s.status?((0,m.wg)(),(0,m.iD)("p",Ki,"Neukončený")):(0,m.kq)("",!0)])),_:1})])),_:1})])),_:1})}var Gi={props:{status:{type:Number,required:!0}}};const Xi=(0,$.Z)(Gi,[["render",Ji]]);var Qi=Xi;const en={class:"d-flex align-center"},tn=(0,m._)("p",{class:"mx-3"},"Tím",-1),sn={class:"task-badge px-4 py-2 rounded-pill flex-shrink-0"},an={class:"employee-selected-avatar d-flex justify-center align-center"},nn={class:"ml-2"},ln=(0,m._)("div",{class:"mb-4"},null,-1),on=(0,m._)("p",{class:"task-badge px-4 py-2 rounded-pill flex-shrink-0"},"Nepriradený",-1),rn={class:"employee-selected-avatar d-flex justify-center align-center"},dn={class:"ml-2"};function un(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",en,[(0,m.Wm)(w.t,{icon:"mdi-account-multiple-outline",size:"large"}),tn])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3 d-flex flex-wrap flex-column"},{default:(0,m.w5)((()=>[s.team?((0,m.wg)(),(0,m.iD)(m.HY,{key:0},[(0,m._)("p",sn,(0,k.zw)(s.team.name),1),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.enrichedEmployeesInTeam,(e=>((0,m.wg)(),(0,m.iD)("div",{class:"d-flex align-center flex-shrink-0 mt-2 task-badge px-4 py-2 rounded-pill",key:e.id},[(0,m._)("p",an,(0,k.zw)(e._initials),1),(0,m._)("p",nn,(0,k.zw)(e._fullName),1)])))),128)),ln],64)):(0,m.kq)("",!0),on,((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.enrichedEmployeesOutsideTeam,(e=>((0,m.wg)(),(0,m.iD)("div",{class:"d-flex align-center flex-shrink-0 mt-2 task-badge px-4 py-2 rounded-pill",key:e.id},[(0,m._)("p",rn,(0,k.zw)(e._initials),1),(0,m._)("p",dn,(0,k.zw)(e._fullName),1)])))),128))])),_:1})])),_:1})])),_:1})}var cn={props:{team:{type:Object,required:!1},employees:{type:Array,required:!0}},computed:{enrichedEmployeesInTeam(){return this.team?.employees?A.Z.enrichEmployees(this.team.employees):[]},enrichedEmployeesOutsideTeam(){if(!this.team)return A.Z.enrichEmployees(this.employees);const e=this.employees.filter((e=>!this.team.employees.find((t=>t.id==e.id))));return A.Z.enrichEmployees(e)}}};const mn=(0,$.Z)(cn,[["render",un]]);var hn=mn;const pn={class:"d-flex align-center"},vn=(0,m._)("p",{class:"mx-3"},"Nacenené hodiny",-1);function kn(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",pn,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),vn])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours||0)+" h",1)])),_:1})])),_:1})])),_:1})}var fn={props:{hours:{type:[Number,void 0]}}};const _n=(0,$.Z)(fn,[["render",kn]]);var bn=_n,gn={components:{ZCreatedBy:yt,ZDeadline:fi,ZDescription:Ci,ZFiles:Us,ZPlannedTime:Oi,ZRemainingTime:Zi,ZSpentTime:Ni,ZStatus:Qi,ZTeam:hn,ZEstimatedDuration:bn},props:{mastertask:{type:Object,required:!0}}};const wn=(0,$.Z)(gn,[["render",ci]]);var yn=wn,Dn=s(15941),Mn={emits:["master-task-edited","close"],mixins:[Ve,ze,H.Z,M],components:{AMastertaskDescription:yn,ATasksTable:ui,Datepicker:Me.Z,ZFilesUpload:Oe,QuillEditor:r.Bn},data(){return{deadline:null,editMode:!1,visible:!1,errorUtils:z.Z,v$:(0,O.ZP)(),mastertask:null,isSaving:!1,showAddEmployeeInput:!1,date:null,projectCodeSearch:null}},computed:{...(0,U.Se)("tm",["teams","projects","enrichedEmployees"]),enrichedSubtasks(){return this.mastertask?.subtasks?this.mastertask.subtasks.map((e=>{const t=this.enrichedEmployees.find((t=>t.id==e.employee_id));return{...e,_initials:t?t.name.charAt(0)+t.surname.charAt(0):"?",_fullName:t?`${t.name} ${t.surname}`:""}})).filter((e=>null!==e)):null}},validations(){const e=e=>!!(e&&e.length&&e.replace(/<[^>]*>/g,"").length);return{mastertask:{employees:{required:V.C1,minLength:(0,V.Ei)(1),$each:{duration:{required:V.C1}}},project_id:{required:V.C1},name:{required:V.C1},description:{quillEditorRequired:e},deadline:{required:V.C1},estimated_duration:{required:V.C1},_deadline_time:{required:V.C1}}}},mounted(){this.$events.on("close-both-modals",this.closeBothModals),this.$events.on("master-task:team-member-deleted",(({teamId:e,memberId:t})=>{this.mastertask.team_id==e&&(this.mastertask.employees=this.mastertask.employees.filter((e=>e.id!=t)))})),this.$events.on("on-mastertask-deleted",(e=>{e?.id==this.mastertask?.id&&this.closeModal()})),this.$events.on("on-subtask-deleted",(e=>{this.mastertask&&(this.mastertask.subtasks=this.mastertask.subtasks.filter((t=>t.id!=e.id)))})),this.$events.on("on-subtask-edited",(e=>{this.mastertask?.subtasks&&(this.mastertask.subtasks.find((t=>t.id==e.id))?this.mastertask.subtasks=this.mastertask.subtasks.map((t=>t.id==e.id?e:t)):this.mastertask.subtasks.push(e))}))},beforeUnmount(){this.$events.off("on-mastertask-deleted"),this.$events.off("on-subtask-deleted"),this.$events.off("on-subtask-edited"),this.$events.off("master-task:team-member-deleted"),this.$events.off("close-both-modals",this.closeBothModals)},methods:{handleDatepickerClick(){const e=this.$refs["datepicker-wrapper"];this.onDateOpen(e),this.$refs["datepicker"].openMenu()},closeBothModals(){this.$emit("close"),this.visible=!1},removeEmployee({id:e}){this.mastertask.employees=this.mastertask.employees.filter((t=>t.id!=e))},removeMemberAlert(e){const t=this.mastertask.team;this.$events.emit("show-delete-team-member-modal",{member:e,team:t})},async loadMastertask(e){try{this.mastertask=await this.$axios.get_auth_data(`v1/mastertasks/${e}`);const t=this.projects.find((e=>e.code==this.mastertask.project_code));this.mastertask.project_id=t?.id||null,this.mastertask.team_id=this.mastertask.team?.id||null,this.mastertask._allEmployees=this.mastertask.subtasks.map((({employee_id:e,duration:t})=>{const s=this.enrichedEmployees.find((({id:t})=>t==e));return s?(s.duration=t,s):null})).filter((e=>null!==e))}catch(t){this.$toast.error(t.message||t)}},async showModal({mastertask:e,editMode:t=!1}){this.isSaving=!1,this.editMode=null,this.visible=!0,this.mastertask=null,this.$nextTick((()=>{this.setFocusEvent(),this.v$.$reset()}));try{if(e?.id)await this.loadMastertask(e.id);else{const e=localStorage.getItem("mastertaskData");try{if(!e)throw new Error("mastertaskData is null or undefined");{const t=JSON.parse(e);if(this.mastertask=t,"object"!==typeof this.mastertask||null===this.mastertask)throw new Error("Parsed mastertask is not an object");this.$nextTick((()=>{this.$refs["description"]?.setHTML(this.mastertask.description||"")}))}}catch(s){Dn.error("Error parsing mastertaskData:",s),this.mastertask={employees:[],duration:0,_deadline_time:"17:00"}}}this.editMode=t||!this.mastertask.id}catch(s){this.$toast.error(s.message||s)}},toggleIsFinished(){this.$events.emit("show-complete-master-task-modal",{mastertask:this.mastertask})},async save(){this.mastertask.id&&(this.mastertask.employees=this.mastertask.employees.map((e=>{const{duration:t}=this.mastertask.subtasks.find((({employee_id:t})=>t==e.id))||{};return e.duration=t||0,e})));const e=await this.v$.$validate(),t=await this._validateEmployees();if(e&&t){this.$refs["description"]&&(this.mastertask.description=this.$refs["description"].getHTML()),this._mergeDeadlineTimeDate();try{this.isSaving=!0,this.mastertask.deadline=Q()(this.mastertask.deadline).format("YYYY-MM-DD HH:MM:SS"),this.mastertask.id?await this.$axios.patch_auth_form(`v1/mastertasks/${this.mastertask.id}`,this.mastertask):await this.$axios.post_auth_data("v1/mastertasks",this.mastertask),localStorage.removeItem("mastertaskData"),this.$emit("master-task-edited",this.mastertask),this.closeModal()}catch(s){this.$toast.error(this.$parseError(s))}finally{this.isSaving=!1}}},filesUploaded(e){this.mastertask.files=e},closeModal(){this.visible=!1},openDeleteMasterTaskModal(e){this.$events.emit("show-delete-master-task-modal",{mastertask:e})},addTask(){this.$events.emit("show-subtask-modal",{subtask:{master_task_id:this.mastertask.id,project_code:this.mastertask.project_code}})},onQuillEditorInput(){this.mastertask.description=this.$refs["description"].getHTML()},_mergeDeadlineTimeDate(){const e=new Date(this.mastertask.deadline);Dn.log("z-master-task-modal",this.subtask);const t=this.mastertask._deadline_time.split(":");e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),this.mastertask.deadline=e},_validateEmployees(){let e=!0;return this.mastertask.employees=this.mastertask.employees.map((t=>(null!==t.duration&&void 0!==t.duration||(t.invalid=!0,e=!1),t))),e}},watch:{editMode(){this.$nextTick((()=>{if(this.$refs["description"]?.setHTML(this.mastertask.description||""),!this.mastertask?.id)return;const e=new Date(this.mastertask.deadline),t=e.getHours(),s=e.getMinutes();this.mastertask._deadline_time=`${t.toString().padStart(2,"0")}:${s.toString().padStart(2,"0")}`}))},mastertask:{handler(e){this.editMode&&!this.mastertask?.id&&localStorage.setItem("mastertaskData",JSON.stringify(e))},deep:!0},"mastertask.team_id":{handler(e,t){if(this.editMode&&!e&&t){const e=this.teams.find((e=>e.id==t))?.employees.map((e=>e?.id))||[],s=this.mastertask.employees.filter((t=>!e.includes(t?.id)));this.mastertask.employees=s}},deep:!0},"$route.query":{handler(e,t){t?.subtask?.length&&this.mastertask?.id&&this.loadMastertask(this.mastertask.id)},deep:!0}}};const Tn=(0,$.Z)(Mn,[["render",Ya],["__scopeId","data-v-ea627ecc"]]);var $n=Tn,Cn=s(41888),jn=s(89234);const En=(0,m._)("h1",{class:"text-h5"}," Chcete túto osobu odstrániť z tímu? ",-1);function xn(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:i.visible,"onUpdate:modelValue":t[2]||(t[2]=e=>i.visible=e),"max-width":"500",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[En,(0,m.Wm)(Cn.Z,null,{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(i.member.name+" "+i.member.surname)+" bude odstránený/á z teamu.",1)])),_:1}),(0,m.Wm)(b.h,null,{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button secondary",variant:"text",onClick:t[0]||(t[0]=e=>n.closeModal())},{default:(0,m.w5)((()=>[(0,m.Uk)(" Zrušiť ")])),_:1}),(0,m.Wm)(jn.C),(0,m.Wm)(f.T,{class:"button primary",variant:"text",onClick:t[1]||(t[1]=e=>n.deleteMember())},{default:(0,m.w5)((()=>[(0,m.Uk)(" Áno ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var Wn={mixins:[M],data(){return{visible:!1,member:null,team:null}},methods:{async showModal({member:e,team:t}){this.member=e,this.team=t,this.visible=!0},closeModal(){this.visible=!1},async deleteMember(){this.team.employees=[...this.team.employees].filter((e=>e.id!==this.member.id));try{if(this.team.id){const{team:e}=await this.$axios.put_auth(`v1/teams/${this.team.id}`,this.team);this.$store.commit("tm/update_team",e)}else{const{team:e}=await this.$axios.post_auth("v1/teams",this.team);this.$store.commit("tm/save_team",e)}this.$events.emit("master-task:team-member-deleted",{teamId:this.team.id,memberId:this.member.id}),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}},_enrichTeam(e){return e.employees=A.Z.enrichEmployees(e.employees),e}}};const Sn=(0,$.Z)(Wn,[["render",xn]]);var On=Sn;const Vn={class:"d-flex justify-space-between align-center"},zn=(0,m._)("h1",null,"Vytvoriť",-1);function An(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Vn,[zn,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(b.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[1]||(t[1]=(0,a.iM)((e=>l.createTask()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("SUB TASK")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.createBlocker()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("BLOCKER")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var Un={emits:["update","data"],props:["data"],mixins:[M],data(){return{visible:!1,localData:null}},mounted(){this.$events.on("blocker-created",(()=>{this.closeModal()})),this.$events.on("task-created",(()=>{this.closeModal()}))},methods:{async showModal(e){this.localData=e,this.visible=!0},closeModal(){this.visible=!1},createTask(){this.$events.emit("show-subtask-modal",{subtask:{deadline:this.localData.date,_deadline_time:this.localData.time,employee_id:this.localData.employee},onTaskCreated:()=>{this.closeModal()}})},createBlocker(){this.$events.emit("show-blocker-modal",{blocker:{starts_at_time:this.localData.time,datepicker:this.localData.date,employee_id:this.localData.employee},onBlockerCreated:()=>{this.closeModal()}})}}};const Hn=(0,$.Z)(Un,[["render",An]]);var Zn=Hn;const In={class:"d-flex justify-space-between align-center"},Fn={key:0},Yn={key:1};function Pn(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[1]||(t[1]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",In,["edit"===s.mode?((0,m.wg)(),(0,m.iD)("h1",Fn,"Sub Task zosynchronizovaný z Office365 sa nedá upravovat. Upravte ho vo svojom kalendári a pockajte na zosynchronizovanie s Task Managerom")):"delete"===s.mode?((0,m.wg)(),(0,m.iD)("h1",Yn,"Sub Task zosynchronizovaný z Office365 sa nedá zmazať. Zmažte ho vo svojom kalendári a pockajte na zosynchronizovanie s Task Managerom")):(0,m.kq)("",!0),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})])])),_:1})])),_:1},8,["modelValue"])}var Ln=s(15941),Nn={mixins:[M],emits:["close","on-subtask-edited"],props:{mode:{type:String,default:"edit"}},data(){return{visible:!1,subtask:null}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},async complete(){Ln.log("complete")},closeModal(){this.visible=!1}}};const qn=(0,$.Z)(Nn,[["render",Pn]]);var Bn=qn;const Rn=e=>((0,m.dD)("data-v-f007e35e"),e=e(),(0,m.Cn)(),e),Kn={class:"d-flex justify-space-between align-center"},Jn=Rn((()=>(0,m._)("h1",null,"Sub Task má nedokončené úlohy",-1))),Gn={class:"card-content"},Xn={class:"card-actions"};function Qn(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(g.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Kn,[Jn,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m._)("div",Gn,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.subtask?.timeblocks,(e=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center mb-3"},[(0,m._)("p",{class:(0,k.C_)(["task-badge rounded-pill",{"strike-through":e.is_finished}])},(0,k.zw)(n.tmUtils.formatDateTime(e.start))+" - "+(0,k.zw)(n.tmUtils.formatDateTime(e.end)),3),(0,m.Wm)(w.t,{onClick:(0,a.iM)((t=>l.handleFinishTimeblock(e)),["stop"]),class:(0,k.C_)(["finish-icon circle-border cursor-pointer ml-2",{disabled:n.loadingTimeblocks[e.id]||n.loadingCloseAll,finished:e.is_finished}]),icon:"mdi-check",size:"medium"},null,8,["onClick","class"])])))),128))]),(0,m._)("div",Xn,[(0,m.Wm)(f.T,{onClick:t[1]||(t[1]=e=>l.closeModal()),class:"button secondary"},{default:(0,m.w5)((()=>[(0,m.Uk)("Zrušiť")])),_:1}),(0,m.Wm)(f.T,{onClick:t[2]||(t[2]=e=>l.handleFinishAllTimeblocks()),loading:n.loadingCloseAll,class:"button primary"},{default:(0,m.w5)((()=>[(0,m.Uk)("Uzatvoriť všetky")])),_:1},8,["loading"])])])),_:1})])),_:1},8,["modelValue"])}var el=s(15941),tl={mixins:[M],emits:["close","on-subtask-edited"],props:{mode:{type:String,default:"edit"}},data(){return{tmUtils:A.Z,visible:!1,subtask:null,loadingTimeblocks:{},loadingCloseAll:!1}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},async complete(){el.log("complete")},closeModal(){this.visible=!1},async handleFinishTimeblock(e){const t=JSON.parse(JSON.stringify(this.subtask));try{this.loadingTimeblocks[e.id]=!0,await this.$axios.put_auth(`v1/timeblocks/${e.id}`,{...e,is_finished:1}),e.is_finished=1;const s=t.timeblocks.every((e=>e.is_finished));s&&(await this._finishSubtask(),this.$store.dispatch("tm/removeOngoingSubtask",this.subtask.id)),this.$events.emit("on-subtask-edited",t),this.closeModal()}catch(s){this.$toast.error(s.message||s)}finally{this.loadingTimeblocks[e.id]=!1}},async handleFinishAllTimeblocks(){this.loadingCloseAll=!0;try{const e=this.subtask.timeblocks.map((e=>this.$axios.put_auth(`v1/timeblocks/${e.id}`,{...e,is_finished:1})));await Promise.all(e),this.subtask.timeblocks=this.subtask.timeblocks.map((e=>(e.is_finished=1,e))),await this._finishSubtask(),this.$store.dispatch("tm/removeOngoingSubtask",this.subtask.id),this.$events.emit("on-subtask-edited",this.subtask),this.closeModal()}catch(e){this.$toast.error(e.message||e)}finally{this.loadingCloseAll=!1}},async _finishSubtask(){const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),s={...this.subtask,is_finished:1,timesheets:e,timeblocks:t};return this.$axios.put_auth(`v1/subtasks/${s.id}`,s)}}};const sl=(0,$.Z)(tl,[["render",Qn],["__scopeId","data-v-f007e35e"]]);var al=sl,il={components:{ZDeleteTeamModal:j,ZTeamModal:Y,ZDeleteTaskModal:B,ZDeleteBlockerModal:sa,ZTaskModal:Gs,ZMasterTaskModal:$n,ZCompleteTaskModal:oa,ZTaskAddTimeModal:_a,ZBlockerModal:Da,ZDeleteMasterTaskModal:ja,ZDeleteTeamMemberModal:On,ZShowMenuModal:Zn,ZCompleteMasterTaskModal:ma,ZDeleteTimeBlockModal:se,ZUnableToEditOfficeTaskModal:Bn,ZUnableToCompleteTaskModal:al},mounted(){this.$events.on("show-menu-modal",(e=>{this.$refs["z-show-menu-modal"].showModal(e)})),this.$events.on("show-delete-team-modal",(({team:e})=>{this.$refs["z-delete-team-modal"].showModal({team:e})})),this.$events.on("show-team-modal",(({team:e})=>{this.$refs["z-team-modal"].showModal({team:e})})),this.$events.on("show-delete-task-modal",(({subtask:e})=>{this.$refs["z-delete-task-modal"].showModal({subtask:e})})),this.$events.on("show-delete-timeblock-modal",(({subtask:e})=>{this.$refs["z-delete-timeblock-modal"].showModal({subtask:e})})),this.$events.on("show-delete-blocker-modal",(({blocker:e})=>{this.$refs["z-delete-blocker-modal"].showModal({blocker:e})})),this.$events.on("show-delete-master-task-modal",(({mastertask:e})=>{this.$refs["z-delete-master-task-modal"].showModal({mastertask:e})})),this.$events.on("show-delete-team-member-modal",(({member:e,team:t})=>{this.$refs["z-delete-team-member-modal"].showModal({member:e,team:t})})),this.$events.on("show-subtask-modal",(({subtask:e,editMode:t,mastertask:s})=>{if(e&&e.id){const t=e.id;this.$router.push({query:{subtask:t}})}this.$refs["z-task-modal"].showModal({subtask:e,editMode:t,mastertask:s})})),this.$events.on("show-mastertask-modal",(({mastertask:e,editMode:t})=>{if(e&&e.id){const t=e.id;this.$router.push({query:{mastertask:t}})}this.$refs["z-master-task-modal"].showModal({mastertask:e,editMode:t})})),this.$events.on("show-complete-task-modal",(({subtask:e})=>{this.$refs["z-complete-task-modal"].showModal({subtask:e})})),this.$events.on("show-complete-master-task-modal",(({mastertask:e})=>{this.$refs["z-complete-master-task-modal"].showModal({mastertask:e})})),this.$events.on("show-blocker-modal",(({blocker:e={}})=>{this.$refs["z-blocker-modal"].showModal({blocker:e})})),this.$events.on("show-task-add-time-modal",(({subtask:e})=>{this.$refs["z-task-add-time-modal"].showModal({subtask:e})})),this.$events.on("on-subtask-edited",(()=>{this.$store.dispatch("tm/reloadSubtasks")})),this.$events.on("on-mastertask-edited",(()=>{this.$store.dispatch("tm/reloadMastertasks")})),this.$events.on("on-mastertask-deleted",(()=>{this.$store.dispatch("tm/reloadMastertasks")})),this.$events.on("show-unable-to-edit-office-task-modal",(({mode:e})=>{this.$refs["z-unable-to-edit-office-task-modal"].showModal({mode:e})})),this.$events.on("show-unable-to-complete-task-modal",(({subtask:e})=>{this.$refs["z-unable-to-complete-task-modal"].showModal({subtask:e})})),this._showModalsAfterInicialization()},methods:{onTeamUpdate(e){this.$events.emit("on-team-update",e)},onTaskDeleted(e){this.$events.emit("on-subtask-deleted",e)},onBlockerDeleted(e){this.$events.emit("on-blocker-deleted",e)},onTaskEdited(e){this.$events.emit("on-subtask-edited",e)},onMasterTaskDeleted(e){this.$events.emit("on-mastertask-deleted",e)},onMasterTaskEdited(e){this.$events.emit("on-mastertask-edited",e)},_showModalsAfterInicialization(e=0){setTimeout((()=>e>50?this.$router.push({name:this.$route.name}):this.$store.getters["tm/isInitialized"]?this.$route.query["mastertask"]?this.$events.emit("show-mastertask-modal",{mastertask:{id:this.$route.query["mastertask"]},editMode:!1}):this.$route.query["subtask"]?this.$events.emit("show-subtask-modal",{subtask:{id:this.$route.query["subtask"]},editMode:!1}):void 0:this._showModalsAfterInicialization(e+1)),300)}}};const nl=(0,$.Z)(il,[["render",v]]);var ll=nl,ol=s(22483),rl=(0,U.MT)({state:{},getters:{},mutations:{},actions:{},modules:{}});const dl=[{path:"",redirect:"/auth"},{path:"/auth/",component:()=>s.e(9033).then(s.bind(s,99033)),children:[{path:"",redirect:"/auth/login"},{path:"/auth/login",name:"Login",component:()=>s.e(1097).then(s.bind(s,21097)),meta:{requiresAuth:!1}},{path:"/auth/forgot-password",name:"Forgot password",component:()=>s.e(924).then(s.bind(s,40924)),meta:{requiresAuth:!1}},{path:"/auth/forgot-success",name:"Forgot success",component:()=>s.e(8731).then(s.bind(s,28731)),meta:{requiresAuth:!1}},{path:"/auth/reset-password",name:"Reset password",component:()=>s.e(4518).then(s.bind(s,54518)),meta:{requiresAuth:null}}]},{path:"/app",component:()=>s.e(2612).then(s.bind(s,32612)),children:[{path:"",redirect:"/app/dashboard"},{path:"/app/dashboard",redirect:"/app/dashboard/tasks",children:[{path:"/app/dashboard/tasks",name:"Dashboard - Tasks",meta:{title:"Sub Tasks",requiresAuth:!0},component:()=>Promise.all([s.e(4578),s.e(8059)]).then(s.bind(s,53440))},{path:"/app/dashboard/teams",name:"Dashboard - Teams",meta:{title:"Teams Overview",requiresAuth:!0},component:()=>Promise.all([s.e(4578),s.e(5456)]).then(s.bind(s,63124))},{path:"/app/dashboard/projects",name:"Dashboard - Projects",meta:{title:"Projects overview",requiresAuth:!0},component:()=>s.e(3862).then(s.bind(s,3862))},{path:"/app/overview/unscheduled",name:"Overview - Unscheduled tasks",meta:{title:"Unscheduled Sub Tasks",requiresAuth:!0},component:()=>s.e(9407).then(s.bind(s,89407))},{path:"/app/overview/ongoing",name:"Overview - Ongoing tasks",meta:{title:"Ongoing Sub Tasks",requiresAuth:!0},component:()=>s.e(1277).then(s.bind(s,21277))},{path:"/app/overview/teams",name:"Overview - Teams",meta:{title:"Teams",requiresAuth:!0},component:()=>s.e(7073).then(s.bind(s,97073))},{path:"/app/dashboard/user",name:"Dashboard - User",meta:{title:"Profile",requiresAuth:!0},component:()=>s.e(907).then(s.bind(s,20907))},{path:"/app/search",name:"Search",meta:{title:"Search Results",requiresAuth:!0},component:()=>s.e(4392).then(s.bind(s,44392))}]}]},{path:"/:catchAll(.*)",name:"404",component:()=>s.e(188).then(s.bind(s,60188)),meta:{requiresAuth:null}}],ul=(0,ol.p7)({history:(0,ol.r5)("/"),routes:dl});ul.beforeEach(((e,t,s)=>{const a=rl.getters["auth/isLoggedIn"];return!0===e.meta.requiresAuth?a?s():s({name:"Login"}):!1===e.meta.requiresAuth&&a?s({name:"Dashboard - Tasks"}):s()}));var cl=ul,ml=s(34311),hl=s(15941);ml.Z.defaults.baseURL="https://tm.jandl.sk/api/";var pl={async get(e,t){return ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async get_auth(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async get_data(e,t){return ml.Z.get(e,t).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async get_auth_data(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>Promise.resolve(e.data.data))).catch((e=>Promise.reject(e.response||e)))},async post(e,t=null,s){return ml.Z.post(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async post_auth(e,t=null,s){return s=this._config(s),ml.Z.post(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async post_data(e,t=null,s){return ml.Z.post(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async post_auth_data(e,t=null,s){return s=this._config(s),ml.Z.post(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async delete(e,t){return ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async delete_auth(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async delete_data(e,t){return ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async delete_auth_data(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async patch(e,t=null,s){return ml.Z.patch(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async patch_auth(e,t=null,s){return s=this._config(s),ml.Z.patch(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async patch_data(e,t=null,s){return ml.Z.patch(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async patch_auth_data(e,t=null,s){return s=this._config(s),ml.Z.patch(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async put(e,t=null,s){return ml.Z.put(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async put_auth(e,t=null,s){return s=this._config(s),ml.Z.put(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async put_data(e,t=null,s){return ml.Z.put(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async put_auth_data(e,t=null,s){return s=this._config(s),ml.Z.put(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},_config(e){return e&&hl.error("NOT IMPLEMENTED"),rl.getters["auth/token"]?{headers:{Authorization:`Bearer ${rl.getters["auth/token"]}`}}:{headers:{}}}},vl={install:(e,t)=>{t&&!0===t.disabled||(e.config.globalProperties.$axios=pl)}},kl=s(82482);const fl=e=>Object.entries(e).map((e=>e.map(encodeURIComponent).join("="))).join("&");function _l(e){let t=e;return t=t.replace(/\//g,"\\/"),t=t.replace(/\./g,"\\."),t=t.replace(/\([^)]+\)/g,"[^/]+"),t}var bl=s(15941);class gl{constructor(){(0,kl.Z)(this,"_mocks",{}),ml.Z.interceptors.request.use(this._redirectRequestToMock.bind(this)),this._mocks={}}mock(e){for(const t in e){let s=e[t];!1!==s&&(s={},s.name=t,s.url=t.split(" ")[1],s.reUrl||(s.reUrl=_l(s.url)),s.matchMethod||(s.matchMethod=t.split(" ")[0].toLowerCase()),this._mocks[t]=s)}}_redirectRequestToMock(e){const t=e.url.replace(/https?:\/\/[^/?]+/,"");let s;for(const a in this._mocks){const i=this._mocks[a];if(e.method==i.matchMethod&&t.match(i.reUrl)){s=i;break}}if(s){s.fname||(s.fname={VUE_APP_WAXIOS_URL:"https://tm.jandl.sk/api/",NODE_ENV:"production",BASE_URL:"/"}.VUE_APP_PLATFORM?`/mock/${{VUE_APP_WAXIOS_URL:"https://tm.jandl.sk/api/",NODE_ENV:"production",BASE_URL:"/"}.VUE_APP_PLATFORM}/${s.url}.${e.method.toUpperCase()}.json`:`/mock/${s.url}.${e.method.toUpperCase()}.json`),bl.log(s.fname=`/mock/${s.url}.${e.method.toUpperCase()}.json`);const t={method:"get",url:window.location.origin+s.fname+"?___MOCK___&"+fl(e.data||{})};e={...e,...t}}return e}}var wl={install:(e,t)=>{const s=new gl;t&&t.routes&&Object.values(t.routes).length&&!0!==t.disabled&&s.mock(t.routes)}},yl=s(8069),Dl={install:(e,t)=>{if(t&&!0===t.disabled)return;const s=(0,yl.Z)();e.config.globalProperties.$events=s}},Ml=s(44870),Tl=s(5658),$l=s(31310),Cl=s(15941);class jl{constructor(e){(0,kl.Z)(this,"currentLanguage",(0,Ml.iH)()),(0,kl.Z)(this,"availableLanguages",void 0),(0,kl.Z)(this,"vendorI18n",void 0),(0,kl.Z)(this,"defaultLanguage",void 0),(0,kl.Z)(this,"languageKey",void 0),(0,kl.Z)(this,"_missingTranslation",((e,t,s,a)=>t)),(0,kl.Z)(this,"_postTranslation",(e=>e)),this.availableLanguages=e.languages||[],this.defaultLanguage=e.languages.find((t=>t.value==e.defaultLanguage)),this.languageKey=e.languageKey||{VUE_APP_WAXIOS_URL:"https://tm.jandl.sk/api/",NODE_ENV:"production",BASE_URL:"/"}.VUE_APP_PLATFORM+"_language"||0,this.vendorI18n=(0,Tl.o)({legacy:!0,fallbackLocale:this.defaultLanguage.value,messages:this._loadLocaleMessages(),missing:this._missingTranslation,postTranslation:this._postTranslation}),this.changeLanguage({title:"Slovenský",flag:"sk",value:"sk"}),this.initCurrentLanguage()}async initCurrentLanguage(){const{value:e}=await $l.u.get({key:this.languageKey});if(e)this.currentLanguage.value=JSON.parse(e);else if(this.defaultLanguage)this.currentLanguage.value=this.defaultLanguage;else{if(!this.availableLanguages[0])return Cl.error("[w18n] Could not init current language");this.currentLanguage.value=this.availableLanguages[0]}const t={};this.availableLanguages.forEach((e=>{t[e.value]=e.title})),this.changeLanguage(this.currentLanguage.value),this._addAxiosHeaders()}changeLanguage(e){this.currentLanguage.value=e,this._addAxiosHeaders(),$l.u.set({key:this.languageKey,value:JSON.stringify(e)}),this.vendorI18n.global.locale=e.value}_addAxiosHeaders(){ml.Z.interceptors.request.use((e=>(this.currentLanguage.value&&this.currentLanguage.value.value&&(e.headers["Accept-Language"]=this.currentLanguage.value.value),e))),ml.Z.interceptors.response.use((e=>e),(e=>Promise.reject(e?.response||e)))}_loadLocaleMessages(e="@/locales"){let t;try{t=s(8973)}catch(i){return Cl.warn("[@wezeo/i18n] Could not initialize i18n. Missing folder /src/locales."),{}}const a={};return t.keys().forEach((e=>{const s=e.match(/([A-Za-z0-9-_]+)\./i);if(s&&s.length>1){const i=s[1];a[i]=t(e)}})),a}}var El=s(15941),xl={install:(e,t)=>{if(t&&!0===t.disabled)return;if(!t||!t.languages||!t.defaultLanguage)return El.warn("[@wezeo/i18n] Could not initialize i18n. Missing configuration options.");e.config.globalProperties.$events||e.use(Dl);const s=new jl(t);e.use(s.vendorI18n),e.config.globalProperties.$w18n=s}},Wl={install:(e,t)=>{t&&!0===t.disabled||(e.component("ion-content",i.W2),e.component("ion-page",i._i),e.component("ion-label",i.Q$),e.component("ion-back-button",i.oU),e.component("ion-checkbox",i.nz),e.component("ion-text",i.yW),e.component("ion-button",i.YG),e.component("ion-item",i.Ie),e.component("ion-item-group",i.Ub),e.component("ion-item-sliding",i.td),e.component("ion-item-option",i.u8),e.component("ion-item-options",i.IK),e.component("ion-toolbar",i.sr),e.component("ion-header",i.Gu),e.component("ion-footer",i.fr),e.component("ion-slides",i.Hr),e.component("ion-slide",i.A$),e.component("ion-spinner",i.PQ),e.component("ion-row",i.Nd),e.component("ion-col",i.wI),e.component("ion-grid",i.jY),e.component("ion-input",i.pK),e.component("ion-buttons",i.Sm),e.component("ion-icon",i.gu),e.component("ion-img",i.Xz),e.component("ion-list",i.q_),e.component("ion-skeleton-text",i.CK),e.component("ion-title",i.wd),e.component("ion-menu",i.z0),e.component("ion-split-pane",i.jI),e.component("ion-menu-button",i.fG),e.component("ion-router-outlet",i.jP),e.component("ion-segment",i.cJ),e.component("ion-segment-button",i.GO),e.component("ion-virtual-scroll",i.aJ),e.component("ion-textarea",i.g2),e.component("ion-searchbar",i.VI),e.component("ion-refresher-content",i.Wo),e.component("ion-refresher",i.nJ),e.component("ion-infinite-scroll-content",i.MB),e.component("ion-infinite-scroll",i.ju),e.component("ion-avatar",i.BJ),e.component("ion-thumbnail",i.Bs),e.component("ion-modal",i.ki),e.component("ion-radio-group",i.se),e.component("ion-radio",i.B7),e.component("ion-note",i.uN),e.component("ion-card",i.PM),e.component("ion-card-content",i.FN),e.component("ion-tab-bar",i.yq),e.component("ion-tab-button",i.ZU),e.component("ion-menu-toggle",i.zc),e.component("ion-fab",i.IJ),e.component("ion-fab-button",i.W4),e.component("ion-fab-list",i.zq),e.component("ion-reorder-group",i.oz),e.component("ion-reorder",i.Nh),e.component("ion-select",i.t9),e.component("ion-select-option",i.n0),e.component("ion-toggle",i.ho),e.component("ion-badge",i.yp),e.component("ion-chip",i.hM),e.component("ion-tabs",i.UN))}};async function Sl(e){return"Unauthenticated."==e?.response?.data?.message?rl.dispatch("auth/logout"):Promise.reject(e)}ml.Z.interceptors.response.use((e=>e),(e=>Sl(e)));var Ol=s(15941),Vl={namespaced:!0,state:{token:localStorage.getItem("wzo_vue_user_token")||"",user:JSON.parse(localStorage.getItem("wzo_vue_user_user")||"{}")},mutations:{auth_success(e,t){t.token&&(e.token=t.token,localStorage.setItem("wzo_vue_user_token",t.token)),t.user&&(e.user=t.user,localStorage.setItem("wzo_vue_user_user",JSON.stringify(t.user)))},auth_error(e){e.token="",localStorage.removeItem("wzo_vue_user_token"),localStorage.removeItem("wzo_vue_user_user")},logout(e){e.token="",e.user=null,localStorage.removeItem("wzo_vue_user_token"),localStorage.removeItem("wzo_vue_user_user"),window.open(location.origin,"_self")}},actions:{login({commit:e},t){return new Promise(((s,a)=>{pl.post("v1/tokens/create",{data:t}).then((t=>{const a=t.token,i=t.user;e("auth_success",{token:a,user:i}),s(t)})).catch((t=>{e("auth_error"),a(t)}))}))},signup({commit:e},t){return new Promise(((s,a)=>{e("auth_request"),pl.post_data("v1/auth/signup",t).then((t=>{const a=t.token,i=t.user;e("auth_success",{token:a,user:i}),s(t)})).catch((t=>{e("auth_error"),a(t)}))}))},logout({commit:e}){return new Promise((t=>{pl.post_auth_data("v1/auth/invalidate").finally((()=>{e("logout"),t(null)}))}))},forgotPassword({commit:e},t){return new Promise(((e,s)=>{pl.post("v1/users/forgot",{data:t}).then((t=>e(t))).catch((e=>s(e)))}))},resetPassword({commit:e},t){return e("auth_success",{token:t.token}),new Promise(((s,a)=>{pl.post_auth_data("v1/users/reset",{data:t}).then((t=>{e("logout"),s(t)})).catch((e=>a(e)))}))},async refreshToken({commit:e}){try{const t=await pl.post_auth_data("v1/auth/refresh"),s=t.token,a=t.user;return e("auth_success",{token:s,user:a}),s}catch(t){e("auth_error"),Ol.error(t)}},async userInfo({commit:e}){return new Promise(((t,s)=>{pl.get_auth_data("v1/auth/info").then((s=>{const a=s.user;e("auth_success",{user:a}),t(a)})).catch((e=>{s(e)}))}))},updateUserInfo({commit:e},t){return new Promise(((s,a)=>{pl.put_auth(`v1/users/${t.id}`,{data:t}).then((t=>{const a=t.user;e("auth_success",{user:a}),s(a)})).catch((e=>{a(e)}))}))}},getters:{isLoggedIn:e=>!!e.token,user:e=>e.user,token:e=>e.token&&void 0!=e.token?e.token:null}},zl=s(15941),Al={install:(e,t)=>{if(!t||1!=t.disabled)return e.config.globalProperties.$store?void e.config.globalProperties.$store.registerModule("auth",Vl):zl.warn("[w/auth] Could not initialize. App does not have vuex store added.")}},Ul={install:(e,t)=>{t&&!0===t.disabled||(e.use(bs()),e.config.globalProperties.$parseError=e=>e?.data?.message||e?.response?.data?.message||e?.message||e)}};const Hl={ref:"loadingContainer"},Zl={key:0},Il={key:1},Fl={key:2};function Yl(e,t,s,a,i,n){return(0,m.wg)(),(0,m.iD)("div",Hl,[s.content?s.content.error?((0,m.wg)(),(0,m.iD)("div",Il,(0,k.zw)(s.content.error),1)):"array"==typeof s.content&&!e.array.length||"object"==typeof s.content&&!Object.values(s.content).length?((0,m.wg)(),(0,m.iD)("div",Fl,(0,k.zw)(s.emptyMessage),1)):(0,m.WI)(e.$slots,"default",{key:3},void 0,!0):((0,m.wg)(),(0,m.iD)("div",Zl))],512)}var Pl={props:{content:{type:[Object,Array,Boolean],default:()=>null},emptyMessage:{type:String,default:"No items"}},data(){return{loader:null}},async mounted(){this.content||await this._startLoading()},methods:{async _startLoading(){},_stopLoading(){}},watch:{}};const Ll=(0,$.Z)(Pl,[["render",Yl],["__scopeId","data-v-a2444234"]]);var Nl=Ll,ql={install:(e,t)=>{t&&!0===t.disabled||e.component("W-loadable",Nl)}},Bl={install:(e,t={})=>{Dl.install(e,t.events),vl.install(e,t.axios),xl.install(e,t.i18n),wl.install(e,t.moxios),Wl.install(e,t.ionic),Al.install(e,t.auth),Ul.install(e,t.toast),ql.install(e,t.loadable)}},Rl={parseAndTranslate(e){const t=this._parseToArrayOfStrings(e);return t.join(", ")},_parseToArrayOfStrings(e){return e?.data?.message?[Nr(e.data.message)]:"string"==typeof e?[Nr(e)]:e?.response?.data?Object.values(e?.response?.data):e&&e.error&&"string"==typeof e.error?[Nr(e.error)]:e&&e.error&&"object"==typeof e.error?Object.values(Nr(e.error)):e.data&&e.data.error&&"string"==typeof e.data.error?[Nr(e.data.error)]:e&&e.data&&e.data.error&&"object"==typeof e.data.error?Object.values(e.data.error).map((e=>Nr(e[0])+" ")):e.statusText?[Nr(e.statusText)]:[e]}},Kl=s(15941);ml.Z.defaults.baseURL="https://tm.jandl.sk/api/";var Jl={async get(e,t){return ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async get_auth(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async get_data(e,t){return ml.Z.get(e,t).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async get_auth_data(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>Promise.resolve(e.data.data))).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async post(e,t=null,s){return ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async post_auth(e,t=null,s){return s=this._config(s),ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async post_data(e,t=null,s){return ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async post_auth_data(e,t=null,s){return s=this._config(s),ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async delete(e,t){return ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async delete_auth(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async delete_data(e,t){return ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async delete_auth_data(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async patch(e,t=null,s){return ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async patch_auth(e,t=null,s){return s=this._config(s),ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async patch_auth_form(e,t=null,s){s=this._config(s),s.headers["Content-Type"]="multipart/form-data";const a=this._objectToFormData(t);return a.append("_method","put"),s.transformRequest=e=>e,ml.Z.post(e,a,s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async patch_data(e,t=null,s){return ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async patch_auth_data(e,t=null,s){return s=this._config(s),ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async put(e,t=null,s){return ml.Z.put(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async put_auth(e,t=null,s){return s=this._config(s),ml.Z.put(e,{data:t},s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async put_data(e,t=null,s){return ml.Z.put(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async put_auth_data(e,t=null,s){return s=this._config(s),ml.Z.put(e,{data:t},s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},_config(e){return e&&Kl.error("NOT IMPLEMENTED"),rl.getters["auth/token"]?{headers:{Authorization:`Bearer ${rl.getters["auth/token"]}`}}:{headers:{}}},_buildFormData(e,t,s){!t||"object"!==typeof t||t instanceof Date||t instanceof File?e.append(s,null==t?"":t):Object.keys(t).forEach((a=>this._buildFormData(e,t[a],s?`${s}[${a}]`:a)))},_objectToFormData(e){const t=new FormData;return this._buildFormData(t,{data:e}),t}},Gl={install:(e,t)=>{t&&!0===t.disabled||(e.config.globalProperties.$axios=Jl)}},Xl={namespaced:!0,state:{mastertasks:null,employees:null,teams:null,projects:null,unscheduledSubtasks:null,ongoingSubtasks:null,initialized:!1,ongoingSubtasksEmployeeId:null,unscheduledSubtasksEmployeeId:null},mutations:{set_mastertasks(e,t){e.mastertasks=t},set_employees(e,t){e.employees=t},set_teams(e,t){e.teams=t},set_projects(e,t){e.projects=t},set_unscheduled_subtasks(e,t){e.unscheduledSubtasks=t},set_ongoing_subtasks(e,t){e.ongoingSubtasks=t},remove_ongoing_subtask(e,t){e.ongoingSubtasks=e.ongoingSubtasks.filter((e=>e.id!=t))},update_team(e,t){e.teams=e.teams.map((e=>e.id==t.id?t:e))},save_team(e,t){e.teams.push(t)},delete_team(e,t){e.teams=e.teams.filter((e=>e.id!=t.id))},update_subtask(e,t){e.unscheduledSubtasks=e.unscheduledSubtasks.map((e=>e.id==t.id?t:e)),e.ongoingSubtasks=e.ongoingSubtasks.map((e=>e.id==t.id?t:e))},delete_subtask(e,t){e.unscheduledSubtasks=e.unscheduledSubtasks.filter((e=>e.id!=t.id)),e.ongoingSubtasks=e.ongoingSubtasks.filter((e=>e.id!=t.id))},set_ongoing_subtasks_employee_id(e,t){e.ongoingSubtasksEmployeeId=t},set_unscheduled_subtasks_employee_id(e,t){e.unscheduledSubtasksEmployeeId=t},initialized(e){e.initialized=!0}},actions:{initialize({dispatch:e,commit:t}){return Promise.all([e("loadMastertasks"),e("loadEmployees"),e("loadTeams"),e("loadProjects"),e("loadUnscheduledSubtasks"),e("loadOngoingSubtasks")]).then((()=>t("initialized")))},reloadSubtasks({dispatch:e}){return Promise.all([e("loadMastertasks"),e("loadProjects"),e("loadUnscheduledSubtasks"),e("loadOngoingSubtasks")])},reloadMastertasks({dispatch:e}){return Promise.all([e("loadMastertasks")])},loadMastertasks({commit:e}){return new Promise(((t,s)=>{Jl.get_auth("v1/mastertasks/?simple=true").then((({mastertasks:s})=>{e("set_mastertasks",s),t(s)})).catch((t=>{e("set_mastertasks",{error:t}),s(t)}))}))},loadEmployees({commit:e}){return new Promise(((t,s)=>{Jl.get_auth_data("v1/employees").then((s=>{e("set_employees",s),t(s)})).catch((t=>{e("set_employees",{error:t}),s(t)}))}))},loadTeams({commit:e}){return new Promise(((t,s)=>{Jl.get_auth_data("v1/teams").then((s=>{e("set_teams",s),t(s)})).catch((t=>{e("set_teams",{error:t}),s(t)}))}))},loadProjects({commit:e}){return new Promise(((t,s)=>{Jl.get_auth_data("v1/projects").then((s=>{e("set_projects",s),t(s)})).catch((t=>{e("set_projects",{error:t}),s(t)}))}))},loadUnscheduledSubtasks({commit:e,state:t},s){let a;return s?(a=s,e("set_unscheduled_subtasks_employee_id",s)):a=t.unscheduledSubtasksEmployeeId?t.unscheduledSubtasksEmployeeId:rl.getters["auth/user"]?.id,new Promise(((t,s)=>{Jl.get_auth(`v1/subtasks?type=unscheduled&employee_id=${a}`).then((({subtasks:s})=>{e("set_unscheduled_subtasks",s),t(s)})).catch((t=>{e("set_unscheduled_subtasks",{error:t}),s(t)}))}))},loadOngoingSubtasks({commit:e,state:t},s){let a;return s?(a=s,e("set_ongoing_subtasks_employee_id",s)):t.ongoingSubtasksEmployeeId?a=t.ongoingSubtasksEmployeeId:(a=rl.getters["auth/user"]?.id,e("set_ongoing_subtasks_employee_id",a)),new Promise(((t,s)=>{Jl.get_auth(`v1/subtasks?type=ongoing&employee_id=${a}`).then((({subtasks:s})=>{e("set_ongoing_subtasks",s),t(s)})).catch((t=>{e("set_ongoing_subtasks",{error:t}),s(t)}))}))},removeOngoingSubtask({commit:e},t){e("remove_ongoing_subtask",t)}},getters:{mastertasks:e=>e.mastertasks,employees:e=>e.employees,enrichedEmployees:e=>e.employees?e.employees.map((e=>({...e,_fullName:`${e.name} ${e.surname}`,_initials:e.name.charAt(0)+e.surname.charAt(0)}))).sort(((e,t)=>e.namee.teams,projects:e=>e.projects,unscheduledSubtasks:e=>e.unscheduledSubtasks,ongoingSubtasks:e=>e.ongoingSubtasks,isInitialized:e=>e.initialized}},Ql={install:e=>{e.config.globalProperties.$store.registerModule("tm",Xl)}};const eo=["lang"],to={key:0,class:"vuecal__flex vuecal__body",grow:"grow"},so=["onBlur","innerHTML"],ao=["innerHTML"],io=["innerHTML"],no={class:"vuecal__flex",row:"row",grow:"grow"},lo={key:0,class:"vuecal__time-column"},oo=(0,m._)("span",{class:"vuecal__time-cell-line"},null,-1),ro={class:"vuecal__time-cell-label"},uo={key:1,class:"vuecal__flex vuecal__week-numbers",column:"column"},co=["wrap","column"],mo=["onBlur","innerHTML"],ho=["innerHTML"],po=["innerHTML"],vo=["wrap"],ko=["innerHTML"],fo=["innerHTML"],_o={key:2,class:"vuecal__cell-events-count"},bo={key:3,class:"vuecal__no-event"},go=["onBlur","innerHTML"],wo=["innerHTML"],yo={key:2,class:"vuecal__event-time"},Do={key:0},Mo={key:1,class:"days-to-end"},To=["innerHTML"],$o={key:0,class:"vuecal__scrollbar-check"},Co=(0,m._)("div",null,null,-1),jo=[Co];function Eo(e,t,s,i,n,l){const o=(0,m.up)("vuecal-header"),r=(0,m.up)("all-day-bar"),d=(0,m.up)("weekdays-headings"),u=(0,m.up)("vuecal-cell");return(0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__flex vuecal",l.cssClasses]),column:"column",ref:"vuecal",lang:s.locale},[(0,m.Wm)(o,{options:e.$props,"edit-events":l.editEvents,"view-props":{views:l.views,weekDaysInHeader:l.weekDaysInHeader},"week-days":l.weekDays,"has-splits":l.hasSplits,"day-splits":l.daySplits,"switch-to-narrower-view":l.switchToNarrowerView},(0,m.Nv)({_:2},[e.$slots["weekday-heading"]?{name:"weekday-heading",fn:(0,m.w5)((({heading:t,view:s})=>[(0,m.WI)(e.$slots,"weekday-heading",{heading:t,view:s})])),key:"0"}:void 0,e.$slots["split-label"]?{name:"split-label",fn:(0,m.w5)((({split:t,view:s})=>[(0,m.WI)(e.$slots,"split-label",{split:t,view:s.id})])),key:"1"}:void 0]),1032,["options","edit-events","view-props","week-days","has-splits","day-splits","switch-to-narrower-view"]),s.hideBody?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",to,[(0,m.Wm)(a.uT,{name:`slide-fade--${n.transitionDirection}`,appear:s.transitions},{default:(0,m.w5)((()=>[((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__flex",style:{"min-width":"100%"},key:!!s.transitions&&n.view.id,column:"column"},[s.showAllDayEvents&&l.hasTimeColumn&&(!l.cellOrSplitMinWidth||l.isDayView&&!s.minSplitWidth)?((0,m.wg)(),(0,m.j4)(r,(0,k.vs)((0,m.dG)({key:0},l.allDayBar)),{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t},(()=>[l.editEvents.title&&t.titleEditable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-title vuecal__event-title--edit",contenteditable:"contenteditable",onBlur:e=>l.onEventTitleBlur(e,t),innerHTML:t.title},null,40,so)):t.title?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-title",innerHTML:t.title},null,8,ao)):(0,m.kq)("",!0),!t.content||l.hasShortEvents||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:2,class:"vuecal__event-content",innerHTML:t.content},null,8,io))]))])),_:3},16)):(0,m.kq)("",!0),(0,m._)("div",{class:(0,k.C_)(["vuecal__bg",{vuecal__flex:!l.hasTimeColumn}]),column:"column",ref:"vuecal_scroll"},[(0,m._)("div",no,[l.hasTimeColumn?((0,m.wg)(),(0,m.iD)("div",lo,[s.showAllDayEvents&&l.cellOrSplitMinWidth&&(!l.isDayView||s.minSplitWidth)?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__all-day-text",style:(0,k.j5)({height:l.allDayBar.height})},[(0,m._)("span",null,(0,k.zw)(n.texts.allDay),1)],4)):(0,m.kq)("",!0),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.timeCells,((t,a)=>((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__time-cell",key:a,style:(0,k.j5)(`height: ${s.timeCellHeight}px`)},[(0,m.WI)(e.$slots,"time-cell",{hours:t.hours,minutes:t.minutes},(()=>[oo,(0,m._)("span",ro,(0,k.zw)(t.label),1)]))],4)))),128))])):(0,m.kq)("",!0),s.showWeekNumbers&&l.isMonthView?((0,m.wg)(),(0,m.iD)("div",uo,[((0,m.wg)(),(0,m.iD)(m.HY,null,(0,m.Ko)(6,(t=>(0,m._)("div",{class:"vuecal__flex vuecal__week-number-cell",key:t,grow:"grow"},[(0,m.WI)(e.$slots,"week-number-cell",{week:l.getWeekNumber(t-1)},(()=>[(0,m.Uk)((0,k.zw)(l.getWeekNumber(t-1)),1)]))]))),64))])):(0,m.kq)("",!0),(0,m._)("div",{class:(0,k.C_)(["vuecal__flex vuecal__cells vuecal__scrollable-body",`${n.view.id}-view`]),grow:"grow",wrap:!l.cellOrSplitMinWidth||!l.isWeekView,column:!!l.cellOrSplitMinWidth},[l.cellOrSplitMinWidth&&l.isWeekView?((0,m.wg)(),(0,m.j4)(d,{key:0,"transition-direction":n.transitionDirection,"week-days":l.weekDays,"switch-to-narrower-view":l.switchToNarrowerView,style:(0,k.j5)(l.cellOrSplitMinWidth?`min-width: ${l.cellOrSplitMinWidth}px`:""),unscheduledTime:s.unscheduledTime,ref:"vuecal_weekday_heading"},(0,m.Nv)({_:2},[e.$slots["weekday-heading"]?{name:"weekday-heading",fn:(0,m.w5)((({heading:t,view:s})=>[(0,m.WI)(e.$slots,"weekday-heading",{heading:t,view:s})])),key:"0"}:void 0,e.$slots["split-label"]?{name:"split-label",fn:(0,m.w5)((({split:t})=>[(0,m.WI)(e.$slots,"split-label",{split:t,view:n.view.id})])),key:"1"}:void 0]),1032,["transition-direction","week-days","switch-to-narrower-view","style","unscheduledTime"])):l.hasSplits&&s.stickySplitLabels&&s.minSplitWidth?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__flex vuecal__split-days-headers",ref:"vuecal_splits_heading",style:(0,k.j5)(l.cellOrSplitMinWidth?`min-width: ${l.cellOrSplitMinWidth}px`:"")},[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.daySplits,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["day-split-header",t.class||!1]),key:s},[(0,m.WI)(e.$slots,"split-label",{split:t,view:n.view.id},(()=>[(0,m.Uk)((0,k.zw)(t.label),1)]))],2)))),128))],4)):(0,m.kq)("",!0),s.showAllDayEvents&&l.hasTimeColumn&&(l.isWeekView&&l.cellOrSplitMinWidth||l.isDayView&&l.hasSplits&&s.minSplitWidth)?((0,m.wg)(),(0,m.j4)(r,(0,k.vs)((0,m.dG)({key:2},l.allDayBar)),{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t},(()=>[l.editEvents.title&&t.titleEditable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-title vuecal__event-title--edit",contenteditable:"contenteditable",onBlur:e=>l.onEventTitleBlur(e,t),innerHTML:t.title},null,40,mo)):t.title?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-title",innerHTML:t.title},null,8,ho)):(0,m.kq)("",!0),!t.content||l.hasShortEvents||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:2,class:"vuecal__event-content",innerHTML:t.content},null,8,po))]))])),_:3},16)):(0,m.kq)("",!0),(0,m._)("div",{class:"vuecal__flex vuecal__cells-body",ref:e=>n.cellsEl=e,grow:"grow",wrap:!l.cellOrSplitMinWidth||!l.isWeekView,style:(0,k.j5)(l.cellOrSplitMinWidth?`min-width: ${l.cellOrSplitMinWidth}px`:"")},[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.viewCells,((t,a)=>((0,m.wg)(),(0,m.j4)(u,{key:a,options:e.$props,"edit-events":l.editEvents,data:t,"cell-width":s.hideWeekdays.length&&(l.isWeekView||l.isMonthView)&&l.cellWidth,"min-timestamp":l.minTimestamp,"max-timestamp":l.maxTimestamp,"cell-splits":l.hasSplits&&l.daySplits||[]},{"cell-content":(0,m.w5)((({events:a,split:i,selectCell:o})=>[(0,m.WI)(e.$slots,"cell-content",{cell:t,view:n.view,goNarrower:o,events:a},(()=>[i&&!s.stickySplitLabels?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"split-label",innerHTML:i.label},null,8,ko)):(0,m.kq)("",!0),t.content?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__cell-date",innerHTML:t.content},null,8,fo)):(0,m.kq)("",!0),(l.isMonthView&&!s.eventsOnMonthView||l.isYearsOrYearView&&s.eventsCountOnYearView)&&a.length?((0,m.wg)(),(0,m.iD)("div",_o,[(0,m.WI)(e.$slots,"events-count",{view:n.view,events:a},(()=>[(0,m.Uk)((0,k.zw)(a.length),1)]))])):(0,m.kq)("",!0),!l.cellOrSplitHasEvents(a,i)&&l.isWeekOrDayView?((0,m.wg)(),(0,m.iD)("div",bo,[(0,m.WI)(e.$slots,"no-event",{},(()=>[(0,m.Uk)((0,k.zw)(n.texts.noEvent),1)]))])):(0,m.kq)("",!0)]))])),event:(0,m.w5)((({event:a,view:i})=>[(0,m.WI)(e.$slots,"event",{view:i,event:a},(()=>[l.editEvents.title&&a.titleEditable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-title vuecal__event-title--edit",contenteditable:"contenteditable",onBlur:e=>l.onEventTitleBlur(e,a),innerHTML:a.title},null,40,go)):a.title?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-title",innerHTML:a.title},null,8,wo)):(0,m.kq)("",!0),!s.time||a.allDay||l.isMonthView&&(a.allDay||"short"===s.showAllDayEvents)||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",yo,[(0,m.Uk)((0,k.zw)(n.utils.date.formatTime(a.start,l.TimeFormat)),1),a.endTimeMinutes?((0,m.wg)(),(0,m.iD)("span",Do," - "+(0,k.zw)(n.utils.date.formatTime(a.end,l.TimeFormat,null,!0)),1)):(0,m.kq)("",!0),a.daysCount>1&&(a.segments[t.formattedDate]||{}).isFirstDay?((0,m.wg)(),(0,m.iD)("small",Mo," +"+(0,k.zw)(a.daysCount-1)+(0,k.zw)((n.texts.day[0]||"").toLowerCase()),1)):(0,m.kq)("",!0)])),!a.content||l.isMonthView&&a.allDay&&"short"===s.showAllDayEvents||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:3,class:"vuecal__event-content",innerHTML:a.content},null,8,To))]))])),_:2},1032,["options","edit-events","data","cell-width","min-timestamp","max-timestamp","cell-splits"])))),128))],12,vo)],10,co)])],2)]))])),_:3},8,["name","appear"]),n.ready?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",$o,jo))]))],10,eo)}s(30541);let xo,Wo,So,Oo,Vo={},zo={};class Ao{constructor(e,t=!1){(0,kl.Z)(this,"texts",{}),(0,kl.Z)(this,"dateToMinutes",(e=>60*e.getHours()+e.getMinutes())),Oo=this,this._texts=e,t||!Date||Date.prototype.addDays||this._initDatePrototypes()}_initDatePrototypes(){Date.prototype.addDays=function(e){return Oo.addDays(this,e)},Date.prototype.subtractDays=function(e){return Oo.subtractDays(this,e)},Date.prototype.addHours=function(e){return Oo.addHours(this,e)},Date.prototype.subtractHours=function(e){return Oo.subtractHours(this,e)},Date.prototype.addMinutes=function(e){return Oo.addMinutes(this,e)},Date.prototype.subtractMinutes=function(e){return Oo.subtractMinutes(this,e)},Date.prototype.getWeek=function(){return Oo.getWeek(this)},Date.prototype.isToday=function(){return Oo.isToday(this)},Date.prototype.isLeapYear=function(){return Oo.isLeapYear(this)},Date.prototype.format=function(e="YYYY-MM-DD"){return Oo.formatDate(this,e)},Date.prototype.formatTime=function(e="HH:mm"){return Oo.formatTime(this,e)}}removePrototypes(){delete Date.prototype.addDays,delete Date.prototype.subtractDays,delete Date.prototype.addHours,delete Date.prototype.subtractHours,delete Date.prototype.addMinutes,delete Date.prototype.subtractMinutes,delete Date.prototype.getWeek,delete Date.prototype.isToday,delete Date.prototype.isLeapYear,delete Date.prototype.format,delete Date.prototype.formatTime}updateTexts(e){this._texts=e}_todayFormatted(){return Wo!==(new Date).getDate()&&(xo=new Date,Wo=xo.getDate(),So=`${xo.getFullYear()}-${xo.getMonth()}-${xo.getDate()}`),So}addDays(e,t){const s=new Date(e.valueOf());return s.setDate(s.getDate()+t),s}subtractDays(e,t){const s=new Date(e.valueOf());return s.setDate(s.getDate()-t),s}addHours(e,t){const s=new Date(e.valueOf());return s.setHours(s.getHours()+t),s}subtractHours(e,t){const s=new Date(e.valueOf());return s.setHours(s.getHours()-t),s}addMinutes(e,t){const s=new Date(e.valueOf());return s.setMinutes(s.getMinutes()+t),s}subtractMinutes(e,t){const s=new Date(e.valueOf());return s.setMinutes(s.getMinutes()-t),s}getWeek(e){const t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())),s=t.getUTCDay()||7;t.setUTCDate(t.getUTCDate()+4-s);const a=new Date(Date.UTC(t.getUTCFullYear(),0,1));return Math.ceil(((t-a)/864e5+1)/7)}isToday(e){return`${e.getFullYear()}-${e.getMonth()}-${e.getDate()}`===this._todayFormatted()}isLeapYear(e){const t=e.getFullYear();return!(t%400)||t%100&&!(t%4)}getPreviousFirstDayOfWeek(e=null,t){const s=e&&new Date(e.valueOf())||new Date,a=t?7:6;return s.setDate(s.getDate()-(s.getDay()+a)%7),s}stringToDate(e){return e instanceof Date?e:(10===e.length&&(e+=" 00:00"),new Date(e.replace(/-/g,"/")))}countDays(e,t){"string"===typeof e&&(e=e.replace(/-/g,"/")),"string"===typeof t&&(t=t.replace(/-/g,"/")),e=new Date(e).setHours(0,0,0,0),t=new Date(t).setHours(0,0,1,0);const s=60*(new Date(t).getTimezoneOffset()-new Date(e).getTimezoneOffset())*1e3;return Math.ceil((t-e-s)/864e5)}datesInSameTimeStep(e,t,s){return Math.abs(e.getTime()-t.getTime())<=60*s*1e3}formatDate(e,t="YYYY-MM-DD",s=null){if(s||(s=this._texts),t||(t="YYYY-MM-DD"),"YYYY-MM-DD"===t)return this.formatDateLite(e);Vo={},zo={};const a={YYYY:()=>this._hydrateDateObject(e,s).YYYY,YY:()=>this._hydrateDateObject(e,s).YY(),M:()=>this._hydrateDateObject(e,s).M,MM:()=>this._hydrateDateObject(e,s).MM(),MMM:()=>this._hydrateDateObject(e,s).MMM(),MMMM:()=>this._hydrateDateObject(e,s).MMMM(),MMMMG:()=>this._hydrateDateObject(e,s).MMMMG(),D:()=>this._hydrateDateObject(e,s).D,DD:()=>this._hydrateDateObject(e,s).DD(),S:()=>this._hydrateDateObject(e,s).S(),d:()=>this._hydrateDateObject(e,s).d,dd:()=>this._hydrateDateObject(e,s).dd(),ddd:()=>this._hydrateDateObject(e,s).ddd(),dddd:()=>this._hydrateDateObject(e,s).dddd(),HH:()=>this._hydrateTimeObject(e,s).HH,H:()=>this._hydrateTimeObject(e,s).H,hh:()=>this._hydrateTimeObject(e,s).hh,h:()=>this._hydrateTimeObject(e,s).h,am:()=>this._hydrateTimeObject(e,s).am,AM:()=>this._hydrateTimeObject(e,s).AM,mm:()=>this._hydrateTimeObject(e,s).mm,m:()=>this._hydrateTimeObject(e,s).m};return t.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,((e,t)=>{const s=a[t.replace(/\{|\}/g,"")];return void 0!==s?s():t}))}formatDateLite(e){const t=e.getMonth()+1,s=e.getDate();return`${e.getFullYear()}-${t<10?"0":""}${t}-${s<10?"0":""}${s}`}formatTime(e,t="HH:mm",s=null,a=!1){let i=!1;if(a){const[t,s,a]=[e.getHours(),e.getMinutes(),e.getSeconds()];t+s+a===141&&(i=!0)}if(e instanceof Date&&"HH:mm"===t)return i?"24:00":this.formatTimeLite(e);zo={},s||(s=this._texts);const n=this._hydrateTimeObject(e,s),l=t.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,((e,t)=>{const s=n[t.replace(/\{|\}/g,"")];return void 0!==s?s:t}));return i?l.replace("23:59","24:00"):l}formatTimeLite(e){const t=e.getHours(),s=e.getMinutes();return`${(t<10?"0":"")+t}:${(s<10?"0":"")+s}`}_nth(e){if(e>3&&e<21)return"th";switch(e%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}}_hydrateDateObject(e,t){if(Vo.D)return Vo;const s=e.getFullYear(),a=e.getMonth()+1,i=e.getDate(),n=e.getDay(),l=(n-1+7)%7;return Vo={YYYY:s,YY:()=>s.toString().substring(2),M:a,MM:()=>(a<10?"0":"")+a,MMM:()=>t.months[a-1].substring(0,3),MMMM:()=>t.months[a-1],MMMMG:()=>(t.monthsGenitive||t.months)[a-1],D:i,DD:()=>(i<10?"0":"")+i,S:()=>this._nth(i),d:l+1,dd:()=>t.weekDays[l][0],ddd:()=>t.weekDays[l].substr(0,3),dddd:()=>t.weekDays[l]},Vo}_hydrateTimeObject(e,t){if(zo.am)return zo;let s,a;e instanceof Date?(s=e.getHours(),a=e.getMinutes()):(s=Math.floor(e/60),a=Math.floor(e%60));const i=s%12?s%12:12,n=(t||{am:"am",pm:"pm"})[24===s||s<12?"am":"pm"];return zo={H:s,h:i,HH:(s<10?"0":"")+s,hh:(i<10?"0":"")+i,am:n,AM:n.toUpperCase(),m:a,mm:(a<10?"0":"")+a},zo}}const Uo=1440;class Ho{constructor(e){(0,kl.Z)(this,"_vuecal",null),(0,kl.Z)(this,"selectCell",((e=!1,t,s)=>{this._vuecal.$emit("cell-click",s?{date:t,split:s}:t),this._vuecal.clickToNavigate||e?this._vuecal.switchToNarrowerView():this._vuecal.dblclickToNavigate&&"ontouchstart"in window&&(this._vuecal.domEvents.dblTapACell.taps++,setTimeout((()=>this._vuecal.domEvents.dblTapACell.taps=0),this._vuecal.domEvents.dblTapACell.timeout),this._vuecal.domEvents.dblTapACell.taps>=2&&(this._vuecal.domEvents.dblTapACell.taps=0,this._vuecal.switchToNarrowerView(),this._vuecal.$emit("cell-dblclick",s?{date:t,split:s}:t)))})),(0,kl.Z)(this,"keyPressEnterCell",((e,t)=>{this._vuecal.$emit("cell-keypress-enter",t?{date:e,split:t}:e),this._vuecal.switchToNarrowerView()})),(0,kl.Z)(this,"getPosition",(e=>{const{left:t,top:s}=this._vuecal.cellsEl.getBoundingClientRect(),{clientX:a,clientY:i}="ontouchstart"in window&&e.touches?e.touches[0]:e;return{x:a-t,y:i-s}})),(0,kl.Z)(this,"minutesAtCursor",(e=>{let t=0,s={x:0,y:0};const{timeStep:a,timeCellHeight:i,timeFrom:n}=this._vuecal.$props;return"number"===typeof e?t=e:"object"===typeof e&&(s=this.getPosition(e),t=Math.round(s.y*a/parseInt(i)+n)),{minutes:Math.max(Math.min(t,Uo),0),cursorCoords:s}})),this._vuecal=e}}const Zo=2,Io=1440;let Fo,Yo,Po;class Lo{constructor(e,t){(0,kl.Z)(this,"_vuecal",null),(0,kl.Z)(this,"eventDefaults",{_eid:null,start:"",startTimeMinutes:0,end:"",endTimeMinutes:0,title:"",content:"",background:!1,allDay:!1,segments:null,repeat:null,daysCount:1,deletable:!0,deleting:!1,titleEditable:!0,resizable:!0,resizing:!1,draggable:!0,dragging:!1,draggingStatic:!1,focused:!1,class:""}),this._vuecal=e,Fo=t}createAnEvent(e,t,s){if("string"===typeof e&&(e=Fo.stringToDate(e)),!(e instanceof Date))return!1;const a=Fo.dateToMinutes(e);t=1*t||60*Zo;const i=a+t,n=Fo.addMinutes(new Date(e),t);s.end&&("string"===typeof s.end&&(s.end=Fo.stringToDate(s.end)),s.endTimeMinutes=Fo.dateToMinutes(s.end));const l={...this.eventDefaults,_eid:`${this._vuecal._.uid}_${this._vuecal.eventIdIncrement++}`,start:e,startTimeMinutes:a,end:n,endTimeMinutes:i,segments:null,...s};return"function"!==typeof this._vuecal.onEventCreate||this._vuecal.onEventCreate(l,(()=>this.deleteAnEvent(l)))?(l.startDateF!==l.endDateF&&(l.daysCount=Fo.countDays(l.start,l.end)),this._vuecal.mutableEvents.push(l),this._vuecal.addEventsToView([l]),this._vuecal.emitWithEvent("event-create",l),this._vuecal.$emit("event-change",{event:this._vuecal.cleanupEvent(l),originalEvent:null}),l):void 0}addEventSegment(e){e.segments||(e.segments={},e.segments[Fo.formatDateLite(e.start)]={start:e.start,startTimeMinutes:e.startTimeMinutes,endTimeMinutes:Io,isFirstDay:!0,isLastDay:!1});const t=e.segments[Fo.formatDateLite(e.end)];t&&(t.isLastDay=!1,t.endTimeMinutes=Io);const s=Fo.addDays(e.end,1),a=Fo.formatDateLite(s);return s.setHours(0,0,0,0),e.segments[a]={start:s,startTimeMinutes:0,endTimeMinutes:e.endTimeMinutes,isFirstDay:!1,isLastDay:!0},e.end=Fo.addMinutes(s,e.endTimeMinutes),e.daysCount=Object.keys(e.segments).length,a}removeEventSegment(e){let t=Object.keys(e.segments).length;if(t<=1)return Fo.formatDateLite(e.end);delete e.segments[Fo.formatDateLite(e.end)],t--;const s=Fo.subtractDays(e.end,1),a=Fo.formatDateLite(s),i=e.segments[a];return t?i&&(i.isLastDay=!0,i.endTimeMinutes=e.endTimeMinutes):e.segments=null,e.daysCount=t||1,e.end=s,a}createEventSegments(e,t,s){const a=t.getTime(),i=s.getTime();let n,l,o,r=e.start.getTime(),d=e.end.getTime(),u=!1;e.end.getHours()||e.end.getMinutes()||(d-=1e3),e.segments={},e.repeat?(n=a,l=Math.min(i,e.repeat.until?Fo.stringToDate(e.repeat.until).getTime():i)):(n=Math.max(a,r),l=Math.min(i,d));while(n<=l){let t=!1;const s=Fo.addDays(new Date(n),1).setHours(0,0,0,0);let a,i,c,m;if(e.repeat){const s=new Date(n),l=Fo.formatDateLite(s);(u||e.occurrences&&e.occurrences[l])&&(u||(r=e.occurrences[l].start,o=new Date(r).setHours(0,0,0,0),d=e.occurrences[l].end),u=!0,t=!0),a=n===o,i=l===Fo.formatDateLite(new Date(d)),c=new Date(a?r:n),m=Fo.formatDateLite(c),i&&(u=!1)}else t=!0,a=n===r,i=l===d&&s>l,c=a?e.start:new Date(n),m=Fo.formatDateLite(a?e.start:c);t&&(e.segments[m]={start:c,startTimeMinutes:a?e.startTimeMinutes:0,endTimeMinutes:i?e.endTimeMinutes:Io,isFirstDay:a,isLastDay:i}),n=s}return e}deleteAnEvent(e){this._vuecal.emitWithEvent("event-delete",e),this._vuecal.mutableEvents=this._vuecal.mutableEvents.filter((t=>t._eid!==e._eid)),this._vuecal.view.events=this._vuecal.view.events.filter((t=>t._eid!==e._eid))}checkCellOverlappingEvents(e,t){Po=e.slice(0),Yo={},e.forEach((e=>{Po.shift(),Yo[e._eid]||(Yo[e._eid]={overlaps:[],start:e.start,position:0,sameOverlaps:[]}),Yo[e._eid].position=0,Po.forEach((s=>{Yo[s._eid]||(Yo[s._eid]={overlaps:[],start:s.start,position:0,sameOverlaps:[]});const a=this.eventInRange(s,e.start,e.end),i=this.eventSameRange(s,e),n=t.overlapsPerTimeStep?Fo.datesInSameTimeStep(e.start,s.start,t.timeStep):1;if(e.background||e.allDay||s.background||s.allDay||!a||!n){let t,a;(t=(Yo[e._eid]||{overlaps:[]}).overlaps.indexOf(s._eid))>-1&&Yo[e._eid].overlaps.splice(t,1),(a=(Yo[s._eid]||{overlaps:[]}).overlaps.indexOf(e._eid))>-1&&Yo[s._eid].overlaps.splice(a,1),Yo[s._eid].position--}else Yo[e._eid].overlaps.push(s._eid),Yo[e._eid].overlaps=[...new Set(Yo[e._eid].overlaps)],Yo[s._eid].overlaps.push(e._eid),Yo[s._eid].overlaps=[...new Set(Yo[s._eid].overlaps)],Yo[s._eid].position++,i&&(Yo[e._eid].sameOverlaps.push(s._eid),Yo[e._eid].sameOverlaps=[...new Set(Yo[e._eid].sameOverlaps)],Yo[s._eid].sameOverlaps.push(e._eid),Yo[s._eid].sameOverlaps=[...new Set(Yo[s._eid].sameOverlaps)])}))}));let s=0;for(const a in Yo){const e=Yo[a],t=e.overlaps.map((e=>({id:e,start:Yo[e].start})));t.push({id:a,start:e.start}),t.sort(((e,t)=>e.startt.start?1:e.id>t.id?-1:1)),e.position=t.findIndex((e=>e.id===a)),s=Math.max(this.getOverlapsStreak(e,Yo),s)}return[Yo,s]}getOverlapsStreak(e,t={}){let s=e.overlaps.length+1,a=[];return e.overlaps.forEach((s=>{if(!a.includes(s)){const i=e.overlaps.filter((e=>e!==s));i.forEach((e=>{t[e].overlaps.includes(s)||a.push(e)}))}})),a=[...new Set(a)],s-=a.length,s}eventInRange(e,t,s){if(e.allDay||!this._vuecal.time){const a=new Date(e.start).setHours(0,0,0,0),i=new Date(e.end).setHours(23,59,0,0);return i>=new Date(t).setHours(0,0,0,0)&&a<=new Date(s).setHours(0,0,0,0)}const a=e.start.getTime(),i=e.end.getTime();return at.getTime()}eventSameRange(e,t){const s=e.start.getTime()==t.start.getTime(),a=e.end.getTime()==t.end.getTime();return s&&a}}const No={class:"vuecal__header"},qo={key:0,class:"vuecal__flex vuecal__menu",role:"tablist","aria-label":"Calendar views navigation"},Bo=["onDragenter","onDragleave","onClick","aria-label"],Ro={key:1,class:"vuecal__title-bar"},Ko=["aria-label"],Jo={class:"vuecal__flex vuecal__title",grow:""},Go=["aria-label"],Xo={key:0,class:"vuecal__flex vuecal__split-days-headers"};function Qo(e,t,s,i,n,l){const o=(0,m.up)("weekdays-headings");return(0,m.wg)(),(0,m.iD)("div",No,[s.options.hideViewSelector?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",qo,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.viewProps.views,((t,a)=>((0,m.wg)(),(0,m.iD)(m.HY,{key:a},[t.enabled?((0,m.wg)(),(0,m.iD)("button",{key:0,class:(0,k.C_)(["vuecal__view-btn",{"vuecal__view-btn--active":l.view.id===a,"vuecal__view-btn--highlighted":e.highlightedControl===a}]),type:"button",onDragenter:t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,a,e.$data),onDragleave:t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,a,e.$data),onClick:e=>l.switchView(a,null,!0),"aria-label":`${t.label} view`},(0,k.zw)(t.label),43,Bo)):(0,m.kq)("",!0)],64)))),128))])),s.options.hideTitleBar?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",Ro,[(0,m._)("button",{class:(0,k.C_)(["vuecal__arrow vuecal__arrow--prev",{"vuecal__arrow--highlighted":"previous"===e.highlightedControl}]),type:"button",onClick:t[0]||(t[0]=(...e)=>l.previous&&l.previous(...e)),onDragenter:t[1]||(t[1]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,"previous",e.$data)),onDragleave:t[2]||(t[2]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,"previous",e.$data)),"aria-label":`Previous ${l.view.id}`},[(0,m.WI)(e.$slots,"arrow-prev")],42,Ko),(0,m._)("div",Jo,[(0,m.Wm)(a.uT,{name:s.options.transitions?`slide-fade--${l.transitionDirection}`:""},{default:(0,m.w5)((()=>[((0,m.wg)(),(0,m.j4)((0,m.LL)(l.broaderView?"button":"span"),{type:!!l.broaderView&&"button",key:`${l.view.id}${l.view.startDate.toString()}`,onClick:t[3]||(t[3]=e=>!!l.broaderView&&l.switchToBroaderView()),"aria-label":!!l.broaderView&&`Go to ${l.broaderView} view`},{default:(0,m.w5)((()=>[(0,m.WI)(e.$slots,"title")])),_:3},8,["type","aria-label"]))])),_:3},8,["name"])]),s.options.todayButton?((0,m.wg)(),(0,m.iD)("button",{key:0,class:(0,k.C_)(["vuecal__today-btn",{"vuecal__today-btn--highlighted":"today"===e.highlightedControl}]),type:"button",onClick:t[4]||(t[4]=(...e)=>l.goToToday&&l.goToToday(...e)),onDragenter:t[5]||(t[5]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,"today",e.$data)),onDragleave:t[6]||(t[6]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,"today",e.$data)),"aria-label":"Today"},[(0,m.WI)(e.$slots,"today-button")],34)):(0,m.kq)("",!0),(0,m._)("button",{class:(0,k.C_)(["vuecal__arrow vuecal__arrow--next",{"vuecal__arrow--highlighted":"next"===e.highlightedControl}]),type:"button",onClick:t[7]||(t[7]=(...e)=>l.next&&l.next(...e)),onDragenter:t[8]||(t[8]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,"next",e.$data)),onDragleave:t[9]||(t[9]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,"next",e.$data)),"aria-label":`Next ${l.view.id}`},[(0,m.WI)(e.$slots,"arrow-next")],42,Go)])),s.viewProps.weekDaysInHeader?((0,m.wg)(),(0,m.j4)(o,{key:2,"week-days":s.weekDays,"transition-direction":l.transitionDirection,"switch-to-narrower-view":s.switchToNarrowerView},(0,m.Nv)({_:2},[e.$slots["weekday-heading"]?{name:"weekday-heading",fn:(0,m.w5)((({heading:t,view:s})=>[(0,m.WI)(e.$slots,"weekday-heading",{heading:t,view:s})])),key:"0"}:void 0,e.$slots["split-label"]?{name:"split-label",fn:(0,m.w5)((({split:t})=>[(0,m.WI)(e.$slots,"split-label",{split:t,view:l.view})])),key:"1"}:void 0]),1032,["week-days","transition-direction","switch-to-narrower-view"])):(0,m.kq)("",!0),(0,m.Wm)(a.uT,{name:`slide-fade--${l.transitionDirection}`},{default:(0,m.w5)((()=>[l.showDaySplits?((0,m.wg)(),(0,m.iD)("div",Xo,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.daySplits,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["day-split-header",t.class||!1]),key:s},[(0,m.WI)(e.$slots,"split-label",{split:t,view:l.view.id},(()=>[(0,m.Uk)((0,k.zw)(t.label),1)]))],2)))),128))])):(0,m.kq)("",!0)])),_:3},8,["name"])])}const er={class:"vuecal__flex vuecal__weekdays-headings",ref:"vuecal_weekday_heading"},tr=["onClick"],sr={class:"vuecal__flex weekday-label",grow:""},ar={class:"full"},ir={class:"small"},nr={class:"xsmall"},lr={key:0},or={key:0,class:"vuecal__flex vuecal__split-days-headers",grow:""};function rr(e,t,s,i,n,l){return(0,m.wg)(),(0,m.iD)("div",er,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.headings,((i,n)=>((0,m.wg)(),(0,m.iD)(m.HY,{key:n},[i.hide?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:0,class:(0,k.C_)(["vuecal__flex vuecal__heading",{today:i.today,"today-cell":i.today,clickable:l.cellHeadingsClickable,"yesterday-cell":new Date(i.date).toLocaleDateString("sk-SK")==new Date((new Date).setDate((new Date).getDate()-1)).toLocaleDateString("sk-SK")}]),style:(0,k.j5)(l.weekdayCellStyles),onClick:e=>"week"===l.view.id&&l.selectCell(i.date,e),onDblclick:t[0]||(t[0]=e=>"week"===l.view.id&&l.vuecal.dblclickToNavigate&&s.switchToNarrowerView())},[(0,m.Wm)(a.uT,{name:`slide-fade--${s.transitionDirection}`,appear:l.vuecal.transitions},{default:(0,m.w5)((()=>[((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__flex",column:"",key:!!l.vuecal.transitions&&`${n}-${i.dayOfMonth}`},[(0,m._)("div",sr,[(0,m.WI)(e.$slots,"weekday-heading",{heading:l.cleanupHeading(i),view:l.view},(()=>[(0,m._)("span",ar,(0,k.zw)(i.full),1),(0,m._)("span",ir,(0,k.zw)(i.small),1),(0,m._)("span",nr,(0,k.zw)(i.xsmall),1),i.dayOfMonth?((0,m.wg)(),(0,m.iD)("span",lr," "+(0,k.zw)(i.dayOfMonth),1)):(0,m.kq)("",!0)]))]),l.vuecal.hasSplits&&l.vuecal.stickySplitLabels?((0,m.wg)(),(0,m.iD)("div",or,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.vuecal.daySplits,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["day-split-header",t.class||!1]),key:s},[(0,m.WI)(e.$slots,"split-label",{split:t,view:l.view},(()=>[(0,m.Uk)((0,k.zw)(t.label),1)]))],2)))),128))])):(0,m.kq)("",!0)]))])),_:2},1032,["name","appear"])],46,tr))],64)))),128))],512)}var dr={inject:["vuecal","utils","view"],props:{transitionDirection:{type:String,default:"right"},weekDays:{type:Array,default:()=>[]},switchToNarrowerView:{type:Function,default:()=>{}},unscheduledTime:{type:Array,default:[]}},methods:{selectCell(e,t){e.getTime()!==this.view.selectedDate.getTime()&&(this.view.selectedDate=e),this.utils.cell.selectCell(!1,e,t)},cleanupHeading:e=>({label:e.full,date:e.date,unscheduledTime:e.unscheduledTime,name:e.name,initials:e.initials,...e.today?{today:e.today}:{}}),onTimelineScroll(e){this.$refs["vuecal_weekday_heading"].style.top=`${e}px`}},computed:{headings(){if(!["month","week"].includes(this.view.id))return[];let e=!1;const t=this.weekDays.map(((t,s)=>{const a=this.utils.date.addDays(this.view.startDate,this.vuecal.startWeekOnSunday?s-1:s);let i=null,n=null,l=null;return this.unscheduledTime[s]?.time&&(i=Math.floor(this.unscheduledTime[s].time/60)+","+String(this.unscheduledTime[s].time%60)[0]),this.unscheduledTime[s]?.name&&this.unscheduledTime[s]?.name&&(n=this.unscheduledTime[s].name+" "+this.unscheduledTime[s].surname,l=this.unscheduledTime[s].name.charAt(0).toUpperCase()+this.unscheduledTime[s].surname.charAt(0).toUpperCase()),{hide:t.hide,full:t.label,small:t.short||t.label.substr(0,3),xsmall:t.short||t.label.substr(0,1),unscheduledTime:i,name:n,initials:l,..."week"===this.view.id?{dayOfMonth:a.getDate(),date:a,today:!e&&this.utils.date.isToday(a)&&!e++}:{}}}));return t},cellWidth(){return 100/(7-this.weekDays.reduce(((e,t)=>e+t.hide),0))},weekdayCellStyles(){return{...this.vuecal.hideWeekdays.length?{width:`${this.cellWidth}%`}:{}}},cellHeadingsClickable(){return"week"===this.view.id&&(this.vuecal.clickToNavigate||this.vuecal.dblclickToNavigate)}}};const ur=(0,$.Z)(dr,[["render",rr]]);var cr=ur,mr={inject:["vuecal","previous","next","switchView","updateSelectedDate","modules","view"],components:{WeekdaysHeadings:cr},props:{options:{type:Object,default:()=>({})},editEvents:{type:Object,required:!0},hasSplits:{type:[Boolean,Number],default:!1},daySplits:{type:Array,default:()=>[]},viewProps:{type:Object,default:()=>({})},weekDays:{type:Array,default:()=>[]},switchToNarrowerView:{type:Function,default:()=>{}}},data:()=>({highlightedControl:null}),methods:{goToToday(){this.updateSelectedDate(new Date((new Date).setHours(0,0,0,0)))},switchToBroaderView(){this.transitionDirection="left",this.broaderView&&this.switchView(this.broaderView)}},computed:{transitionDirection:{get(){return this.vuecal.transitionDirection},set(e){this.vuecal.transitionDirection=e}},broaderView(){const{enabledViews:e}=this.vuecal;return e[e.indexOf(this.view.id)-1]},showDaySplits(){return"day"===this.view.id&&this.hasSplits&&this.options.stickySplitLabels&&!this.options.minSplitWidth},dnd(){return this.modules.dnd}}};const hr=(0,$.Z)(mr,[["render",Qo]]);var pr=hr;const vr={key:0,class:"vuecal__all-day-text",style:{width:"3em"}};function kr(e,t,s,a,i,n){const l=(0,m.up)("vuecal-cell");return(0,m.wg)(),(0,m.iD)("div",{class:"vuecal__flex vuecal__all-day",style:(0,k.j5)(s.cellOrSplitMinWidth&&{height:s.height})},[s.cellOrSplitMinWidth?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",vr,[(0,m._)("span",null,(0,k.zw)(s.label),1)])),(0,m._)("div",{class:(0,k.C_)(["vuecal__flex vuecal__cells",`${n.view.id}-view`]),grow:"",style:(0,k.j5)(s.cellOrSplitMinWidth?`min-width: ${s.cellOrSplitMinWidth}px`:"")},[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.cells,((t,a)=>((0,m.wg)(),(0,m.j4)(l,{key:a,options:s.options,"edit-events":n.editEvents,data:t,"all-day":!0,"cell-width":s.options.hideWeekdays.length&&(n.vuecal.isWeekView||n.vuecal.isMonthView)&&n.vuecal.cellWidth,"min-timestamp":s.options.minTimestamp,"max-timestamp":s.options.maxTimestamp,"cell-splits":s.daySplits},{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t})])),_:2},1032,["options","edit-events","data","cell-width","min-timestamp","max-timestamp","cell-splits"])))),128))],6)],4)}const fr=["data-split","aria-label","onTouchstart","onMousedown","onClick","onDragover","onDrop"],_r={key:0,class:"cell-time-labels"},br=["innerHTML"],gr={key:2,class:"vuecal__cell-events"},wr=["title"];function yr(e,t,s,i,n,l){const o=(0,m.up)("event");return(0,m.wg)(),(0,m.j4)(a.W3,{class:(0,k.C_)(["vuecal__cell",l.cellClasses]),name:`slide-fade--${l.transitionDirection}`,tag:"div",appear:s.options.transitions,style:(0,k.j5)(l.cellStyles)},{default:(0,m.w5)((()=>[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.splitsCount?l.splits:1,((i,n)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__flex vuecal__cell-content",l.splitsCount&&l.splitClasses(i)]),key:s.options.transitions?`${l.view.id}-${s.data.content}-${n}`:n,"data-split":!!l.splitsCount&&i.id,column:"",tabindex:"0","aria-label":s.data.content,onFocus:t[0]||(t[0]=e=>l.onCellFocus(e)),onKeypress:t[1]||(t[1]=(0,a.D2)((e=>l.onCellkeyPressEnter(e)),["enter"])),onTouchstart:e=>!l.isDisabled&&l.onCellTouchStart(e,l.splitsCount?i.id:null),onMousedown:e=>!l.isDisabled&&l.onCellMouseDown(e,l.splitsCount?i.id:null),onClick:e=>!l.isDisabled&&l.onCellClick(e,i),onDblclick:t[2]||(t[2]=e=>!l.isDisabled&&l.onCellDblClick(e)),onContextmenu:t[3]||(t[3]=e=>!l.isDisabled&&s.options.cellContextmenu&&l.onCellContextMenu(e)),onDragenter:t[4]||(t[4]=t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragEnter(t,e.$data,s.data.startDate)),onDragover:t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragOver(t,e.$data,s.data.startDate,l.splitsCount?i.id:null),onDragleave:t[5]||(t[5]=t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragLeave(t,e.$data,s.data.startDate)),onDrop:t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragDrop(t,e.$data,s.data.startDate,l.splitsCount?i.id:null)},[s.options.showTimeInCells&&s.options.time&&l.isWeekOrDayView&&!s.allDay?((0,m.wg)(),(0,m.iD)("div",_r,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.vuecal.timeCells,((e,t)=>((0,m.wg)(),(0,m.iD)("span",{class:"cell-time-label",key:t},(0,k.zw)(e.label),1)))),128))])):(0,m.kq)("",!0),l.isWeekOrDayView&&!s.allDay&&l.specialHours.length?((0,m.wg)(!0),(0,m.iD)(m.HY,{key:1},(0,m.Ko)(l.specialHours,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__special-hours",`vuecal__special-hours--day${e.day} ${e.class}`]),style:(0,k.j5)(`height: ${e.height}px;top: ${e.top}px`)},[e.label?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"special-hours-label",innerHTML:e.label},null,8,br)):(0,m.kq)("",!0)],6)))),256)):(0,m.kq)("",!0),(0,m.WI)(e.$slots,"cell-content",{events:l.events,selectCell:e=>l.selectCell(e,!0),split:!!l.splitsCount&&i}),l.eventsCount&&(l.isWeekOrDayView||"month"===l.view.id&&s.options.eventsOnMonthView)?((0,m.wg)(),(0,m.iD)("div",gr,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.splitsCount?i.events:l.events,((t,a)=>((0,m.wg)(),(0,m.j4)(o,{key:a,"cell-formatted-date":s.data.formattedDate,event:t,"all-day":s.allDay,"cell-events":l.splitsCount?i.events:l.events,cellOverlaps:(l.splitsCount?i.overlaps[t._eid]:e.cellOverlaps[t._eid])||[],allOverlaps:(l.splitsCount?i.overlaps:e.cellOverlaps)||[],"event-position":((l.splitsCount?i.overlaps[t._eid]:e.cellOverlaps[t._eid])||[]).position,"overlaps-streak":l.splitsCount?i.overlapsStreak:e.cellOverlapsStreak},{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t})])),_:2},1032,["cell-formatted-date","event","all-day","cell-events","cellOverlaps","allOverlaps","event-position","overlaps-streak"])))),128))])):(0,m.kq)("",!0)],42,fr)))),128)),l.timelineVisible?((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__now-line",style:(0,k.j5)(`top: ${l.todaysTimePosition}px`),key:s.options.transitions?`${l.view.id}-now-line`:"now-line",title:l.utils.date.formatTime(l.vuecal.now)},null,12,wr)):(0,m.kq)("",!0)])),_:3},8,["class","name","appear","style"])}const Dr=["eventId","draggable"];function Mr(e,t,s,i,n,l){return(0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__event",l.eventClasses]),style:(0,k.j5)(l.eventStyles),eventId:`event-id-${s.event.id}`,tabindex:"0",onFocus:t[4]||(t[4]=(...e)=>l.focusEvent&&l.focusEvent(...e)),onKeypress:t[5]||(t[5]=(0,a.D2)((0,a.iM)(((...e)=>l.onEnterKeypress&&l.onEnterKeypress(...e)),["stop"]),["enter"])),onMouseenter:t[6]||(t[6]=(...e)=>l.onMouseEnter&&l.onMouseEnter(...e)),onMouseleave:t[7]||(t[7]=(...e)=>l.onMouseLeave&&l.onMouseLeave(...e)),onTouchstart:t[8]||(t[8]=(0,a.iM)(((...e)=>l.onTouchStart&&l.onTouchStart(...e)),["stop"])),onMousedown:t[9]||(t[9]=e=>l.onMouseDown(e)),onMouseup:t[10]||(t[10]=(...e)=>l.onMouseUp&&l.onMouseUp(...e)),onTouchend:t[11]||(t[11]=(...e)=>l.onMouseUp&&l.onMouseUp(...e)),onTouchmove:t[12]||(t[12]=(...e)=>l.onTouchMove&&l.onTouchMove(...e)),onDblclick:t[13]||(t[13]=(...e)=>l.onDblClick&&l.onDblClick(...e)),draggable:l.draggable,onDragstart:t[14]||(t[14]=e=>l.draggable&&l.onDragStart(e)),onDragend:t[15]||(t[15]=e=>l.draggable&&l.onDragEnd())},[l.vuecal.editEvents.delete&&s.event.deletable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-delete",onClick:t[0]||(t[0]=(0,a.iM)(((...e)=>l.deleteEvent&&l.deleteEvent(...e)),["stop"])),onTouchstart:t[1]||(t[1]=(0,a.iM)(((...e)=>l.touchDeleteEvent&&l.touchDeleteEvent(...e)),["stop"]))},(0,k.zw)(l.vuecal.texts.deleteEvent),33)):(0,m.kq)("",!0),(0,m.WI)(e.$slots,"event",{event:s.event,view:l.view.id}),l.resizable?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-resize-handle",contenteditable:"false",onMousedown:t[2]||(t[2]=(0,a.iM)(((...e)=>l.onResizeHandleMouseDown&&l.onResizeHandleMouseDown(...e)),["stop","prevent"])),onTouchstart:t[3]||(t[3]=(0,a.iM)(((...e)=>l.onResizeHandleMouseDown&&l.onResizeHandleMouseDown(...e)),["stop","prevent"]))},null,32)):(0,m.kq)("",!0)],46,Dr)}var Tr={inject:["vuecal","utils","modules","view","domEvents","editEvents"],props:{cellFormattedDate:{type:String,default:""},event:{type:Object,default:()=>({})},cellEvents:{type:Array,default:()=>[]},cellOverlaps:{type:Object,default:()=>({})},allOverlaps:{type:Object,default:()=>({})},eventPosition:{type:Number,default:0},overlapsStreak:{type:Number,default:0},allDay:{type:Boolean,default:!1}},data:()=>({touch:{dragThreshold:30,startX:0,startY:0,dragged:!1}}),methods:{onMouseDown(e,t=!1){let s;if("BUTTON"==e.target.nodeName?s=e.target:"IMG"==e.srcElement.nodeName&&(s=e.target.parentElement),s?.classList?.contains("v-btn__content")||"BUTTON"==e?.target?.nodeName)return void e.preventDefault();if("ontouchstart"in window&&!t)return!1;const{clickHoldAnEvent:a,focusAnEvent:i,resizeAnEvent:n,dragAnEvent:l}=this.domEvents;if(i._eid===this.event._eid&&a._eid===this.event._eid)return!0;this.focusEvent(),a._eid=null,this.vuecal.editEvents.delete&&this.event.deletable&&(a.timeoutId=setTimeout((()=>{n._eid||l._eid||(a._eid=this.event._eid,this.event.deleting=!0)}),a.timeout))},onMouseUp(e){this.domEvents.focusAnEvent._eid!==this.event._eid||this.touch.dragged||(this.domEvents.focusAnEvent.mousedUp=!0),this.touch.dragged=!1},onMouseEnter(e){e.preventDefault(),this.vuecal.emitWithEvent("event-mouse-enter",this.event)},onMouseLeave(e){e.preventDefault(),this.vuecal.emitWithEvent("event-mouse-leave",this.event)},onTouchMove(e){if("function"!==typeof this.vuecal.onEventClick)return;const{clientX:t,clientY:s}=e.touches[0],{startX:a,startY:i,dragThreshold:n}=this.touch;(Math.abs(t-a)>n||Math.abs(s-i)>n)&&(this.touch.dragged=!0)},onTouchStart(e){this.touch.startX=e.touches[0].clientX,this.touch.startY=e.touches[0].clientY,this.onMouseDown(e,!0)},onEnterKeypress(e){if("function"===typeof this.vuecal.onEventClick)return this.vuecal.onEventClick(this.event,e)},onDblClick(e){if("function"===typeof this.vuecal.onEventDblclick)return this.vuecal.onEventDblclick(this.event,e)},onDragStart(e){"blocker"!=this.event.type&&"non-working-hours"!=this.event.type&&"office365_blocker"!=this.event.type&&(this.event.draggingStatic=!1,this.dnd&&this.dnd.eventDragStart(e,this.event))},onDragEnd(){this.dnd&&this.dnd.eventDragEnd(this.event)},onResizeHandleMouseDown(){this.focusEvent(),this.domEvents.dragAnEvent._eid=null,this.domEvents.resizeAnEvent=Object.assign(this.domEvents.resizeAnEvent,{_eid:this.event._eid,start:(this.segment||this.event).start,split:this.event.split||null,segment:!!this.segment&&this.utils.date.formatDateLite(this.segment.start),originalEnd:new Date((this.segment||this.event).end),originalEndTimeMinutes:this.event.endTimeMinutes}),this.event.resizing=!0},deleteEvent(e=!1){if("ontouchstart"in window&&!e)return!1;this.utils.event.deleteAnEvent(this.event)},touchDeleteEvent(e){this.deleteEvent(!0)},cancelDeleteEvent(){this.event.deleting=!1},focusEvent(){const{focusAnEvent:e}=this.domEvents,t=e._eid;if(t!==this.event._eid){if(t){const e=this.view.events.find((e=>e._eid===t));e&&(e.focused=!1)}this.vuecal.cancelDelete(),this.vuecal.emitWithEvent("event-focus",this.event),e._eid=this.event._eid,this.event.focused=!0}}},computed:{eventDimensions(){const{startTimeMinutes:e,endTimeMinutes:t}=this.segment||this.event;let s=e-this.vuecal.timeFrom;const a=Math.max(Math.round(s*this.vuecal.timeCellHeight/this.vuecal.timeStep),0);s=Math.min(t,this.vuecal.timeTo)-this.vuecal.timeFrom;const i=Math.round(s*this.vuecal.timeCellHeight/this.vuecal.timeStep),n=Math.max(i-a,5);return{top:a,height:n}},eventStyles(){if(this.event.allDay||!this.vuecal.time||!this.event.endTimeMinutes||"month"===this.view.id||this.allDay)return{};let e=100-10*this.eventPosition,t=5*this.eventPosition,s=10*(this.eventPosition+1),a=this.event.master_task_color;if(Array.isArray(this.cellOverlaps.sameOverlaps)&&this.cellOverlaps.sameOverlaps.length){const s=this.cellOverlaps.sameOverlaps.length+1,a=this.cellOverlaps.overlaps.filter((e=>{if(!this.cellOverlaps.sameOverlaps.includes(e)&&this.allOverlaps[this.event._eid].position>this.allOverlaps[e].position)return e}));e=100/s-5,t=100/s*(this.eventPosition-a.length)+5*(this.eventPosition-a.length)/s,a.length&&(e-=a.length*(10/s),t+=5*a.length-10*a.length/s*(this.eventPosition-a.length))}this.vuecal.minEventWidth&&e({})},editEvents:{type:Object,required:!0},data:{type:Object,required:!0},cellSplits:{type:Array,default:()=>[]},minTimestamp:{type:[Number,null],default:null},maxTimestamp:{type:[Number,null],default:null},cellWidth:{type:[Number,Boolean],default:!1},allDay:{type:Boolean,default:!1}},data:()=>({tmUtils:A.Z,cellOverlaps:{},cellOverlapsStreak:1,timeAtCursor:null,highlighted:!1,highlightedSplit:null}),methods:{getSplitAtCursor({target:e}){const t=e.classList.contains("vuecal__cell-split");let s=t?e:this.vuecal.findAncestor(e,"vuecal__cell-split");return s&&(s=s.attributes["data-split"].value,parseInt(s).toString()===s.toString()&&(s=parseInt(s))),s||null},splitClasses(e){return{"vuecal__cell-split":!0,"vuecal__cell-split--highlighted":this.highlightedSplit===e.id,"vuecal__cell-split--weekend":e.isWeekend,[e.class]:!!e.class}},checkCellOverlappingEvents(){this.options.time&&this.eventsCount&&!this.splitsCount&&(1===this.eventsCount?(this.cellOverlaps=[],this.cellOverlapsStreak=1):[this.cellOverlaps,this.cellOverlapsStreak]=this.utils.event.checkCellOverlappingEvents(this.events,this.options))},isDOMElementAnEvent(e){return this.vuecal.isDOMElementAnEvent(e)},selectCell(e,t=!1){const s=this.splitsCount?this.getSplitAtCursor(e):null;this.utils.cell.selectCell(t,this.timeAtCursor,s),this.timeAtCursor=null},onCellkeyPressEnter(e){this.isSelected||this.onCellFocus(e);const t=this.splitsCount?this.getSplitAtCursor(e):null;this.utils.cell.keyPressEnterCell(this.timeAtCursor,t),this.timeAtCursor=null},onCellFocus(e){if(!this.isSelected&&!this.isDisabled){this.isSelected=this.data.startDate;const t=this.splitsCount?this.getSplitAtCursor(e):null,s=this.timeAtCursor||this.data.startDate;this.vuecal.$emit("cell-focus",t?{date:s,split:t}:s)}},onCellMouseDown(e,t=null,s=!1){if("ontouchstart"in window&&!s)return!1;this.isSelected||this.onCellFocus(e);const{clickHoldACell:a,focusAnEvent:i}=this.domEvents;this.domEvents.cancelClickEventCreation=!1,a.eventCreated=!1,this.timeAtCursor=new Date(this.data.startDate);const{minutes:n,cursorCoords:{y:l}}=this.vuecal.minutesAtCursor(e);this.timeAtCursor.setMinutes(n);const o=this.isDOMElementAnEvent(e.target);!o&&i._eid&&((this.view.events.find((e=>e._eid===i._eid))||{}).focused=!1),this.editEvents.create&&!o&&this.setUpEventCreation(e,l)},setUpEventCreation(e,t){if(this.options.dragToCreateEvent&&["week","day"].includes(this.view.id)){const{dragCreateAnEvent:s}=this.domEvents;if(s.startCursorY=t,s.split=this.splitsCount?this.getSplitAtCursor(e):null,s.start=this.timeAtCursor,this.options.snapToTime){let e=60*this.timeAtCursor.getHours()+this.timeAtCursor.getMinutes();const t=e+this.options.snapToTime/2;e=t-t%this.options.snapToTime,s.start.setHours(0,e,0,0)}}else this.options.cellClickHold&&["month","week","day"].includes(this.view.id)&&this.setUpCellHoldTimer(e)},setUpCellHoldTimer(e){const{clickHoldACell:t}=this.domEvents;t.cellId=`${this.vuecal._.uid}_${this.data.formattedDate}`,t.split=this.splitsCount?this.getSplitAtCursor(e):null,t.timeoutId=setTimeout((()=>{if(t.cellId&&!this.domEvents.cancelClickEventCreation){const{_eid:e}=this.utils.event.createAnEvent(this.timeAtCursor,null,t.split?{split:t.split}:{});t.eventCreated=e}}),t.timeout)},onCellTouchStart(e,t=null){this.onCellMouseDown(e,t,!0)},onCellClick(e,t){const s=t.date;s.setHours(Math.floor(e.offsetY/100),0,0,0);const a=new Date(s);a.setHours(s.getHours()+1);const i=Q()(s).format("HH:mm"),n="Dashboard - Teams"===this.$route.name,l=n?t.employee_id:Number(localStorage.getItem("selectedEmployee")||this.user.id);this.$events.emit("show-menu-modal",{time:i,date:A.Z.formatDateTimeForBackend(s),employee:l}),setTimeout((()=>{this.$events.emit("add-timeblock",{id:null,start:A.Z.formatDateTimeForBackend(s),end:A.Z.formatDateTimeForBackend(a)})}),150),this.isDOMElementAnEvent(e.target)||this.selectCell(e)},onCellDblClick(e){const t=new Date(this.data.startDate);t.setMinutes(this.vuecal.minutesAtCursor(e).minutes);const s=this.splitsCount?this.getSplitAtCursor(e):null;this.vuecal.$emit("cell-dblclick",s?{date:t,split:s}:t),this.options.dblclickToNavigate&&this.vuecal.switchToNarrowerView()},onCellContextMenu(e){e.stopPropagation(),e.preventDefault();const t=new Date(this.data.startDate),{cursorCoords:s,minutes:a}=this.vuecal.minutesAtCursor(e);t.setMinutes(a);const i=this.splitsCount?this.getSplitAtCursor(e):null;this.vuecal.$emit("cell-contextmenu",{date:t,...s,...i||{},e:e})}},computed:{...(0,U.Se)("auth",["user"]),dnd(){return this.modules.dnd},nowInMinutes(){return this.utils.date.dateToMinutes(this.vuecal.now)},isBeforeMinDate(){return null!==this.minTimestamp&&this.minTimestamp>this.data.endDate.getTime()},isAfterMaxDate(){return this.maxTimestamp&&this.maxTimestamp{let{from:t,to:s}=e;return t=Math.max(t,this.options.timeFrom),s=Math.min(s,this.options.timeTo),{...e,height:(s-t)*this.timeScale,top:(t-this.options.timeFrom)*this.timeScale}}))},events(){const{startDate:e,endDate:t}=this.data;let s=[];if(!["years","year"].includes(this.view.id)||this.options.eventsCountOnYearView){if(s=this.view.events.slice(0),"month"===this.view.id&&s.push(...this.view.outOfScopeEvents),s=s.filter((s=>this.utils.event.eventInRange(s,e,t))),this.options.showAllDayEvents&&"month"!==this.view.id&&(s=s.filter((e=>!!e.allDay===this.allDay))),this.options.time&&this.isWeekOrDayView&&!this.allDay){const{timeFrom:e,timeTo:t}=this.options;s=s.filter((s=>{const a=s.daysCount>1&&s.segments[this.data.formattedDate]||{},i=1===s.daysCount&&s.startTimeMinutese,n=s.daysCount>1&&a.startTimeMinutese,l=!1;return s.allDay||i||n||l}))}!this.options.time||!this.isWeekOrDayView||this.options.showAllDayEvents&&this.allDay||s.sort(((e,t)=>e.start{const s=this.events.filter((t=>t.split===e.id)),[a,i]=this.utils.event.checkCellOverlappingEvents(s.filter((e=>!e.background&&!e.allDay)),this.options);return{...e,overlaps:a,overlapsStreak:i,events:s}}))},splitsCount(){return this.splits.length},cellClasses(){return{[this.data.class]:!!this.data.class,"vuecal__cell--current":this.data.current,"vuecal__cell--today":this.data.today,"vuecal__cell--out-of-scope":this.data.outOfScope,"vuecal__cell--before-min":this.isDisabled&&this.isBeforeMinDate,"vuecal__cell--after-max":this.isDisabled&&this.isAfterMaxDate,"vuecal__cell--disabled":this.isDisabled,"vuecal__cell--selected":this.isSelected,"vuecal__cell--highlighted":this.highlighted,"vuecal__cell--has-splits":this.splitsCount,"vuecal__cell--has-events":this.eventsCount}},cellStyles(){return{...this.cellWidth?{width:`${this.cellWidth}%`}:{}}},timelineVisible(){const{time:e,timeTo:t}=this.options;return this.data.today&&this.isWeekOrDayView&&e&&!this.allDay&&this.nowInMinutes<=t},todaysTimePosition(){if(!this.data.today||!this.options.time)return;const e=this.nowInMinutes-this.options.timeFrom;return Math.round(e*this.timeScale)},timeScale(){return this.options.timeCellHeight/this.options.timeStep}}};const Er=(0,$.Z)(jr,[["render",yr]]);var xr=Er,Wr={inject:["vuecal","view","editEvents"],components:{"vuecal-cell":xr},props:{options:{type:Object,required:!0},cells:{type:Array,required:!0},label:{type:String,required:!0},daySplits:{type:Array,default:()=>[]},shortEvents:{type:Boolean,default:!0},height:{type:String,default:""},cellOrSplitMinWidth:{type:Number,default:null}},computed:{hasCellOrSplitWidth(){return!!(this.options.minCellWidth||this.daySplits.length&&this.options.minSplitWidth)}}};const Sr=(0,$.Z)(Wr,[["render",kr]]);var Or=Sr,Vr=s(15941);const zr=1440,Ar={weekDays:Array(7).fill(""),weekDaysShort:[],months:Array(12).fill(""),years:"",year:"",month:"",week:"",day:"",today:"",noEvent:"",allDay:"",deleteEvent:"",createEvent:"",dateFormat:"dddd MMMM D, YYYY",am:"am",pm:"pm"},Ur=["years","year","month","week","day"],Hr=new Ao(Ar);var Zr={name:"vue-cal",components:{"vuecal-cell":xr,"vuecal-header":pr,WeekdaysHeadings:cr,AllDayBar:Or},provide(){return{vuecal:this,utils:this.utils,modules:this.modules,previous:this.previous,next:this.next,switchView:this.switchView,updateSelectedDate:this.updateSelectedDate,editEvents:this.editEvents,view:this.view,domEvents:this.domEvents}},props:{activeView:{type:String,default:"week"},scrollToHour:{type:Number,default:0},allDayBarHeight:{type:[String,Number],default:"25px"},cellClickHold:{type:Boolean,default:!0},cellContextmenu:{type:Boolean,default:!1},clickToNavigate:{type:Boolean,default:!1},dblclickToNavigate:{type:Boolean,default:!0},disableDatePrototypes:{type:Boolean,default:!1},disableDays:{type:Array,default:()=>[]},disableViews:{type:Array,default:()=>[]},dragToCreateEvent:{type:Boolean,default:!0},dragToCreateThreshold:{type:Number,default:15},editableEvents:{type:[Boolean,Object],default:!1},unscheduledTime:{type:Array,default:[]},events:{type:Array,default:()=>[]},eventsCountOnYearView:{type:Boolean,default:!1},eventsOnMonthView:{type:[Boolean,String],default:!1},hideBody:{type:Boolean,default:!1},hideTitleBar:{type:Boolean,default:!1},hideViewSelector:{type:Boolean,default:!1},hideWeekdays:{type:Array,default:()=>[]},hideWeekends:{type:Boolean,default:!1},locale:{type:[String,Object],default:"en"},maxDate:{type:[String,Date],default:""},minCellWidth:{type:Number,default:0},minDate:{type:[String,Date],default:""},minEventWidth:{type:Number,default:0},minSplitWidth:{type:Number,default:0},onEventClick:{type:[Function,null],default:null},onEventCreate:{type:[Function,null],default:null},onEventDblclick:{type:[Function,null],default:null},overlapsPerTimeStep:{type:Boolean,default:!1},resizeX:{type:Boolean,default:!1},selectedDate:{type:[String,Date],default:""},showAllDayEvents:{type:[Boolean,String],default:!1},showTimeInCells:{type:Boolean,default:!1},showWeekNumbers:{type:[Boolean,String],default:!1},snapToTime:{type:Number,default:0},small:{type:Boolean,default:!1},specialHours:{type:Object,default:()=>({})},splitDays:{type:Array,default:()=>[]},startWeekOnSunday:{type:Boolean,default:!1},stickySplitLabels:{type:Boolean,default:!1},time:{type:Boolean,default:!0},timeCellHeight:{type:Number,default:40},timeFormat:{type:String,default:""},timeFrom:{type:Number,default:0},timeStep:{type:Number,default:60},timeTo:{type:Number,default:zr},todayButton:{type:Boolean,default:!1},transitions:{type:Boolean,default:!0},twelveHour:{type:Boolean,default:!1},watchRealTime:{type:Boolean,default:!1},xsmall:{type:Boolean,default:!1}},data(){return{ready:!1,texts:{...Ar},utils:{date:!!this.disableDatePrototypes&&Hr.removePrototypes()||Hr,cell:null,event:null},modules:{dnd:null},cellsEl:null,view:{id:"",title:"",startDate:null,endDate:null,firstCellDate:null,lastCellDate:null,selectedDate:null,events:[]},eventIdIncrement:1,now:new Date,timeTickerIds:[null,null],domEvents:{resizeAnEvent:{_eid:null,start:null,split:null,segment:null,originalEndTimeMinutes:0,originalEnd:null,end:null,startCell:null,endCell:null},dragAnEvent:{_eid:null},dragCreateAnEvent:{startCursorY:null,start:null,split:null,event:null},focusAnEvent:{_eid:null,mousedUp:!1},clickHoldAnEvent:{_eid:null,timeout:1200,timeoutId:null},dblTapACell:{taps:0,timeout:500},clickHoldACell:{cellId:null,split:null,timeout:1200,timeoutId:null,eventCreated:!1},cancelClickEventCreation:!1},mutableEvents:[],transitionDirection:"right"}},methods:{async loadLocale(e){if("object"===typeof this.locale)return this.texts=Object.assign({},Ar,e),void this.utils.date.updateTexts(this.texts);if("en"===this.locale){const e=await s.e(3320).then(s.t.bind(s,3320,19));this.texts=Object.assign({},Ar,e)}else s(66667)(`./${e}.json`).then((e=>{this.texts=Object.assign({},Ar,e.default),this.utils.date.updateTexts(this.texts)}))},loadDragAndDrop(){s.e(1466).then(s.bind(s,91466)).then((e=>{const{DragAndDrop:t}=e;this.modules.dnd=new t(this)})).catch((()=>Vr.warn("Vue Cal: Missing drag & drop module.")))},validateView(e){return Ur.includes(e)||(Vr.error(`Vue Cal: invalid active-view parameter provided: "${e}".\nA valid view must be one of: ${Ur.join(", ")}.`),e="week"),this.enabledViews.includes(e)||(Vr.warn(`Vue Cal: the provided active-view "${e}" is disabled. Using the "${this.enabledViews[0]}" view instead.`),e=this.enabledViews[0]),e},switchToNarrowerView(e=null){this.transitionDirection="right";const t=this.enabledViews[this.enabledViews.indexOf(this.view.id)+1];t&&this.switchView(t,e)},switchView(e,t=null,s=!1){e=this.validateView(e);const a=this.utils.date,i=this.view.startDate&&this.view.startDate.getTime();if(this.transitions&&s){if(this.view.id===e)return;const t=this.enabledViews;this.transitionDirection=t.indexOf(this.view.id)>t.indexOf(e)?"left":"right"}const n=this.view.id;switch(this.view.events=[],this.view.id=e,this.view.firstCellDate=null,this.view.lastCellDate=null,t||(t=this.view.selectedDate||this.view.startDate),e){case"years":this.view.startDate=new Date(25*Math.floor(t.getFullYear()/25)||2e3,0,1),this.view.endDate=new Date(this.view.startDate.getFullYear()+25,0,1),this.view.endDate.setSeconds(-1);break;case"year":this.view.startDate=new Date(t.getFullYear(),0,1),this.view.endDate=new Date(t.getFullYear()+1,0,1),this.view.endDate.setSeconds(-1);break;case"month":{this.view.startDate=new Date(t.getFullYear(),t.getMonth(),1),this.view.endDate=new Date(t.getFullYear(),t.getMonth()+1,1),this.view.endDate.setSeconds(-1);let e=new Date(this.view.startDate);if(e.getDay()!==(this.startWeekOnSunday?0:1)&&(e=a.getPreviousFirstDayOfWeek(e,this.startWeekOnSunday)),this.view.firstCellDate=e,this.view.lastCellDate=a.addDays(e,41),this.view.lastCellDate.setHours(23,59,59,0),this.hideWeekends){if([0,6].includes(this.view.firstCellDate.getDay())){const e=6!==this.view.firstCellDate.getDay()||this.startWeekOnSunday?1:2;this.view.firstCellDate=a.addDays(this.view.firstCellDate,e)}if([0,6].includes(this.view.startDate.getDay())){const e=6===this.view.startDate.getDay()?2:1;this.view.startDate=a.addDays(this.view.startDate,e)}if([0,6].includes(this.view.lastCellDate.getDay())){const e=0!==this.view.lastCellDate.getDay()||this.startWeekOnSunday?1:2;this.view.lastCellDate=a.subtractDays(this.view.lastCellDate,e)}if([0,6].includes(this.view.endDate.getDay())){const e=0===this.view.endDate.getDay()?2:1;this.view.endDate=a.subtractDays(this.view.endDate,e)}}break}case"week":{t=a.getPreviousFirstDayOfWeek(t,this.startWeekOnSunday);const e=this.hideWeekends?5:7;this.view.startDate=this.hideWeekends&&this.startWeekOnSunday?a.addDays(t,1):t,this.view.startDate.setHours(0,0,0,0),this.view.endDate=a.addDays(t,e),this.view.endDate.setSeconds(-1);break}case"day":this.view.startDate=t,this.view.startDate.setHours(0,0,0,0),this.view.endDate=new Date(t),this.view.endDate.setHours(23,59,59,0);break}this.addEventsToView();const l=this.view.startDate&&this.view.startDate.getTime();if((n!==e||l!==i)&&(this.$emit("update:activeView",e),this.ready)){const t=this.view.startDate,s={view:e,startDate:t,endDate:this.view.endDate,...this.isMonthView?{firstCellDate:this.view.firstCellDate,lastCellDate:this.view.lastCellDate,outOfScopeEvents:this.view.outOfScopeEvents.map(this.cleanupEvent)}:{},events:this.view.events.map(this.cleanupEvent),...this.isWeekView?{week:a.getWeek(this.startWeekOnSunday?a.addDays(t,1):t)}:{}};this.$refs["vuecal_scroll"].scrollTop=this.scrollToHour*this.timeCellHeight,this.$emit("view-change",s)}},previous(){this.previousNext(!1)},next(){this.previousNext()},previousNext(e=!0){const t=this.utils.date;this.transitionDirection=e?"right":"left";const s=e?1:-1;let a=null;const{startDate:i,id:n}=this.view;switch(n){case"years":a=new Date(i.getFullYear()+25*s,0,1);break;case"year":a=new Date(i.getFullYear()+1*s,1,1);break;case"month":a=new Date(i.getFullYear(),i.getMonth()+1*s,1);break;case"week":a=t[e?"addDays":"subtractDays"](t.getPreviousFirstDayOfWeek(i,this.startWeekOnSunday),7);break;case"day":a=t[e?"addDays":"subtractDays"](i,1);const n=a.getDay(),l=this.startWeekOnSunday?n:(n||7)-1,o=this.weekDays[l].hide;if(o){const s=this.weekDays.map(((e,t)=>({...e,i:t})));let i=null,n=0;e?(i=[...s.slice(l),...s].find((e=>(n++,!e.hide))).i,n--):i=[...s,...s.slice(0,l)].reverse().find((e=>(n++,!e.hide))).i,a=t[e?"addDays":"subtractDays"](a,n)}break}a&&this.switchView(n,a)},addEventsToView(e=[]){const t=this.utils.event,{startDate:s,endDate:a,firstCellDate:i,lastCellDate:n}=this.view;if(e.length||(this.view.events=[]),e=e.length?e:[...this.mutableEvents],!e||this.isYearsOrYearView&&!this.eventsCountOnYearView)return;let l=e.filter((e=>t.eventInRange(e,s,a)));this.isYearsOrYearView||this.isMonthView&&!this.eventsOnMonthView||(l=l.map((e=>e.daysCount>1?t.createEventSegments(e,i||s,n||a):e))),this.view.events.push(...l),this.isMonthView&&(this.view.outOfScopeEvents=[],e.forEach((e=>{(t.eventInRange(e,i,s)||t.eventInRange(e,a,n))&&(this.view.events.some((t=>t._eid===e._eid))||this.view.outOfScopeEvents.push(e))})))},findAncestor(e,t){while((e=e.parentElement)&&!e.classList.contains(t));return e},isDOMElementAnEvent(e){return e.classList.contains("vuecal__event")||this.findAncestor(e,"vuecal__event")},onMouseMove(e){const{resizeAnEvent:t,dragAnEvent:s,dragCreateAnEvent:a}=this.domEvents;(null!==t._eid||null!==s._eid||a.start)&&(e.preventDefault(),t._eid?this.eventResizing(e):this.dragToCreateEvent&&a.start&&this.eventDragCreation(e))},onMouseUp(e){const{focusAnEvent:t,resizeAnEvent:s,clickHoldAnEvent:a,clickHoldACell:i,dragCreateAnEvent:n}=this.domEvents,{_eid:l}=a,{_eid:o}=s;let r=!1;const{event:d,start:u}=n,c=this.isDOMElementAnEvent(e.target),m=t.mousedUp;if(t.mousedUp=!1,c&&(this.domEvents.cancelClickEventCreation=!0),i.eventCreated)return;if(o){const{originalEnd:e,originalEndTimeMinutes:t,endTimeMinutes:a}=s,i=this.view.events.find((e=>e._eid===s._eid));if(r=a&&a!==t,i&&i.end.getTime()!==e.getTime()){const t=this.mutableEvents.find((e=>e._eid===s._eid));t.endTimeMinutes=i.endTimeMinutes,t.end=i.end;const a=this.cleanupEvent(i),n={...this.cleanupEvent(i),end:e,endTimeMinutes:i.originalEndTimeMinutes};this.$emit("event-duration-change",{event:a,oldDate:s.originalEnd,originalEvent:n}),this.$emit("event-change",{event:a,originalEvent:n})}i&&(i.resizing=!1),s._eid=null,s.start=null,s.split=null,s.segment=null,s.originalEndTimeMinutes=null,s.originalEnd=null,s.endTimeMinutes=null,s.startCell=null,s.endCell=null}else u&&(d&&(this.emitWithEvent("event-drag-create",d),n.event.resizing=!1),n.start=null,n.split=null,n.event=null);c||o||this.unfocusEvent(),a.timeoutId&&!l&&(clearTimeout(a.timeoutId),a.timeoutId=null),i.timeoutId&&(clearTimeout(i.timeoutId),i.timeoutId=null);const h="function"===typeof this.onEventClick;if(m&&!r&&!l&&!d&&h){let s=this.view.events.find((e=>e._eid===t._eid));return!s&&this.isMonthView&&(s=this.view.outOfScopeEvents.find((e=>e._eid===t._eid))),s&&this.onEventClick(s,e)}},onKeyUp(e){27===e.keyCode&&this.cancelDelete()},eventResizing(e){const{resizeAnEvent:t}=this.domEvents,s=this.view.events.find((e=>e._eid===t._eid))||{segments:{}},{minutes:a,cursorCoords:i}=this.minutesAtCursor(e),n=s.segments&&s.segments[t.segment],{date:l,event:o}=this.utils,r=Math.max(a,this.timeFrom+1,(n||s).startTimeMinutes+1);if(s.endTimeMinutes=t.endTimeMinutes=r,this.snapToTime){const e=s.endTimeMinutes+this.snapToTime/2;s.endTimeMinutes=e-e%this.snapToTime}if(n&&(n.endTimeMinutes=s.endTimeMinutes),s.end.setHours(0,s.endTimeMinutes,s.endTimeMinutes===zr?-1:0,0),this.resizeX&&this.isWeekView){s.daysCount=l.countDays(s.start,s.end);const e=this.cellsEl,a=e.offsetWidth/e.childElementCount,n=Math.floor(i.x/a);if(null===t.startCell&&(t.startCell=n-(s.daysCount-1)),t.endCell!==n){t.endCell=n;const e=l.addDays(s.start,n-t.startCell),a=Math.max(l.countDays(s.start,e),1);if(a!==s.daysCount){let e=null;e=a>s.daysCount?o.addEventSegment(s):o.removeEventSegment(s),t.segment=e,s.endTimeMinutes+=.001}}}this.$emit("event-resizing",{_eid:s._eid,end:s.end,endTimeMinutes:s.endTimeMinutes})},eventDragCreation(e){const{dragCreateAnEvent:t}=this.domEvents,{start:s,startCursorY:a,split:i}=t,n=new Date(s),{minutes:l,cursorCoords:{y:o}}=this.minutesAtCursor(e);if(t.event||!(Math.abs(a-o)s._eid===(e._eid||t._eid)));e._eid=null,t._eid=null,s&&(s.focused=!1,s.deleting=!1)},cancelDelete(){const{clickHoldAnEvent:e}=this.domEvents;if(e._eid){const t=this.view.events.find((t=>t._eid===e._eid));t&&(t.deleting=!1),e._eid=null,e.timeoutId=null}},onEventTitleBlur(e,t){if(t.title===e.target.innerHTML)return;const s=t.title;t.title=e.target.innerHTML;const a=this.cleanupEvent(t);this.$emit("event-title-change",{event:a,oldTitle:s}),this.$emit("event-change",{event:a,originalEvent:{...a,title:s}})},updateMutableEvents(){const e=this.utils.date;this.mutableEvents=[],this.events.forEach((t=>{const s="string"===typeof t.start?e.stringToDate(t.start):t.start,a=e.formatDateLite(s),i=e.dateToMinutes(s);let n=null;"string"===typeof t.end&&t.end.includes("24:00")?(n=new Date(t.end.replace(" 24:00","")),n.setHours(23,59,59,0)):n="string"===typeof t.end?e.stringToDate(t.end):t.end;let l=e.formatDateLite(n),o=e.dateToMinutes(n);o&&o!==zr||(!this.time||"string"===typeof t.end&&10===t.end.length?n.setHours(23,59,59,0):n.setSeconds(n.getSeconds()-1),l=e.formatDateLite(n),o=zr);const r=a!==l;t=Object.assign({...this.utils.event.eventDefaults},t,{_eid:`${this._.uid}_${this.eventIdIncrement++}`,segments:r?{}:null,start:s,startTimeMinutes:i,end:n,endTimeMinutes:o,daysCount:r?e.countDays(s,n):1,class:t.class}),this.mutableEvents.push(t)}))},minutesAtCursor(e){return this.utils.cell.minutesAtCursor(e)},createEvent(e,t,s={}){return this.utils.event.createAnEvent(e,t,s)},cleanupEvent(e){e={...e};const t=["segments","deletable","deleting","titleEditable","resizable","resizing","draggable","dragging","draggingStatic","focused"];return t.forEach((t=>{t in e&&delete e[t]})),e.repeat||delete e.repeat,e},emitWithEvent(e,t){this.$emit(e,this.cleanupEvent(t))},updateSelectedDate(e){if(e=e&&"string"===typeof e?this.utils.date.stringToDate(e):new Date(e),e&&e instanceof Date){const{selectedDate:t}=this.view;t&&(this.transitionDirection=t.getTime()>e.getTime()?"left":"right"),e.setHours(0,0,0,0),t&&t.getTime()===e.getTime()||(this.view.selectedDate=e),this.switchView(this.view.id)}this.$emit("update:selected-date",this.view.selectedDate)},getWeekNumber(e){const t=this.utils.date,s=this.firstCellDateWeekNumber,a=s+e,i=this.startWeekOnSunday?1:0;return a>52?t.getWeek(t.addDays(this.view.firstCellDate,7*e+i)):a},timeTick(){this.now=new Date,this.timeTickerIds[1]=setTimeout(this.timeTick,6e4)},updateDateTexts(){this.utils.date.updateTexts(this.texts)},alignWithScrollbar(){},cellOrSplitHasEvents(e,t=null){return e.length&&(!t&&e.length||t&&e.some((e=>e.split===t.id)))}},created(){this.utils.cell=new Ho(this),this.utils.event=new Lo(this,this.utils.date),this.loadLocale(this.locale),this.editEvents.drag&&this.loadDragAndDrop(),this.updateMutableEvents(this.events),this.view.id=this.currentView,this.selectedDate?this.updateSelectedDate(this.selectedDate):(this.view.selectedDate=new Date,this.switchView(this.currentView)),this.time&&this.watchRealTime&&(this.timeTickerIds[0]=setTimeout(this.timeTick,1e3*(60-this.now.getSeconds())))},mounted(){const e=this.utils.date,t="ontouchstart"in window,{resize:s,drag:a,create:i,delete:n,title:l}=this.editEvents,o=this.onEventClick&&"function"===typeof this.onEventClick;(s||a||i||n||l||o)&&window.addEventListener(t?"touchend":"mouseup",this.onMouseUp),(s||a||i&&this.dragToCreateEvent)&&window.addEventListener(t?"touchmove":"mousemove",this.onMouseMove,{passive:!1}),l&&window.addEventListener("keyup",this.onKeyUp),t&&(this.$refs.vuecal.oncontextmenu=function(e){e.preventDefault(),e.stopPropagation()});const r=this.view.startDate,d={view:this.view.id,startDate:r,endDate:this.view.endDate,...this.isMonthView?{firstCellDate:this.view.firstCellDate,lastCellDate:this.view.lastCellDate}:{},events:this.view.events.map(this.cleanupEvent),...this.isWeekView?{week:e.getWeek(this.startWeekOnSunday?e.addDays(r,1):r)}:{}};this.$refs["vuecal_scroll"].addEventListener("scroll",(()=>{this.$refs["vuecal_splits_heading"].style.top=`${this.$refs["vuecal_scroll"].scrollTop}px`})),this.viewportTimelineOffset=this.$refs["vuecal_scroll"].getBoundingClientRect().top,this.$refs["vuecal_scroll"].scrollTop=this.scrollToHour*this.timeCellHeight,this.$emit("ready",d),this.ready=!0},beforeUnmount(){const e="ontouchstart"in window;window.removeEventListener(e?"touchmove":"mousemove",this.onMouseMove,{passive:!1}),window.removeEventListener(e?"touchend":"mouseup",this.onMouseUp),window.removeEventListener("keyup",this.onKeyUp),this.timeTickerIds[0]&&clearTimeout(this.timeTickerIds[0]),this.timeTickerIds[1]&&clearTimeout(this.timeTickerIds[1]),this.timeTickerIds=[null,null]},computed:{editEvents(){return this.editableEvents&&"object"===typeof this.editableEvents?{title:!!this.editableEvents.title,drag:!!this.editableEvents.drag,resize:!!this.editableEvents.resize,create:!!this.editableEvents.create,delete:!!this.editableEvents.delete}:{title:!!this.editableEvents,drag:!!this.editableEvents,resize:!!this.editableEvents,create:!!this.editableEvents,delete:!!this.editableEvents}},views(){return{years:{label:this.texts.years,enabled:!this.disableViews.includes("years")},year:{label:this.texts.year,enabled:!this.disableViews.includes("year")},month:{label:this.texts.month,enabled:!this.disableViews.includes("month")},week:{label:this.texts.week,enabled:!this.disableViews.includes("week")},day:{label:this.texts.day,enabled:!this.disableViews.includes("day")}}},currentView(){return this.validateView(this.activeView)},enabledViews(){return Object.keys(this.views).filter((e=>this.views[e].enabled))},hasTimeColumn(){return this.time&&this.isWeekOrDayView},isShortMonthView(){return this.isMonthView&&"short"===this.eventsOnMonthView},firstCellDateWeekNumber(){const e=this.utils.date,t=this.view.firstCellDate;return e.getWeek(this.startWeekOnSunday?e.addDays(t,1):t)},timeCells(){const e=[];for(let t=this.timeFrom,s=this.timeTo;t!e.hide))||[]).map(((e,t)=>({...e,id:e.id||t+1})))},hasSplits(){return this.daySplits.length&&this.isWeekOrDayView},hasShortEvents(){return"short"===this.showAllDayEvents},cellOrSplitMinWidth(){let e=null;return this.hasSplits&&this.minSplitWidth?e=this.visibleDaysCount*this.minSplitWidth*this.daySplits.length:this.minCellWidth&&this.isWeekView&&(e=this.visibleDaysCount*this.minCellWidth),e},allDayBar(){let e=this.allDayBarHeight||null;return e&&!isNaN(e)&&(e+="px"),{cells:this.viewCells,options:this.$props,label:this.texts.allDay,shortEvents:this.hasShortEvents,daySplits:this.hasSplits&&this.daySplits||[],cellOrSplitMinWidth:this.cellOrSplitMinWidth,height:e}},minTimestamp(){let e=null;return this.minDate&&"string"===typeof this.minDate?e=this.utils.date.stringToDate(this.minDate):this.minDate&&this.minDate instanceof Date&&(e=this.minDate),e?e.getTime():null},maxTimestamp(){let e=null;return this.maxDate&&"string"===typeof this.maxDate?e=this.utils.date.stringToDate(this.maxDate):this.maxDate&&this.minDate instanceof Date&&(e=this.maxDate),e?e.getTime():null},weekDays(){let{weekDays:e,weekDaysShort:t=[]}=this.texts;return e=e.slice(0).map(((e,s)=>({label:e,...t.length?{short:t[s]}:{},hide:this.hideWeekends&&s>=5||this.hideWeekdays.length&&this.hideWeekdays.includes(s+1)}))),this.startWeekOnSunday&&e.unshift(e.pop()),e},weekDaysInHeader(){return this.isMonthView||this.isWeekView&&!this.minCellWidth&&!(this.hasSplits&&this.minSplitWidth)},months(){return this.texts.months.map((e=>({label:e})))},specialDayHours(){return this.specialHours&&Object.keys(this.specialHours).length?Array(7).fill("").map(((e,t)=>{let s=this.specialHours[t+1]||[];return Array.isArray(s)||(s=[s]),e=[],s.forEach((({from:s,to:a,class:i,label:n},l)=>{e[l]={day:t+1,from:[null,void 0].includes(s)?null:1*s,to:[null,void 0].includes(a)?null:1*a,class:i||"",label:n||""}})),e})):{}},viewTitle(){const e=this.utils.date;let t="";const s=this.view.startDate,a=s.getFullYear(),i=s.getMonth();switch(this.view.id){case"years":t=this.texts.years;break;case"year":t=a;break;case"month":t=`${this.months[i].label} ${a}`;break;case"week":{const a=this.view.endDate,i=s.getFullYear();let n=this.texts.months[s.getMonth()];this.xsmall&&(n=n.substring(0,3));let l=`${n} ${i}`;if(a.getMonth()!==s.getMonth()){const e=a.getFullYear();let t=this.texts.months[a.getMonth()];this.xsmall&&(t=t.substring(0,3)),l=i===e?`${n} - ${t} ${i}`:this.small?`${n.substring(0,3)} ${i} - ${t.substring(0,3)} ${e}`:`${n} ${i} - ${t} ${e}`}t=`${this.texts.week} ${e.getWeek(this.startWeekOnSunday?e.addDays(s,1):s)} (${l})`;break}case"day":t=this.utils.date.formatDate(s,this.texts.dateFormat,this.texts);break}return t},viewCells(){const e=this.utils.date;let t=[],s=null,a=!1;this.watchRealTime||(this.now=new Date);const i=this.now;switch(this.view.id){case"years":s=this.view.startDate.getFullYear(),t=Array.apply(null,Array(25)).map(((t,a)=>{const n=new Date(s+a,0,1),l=new Date(s+a+1,0,1);return l.setSeconds(-1),{startDate:n,formattedDate:e.formatDateLite(n),endDate:l,content:s+a,current:s+a===i.getFullYear()}}));break;case"year":s=this.view.startDate.getFullYear(),t=Array.apply(null,Array(12)).map(((t,a)=>{const n=new Date(s,a,1),l=new Date(s,a+1,1);return l.setSeconds(-1),{startDate:n,formattedDate:e.formatDateLite(n),endDate:l,content:this.xsmall?this.months[a].label.substr(0,3):this.months[a].label,current:a===i.getMonth()&&s===i.getFullYear()}}));break;case"month":{const s=this.view.startDate.getMonth(),i=new Date(this.view.firstCellDate);a=!1,t=Array.apply(null,Array(42)).map(((t,n)=>{const l=e.addDays(i,n),o=new Date(l);o.setHours(23,59,59,0);const r=!a&&e.isToday(l)&&!a++;return{startDate:l,formattedDate:e.formatDateLite(l),endDate:o,content:l.getDate(),today:r,outOfScope:l.getMonth()!==s,class:`vuecal__cell--day${l.getDay()||7}`}})),(this.hideWeekends||this.hideWeekdays.length)&&(t=t.filter((e=>{const t=e.startDate.getDay()||7;return!(this.hideWeekends&&t>=6||this.hideWeekdays.length&&this.hideWeekdays.includes(t))})));break}case"week":{a=!1;let s=this.view.startDate;const i=this.weekDays;t=i.map(((t,i)=>{const n=e.addDays(s,this.startWeekOnSunday?i-1:i),l=new Date(n);l.setHours(23,59,59,0);const o=(n.getDay()||7)-1;return{startDate:n,formattedDate:e.formatDateLite(n),endDate:l,today:!a&&e.isToday(n)&&!a++,specialHours:this.specialDayHours[o]||[]}})).filter(((e,t)=>!i[t].hide));break}case"day":{const s=this.view.startDate,a=new Date(this.view.startDate);a.setHours(23,59,59,0);const i=(s.getDay()||7)-1;t=[{startDate:s,formattedDate:e.formatDateLite(s),endDate:a,today:e.isToday(s),specialHours:this.specialDayHours[i]||[]}];break}}return t},visibleDaysCount(){return this.isDayView?1:7-this.weekDays.reduce(((e,t)=>e+t.hide),0)},cellWidth(){return 100/this.visibleDaysCount},cssClasses(){const{resizeAnEvent:e,dragAnEvent:t,dragCreateAnEvent:s}=this.domEvents;return{[`vuecal--${this.view.id}-view`]:!0,[`vuecal--${this.locale}`]:this.locale,"vuecal--no-time":!this.time,"vuecal--view-with-time":this.hasTimeColumn,"vuecal--week-numbers":this.showWeekNumbers&&this.isMonthView,"vuecal--twelve-hour":this.twelveHour,"vuecal--click-to-navigate":this.clickToNavigate,"vuecal--hide-weekends":this.hideWeekends,"vuecal--split-days":this.hasSplits,"vuecal--sticky-split-labels":this.hasSplits&&this.stickySplitLabels,"vuecal--overflow-x":this.minCellWidth&&this.isWeekView||this.hasSplits&&this.minSplitWidth,"vuecal--small":this.small,"vuecal--xsmall":this.xsmall,"vuecal--resizing-event":e._eid,"vuecal--drag-creating-event":s.event,"vuecal--dragging-event":t._eid,"vuecal--events-on-month-view":this.eventsOnMonthView,"vuecal--short-events":this.isMonthView&&"short"===this.eventsOnMonthView,"vuecal--has-touch":"undefined"!==typeof window&&"ontouchstart"in window}},isYearsOrYearView(){return["years","year"].includes(this.view.id)},isYearsView(){return"years"===this.view.id},isYearView(){return"year"===this.view.id},isMonthView(){return"month"===this.view.id},isWeekOrDayView(){return["week","day"].includes(this.view.id)},isWeekView(){return"week"===this.view.id},isDayView(){return"day"===this.view.id}},watch:{events:{handler(e,t){this.updateMutableEvents(e),this.addEventsToView()},deep:!0},locale(e){this.loadLocale(e)},selectedDate(e){this.updateSelectedDate(e)},activeView(e){this.switchView(e)}}};const Ir=(0,$.Z)(Zr,[["render",Eo]]);var Fr=Ir,Yr={install:e=>{e.component("Vue-cal",Fr)}};s(48851),s(1292),s(81633),s(51045),s(46187),s(22299),s(93423),s(54687),s(49147),s(6250);n(),d();const Pr={axios:{disabled:!0},i18n:{languages:[{title:"Slovenský",flag:"sk",value:"sk"}],defaultLanguage:"sk"},moxios:{routes:{"GET v1/overview/teams":!0,"GET v1/overview/tasks":!0}}},Lr=(0,a.ri)(ll).use(cl).use(rl).use(Gl).use(Bl,Pr).use(i.oX).use(o).use(Yr).use(Ql).use(c(),{color:"#6200EE"}).mount("#app"),Nr=Lr.$i18n.t},65687:function(e,t,s){"use strict";s.d(t,{Ly:function(){return a},d2:function(){return i},Jc:function(){return n},iy:function(){return l},QS:function(){return r},rI:function(){return o}});var a=s(27484),i=s(53830),n=s.p+"img/checkmark-double.8bc9494b.svg",l=s(34413),o=(s(87500),s(60666)),r=(s(38351),s(35902),s(52906),s.p+"img/office-365.84b4e31a.svg")},7648:function(e,t,s){"use strict";var a=s(98795);t["Z"]={parseErrors(e){return Object.values(e).map((e=>(0,a.$t)(e?.$message))).join(". ")}}},83299:function(e,t){"use strict";t["Z"]={methods:{customFilter(e,t){const s=e.normalize("NFD").replace(/[\u0300-\u036f]/g,""),a=t.normalize("NFD").replace(/[\u0300-\u036f]/g,""),i=/[^a-zA-Z0-9 ]/g,n=s.replace(i,""),l=a.replace(i,"");return n.toLowerCase().includes(l.toLowerCase())||""===e}}}},34407:function(e,t,s){"use strict";var a=s(36797),i=s.n(a);t["Z"]={enrichEmployees(e){return e.map((e=>({...e,_fullName:`${e.name} ${e.surname}`,_initials:e.name.charAt(0)+e.surname.charAt(0)})))},formatDateTime(e){return i()(e),i()(e).format("DD.MM.yyyy, HH:mm")},formatTimeblockDateTime(e){if(e.date&&e.starts_at_time){const t=i()(e.date).format("DD.MM.yyyy");return`${t}, ${e.starts_at_time}`}return e.start?this.formatDateTime(e.start):""},formatDateTimeForBackend(e){return i()(e).format("YYYY-MM-DD HH:mm:ss")},formatDate(e){return i()(e).format("DD.MM.yyyy")},isBefore(e,t=null){return i()(e).isBefore(i()(t))},isAfter(e,t=i()()){return i()(e).isAfter(i()(t))}}},8973:function(e,t,s){var a={"./en.json":20790,"./sk.json":71941};function i(e){var t=n(e);return s(t)}function n(e){if(!s.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}i.keys=function(){return Object.keys(a)},i.resolve=n,e.exports=i,i.id=8973},66667:function(e,t,s){var a={"./ar.json":[68568,8568],"./bg.json":[20684,684],"./bn.json":[61170,1170],"./bs.json":[41161,1161],"./ca.json":[40612,612],"./cs.json":[50213,213],"./da.json":[98542,8542],"./de.json":[4701,4701],"./el.json":[20453,453],"./en.json":[3320,3320],"./es.json":[60076,76],"./et.json":[44075,4075],"./fa.json":[69004,9004],"./fr.json":[60007,7],"./he.json":[23746,3746],"./hr.json":[92921,2921],"./hu.json":[75723,5723],"./id.json":[12502,2502],"./is.json":[13214,3214],"./it.json":[51380,1380],"./ja.json":[72484,2484],"./ka.json":[60285,285],"./ko.json":[79249,9249],"./lt.json":[42838,2838],"./mn.json":[6177,6177],"./nl.json":[99729,9729],"./no.json":[49409,9409],"./pl.json":[25409,5409],"./pt-br.json":[74529,4529],"./ro.json":[29715,9715],"./ru.json":[32113,2113],"./sk.json":[30229,229],"./sl.json":[28636,8636],"./sq.json":[204,204],"./sr.json":[55553,5553],"./sv.json":[75979,5979],"./tr.json":[5268,5268],"./uk.json":[14057,4057],"./vi.json":[88929,8929],"./zh-cn.json":[56730,6730],"./zh-hk.json":[30841,841]};function i(e){if(!s.o(a,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=a[e],i=t[0];return s.e(t[1]).then((function(){return s.t(i,19)}))}i.keys=function(){return Object.keys(a)},i.id=66667,e.exports=i},27484:function(e,t,s){"use strict";e.exports=s.p+"img/bin.8778f5be.svg"},53830:function(e,t,s){"use strict";e.exports=s.p+"img/checkmark.76754510.svg"},34413:function(e,t,s){"use strict";e.exports=s.p+"img/eye.6d5fa7d3.svg"},87500:function(e,t,s){"use strict";e.exports=s.p+"img/home.a9495a95.svg"},35902:function(e,t,s){"use strict";e.exports=s.p+"img/icon-next.25e7a4f4.svg"},38351:function(e,t,s){"use strict";e.exports=s.p+"img/icon-prev.22ba0fa6.svg"},60666:function(e,t,s){"use strict";e.exports=s.p+"img/pencil.b9009162.svg"},52906:function(e,t,s){"use strict";e.exports=s.p+"img/search.bd80c5fb.svg"},14214:function(e,t,s){"use strict";e.exports=s.p+"img/spinner.34fd3cb2.gif"},20790:function(e){"use strict";e.exports=JSON.parse('{"Value is not a valid email address":"Value is not a valid email address","error":"chyba","Value is required":"Pole je povinné","This field should be at least 8 characters long":"Pole musí obsahovať aspoň 8 znakov","This field should be at least 6 characters long":"Pole musí obsahovať aspoň 6 znakov","This maximum length allowed is 6":"Pole musí obsahovať 6 znakov","The value must be equal to the other value":"Heslá sa nezhodujú"}')},71941:function(e){"use strict";e.exports=JSON.parse('{"Value is not a valid email address":"Zadali ste neplatný email","error":"chyba","Value is required":"Pole je povinné","This field should be at least 8 characters long":"Pole musí obsahovať aspoň 8 znakov","This field should be at least 6 characters long":"Pole musí obsahovať aspoň 6 znakov","This maximum length allowed is 6":"Pole musí obsahovať 6 znakov","The value must be equal to the other value":"Heslá sa nezhodujú"}')}},t={};function s(a){var i=t[a];if(void 0!==i)return i.exports;var n=t[a]={id:a,loaded:!1,exports:{}};return e[a].call(n.exports,n,n.exports,s),n.loaded=!0,n.exports}s.m=e,function(){var e=[];s.O=function(t,a,i,n){if(!a){var l=1/0;for(u=0;u=n)&&Object.keys(s.O).every((function(e){return s.O[e](a[r])}))?a.splice(r--,1):(o=!1,n0&&e[u-1][2]>n;u--)e[u]=e[u-1];e[u]=[a,i,n]}}(),function(){s.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return s.d(t,{a:t}),t}}(),function(){var e,t=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__};s.t=function(a,i){if(1&i&&(a=this(a)),8&i)return a;if("object"===typeof a&&a){if(4&i&&a.__esModule)return a;if(16&i&&"function"===typeof a.then)return a}var n=Object.create(null);s.r(n);var l={};e=e||[null,t({}),t([]),t(t)];for(var o=2&i&&a;"object"==typeof o&&!~e.indexOf(o);o=t(o))Object.getOwnPropertyNames(o).forEach((function(e){l[e]=function(){return a[e]}}));return l["default"]=function(){return a},s.d(n,l),n}}(),function(){s.d=function(e,t){for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}}(),function(){s.f={},s.e=function(e){return Promise.all(Object.keys(s.f).reduce((function(t,a){return s.f[a](e,t),t}),[]))}}(),function(){s.u=function(e){return"js/"+e+"."+{7:"7cef58a7",76:"9977e9df",188:"d74ce2b2",204:"4dd3d03d",213:"c9ed5252",229:"b09f2145",285:"6a0985b5",453:"04d72c77",612:"4ea201aa",684:"017ebeb8",841:"65cae984",907:"bfa01f81",924:"ddc3fd73",1097:"88cdd882",1161:"59a7c68b",1170:"16217940",1277:"95db0fe3",1380:"fc40de11",1466:"c5d34b19",2113:"2a1bcdfa",2484:"6def3002",2502:"66addef9",2612:"ea780a2e",2838:"aa69ee5c",2921:"b5aad8e9",3214:"72d306e7",3311:"bcab8a66",3320:"fe7033d0",3657:"e558064c",3728:"3e558208",3746:"09ee0424",3862:"b079a5bd",4057:"4b3b38fd",4075:"2d83f71e",4392:"02bf9f00",4518:"8e2c3fa8",4529:"6ff3334b",4578:"5a7acff1",4701:"e34c277a",5268:"5d463fbd",5409:"4ce439c3",5456:"e8c8face",5553:"032fcbe7",5723:"09853a5d",5979:"385e1b41",6177:"12db94aa",6730:"61289e01",7073:"57c96578",7343:"1e290ed5",8024:"bb377405",8059:"91d676ea",8520:"cb7009ea",8542:"09badcc3",8568:"7f0dfd32",8636:"2a90cf11",8731:"a28fea96",8929:"ea6da50f",8990:"6dd37151",9004:"ffe04245",9033:"727fb9e6",9249:"d2b0f88c",9407:"ed2e3833",9409:"339f5afb",9715:"21ca1afa",9729:"812aea5b"}[e]+".js"}}(),function(){s.miniCssF=function(e){return"css/"+e+"."+{188:"37c2c58b",907:"fa9ddfdd",1277:"d65f48ae",2612:"f67d9d9c",3862:"f5c9dd84",4392:"01299cfb",5456:"2cf84289",7073:"3978ef96",8059:"2ab138a8",9033:"ace2e544",9407:"f4af91bc"}[e]+".css"}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="jandl:";s.l=function(a,i,n,l){if(e[a])e[a].push(i);else{var o,r;if(void 0!==n)for(var d=document.getElementsByTagName("script"),u=0;us.startsWith(e)));return i?s:`https://${s}`}}r.CX.register("formats/link",t,!0)}var u=s(73752),c=s.n(u),m=s(73396),h=s(97718),p=s(29271);function v(e,t,s,a,i,n){const l=(0,m.up)("router-view"),o=(0,m.up)("Z-team-modal"),r=(0,m.up)("Z-delete-team-modal"),d=(0,m.up)("Z-task-modal"),u=(0,m.up)("Z-delete-task-modal"),c=(0,m.up)("Z-delete-timeBlock-modal"),v=(0,m.up)("Z-delete-blocker-modal"),k=(0,m.up)("Z-delete-master-task-modal"),f=(0,m.up)("Z-complete-task-modal"),_=(0,m.up)("Z-complete-master-task-modal"),g=(0,m.up)("Z-task-add-time-modal"),b=(0,m.up)("Z-blocker-modal"),w=(0,m.up)("Z-master-task-modal"),y=(0,m.up)("Z-delete-team-member-modal"),D=(0,m.up)("Z-show-menu-modal"),M=(0,m.up)("Z-unable-to-edit-office-task-modal"),T=(0,m.up)("Z-unable-to-complete-task-modal");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(h.q,null,{default:(0,m.w5)((()=>[(0,m.Wm)(p.O,null,{default:(0,m.w5)((()=>[(0,m.Wm)(l)])),_:1})])),_:1}),(0,m.Wm)(o,{ref:"z-team-modal",onUpdate:n.onTeamUpdate},null,8,["onUpdate"]),(0,m.Wm)(r,{ref:"z-delete-team-modal",onUpdate:n.onTeamUpdate},null,8,["onUpdate"]),(0,m.Wm)(d,{ref:"z-task-modal",onOnSubtaskEdited:n.onTaskEdited},null,8,["onOnSubtaskEdited"]),(0,m.Wm)(u,{ref:"z-delete-task-modal",onOnSubtaskDeleted:n.onTaskDeleted},null,8,["onOnSubtaskDeleted"]),(0,m.Wm)(c,{ref:"z-delete-timeblock-modal",onOnSubtaskEdited:n.onTaskEdited},null,8,["onOnSubtaskEdited"]),(0,m.Wm)(v,{ref:"z-delete-blocker-modal",onOnBlockerDeleted:n.onBlockerDeleted},null,8,["onOnBlockerDeleted"]),(0,m.Wm)(k,{ref:"z-delete-master-task-modal",onOnMastertaskDeleted:n.onMasterTaskDeleted},null,8,["onOnMastertaskDeleted"]),(0,m.Wm)(f,{ref:"z-complete-task-modal",onOnSubtaskEdited:n.onTaskEdited},null,8,["onOnSubtaskEdited"]),(0,m.Wm)(_,{ref:"z-complete-master-task-modal",onMasterTaskEdited:n.onMasterTaskEdited},null,8,["onMasterTaskEdited"]),(0,m.Wm)(g,{ref:"z-task-add-time-modal"},null,512),(0,m.Wm)(b,{ref:"z-blocker-modal"},null,512),(0,m.Wm)(w,{ref:"z-master-task-modal",onMasterTaskEdited:n.onMasterTaskEdited},null,8,["onMasterTaskEdited"]),(0,m.Wm)(y,{ref:"z-delete-team-member-modal"},null,512),(0,m.Wm)(D,{ref:"z-show-menu-modal"},null,512),(0,m.Wm)(M,{ref:"z-unable-to-edit-office-task-modal"},null,512),(0,m.Wm)(T,{ref:"z-unable-to-complete-task-modal"},null,512)],64)}var k=s(87139),f=s(67312),_=s(75039),g=s(91334),b=s(33601),w=s(53289);const y={class:"d-flex justify-space-between align-center"};function D(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",y,[(0,m._)("h1",null,[(0,m.Uk)(" Ste si istý, že chcete zmazať tím "),(0,m._)("b",null,(0,k.zw)(n.team.name),1),(0,m.Uk)("? ")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteTeam()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var M={mounted(){window.addEventListener("keydown",this.handleKeyDown)},methods:{handleKeyDown(e){27===e.keyCode&&(this.visible=!1)}}},T={mixins:[M],emits:["update"],data(){return{visible:!1,team:null,isDeleting:!1}},methods:{async showModal({team:e}){this.team=e,this.visible=!0},closeModal(){this.visible=!1},async deleteTeam(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/teams/${this.team.id}`),this.visible=!1,this.$emit("update",this.team),this.$store.commit("tm/delete_team",this.team)}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}},$=s(40089);const C=(0,$.Z)(T,[["render",D]]);var j=C,E=s(60988),x=s(45869);const W={class:"d-flex justify-space-between align-center modal-header"};function S(e,t,s,i,n,l){const o=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[4]||(t[4]=e=>n.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(o,{content:n.team,class:"h-100"},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,{height:"100%",class:"d-flex flex-column"},{default:(0,m.w5)((()=>[(0,m._)("div",W,[(0,m._)("h1",null,(0,k.zw)(n.team.id?"Upraviť tím":"Vytvoriť tím"),1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{class:(0,k.C_)(["modal-input",{error:n.v$.team.name.$errors.length}]),label:"Názov tímu",variant:"solo",hint:n.v$.team.name.$errors?n.errorUtils.parseErrors(n.v$.team.name.$errors):null,modelValue:n.team.name,"onUpdate:modelValue":t[1]||(t[1]=e=>n.team.name=e)},null,8,["class","hint","modelValue"]),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.team.employees,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{class:"relative w-100",key:e.id},[(0,m.Wm)(x.hw,{class:"modal-input",disabled:"",label:"Zamestanec",variant:"solo",modelValue:n.team.employees[t]._fullName,"onUpdate:modelValue":e=>n.team.employees[t]._fullName=e},null,8,["modelValue","onUpdate:modelValue"]),(0,m.Wm)(w.t,{class:"remove-input",onClick:(0,a.iM)((e=>n.team.employees.splice(t,1)),["stop"]),icon:"mdi-close",size:"small"},null,8,["onClick"])])))),128)),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:n.employeeSelect,"onUpdate:modelValue":t[2]||(t[2]=e=>n.employeeSelect=e),label:"Priradený",class:(0,k.C_)([{error:n.v$.team.employees.$errors.length},"modal-input"]),items:l.employeesOptions,"item-title":"_fullName","item-value":"id",variant:"solo",clearable:"",ref:"autocomplete"},null,8,["custom-filter","modelValue","class","items"])])),_:1}),(0,m.Wm)(f.T,{class:"button primary block",onClick:t[3]||(t[3]=e=>l.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(n.team.id?"UPRAVIŤ":"VYTVORIŤ"),1)])),_:1})])),_:1})])),_:1},8,["content"])])),_:1},8,["modelValue"])}var O=s(33053),V=s(69117),z=s(7648),A=s(34407),U=s(20065),H=s(83299);const Z=e=>e.length;var I={mixins:[H.Z,M],emits:["close","update"],data(){return{visible:!1,v$:(0,O.ZP)(),errorUtils:z.Z,employeeSelect:null,team:null}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),employeesOptions(){const e=this.team.employees.map((e=>e.id));return this.enrichedEmployees.filter((t=>!e.includes(t.id)))}},validations(){return{team:{name:{required:V.C1},employees:{atLeastOne:Z}}}},methods:{async showModal({team:e=null}){this.visible=!0,this.team=null,this.$nextTick((()=>this.v$.$reset()));try{if(e?.id){const t=await this.$axios.get_auth_data(`v1/teams/${e.id}`);this.team=this._enrichTeam(t)}else this.team={employees:[]}}catch(t){this.$toast.error(this.$parseError(t))}},closeModal(){this.visible=!1,this.$emit("close",this.team)},async save(){if(await this.v$.$validate())try{if(this.team.id){const{team:e}=await this.$axios.put_auth(`v1/teams/${this.team.id}`,this.team),t=await this.$axios.get_auth_data(`v1/teams/${e.id}`);this.$store.commit("tm/update_team",t)}else{const{team:e}=await this.$axios.post_auth("v1/teams",this.team),t=await this.$axios.get_auth_data(`v1/teams/${e.id}`);this.$store.commit("tm/save_team",t)}this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}},_enrichTeam(e){return e.employees=A.Z.enrichEmployees(e.employees),e}},watch:{employeeSelect(e){if(!e)return;const t=this.enrichedEmployees.find((t=>t.id==e));this.team.employees.push(t),this.employeeSelect=null,this.$refs.autocomplete.search=""}}};const F=(0,$.Z)(I,[["render",S]]);var Y=F;const P={class:"d-flex justify-space-between align-center"};function L(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",P,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete zmazať sub task z mastertasku "),(0,m._)("b",null,(0,k.zw)(n.subtask.project_code),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteTask()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var N={mixins:[M],emits:["on-subtask-deleted"],data(){return{visible:!1,subtask:null,isDeleting:!1}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},closeModal(){this.visible=!1},async deleteTask(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/subtasks/${this.subtask.id}`),this.$store.commit("tm/delete_subtask",this.subtask),this.closeModal(),this.$emit("on-subtask-deleted",this.subtask)}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}};const q=(0,$.Z)(N,[["render",L]]);var B=q;const R=e=>((0,m.dD)("data-v-d203e48e"),e=e(),(0,m.Cn)(),e),K={class:"d-flex justify-space-between align-center"},J=R((()=>(0,m._)("h4",{class:"mt-3"},"Vyberte časový úsek, ktorý chcete odstrániť",-1)));function G(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[1]||(t[1]=e=>n.visible=e),"max-width":"500",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",K,[J,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.subtask.timeblocks,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center justify-center mb-3 mt-3"},[(0,m._)("p",{class:(0,k.C_)(["task-badge rounded-pill",{"strike-through":e.is_finished}])},(0,k.zw)(n.tmUtils.formatDateTime(e.start))+" - "+(0,k.zw)(n.tmUtils.formatDateTime(e.end)),3),(0,m.Wm)(w.t,{onClick:(0,a.iM)((s=>n.subtask.id?l.deleteTimeblock(e):l.deleteTimeblockWithoutId(t)),["stop"]),class:"close-icon circle-border cursor-pointer ml-3 text-red",icon:"mdi-close",size:"medium"},null,8,["onClick"])])))),128))])),_:1})])),_:1},8,["modelValue"])}var X=s(36797),Q=s.n(X),ee={mixins:[M],emits:["on-subtask-edited"],data(){return{visible:!1,subtask:null,isDeleting:!1,tmUtils:A.Z}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},closeModal(){this.visible=!1},async deleteTimeblock({id:e}){const t=JSON.parse(JSON.stringify(this.subtask));t.timeblocks=t.timeblocks.filter((t=>t.id!=e)),t.deadline&&(t.deadline=A.Z.formatDateTimeForBackend(t.deadline)),this._update(t)},deleteTimeblockWithoutId(e){this.$emit("delete-timeblock")},async _update(e){try{const t=e.timesheets.map((e=>(delete e.employee_name,e))),s=(e.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${e.id}`,{...e,timesheets:t,timeblocks:s});this.closeModal(),this.$events.emit("on-subtask-edited",a)}catch(t){this.$toast.error(t.message||t)}}}};const te=(0,$.Z)(ee,[["render",G],["__scopeId","data-v-d203e48e"]]);var se=te;const ae=e=>((0,m.dD)("data-v-3db8381d"),e=e(),(0,m.Cn)(),e),ie={class:"d-flex justify-space-between align-center modal-header"},ne={class:"splitted-inputs"},le=ae((()=>(0,m._)("path",{d:"M23.057 7.057l-16 16c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l16-16c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0z"},null,-1))),oe=ae((()=>(0,m._)("path",{d:"M7.057 8.943l16 16c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885l-16-16c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"},null,-1))),re=[le,oe],de=["onClick"],ue=ae((()=>(0,m._)("path",{d:"M23.057 7.057l-16 16c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l16-16c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0z"},null,-1))),ce=ae((()=>(0,m._)("path",{d:"M7.057 8.943l16 16c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885l-16-16c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"},null,-1))),me=[ue,ce],he={class:"timeblocks w-100"},pe={key:0,class:"end-button w-100"},ve={class:"w-100 modal-input"},ke={class:"d-flex justify-space-between align-center"},fe={class:"d-flex justify-space-between align-center modal-header border-bottom pb-4"},_e={class:"d-flex justify-start"},ge=["src"],be=["src"],we={class:"w-100"},ye={class:"d-flex justify-start align-center mt-8"};function De(e,t,i,n,l,o){const r=(0,m.up)("Datepicker"),d=(0,m.up)("A-timeblock"),u=(0,m.up)("QuillEditor"),c=(0,m.up)("Z-files-upload"),h=(0,m.up)("Z-task-readonly-info"),p=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:l.visible,"onUpdate:modelValue":t[22]||(t[22]=e=>l.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(p,{content:l.subtask,class:"h-100"},{default:(0,m.w5)((()=>[l.editMode?((0,m.wg)(),(0,m.j4)(_._,{key:0,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",ie,[(0,m._)("h1",null,(0,k.zw)(l.subtask?.id?"Upraviť sub task":"Vytvoriť sub task"),1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{modelValue:l.subtask.project_code,"onUpdate:modelValue":t[1]||(t[1]=e=>l.subtask.project_code=e),label:"Kód projektu",value:l.subtask.project_code,onFocus:e.onInputFocus,class:"modal-input",variant:"solo",disabled:""},null,8,["modelValue","value","onFocus"]),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:l.subtask.master_task_id,"onUpdate:modelValue":t[2]||(t[2]=e=>l.subtask.master_task_id=e),label:"Master task",class:(0,k.C_)([{error:l.v$.subtask.master_task_id.$errors.length},"modal-input"]),items:o.enrichedMastertasks,"item-title":e=>e._fullName||e.name,"item-value":"id",variant:"solo",clearable:"",onFocus:e.onInputFocus},null,8,["custom-filter","modelValue","class","items","item-title","onFocus"]),(0,m.Wm)(x.hw,{modelValue:l.subtask.title,"onUpdate:modelValue":t[3]||(t[3]=e=>l.subtask.title=e),onFocus:e.onInputFocus,class:"modal-input",label:"Názov subtasku",variant:"solo"},null,8,["modelValue","onFocus"]),(0,m._)("div",ne,[(0,m._)("div",{onClick:t[5]||(t[5]=e=>o.openDatepicker("datepicker-01")),class:"datepicker-wrapper"},[(0,m.Wm)(r,{modelValue:l.subtask.deadline,"onUpdate:modelValue":t[4]||(t[4]=e=>l.subtask.deadline=e),onOpen:e.onDateOpen,ref:"datepicker-01","auto-apply":!0,"min-date":new Date,class:(0,k.C_)(["modal-input left datepicker-input",{error:l.v$.subtask.deadline.$errors?.length}]),format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Deadline",validations:l.v$.subtask.deadline},null,8,["modelValue","onOpen","min-date","class","validations"])]),(0,m.Wm)(x.hw,{class:(0,k.C_)(["modal-input right",{error:l.v$.subtask._deadline_time.$errors.length}]),variant:"solo",modelValue:l.subtask._deadline_time,"onUpdate:modelValue":t[6]||(t[6]=e=>l.subtask._deadline_time=e),label:"Čas","append-inner-icon":"mdi-clock-outline",type:"time",onFocus:e.onInputFocus,hint:l.v$.subtask._deadline_time.$errors?l.errorUtils.parseErrors(l.v$.subtask._deadline_time.$errors):null},null,8,["modelValue","onFocus","class","hint"])]),l.subtask.id?((0,m.wg)(),(0,m.iD)(m.HY,{key:0},[(0,m._)("div",{class:(0,k.C_)(["employee-wrapper",{"hide-arrow":l.subtask.employee_id}])},[l.subtask.employee_id?((0,m.wg)(),(0,m.iD)("svg",{key:0,version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 32 32",class:"dp__icon dp__clear_icon dp__input_icons","data-test":"clear-icon",onClick:t[7]||(t[7]=(0,a.iM)((e=>{o.handleOnRemoveEmployee(),l.subtask.employee_id=null,l.subtask.employee=null}),["prevent"]))},re)):(0,m.kq)("",!0),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:l.subtask.employee_id,"onUpdate:modelValue":[t[8]||(t[8]=e=>l.subtask.employee_id=e),t[9]||(t[9]=e=>l.employeeValidations[0]?l.employeeValidations[0].employee=!1:null)],label:"Priradený",items:e.enrichedEmployees,"item-title":"_fullName","item-value":"id",variant:"solo",class:(0,k.C_)(["modal-input",{error:l.employeeValidations[0]?.employee}])},null,8,["custom-filter","modelValue","items","class"])],2),(0,m.Wm)(x.hw,{modelValue:l.subtask.duration,"onUpdate:modelValue":[t[10]||(t[10]=e=>l.subtask.duration=e),t[11]||(t[11]=e=>l.employeeValidations[0]?l.employeeValidations[0].duration=!1:null)],class:(0,k.C_)(["modal-input",{error:l.employeeValidations[0]?.duration}]),variant:"solo",type:"number",label:"Časový odhad","append-inner-icon":"mdi-clock-outline",onFocus:e.onInputFocus},null,8,["modelValue","class","onFocus"])],64)):((0,m.wg)(!0),(0,m.iD)(m.HY,{key:1},(0,m.Ko)(l.subtask.employees,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{key:`employee-${s}`,class:(0,k.C_)(["splitted-inputs remove-employee",{"hide-arrow":t?.id}])},[(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:t.id,"onUpdate:modelValue":[e=>t.id=e,e=>l.employeeValidations[s]?l.employeeValidations[s].employee=!1:null],label:"Priradený",items:e.enrichedEmployees,"item-title":"_fullName","item-value":"id",variant:"solo",class:(0,k.C_)(["modal-input left",{error:l.employeeValidations[s]?.employee}])},null,8,["custom-filter","modelValue","onUpdate:modelValue","items","class"]),t.id?((0,m.wg)(),(0,m.iD)("svg",{key:0,version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 32 32",class:"dp__icon dp__clear_icon dp__input_icons","data-test":"clear-icon",onClick:(0,a.iM)((e=>{o.handleOnRemoveEmployee(),t.id=null}),["prevent"])},me,8,de)):(0,m.kq)("",!0),(0,m.Wm)(x.hw,{modelValue:t.duration,"onUpdate:modelValue":[e=>t.duration=e,e=>l.employeeValidations[s]?l.employeeValidations[s].duration=!1:null],class:(0,k.C_)(["modal-input right",{error:l.employeeValidations[s]?.duration}]),variant:"solo",type:"number",label:"Časový odhad","append-inner-icon":"mdi-clock-outline",onFocus:e.onInputFocus},null,8,["modelValue","onUpdate:modelValue","class","onFocus"])],2)))),128)),(0,m._)("div",he,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(o.editableTimeblocks,((t,s)=>((0,m.wg)(),(0,m.j4)(d,{key:s,onUpdateTimeblock:e=>o.updateTimeblock(e,s),onRemoveTimeblock:e=>o.removeTimeblock(s),timeblock:t,deletable:s>0,editable:!0,ref_for:!0,ref:`timetable-${s}`,"prevent-input-focus":e.preventInputFocus,"on-input-focus":e.onInputFocus,"on-date-open":e.onDateOpen,index:s},null,8,["onUpdateTimeblock","onRemoveTimeblock","timeblock","deletable","prevent-input-focus","on-input-focus","on-date-open","index"])))),128)),l.subtask.id?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",pe,[(0,m._)("button",{onClick:t[12]||(t[12]=(...e)=>o.addTimeblock&&o.addTimeblock(...e))},"Pridať časový blok")]))]),(0,m._)("div",ve,[(0,m.Wm)(u,{ref:"description",modelValue:l.subtask.description,"onUpdate:modelValue":t[13]||(t[13]=e=>l.subtask.description=e),placeholder:"Popis",theme:"snow",class:"rich-text-editor",onInput:t[14]||(t[14]=e=>l.subtask.description=e.srcElement.innerHTML)},null,8,["modelValue"])]),(0,m.Wm)(c,{class:"mt-15 files",files:l.subtask.files,onFilesUploaded:o.filesUploaded,"is-saving":l.isSaving},null,8,["files","onFilesUploaded","is-saving"])])),_:1}),l.isSaving?((0,m.wg)(),(0,m.j4)(f.T,{key:1,class:"button primary disabled",disabled:""},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(e.$t("Ukladám...")),1)])),_:1})):((0,m.wg)(),(0,m.j4)(f.T,{key:0,class:"button primary",onClick:t[15]||(t[15]=e=>o.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(l.subtask.id?"UPRAVIŤ":"VYTVORIŤ"),1)])),_:1}))])),_:1})):((0,m.wg)(),(0,m.j4)(_._,{key:1,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",ke,[(0,m._)("div",null,[(0,m._)("p",null,(0,k.zw)(l.subtask._master_task.project_code),1),(0,m._)("h1",null,(0,k.zw)(l.subtask._master_task.name),1)]),(0,m.Wm)(w.t,{onClick:t[16]||(t[16]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"pb-5"})]),(0,m._)("div",fe,[(0,m._)("h1",null,(0,k.zw)(l.subtask.title),1),(0,m._)("div",_e,[(0,m._)("img",{class:"icon",src:s(60666),alt:"pencil-icon",onClick:t[17]||(t[17]=(0,a.iM)(((...e)=>o.toggleEditMode&&o.toggleEditMode(...e)),["stop"]))},null,8,ge),(0,m._)("img",{class:"icon trash",src:s(27484),alt:"trash-icon",onClick:t[18]||(t[18]=(0,a.iM)((e=>o.openDeleteTaskModal(l.subtask)),["stop"]))},null,8,be)])]),(0,m.Wm)(g.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m._)("div",we,[(0,m.Wm)(h,{subtask:l.subtask,onCloseModal:o.closeModal,onUpdateSubtask:o.updateSubtask},null,8,["subtask","onCloseModal","onUpdateSubtask"]),(0,m._)("div",ye,[l.subtask.is_finished?((0,m.wg)(),(0,m.j4)(f.T,{key:1,class:"button secondary",onClick:t[20]||(t[20]=(0,a.iM)((e=>o.showCompleteTaskModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("Znovu otvoriť")])),_:1})):((0,m.wg)(),(0,m.j4)(f.T,{key:0,class:"done-btn",onClick:t[19]||(t[19]=(0,a.iM)((e=>o.showCompleteTaskModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("Dokončiť")])),_:1})),(0,m.Wm)(f.T,{class:"button secondary",onClick:t[21]||(t[21]=e=>o.closeModal())},{default:(0,m.w5)((()=>[(0,m.Uk)("Uložiť zmeny")])),_:1})])])])),_:1})])),_:1}))])),_:1},8,["content"])])),_:1},8,["modelValue"])}var Me=s(63972),Te=s(87103);const $e={class:"w-100 d-flex align-center"},Ce={key:0,class:"m-2 d-flex align-center flex-wrap"},je={key:0,class:"d-flex align-center"},Ee=["src"];function xe(e,t,i,n,l,o){return(0,m.wg)(),(0,m.iD)("div",$e,[(0,m._)("input",{type:"file",multiple:"",name:"file",id:"fileInput",class:"hidden-input",accept:"*",onChange:t[0]||(t[0]=(...e)=>o.onChange&&o.onChange(...e)),ref:"fileUpload"},null,544),(0,m.Wm)(f.T,{class:"upload-btn",onClick:t[1]||(t[1]=t=>e.$refs.fileUpload.click())},{default:(0,m.w5)((()=>[(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-cloud-upload-outline"}),(0,m.Uk)("NAHRAŤ ")])),_:1}),l.uploadedFiles?((0,m.wg)(),(0,m.iD)("div",Ce,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.uploadedFiles,(e=>((0,m.wg)(),(0,m.iD)("div",{key:e.name,class:"mx-2"},[(0,m.Wm)(Te.v,{class:"mt-2"},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(e.name)+" ",1),(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-paperclip"}),(0,m._)("p",null,(0,k.zw)((e.size/1048576).toFixed(2))+" MB",1),(0,m.Wm)(w.t,{size:"small",icon:"mdi-close",onClick:(0,a.iM)((t=>o.remove(l.uploadedFiles.indexOf(e))),["stop"])},null,8,["onClick"])])),_:2},1024)])))),128)),i.isSaving?((0,m.wg)(),(0,m.iD)("div",je,[i.isSaving?((0,m.wg)(),(0,m.iD)("img",{key:0,class:"gif-loader",src:s(14214),alt:"Loading..."},null,8,Ee)):(0,m.kq)("",!0)])):(0,m.kq)("",!0)])):(0,m.kq)("",!0)])}var We={emit:["files-uploaded"],props:{files:{type:Array,default:()=>[]},isSaving:{type:Boolean,required:!1}},data(){return{uploadedFiles:[]}},created(){this.uploadedFiles=this.files},methods:{onChange(){const e=[...this.$refs.fileUpload.files],t=52428800,s=e.filter((e=>e.size>t));s.length>0?this.$toast.error("File is too large. Maximum file size is 50 MB."):(this.uploadedFiles=[...this.uploadedFiles,...e],this.$emit("files-uploaded",this.uploadedFiles),this.$refs.fileUpload.value="")},remove(e){this.uploadedFiles.splice(e,1)}}};const Se=(0,$.Z)(We,[["render",xe],["__scopeId","data-v-a2a40214"]]);var Oe=Se,Ve={data(){return{preventInputFocus:!1,savedScrollPosition:null}},methods:{setFocusEvent(){document.querySelectorAll(".v-autocomplete input").forEach((e=>{e.addEventListener("focus",this.onInputFocus)}))},onDateFocus(e){void 0==e&&(this.preventInputFocus=!0)},onDateOpen(e){if(e){const e=document.querySelector(".v-dialog .modal-content");e&&(this.savedScrollPosition=e.scrollTop),this.preventInputFocus=!0,setTimeout((()=>{this.preventInputFocus=!1,this.savedScrollPosition=null}),500)}},onInputFocus(e){if(this.preventInputFocus&&null!==this.savedScrollPosition){const t=e.target;"INPUT"===t.tagName&&"text"===t.type&&setTimeout((()=>{t.blur();const e=document.querySelector(".v-dialog .modal-content");e&&null!==this.savedScrollPosition&&(e.scrollTop=this.savedScrollPosition)}),0)}}}},ze={computed:{employeesOptions(){const e=[...this.mastertask.employees].map((e=>e.id));return this.enrichedEmployees.filter((t=>!e.includes(t.id)))||[]},projectsOptions(){const e=/[^a-zA-Z0-9 ]/g,t=this.projectCodeSearch?this.projectCodeSearch.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(e,""):"",s=this.projects.filter((s=>{const a=s.code.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(e,"");return a.toLowerCase().includes(t.toLowerCase())}));let a=s?.length?s.slice(0,10):this.projects.slice(0,10);if(!this.mastertask?.project_id)return a;const i=this.projects.find((e=>e.id==this.mastertask?.project_id));return a=a.filter((e=>e.id!=i.id)),[...a,i]}},methods:{onEmployeeSelected(e){const t=this.enrichedEmployees.find((t=>t.id==e));this.mastertask.employees.push(t),this.showAddEmployeeInput=!1},onEmployeeDurationChanged(){let e=0;this.mastertask.employees=this.mastertask.employees.map((t=>("string"==typeof t.duration?(e+=parseFloat(t.duration),t.duration=parseFloat(t.duration),t.invalid=!1):"number"==typeof t.duration&&(e+=t.duration,t.invalid=!1),t))),this.mastertask.duration=e}},watch:{"mastertask.team_id"(e){if(!e)return;const t=this.teams.find((t=>t.id==e));t&&(this.mastertask.team=JSON.parse(JSON.stringify(t)),this.mastertask.employees=[...this.mastertask.team.employees])}}},Ae=s(66154);function Ue(e,t,s,a,i,n){const l=(0,m.up)("A-mastertask-name"),o=(0,m.up)("A-mastertask-status"),r=(0,m.up)("A-task-deadline"),d=(0,m.up)("A-task-timeblocks"),u=(0,m.up)("Z-created-by"),c=(0,m.up)("A-task-assigned-employee"),h=(0,m.up)("A-task-planned-time"),p=(0,m.up)("A-task-remaining-time"),v=(0,m.up)("A-task-spent-time"),k=(0,m.up)("A-task-description"),f=(0,m.up)("Z-files");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(l,{name:s.subtask._master_task.name,id:s.subtask.master_task_id,color:s.subtask._master_task.color,onCloseModal:t[0]||(t[0]=t=>e.$emit("close-modal"))},null,8,["name","id","color"]),(0,m.Wm)(o,{isFinished:s.subtask.is_finished},null,8,["isFinished"]),(0,m.Wm)(r,{subtask:s.subtask},null,8,["subtask"]),(0,m.Wm)(d,{timeblocks:s.subtask.timeblocks,subtask:s.subtask,onUpdateSubtask:t[1]||(t[1]=t=>e.$emit("update-subtask",t))},null,8,["timeblocks","subtask"]),(0,m.Wm)(u,{"employee-id":s.subtask.created_by},null,8,["employee-id"]),(0,m.Wm)(c,{employee:s.subtask._employee},null,8,["employee"]),(0,m.Wm)(h,{hours:s.subtask.duration},null,8,["hours"]),(0,m.Wm)(p,{hours:s.subtask.duration-s.subtask.spent_time},null,8,["hours"]),(0,m.Wm)(v,{hours:s.subtask.spent_time,subtask:s.subtask},null,8,["hours","subtask"]),(0,m.Wm)(k,{description:s.subtask.description,"mastertask-description":s.subtask.master_task_description},null,8,["description","mastertask-description"]),(0,m.Wm)(f,{files:s.subtask.files},null,8,["files"])],64)}var He=s(16824),Ze=s(68521),Ie=s(74286);const Fe={class:"d-flex align-center"},Ye=(0,m._)("p",{class:"mx-3"},"Mastertask",-1);function Pe(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Fe,[(0,m.Wm)(w.t,{icon:"mdi-link",size:"large"}),Ye])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",{class:"task-badge px-4 py-2 rounded-pill hover",onClick:t[0]||(t[0]=e=>n.openMastertask()),style:(0,k.j5)({backgroundColor:s.color})},(0,k.zw)(s.name),5)])),_:1})])),_:1})])),_:1})}var Le={emits:["close-modal"],props:{name:{type:String,required:!0},id:{type:Number,required:!0},color:{type:String,required:!0}},methods:{openMastertask(){this.$emit("close-modal"),this.$events.emit("show-mastertask-modal",{mastertask:{id:this.id},editMode:!1})}}};const Ne=(0,$.Z)(Le,[["render",Pe]]);var qe=Ne;const Be={class:"d-flex align-center"},Re=(0,m._)("p",{class:"mx-3"},"Status",-1),Ke={key:0,class:"status-badge px-4 py-2 rounded-pill"},Je={key:1,class:"status-badge px-4 py-2 rounded-pill"};function Ge(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Be,[(0,m.Wm)(w.t,{icon:"mdi-drag-vertical",size:"large"}),Re])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[s.isFinished?((0,m.wg)(),(0,m.iD)("p",Ke,"Ukončený")):((0,m.wg)(),(0,m.iD)("p",Je,"Neukončený"))])),_:1})])),_:1})])),_:1})}var Xe={props:{isFinished:{type:Number,default:()=>0}}};const Qe=(0,$.Z)(Xe,[["render",Ge]]);var et=Qe;const tt={class:"d-flex align-center"},st=(0,m._)("p",{class:"mx-3"},"Trvanie",-1),at={key:0,class:"d-flex align-center mb-3"},it=(0,m._)("p",{class:"task-badge rounded-pill"},"Pridať záznam",-1),nt={class:"d-flex justify-space-between align-center"},lt=(0,m._)("h1",null,"Pridať dátum",-1),ot={class:"d-flex justify-space-between align-center"},rt={class:"text-red"},dt=(0,m._)("br",null,null,-1),ut={class:"text-black"};function ct(e,t,s,i,n,l){const o=(0,m.up)("Datepicker");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",tt,[(0,m.Wm)(w.t,{icon:"mdi-calendar-week",size:"large"}),st])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[l.isOffice365Task?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",at,[(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=e=>n.showModal=!0),class:"add-date cursor-pointer mr-2",icon:"mdi-plus",size:"medium"}),it])),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.timeblocks,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center mb-3"},[l.isOffice365Task?(0,m.kq)("",!0):((0,m.wg)(),(0,m.j4)(w.t,{key:0,onClick:(0,a.iM)((a=>s.subtask.id?l.deleteTimeblock(e):l.deleteTimeblockWithoutId(t)),["stop"]),class:"circle-border cursor-pointer mr-2",icon:"mdi-minus",size:"medium"},null,8,["onClick"])),(0,m._)("p",{class:(0,k.C_)(["task-badge rounded-pill",{"strike-through":e.is_finished}])},(0,k.zw)(l.formatTimeblockStart(e))+" - "+(0,k.zw)(l.formatTimeblockEnd(e)),3),l.isOffice365Task?(0,m.kq)("",!0):(0,m.wy)(((0,m.wg)(),(0,m.j4)(w.t,{key:1,onClick:(0,a.iM)((t=>l.toggleTimeblockIsFinished(e)),["stop"]),class:(0,k.C_)(["circle-border cursor-pointer ml-2",{completed:e.is_finished}]),icon:"mdi-check",size:"medium"},null,8,["onClick","class"])),[[a.F8,s.subtask.id]])])))),128))])),_:1})])),_:1})])),_:1}),(0,m.Wm)(b.B,{"max-width":"750",modelValue:n.showModal,"onUpdate:modelValue":t[6]||(t[6]=e=>n.showModal=e),persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",nt,[lt,(0,m.Wm)(w.t,{onClick:t[1]||(t[1]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(o,{modelValue:n.form.date,"onUpdate:modelValue":t[2]||(t[2]=e=>n.form.date=e),format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum","auto-apply":!0,"enable-time-picker":!1,class:(0,k.C_)(["mb-5 modal-input",{error:n.v$.form.date.$errors.length}])},null,8,["modelValue","class"]),(0,m.Wm)(x.hw,{modelValue:n.form.starts_at_time,"onUpdate:modelValue":t[3]||(t[3]=e=>n.form.starts_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.form.starts_at_time.$errors?n.errorUtils.parseErrors(n.v$.form.starts_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.form.starts_at_time.$errors.length},"mb-1 modal-input"]),label:"Začiatok"},null,8,["modelValue","hint","class"]),(0,m.Wm)(x.hw,{modelValue:n.form.ends_at_time,"onUpdate:modelValue":t[4]||(t[4]=e=>n.form.ends_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.form.ends_at_time.$errors?n.errorUtils.parseErrors(n.v$.form.ends_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.form.ends_at_time.$errors.length},"modal-input"]),label:"Koniec"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{onClick:t[5]||(t[5]=e=>l.submit()),class:"button primary mt-5"},{default:(0,m.w5)((()=>[(0,m.Uk)("Potvrdiť")])),_:1})])),_:1})])),_:1},8,["modelValue"]),(0,m.Wm)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[10]||(t[10]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",ot,[(0,m._)("h1",rt,[(0,m.Uk)(" Ste si istý, že chcete pridať timeblock po deadline "),dt,(0,m._)("b",ut,"z mastertasku "+(0,k.zw)(s.subtask?.project_code)+" ?",1)]),(0,m.Wm)(w.t,{onClick:t[7]||(t[7]=(0,a.iM)((e=>n.visible=!1),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[8]||(t[8]=(0,a.iM)((e=>l.confirmSubmit()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[9]||(t[9]=(0,a.iM)((e=>n.visible=!1),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])],64)}var mt={mixins:[M],emits:["update-subtask"],components:{Datepicker:Me.Z},props:{timeblocks:{type:Array,required:!0},subtask:{type:Object,required:!0}},data(){return{v$:(0,O.ZP)(),errorUtils:z.Z,tmUtils:A.Z,showModal:!1,visible:!1,form:{date:null,starts_at_time:"09:00",ends_at_time:"16:00"}}},validations(){return{form:{date:{required:V.C1},starts_at_time:{required:V.C1},ends_at_time:{required:V.C1}}}},computed:{...(0,U.Se)("tm",["mastertasks"]),isOffice365Task(){return"office365"==this.subtask.type}},methods:{formatTimeblockStart(e){if(e.date&&e.starts_at_time){const t=Q()(e.date).format("DD.MM.yyyy");return`${t}, ${e.starts_at_time}`}return e.start?A.Z.formatDateTime(e.start):""},formatTimeblockEnd(e){return e.date&&e.ends_at_time?e.ends_at_time:e.end?A.Z.formatDateTime(e.end):""},async submit(){if(!await this.v$.$validate())return;const e=JSON.parse(JSON.stringify(this.subtask));e?.timeblocks||(e.timeblocks=[]),e?.timesheets||(e.timesheets=[]),e?.is_finished||(e.is_finished=0),e.timeblocks.push({id:null,date:this.form.date,starts_at_time:this.form.starts_at_time,ends_at_time:this.form.ends_at_time,is_finished:0}),e.deadline&&(e.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate()));const t=this.isAfterDeadline();t?this.visible=!0:e.id?this._update(e):(this.$emit("update-unfinished-subtask",e),this.closeModal())},async confirmSubmit(){const e=JSON.parse(JSON.stringify(this.subtask));if(e?.timeblocks||(e.timeblocks=[]),e?.timesheets||(e.timesheets=[]),e?.is_finished||(e.is_finished=0),e.timeblocks.push({id:null,date:this.form.date,starts_at_time:this.form.starts_at_time,ends_at_time:this.form.ends_at_time,is_finished:0}),e.deadline&&(e.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),!e.id)return this.$emit("update-unfinished-subtask",e),void this.closeModal();this.visible=!1,this._update(e)},async toggleTimeblockIsFinished(e){const t=JSON.parse(JSON.stringify(this.subtask)),s=JSON.parse(JSON.stringify(e));s.is_finished=1==s.is_finished?0:1;try{const e={id:s.id,is_finished:s.is_finished};if(s.date){const t=Q()(s.date).format("YYYY-MM-DD");e.start=`${t} ${s.starts_at_time}:00`,e.end=`${t} ${s.ends_at_time}:00`}else e.start=s.start,e.end=s.end;const{data:a}=await this.$axios.put_auth(`v1/timeblocks/${s.id}`,e),i=Q()(a.start,"YYYY-MM-DD HH:mm:ss"),n=Q()(a.end,"YYYY-MM-DD HH:mm:ss"),l={id:a.id,date:i.toDate(),starts_at_time:i.format("HH:mm"),ends_at_time:n.format("HH:mm"),is_finished:a.is_finished};t.timeblocks=t.timeblocks.map((e=>e.id==l.id?l:e)),this.$events.emit("on-subtask-edited",t),this.$emit("update-subtask",t),s.is_finished&&this.$events.emit("show-task-add-time-modal",{subtask:t})}catch(a){this.$toast.error(a.message||a)}},async deleteTimeblock({id:e}){const t=JSON.parse(JSON.stringify(this.subtask));t.timeblocks=t.timeblocks.filter((t=>t.id!=e)),t.deadline&&(t.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),this._update(t)},deleteTimeblockWithoutId(e){this.$emit("delete-timeblock")},async _update(e){try{const t=e.timesheets.map((e=>(delete e.employee_name,e))),s=(e.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${e.id}`,{...e,timesheets:t,timeblocks:s});this.closeModal(),this.$events.emit("on-subtask-edited",a)}catch(t){this.$toast.error(t.message||t)}},isAfterDeadline(){const e=this.getDeadline(this.subtask);if(!e)return;const t=Q()(this.form.date),s=Q()(e),[a,i]=this.form.ends_at_time.split(":").map(Number);return t.hours(a),t.minutes(i),t.isAfter(s)},getDeadline(e){return e?.deadline?e.deadline:e.master_task_deadline},_mergeDeadlineTimeDate(){const e=new Date(this.subtask.deadline),t=this.subtask._deadline_time.split(":");return e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),e},closeModal(){this.form={date:null,starts_at_time:"09:00",ends_at_time:"16:00"},this.showModal=!1,this.$nextTick((()=>this.v$.$reset()))}}};const ht=(0,$.Z)(mt,[["render",ct]]);var pt=ht;const vt={class:"d-flex align-center"},kt=(0,m._)("p",{class:"mx-3"},"Vytvoril",-1),ft={class:"employee-selected-avatar d-flex justify-center align-center"},_t={class:"ml-2"};function gt(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",vt,[(0,m.Wm)(w.t,{icon:"mdi-account-star-outline",size:"large"}),kt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3 d-flex align-center"},{default:(0,m.w5)((()=>[(0,m._)("p",ft,(0,k.zw)(n.employee?n.employee._initials:"?"),1),(0,m._)("p",_t,(0,k.zw)(n.employee?n.employee._fullName:e.$t("Unasigned")),1)])),_:1})])),_:1})])),_:1})}var bt={props:{employeeId:{type:[Number],required:!1}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),employee(){return this.enrichedEmployees.find((e=>e.id==this.employeeId))}}};const wt=(0,$.Z)(bt,[["render",gt]]);var yt=wt;const Dt={class:"d-flex align-center"},Mt=(0,m._)("p",{class:"mx-3"},"Priradený",-1),Tt={class:"employee-selected-avatar d-flex justify-center align-center"},$t=["innerHTML"];function Ct(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Dt,[(0,m.Wm)(w.t,{icon:"mdi-account-outline",size:"large"}),Mt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3 d-flex align-center"},{default:(0,m.w5)((()=>[(0,m._)("p",Tt,(0,k.zw)(s.employee.name.charAt(0)+s.employee.surname.charAt(0)),1),(0,m._)("p",{class:"ml-2",innerHTML:`${s.employee.name} ${s.employee.surname}`},null,8,$t)])),_:1})])),_:1})])),_:1})}var jt={props:{employee:{type:Object,required:!0}}};const Et=(0,$.Z)(jt,[["render",Ct]]);var xt=Et;const Wt={class:"d-flex align-center"},St=(0,m._)("p",{class:"mx-3"},"Naplánovaný čas",-1);function Ot(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Wt,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),St])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1})])),_:1})])),_:1})}var Vt={props:{hours:{type:Number,required:!0}}};const zt=(0,$.Z)(Vt,[["render",Ot]]);var At=zt;const Ut=e=>((0,m.dD)("data-v-dc6acca2"),e=e(),(0,m.Cn)(),e),Ht={class:"d-flex align-center"},Zt=Ut((()=>(0,m._)("p",{class:"mx-3"},"Odpracovaný čas",-1))),It={class:"d-flex align-center mb-3"},Ft=Ut((()=>(0,m._)("p",{class:"task-badge rounded-pill"},"Pridať záznam",-1))),Yt={class:"d-flex align-center flex-start width-100"},Pt={class:"task-badge rounded-pill"},Lt={class:"ml-5"},Nt={class:"d-flex justify-space-between align-center"},qt=Ut((()=>(0,m._)("h1",null,"Pridať odpracovaný čas",-1)));function Bt(e,t,s,i,n,l){return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Ht,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Zt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1}),(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",It,[(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=e=>n.showModal=!0),class:"add-date cursor-pointer mr-2",icon:"mdi-plus",size:"medium"}),Ft]),s.subtask.timesheets.length?((0,m.wg)(!0),(0,m.iD)(m.HY,{key:0},(0,m.Ko)(s.subtask.timesheets,(e=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center mb-3"},[(0,m.Wm)(w.t,{onClick:(0,a.iM)((t=>l.deleteTimesheet(e)),["stop"]),class:"circle-border cursor-pointer mr-2",icon:"mdi-minus",size:"medium"},null,8,["onClick"]),(0,m._)("div",Yt,[(0,m._)("p",Pt,(0,k.zw)(e.time),1),(0,m._)("p",Lt,(0,k.zw)(e.employee_name)+" ("+(0,k.zw)(e.timestamp)+") ",1)])])))),128)):(0,m.kq)("",!0)])),_:1})])),_:1})])),_:1}),(0,m.Wm)(b.B,{"max-width":"750",modelValue:n.showModal,"onUpdate:modelValue":t[4]||(t[4]=e=>n.showModal=e),persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Nt,[qt,(0,m.Wm)(w.t,{onClick:t[1]||(t[1]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{modelValue:n.form.hours,"onUpdate:modelValue":t[2]||(t[2]=e=>n.form.hours=e),variant:"solo","bg-color":"white",type:"number",hint:n.v$.form.hours.$errors?n.errorUtils.parseErrors(n.v$.form.hours.$errors):null,class:(0,k.C_)([{error:n.v$.form.hours.$errors.length},"mb-2"]),label:"Odpracovaný čas"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{onClick:t[3]||(t[3]=e=>l.submit()),class:"button primary mt-5"},{default:(0,m.w5)((()=>[(0,m.Uk)("Potvrdiť")])),_:1})])),_:1})])),_:1},8,["modelValue"])],64)}var Rt=s(15941),Kt={mixins:[M],props:{hours:{type:Number,required:!0},subtask:{type:Object,required:!0}},data(){return{moment:Q(),v$:(0,O.ZP)(),errorUtils:z.Z,showModal:!1,form:{hours:null}}},validations(){return{form:{hours:{required:V.C1,numeric:V.uR,minValue:(0,V.uv)(.1)}}}},computed:{...(0,U.Se)("auth",["user"])},methods:{async submit(){if(!await this.v$.$validate())return;const e=JSON.parse(JSON.stringify(this.subtask));e.timesheets.push({id:null,employee_id:this.user.id,time:"string"==typeof this.form.hours?parseFloat(this.form.hours):this.form.hours}),e.deadline&&(e.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),this._update(e)},async deleteTimesheet({id:e}){const t=JSON.parse(JSON.stringify(this.subtask));t.timesheets=t.timesheets.filter((t=>t.id!=e)),t.deadline&&(t.deadline=A.Z.formatDateTimeForBackend(this._mergeDeadlineTimeDate())),this._update(t)},closeModal(){this.form={hours:null},this.showModal=!1,this.$nextTick((()=>this.v$.$reset()))},async _update(e){try{const t=e.timesheets.map((e=>(delete e.employee_name,e))),s=(e.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${e.id}`,{...e,timesheets:t,timeblocks:s});this.closeModal(),this.$events.emit("on-subtask-edited",a)}catch(t){this.$toast.error(t.message||t)}},_mergeDeadlineTimeDate(){const e=new Date(this.subtask.deadline);Rt.log("a-task-spent-time",this.subtask);const t=this.subtask._deadline_time.split(":");return e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),e}}};const Jt=(0,$.Z)(Kt,[["render",Bt],["__scopeId","data-v-dc6acca2"]]);var Gt=Jt;const Xt={class:"d-flex align-center"},Qt=(0,m._)("p",{class:"mx-3"},"Zostávajúci čas",-1);function es(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center border-bottom"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Xt,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Qt])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours.toFixed(2))+" h",1)])),_:1})])),_:1})])),_:1})}var ts={props:{hours:{type:Number,required:!0}}};const ss=(0,$.Z)(ts,[["render",es]]);var as=ss,is=s(80678);const ns={class:"d-flex align-center"},ls=(0,m._)("p",{class:"mx-3"},"Deadline",-1);function os(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",ns,[(0,m.Wm)(w.t,{icon:"mdi-calendar-week",size:"large"}),ls])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[s.subtask.deadline?((0,m.wg)(),(0,m.iD)("p",{key:0,class:(0,k.C_)(""+(i.tmUtils.isAfter(s.subtask.deadline)?"text-black":"text-red-darken-4"))},(0,k.zw)(i.tmUtils.formatDate(s.subtask.deadline))+" "+(0,k.zw)(n.deadlineTime),3)):((0,m.wg)(),(0,m.j4)(is.N,{key:1,text:"Deadline z Mastertasku",location:"end"},{activator:(0,m.w5)((({props:e})=>[(0,m._)("span",(0,m.dG)({class:"cursor-pointer"},e),(0,k.zw)(n.getMasterTaskDeadline(s.subtask))+"*",17)])),_:1}))])),_:1})])),_:1})])),_:1})}var rs={props:{subtask:{type:[String,Object,null],required:!0}},computed:{...(0,U.Se)("tm",["mastertasks"]),deadlineTime(){const e=this.subtask?._deadline_time;return e?Q()(e,"HH:mm:ss").format("HH:mm"):""}},data(){return{tmUtils:A.Z}},methods:{getMasterTaskDeadline(e){return e?.deadline?e.deadline:e.master_task_deadline}}};const ds=(0,$.Z)(rs,[["render",os]]);var us=ds;const cs={key:0,class:"px-5 py-5 border-bottom"},ms=(0,m._)("p",null,"Popis zadania",-1),hs=["innerHTML"],ps={key:1,class:"px-5 py-5 border-bottom"},vs=(0,m._)("p",null,"Popis mastertasku",-1),ks=["innerHTML"];function fs(e,t,s,a,i,n){return(0,m.wg)(),(0,m.iD)(m.HY,null,[s.description?((0,m.wg)(),(0,m.iD)("div",cs,[ms,(0,m._)("section",{innerHTML:i.preparedDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,hs)])):(0,m.kq)("",!0),s.mastertaskDescription?((0,m.wg)(),(0,m.iD)("div",ps,[vs,(0,m._)("section",{innerHTML:i.preparedMastertaskDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,ks)])):(0,m.kq)("",!0)],64)}var _s=s(46215),gs=s.n(_s);const bs=(0,_s.useToast)();function ws(){const e=window.navigator.platform,t=["Macintosh","MacIntel","MacPPC","Mac68K"],s=["Win32","Win64","Windows","WinCE"];return-1!==t.indexOf(e)?"mac":(s.indexOf(e),"win")}function ys(e){if(!e)return e;const t=ws();return"mac"===t?(e=e.replace(/\\\\/g,"smb://"),e=e=e.replace(/(smb:\/\/[^\s<>"()]+)/g,(function(e){return''+e.replace(/\\/g,"/")+""}))):(e=e.replace(/smb:\/\//g,"\\\\"),e=e.replace(/(\\\\[^\s<>"()]+)/g,(function(e){return e=e.replaceAll("/","\\"),''+e+""}))),e}function Ds(e){return`\n\t\tif (navigator.clipboard && navigator.clipboard.writeText) {\n\t\t\tnavigator.clipboard.writeText('${e.replace(/\\/g,"\\\\")}').then(() => {\n\t\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t\t}).catch(err => {\n\t\t\t\twindow.toast.error('Failed to copy link to clipboard!')\n\t\t\t});\n\t\t} else {\n\t\t\tconst input = document.createElement('input');\n\t\t\tinput.style.position = 'fixed';\n\t\t\tinput.style.opacity = 0;\n\t\t\tinput.style.pointerEvents = 'none';\n\t\t\tinput.value = '${e.replace(/\\/g,"\\\\")}';\n\t\t\tdocument.body.appendChild(input);\n\t\t\tinput.select();\n\t\t\tinput.focus();\n\t\t\tdocument.execCommand('copy');\n\t\t\tdocument.body.removeChild(input);\n\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t}\n\t`}window.toast=bs;var Ms={props:{description:{type:String||null,default:()=>null},mastertaskDescription:{type:String||null,default:()=>null}},data(){return{copiedIndices:[],preparedDescription:"",preparedMastertaskDescription:""}},mounted(){this.preparedDescription=ys(this.description),this.preparedMastertaskDescription=ys(this.mastertaskDescription)}};const Ts=(0,$.Z)(Ms,[["render",fs]]);var $s=Ts;const Cs=e=>((0,m.dD)("data-v-f01fa1ac"),e=e(),(0,m.Cn)(),e),js=Cs((()=>(0,m._)("p",{class:"mt-5"},"Prílohy",-1))),Es={class:"w-100 d-flex align-center"},xs=["onClick"],Ws={key:0,class:"d-flex align-center"},Ss=["src"],Os=Cs((()=>(0,m._)("p",{class:"ml-2"},"Súbor sa sťahuje, počkajte prosím",-1)));function Vs(e,t,a,i,n,l){const o=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.iD)(m.HY,null,[js,(0,m._)("div",Es,[(0,m.Wm)(o,{content:a.files,emptyMessage:"Žiadne prílohy neboli nahraté"},{default:(0,m.w5)((()=>[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(a.files,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:(0,k.C_)(["d-flex align-center flex-wrap",[0===t?"ml-0":"ml-2"]])},[(0,m.Wm)(Te.v,{class:"mt-2"},{default:(0,m.w5)((()=>[(0,m._)("p",{onClick:t=>l.downloadFile(e),class:"cursor-pointer"},(0,k.zw)(e.name),9,xs),(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-paperclip"}),(0,m._)("p",null,(0,k.zw)((e.file_size/1048576).toFixed(2))+" MB",1)])),_:2},1024),e.isLoading?((0,m.wg)(),(0,m.iD)("div",Ws,[(0,m._)("img",{class:"gif-loader",src:s(14214),alt:"Loading..."},null,8,Ss),Os])):(0,m.kq)("",!0)],2)))),128))])),_:1},8,["content"])])],64)}var zs={props:{files:{type:Array,default:()=>[]}},data(){return{isLoading:!1}},methods:{async downloadFile(e){e.isLoading=!0;try{const t=await fetch(e.path),s=await t.blob();Ae.saveAs(s,e.name)}catch(t){this.$toast.error(this.$parseError(t))}finally{e.isLoading=!1}}}};const As=(0,$.Z)(zs,[["render",Vs],["__scopeId","data-v-f01fa1ac"]]);var Us=As,Hs={emits:["close-modal","update-subtask"],components:{ZFiles:Us,AMastertaskName:qe,AMastertaskStatus:et,ATaskTimeblocks:pt,ZCreatedBy:yt,ATaskAssignedEmployee:xt,ATaskPlannedTime:At,ATaskSpentTime:Gt,ATaskRemainingTime:as,ATaskDescription:$s,ATaskDeadline:us},props:{subtask:{type:Object,required:!0}}};const Zs=(0,$.Z)(Hs,[["render",Ue]]);var Is=Zs;const Fs={class:"timeblock w-100"},Ys={key:0,class:"x-button"},Ps={class:"splitted-time-inputs"};function Ls(e,t,s,a,i,n){const l=(0,m.up)("Datepicker");return(0,m.wg)(),(0,m.iD)("div",Fs,[s.deletable&&s.editable?((0,m.wg)(),(0,m.iD)("div",Ys,[(0,m._)("button",{onClick:t[0]||(t[0]=t=>e.$emit("removeTimeblock")),class:"x-button"},"x")])):(0,m.kq)("",!0),(0,m._)("div",{onClick:t[1]||(t[1]=(...e)=>n.handleDatepickerClick&&n.handleDatepickerClick(...e)),class:"datepicker-wrapper",ref:`timeblock-datepicker-wrapper-${s.index}`},[(0,m.Wm)(l,{"model-value":s.timeblock.date,ref:`timeblock-datepicker-${s.index}`,"onUpdate:modelValue":n.updateDate,format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum","auto-apply":!0,"enable-time-picker":!1,class:"mb-5 modal-input datepicker-input"},null,8,["model-value","onUpdate:modelValue"])],512),(0,m._)("div",Ps,[(0,m.Wm)(x.hw,{value:s.timeblock.starts_at_time,onInput:n.updateStartTime,class:(0,k.C_)({error:i.v$?.timeblock.starts_at_time.$errors.length}),type:"time",variant:"solo","bg-color":"white",label:"Začiatok"},null,8,["value","onInput","class"]),(0,m.Wm)(x.hw,{value:s.timeblock.ends_at_time,onInput:n.updateEndTime,class:(0,k.C_)({error:i.v$?.timeblock.ends_at_time.$errors.length}),type:"time",variant:"solo","bg-color":"white",label:"Koniec"},null,8,["value","onInput","class"])])])}var Ns={components:{Datepicker:Me.Z},props:{timeblock:{type:Object,required:!0},deletable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},preventInputFocus:{type:Boolean,default:!1},onInputFocus:{type:Function,default:()=>({})},onDateOpen:{type:Function,default:()=>({})},index:{type:Number}},data(){return{v$:(0,O.ZP)()}},validations(){return{timeblock:{starts_at_time:{required:(0,V.CF)(this.timeblock.date)},ends_at_time:{required:(0,V.CF)(this.timeblock.date)}}}},methods:{handleDatepickerClick(){const e=this.$refs[`timeblock-datepicker-wrapper-${this.index}`];this.onDateOpen(e),this.openDatepicker(`timeblock-datepicker-${this.index}`),setTimeout((()=>{const e=document.querySelector(".dp__menu.dp__menu_index.dp__theme_light");if(!e)return;const t=this.$refs[`timeblock-datepicker-wrapper-${this.index}`],s=document.querySelector(".v-overlay__content");if(!t||!s)return;const a=t.getBoundingClientRect(),i=s.getBoundingClientRect(),n=a.top-i.top+a.height;a.left,i.left;e.style.top=`${n+210}px`}),100)},async openDatepicker(e){this.$refs[e].openMenu()},updateDate(e){const t={...this.timeblock,date:e};this.$emit("updateTimeblock",t)},updateStartTime(e){const t={...this.timeblock,starts_at_time:e.target.value};this.$emit("updateTimeblock",t)},updateEndTime(e){const t={...this.timeblock,ends_at_time:e.target.value};this.$emit("updateTimeblock",t)}}};const qs=(0,$.Z)(Ns,[["render",Ls],["__scopeId","data-v-4d980d7a"]]);var Bs=qs,Rs=s(15941),Ks={emits:["close","refresh"],mixins:[Ve,ze,H.Z,M],components:{ZTaskReadonlyInfo:Is,ATimeblock:Bs,ZFilesUpload:Oe,Datepicker:Me.Z,QuillEditor:r.Bn},data(){return{tmUtils:A.Z,editMode:!1,visible:!1,subtask:null,isSaving:!1,errorUtils:z.Z,v$:(0,O.ZP)(),employeeValidations:[],showDatePicker:!1,selectedNewDate:[],timeblocks:[{date:null,starts_at_time:null,ends_at_time:null}],wasFormValidationTriggered:!1}},computed:{...(0,U.Se)("tm",["mastertasks","enrichedEmployees"]),enrichedMastertasks(){return this.mastertasks.map((e=>({...e,_fullName:`${e.name} [${e.project_code}]`})))},editableTimeblocks:{get(){return this.subtask?.id?this.subtask.timeblocks||[]:this.timeblocks},set(e){this.subtask?.id?this.subtask.timeblocks=e:this.timeblocks=e}}},validations(){return{subtask:{master_task_id:{required:V.C1},deadline:{required:V.C1},_deadline_time:{required:V.C1}}}},mounted(){this.$events.on("add-timeblock",(e=>{this.subtask?.timeblocks||(this.subtask.timeblocks=[]),this.subtask?.timesheets||(this.subtask.timesheets=[]),this.subtask?.is_finished||(this.subtask.is_finished=0),this.subtask.timeblocks.push(e)})),this.$events.on("on-subtask-edited",(e=>{if(e?.id!==this.subtask?.id)return;const t=JSON.parse(JSON.stringify(e)),s=t.deadline?.split(" ")||[];t.deadline=s[0],t._deadline_time=s[1];const a=[];t.timeblocks&&t.timeblocks.length>0&&t.timeblocks.forEach((e=>{if(e.date)a.push(e);else if(e.start&&e.end){const t=Q()(e.start,"YYYY-MM-DD HH:mm:ss"),s=Q()(e.end,"YYYY-MM-DD HH:mm:ss");a.push({id:e.id||null,date:t.toDate(),starts_at_time:t.format("HH:mm"),ends_at_time:s.format("HH:mm"),is_finished:e.is_finished||0})}})),t.timeblocks=a,this.subtask=this._enrichTask(t),this.$forceUpdate()})),this.$events.on("on-subtask-deleted",(e=>{e?.id==this.subtask?.id&&this.closeModal()}))},methods:{toggleEditMode(){if("office365"==this.subtask.type)return this.$events.emit("show-unable-to-edit-office-task-modal",{mode:"edit"});this.editMode=!this.editMode},openDatepicker(e){this.$refs[e].openMenu()},updateTimeblock(e,t){this.subtask?.id?this.subtask.timeblocks[t]=e:this.timeblocks[t]=e},addTimeblock(){const e={date:null,starts_at_time:null,ends_at_time:null};this.subtask?.id?(this.subtask.timeblocks||(this.subtask.timeblocks=[]),this.subtask.timeblocks.push(e)):this.timeblocks.push(e)},removeTimeblock(e){this.subtask?.id?this.subtask.timeblocks.splice(e,1):this.timeblocks.splice(e,1)},async showModal({subtask:e,editMode:t=!1,mastertask:s={}}){this.isSaving=!1,this.subtask=null,this.visible=!0,this.timeblocks=[{date:null,starts_at_time:null,ends_at_time:null}],this.$nextTick((()=>{this.v$.$reset(),this.setFocusEvent()}));try{if(e?.id){const s=await this.$axios.get_auth_data(`v1/subtasks/${e.id}`),a=[];if(s.timeblocks&&s.timeblocks.length>0&&s.timeblocks.forEach((e=>{if(e.date)a.push(e);else if(e.start&&e.end){const t=Q()(e.start,"YYYY-MM-DD HH:mm:ss"),s=Q()(e.end,"YYYY-MM-DD HH:mm:ss");a.push({id:e.id||null,date:t.toDate(),starts_at_time:t.format("HH:mm"),ends_at_time:s.format("HH:mm"),is_finished:e.is_finished||0})}})),s.timeblocks=a,!s.deadline)return this.editMode=t||!s.id,this.subtask=this._enrichTask(s);const i=s.deadline.split(" ");s.deadline=i[0],s._deadline_time=i[1],this.subtask=this._enrichTask(s)}else{const t=localStorage.getItem("subtaskData");try{if(!t)throw new Error("subtaskData is null or undefined");{const e=JSON.parse(t);if(this.subtask=e,"object"!==typeof this.subtask||null===this.subtask)throw new Error("Parsed subtask is not an object");this.$nextTick((()=>{this.$refs["description"]?.setHTML(this.subtask.description||"")}))}}catch(a){Rs.error("Error parsing subtaskData:",a),this.subtask={master_task:s,employees:[{}],_deadline_time:"17:00"}}if(e?.deadline&&e._deadline_time&&e.employee_id){const t=this.enrichedEmployees.find((t=>t.id==e.employee_id));this.subtask.employees=[t],this.subtask.deadline=e.deadline,this.subtask._deadline_time=e._deadline_time}e?.master_task_id&&e?.project_code&&(this.subtask.master_task_id=e.master_task_id,this.subtask.project_code=e.project_code)}this.editMode=t||!this.subtask.id}catch(a){this.$toast.error(this.$parseError(a))}},deleteTimeblock(e){this.subtask.timeblocks.splice(e,1)},closeModal(){this.visible=!1,this.$router.replace({name:this.$route.name})},async validateAllFields(){const e=await this._validateEmployees(),t=await this._validateTimeblocks();if(await this.v$.$validate()&&e&&t)return!0},async handleOnRemoveEmployee(){this.wasFormValidationTriggered&&setTimeout((async()=>{this.validateAllFields()}),100)},async save(){if(this.wasFormValidationTriggered=!0,await this.validateAllFields()){this.subtask.description=this.$refs["description"].getHTML(),this._mergeDeadlineTimeDate();try{if(this.isSaving=!0,this.subtask.deadline=Q()(this.subtask.deadline).format("YYYY-MM-DD HH:mm:SS"),this.subtask?.id){const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date)).map((e=>{const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),{subtask:s}=await this.$axios.patch_auth_form(`v1/subtasks/${this.subtask.id}`,{...this.subtask,timesheets:e,timeblocks:t});localStorage.removeItem("subtaskData"),this.$store.commit("tm/update_subtask",s),this.$events.emit("on-subtask-edited",this.subtask)}else{const e=this.subtask.employees.filter((e=>e.id&&e.duration));e.forEach((e=>{e.timeblocks=this.timeblocks.filter((e=>e.date)).map((e=>({start:`${Q()(e.date).format("YYYY-MM-DD")} ${e.starts_at_time}:00`,end:`${Q()(e.date).format("YYYY-MM-DD")} ${e.ends_at_time}:00`,id:null})))}));const t={...this.subtask,employees:e};delete t._master_task;const{subtasks:s}=await this.$axios.post_auth(`v1/mastertasks/${this.subtask.master_task_id}/subtasks`,t);localStorage.removeItem("subtaskData"),this.subtask.id=s[0].id,s.forEach((e=>{this.$store.commit("tm/update_subtask",e),this.$events.emit("on-subtask-edited",this.subtask)})),this.$events.emit("task-created"),this.$events.emit("close-both-modals")}this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isSaving=!1}}},openDeleteTaskModal(e){if("office365"==e.type)return this.$events.emit("show-unable-to-edit-office-task-modal",{mode:"delete"});this.$events.emit("show-delete-task-modal",{subtask:e})},showCompleteTaskModal(){this.$events.emit("show-complete-task-modal",{subtask:this.subtask}),this.subtask.deadline&&(this.subtask.deadline=A.Z.formatDateTimeForBackend(this.subtask.deadline))},filesUploaded(e){this.subtask.files=e},updateSubtask(e){this.subtask=e},_mergeDeadlineTimeDate(){const e=new Date(this.subtask.deadline);Rs.log("z-task-modal",this.subtask);const t=this.subtask._deadline_time.split(":");e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),this.subtask.deadline=e},_validateEmployees(){return new Promise((e=>{if(this.employeeValidations=[],this.subtask.id)this.subtask.employee_id&&this.subtask.duration||(this.employeeValidations[0]={employee:!this.subtask.employee_id,duration:!this.subtask.duration});else{let e=!1;this.subtask.employees.forEach(((t,s)=>{t.id||t.duration?(t.id||t.duration)&&(this.employeeValidations[s]={employee:!t.id,duration:!t.duration},t.id&&t.duration&&(e=!0)):0!==s||e||(this.employeeValidations[s]={employee:!0,duration:!0})}))}const t=this.employeeValidations.some((e=>e.duration||e.employee));e(!t)}))},async _validateTimeblocks(){let e=!0;const t=this.editableTimeblocks;for(let s=0;st.id==e.created_by)),_employee:this.enrichedEmployees.find((t=>t.id==e.employee_id)),_master_task:this.mastertasks.find((t=>t.id==e.master_task_id))}}},watch:{"subtask.employee_id"(e,t){e&&t&&(this.subtask.timeblocks=[],this.subtask._employee=this.enrichedEmployees.find((e=>e.id==this.subtask.employee_id)))},"subtask.employees":{handler(){if(!this.subtask?.employees)return;const e=this.subtask.employees[this.subtask.employees.length-1];(e?.id||e?.duration)&&this.subtask.employees.push({})},deep:!0},"subtask.master_task_id"(e){e&&(this.subtask._master_task=this.mastertasks.find((e=>e.id==this.subtask.master_task_id)),this.subtask.project_code=this.subtask._master_task?.project_code||null)},editMode(){this.$nextTick((()=>{this.$refs["description"]?.setHTML(this.subtask.description||"")}))},subtask:{handler(e){if(this.editMode&&!this.subtask?.id){const t=e?.employees?.filter((e=>e?.id||e?.duration))||[{}],s={...e,employees:t&&t.length>0?t:[{}]};Rs.log("subtaskData",s),localStorage.setItem("subtaskData",JSON.stringify(s))}},deep:!0}}};const Js=(0,$.Z)(Ks,[["render",De],["__scopeId","data-v-3db8381d"]]);var Gs=Js;const Xs={class:"d-flex justify-space-between align-center"};function Qs(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Xs,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete zmazať "),(0,m._)("b",null,(0,k.zw)(n.blocker.name),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteBlocker()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var ea={mixins:[M],emits:["on-blocker-deleted"],data(){return{visible:!1,blocker:null,isDeleting:!1}},methods:{async showModal({blocker:e}){this.blocker=e,this.visible=!0},closeModal(){this.visible=!1},async deleteBlocker(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/blockers/${this.blocker.id}`),this.$emit("on-blocker-deleted",this.blocker),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}};const ta=(0,$.Z)(ea,[["render",Qs]]);var sa=ta;const aa={class:"d-flex justify-space-between align-center"};function ia(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",aa,[(0,m._)("h1",null,[(0,m.Uk)(" Ste si istý, že chcete "+(0,k.zw)(n.subtask.is_finished?"znovu otvoriť":"dokončiť")+" sub task, z mastertasku ",1),(0,m._)("b",null,(0,k.zw)(n.subtask?.master_task?.name||n.subtask.master_task),1),(0,m.Uk)("? ")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.complete())},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>n.visible=!1),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var na={mixins:[M],emits:["close","on-subtask-edited"],data(){return{visible:!1,subtask:null}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},async complete(){try{const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),s={...this.subtask,is_finished:this.subtask.is_finished?0:1,timesheets:e,timeblocks:t},{subtask:a}=await this.$axios.put_auth(`v1/subtasks/${s.id}`,s);this.visible=!1,this.$emit("on-subtask-edited",a)}catch(e){this.$toast.error(this.$parseError(e))}},closeModal(){this.visible=!1}}};const la=(0,$.Z)(na,[["render",ia]]);var oa=la;const ra={class:"d-flex justify-space-between align-center"};function da(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",ra,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete "+(0,k.zw)(n.mastertask.is_finished?"znovu otvoriť":"dokončiť")+" ",1),(0,m._)("b",null,(0,k.zw)(n.mastertask?.name),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>n.visible=!1),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.complete())},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>n.visible=!1),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var ua={mixins:[M],emits:["close","master-task-edited"],data(){return{visible:!1,mastertask:null}},methods:{async showModal({mastertask:e}){this.mastertask=e,this.visible=!0},async complete(){try{const e={...this.mastertask,is_finished:this.mastertask.is_finished?0:1},{mastertask:t}=await this.$axios.put_auth(`v1/mastertasks/${e.id}`,e);this.visible=!1,this.$emit("master-task-edited",t),this.$events.emit("close-both-modals")}catch(e){this.$toast.error(this.$parseError(e))}}}};const ca=(0,$.Z)(ua,[["render",da]]);var ma=ca;const ha={class:"d-flex justify-space-between align-center"},pa=(0,m._)("h1",null,"Pridať odpracovaný čas",-1);function va(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{"max-width":"750",modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",ha,[pa,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{modelValue:n.form.hours,"onUpdate:modelValue":t[1]||(t[1]=e=>n.form.hours=e),variant:"solo","bg-color":"white",type:"number",hint:n.v$.form.hours.$errors?n.errorUtils.parseErrors(n.v$.form.hours.$errors):null,class:(0,k.C_)([{error:n.v$.form.hours.$errors.length},"mb-2"]),label:"Odpracovaný čas"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{onClick:t[2]||(t[2]=e=>l.submit()),class:"button primary mt-5"},{default:(0,m.w5)((()=>[(0,m.Uk)("Potvrdiť")])),_:1})])),_:1})])),_:1},8,["modelValue"])}var ka={mixins:[M],emits:["close","on-subtask-edited"],data(){return{v$:(0,O.ZP)(),errorUtils:z.Z,visible:!1,subtask:null,form:{hours:null}}},validations(){return{form:{hours:{required:V.C1,numeric:V.uR,minValue:(0,V.uv)(.1)}}}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0,this.form.hours=null,this.$nextTick((()=>this.v$.$reset()))},async submit(){if(!await this.v$.$validate())return;this.subtask.deadline&&(this.subtask.deadline=A.Z.formatDateTimeForBackend(this.subtask.deadline)),this.subtask.timesheets.push({id:null,employee_id:this.subtask.employee_id,time:"string"==typeof this.form.hours?parseFloat(this.form.hours):this.form.hours});const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),s={...this.subtask,timesheets:e,timeblocks:t};try{const{subtask:e}=await this.$axios.put_auth(`v1/subtasks/${this.subtask.id}`,s);this.closeModal(),this.$events.emit("on-subtask-edited",e)}catch(a){this.$toast.error(a.message||a)}},closeModal(){this.visible=!1,this.v$.$reset()}}};const fa=(0,$.Z)(ka,[["render",va]]);var _a=fa;const ga={class:"d-flex justify-space-between align-center modal-header"};function ba(e,t,s,i,n,l){const o=(0,m.up)("Datepicker"),r=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[7]||(t[7]=e=>n.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(r,{content:n.blocker,class:"h-100"},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,{height:"100%",class:"d-flex flex-column"},{default:(0,m.w5)((()=>[(0,m._)("div",ga,[(0,m._)("h1",null,(0,k.zw)(n.blocker.id?"Upraviť":"Vytvoriť")+" blocker",1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(x.hw,{onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:n.v$.blocker.name.$errors.length}]),label:"Názov blockeru",hint:n.v$.blocker.name.$errors?n.errorUtils.parseErrors(n.v$.blocker.name.$errors):null,modelValue:n.blocker.name,"onUpdate:modelValue":t[1]||(t[1]=e=>n.blocker.name=e),variant:"solo"},null,8,["onFocus","class","hint","modelValue"]),(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,clearable:"",label:"Vyhľadať zamestnanca",items:[...e.enrichedEmployees],"item-title":"_fullName","item-value":"id",variant:"solo",class:"modal-input",modelValue:n.blocker.employee_id,"onUpdate:modelValue":t[2]||(t[2]=e=>n.blocker.employee_id=e)},null,8,["custom-filter","items","modelValue"]),(0,m.Wm)(o,{class:(0,k.C_)(["modal-input mb-5",{error:n.v$.datepicker.$errors?.length}]),modelValue:n.datepicker,"onUpdate:modelValue":t[3]||(t[3]=e=>n.datepicker=e),"auto-apply":!0,format:"dd.MM.yyyy",locale:"sk",validations:n.v$.datepicker,"select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum","enable-time-picker":!1,ref:"datepicker"},null,8,["modelValue","class","validations"]),(0,m.Wm)(x.hw,{modelValue:n.starts_at_time,"onUpdate:modelValue":t[4]||(t[4]=e=>n.starts_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.starts_at_time.$errors?n.errorUtils.parseErrors(n.v$.starts_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.starts_at_time.$errors.length},"mb-1 modal-input"]),label:"Začiatok"},null,8,["modelValue","hint","class"]),(0,m.Wm)(x.hw,{modelValue:n.ends_at_time,"onUpdate:modelValue":t[5]||(t[5]=e=>n.ends_at_time=e),type:"time",variant:"solo","bg-color":"white",hint:n.v$.ends_at_time.$errors?n.errorUtils.parseErrors(n.v$.ends_at_time.$errors):null,class:(0,k.C_)([{error:n.v$.ends_at_time.$errors.length},"modal-input"]),label:"Koniec"},null,8,["modelValue","hint","class"])])),_:1}),(0,m.Wm)(f.T,{class:"button primary",onClick:t[6]||(t[6]=e=>l.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(n.blocker.id?"UPRAVIŤ":"VYTVORIŤ"),1)])),_:1})])),_:1})])),_:1},8,["content"])])),_:1},8,["modelValue"])}var wa={mixins:[Ve,H.Z,M],emits:["close"],components:{Datepicker:Me.Z},data(){return{visible:!1,v$:(0,O.ZP)(),errorUtils:z.Z,blocker:null,datepicker:null,starts_at_time:null,ends_at_time:null,employee:null}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),...(0,U.Se)("auth",["user"])},validations(){return{blocker:{name:{required:V.C1},start:{required:V.C1},end:{required:V.C1}},starts_at_time:{required:V.C1},ends_at_time:{required:V.C1},datepicker:{required:V.C1}}},methods:{async showModal({blocker:e}){this.visible=!0,this.blocker=null,this.datepicker=null,this.starts_at_time=null,this.ends_at_time=null,this.$nextTick((()=>{this.setFocusEvent(),this.v$.$reset()}));try{e?.id?(e=await this.$axios.get_auth_data(`v1/blockers/${e.id}`),this.starts_at_time=Q()(e.start).format("HH:mm"),this.ends_at_time=Q()(e.end).format("HH:mm"),this.datepicker=new Date(e.start),e.employee_id=e.employee.id,this.blocker=e):(this.blocker={start:null,employee_id:this.user.id},e.starts_at_time&&e.datepicker&&e.employee_id&&(this.datepicker=e.datepicker,this.starts_at_time=e.starts_at_time,this.blocker.employee_id=e.employee_id))}catch(t){this.$toast.error(this.$parseError(t))}},async save(){if(await this.v$.$validate())try{if(this.blocker.id){const{blocker:e}=await this.$axios.put_auth(`v1/blockers/${this.blocker.id}`,this.blocker);this.blocker=e}else{const{blocker:e}=await this.$axios.post_auth("v1/blockers",this.blocker);this.blocker=e}this.$events.emit("on-blocker-edited",this.blocker),this.$events.emit("blocker-created"),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}},closeModal(){this.$refs["datepicker"].clearValue(),this.visible=!1,this.$emit("close",this.blocker)},onEmployeeSelected({key:e}){this.blocker.employee=this.enrichedEmployees.find((t=>t.id==e))},_syncDatesTimes(){if(!this.starts_at_time||!this.ends_at_time||!this.datepicker)return;const e=this.starts_at_time.split(":"),t=this.ends_at_time.split(":");this.blocker.start=Q()(this.datepicker).set({hours:parseInt(e[0]),minutes:parseInt(e[1])}).format("YYYY-MM-DD HH:mm"),this.blocker.end=Q()(this.datepicker).set({hours:parseInt(t[0]),minutes:parseInt(t[1])}).format("YYYY-MM-DD HH:mm")}},watch:{ends_at_time(){this._syncDatesTimes()},starts_at_time(){this._syncDatesTimes()},datepicker(){this._syncDatesTimes()}}};const ya=(0,$.Z)(wa,[["render",ba]]);var Da=ya;const Ma={class:"d-flex justify-space-between align-center"};function Ta(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Ma,[(0,m._)("h1",null,[(0,m.Uk)("Ste si istý, že chcete zmazať "),(0,m._)("b",null,(0,k.zw)(n.mastertask.name),1),(0,m.Uk)("?")]),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"mb-15"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half",variant:"flat",onClick:t[1]||(t[1]=e=>l.deleteMasterTask()),disabled:n.isDeleting},{default:(0,m.w5)((()=>[(0,m.Uk)("ÁNO")])),_:1},8,["disabled"]),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.closeModal()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("ZRUŠIŤ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var $a={mixins:[M],emits:["on-mastertask-deleted"],data(){return{visible:!1,mastertask:null,isDeleting:!1}},methods:{async showModal({mastertask:e}){this.mastertask=e,this.visible=!0},closeModal(){this.visible=!1},async deleteMasterTask(){if(!this.isDeleting){this.isDeleting=!0;try{await this.$axios.delete_auth(`v1/mastertasks/${this.mastertask.id}`),this.$emit("on-mastertask-deleted",this.mastertask),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}finally{this.isDeleting=!1}}}}};const Ca=(0,$.Z)($a,[["render",Ta]]);var ja=Ca,Ea=s(10240);const xa={class:"d-flex justify-space-between align-center modal-header"},Wa={class:"splitted-inputs"},Sa={class:"employee-select-avatar d-flex justify-center align-center"},Oa={class:"employee-select-avatar d-flex justify-center align-center"},Va={class:"d-flex justify-space-between align-center"},za={class:"d-flex justify-space-between align-center modal-header border-bottom pb-4"},Aa={class:"d-flex justify-start"},Ua=["src"],Ha=["src"],Za={class:"w-100"},Ia={class:"d-flex justify-start align-center mt-8"},Fa={class:"d-flex align-center"};function Ya(e,t,i,n,l,o){const r=(0,m.up)("Datepicker"),d=(0,m.up)("QuillEditor"),u=(0,m.up)("Z-files-upload"),c=(0,m.up)("A-mastertask-description"),h=(0,m.up)("A-tasks-table"),p=(0,m.up)("W-loadable");return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:l.visible,"onUpdate:modelValue":t[18]||(t[18]=e=>l.visible=e),"max-width":"750","max-height":"90%",height:"700px",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(p,{content:l.mastertask,class:"h-100"},{default:(0,m.w5)((()=>[l.editMode?((0,m.wg)(),(0,m.j4)(_._,{key:0,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",xa,[(0,m._)("h1",null,(0,k.zw)(l.mastertask?.id?"Upraviť master task":"Vytvoriť master task"),1),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m.Wm)(E.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:l.mastertask.project_id,"onUpdate:modelValue":t[1]||(t[1]=e=>l.mastertask.project_id=e),label:e.$t("Project code"),class:(0,k.C_)([{error:l.v$.mastertask.project_id.$errors.length},"modal-input"]),items:e.projectsOptions,"item-title":"code","item-value":"id",variant:"solo",clearable:"","onUpdate:search":t[2]||(t[2]=e=>l.projectCodeSearch=e)},null,8,["custom-filter","modelValue","label","class","items"]),(0,m.Wm)(x.hw,{modelValue:l.mastertask.name,"onUpdate:modelValue":t[3]||(t[3]=e=>l.mastertask.name=e),onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:l.v$.mastertask.name.$errors.length}]),label:"Názov mastertasku",variant:"solo",hint:l.v$.mastertask.name.$errors?l.errorUtils.parseErrors(l.v$.mastertask.name.$errors):null},null,8,["modelValue","onFocus","class","hint"]),(0,m._)("div",Wa,[(0,m._)("div",{onClick:t[5]||(t[5]=(...e)=>o.handleDatepickerClick&&o.handleDatepickerClick(...e)),class:"datepicker-wrapper left",ref:"datepicker-wrapper"},[(0,m.Wm)(r,{modelValue:l.mastertask.deadline,"onUpdate:modelValue":t[4]||(t[4]=e=>l.mastertask.deadline=e),ref:"datepicker","auto-apply":!0,"min-date":new Date,class:(0,k.C_)(["modal-input datepicker-input",{error:l.v$.mastertask.deadline.$errors?.length}]),format:"dd.MM.yyyy",locale:"sk","select-text":"Vybrať","cancel-text":"Zrušiť",placeholder:"Dátum",validations:l.v$.mastertask.deadline},null,8,["modelValue","min-date","class","validations"])],512),(0,m.Wm)(x.hw,{class:(0,k.C_)(["modal-input right",{error:l.v$.mastertask._deadline_time.$errors.length}]),variant:"solo",modelValue:l.mastertask._deadline_time,"onUpdate:modelValue":t[6]||(t[6]=e=>l.mastertask._deadline_time=e),label:"Čas","append-inner-icon":"mdi-clock-outline",type:"time",onFocus:e.onInputFocus,hint:l.v$.mastertask._deadline_time.$errors?l.errorUtils.parseErrors(l.v$.mastertask._deadline_time.$errors):null},null,8,["modelValue","onFocus","class","hint"])]),(0,m.Wm)(x.hw,{modelValue:l.mastertask.estimated_duration,"onUpdate:modelValue":t[7]||(t[7]=e=>l.mastertask.estimated_duration=e),onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:l.v$.mastertask.estimated_duration.$errors.length}]),variant:"solo",type:"number",label:"Nacenené hodiny",hint:l.v$.mastertask.estimated_duration.$errors?l.errorUtils.parseErrors(l.v$.mastertask.estimated_duration.$errors):null},null,8,["modelValue","onFocus","class","hint"]),(0,m.Wm)(x.hw,{modelValue:l.mastertask.duration,"onUpdate:modelValue":t[8]||(t[8]=e=>l.mastertask.duration=e),onFocus:e.onInputFocus,class:"modal-input",variant:"solo",type:"number",label:`${l.mastertask.duration} h`,disabled:!0},null,8,["modelValue","onFocus","label"]),(0,m.Wm)(Ea.r,{modelValue:l.mastertask.team_id,"onUpdate:modelValue":t[9]||(t[9]=e=>l.mastertask.team_id=e),onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input border-select",{error:l.v$.mastertask.employees.$errors.length}]),label:"Tím",variant:"solo",items:e.teams,"item-value":"id","item-title":"name",disabled:!!l.mastertask.id,clearable:!0},null,8,["modelValue","onFocus","class","items","disabled"]),l.mastertask.id?((0,m.wg)(!0),(0,m.iD)(m.HY,{key:1},(0,m.Ko)(l.mastertask._allEmployees,(e=>((0,m.wg)(),(0,m.j4)(x.hw,{key:e.id,class:"modal-input",label:`${e.name} ${e.surname}`,variant:"solo",placeholder:"h",modelValue:e.duration,"onUpdate:modelValue":t=>e.duration=t,type:"number",disabled:!0},{default:(0,m.w5)((()=>[(0,m._)("p",Oa,(0,k.zw)(e?.name.charAt(0)+e?.surname.charAt(0)),1),(0,m.Wm)(w.t,{onClick:(0,a.iM)((t=>o.removeEmployee(e)),["stop"]),class:"remove-input",icon:"mdi-close-circle",size:"default"},null,8,["onClick"])])),_:2},1032,["label","modelValue","onUpdate:modelValue"])))),128)):((0,m.wg)(!0),(0,m.iD)(m.HY,{key:0},(0,m.Ko)(l.mastertask.employees,((t,s)=>((0,m.wg)(),(0,m.j4)(x.hw,{key:t.id,onFocus:e.onInputFocus,class:(0,k.C_)(["modal-input",{error:t.invalid}]),label:`${t.name} ${t.surname}`,variant:"solo",placeholder:"h",modelValue:l.mastertask.employees[s].duration,"onUpdate:modelValue":e=>l.mastertask.employees[s].duration=e,type:"number",min:"1",onInput:e.onEmployeeDurationChanged},{default:(0,m.w5)((()=>[(0,m._)("p",Sa,(0,k.zw)(t?.name.charAt(0)+t?.surname.charAt(0)),1),(0,m.Wm)(w.t,{onClick:(0,a.iM)((e=>o.removeEmployee(t)),["stop"]),class:"remove-input",icon:"mdi-close-circle",size:"default"},null,8,["onClick"])])),_:2},1032,["onFocus","class","label","modelValue","onUpdate:modelValue","onInput"])))),128)),l.showAddEmployeeInput?((0,m.wg)(),(0,m.j4)(E.f,{key:2,"custom-filter":e.customFilter,"match-any":!0,label:e.$t("Search for employee"),class:(0,k.C_)([{error:l.v$.mastertask.project_id.$errors.length},"modal-input"]),items:e.employeesOptions,"item-title":"_fullName","item-value":"id",variant:"solo",clearable:"","onUpdate:modelValue":e.onEmployeeSelected},null,8,["custom-filter","label","class","items","onUpdate:modelValue"])):(0,m.kq)("",!0),(0,m.Wm)(f.T,{disabled:!!l.mastertask.id,class:(0,k.C_)(["w-100 mb-5 button secondary",{error:l.v$.mastertask.project_id.$errors.length}]),onClick:t[10]||(t[10]=e=>l.showAddEmployeeInput=!0)},{default:(0,m.w5)((()=>[(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-plus"}),(0,m.Uk)("Pridať zamestnanca ")])),_:1},8,["disabled","class"]),(0,m._)("div",{class:(0,k.C_)(["w-100 modal-input",{error:l.v$.mastertask.description.$errors.length}])},[(0,m.Wm)(d,{ref:"description",modelValue:l.mastertask.description,"onUpdate:modelValue":t[11]||(t[11]=e=>l.mastertask.description=e),placeholder:"Popis",theme:"snow",class:"rich-text-editor",onKeyup:o.onQuillEditorInput},null,8,["modelValue","onKeyup"])],2),(0,m.Wm)(u,{class:"mt-15 files",files:l.mastertask.files,onFilesUploaded:o.filesUploaded,"is-saving":l.isSaving},null,8,["files","onFilesUploaded","is-saving"])])),_:1}),l.isSaving?((0,m.wg)(),(0,m.j4)(f.T,{key:1,class:"button primary disabled",disabled:""},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(e.$t("Ukladám...")),1)])),_:1})):((0,m.wg)(),(0,m.j4)(f.T,{key:0,class:"button primary",onClick:t[12]||(t[12]=e=>o.save())},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(l.mastertask.id?"ULOŽIŤ":"VYTVORIŤ"),1)])),_:1}))])),_:1})):((0,m.wg)(),(0,m.j4)(_._,{key:1,height:"100%",class:"d-flex flex-column scrolling"},{default:(0,m.w5)((()=>[(0,m._)("div",Va,[(0,m._)("p",null,(0,k.zw)(l.mastertask.project_code),1),(0,m.Wm)(w.t,{onClick:t[13]||(t[13]=(0,a.iM)((e=>o.closeModal()),["stop"])),icon:"mdi-close",size:"large",class:"pb-5"})]),(0,m._)("div",za,[(0,m._)("h1",null,(0,k.zw)(l.mastertask.name),1),(0,m._)("div",Aa,[l.mastertask.is_finished?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("img",{key:0,class:"icon",src:s(60666),alt:"pencil-icon",onClick:t[14]||(t[14]=(0,a.iM)((e=>l.editMode=!l.editMode),["stop"]))},null,8,Ua)),(0,m._)("img",{class:"icon trash",src:s(27484),alt:"trash-icon",onClick:t[15]||(t[15]=(0,a.iM)((e=>o.openDeleteMasterTaskModal(l.mastertask)),["stop"]))},null,8,Ha)])]),(0,m.Wm)(g.h,{class:"d-flex flex-column modal-content"},{default:(0,m.w5)((()=>[(0,m._)("div",Za,[(0,m.Wm)(c,{mastertask:l.mastertask},null,8,["mastertask"]),(0,m._)("div",Ia,[(0,m.Wm)(f.T,{class:"button primary",onClick:t[16]||(t[16]=e=>o.toggleIsFinished(l.mastertask))},{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(l.mastertask.is_finished?"Otvoriť mastertask":"Ukončiť mastertask"),1)])),_:1})]),(0,m.Wm)(h,{subtasks:l.mastertask.subtasks},null,8,["subtasks"]),(0,m._)("div",Fa,[(0,m.Wm)(f.T,{class:"subtask-btn w-100",onClick:t[17]||(t[17]=e=>o.addTask())},{default:(0,m.w5)((()=>[(0,m.Wm)(w.t,{class:"mx-1",icon:"mdi-plus"}),(0,m.Uk)("Pridať sub task")])),_:1})])])])),_:1})])),_:1}))])),_:1},8,["content"])])),_:1},8,["modelValue"])}var Pa=s(4413);const La={class:"px-5 py-5"},Na={key:0,class:"w-25"},qa={key:1,class:"w-50"},Ba={class:"d-flex align-center"},Ra={class:"employee-selected-avatar d-flex justify-center align-center"},Ka={class:"ml-2 line-clamp"},Ja={key:0,class:"text-light-green"},Ga={key:1},Xa={class:"task-action"},Qa={class:"d-flex justify-start align-center"},ei=["src","onClick"],ti=["src"],si=["src","onClick"],ai=["src","onClick"],ii=["src","onClick"],ni=["src","onClick"];function li(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(Pa.Y,{class:"mt-7 mb-5"},{default:(0,m.w5)((()=>[(0,m._)("tbody",La,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.enrichedtasks,(e=>((0,m.wg)(),(0,m.iD)("tr",{key:e.id},[e?.title?((0,m.wg)(),(0,m.iD)("td",Na,(0,k.zw)(e.title),1)):((0,m.wg)(),(0,m.iD)("td",qa,(0,k.zw)(e?.master_task),1)),(0,m._)("td",Ba,[(0,m._)("p",Ra,(0,k.zw)(e._employeeInitials),1),(0,m._)("p",Ka,(0,k.zw)(e._employeeFullName),1)]),(0,m._)("td",null,[e.is_finished?((0,m.wg)(),(0,m.iD)("p",Ja,"Ukončený")):(0,m.kq)("",!0),e.is_finished?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("p",Ga,"Neukončený"))]),(0,m._)("td",Xa,[(0,m._)("div",Qa,["office365"==s.subtasks.type?((0,m.wg)(),(0,m.iD)(m.HY,{key:0},[(0,m._)("img",{class:"pencil-icon ml-2",src:n.eye,alt:"pencil-icon",onClick:(0,a.iM)((t=>l.openTaskModal(e)),["stop"])},null,8,ei),(0,m._)("img",{class:"office-icon",src:n.office365},null,8,ti)],64)):((0,m.wg)(),(0,m.iD)(m.HY,{key:1},[e.is_finished?((0,m.wg)(),(0,m.iD)("img",{key:0,class:"pencil-icon is-finished",src:n.checkmark,alt:"checkmark-icon",onClick:(0,a.iM)((t=>l.clickCompleteTask(e)),["stop"])},null,8,si)):(0,m.kq)("",!0),e.is_finished?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("img",{key:1,class:"pencil-icon",src:n.checkmark,alt:"checkmark-icon",onClick:(0,a.iM)((t=>l.clickCompleteTask(e)),["stop"])},null,8,ai)),(0,m._)("img",{class:"pencil-icon ml-2",src:n.eye,alt:"pencil-icon",onClick:(0,a.iM)((t=>l.openTaskModal(e)),["stop"])},null,8,ii),(0,m._)("img",{class:"trash-icon",src:n.bin,alt:"trash-icon",onClick:(0,a.iM)((t=>l.openDeleteTaskModal(e)),["stop"])},null,8,ni)],64))])])])))),128))])])),_:1})}var oi=s(65687),ri={props:{subtasks:{type:Array,required:!0}},data(){return{checkmark:oi.d2,bin:oi.Ly,eye:oi.iy,office365:oi.QS}},computed:{...(0,U.Se)("tm",["enrichedEmployees"]),enrichedtasks(){return this.subtasks.map((e=>{const t=this.enrichedEmployees.find((t=>t.id==e.employee_id));return{...e,_employeeInitials:t?t._initials:"?",_employeeFullName:t?t._fullName:""}}))}},methods:{openDeleteTaskModal(e){this.$events.emit("show-delete-task-modal",{subtask:e})},openTaskModal(e){this.$events.emit("show-subtask-modal",{subtask:e,editMode:!1})},async clickCompleteTask(e){this.$events.emit("show-complete-task-modal",{subtask:e})}}};const di=(0,$.Z)(ri,[["render",li],["__scopeId","data-v-753dec0e"]]);var ui=di;function ci(e,t,s,a,i,n){const l=(0,m.up)("Z-status"),o=(0,m.up)("Z-deadline"),r=(0,m.up)("Z-created-by"),d=(0,m.up)("Z-team"),u=(0,m.up)("Z-estimated-duration"),c=(0,m.up)("Z-planned-time"),h=(0,m.up)("Z-remaining-time"),p=(0,m.up)("Z-spent-time"),v=(0,m.up)("Z-description"),k=(0,m.up)("Z-files");return(0,m.wg)(),(0,m.iD)(m.HY,null,[(0,m.Wm)(l,{status:s.mastertask.is_finished},null,8,["status"]),(0,m.Wm)(o,{deadline:s.mastertask.deadline},null,8,["deadline"]),(0,m.Wm)(r,{"employee-id":s.mastertask.created_by},null,8,["employee-id"]),(0,m.Wm)(d,{team:s.mastertask.team,employees:s.mastertask._allEmployees||s.mastertask.employees},null,8,["team","employees"]),(0,m.Wm)(u,{hours:s.mastertask.estimated_duration},null,8,["hours"]),(0,m.Wm)(c,{hours:s.mastertask.duration},null,8,["hours"]),(0,m.Wm)(h,{hours:s.mastertask.duration-s.mastertask.time_worked},null,8,["hours"]),(0,m.Wm)(p,{hours:s.mastertask.time_worked,"is-exceeded":s.mastertask.time_worked>s.mastertask.duration},null,8,["hours","is-exceeded"]),(0,m.Wm)(v,{description:s.mastertask.description},null,8,["description"]),(0,m.Wm)(k,{files:s.mastertask.files},null,8,["files"])],64)}const mi={class:"d-flex align-center"},hi=(0,m._)("p",{class:"mx-3"},"Deadline",-1);function pi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",mi,[(0,m.Wm)(w.t,{icon:"mdi-calendar-week",size:"large"}),hi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",{class:(0,k.C_)(""+(i.tmUtils.isAfter(s.deadline)?"text-black":"text-red-darken-4"))},(0,k.zw)(i.tmUtils.formatDateTime(s.deadline)),3)])),_:1})])),_:1})])),_:1})}var vi={props:{deadline:{type:String,required:!0}},data(){return{tmUtils:A.Z}}};const ki=(0,$.Z)(vi,[["render",pi]]);var fi=ki;const _i={key:0,class:"px-5 py-5 border-bottom"},gi=(0,m._)("p",null,"Popis zadania",-1),bi=["innerHTML"],wi={key:1,class:"px-5 py-5 border-bottom"},yi=(0,m._)("p",null,"Popis mastertasku",-1),Di=["innerHTML"];function Mi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.iD)(m.HY,null,[s.description?((0,m.wg)(),(0,m.iD)("div",_i,[gi,(0,m._)("section",{innerHTML:i.preparedDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,bi)])):(0,m.kq)("",!0),s.inheritedDescription?((0,m.wg)(),(0,m.iD)("div",wi,[yi,(0,m._)("section",{innerHTML:i.preparedInheritedDescription,class:"description-detail px-2 py-2 w-100 rounded mt-2"},null,8,Di)])):(0,m.kq)("",!0)],64)}var Ti={props:{description:{type:String||null,default:()=>null},inheritedDescription:{type:String||null,default:()=>null}},data(){return{copiedIndices:[],preparedDescription:"",preparedInheritedDescription:""}},mounted(){this.preparedDescription=ys(this.description),this.preparedInheritedDescription=ys(this.inheritedDescription)}};const $i=(0,$.Z)(Ti,[["render",Mi]]);var Ci=$i;const ji={class:"d-flex align-center"},Ei=(0,m._)("p",{class:"mx-3"},"Naplánovaný čas",-1);function xi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",ji,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Ei])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1})])),_:1})])),_:1})}var Wi={props:{hours:{type:Number,required:!0}}};const Si=(0,$.Z)(Wi,[["render",xi]]);var Oi=Si;const Vi={class:"d-flex align-center"},zi=(0,m._)("p",{class:"mx-3"},"Zostávajúci čas",-1);function Ai(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center border-bottom"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Vi,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),zi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours)+" h",1)])),_:1})])),_:1})])),_:1})}var Ui={props:{hours:{type:Number,required:!0}}};const Hi=(0,$.Z)(Ui,[["render",Ai]]);var Zi=Hi;const Ii={class:"d-flex align-center"},Fi=(0,m._)("p",{class:"mx-3"},"Odpracovaný čas",-1);function Yi(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",Ii,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),Fi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",{class:(0,k.C_)(s.isExceeded?"text-red-darken-4":"text-black")},(0,k.zw)(s.hours)+" h",3)])),_:1})])),_:1})])),_:1})}var Pi={props:{hours:{type:Number,required:!0},isExceeded:{type:Boolean,required:!0}}};const Li=(0,$.Z)(Pi,[["render",Yi]]);var Ni=Li;const qi={class:"d-flex align-center"},Bi=(0,m._)("p",{class:"mx-3"},"Status",-1),Ri={key:0,class:"status-badge px-4 py-2 rounded-pill"},Ki={key:1,class:"status-badge px-4 py-2 rounded-pill"};function Ji(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",qi,[(0,m.Wm)(w.t,{icon:"mdi-drag-vertical",size:"large"}),Bi])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[1==s.status?((0,m.wg)(),(0,m.iD)("p",Ri,"Ukončený")):0==s.status?((0,m.wg)(),(0,m.iD)("p",Ki,"Neukončený")):(0,m.kq)("",!0)])),_:1})])),_:1})])),_:1})}var Gi={props:{status:{type:Number,required:!0}}};const Xi=(0,$.Z)(Gi,[["render",Ji]]);var Qi=Xi;const en={class:"d-flex align-center"},tn=(0,m._)("p",{class:"mx-3"},"Tím",-1),sn={class:"task-badge px-4 py-2 rounded-pill flex-shrink-0"},an={class:"employee-selected-avatar d-flex justify-center align-center"},nn={class:"ml-2"},ln=(0,m._)("div",{class:"mb-4"},null,-1),on=(0,m._)("p",{class:"task-badge px-4 py-2 rounded-pill flex-shrink-0"},"Nepriradený",-1),rn={class:"employee-selected-avatar d-flex justify-center align-center"},dn={class:"ml-2"};function un(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":""},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",en,[(0,m.Wm)(w.t,{icon:"mdi-account-multiple-outline",size:"large"}),tn])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3 d-flex flex-wrap flex-column"},{default:(0,m.w5)((()=>[s.team?((0,m.wg)(),(0,m.iD)(m.HY,{key:0},[(0,m._)("p",sn,(0,k.zw)(s.team.name),1),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.enrichedEmployeesInTeam,(e=>((0,m.wg)(),(0,m.iD)("div",{class:"d-flex align-center flex-shrink-0 mt-2 task-badge px-4 py-2 rounded-pill",key:e.id},[(0,m._)("p",an,(0,k.zw)(e._initials),1),(0,m._)("p",nn,(0,k.zw)(e._fullName),1)])))),128)),ln],64)):(0,m.kq)("",!0),on,((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.enrichedEmployeesOutsideTeam,(e=>((0,m.wg)(),(0,m.iD)("div",{class:"d-flex align-center flex-shrink-0 mt-2 task-badge px-4 py-2 rounded-pill",key:e.id},[(0,m._)("p",rn,(0,k.zw)(e._initials),1),(0,m._)("p",dn,(0,k.zw)(e._fullName),1)])))),128))])),_:1})])),_:1})])),_:1})}var cn={props:{team:{type:Object,required:!1},employees:{type:Array,required:!0}},computed:{enrichedEmployeesInTeam(){return this.team?.employees?A.Z.enrichEmployees(this.team.employees):[]},enrichedEmployeesOutsideTeam(){if(!this.team)return A.Z.enrichEmployees(this.employees);const e=this.employees.filter((e=>!this.team.employees.find((t=>t.id==e.id))));return A.Z.enrichEmployees(e)}}};const mn=(0,$.Z)(cn,[["render",un]]);var hn=mn;const pn={class:"d-flex align-center"},vn=(0,m._)("p",{class:"mx-3"},"Nacenené hodiny",-1);function kn(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(He.o,{"no-gutters":"",class:"align-center"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ze.D,{cols:"5"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("div",pn,[(0,m.Wm)(w.t,{icon:"mdi-clock-time-three-outline",size:"large"}),vn])])),_:1})])),_:1}),(0,m.Wm)(Ze.D,{cols:"7"},{default:(0,m.w5)((()=>[(0,m.Wm)(Ie.C,{class:"py-3"},{default:(0,m.w5)((()=>[(0,m._)("p",null,(0,k.zw)(s.hours||0)+" h",1)])),_:1})])),_:1})])),_:1})}var fn={props:{hours:{type:[Number,void 0]}}};const _n=(0,$.Z)(fn,[["render",kn]]);var gn=_n,bn={components:{ZCreatedBy:yt,ZDeadline:fi,ZDescription:Ci,ZFiles:Us,ZPlannedTime:Oi,ZRemainingTime:Zi,ZSpentTime:Ni,ZStatus:Qi,ZTeam:hn,ZEstimatedDuration:gn},props:{mastertask:{type:Object,required:!0}}};const wn=(0,$.Z)(bn,[["render",ci]]);var yn=wn,Dn=s(15941),Mn={emits:["master-task-edited","close"],mixins:[Ve,ze,H.Z,M],components:{AMastertaskDescription:yn,ATasksTable:ui,Datepicker:Me.Z,ZFilesUpload:Oe,QuillEditor:r.Bn},data(){return{deadline:null,editMode:!1,visible:!1,errorUtils:z.Z,v$:(0,O.ZP)(),mastertask:null,isSaving:!1,showAddEmployeeInput:!1,date:null,projectCodeSearch:null}},computed:{...(0,U.Se)("tm",["teams","projects","enrichedEmployees"]),enrichedSubtasks(){return this.mastertask?.subtasks?this.mastertask.subtasks.map((e=>{const t=this.enrichedEmployees.find((t=>t.id==e.employee_id));return{...e,_initials:t?t.name.charAt(0)+t.surname.charAt(0):"?",_fullName:t?`${t.name} ${t.surname}`:""}})).filter((e=>null!==e)):null}},validations(){const e=e=>!!(e&&e.length&&e.replace(/<[^>]*>/g,"").length);return{mastertask:{employees:{required:V.C1,minLength:(0,V.Ei)(1),$each:{duration:{required:V.C1}}},project_id:{required:V.C1},name:{required:V.C1},description:{quillEditorRequired:e},deadline:{required:V.C1},estimated_duration:{required:V.C1},_deadline_time:{required:V.C1}}}},mounted(){this.$events.on("close-both-modals",this.closeBothModals),this.$events.on("master-task:team-member-deleted",(({teamId:e,memberId:t})=>{this.mastertask.team_id==e&&(this.mastertask.employees=this.mastertask.employees.filter((e=>e.id!=t)))})),this.$events.on("on-mastertask-deleted",(e=>{e?.id==this.mastertask?.id&&this.closeModal()})),this.$events.on("on-subtask-deleted",(e=>{this.mastertask&&(this.mastertask.subtasks=this.mastertask.subtasks.filter((t=>t.id!=e.id)))})),this.$events.on("on-subtask-edited",(e=>{this.mastertask?.subtasks&&(this.mastertask.subtasks.find((t=>t.id==e.id))?this.mastertask.subtasks=this.mastertask.subtasks.map((t=>t.id==e.id?e:t)):this.mastertask.subtasks.push(e))}))},beforeUnmount(){this.$events.off("on-mastertask-deleted"),this.$events.off("on-subtask-deleted"),this.$events.off("on-subtask-edited"),this.$events.off("master-task:team-member-deleted"),this.$events.off("close-both-modals",this.closeBothModals)},methods:{handleDatepickerClick(){const e=this.$refs["datepicker-wrapper"];this.onDateOpen(e),this.$refs["datepicker"].openMenu()},closeBothModals(){this.$emit("close"),this.visible=!1},removeEmployee({id:e}){this.mastertask.employees=this.mastertask.employees.filter((t=>t.id!=e))},removeMemberAlert(e){const t=this.mastertask.team;this.$events.emit("show-delete-team-member-modal",{member:e,team:t})},async loadMastertask(e){try{this.mastertask=await this.$axios.get_auth_data(`v1/mastertasks/${e}`);const t=this.projects.find((e=>e.code==this.mastertask.project_code));this.mastertask.project_id=t?.id||null,this.mastertask.team_id=this.mastertask.team?.id||null,this.mastertask._allEmployees=this.mastertask.subtasks.map((({employee_id:e,duration:t})=>{const s=this.enrichedEmployees.find((({id:t})=>t==e));return s?(s.duration=t,s):null})).filter((e=>null!==e))}catch(t){this.$toast.error(t.message||t)}},async showModal({mastertask:e,editMode:t=!1}){this.isSaving=!1,this.editMode=null,this.visible=!0,this.mastertask=null,this.$nextTick((()=>{this.setFocusEvent(),this.v$.$reset()}));try{if(e?.id)await this.loadMastertask(e.id);else{const e=localStorage.getItem("mastertaskData");try{if(!e)throw new Error("mastertaskData is null or undefined");{const t=JSON.parse(e);if(this.mastertask=t,"object"!==typeof this.mastertask||null===this.mastertask)throw new Error("Parsed mastertask is not an object");this.$nextTick((()=>{this.$refs["description"]?.setHTML(this.mastertask.description||"")}))}}catch(s){Dn.error("Error parsing mastertaskData:",s),this.mastertask={employees:[],duration:0,_deadline_time:"17:00"}}}this.editMode=t||!this.mastertask.id}catch(s){this.$toast.error(s.message||s)}},toggleIsFinished(){this.$events.emit("show-complete-master-task-modal",{mastertask:this.mastertask})},async save(){this.mastertask.id&&(this.mastertask.employees=this.mastertask.employees.map((e=>{const{duration:t}=this.mastertask.subtasks.find((({employee_id:t})=>t==e.id))||{};return e.duration=t||0,e})));const e=await this.v$.$validate(),t=await this._validateEmployees();if(e&&t){this.$refs["description"]&&(this.mastertask.description=this.$refs["description"].getHTML()),this._mergeDeadlineTimeDate();try{this.isSaving=!0,this.mastertask.deadline=Q()(this.mastertask.deadline).format("YYYY-MM-DD HH:MM:SS"),this.mastertask.id?await this.$axios.patch_auth_form(`v1/mastertasks/${this.mastertask.id}`,this.mastertask):await this.$axios.post_auth_data("v1/mastertasks",this.mastertask),localStorage.removeItem("mastertaskData"),this.$emit("master-task-edited",this.mastertask),this.closeModal()}catch(s){this.$toast.error(this.$parseError(s))}finally{this.isSaving=!1}}},filesUploaded(e){this.mastertask.files=e},closeModal(){this.visible=!1},openDeleteMasterTaskModal(e){this.$events.emit("show-delete-master-task-modal",{mastertask:e})},addTask(){this.$events.emit("show-subtask-modal",{subtask:{master_task_id:this.mastertask.id,project_code:this.mastertask.project_code}})},onQuillEditorInput(){this.mastertask.description=this.$refs["description"].getHTML()},_mergeDeadlineTimeDate(){const e=new Date(this.mastertask.deadline);Dn.log("z-master-task-modal",this.subtask);const t=this.mastertask._deadline_time.split(":");e.setHours(parseInt(t[0])),e.setMinutes(parseInt(t[1])),this.mastertask.deadline=e},_validateEmployees(){let e=!0;return this.mastertask.employees=this.mastertask.employees.map((t=>(null!==t.duration&&void 0!==t.duration||(t.invalid=!0,e=!1),t))),e}},watch:{editMode(){this.$nextTick((()=>{if(this.$refs["description"]?.setHTML(this.mastertask.description||""),!this.mastertask?.id)return;const e=new Date(this.mastertask.deadline),t=e.getHours(),s=e.getMinutes();this.mastertask._deadline_time=`${t.toString().padStart(2,"0")}:${s.toString().padStart(2,"0")}`}))},mastertask:{handler(e){this.editMode&&!this.mastertask?.id&&localStorage.setItem("mastertaskData",JSON.stringify(e))},deep:!0},"mastertask.team_id":{handler(e,t){if(this.editMode&&!e&&t){const e=this.teams.find((e=>e.id==t))?.employees.map((e=>e?.id))||[],s=this.mastertask.employees.filter((t=>!e.includes(t?.id)));this.mastertask.employees=s}},deep:!0},"$route.query":{handler(e,t){t?.subtask?.length&&this.mastertask?.id&&this.loadMastertask(this.mastertask.id)},deep:!0}}};const Tn=(0,$.Z)(Mn,[["render",Ya],["__scopeId","data-v-ea627ecc"]]);var $n=Tn,Cn=s(41888),jn=s(89234);const En=(0,m._)("h1",{class:"text-h5"}," Chcete túto osobu odstrániť z tímu? ",-1);function xn(e,t,s,a,i,n){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:i.visible,"onUpdate:modelValue":t[2]||(t[2]=e=>i.visible=e),"max-width":"500",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[En,(0,m.Wm)(Cn.Z,null,{default:(0,m.w5)((()=>[(0,m.Uk)((0,k.zw)(i.member.name+" "+i.member.surname)+" bude odstránený/á z teamu.",1)])),_:1}),(0,m.Wm)(g.h,null,{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button secondary",variant:"text",onClick:t[0]||(t[0]=e=>n.closeModal())},{default:(0,m.w5)((()=>[(0,m.Uk)(" Zrušiť ")])),_:1}),(0,m.Wm)(jn.C),(0,m.Wm)(f.T,{class:"button primary",variant:"text",onClick:t[1]||(t[1]=e=>n.deleteMember())},{default:(0,m.w5)((()=>[(0,m.Uk)(" Áno ")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var Wn={mixins:[M],data(){return{visible:!1,member:null,team:null}},methods:{async showModal({member:e,team:t}){this.member=e,this.team=t,this.visible=!0},closeModal(){this.visible=!1},async deleteMember(){this.team.employees=[...this.team.employees].filter((e=>e.id!==this.member.id));try{if(this.team.id){const{team:e}=await this.$axios.put_auth(`v1/teams/${this.team.id}`,this.team);this.$store.commit("tm/update_team",e)}else{const{team:e}=await this.$axios.post_auth("v1/teams",this.team);this.$store.commit("tm/save_team",e)}this.$events.emit("master-task:team-member-deleted",{teamId:this.team.id,memberId:this.member.id}),this.closeModal()}catch(e){this.$toast.error(this.$parseError(e))}},_enrichTeam(e){return e.employees=A.Z.enrichEmployees(e.employees),e}}};const Sn=(0,$.Z)(Wn,[["render",xn]]);var On=Sn;const Vn={class:"d-flex justify-space-between align-center"},zn=(0,m._)("h1",null,"Vytvoriť",-1);function An(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Vn,[zn,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m.Wm)(g.h,{class:"mt-10 d-flex justify-start align-center mobile-view"},{default:(0,m.w5)((()=>[(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[1]||(t[1]=(0,a.iM)((e=>l.createTask()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("SUB TASK")])),_:1}),(0,m.Wm)(f.T,{class:"button primary half outline",onClick:t[2]||(t[2]=(0,a.iM)((e=>l.createBlocker()),["stop"]))},{default:(0,m.w5)((()=>[(0,m.Uk)("BLOCKER")])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])}var Un={emits:["update","data"],props:["data"],mixins:[M],data(){return{visible:!1,localData:null}},mounted(){this.$events.on("blocker-created",(()=>{this.closeModal()})),this.$events.on("task-created",(()=>{this.closeModal()}))},methods:{async showModal(e){this.localData=e,this.visible=!0},closeModal(){this.visible=!1},createTask(){this.$events.emit("show-subtask-modal",{subtask:{deadline:this.localData.date,_deadline_time:this.localData.time,employee_id:this.localData.employee},onTaskCreated:()=>{this.closeModal()}})},createBlocker(){this.$events.emit("show-blocker-modal",{blocker:{starts_at_time:this.localData.time,datepicker:this.localData.date,employee_id:this.localData.employee},onBlockerCreated:()=>{this.closeModal()}})}}};const Hn=(0,$.Z)(Un,[["render",An]]);var Zn=Hn;const In={class:"d-flex justify-space-between align-center"},Fn={key:0},Yn={key:1};function Pn(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[1]||(t[1]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",In,["edit"===s.mode?((0,m.wg)(),(0,m.iD)("h1",Fn,"Sub Task zosynchronizovaný z Office365 sa nedá upravovat. Upravte ho vo svojom kalendári a pockajte na zosynchronizovanie s Task Managerom")):"delete"===s.mode?((0,m.wg)(),(0,m.iD)("h1",Yn,"Sub Task zosynchronizovaný z Office365 sa nedá zmazať. Zmažte ho vo svojom kalendári a pockajte na zosynchronizovanie s Task Managerom")):(0,m.kq)("",!0),(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})])])),_:1})])),_:1},8,["modelValue"])}var Ln=s(15941),Nn={mixins:[M],emits:["close","on-subtask-edited"],props:{mode:{type:String,default:"edit"}},data(){return{visible:!1,subtask:null}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},async complete(){Ln.log("complete")},closeModal(){this.visible=!1}}};const qn=(0,$.Z)(Nn,[["render",Pn]]);var Bn=qn;const Rn=e=>((0,m.dD)("data-v-f007e35e"),e=e(),(0,m.Cn)(),e),Kn={class:"d-flex justify-space-between align-center"},Jn=Rn((()=>(0,m._)("h1",null,"Sub Task má nedokončené úlohy",-1))),Gn={class:"card-content"},Xn={class:"card-actions"};function Qn(e,t,s,i,n,l){return(0,m.wg)(),(0,m.j4)(b.B,{modelValue:n.visible,"onUpdate:modelValue":t[3]||(t[3]=e=>n.visible=e),"max-width":"750",persistent:""},{default:(0,m.w5)((()=>[(0,m.Wm)(_._,null,{default:(0,m.w5)((()=>[(0,m._)("div",Kn,[Jn,(0,m.Wm)(w.t,{onClick:t[0]||(t[0]=(0,a.iM)((e=>l.closeModal()),["stop"])),icon:"mdi-close",size:"large"})]),(0,m._)("div",Gn,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(n.subtask?.timeblocks,(e=>((0,m.wg)(),(0,m.iD)("div",{key:e.id,class:"d-flex align-center mb-3"},[(0,m._)("p",{class:(0,k.C_)(["task-badge rounded-pill",{"strike-through":e.is_finished}])},(0,k.zw)(n.tmUtils.formatDateTime(e.start))+" - "+(0,k.zw)(n.tmUtils.formatDateTime(e.end)),3),(0,m.Wm)(w.t,{onClick:(0,a.iM)((t=>l.handleFinishTimeblock(e)),["stop"]),class:(0,k.C_)(["finish-icon circle-border cursor-pointer ml-2",{disabled:n.loadingTimeblocks[e.id]||n.loadingCloseAll,finished:e.is_finished}]),icon:"mdi-check",size:"medium"},null,8,["onClick","class"])])))),128))]),(0,m._)("div",Xn,[(0,m.Wm)(f.T,{onClick:t[1]||(t[1]=e=>l.closeModal()),class:"button secondary"},{default:(0,m.w5)((()=>[(0,m.Uk)("Zrušiť")])),_:1}),(0,m.Wm)(f.T,{onClick:t[2]||(t[2]=e=>l.handleFinishAllTimeblocks()),loading:n.loadingCloseAll,class:"button primary"},{default:(0,m.w5)((()=>[(0,m.Uk)("Uzatvoriť všetky")])),_:1},8,["loading"])])])),_:1})])),_:1},8,["modelValue"])}var el=s(15941),tl={mixins:[M],emits:["close","on-subtask-edited"],props:{mode:{type:String,default:"edit"}},data(){return{tmUtils:A.Z,visible:!1,subtask:null,loadingTimeblocks:{},loadingCloseAll:!1}},methods:{async showModal({subtask:e}){this.subtask=e,this.visible=!0},async complete(){el.log("complete")},closeModal(){this.visible=!1},async handleFinishTimeblock(e){const t=JSON.parse(JSON.stringify(this.subtask));try{this.loadingTimeblocks[e.id]=!0,await this.$axios.put_auth(`v1/timeblocks/${e.id}`,{...e,is_finished:1}),e.is_finished=1;const s=t.timeblocks.every((e=>e.is_finished));s&&(await this._finishSubtask(),this.$store.dispatch("tm/removeOngoingSubtask",this.subtask.id)),this.$events.emit("on-subtask-edited",t),this.closeModal()}catch(s){this.$toast.error(s.message||s)}finally{this.loadingTimeblocks[e.id]=!1}},async handleFinishAllTimeblocks(){this.loadingCloseAll=!0;try{const e=this.subtask.timeblocks.map((e=>this.$axios.put_auth(`v1/timeblocks/${e.id}`,{...e,is_finished:1})));await Promise.all(e),this.subtask.timeblocks=this.subtask.timeblocks.map((e=>(e.is_finished=1,e))),await this._finishSubtask(),this.$store.dispatch("tm/removeOngoingSubtask",this.subtask.id),this.$events.emit("on-subtask-edited",this.subtask),this.closeModal()}catch(e){this.$toast.error(e.message||e)}finally{this.loadingCloseAll=!1}},async _finishSubtask(){const e=this.subtask.timesheets.map((e=>(delete e.employee_name,e))),t=(this.subtask.timeblocks||[]).filter((e=>e.date||e.start)).map((e=>{if(e.start&&!e.date)return{id:e.id||null,start:e.start,end:e.end,is_finished:e.is_finished||0};const t=Q()(e.date).format("YYYY-MM-DD");return{id:e.id||null,start:`${t} ${e.starts_at_time}:00`,end:`${t} ${e.ends_at_time}:00`,is_finished:e.is_finished||0}})),s={...this.subtask,is_finished:1,timesheets:e,timeblocks:t};return this.$axios.put_auth(`v1/subtasks/${s.id}`,s)}}};const sl=(0,$.Z)(tl,[["render",Qn],["__scopeId","data-v-f007e35e"]]);var al=sl,il={components:{ZDeleteTeamModal:j,ZTeamModal:Y,ZDeleteTaskModal:B,ZDeleteBlockerModal:sa,ZTaskModal:Gs,ZMasterTaskModal:$n,ZCompleteTaskModal:oa,ZTaskAddTimeModal:_a,ZBlockerModal:Da,ZDeleteMasterTaskModal:ja,ZDeleteTeamMemberModal:On,ZShowMenuModal:Zn,ZCompleteMasterTaskModal:ma,ZDeleteTimeBlockModal:se,ZUnableToEditOfficeTaskModal:Bn,ZUnableToCompleteTaskModal:al},mounted(){this.$events.on("show-menu-modal",(e=>{this.$refs["z-show-menu-modal"].showModal(e)})),this.$events.on("show-delete-team-modal",(({team:e})=>{this.$refs["z-delete-team-modal"].showModal({team:e})})),this.$events.on("show-team-modal",(({team:e})=>{this.$refs["z-team-modal"].showModal({team:e})})),this.$events.on("show-delete-task-modal",(({subtask:e})=>{this.$refs["z-delete-task-modal"].showModal({subtask:e})})),this.$events.on("show-delete-timeblock-modal",(({subtask:e})=>{this.$refs["z-delete-timeblock-modal"].showModal({subtask:e})})),this.$events.on("show-delete-blocker-modal",(({blocker:e})=>{this.$refs["z-delete-blocker-modal"].showModal({blocker:e})})),this.$events.on("show-delete-master-task-modal",(({mastertask:e})=>{this.$refs["z-delete-master-task-modal"].showModal({mastertask:e})})),this.$events.on("show-delete-team-member-modal",(({member:e,team:t})=>{this.$refs["z-delete-team-member-modal"].showModal({member:e,team:t})})),this.$events.on("show-subtask-modal",(({subtask:e,editMode:t,mastertask:s})=>{if(e&&e.id){const t=e.id;this.$router.push({query:{subtask:t}})}this.$refs["z-task-modal"].showModal({subtask:e,editMode:t,mastertask:s})})),this.$events.on("show-mastertask-modal",(({mastertask:e,editMode:t})=>{if(e&&e.id){const t=e.id;this.$router.push({query:{mastertask:t}})}this.$refs["z-master-task-modal"].showModal({mastertask:e,editMode:t})})),this.$events.on("show-complete-task-modal",(({subtask:e})=>{this.$refs["z-complete-task-modal"].showModal({subtask:e})})),this.$events.on("show-complete-master-task-modal",(({mastertask:e})=>{this.$refs["z-complete-master-task-modal"].showModal({mastertask:e})})),this.$events.on("show-blocker-modal",(({blocker:e={}})=>{this.$refs["z-blocker-modal"].showModal({blocker:e})})),this.$events.on("show-task-add-time-modal",(({subtask:e})=>{this.$refs["z-task-add-time-modal"].showModal({subtask:e})})),this.$events.on("on-subtask-edited",(()=>{this.$store.dispatch("tm/reloadSubtasks")})),this.$events.on("on-mastertask-edited",(()=>{this.$store.dispatch("tm/reloadMastertasks")})),this.$events.on("on-mastertask-deleted",(()=>{this.$store.dispatch("tm/reloadMastertasks")})),this.$events.on("show-unable-to-edit-office-task-modal",(({mode:e})=>{this.$refs["z-unable-to-edit-office-task-modal"].showModal({mode:e})})),this.$events.on("show-unable-to-complete-task-modal",(({subtask:e})=>{this.$refs["z-unable-to-complete-task-modal"].showModal({subtask:e})})),this._showModalsAfterInicialization()},methods:{onTeamUpdate(e){this.$events.emit("on-team-update",e)},onTaskDeleted(e){this.$events.emit("on-subtask-deleted",e)},onBlockerDeleted(e){this.$events.emit("on-blocker-deleted",e)},onTaskEdited(e){this.$events.emit("on-subtask-edited",e)},onMasterTaskDeleted(e){this.$events.emit("on-mastertask-deleted",e)},onMasterTaskEdited(e){this.$events.emit("on-mastertask-edited",e)},_showModalsAfterInicialization(e=0){setTimeout((()=>e>50?this.$router.push({name:this.$route.name}):this.$store.getters["tm/isInitialized"]?this.$route.query["mastertask"]?this.$events.emit("show-mastertask-modal",{mastertask:{id:this.$route.query["mastertask"]},editMode:!1}):this.$route.query["subtask"]?this.$events.emit("show-subtask-modal",{subtask:{id:this.$route.query["subtask"]},editMode:!1}):void 0:this._showModalsAfterInicialization(e+1)),300)}}};const nl=(0,$.Z)(il,[["render",v]]);var ll=nl,ol=s(22483),rl=(0,U.MT)({state:{},getters:{},mutations:{},actions:{},modules:{}});const dl=[{path:"",redirect:"/auth"},{path:"/auth/",component:()=>s.e(9033).then(s.bind(s,99033)),children:[{path:"",redirect:"/auth/login"},{path:"/auth/login",name:"Login",component:()=>s.e(1097).then(s.bind(s,21097)),meta:{requiresAuth:!1}},{path:"/auth/forgot-password",name:"Forgot password",component:()=>s.e(924).then(s.bind(s,40924)),meta:{requiresAuth:!1}},{path:"/auth/forgot-success",name:"Forgot success",component:()=>s.e(8731).then(s.bind(s,28731)),meta:{requiresAuth:!1}},{path:"/auth/reset-password",name:"Reset password",component:()=>s.e(4518).then(s.bind(s,54518)),meta:{requiresAuth:null}}]},{path:"/app",component:()=>s.e(2612).then(s.bind(s,32612)),children:[{path:"",redirect:"/app/dashboard"},{path:"/app/dashboard",redirect:"/app/dashboard/tasks",children:[{path:"/app/dashboard/tasks",name:"Dashboard - Tasks",meta:{title:"Sub Tasks",requiresAuth:!0},component:()=>Promise.all([s.e(4578),s.e(8059)]).then(s.bind(s,53440))},{path:"/app/dashboard/teams",name:"Dashboard - Teams",meta:{title:"Teams Overview",requiresAuth:!0},component:()=>Promise.all([s.e(4578),s.e(5456)]).then(s.bind(s,63124))},{path:"/app/dashboard/projects",name:"Dashboard - Projects",meta:{title:"Projects overview",requiresAuth:!0},component:()=>s.e(3862).then(s.bind(s,3862))},{path:"/app/overview/unscheduled",name:"Overview - Unscheduled tasks",meta:{title:"Unscheduled Sub Tasks",requiresAuth:!0},component:()=>s.e(9407).then(s.bind(s,89407))},{path:"/app/overview/ongoing",name:"Overview - Ongoing tasks",meta:{title:"Ongoing Sub Tasks",requiresAuth:!0},component:()=>s.e(1277).then(s.bind(s,21277))},{path:"/app/overview/teams",name:"Overview - Teams",meta:{title:"Teams",requiresAuth:!0},component:()=>s.e(7073).then(s.bind(s,97073))},{path:"/app/dashboard/user",name:"Dashboard - User",meta:{title:"Profile",requiresAuth:!0},component:()=>s.e(907).then(s.bind(s,20907))},{path:"/app/search",name:"Search",meta:{title:"Search Results",requiresAuth:!0},component:()=>s.e(4392).then(s.bind(s,44392))}]}]},{path:"/:catchAll(.*)",name:"404",component:()=>s.e(188).then(s.bind(s,60188)),meta:{requiresAuth:null}}],ul=(0,ol.p7)({history:(0,ol.r5)("/"),routes:dl});ul.beforeEach(((e,t,s)=>{const a=rl.getters["auth/isLoggedIn"];return!0===e.meta.requiresAuth?a?s():s({name:"Login"}):!1===e.meta.requiresAuth&&a?s({name:"Dashboard - Tasks"}):s()}));var cl=ul,ml=s(34311),hl=s(15941);ml.Z.defaults.baseURL="https://tm.jandl.sk/api/";var pl={async get(e,t){return ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async get_auth(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async get_data(e,t){return ml.Z.get(e,t).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async get_auth_data(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>Promise.resolve(e.data.data))).catch((e=>Promise.reject(e.response||e)))},async post(e,t=null,s){return ml.Z.post(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async post_auth(e,t=null,s){return s=this._config(s),ml.Z.post(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async post_data(e,t=null,s){return ml.Z.post(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async post_auth_data(e,t=null,s){return s=this._config(s),ml.Z.post(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async delete(e,t){return ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async delete_auth(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(e)))},async delete_data(e,t){return ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async delete_auth_data(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async patch(e,t=null,s){return ml.Z.patch(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async patch_auth(e,t=null,s){return s=this._config(s),ml.Z.patch(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async patch_data(e,t=null,s){return ml.Z.patch(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async patch_auth_data(e,t=null,s){return s=this._config(s),ml.Z.patch(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async put(e,t=null,s){return ml.Z.put(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async put_auth(e,t=null,s){return s=this._config(s),ml.Z.put(e,t,s).then((e=>e.data)).catch((e=>Promise.reject(e)))},async put_data(e,t=null,s){return ml.Z.put(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},async put_auth_data(e,t=null,s){return s=this._config(s),ml.Z.put(e,t,s).then((e=>e.data.data)).catch((e=>Promise.reject(e.response||e)))},_config(e){return e&&hl.error("NOT IMPLEMENTED"),rl.getters["auth/token"]?{headers:{Authorization:`Bearer ${rl.getters["auth/token"]}`}}:{headers:{}}}},vl={install:(e,t)=>{t&&!0===t.disabled||(e.config.globalProperties.$axios=pl)}},kl=s(82482);const fl=e=>Object.entries(e).map((e=>e.map(encodeURIComponent).join("="))).join("&");function _l(e){let t=e;return t=t.replace(/\//g,"\\/"),t=t.replace(/\./g,"\\."),t=t.replace(/\([^)]+\)/g,"[^/]+"),t}var gl=s(15941);class bl{constructor(){(0,kl.Z)(this,"_mocks",{}),ml.Z.interceptors.request.use(this._redirectRequestToMock.bind(this)),this._mocks={}}mock(e){for(const t in e){let s=e[t];!1!==s&&(s={},s.name=t,s.url=t.split(" ")[1],s.reUrl||(s.reUrl=_l(s.url)),s.matchMethod||(s.matchMethod=t.split(" ")[0].toLowerCase()),this._mocks[t]=s)}}_redirectRequestToMock(e){const t=e.url.replace(/https?:\/\/[^/?]+/,"");let s;for(const a in this._mocks){const i=this._mocks[a];if(e.method==i.matchMethod&&t.match(i.reUrl)){s=i;break}}if(s){s.fname||(s.fname={VUE_APP_WAXIOS_URL:"https://tm.jandl.sk/api/",NODE_ENV:"production",BASE_URL:"/"}.VUE_APP_PLATFORM?`/mock/${{VUE_APP_WAXIOS_URL:"https://tm.jandl.sk/api/",NODE_ENV:"production",BASE_URL:"/"}.VUE_APP_PLATFORM}/${s.url}.${e.method.toUpperCase()}.json`:`/mock/${s.url}.${e.method.toUpperCase()}.json`),gl.log(s.fname=`/mock/${s.url}.${e.method.toUpperCase()}.json`);const t={method:"get",url:window.location.origin+s.fname+"?___MOCK___&"+fl(e.data||{})};e={...e,...t}}return e}}var wl={install:(e,t)=>{const s=new bl;t&&t.routes&&Object.values(t.routes).length&&!0!==t.disabled&&s.mock(t.routes)}},yl=s(8069),Dl={install:(e,t)=>{if(t&&!0===t.disabled)return;const s=(0,yl.Z)();e.config.globalProperties.$events=s}},Ml=s(44870),Tl=s(5658),$l=s(31310),Cl=s(15941);class jl{constructor(e){(0,kl.Z)(this,"currentLanguage",(0,Ml.iH)()),(0,kl.Z)(this,"availableLanguages",void 0),(0,kl.Z)(this,"vendorI18n",void 0),(0,kl.Z)(this,"defaultLanguage",void 0),(0,kl.Z)(this,"languageKey",void 0),(0,kl.Z)(this,"_missingTranslation",((e,t,s,a)=>t)),(0,kl.Z)(this,"_postTranslation",(e=>e)),this.availableLanguages=e.languages||[],this.defaultLanguage=e.languages.find((t=>t.value==e.defaultLanguage)),this.languageKey=e.languageKey||{VUE_APP_WAXIOS_URL:"https://tm.jandl.sk/api/",NODE_ENV:"production",BASE_URL:"/"}.VUE_APP_PLATFORM+"_language"||0,this.vendorI18n=(0,Tl.o)({legacy:!0,fallbackLocale:this.defaultLanguage.value,messages:this._loadLocaleMessages(),missing:this._missingTranslation,postTranslation:this._postTranslation}),this.changeLanguage({title:"Slovenský",flag:"sk",value:"sk"}),this.initCurrentLanguage()}async initCurrentLanguage(){const{value:e}=await $l.u.get({key:this.languageKey});if(e)this.currentLanguage.value=JSON.parse(e);else if(this.defaultLanguage)this.currentLanguage.value=this.defaultLanguage;else{if(!this.availableLanguages[0])return Cl.error("[w18n] Could not init current language");this.currentLanguage.value=this.availableLanguages[0]}const t={};this.availableLanguages.forEach((e=>{t[e.value]=e.title})),this.changeLanguage(this.currentLanguage.value),this._addAxiosHeaders()}changeLanguage(e){this.currentLanguage.value=e,this._addAxiosHeaders(),$l.u.set({key:this.languageKey,value:JSON.stringify(e)}),this.vendorI18n.global.locale=e.value}_addAxiosHeaders(){ml.Z.interceptors.request.use((e=>(this.currentLanguage.value&&this.currentLanguage.value.value&&(e.headers["Accept-Language"]=this.currentLanguage.value.value),e))),ml.Z.interceptors.response.use((e=>e),(e=>Promise.reject(e?.response||e)))}_loadLocaleMessages(e="@/locales"){let t;try{t=s(8973)}catch(i){return Cl.warn("[@wezeo/i18n] Could not initialize i18n. Missing folder /src/locales."),{}}const a={};return t.keys().forEach((e=>{const s=e.match(/([A-Za-z0-9-_]+)\./i);if(s&&s.length>1){const i=s[1];a[i]=t(e)}})),a}}var El=s(15941),xl={install:(e,t)=>{if(t&&!0===t.disabled)return;if(!t||!t.languages||!t.defaultLanguage)return El.warn("[@wezeo/i18n] Could not initialize i18n. Missing configuration options.");e.config.globalProperties.$events||e.use(Dl);const s=new jl(t);e.use(s.vendorI18n),e.config.globalProperties.$w18n=s}},Wl={install:(e,t)=>{t&&!0===t.disabled||(e.component("ion-content",i.W2),e.component("ion-page",i._i),e.component("ion-label",i.Q$),e.component("ion-back-button",i.oU),e.component("ion-checkbox",i.nz),e.component("ion-text",i.yW),e.component("ion-button",i.YG),e.component("ion-item",i.Ie),e.component("ion-item-group",i.Ub),e.component("ion-item-sliding",i.td),e.component("ion-item-option",i.u8),e.component("ion-item-options",i.IK),e.component("ion-toolbar",i.sr),e.component("ion-header",i.Gu),e.component("ion-footer",i.fr),e.component("ion-slides",i.Hr),e.component("ion-slide",i.A$),e.component("ion-spinner",i.PQ),e.component("ion-row",i.Nd),e.component("ion-col",i.wI),e.component("ion-grid",i.jY),e.component("ion-input",i.pK),e.component("ion-buttons",i.Sm),e.component("ion-icon",i.gu),e.component("ion-img",i.Xz),e.component("ion-list",i.q_),e.component("ion-skeleton-text",i.CK),e.component("ion-title",i.wd),e.component("ion-menu",i.z0),e.component("ion-split-pane",i.jI),e.component("ion-menu-button",i.fG),e.component("ion-router-outlet",i.jP),e.component("ion-segment",i.cJ),e.component("ion-segment-button",i.GO),e.component("ion-virtual-scroll",i.aJ),e.component("ion-textarea",i.g2),e.component("ion-searchbar",i.VI),e.component("ion-refresher-content",i.Wo),e.component("ion-refresher",i.nJ),e.component("ion-infinite-scroll-content",i.MB),e.component("ion-infinite-scroll",i.ju),e.component("ion-avatar",i.BJ),e.component("ion-thumbnail",i.Bs),e.component("ion-modal",i.ki),e.component("ion-radio-group",i.se),e.component("ion-radio",i.B7),e.component("ion-note",i.uN),e.component("ion-card",i.PM),e.component("ion-card-content",i.FN),e.component("ion-tab-bar",i.yq),e.component("ion-tab-button",i.ZU),e.component("ion-menu-toggle",i.zc),e.component("ion-fab",i.IJ),e.component("ion-fab-button",i.W4),e.component("ion-fab-list",i.zq),e.component("ion-reorder-group",i.oz),e.component("ion-reorder",i.Nh),e.component("ion-select",i.t9),e.component("ion-select-option",i.n0),e.component("ion-toggle",i.ho),e.component("ion-badge",i.yp),e.component("ion-chip",i.hM),e.component("ion-tabs",i.UN))}};async function Sl(e){return"Unauthenticated."==e?.response?.data?.message?rl.dispatch("auth/logout"):Promise.reject(e)}ml.Z.interceptors.response.use((e=>e),(e=>Sl(e)));var Ol=s(15941),Vl={namespaced:!0,state:{token:localStorage.getItem("wzo_vue_user_token")||"",user:JSON.parse(localStorage.getItem("wzo_vue_user_user")||"{}")},mutations:{auth_success(e,t){t.token&&(e.token=t.token,localStorage.setItem("wzo_vue_user_token",t.token)),t.user&&(e.user=t.user,localStorage.setItem("wzo_vue_user_user",JSON.stringify(t.user)))},auth_error(e){e.token="",localStorage.removeItem("wzo_vue_user_token"),localStorage.removeItem("wzo_vue_user_user")},logout(e){e.token="",e.user=null,localStorage.removeItem("wzo_vue_user_token"),localStorage.removeItem("wzo_vue_user_user"),window.open(location.origin,"_self")}},actions:{login({commit:e},t){return new Promise(((s,a)=>{pl.post("v1/tokens/create",{data:t}).then((t=>{const a=t.token,i=t.user;e("auth_success",{token:a,user:i}),s(t)})).catch((t=>{e("auth_error"),a(t)}))}))},signup({commit:e},t){return new Promise(((s,a)=>{e("auth_request"),pl.post_data("v1/auth/signup",t).then((t=>{const a=t.token,i=t.user;e("auth_success",{token:a,user:i}),s(t)})).catch((t=>{e("auth_error"),a(t)}))}))},logout({commit:e}){return new Promise((t=>{pl.post_auth_data("v1/auth/invalidate").finally((()=>{e("logout"),t(null)}))}))},forgotPassword({commit:e},t){return new Promise(((e,s)=>{pl.post("v1/users/forgot",{data:t}).then((t=>e(t))).catch((e=>s(e)))}))},resetPassword({commit:e},t){return e("auth_success",{token:t.token}),new Promise(((s,a)=>{pl.post_auth_data("v1/users/reset",{data:t}).then((t=>{e("logout"),s(t)})).catch((e=>a(e)))}))},async refreshToken({commit:e}){try{const t=await pl.post_auth_data("v1/auth/refresh"),s=t.token,a=t.user;return e("auth_success",{token:s,user:a}),s}catch(t){e("auth_error"),Ol.error(t)}},async userInfo({commit:e}){return new Promise(((t,s)=>{pl.get_auth_data("v1/auth/info").then((s=>{const a=s.user;e("auth_success",{user:a}),t(a)})).catch((e=>{s(e)}))}))},updateUserInfo({commit:e},t){return new Promise(((s,a)=>{pl.put_auth(`v1/users/${t.id}`,{data:t}).then((t=>{const a=t.user;e("auth_success",{user:a}),s(a)})).catch((e=>{a(e)}))}))}},getters:{isLoggedIn:e=>!!e.token,user:e=>e.user,token:e=>e.token&&void 0!=e.token?e.token:null}},zl=s(15941),Al={install:(e,t)=>{if(!t||1!=t.disabled)return e.config.globalProperties.$store?void e.config.globalProperties.$store.registerModule("auth",Vl):zl.warn("[w/auth] Could not initialize. App does not have vuex store added.")}},Ul={install:(e,t)=>{t&&!0===t.disabled||(e.use(gs()),e.config.globalProperties.$parseError=e=>e?.data?.message||e?.response?.data?.message||e?.message||e)}};const Hl={ref:"loadingContainer"},Zl={key:0},Il={key:1},Fl={key:2};function Yl(e,t,s,a,i,n){return(0,m.wg)(),(0,m.iD)("div",Hl,[s.content?s.content.error?((0,m.wg)(),(0,m.iD)("div",Il,(0,k.zw)(s.content.error),1)):"array"==typeof s.content&&!e.array.length||"object"==typeof s.content&&!Object.values(s.content).length?((0,m.wg)(),(0,m.iD)("div",Fl,(0,k.zw)(s.emptyMessage),1)):(0,m.WI)(e.$slots,"default",{key:3},void 0,!0):((0,m.wg)(),(0,m.iD)("div",Zl))],512)}var Pl={props:{content:{type:[Object,Array,Boolean],default:()=>null},emptyMessage:{type:String,default:"No items"}},data(){return{loader:null}},async mounted(){this.content||await this._startLoading()},methods:{async _startLoading(){},_stopLoading(){}},watch:{}};const Ll=(0,$.Z)(Pl,[["render",Yl],["__scopeId","data-v-a2444234"]]);var Nl=Ll,ql={install:(e,t)=>{t&&!0===t.disabled||e.component("W-loadable",Nl)}},Bl={install:(e,t={})=>{Dl.install(e,t.events),vl.install(e,t.axios),xl.install(e,t.i18n),wl.install(e,t.moxios),Wl.install(e,t.ionic),Al.install(e,t.auth),Ul.install(e,t.toast),ql.install(e,t.loadable)}},Rl={parseAndTranslate(e){const t=this._parseToArrayOfStrings(e);return t.join(", ")},_parseToArrayOfStrings(e){return e?.data?.message?[Nr(e.data.message)]:"string"==typeof e?[Nr(e)]:e?.response?.data?Object.values(e?.response?.data):e&&e.error&&"string"==typeof e.error?[Nr(e.error)]:e&&e.error&&"object"==typeof e.error?Object.values(Nr(e.error)):e.data&&e.data.error&&"string"==typeof e.data.error?[Nr(e.data.error)]:e&&e.data&&e.data.error&&"object"==typeof e.data.error?Object.values(e.data.error).map((e=>Nr(e[0])+" ")):e.statusText?[Nr(e.statusText)]:[e]}},Kl=s(15941);ml.Z.defaults.baseURL="https://tm.jandl.sk/api/";var Jl={async get(e,t){return ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async get_auth(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async get_data(e,t){return ml.Z.get(e,t).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async get_auth_data(e,t){return t=this._config(t),ml.Z.get(e,t).then((e=>Promise.resolve(e.data.data))).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async post(e,t=null,s){return ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async post_auth(e,t=null,s){return s=this._config(s),ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async post_data(e,t=null,s){return ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async post_auth_data(e,t=null,s){return s=this._config(s),ml.Z.post(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async delete(e,t){return ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async delete_auth(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async delete_data(e,t){return ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async delete_auth_data(e,t){return t=this._config(t),ml.Z["delete"](e,t).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async patch(e,t=null,s){return ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async patch_auth(e,t=null,s){return s=this._config(s),ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async patch_auth_form(e,t=null,s){s=this._config(s),s.headers["Content-Type"]="multipart/form-data";const a=this._objectToFormData(t);return a.append("_method","put"),s.transformRequest=e=>e,ml.Z.post(e,a,s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async patch_data(e,t=null,s){return ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async patch_auth_data(e,t=null,s){return s=this._config(s),ml.Z.patch(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async put(e,t=null,s){return ml.Z.put(e,this._objectToFormData(t),s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async put_auth(e,t=null,s){return s=this._config(s),ml.Z.put(e,{data:t},s).then((e=>e.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e))))},async put_data(e,t=null,s){return ml.Z.put(e,this._objectToFormData(t),s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},async put_auth_data(e,t=null,s){return s=this._config(s),ml.Z.put(e,{data:t},s).then((e=>e.data.data)).catch((e=>Promise.reject(Rl.parseAndTranslate(e.response||e))))},_config(e){return e&&Kl.error("NOT IMPLEMENTED"),rl.getters["auth/token"]?{headers:{Authorization:`Bearer ${rl.getters["auth/token"]}`}}:{headers:{}}},_buildFormData(e,t,s){!t||"object"!==typeof t||t instanceof Date||t instanceof File?e.append(s,null==t?"":t):Object.keys(t).forEach((a=>this._buildFormData(e,t[a],s?`${s}[${a}]`:a)))},_objectToFormData(e){const t=new FormData;return this._buildFormData(t,{data:e}),t}},Gl={install:(e,t)=>{t&&!0===t.disabled||(e.config.globalProperties.$axios=Jl)}},Xl={namespaced:!0,state:{mastertasks:null,employees:null,teams:null,projects:null,unscheduledSubtasks:null,ongoingSubtasks:null,initialized:!1,ongoingSubtasksEmployeeId:null,unscheduledSubtasksEmployeeId:null},mutations:{set_mastertasks(e,t){e.mastertasks=t},set_employees(e,t){e.employees=t},set_teams(e,t){e.teams=t},set_projects(e,t){e.projects=t},set_unscheduled_subtasks(e,t){e.unscheduledSubtasks=t},set_ongoing_subtasks(e,t){e.ongoingSubtasks=t},remove_ongoing_subtask(e,t){e.ongoingSubtasks=e.ongoingSubtasks.filter((e=>e.id!=t))},update_team(e,t){e.teams=e.teams.map((e=>e.id==t.id?t:e))},save_team(e,t){e.teams.push(t)},delete_team(e,t){e.teams=e.teams.filter((e=>e.id!=t.id))},update_subtask(e,t){e.unscheduledSubtasks=e.unscheduledSubtasks.map((e=>e.id==t.id?t:e)),e.ongoingSubtasks=e.ongoingSubtasks.map((e=>e.id==t.id?t:e))},delete_subtask(e,t){e.unscheduledSubtasks=e.unscheduledSubtasks.filter((e=>e.id!=t.id)),e.ongoingSubtasks=e.ongoingSubtasks.filter((e=>e.id!=t.id))},set_ongoing_subtasks_employee_id(e,t){e.ongoingSubtasksEmployeeId=t},set_unscheduled_subtasks_employee_id(e,t){e.unscheduledSubtasksEmployeeId=t},initialized(e){e.initialized=!0}},actions:{initialize({dispatch:e,commit:t}){return Promise.all([e("loadMastertasks"),e("loadEmployees"),e("loadTeams"),e("loadProjects"),e("loadUnscheduledSubtasks"),e("loadOngoingSubtasks")]).then((()=>t("initialized")))},reloadSubtasks({dispatch:e}){return Promise.all([e("loadMastertasks"),e("loadProjects"),e("loadUnscheduledSubtasks"),e("loadOngoingSubtasks")])},reloadMastertasks({dispatch:e}){return Promise.all([e("loadMastertasks")])},loadMastertasks({commit:e}){return new Promise(((t,s)=>{Jl.get_auth("v1/mastertasks/?simple=true").then((({mastertasks:s})=>{e("set_mastertasks",s),t(s)})).catch((t=>{e("set_mastertasks",{error:t}),s(t)}))}))},loadEmployees({commit:e}){return new Promise(((t,s)=>{Jl.get_auth_data("v1/employees").then((s=>{e("set_employees",s),t(s)})).catch((t=>{e("set_employees",{error:t}),s(t)}))}))},loadTeams({commit:e}){return new Promise(((t,s)=>{Jl.get_auth_data("v1/teams").then((s=>{e("set_teams",s),t(s)})).catch((t=>{e("set_teams",{error:t}),s(t)}))}))},loadProjects({commit:e}){return new Promise(((t,s)=>{Jl.get_auth_data("v1/projects").then((s=>{e("set_projects",s),t(s)})).catch((t=>{e("set_projects",{error:t}),s(t)}))}))},loadUnscheduledSubtasks({commit:e,state:t},s){let a;return s?(a=s,e("set_unscheduled_subtasks_employee_id",s)):a=t.unscheduledSubtasksEmployeeId?t.unscheduledSubtasksEmployeeId:rl.getters["auth/user"]?.id,new Promise(((t,s)=>{Jl.get_auth(`v1/subtasks?type=unscheduled&employee_id=${a}`).then((({subtasks:s})=>{e("set_unscheduled_subtasks",s),t(s)})).catch((t=>{e("set_unscheduled_subtasks",{error:t}),s(t)}))}))},loadOngoingSubtasks({commit:e,state:t},s){let a;return s?(a=s,e("set_ongoing_subtasks_employee_id",s)):t.ongoingSubtasksEmployeeId?a=t.ongoingSubtasksEmployeeId:(a=rl.getters["auth/user"]?.id,e("set_ongoing_subtasks_employee_id",a)),new Promise(((t,s)=>{Jl.get_auth(`v1/subtasks?type=ongoing&employee_id=${a}`).then((({subtasks:s})=>{e("set_ongoing_subtasks",s),t(s)})).catch((t=>{e("set_ongoing_subtasks",{error:t}),s(t)}))}))},removeOngoingSubtask({commit:e},t){e("remove_ongoing_subtask",t)}},getters:{mastertasks:e=>e.mastertasks,employees:e=>e.employees,enrichedEmployees:e=>e.employees?e.employees.map((e=>({...e,_fullName:`${e.name} ${e.surname}`,_initials:e.name.charAt(0)+e.surname.charAt(0)}))).sort(((e,t)=>e.namee.teams,projects:e=>e.projects,unscheduledSubtasks:e=>e.unscheduledSubtasks,ongoingSubtasks:e=>e.ongoingSubtasks,isInitialized:e=>e.initialized}},Ql={install:e=>{e.config.globalProperties.$store.registerModule("tm",Xl)}};const eo=["lang"],to={key:0,class:"vuecal__flex vuecal__body",grow:"grow"},so=["onBlur","innerHTML"],ao=["innerHTML"],io=["innerHTML"],no={class:"vuecal__flex",row:"row",grow:"grow"},lo={key:0,class:"vuecal__time-column"},oo=(0,m._)("span",{class:"vuecal__time-cell-line"},null,-1),ro={class:"vuecal__time-cell-label"},uo={key:1,class:"vuecal__flex vuecal__week-numbers",column:"column"},co=["wrap","column"],mo=["onBlur","innerHTML"],ho=["innerHTML"],po=["innerHTML"],vo=["wrap"],ko=["innerHTML"],fo=["innerHTML"],_o={key:2,class:"vuecal__cell-events-count"},go={key:3,class:"vuecal__no-event"},bo=["onBlur","innerHTML"],wo=["innerHTML"],yo={key:2,class:"vuecal__event-time"},Do={key:0},Mo={key:1,class:"days-to-end"},To=["innerHTML"],$o={key:0,class:"vuecal__scrollbar-check"},Co=(0,m._)("div",null,null,-1),jo=[Co];function Eo(e,t,s,i,n,l){const o=(0,m.up)("vuecal-header"),r=(0,m.up)("all-day-bar"),d=(0,m.up)("weekdays-headings"),u=(0,m.up)("vuecal-cell");return(0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__flex vuecal",l.cssClasses]),column:"column",ref:"vuecal",lang:s.locale},[(0,m.Wm)(o,{options:e.$props,"edit-events":l.editEvents,"view-props":{views:l.views,weekDaysInHeader:l.weekDaysInHeader},"week-days":l.weekDays,"has-splits":l.hasSplits,"day-splits":l.daySplits,"switch-to-narrower-view":l.switchToNarrowerView},(0,m.Nv)({_:2},[e.$slots["weekday-heading"]?{name:"weekday-heading",fn:(0,m.w5)((({heading:t,view:s})=>[(0,m.WI)(e.$slots,"weekday-heading",{heading:t,view:s})])),key:"0"}:void 0,e.$slots["split-label"]?{name:"split-label",fn:(0,m.w5)((({split:t,view:s})=>[(0,m.WI)(e.$slots,"split-label",{split:t,view:s.id})])),key:"1"}:void 0]),1032,["options","edit-events","view-props","week-days","has-splits","day-splits","switch-to-narrower-view"]),s.hideBody?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",to,[(0,m.Wm)(a.uT,{name:`slide-fade--${n.transitionDirection}`,appear:s.transitions},{default:(0,m.w5)((()=>[((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__flex",style:{"min-width":"100%"},key:!!s.transitions&&n.view.id,column:"column"},[s.showAllDayEvents&&l.hasTimeColumn&&(!l.cellOrSplitMinWidth||l.isDayView&&!s.minSplitWidth)?((0,m.wg)(),(0,m.j4)(r,(0,k.vs)((0,m.dG)({key:0},l.allDayBar)),{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t},(()=>[l.editEvents.title&&t.titleEditable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-title vuecal__event-title--edit",contenteditable:"contenteditable",onBlur:e=>l.onEventTitleBlur(e,t),innerHTML:t.title},null,40,so)):t.title?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-title",innerHTML:t.title},null,8,ao)):(0,m.kq)("",!0),!t.content||l.hasShortEvents||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:2,class:"vuecal__event-content",innerHTML:t.content},null,8,io))]))])),_:3},16)):(0,m.kq)("",!0),(0,m._)("div",{class:(0,k.C_)(["vuecal__bg",{vuecal__flex:!l.hasTimeColumn}]),column:"column",ref:"vuecal_scroll"},[(0,m._)("div",no,[l.hasTimeColumn?((0,m.wg)(),(0,m.iD)("div",lo,[s.showAllDayEvents&&l.cellOrSplitMinWidth&&(!l.isDayView||s.minSplitWidth)?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__all-day-text",style:(0,k.j5)({height:l.allDayBar.height})},[(0,m._)("span",null,(0,k.zw)(n.texts.allDay),1)],4)):(0,m.kq)("",!0),((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.timeCells,((t,a)=>((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__time-cell",key:a,style:(0,k.j5)(`height: ${s.timeCellHeight}px`)},[(0,m.WI)(e.$slots,"time-cell",{hours:t.hours,minutes:t.minutes},(()=>[oo,(0,m._)("span",ro,(0,k.zw)(t.label),1)]))],4)))),128))])):(0,m.kq)("",!0),s.showWeekNumbers&&l.isMonthView?((0,m.wg)(),(0,m.iD)("div",uo,[((0,m.wg)(),(0,m.iD)(m.HY,null,(0,m.Ko)(6,(t=>(0,m._)("div",{class:"vuecal__flex vuecal__week-number-cell",key:t,grow:"grow"},[(0,m.WI)(e.$slots,"week-number-cell",{week:l.getWeekNumber(t-1)},(()=>[(0,m.Uk)((0,k.zw)(l.getWeekNumber(t-1)),1)]))]))),64))])):(0,m.kq)("",!0),(0,m._)("div",{class:(0,k.C_)(["vuecal__flex vuecal__cells vuecal__scrollable-body",`${n.view.id}-view`]),grow:"grow",wrap:!l.cellOrSplitMinWidth||!l.isWeekView,column:!!l.cellOrSplitMinWidth},[l.cellOrSplitMinWidth&&l.isWeekView?((0,m.wg)(),(0,m.j4)(d,{key:0,"transition-direction":n.transitionDirection,"week-days":l.weekDays,"switch-to-narrower-view":l.switchToNarrowerView,style:(0,k.j5)(l.cellOrSplitMinWidth?`min-width: ${l.cellOrSplitMinWidth}px`:""),unscheduledTime:s.unscheduledTime,ref:"vuecal_weekday_heading"},(0,m.Nv)({_:2},[e.$slots["weekday-heading"]?{name:"weekday-heading",fn:(0,m.w5)((({heading:t,view:s})=>[(0,m.WI)(e.$slots,"weekday-heading",{heading:t,view:s})])),key:"0"}:void 0,e.$slots["split-label"]?{name:"split-label",fn:(0,m.w5)((({split:t})=>[(0,m.WI)(e.$slots,"split-label",{split:t,view:n.view.id})])),key:"1"}:void 0]),1032,["transition-direction","week-days","switch-to-narrower-view","style","unscheduledTime"])):l.hasSplits&&s.stickySplitLabels&&s.minSplitWidth?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__flex vuecal__split-days-headers",ref:"vuecal_splits_heading",style:(0,k.j5)(l.cellOrSplitMinWidth?`min-width: ${l.cellOrSplitMinWidth}px`:"")},[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.daySplits,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["day-split-header",t.class||!1]),key:s},[(0,m.WI)(e.$slots,"split-label",{split:t,view:n.view.id},(()=>[(0,m.Uk)((0,k.zw)(t.label),1)]))],2)))),128))],4)):(0,m.kq)("",!0),s.showAllDayEvents&&l.hasTimeColumn&&(l.isWeekView&&l.cellOrSplitMinWidth||l.isDayView&&l.hasSplits&&s.minSplitWidth)?((0,m.wg)(),(0,m.j4)(r,(0,k.vs)((0,m.dG)({key:2},l.allDayBar)),{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t},(()=>[l.editEvents.title&&t.titleEditable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-title vuecal__event-title--edit",contenteditable:"contenteditable",onBlur:e=>l.onEventTitleBlur(e,t),innerHTML:t.title},null,40,mo)):t.title?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-title",innerHTML:t.title},null,8,ho)):(0,m.kq)("",!0),!t.content||l.hasShortEvents||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:2,class:"vuecal__event-content",innerHTML:t.content},null,8,po))]))])),_:3},16)):(0,m.kq)("",!0),(0,m._)("div",{class:"vuecal__flex vuecal__cells-body",ref:e=>n.cellsEl=e,grow:"grow",wrap:!l.cellOrSplitMinWidth||!l.isWeekView,style:(0,k.j5)(l.cellOrSplitMinWidth?`min-width: ${l.cellOrSplitMinWidth}px`:"")},[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.viewCells,((t,a)=>((0,m.wg)(),(0,m.j4)(u,{key:a,options:e.$props,"edit-events":l.editEvents,data:t,"cell-width":s.hideWeekdays.length&&(l.isWeekView||l.isMonthView)&&l.cellWidth,"min-timestamp":l.minTimestamp,"max-timestamp":l.maxTimestamp,"cell-splits":l.hasSplits&&l.daySplits||[]},{"cell-content":(0,m.w5)((({events:a,split:i,selectCell:o})=>[(0,m.WI)(e.$slots,"cell-content",{cell:t,view:n.view,goNarrower:o,events:a},(()=>[i&&!s.stickySplitLabels?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"split-label",innerHTML:i.label},null,8,ko)):(0,m.kq)("",!0),t.content?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__cell-date",innerHTML:t.content},null,8,fo)):(0,m.kq)("",!0),(l.isMonthView&&!s.eventsOnMonthView||l.isYearsOrYearView&&s.eventsCountOnYearView)&&a.length?((0,m.wg)(),(0,m.iD)("div",_o,[(0,m.WI)(e.$slots,"events-count",{view:n.view,events:a},(()=>[(0,m.Uk)((0,k.zw)(a.length),1)]))])):(0,m.kq)("",!0),!l.cellOrSplitHasEvents(a,i)&&l.isWeekOrDayView?((0,m.wg)(),(0,m.iD)("div",go,[(0,m.WI)(e.$slots,"no-event",{},(()=>[(0,m.Uk)((0,k.zw)(n.texts.noEvent),1)]))])):(0,m.kq)("",!0)]))])),event:(0,m.w5)((({event:a,view:i})=>[(0,m.WI)(e.$slots,"event",{view:i,event:a},(()=>[l.editEvents.title&&a.titleEditable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-title vuecal__event-title--edit",contenteditable:"contenteditable",onBlur:e=>l.onEventTitleBlur(e,a),innerHTML:a.title},null,40,bo)):a.title?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-title",innerHTML:a.title},null,8,wo)):(0,m.kq)("",!0),!s.time||a.allDay||l.isMonthView&&(a.allDay||"short"===s.showAllDayEvents)||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",yo,[(0,m.Uk)((0,k.zw)(n.utils.date.formatTime(a.start,l.TimeFormat)),1),a.endTimeMinutes?((0,m.wg)(),(0,m.iD)("span",Do," - "+(0,k.zw)(n.utils.date.formatTime(a.end,l.TimeFormat,null,!0)),1)):(0,m.kq)("",!0),a.daysCount>1&&(a.segments[t.formattedDate]||{}).isFirstDay?((0,m.wg)(),(0,m.iD)("small",Mo," +"+(0,k.zw)(a.daysCount-1)+(0,k.zw)((n.texts.day[0]||"").toLowerCase()),1)):(0,m.kq)("",!0)])),!a.content||l.isMonthView&&a.allDay&&"short"===s.showAllDayEvents||l.isShortMonthView?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:3,class:"vuecal__event-content",innerHTML:a.content},null,8,To))]))])),_:2},1032,["options","edit-events","data","cell-width","min-timestamp","max-timestamp","cell-splits"])))),128))],12,vo)],10,co)])],2)]))])),_:3},8,["name","appear"]),n.ready?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",$o,jo))]))],10,eo)}s(30541);let xo,Wo,So,Oo,Vo={},zo={};class Ao{constructor(e,t=!1){(0,kl.Z)(this,"texts",{}),(0,kl.Z)(this,"dateToMinutes",(e=>60*e.getHours()+e.getMinutes())),Oo=this,this._texts=e,t||!Date||Date.prototype.addDays||this._initDatePrototypes()}_initDatePrototypes(){Date.prototype.addDays=function(e){return Oo.addDays(this,e)},Date.prototype.subtractDays=function(e){return Oo.subtractDays(this,e)},Date.prototype.addHours=function(e){return Oo.addHours(this,e)},Date.prototype.subtractHours=function(e){return Oo.subtractHours(this,e)},Date.prototype.addMinutes=function(e){return Oo.addMinutes(this,e)},Date.prototype.subtractMinutes=function(e){return Oo.subtractMinutes(this,e)},Date.prototype.getWeek=function(){return Oo.getWeek(this)},Date.prototype.isToday=function(){return Oo.isToday(this)},Date.prototype.isLeapYear=function(){return Oo.isLeapYear(this)},Date.prototype.format=function(e="YYYY-MM-DD"){return Oo.formatDate(this,e)},Date.prototype.formatTime=function(e="HH:mm"){return Oo.formatTime(this,e)}}removePrototypes(){delete Date.prototype.addDays,delete Date.prototype.subtractDays,delete Date.prototype.addHours,delete Date.prototype.subtractHours,delete Date.prototype.addMinutes,delete Date.prototype.subtractMinutes,delete Date.prototype.getWeek,delete Date.prototype.isToday,delete Date.prototype.isLeapYear,delete Date.prototype.format,delete Date.prototype.formatTime}updateTexts(e){this._texts=e}_todayFormatted(){return Wo!==(new Date).getDate()&&(xo=new Date,Wo=xo.getDate(),So=`${xo.getFullYear()}-${xo.getMonth()}-${xo.getDate()}`),So}addDays(e,t){const s=new Date(e.valueOf());return s.setDate(s.getDate()+t),s}subtractDays(e,t){const s=new Date(e.valueOf());return s.setDate(s.getDate()-t),s}addHours(e,t){const s=new Date(e.valueOf());return s.setHours(s.getHours()+t),s}subtractHours(e,t){const s=new Date(e.valueOf());return s.setHours(s.getHours()-t),s}addMinutes(e,t){const s=new Date(e.valueOf());return s.setMinutes(s.getMinutes()+t),s}subtractMinutes(e,t){const s=new Date(e.valueOf());return s.setMinutes(s.getMinutes()-t),s}getWeek(e){const t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())),s=t.getUTCDay()||7;t.setUTCDate(t.getUTCDate()+4-s);const a=new Date(Date.UTC(t.getUTCFullYear(),0,1));return Math.ceil(((t-a)/864e5+1)/7)}isToday(e){return`${e.getFullYear()}-${e.getMonth()}-${e.getDate()}`===this._todayFormatted()}isLeapYear(e){const t=e.getFullYear();return!(t%400)||t%100&&!(t%4)}getPreviousFirstDayOfWeek(e=null,t){const s=e&&new Date(e.valueOf())||new Date,a=t?7:6;return s.setDate(s.getDate()-(s.getDay()+a)%7),s}stringToDate(e){return e instanceof Date?e:(10===e.length&&(e+=" 00:00"),new Date(e.replace(/-/g,"/")))}countDays(e,t){"string"===typeof e&&(e=e.replace(/-/g,"/")),"string"===typeof t&&(t=t.replace(/-/g,"/")),e=new Date(e).setHours(0,0,0,0),t=new Date(t).setHours(0,0,1,0);const s=60*(new Date(t).getTimezoneOffset()-new Date(e).getTimezoneOffset())*1e3;return Math.ceil((t-e-s)/864e5)}datesInSameTimeStep(e,t,s){return Math.abs(e.getTime()-t.getTime())<=60*s*1e3}formatDate(e,t="YYYY-MM-DD",s=null){if(s||(s=this._texts),t||(t="YYYY-MM-DD"),"YYYY-MM-DD"===t)return this.formatDateLite(e);Vo={},zo={};const a={YYYY:()=>this._hydrateDateObject(e,s).YYYY,YY:()=>this._hydrateDateObject(e,s).YY(),M:()=>this._hydrateDateObject(e,s).M,MM:()=>this._hydrateDateObject(e,s).MM(),MMM:()=>this._hydrateDateObject(e,s).MMM(),MMMM:()=>this._hydrateDateObject(e,s).MMMM(),MMMMG:()=>this._hydrateDateObject(e,s).MMMMG(),D:()=>this._hydrateDateObject(e,s).D,DD:()=>this._hydrateDateObject(e,s).DD(),S:()=>this._hydrateDateObject(e,s).S(),d:()=>this._hydrateDateObject(e,s).d,dd:()=>this._hydrateDateObject(e,s).dd(),ddd:()=>this._hydrateDateObject(e,s).ddd(),dddd:()=>this._hydrateDateObject(e,s).dddd(),HH:()=>this._hydrateTimeObject(e,s).HH,H:()=>this._hydrateTimeObject(e,s).H,hh:()=>this._hydrateTimeObject(e,s).hh,h:()=>this._hydrateTimeObject(e,s).h,am:()=>this._hydrateTimeObject(e,s).am,AM:()=>this._hydrateTimeObject(e,s).AM,mm:()=>this._hydrateTimeObject(e,s).mm,m:()=>this._hydrateTimeObject(e,s).m};return t.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,((e,t)=>{const s=a[t.replace(/\{|\}/g,"")];return void 0!==s?s():t}))}formatDateLite(e){const t=e.getMonth()+1,s=e.getDate();return`${e.getFullYear()}-${t<10?"0":""}${t}-${s<10?"0":""}${s}`}formatTime(e,t="HH:mm",s=null,a=!1){let i=!1;if(a){const[t,s,a]=[e.getHours(),e.getMinutes(),e.getSeconds()];t+s+a===141&&(i=!0)}if(e instanceof Date&&"HH:mm"===t)return i?"24:00":this.formatTimeLite(e);zo={},s||(s=this._texts);const n=this._hydrateTimeObject(e,s),l=t.replace(/(\{[a-zA-Z]+\}|[a-zA-Z]+)/g,((e,t)=>{const s=n[t.replace(/\{|\}/g,"")];return void 0!==s?s:t}));return i?l.replace("23:59","24:00"):l}formatTimeLite(e){const t=e.getHours(),s=e.getMinutes();return`${(t<10?"0":"")+t}:${(s<10?"0":"")+s}`}_nth(e){if(e>3&&e<21)return"th";switch(e%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}}_hydrateDateObject(e,t){if(Vo.D)return Vo;const s=e.getFullYear(),a=e.getMonth()+1,i=e.getDate(),n=e.getDay(),l=(n-1+7)%7;return Vo={YYYY:s,YY:()=>s.toString().substring(2),M:a,MM:()=>(a<10?"0":"")+a,MMM:()=>t.months[a-1].substring(0,3),MMMM:()=>t.months[a-1],MMMMG:()=>(t.monthsGenitive||t.months)[a-1],D:i,DD:()=>(i<10?"0":"")+i,S:()=>this._nth(i),d:l+1,dd:()=>t.weekDays[l][0],ddd:()=>t.weekDays[l].substr(0,3),dddd:()=>t.weekDays[l]},Vo}_hydrateTimeObject(e,t){if(zo.am)return zo;let s,a;e instanceof Date?(s=e.getHours(),a=e.getMinutes()):(s=Math.floor(e/60),a=Math.floor(e%60));const i=s%12?s%12:12,n=(t||{am:"am",pm:"pm"})[24===s||s<12?"am":"pm"];return zo={H:s,h:i,HH:(s<10?"0":"")+s,hh:(i<10?"0":"")+i,am:n,AM:n.toUpperCase(),m:a,mm:(a<10?"0":"")+a},zo}}const Uo=1440;class Ho{constructor(e){(0,kl.Z)(this,"_vuecal",null),(0,kl.Z)(this,"selectCell",((e=!1,t,s)=>{this._vuecal.$emit("cell-click",s?{date:t,split:s}:t),this._vuecal.clickToNavigate||e?this._vuecal.switchToNarrowerView():this._vuecal.dblclickToNavigate&&"ontouchstart"in window&&(this._vuecal.domEvents.dblTapACell.taps++,setTimeout((()=>this._vuecal.domEvents.dblTapACell.taps=0),this._vuecal.domEvents.dblTapACell.timeout),this._vuecal.domEvents.dblTapACell.taps>=2&&(this._vuecal.domEvents.dblTapACell.taps=0,this._vuecal.switchToNarrowerView(),this._vuecal.$emit("cell-dblclick",s?{date:t,split:s}:t)))})),(0,kl.Z)(this,"keyPressEnterCell",((e,t)=>{this._vuecal.$emit("cell-keypress-enter",t?{date:e,split:t}:e),this._vuecal.switchToNarrowerView()})),(0,kl.Z)(this,"getPosition",(e=>{const{left:t,top:s}=this._vuecal.cellsEl.getBoundingClientRect(),{clientX:a,clientY:i}="ontouchstart"in window&&e.touches?e.touches[0]:e;return{x:a-t,y:i-s}})),(0,kl.Z)(this,"minutesAtCursor",(e=>{let t=0,s={x:0,y:0};const{timeStep:a,timeCellHeight:i,timeFrom:n}=this._vuecal.$props;return"number"===typeof e?t=e:"object"===typeof e&&(s=this.getPosition(e),t=Math.round(s.y*a/parseInt(i)+n)),{minutes:Math.max(Math.min(t,Uo),0),cursorCoords:s}})),this._vuecal=e}}const Zo=2,Io=1440;let Fo,Yo,Po;class Lo{constructor(e,t){(0,kl.Z)(this,"_vuecal",null),(0,kl.Z)(this,"eventDefaults",{_eid:null,start:"",startTimeMinutes:0,end:"",endTimeMinutes:0,title:"",content:"",background:!1,allDay:!1,segments:null,repeat:null,daysCount:1,deletable:!0,deleting:!1,titleEditable:!0,resizable:!0,resizing:!1,draggable:!0,dragging:!1,draggingStatic:!1,focused:!1,class:""}),this._vuecal=e,Fo=t}createAnEvent(e,t,s){if("string"===typeof e&&(e=Fo.stringToDate(e)),!(e instanceof Date))return!1;const a=Fo.dateToMinutes(e);t=1*t||60*Zo;const i=a+t,n=Fo.addMinutes(new Date(e),t);s.end&&("string"===typeof s.end&&(s.end=Fo.stringToDate(s.end)),s.endTimeMinutes=Fo.dateToMinutes(s.end));const l={...this.eventDefaults,_eid:`${this._vuecal._.uid}_${this._vuecal.eventIdIncrement++}`,start:e,startTimeMinutes:a,end:n,endTimeMinutes:i,segments:null,...s};return"function"!==typeof this._vuecal.onEventCreate||this._vuecal.onEventCreate(l,(()=>this.deleteAnEvent(l)))?(l.startDateF!==l.endDateF&&(l.daysCount=Fo.countDays(l.start,l.end)),this._vuecal.mutableEvents.push(l),this._vuecal.addEventsToView([l]),this._vuecal.emitWithEvent("event-create",l),this._vuecal.$emit("event-change",{event:this._vuecal.cleanupEvent(l),originalEvent:null}),l):void 0}addEventSegment(e){e.segments||(e.segments={},e.segments[Fo.formatDateLite(e.start)]={start:e.start,startTimeMinutes:e.startTimeMinutes,endTimeMinutes:Io,isFirstDay:!0,isLastDay:!1});const t=e.segments[Fo.formatDateLite(e.end)];t&&(t.isLastDay=!1,t.endTimeMinutes=Io);const s=Fo.addDays(e.end,1),a=Fo.formatDateLite(s);return s.setHours(0,0,0,0),e.segments[a]={start:s,startTimeMinutes:0,endTimeMinutes:e.endTimeMinutes,isFirstDay:!1,isLastDay:!0},e.end=Fo.addMinutes(s,e.endTimeMinutes),e.daysCount=Object.keys(e.segments).length,a}removeEventSegment(e){let t=Object.keys(e.segments).length;if(t<=1)return Fo.formatDateLite(e.end);delete e.segments[Fo.formatDateLite(e.end)],t--;const s=Fo.subtractDays(e.end,1),a=Fo.formatDateLite(s),i=e.segments[a];return t?i&&(i.isLastDay=!0,i.endTimeMinutes=e.endTimeMinutes):e.segments=null,e.daysCount=t||1,e.end=s,a}createEventSegments(e,t,s){const a=t.getTime(),i=s.getTime();let n,l,o,r=e.start.getTime(),d=e.end.getTime(),u=!1;e.end.getHours()||e.end.getMinutes()||(d-=1e3),e.segments={},e.repeat?(n=a,l=Math.min(i,e.repeat.until?Fo.stringToDate(e.repeat.until).getTime():i)):(n=Math.max(a,r),l=Math.min(i,d));while(n<=l){let t=!1;const s=Fo.addDays(new Date(n),1).setHours(0,0,0,0);let a,i,c,m;if(e.repeat){const s=new Date(n),l=Fo.formatDateLite(s);(u||e.occurrences&&e.occurrences[l])&&(u||(r=e.occurrences[l].start,o=new Date(r).setHours(0,0,0,0),d=e.occurrences[l].end),u=!0,t=!0),a=n===o,i=l===Fo.formatDateLite(new Date(d)),c=new Date(a?r:n),m=Fo.formatDateLite(c),i&&(u=!1)}else t=!0,a=n===r,i=l===d&&s>l,c=a?e.start:new Date(n),m=Fo.formatDateLite(a?e.start:c);t&&(e.segments[m]={start:c,startTimeMinutes:a?e.startTimeMinutes:0,endTimeMinutes:i?e.endTimeMinutes:Io,isFirstDay:a,isLastDay:i}),n=s}return e}deleteAnEvent(e){this._vuecal.emitWithEvent("event-delete",e),this._vuecal.mutableEvents=this._vuecal.mutableEvents.filter((t=>t._eid!==e._eid)),this._vuecal.view.events=this._vuecal.view.events.filter((t=>t._eid!==e._eid))}checkCellOverlappingEvents(e,t){Po=e.slice(0),Yo={},e.forEach((e=>{Po.shift(),Yo[e._eid]||(Yo[e._eid]={overlaps:[],start:e.start,position:0,sameOverlaps:[]}),Yo[e._eid].position=0,Po.forEach((s=>{Yo[s._eid]||(Yo[s._eid]={overlaps:[],start:s.start,position:0,sameOverlaps:[]});const a=this.eventInRange(s,e.start,e.end),i=this.eventSameRange(s,e),n=t.overlapsPerTimeStep?Fo.datesInSameTimeStep(e.start,s.start,t.timeStep):1;if(e.background||e.allDay||s.background||s.allDay||!a||!n){let t,a;(t=(Yo[e._eid]||{overlaps:[]}).overlaps.indexOf(s._eid))>-1&&Yo[e._eid].overlaps.splice(t,1),(a=(Yo[s._eid]||{overlaps:[]}).overlaps.indexOf(e._eid))>-1&&Yo[s._eid].overlaps.splice(a,1),Yo[s._eid].position--}else Yo[e._eid].overlaps.push(s._eid),Yo[e._eid].overlaps=[...new Set(Yo[e._eid].overlaps)],Yo[s._eid].overlaps.push(e._eid),Yo[s._eid].overlaps=[...new Set(Yo[s._eid].overlaps)],Yo[s._eid].position++,i&&(Yo[e._eid].sameOverlaps.push(s._eid),Yo[e._eid].sameOverlaps=[...new Set(Yo[e._eid].sameOverlaps)],Yo[s._eid].sameOverlaps.push(e._eid),Yo[s._eid].sameOverlaps=[...new Set(Yo[s._eid].sameOverlaps)])}))}));let s=0;for(const a in Yo){const e=Yo[a],t=e.overlaps.map((e=>({id:e,start:Yo[e].start})));t.push({id:a,start:e.start}),t.sort(((e,t)=>e.startt.start?1:e.id>t.id?-1:1)),e.position=t.findIndex((e=>e.id===a)),s=Math.max(this.getOverlapsStreak(e,Yo),s)}return[Yo,s]}getOverlapsStreak(e,t={}){let s=e.overlaps.length+1,a=[];return e.overlaps.forEach((s=>{if(!a.includes(s)){const i=e.overlaps.filter((e=>e!==s));i.forEach((e=>{t[e].overlaps.includes(s)||a.push(e)}))}})),a=[...new Set(a)],s-=a.length,s}eventInRange(e,t,s){if(e.allDay||!this._vuecal.time){const a=new Date(e.start).setHours(0,0,0,0),i=new Date(e.end).setHours(23,59,0,0);return i>=new Date(t).setHours(0,0,0,0)&&a<=new Date(s).setHours(0,0,0,0)}const a=e.start.getTime(),i=e.end.getTime();return at.getTime()}eventSameRange(e,t){const s=e.start.getTime()==t.start.getTime(),a=e.end.getTime()==t.end.getTime();return s&&a}}const No={class:"vuecal__header"},qo={key:0,class:"vuecal__flex vuecal__menu",role:"tablist","aria-label":"Calendar views navigation"},Bo=["onDragenter","onDragleave","onClick","aria-label"],Ro={key:1,class:"vuecal__title-bar"},Ko=["aria-label"],Jo={class:"vuecal__flex vuecal__title",grow:""},Go=["aria-label"],Xo={key:0,class:"vuecal__flex vuecal__split-days-headers"};function Qo(e,t,s,i,n,l){const o=(0,m.up)("weekdays-headings");return(0,m.wg)(),(0,m.iD)("div",No,[s.options.hideViewSelector?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",qo,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.viewProps.views,((t,a)=>((0,m.wg)(),(0,m.iD)(m.HY,{key:a},[t.enabled?((0,m.wg)(),(0,m.iD)("button",{key:0,class:(0,k.C_)(["vuecal__view-btn",{"vuecal__view-btn--active":l.view.id===a,"vuecal__view-btn--highlighted":e.highlightedControl===a}]),type:"button",onDragenter:t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,a,e.$data),onDragleave:t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,a,e.$data),onClick:e=>l.switchView(a,null,!0),"aria-label":`${t.label} view`},(0,k.zw)(t.label),43,Bo)):(0,m.kq)("",!0)],64)))),128))])),s.options.hideTitleBar?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",Ro,[(0,m._)("button",{class:(0,k.C_)(["vuecal__arrow vuecal__arrow--prev",{"vuecal__arrow--highlighted":"previous"===e.highlightedControl}]),type:"button",onClick:t[0]||(t[0]=(...e)=>l.previous&&l.previous(...e)),onDragenter:t[1]||(t[1]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,"previous",e.$data)),onDragleave:t[2]||(t[2]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,"previous",e.$data)),"aria-label":`Previous ${l.view.id}`},[(0,m.WI)(e.$slots,"arrow-prev")],42,Ko),(0,m._)("div",Jo,[(0,m.Wm)(a.uT,{name:s.options.transitions?`slide-fade--${l.transitionDirection}`:""},{default:(0,m.w5)((()=>[((0,m.wg)(),(0,m.j4)((0,m.LL)(l.broaderView?"button":"span"),{type:!!l.broaderView&&"button",key:`${l.view.id}${l.view.startDate.toString()}`,onClick:t[3]||(t[3]=e=>!!l.broaderView&&l.switchToBroaderView()),"aria-label":!!l.broaderView&&`Go to ${l.broaderView} view`},{default:(0,m.w5)((()=>[(0,m.WI)(e.$slots,"title")])),_:3},8,["type","aria-label"]))])),_:3},8,["name"])]),s.options.todayButton?((0,m.wg)(),(0,m.iD)("button",{key:0,class:(0,k.C_)(["vuecal__today-btn",{"vuecal__today-btn--highlighted":"today"===e.highlightedControl}]),type:"button",onClick:t[4]||(t[4]=(...e)=>l.goToToday&&l.goToToday(...e)),onDragenter:t[5]||(t[5]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,"today",e.$data)),onDragleave:t[6]||(t[6]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,"today",e.$data)),"aria-label":"Today"},[(0,m.WI)(e.$slots,"today-button")],34)):(0,m.kq)("",!0),(0,m._)("button",{class:(0,k.C_)(["vuecal__arrow vuecal__arrow--next",{"vuecal__arrow--highlighted":"next"===e.highlightedControl}]),type:"button",onClick:t[7]||(t[7]=(...e)=>l.next&&l.next(...e)),onDragenter:t[8]||(t[8]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragEnter(t,"next",e.$data)),onDragleave:t[9]||(t[9]=t=>s.editEvents.drag&&l.dnd&&l.dnd.viewSelectorDragLeave(t,"next",e.$data)),"aria-label":`Next ${l.view.id}`},[(0,m.WI)(e.$slots,"arrow-next")],42,Go)])),s.viewProps.weekDaysInHeader?((0,m.wg)(),(0,m.j4)(o,{key:2,"week-days":s.weekDays,"transition-direction":l.transitionDirection,"switch-to-narrower-view":s.switchToNarrowerView},(0,m.Nv)({_:2},[e.$slots["weekday-heading"]?{name:"weekday-heading",fn:(0,m.w5)((({heading:t,view:s})=>[(0,m.WI)(e.$slots,"weekday-heading",{heading:t,view:s})])),key:"0"}:void 0,e.$slots["split-label"]?{name:"split-label",fn:(0,m.w5)((({split:t})=>[(0,m.WI)(e.$slots,"split-label",{split:t,view:l.view})])),key:"1"}:void 0]),1032,["week-days","transition-direction","switch-to-narrower-view"])):(0,m.kq)("",!0),(0,m.Wm)(a.uT,{name:`slide-fade--${l.transitionDirection}`},{default:(0,m.w5)((()=>[l.showDaySplits?((0,m.wg)(),(0,m.iD)("div",Xo,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.daySplits,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["day-split-header",t.class||!1]),key:s},[(0,m.WI)(e.$slots,"split-label",{split:t,view:l.view.id},(()=>[(0,m.Uk)((0,k.zw)(t.label),1)]))],2)))),128))])):(0,m.kq)("",!0)])),_:3},8,["name"])])}const er={class:"vuecal__flex vuecal__weekdays-headings",ref:"vuecal_weekday_heading"},tr=["onClick"],sr={class:"vuecal__flex weekday-label",grow:""},ar={class:"full"},ir={class:"small"},nr={class:"xsmall"},lr={key:0},or={key:0,class:"vuecal__flex vuecal__split-days-headers",grow:""};function rr(e,t,s,i,n,l){return(0,m.wg)(),(0,m.iD)("div",er,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.headings,((i,n)=>((0,m.wg)(),(0,m.iD)(m.HY,{key:n},[i.hide?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",{key:0,class:(0,k.C_)(["vuecal__flex vuecal__heading",{today:i.today,"today-cell":i.today,clickable:l.cellHeadingsClickable,"yesterday-cell":new Date(i.date).toLocaleDateString("sk-SK")==new Date((new Date).setDate((new Date).getDate()-1)).toLocaleDateString("sk-SK")}]),style:(0,k.j5)(l.weekdayCellStyles),onClick:e=>"week"===l.view.id&&l.selectCell(i.date,e),onDblclick:t[0]||(t[0]=e=>"week"===l.view.id&&l.vuecal.dblclickToNavigate&&s.switchToNarrowerView())},[(0,m.Wm)(a.uT,{name:`slide-fade--${s.transitionDirection}`,appear:l.vuecal.transitions},{default:(0,m.w5)((()=>[((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__flex",column:"",key:!!l.vuecal.transitions&&`${n}-${i.dayOfMonth}`},[(0,m._)("div",sr,[(0,m.WI)(e.$slots,"weekday-heading",{heading:l.cleanupHeading(i),view:l.view},(()=>[(0,m._)("span",ar,(0,k.zw)(i.full),1),(0,m._)("span",ir,(0,k.zw)(i.small),1),(0,m._)("span",nr,(0,k.zw)(i.xsmall),1),i.dayOfMonth?((0,m.wg)(),(0,m.iD)("span",lr," "+(0,k.zw)(i.dayOfMonth),1)):(0,m.kq)("",!0)]))]),l.vuecal.hasSplits&&l.vuecal.stickySplitLabels?((0,m.wg)(),(0,m.iD)("div",or,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.vuecal.daySplits,((t,s)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["day-split-header",t.class||!1]),key:s},[(0,m.WI)(e.$slots,"split-label",{split:t,view:l.view},(()=>[(0,m.Uk)((0,k.zw)(t.label),1)]))],2)))),128))])):(0,m.kq)("",!0)]))])),_:2},1032,["name","appear"])],46,tr))],64)))),128))],512)}var dr={inject:["vuecal","utils","view"],props:{transitionDirection:{type:String,default:"right"},weekDays:{type:Array,default:()=>[]},switchToNarrowerView:{type:Function,default:()=>{}},unscheduledTime:{type:Array,default:[]}},methods:{selectCell(e,t){e.getTime()!==this.view.selectedDate.getTime()&&(this.view.selectedDate=e),this.utils.cell.selectCell(!1,e,t)},cleanupHeading:e=>({label:e.full,date:e.date,unscheduledTime:e.unscheduledTime,name:e.name,initials:e.initials,...e.today?{today:e.today}:{}}),onTimelineScroll(e){this.$refs["vuecal_weekday_heading"].style.top=`${e}px`}},computed:{headings(){if(!["month","week"].includes(this.view.id))return[];let e=!1;const t=this.weekDays.map(((t,s)=>{const a=this.utils.date.addDays(this.view.startDate,this.vuecal.startWeekOnSunday?s-1:s);let i=null,n=null,l=null;return this.unscheduledTime[s]?.time&&(i=Math.floor(this.unscheduledTime[s].time/60)+","+String(this.unscheduledTime[s].time%60)[0]),this.unscheduledTime[s]?.name&&this.unscheduledTime[s]?.name&&(n=this.unscheduledTime[s].name+" "+this.unscheduledTime[s].surname,l=this.unscheduledTime[s].name.charAt(0).toUpperCase()+this.unscheduledTime[s].surname.charAt(0).toUpperCase()),{hide:t.hide,full:t.label,small:t.short||t.label.substr(0,3),xsmall:t.short||t.label.substr(0,1),unscheduledTime:i,name:n,initials:l,..."week"===this.view.id?{dayOfMonth:a.getDate(),date:a,today:!e&&this.utils.date.isToday(a)&&!e++}:{}}}));return t},cellWidth(){return 100/(7-this.weekDays.reduce(((e,t)=>e+t.hide),0))},weekdayCellStyles(){return{...this.vuecal.hideWeekdays.length?{width:`${this.cellWidth}%`}:{}}},cellHeadingsClickable(){return"week"===this.view.id&&(this.vuecal.clickToNavigate||this.vuecal.dblclickToNavigate)}}};const ur=(0,$.Z)(dr,[["render",rr]]);var cr=ur,mr={inject:["vuecal","previous","next","switchView","updateSelectedDate","modules","view"],components:{WeekdaysHeadings:cr},props:{options:{type:Object,default:()=>({})},editEvents:{type:Object,required:!0},hasSplits:{type:[Boolean,Number],default:!1},daySplits:{type:Array,default:()=>[]},viewProps:{type:Object,default:()=>({})},weekDays:{type:Array,default:()=>[]},switchToNarrowerView:{type:Function,default:()=>{}}},data:()=>({highlightedControl:null}),methods:{goToToday(){this.updateSelectedDate(new Date((new Date).setHours(0,0,0,0)))},switchToBroaderView(){this.transitionDirection="left",this.broaderView&&this.switchView(this.broaderView)}},computed:{transitionDirection:{get(){return this.vuecal.transitionDirection},set(e){this.vuecal.transitionDirection=e}},broaderView(){const{enabledViews:e}=this.vuecal;return e[e.indexOf(this.view.id)-1]},showDaySplits(){return"day"===this.view.id&&this.hasSplits&&this.options.stickySplitLabels&&!this.options.minSplitWidth},dnd(){return this.modules.dnd}}};const hr=(0,$.Z)(mr,[["render",Qo]]);var pr=hr;const vr={key:0,class:"vuecal__all-day-text",style:{width:"3em"}};function kr(e,t,s,a,i,n){const l=(0,m.up)("vuecal-cell");return(0,m.wg)(),(0,m.iD)("div",{class:"vuecal__flex vuecal__all-day",style:(0,k.j5)(s.cellOrSplitMinWidth&&{height:s.height})},[s.cellOrSplitMinWidth?(0,m.kq)("",!0):((0,m.wg)(),(0,m.iD)("div",vr,[(0,m._)("span",null,(0,k.zw)(s.label),1)])),(0,m._)("div",{class:(0,k.C_)(["vuecal__flex vuecal__cells",`${n.view.id}-view`]),grow:"",style:(0,k.j5)(s.cellOrSplitMinWidth?`min-width: ${s.cellOrSplitMinWidth}px`:"")},[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(s.cells,((t,a)=>((0,m.wg)(),(0,m.j4)(l,{key:a,options:s.options,"edit-events":n.editEvents,data:t,"all-day":!0,"cell-width":s.options.hideWeekdays.length&&(n.vuecal.isWeekView||n.vuecal.isMonthView)&&n.vuecal.cellWidth,"min-timestamp":s.options.minTimestamp,"max-timestamp":s.options.maxTimestamp,"cell-splits":s.daySplits},{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t})])),_:2},1032,["options","edit-events","data","cell-width","min-timestamp","max-timestamp","cell-splits"])))),128))],6)],4)}const fr=["data-split","aria-label","onTouchstart","onMousedown","onClick","onDragover","onDrop"],_r={key:0,class:"cell-time-labels"},gr=["innerHTML"],br={key:2,class:"vuecal__cell-events"},wr=["title"];function yr(e,t,s,i,n,l){const o=(0,m.up)("event");return(0,m.wg)(),(0,m.j4)(a.W3,{class:(0,k.C_)(["vuecal__cell",l.cellClasses]),name:`slide-fade--${l.transitionDirection}`,tag:"div",appear:s.options.transitions,style:(0,k.j5)(l.cellStyles)},{default:(0,m.w5)((()=>[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.splitsCount?l.splits:1,((i,n)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__flex vuecal__cell-content",l.splitsCount&&l.splitClasses(i)]),key:s.options.transitions?`${l.view.id}-${s.data.content}-${n}`:n,"data-split":!!l.splitsCount&&i.id,column:"",tabindex:"0","aria-label":s.data.content,onFocus:t[0]||(t[0]=e=>l.onCellFocus(e)),onKeypress:t[1]||(t[1]=(0,a.D2)((e=>l.onCellkeyPressEnter(e)),["enter"])),onTouchstart:e=>!l.isDisabled&&l.onCellTouchStart(e,l.splitsCount?i.id:null),onMousedown:e=>!l.isDisabled&&l.onCellMouseDown(e,l.splitsCount?i.id:null),onClick:e=>!l.isDisabled&&l.onCellClick(e,i),onDblclick:t[2]||(t[2]=e=>!l.isDisabled&&l.onCellDblClick(e)),onContextmenu:t[3]||(t[3]=e=>!l.isDisabled&&s.options.cellContextmenu&&l.onCellContextMenu(e)),onDragenter:t[4]||(t[4]=t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragEnter(t,e.$data,s.data.startDate)),onDragover:t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragOver(t,e.$data,s.data.startDate,l.splitsCount?i.id:null),onDragleave:t[5]||(t[5]=t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragLeave(t,e.$data,s.data.startDate)),onDrop:t=>!l.isDisabled&&s.editEvents.drag&&l.dnd&&l.dnd.cellDragDrop(t,e.$data,s.data.startDate,l.splitsCount?i.id:null)},[s.options.showTimeInCells&&s.options.time&&l.isWeekOrDayView&&!s.allDay?((0,m.wg)(),(0,m.iD)("div",_r,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.vuecal.timeCells,((e,t)=>((0,m.wg)(),(0,m.iD)("span",{class:"cell-time-label",key:t},(0,k.zw)(e.label),1)))),128))])):(0,m.kq)("",!0),l.isWeekOrDayView&&!s.allDay&&l.specialHours.length?((0,m.wg)(!0),(0,m.iD)(m.HY,{key:1},(0,m.Ko)(l.specialHours,((e,t)=>((0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__special-hours",`vuecal__special-hours--day${e.day} ${e.class}`]),style:(0,k.j5)(`height: ${e.height}px;top: ${e.top}px`)},[e.label?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"special-hours-label",innerHTML:e.label},null,8,gr)):(0,m.kq)("",!0)],6)))),256)):(0,m.kq)("",!0),(0,m.WI)(e.$slots,"cell-content",{events:l.events,selectCell:e=>l.selectCell(e,!0),split:!!l.splitsCount&&i}),l.eventsCount&&(l.isWeekOrDayView||"month"===l.view.id&&s.options.eventsOnMonthView)?((0,m.wg)(),(0,m.iD)("div",br,[((0,m.wg)(!0),(0,m.iD)(m.HY,null,(0,m.Ko)(l.splitsCount?i.events:l.events,((t,a)=>((0,m.wg)(),(0,m.j4)(o,{key:a,"cell-formatted-date":s.data.formattedDate,event:t,"all-day":s.allDay,"cell-events":l.splitsCount?i.events:l.events,cellOverlaps:(l.splitsCount?i.overlaps[t._eid]:e.cellOverlaps[t._eid])||[],allOverlaps:(l.splitsCount?i.overlaps:e.cellOverlaps)||[],"event-position":((l.splitsCount?i.overlaps[t._eid]:e.cellOverlaps[t._eid])||[]).position,"overlaps-streak":l.splitsCount?i.overlapsStreak:e.cellOverlapsStreak},{event:(0,m.w5)((({event:t,view:s})=>[(0,m.WI)(e.$slots,"event",{view:s,event:t})])),_:2},1032,["cell-formatted-date","event","all-day","cell-events","cellOverlaps","allOverlaps","event-position","overlaps-streak"])))),128))])):(0,m.kq)("",!0)],42,fr)))),128)),l.timelineVisible?((0,m.wg)(),(0,m.iD)("div",{class:"vuecal__now-line",style:(0,k.j5)(`top: ${l.todaysTimePosition}px`),key:s.options.transitions?`${l.view.id}-now-line`:"now-line",title:l.utils.date.formatTime(l.vuecal.now)},null,12,wr)):(0,m.kq)("",!0)])),_:3},8,["class","name","appear","style"])}const Dr=["eventId","draggable"];function Mr(e,t,s,i,n,l){return(0,m.wg)(),(0,m.iD)("div",{class:(0,k.C_)(["vuecal__event",l.eventClasses]),style:(0,k.j5)(l.eventStyles),eventId:`event-id-${s.event.id}`,tabindex:"0",onFocus:t[4]||(t[4]=(...e)=>l.focusEvent&&l.focusEvent(...e)),onKeypress:t[5]||(t[5]=(0,a.D2)((0,a.iM)(((...e)=>l.onEnterKeypress&&l.onEnterKeypress(...e)),["stop"]),["enter"])),onMouseenter:t[6]||(t[6]=(...e)=>l.onMouseEnter&&l.onMouseEnter(...e)),onMouseleave:t[7]||(t[7]=(...e)=>l.onMouseLeave&&l.onMouseLeave(...e)),onTouchstart:t[8]||(t[8]=(0,a.iM)(((...e)=>l.onTouchStart&&l.onTouchStart(...e)),["stop"])),onMousedown:t[9]||(t[9]=e=>l.onMouseDown(e)),onMouseup:t[10]||(t[10]=(...e)=>l.onMouseUp&&l.onMouseUp(...e)),onTouchend:t[11]||(t[11]=(...e)=>l.onMouseUp&&l.onMouseUp(...e)),onTouchmove:t[12]||(t[12]=(...e)=>l.onTouchMove&&l.onTouchMove(...e)),onDblclick:t[13]||(t[13]=(...e)=>l.onDblClick&&l.onDblClick(...e)),draggable:l.draggable,onDragstart:t[14]||(t[14]=e=>l.draggable&&l.onDragStart(e)),onDragend:t[15]||(t[15]=e=>l.draggable&&l.onDragEnd())},[l.vuecal.editEvents.delete&&s.event.deletable?((0,m.wg)(),(0,m.iD)("div",{key:0,class:"vuecal__event-delete",onClick:t[0]||(t[0]=(0,a.iM)(((...e)=>l.deleteEvent&&l.deleteEvent(...e)),["stop"])),onTouchstart:t[1]||(t[1]=(0,a.iM)(((...e)=>l.touchDeleteEvent&&l.touchDeleteEvent(...e)),["stop"]))},(0,k.zw)(l.vuecal.texts.deleteEvent),33)):(0,m.kq)("",!0),(0,m.WI)(e.$slots,"event",{event:s.event,view:l.view.id}),l.resizable?((0,m.wg)(),(0,m.iD)("div",{key:1,class:"vuecal__event-resize-handle",contenteditable:"false",onMousedown:t[2]||(t[2]=(0,a.iM)(((...e)=>l.onResizeHandleMouseDown&&l.onResizeHandleMouseDown(...e)),["stop","prevent"])),onTouchstart:t[3]||(t[3]=(0,a.iM)(((...e)=>l.onResizeHandleMouseDown&&l.onResizeHandleMouseDown(...e)),["stop","prevent"]))},null,32)):(0,m.kq)("",!0)],46,Dr)}var Tr={inject:["vuecal","utils","modules","view","domEvents","editEvents"],props:{cellFormattedDate:{type:String,default:""},event:{type:Object,default:()=>({})},cellEvents:{type:Array,default:()=>[]},cellOverlaps:{type:Object,default:()=>({})},allOverlaps:{type:Object,default:()=>({})},eventPosition:{type:Number,default:0},overlapsStreak:{type:Number,default:0},allDay:{type:Boolean,default:!1}},data:()=>({touch:{dragThreshold:30,startX:0,startY:0,dragged:!1}}),methods:{onMouseDown(e,t=!1){let s;if("BUTTON"==e.target.nodeName?s=e.target:"IMG"==e.srcElement.nodeName&&(s=e.target.parentElement),s?.classList?.contains("v-btn__content")||"BUTTON"==e?.target?.nodeName)return void e.preventDefault();if("ontouchstart"in window&&!t)return!1;const{clickHoldAnEvent:a,focusAnEvent:i,resizeAnEvent:n,dragAnEvent:l}=this.domEvents;if(i._eid===this.event._eid&&a._eid===this.event._eid)return!0;this.focusEvent(),a._eid=null,this.vuecal.editEvents.delete&&this.event.deletable&&(a.timeoutId=setTimeout((()=>{n._eid||l._eid||(a._eid=this.event._eid,this.event.deleting=!0)}),a.timeout))},onMouseUp(e){this.domEvents.focusAnEvent._eid!==this.event._eid||this.touch.dragged||(this.domEvents.focusAnEvent.mousedUp=!0),this.touch.dragged=!1},onMouseEnter(e){e.preventDefault(),this.vuecal.emitWithEvent("event-mouse-enter",this.event)},onMouseLeave(e){e.preventDefault(),this.vuecal.emitWithEvent("event-mouse-leave",this.event)},onTouchMove(e){if("function"!==typeof this.vuecal.onEventClick)return;const{clientX:t,clientY:s}=e.touches[0],{startX:a,startY:i,dragThreshold:n}=this.touch;(Math.abs(t-a)>n||Math.abs(s-i)>n)&&(this.touch.dragged=!0)},onTouchStart(e){this.touch.startX=e.touches[0].clientX,this.touch.startY=e.touches[0].clientY,this.onMouseDown(e,!0)},onEnterKeypress(e){if("function"===typeof this.vuecal.onEventClick)return this.vuecal.onEventClick(this.event,e)},onDblClick(e){if("function"===typeof this.vuecal.onEventDblclick)return this.vuecal.onEventDblclick(this.event,e)},onDragStart(e){"blocker"!=this.event.type&&"non-working-hours"!=this.event.type&&"office365_blocker"!=this.event.type&&(this.event.draggingStatic=!1,this.dnd&&this.dnd.eventDragStart(e,this.event))},onDragEnd(){this.dnd&&this.dnd.eventDragEnd(this.event)},onResizeHandleMouseDown(){this.focusEvent(),this.domEvents.dragAnEvent._eid=null,this.domEvents.resizeAnEvent=Object.assign(this.domEvents.resizeAnEvent,{_eid:this.event._eid,start:(this.segment||this.event).start,split:this.event.split||null,segment:!!this.segment&&this.utils.date.formatDateLite(this.segment.start),originalEnd:new Date((this.segment||this.event).end),originalEndTimeMinutes:this.event.endTimeMinutes}),this.event.resizing=!0},deleteEvent(e=!1){if("ontouchstart"in window&&!e)return!1;this.utils.event.deleteAnEvent(this.event)},touchDeleteEvent(e){this.deleteEvent(!0)},cancelDeleteEvent(){this.event.deleting=!1},focusEvent(){const{focusAnEvent:e}=this.domEvents,t=e._eid;if(t!==this.event._eid){if(t){const e=this.view.events.find((e=>e._eid===t));e&&(e.focused=!1)}this.vuecal.cancelDelete(),this.vuecal.emitWithEvent("event-focus",this.event),e._eid=this.event._eid,this.event.focused=!0}}},computed:{eventDimensions(){const{startTimeMinutes:e,endTimeMinutes:t}=this.segment||this.event;let s=e-this.vuecal.timeFrom;const a=Math.max(Math.round(s*this.vuecal.timeCellHeight/this.vuecal.timeStep),0);s=Math.min(t,this.vuecal.timeTo)-this.vuecal.timeFrom;const i=Math.round(s*this.vuecal.timeCellHeight/this.vuecal.timeStep),n=Math.max(i-a,5);return{top:a,height:n}},eventStyles(){if(this.event.allDay||!this.vuecal.time||!this.event.endTimeMinutes||"month"===this.view.id||this.allDay)return{};let e=100-10*this.eventPosition,t=5*this.eventPosition,s=10*(this.eventPosition+1),a=this.event.master_task_color;if(Array.isArray(this.cellOverlaps.sameOverlaps)&&this.cellOverlaps.sameOverlaps.length){const s=this.cellOverlaps.sameOverlaps.length+1,a=this.cellOverlaps.overlaps.filter((e=>{if(!this.cellOverlaps.sameOverlaps.includes(e)&&this.allOverlaps[this.event._eid].position>this.allOverlaps[e].position)return e}));e=100/s-5,t=100/s*(this.eventPosition-a.length)+5*(this.eventPosition-a.length)/s,a.length&&(e-=a.length*(10/s),t+=5*a.length-10*a.length/s*(this.eventPosition-a.length))}this.vuecal.minEventWidth&&e({})},editEvents:{type:Object,required:!0},data:{type:Object,required:!0},cellSplits:{type:Array,default:()=>[]},minTimestamp:{type:[Number,null],default:null},maxTimestamp:{type:[Number,null],default:null},cellWidth:{type:[Number,Boolean],default:!1},allDay:{type:Boolean,default:!1}},data:()=>({tmUtils:A.Z,cellOverlaps:{},cellOverlapsStreak:1,timeAtCursor:null,highlighted:!1,highlightedSplit:null}),methods:{getSplitAtCursor({target:e}){const t=e.classList.contains("vuecal__cell-split");let s=t?e:this.vuecal.findAncestor(e,"vuecal__cell-split");return s&&(s=s.attributes["data-split"].value,parseInt(s).toString()===s.toString()&&(s=parseInt(s))),s||null},splitClasses(e){return{"vuecal__cell-split":!0,"vuecal__cell-split--highlighted":this.highlightedSplit===e.id,"vuecal__cell-split--weekend":e.isWeekend,[e.class]:!!e.class}},checkCellOverlappingEvents(){this.options.time&&this.eventsCount&&!this.splitsCount&&(1===this.eventsCount?(this.cellOverlaps=[],this.cellOverlapsStreak=1):[this.cellOverlaps,this.cellOverlapsStreak]=this.utils.event.checkCellOverlappingEvents(this.events,this.options))},isDOMElementAnEvent(e){return this.vuecal.isDOMElementAnEvent(e)},selectCell(e,t=!1){const s=this.splitsCount?this.getSplitAtCursor(e):null;this.utils.cell.selectCell(t,this.timeAtCursor,s),this.timeAtCursor=null},onCellkeyPressEnter(e){this.isSelected||this.onCellFocus(e);const t=this.splitsCount?this.getSplitAtCursor(e):null;this.utils.cell.keyPressEnterCell(this.timeAtCursor,t),this.timeAtCursor=null},onCellFocus(e){if(!this.isSelected&&!this.isDisabled){this.isSelected=this.data.startDate;const t=this.splitsCount?this.getSplitAtCursor(e):null,s=this.timeAtCursor||this.data.startDate;this.vuecal.$emit("cell-focus",t?{date:s,split:t}:s)}},onCellMouseDown(e,t=null,s=!1){if("ontouchstart"in window&&!s)return!1;this.isSelected||this.onCellFocus(e);const{clickHoldACell:a,focusAnEvent:i}=this.domEvents;this.domEvents.cancelClickEventCreation=!1,a.eventCreated=!1,this.timeAtCursor=new Date(this.data.startDate);const{minutes:n,cursorCoords:{y:l}}=this.vuecal.minutesAtCursor(e);this.timeAtCursor.setMinutes(n);const o=this.isDOMElementAnEvent(e.target);!o&&i._eid&&((this.view.events.find((e=>e._eid===i._eid))||{}).focused=!1),this.editEvents.create&&!o&&this.setUpEventCreation(e,l)},setUpEventCreation(e,t){if(this.options.dragToCreateEvent&&["week","day"].includes(this.view.id)){const{dragCreateAnEvent:s}=this.domEvents;if(s.startCursorY=t,s.split=this.splitsCount?this.getSplitAtCursor(e):null,s.start=this.timeAtCursor,this.options.snapToTime){let e=60*this.timeAtCursor.getHours()+this.timeAtCursor.getMinutes();const t=e+this.options.snapToTime/2;e=t-t%this.options.snapToTime,s.start.setHours(0,e,0,0)}}else this.options.cellClickHold&&["month","week","day"].includes(this.view.id)&&this.setUpCellHoldTimer(e)},setUpCellHoldTimer(e){const{clickHoldACell:t}=this.domEvents;t.cellId=`${this.vuecal._.uid}_${this.data.formattedDate}`,t.split=this.splitsCount?this.getSplitAtCursor(e):null,t.timeoutId=setTimeout((()=>{if(t.cellId&&!this.domEvents.cancelClickEventCreation){const{_eid:e}=this.utils.event.createAnEvent(this.timeAtCursor,null,t.split?{split:t.split}:{});t.eventCreated=e}}),t.timeout)},onCellTouchStart(e,t=null){this.onCellMouseDown(e,t,!0)},onCellClick(e,t){const s=e.target.querySelectorAll(".non-working-event"),a=e.target.offsetHeight,i=s?.[0]?.offsetHeight||950,n=s?.[1]?.offsetHeight||1700;if(e.offsetY>i&&e.offsetY{this.$events.emit("add-timeblock",{id:null,start:A.Z.formatDateTimeForBackend(s),end:A.Z.formatDateTimeForBackend(a)})}),150)}this.isDOMElementAnEvent(e.target)||this.selectCell(e)},onCellDblClick(e){const t=new Date(this.data.startDate);t.setMinutes(this.vuecal.minutesAtCursor(e).minutes);const s=this.splitsCount?this.getSplitAtCursor(e):null;this.vuecal.$emit("cell-dblclick",s?{date:t,split:s}:t),this.options.dblclickToNavigate&&this.vuecal.switchToNarrowerView()},onCellContextMenu(e){e.stopPropagation(),e.preventDefault();const t=new Date(this.data.startDate),{cursorCoords:s,minutes:a}=this.vuecal.minutesAtCursor(e);t.setMinutes(a);const i=this.splitsCount?this.getSplitAtCursor(e):null;this.vuecal.$emit("cell-contextmenu",{date:t,...s,...i||{},e:e})}},computed:{...(0,U.Se)("auth",["user"]),dnd(){return this.modules.dnd},nowInMinutes(){return this.utils.date.dateToMinutes(this.vuecal.now)},isBeforeMinDate(){return null!==this.minTimestamp&&this.minTimestamp>this.data.endDate.getTime()},isAfterMaxDate(){return this.maxTimestamp&&this.maxTimestamp{let{from:t,to:s}=e;return t=Math.max(t,this.options.timeFrom),s=Math.min(s,this.options.timeTo),{...e,height:(s-t)*this.timeScale,top:(t-this.options.timeFrom)*this.timeScale}}))},events(){const{startDate:e,endDate:t}=this.data;let s=[];if(!["years","year"].includes(this.view.id)||this.options.eventsCountOnYearView){if(s=this.view.events.slice(0),"month"===this.view.id&&s.push(...this.view.outOfScopeEvents),s=s.filter((s=>this.utils.event.eventInRange(s,e,t))),this.options.showAllDayEvents&&"month"!==this.view.id&&(s=s.filter((e=>!!e.allDay===this.allDay))),this.options.time&&this.isWeekOrDayView&&!this.allDay){const{timeFrom:e,timeTo:t}=this.options;s=s.filter((s=>{const a=s.daysCount>1&&s.segments[this.data.formattedDate]||{},i=1===s.daysCount&&s.startTimeMinutese,n=s.daysCount>1&&a.startTimeMinutese,l=!1;return s.allDay||i||n||l}))}!this.options.time||!this.isWeekOrDayView||this.options.showAllDayEvents&&this.allDay||s.sort(((e,t)=>e.start{const s=this.events.filter((t=>t.split===e.id)),[a,i]=this.utils.event.checkCellOverlappingEvents(s.filter((e=>!e.background&&!e.allDay)),this.options);return{...e,overlaps:a,overlapsStreak:i,events:s}}))},splitsCount(){return this.splits.length},cellClasses(){return{[this.data.class]:!!this.data.class,"vuecal__cell--current":this.data.current,"vuecal__cell--today":this.data.today,"vuecal__cell--out-of-scope":this.data.outOfScope,"vuecal__cell--before-min":this.isDisabled&&this.isBeforeMinDate,"vuecal__cell--after-max":this.isDisabled&&this.isAfterMaxDate,"vuecal__cell--disabled":this.isDisabled,"vuecal__cell--selected":this.isSelected,"vuecal__cell--highlighted":this.highlighted,"vuecal__cell--has-splits":this.splitsCount,"vuecal__cell--has-events":this.eventsCount}},cellStyles(){return{...this.cellWidth?{width:`${this.cellWidth}%`}:{}}},timelineVisible(){const{time:e,timeTo:t}=this.options;return this.data.today&&this.isWeekOrDayView&&e&&!this.allDay&&this.nowInMinutes<=t},todaysTimePosition(){if(!this.data.today||!this.options.time)return;const e=this.nowInMinutes-this.options.timeFrom;return Math.round(e*this.timeScale)},timeScale(){return this.options.timeCellHeight/this.options.timeStep}}};const Er=(0,$.Z)(jr,[["render",yr]]);var xr=Er,Wr={inject:["vuecal","view","editEvents"],components:{"vuecal-cell":xr},props:{options:{type:Object,required:!0},cells:{type:Array,required:!0},label:{type:String,required:!0},daySplits:{type:Array,default:()=>[]},shortEvents:{type:Boolean,default:!0},height:{type:String,default:""},cellOrSplitMinWidth:{type:Number,default:null}},computed:{hasCellOrSplitWidth(){return!!(this.options.minCellWidth||this.daySplits.length&&this.options.minSplitWidth)}}};const Sr=(0,$.Z)(Wr,[["render",kr]]);var Or=Sr,Vr=s(15941);const zr=1440,Ar={weekDays:Array(7).fill(""),weekDaysShort:[],months:Array(12).fill(""),years:"",year:"",month:"",week:"",day:"",today:"",noEvent:"",allDay:"",deleteEvent:"",createEvent:"",dateFormat:"dddd MMMM D, YYYY",am:"am",pm:"pm"},Ur=["years","year","month","week","day"],Hr=new Ao(Ar);var Zr={name:"vue-cal",components:{"vuecal-cell":xr,"vuecal-header":pr,WeekdaysHeadings:cr,AllDayBar:Or},provide(){return{vuecal:this,utils:this.utils,modules:this.modules,previous:this.previous,next:this.next,switchView:this.switchView,updateSelectedDate:this.updateSelectedDate,editEvents:this.editEvents,view:this.view,domEvents:this.domEvents}},props:{activeView:{type:String,default:"week"},scrollToHour:{type:Number,default:0},allDayBarHeight:{type:[String,Number],default:"25px"},cellClickHold:{type:Boolean,default:!0},cellContextmenu:{type:Boolean,default:!1},clickToNavigate:{type:Boolean,default:!1},dblclickToNavigate:{type:Boolean,default:!0},disableDatePrototypes:{type:Boolean,default:!1},disableDays:{type:Array,default:()=>[]},disableViews:{type:Array,default:()=>[]},dragToCreateEvent:{type:Boolean,default:!0},dragToCreateThreshold:{type:Number,default:15},editableEvents:{type:[Boolean,Object],default:!1},unscheduledTime:{type:Array,default:[]},events:{type:Array,default:()=>[]},eventsCountOnYearView:{type:Boolean,default:!1},eventsOnMonthView:{type:[Boolean,String],default:!1},hideBody:{type:Boolean,default:!1},hideTitleBar:{type:Boolean,default:!1},hideViewSelector:{type:Boolean,default:!1},hideWeekdays:{type:Array,default:()=>[]},hideWeekends:{type:Boolean,default:!1},locale:{type:[String,Object],default:"en"},maxDate:{type:[String,Date],default:""},minCellWidth:{type:Number,default:0},minDate:{type:[String,Date],default:""},minEventWidth:{type:Number,default:0},minSplitWidth:{type:Number,default:0},onEventClick:{type:[Function,null],default:null},onEventCreate:{type:[Function,null],default:null},onEventDblclick:{type:[Function,null],default:null},overlapsPerTimeStep:{type:Boolean,default:!1},resizeX:{type:Boolean,default:!1},selectedDate:{type:[String,Date],default:""},showAllDayEvents:{type:[Boolean,String],default:!1},showTimeInCells:{type:Boolean,default:!1},showWeekNumbers:{type:[Boolean,String],default:!1},snapToTime:{type:Number,default:0},small:{type:Boolean,default:!1},specialHours:{type:Object,default:()=>({})},splitDays:{type:Array,default:()=>[]},startWeekOnSunday:{type:Boolean,default:!1},stickySplitLabels:{type:Boolean,default:!1},time:{type:Boolean,default:!0},timeCellHeight:{type:Number,default:40},timeFormat:{type:String,default:""},timeFrom:{type:Number,default:0},timeStep:{type:Number,default:60},timeTo:{type:Number,default:zr},todayButton:{type:Boolean,default:!1},transitions:{type:Boolean,default:!0},twelveHour:{type:Boolean,default:!1},watchRealTime:{type:Boolean,default:!1},xsmall:{type:Boolean,default:!1}},data(){return{ready:!1,texts:{...Ar},utils:{date:!!this.disableDatePrototypes&&Hr.removePrototypes()||Hr,cell:null,event:null},modules:{dnd:null},cellsEl:null,view:{id:"",title:"",startDate:null,endDate:null,firstCellDate:null,lastCellDate:null,selectedDate:null,events:[]},eventIdIncrement:1,now:new Date,timeTickerIds:[null,null],domEvents:{resizeAnEvent:{_eid:null,start:null,split:null,segment:null,originalEndTimeMinutes:0,originalEnd:null,end:null,startCell:null,endCell:null},dragAnEvent:{_eid:null},dragCreateAnEvent:{startCursorY:null,start:null,split:null,event:null},focusAnEvent:{_eid:null,mousedUp:!1},clickHoldAnEvent:{_eid:null,timeout:1200,timeoutId:null},dblTapACell:{taps:0,timeout:500},clickHoldACell:{cellId:null,split:null,timeout:1200,timeoutId:null,eventCreated:!1},cancelClickEventCreation:!1},mutableEvents:[],transitionDirection:"right"}},methods:{async loadLocale(e){if("object"===typeof this.locale)return this.texts=Object.assign({},Ar,e),void this.utils.date.updateTexts(this.texts);if("en"===this.locale){const e=await s.e(3320).then(s.t.bind(s,3320,19));this.texts=Object.assign({},Ar,e)}else s(66667)(`./${e}.json`).then((e=>{this.texts=Object.assign({},Ar,e.default),this.utils.date.updateTexts(this.texts)}))},loadDragAndDrop(){s.e(1466).then(s.bind(s,91466)).then((e=>{const{DragAndDrop:t}=e;this.modules.dnd=new t(this)})).catch((()=>Vr.warn("Vue Cal: Missing drag & drop module.")))},validateView(e){return Ur.includes(e)||(Vr.error(`Vue Cal: invalid active-view parameter provided: "${e}".\nA valid view must be one of: ${Ur.join(", ")}.`),e="week"),this.enabledViews.includes(e)||(Vr.warn(`Vue Cal: the provided active-view "${e}" is disabled. Using the "${this.enabledViews[0]}" view instead.`),e=this.enabledViews[0]),e},switchToNarrowerView(e=null){this.transitionDirection="right";const t=this.enabledViews[this.enabledViews.indexOf(this.view.id)+1];t&&this.switchView(t,e)},switchView(e,t=null,s=!1){e=this.validateView(e);const a=this.utils.date,i=this.view.startDate&&this.view.startDate.getTime();if(this.transitions&&s){if(this.view.id===e)return;const t=this.enabledViews;this.transitionDirection=t.indexOf(this.view.id)>t.indexOf(e)?"left":"right"}const n=this.view.id;switch(this.view.events=[],this.view.id=e,this.view.firstCellDate=null,this.view.lastCellDate=null,t||(t=this.view.selectedDate||this.view.startDate),e){case"years":this.view.startDate=new Date(25*Math.floor(t.getFullYear()/25)||2e3,0,1),this.view.endDate=new Date(this.view.startDate.getFullYear()+25,0,1),this.view.endDate.setSeconds(-1);break;case"year":this.view.startDate=new Date(t.getFullYear(),0,1),this.view.endDate=new Date(t.getFullYear()+1,0,1),this.view.endDate.setSeconds(-1);break;case"month":{this.view.startDate=new Date(t.getFullYear(),t.getMonth(),1),this.view.endDate=new Date(t.getFullYear(),t.getMonth()+1,1),this.view.endDate.setSeconds(-1);let e=new Date(this.view.startDate);if(e.getDay()!==(this.startWeekOnSunday?0:1)&&(e=a.getPreviousFirstDayOfWeek(e,this.startWeekOnSunday)),this.view.firstCellDate=e,this.view.lastCellDate=a.addDays(e,41),this.view.lastCellDate.setHours(23,59,59,0),this.hideWeekends){if([0,6].includes(this.view.firstCellDate.getDay())){const e=6!==this.view.firstCellDate.getDay()||this.startWeekOnSunday?1:2;this.view.firstCellDate=a.addDays(this.view.firstCellDate,e)}if([0,6].includes(this.view.startDate.getDay())){const e=6===this.view.startDate.getDay()?2:1;this.view.startDate=a.addDays(this.view.startDate,e)}if([0,6].includes(this.view.lastCellDate.getDay())){const e=0!==this.view.lastCellDate.getDay()||this.startWeekOnSunday?1:2;this.view.lastCellDate=a.subtractDays(this.view.lastCellDate,e)}if([0,6].includes(this.view.endDate.getDay())){const e=0===this.view.endDate.getDay()?2:1;this.view.endDate=a.subtractDays(this.view.endDate,e)}}break}case"week":{t=a.getPreviousFirstDayOfWeek(t,this.startWeekOnSunday);const e=this.hideWeekends?5:7;this.view.startDate=this.hideWeekends&&this.startWeekOnSunday?a.addDays(t,1):t,this.view.startDate.setHours(0,0,0,0),this.view.endDate=a.addDays(t,e),this.view.endDate.setSeconds(-1);break}case"day":this.view.startDate=t,this.view.startDate.setHours(0,0,0,0),this.view.endDate=new Date(t),this.view.endDate.setHours(23,59,59,0);break}this.addEventsToView();const l=this.view.startDate&&this.view.startDate.getTime();if((n!==e||l!==i)&&(this.$emit("update:activeView",e),this.ready)){const t=this.view.startDate,s={view:e,startDate:t,endDate:this.view.endDate,...this.isMonthView?{firstCellDate:this.view.firstCellDate,lastCellDate:this.view.lastCellDate,outOfScopeEvents:this.view.outOfScopeEvents.map(this.cleanupEvent)}:{},events:this.view.events.map(this.cleanupEvent),...this.isWeekView?{week:a.getWeek(this.startWeekOnSunday?a.addDays(t,1):t)}:{}};this.$refs["vuecal_scroll"].scrollTop=this.scrollToHour*this.timeCellHeight,this.$emit("view-change",s)}},previous(){this.previousNext(!1)},next(){this.previousNext()},previousNext(e=!0){const t=this.utils.date;this.transitionDirection=e?"right":"left";const s=e?1:-1;let a=null;const{startDate:i,id:n}=this.view;switch(n){case"years":a=new Date(i.getFullYear()+25*s,0,1);break;case"year":a=new Date(i.getFullYear()+1*s,1,1);break;case"month":a=new Date(i.getFullYear(),i.getMonth()+1*s,1);break;case"week":a=t[e?"addDays":"subtractDays"](t.getPreviousFirstDayOfWeek(i,this.startWeekOnSunday),7);break;case"day":a=t[e?"addDays":"subtractDays"](i,1);const n=a.getDay(),l=this.startWeekOnSunday?n:(n||7)-1,o=this.weekDays[l].hide;if(o){const s=this.weekDays.map(((e,t)=>({...e,i:t})));let i=null,n=0;e?(i=[...s.slice(l),...s].find((e=>(n++,!e.hide))).i,n--):i=[...s,...s.slice(0,l)].reverse().find((e=>(n++,!e.hide))).i,a=t[e?"addDays":"subtractDays"](a,n)}break}a&&this.switchView(n,a)},addEventsToView(e=[]){const t=this.utils.event,{startDate:s,endDate:a,firstCellDate:i,lastCellDate:n}=this.view;if(e.length||(this.view.events=[]),e=e.length?e:[...this.mutableEvents],!e||this.isYearsOrYearView&&!this.eventsCountOnYearView)return;let l=e.filter((e=>t.eventInRange(e,s,a)));this.isYearsOrYearView||this.isMonthView&&!this.eventsOnMonthView||(l=l.map((e=>e.daysCount>1?t.createEventSegments(e,i||s,n||a):e))),this.view.events.push(...l),this.isMonthView&&(this.view.outOfScopeEvents=[],e.forEach((e=>{(t.eventInRange(e,i,s)||t.eventInRange(e,a,n))&&(this.view.events.some((t=>t._eid===e._eid))||this.view.outOfScopeEvents.push(e))})))},findAncestor(e,t){while((e=e.parentElement)&&!e.classList.contains(t));return e},isDOMElementAnEvent(e){return e.classList.contains("vuecal__event")||this.findAncestor(e,"vuecal__event")},onMouseMove(e){const{resizeAnEvent:t,dragAnEvent:s,dragCreateAnEvent:a}=this.domEvents;(null!==t._eid||null!==s._eid||a.start)&&(e.preventDefault(),t._eid?this.eventResizing(e):this.dragToCreateEvent&&a.start&&this.eventDragCreation(e))},onMouseUp(e){const{focusAnEvent:t,resizeAnEvent:s,clickHoldAnEvent:a,clickHoldACell:i,dragCreateAnEvent:n}=this.domEvents,{_eid:l}=a,{_eid:o}=s;let r=!1;const{event:d,start:u}=n,c=this.isDOMElementAnEvent(e.target),m=t.mousedUp;if(t.mousedUp=!1,c&&(this.domEvents.cancelClickEventCreation=!0),i.eventCreated)return;if(o){const{originalEnd:e,originalEndTimeMinutes:t,endTimeMinutes:a}=s,i=this.view.events.find((e=>e._eid===s._eid));if(r=a&&a!==t,i&&i.end.getTime()!==e.getTime()){const t=this.mutableEvents.find((e=>e._eid===s._eid));t.endTimeMinutes=i.endTimeMinutes,t.end=i.end;const a=this.cleanupEvent(i),n={...this.cleanupEvent(i),end:e,endTimeMinutes:i.originalEndTimeMinutes};this.$emit("event-duration-change",{event:a,oldDate:s.originalEnd,originalEvent:n}),this.$emit("event-change",{event:a,originalEvent:n})}i&&(i.resizing=!1),s._eid=null,s.start=null,s.split=null,s.segment=null,s.originalEndTimeMinutes=null,s.originalEnd=null,s.endTimeMinutes=null,s.startCell=null,s.endCell=null}else u&&(d&&(this.emitWithEvent("event-drag-create",d),n.event.resizing=!1),n.start=null,n.split=null,n.event=null);c||o||this.unfocusEvent(),a.timeoutId&&!l&&(clearTimeout(a.timeoutId),a.timeoutId=null),i.timeoutId&&(clearTimeout(i.timeoutId),i.timeoutId=null);const h="function"===typeof this.onEventClick;if(m&&!r&&!l&&!d&&h){let s=this.view.events.find((e=>e._eid===t._eid));return!s&&this.isMonthView&&(s=this.view.outOfScopeEvents.find((e=>e._eid===t._eid))),s&&this.onEventClick(s,e)}},onKeyUp(e){27===e.keyCode&&this.cancelDelete()},eventResizing(e){const{resizeAnEvent:t}=this.domEvents,s=this.view.events.find((e=>e._eid===t._eid))||{segments:{}},{minutes:a,cursorCoords:i}=this.minutesAtCursor(e),n=s.segments&&s.segments[t.segment],{date:l,event:o}=this.utils,r=Math.max(a,this.timeFrom+1,(n||s).startTimeMinutes+1);if(s.endTimeMinutes=t.endTimeMinutes=r,this.snapToTime){const e=s.endTimeMinutes+this.snapToTime/2;s.endTimeMinutes=e-e%this.snapToTime}if(n&&(n.endTimeMinutes=s.endTimeMinutes),s.end.setHours(0,s.endTimeMinutes,s.endTimeMinutes===zr?-1:0,0),this.resizeX&&this.isWeekView){s.daysCount=l.countDays(s.start,s.end);const e=this.cellsEl,a=e.offsetWidth/e.childElementCount,n=Math.floor(i.x/a);if(null===t.startCell&&(t.startCell=n-(s.daysCount-1)),t.endCell!==n){t.endCell=n;const e=l.addDays(s.start,n-t.startCell),a=Math.max(l.countDays(s.start,e),1);if(a!==s.daysCount){let e=null;e=a>s.daysCount?o.addEventSegment(s):o.removeEventSegment(s),t.segment=e,s.endTimeMinutes+=.001}}}this.$emit("event-resizing",{_eid:s._eid,end:s.end,endTimeMinutes:s.endTimeMinutes})},eventDragCreation(e){const{dragCreateAnEvent:t}=this.domEvents,{start:s,startCursorY:a,split:i}=t,n=new Date(s),{minutes:l,cursorCoords:{y:o}}=this.minutesAtCursor(e);if(t.event||!(Math.abs(a-o)s._eid===(e._eid||t._eid)));e._eid=null,t._eid=null,s&&(s.focused=!1,s.deleting=!1)},cancelDelete(){const{clickHoldAnEvent:e}=this.domEvents;if(e._eid){const t=this.view.events.find((t=>t._eid===e._eid));t&&(t.deleting=!1),e._eid=null,e.timeoutId=null}},onEventTitleBlur(e,t){if(t.title===e.target.innerHTML)return;const s=t.title;t.title=e.target.innerHTML;const a=this.cleanupEvent(t);this.$emit("event-title-change",{event:a,oldTitle:s}),this.$emit("event-change",{event:a,originalEvent:{...a,title:s}})},updateMutableEvents(){const e=this.utils.date;this.mutableEvents=[],this.events.forEach((t=>{const s="string"===typeof t.start?e.stringToDate(t.start):t.start,a=e.formatDateLite(s),i=e.dateToMinutes(s);let n=null;"string"===typeof t.end&&t.end.includes("24:00")?(n=new Date(t.end.replace(" 24:00","")),n.setHours(23,59,59,0)):n="string"===typeof t.end?e.stringToDate(t.end):t.end;let l=e.formatDateLite(n),o=e.dateToMinutes(n);o&&o!==zr||(!this.time||"string"===typeof t.end&&10===t.end.length?n.setHours(23,59,59,0):n.setSeconds(n.getSeconds()-1),l=e.formatDateLite(n),o=zr);const r=a!==l;t=Object.assign({...this.utils.event.eventDefaults},t,{_eid:`${this._.uid}_${this.eventIdIncrement++}`,segments:r?{}:null,start:s,startTimeMinutes:i,end:n,endTimeMinutes:o,daysCount:r?e.countDays(s,n):1,class:t.class}),this.mutableEvents.push(t)}))},minutesAtCursor(e){return this.utils.cell.minutesAtCursor(e)},createEvent(e,t,s={}){return this.utils.event.createAnEvent(e,t,s)},cleanupEvent(e){e={...e};const t=["segments","deletable","deleting","titleEditable","resizable","resizing","draggable","dragging","draggingStatic","focused"];return t.forEach((t=>{t in e&&delete e[t]})),e.repeat||delete e.repeat,e},emitWithEvent(e,t){this.$emit(e,this.cleanupEvent(t))},updateSelectedDate(e){if(e=e&&"string"===typeof e?this.utils.date.stringToDate(e):new Date(e),e&&e instanceof Date){const{selectedDate:t}=this.view;t&&(this.transitionDirection=t.getTime()>e.getTime()?"left":"right"),e.setHours(0,0,0,0),t&&t.getTime()===e.getTime()||(this.view.selectedDate=e),this.switchView(this.view.id)}this.$emit("update:selected-date",this.view.selectedDate)},getWeekNumber(e){const t=this.utils.date,s=this.firstCellDateWeekNumber,a=s+e,i=this.startWeekOnSunday?1:0;return a>52?t.getWeek(t.addDays(this.view.firstCellDate,7*e+i)):a},timeTick(){this.now=new Date,this.timeTickerIds[1]=setTimeout(this.timeTick,6e4)},updateDateTexts(){this.utils.date.updateTexts(this.texts)},alignWithScrollbar(){},cellOrSplitHasEvents(e,t=null){return e.length&&(!t&&e.length||t&&e.some((e=>e.split===t.id)))}},created(){this.utils.cell=new Ho(this),this.utils.event=new Lo(this,this.utils.date),this.loadLocale(this.locale),this.editEvents.drag&&this.loadDragAndDrop(),this.updateMutableEvents(this.events),this.view.id=this.currentView,this.selectedDate?this.updateSelectedDate(this.selectedDate):(this.view.selectedDate=new Date,this.switchView(this.currentView)),this.time&&this.watchRealTime&&(this.timeTickerIds[0]=setTimeout(this.timeTick,1e3*(60-this.now.getSeconds())))},mounted(){const e=this.utils.date,t="ontouchstart"in window,{resize:s,drag:a,create:i,delete:n,title:l}=this.editEvents,o=this.onEventClick&&"function"===typeof this.onEventClick;(s||a||i||n||l||o)&&window.addEventListener(t?"touchend":"mouseup",this.onMouseUp),(s||a||i&&this.dragToCreateEvent)&&window.addEventListener(t?"touchmove":"mousemove",this.onMouseMove,{passive:!1}),l&&window.addEventListener("keyup",this.onKeyUp),t&&(this.$refs.vuecal.oncontextmenu=function(e){e.preventDefault(),e.stopPropagation()});const r=this.view.startDate,d={view:this.view.id,startDate:r,endDate:this.view.endDate,...this.isMonthView?{firstCellDate:this.view.firstCellDate,lastCellDate:this.view.lastCellDate}:{},events:this.view.events.map(this.cleanupEvent),...this.isWeekView?{week:e.getWeek(this.startWeekOnSunday?e.addDays(r,1):r)}:{}};this.$refs["vuecal_scroll"].addEventListener("scroll",(()=>{this.$refs["vuecal_splits_heading"].style.top=`${this.$refs["vuecal_scroll"].scrollTop}px`})),this.viewportTimelineOffset=this.$refs["vuecal_scroll"].getBoundingClientRect().top,this.$refs["vuecal_scroll"].scrollTop=this.scrollToHour*this.timeCellHeight,this.$emit("ready",d),this.ready=!0},beforeUnmount(){const e="ontouchstart"in window;window.removeEventListener(e?"touchmove":"mousemove",this.onMouseMove,{passive:!1}),window.removeEventListener(e?"touchend":"mouseup",this.onMouseUp),window.removeEventListener("keyup",this.onKeyUp),this.timeTickerIds[0]&&clearTimeout(this.timeTickerIds[0]),this.timeTickerIds[1]&&clearTimeout(this.timeTickerIds[1]),this.timeTickerIds=[null,null]},computed:{editEvents(){return this.editableEvents&&"object"===typeof this.editableEvents?{title:!!this.editableEvents.title,drag:!!this.editableEvents.drag,resize:!!this.editableEvents.resize,create:!!this.editableEvents.create,delete:!!this.editableEvents.delete}:{title:!!this.editableEvents,drag:!!this.editableEvents,resize:!!this.editableEvents,create:!!this.editableEvents,delete:!!this.editableEvents}},views(){return{years:{label:this.texts.years,enabled:!this.disableViews.includes("years")},year:{label:this.texts.year,enabled:!this.disableViews.includes("year")},month:{label:this.texts.month,enabled:!this.disableViews.includes("month")},week:{label:this.texts.week,enabled:!this.disableViews.includes("week")},day:{label:this.texts.day,enabled:!this.disableViews.includes("day")}}},currentView(){return this.validateView(this.activeView)},enabledViews(){return Object.keys(this.views).filter((e=>this.views[e].enabled))},hasTimeColumn(){return this.time&&this.isWeekOrDayView},isShortMonthView(){return this.isMonthView&&"short"===this.eventsOnMonthView},firstCellDateWeekNumber(){const e=this.utils.date,t=this.view.firstCellDate;return e.getWeek(this.startWeekOnSunday?e.addDays(t,1):t)},timeCells(){const e=[];for(let t=this.timeFrom,s=this.timeTo;t!e.hide))||[]).map(((e,t)=>({...e,id:e.id||t+1})))},hasSplits(){return this.daySplits.length&&this.isWeekOrDayView},hasShortEvents(){return"short"===this.showAllDayEvents},cellOrSplitMinWidth(){let e=null;return this.hasSplits&&this.minSplitWidth?e=this.visibleDaysCount*this.minSplitWidth*this.daySplits.length:this.minCellWidth&&this.isWeekView&&(e=this.visibleDaysCount*this.minCellWidth),e},allDayBar(){let e=this.allDayBarHeight||null;return e&&!isNaN(e)&&(e+="px"),{cells:this.viewCells,options:this.$props,label:this.texts.allDay,shortEvents:this.hasShortEvents,daySplits:this.hasSplits&&this.daySplits||[],cellOrSplitMinWidth:this.cellOrSplitMinWidth,height:e}},minTimestamp(){let e=null;return this.minDate&&"string"===typeof this.minDate?e=this.utils.date.stringToDate(this.minDate):this.minDate&&this.minDate instanceof Date&&(e=this.minDate),e?e.getTime():null},maxTimestamp(){let e=null;return this.maxDate&&"string"===typeof this.maxDate?e=this.utils.date.stringToDate(this.maxDate):this.maxDate&&this.minDate instanceof Date&&(e=this.maxDate),e?e.getTime():null},weekDays(){let{weekDays:e,weekDaysShort:t=[]}=this.texts;return e=e.slice(0).map(((e,s)=>({label:e,...t.length?{short:t[s]}:{},hide:this.hideWeekends&&s>=5||this.hideWeekdays.length&&this.hideWeekdays.includes(s+1)}))),this.startWeekOnSunday&&e.unshift(e.pop()),e},weekDaysInHeader(){return this.isMonthView||this.isWeekView&&!this.minCellWidth&&!(this.hasSplits&&this.minSplitWidth)},months(){return this.texts.months.map((e=>({label:e})))},specialDayHours(){return this.specialHours&&Object.keys(this.specialHours).length?Array(7).fill("").map(((e,t)=>{let s=this.specialHours[t+1]||[];return Array.isArray(s)||(s=[s]),e=[],s.forEach((({from:s,to:a,class:i,label:n},l)=>{e[l]={day:t+1,from:[null,void 0].includes(s)?null:1*s,to:[null,void 0].includes(a)?null:1*a,class:i||"",label:n||""}})),e})):{}},viewTitle(){const e=this.utils.date;let t="";const s=this.view.startDate,a=s.getFullYear(),i=s.getMonth();switch(this.view.id){case"years":t=this.texts.years;break;case"year":t=a;break;case"month":t=`${this.months[i].label} ${a}`;break;case"week":{const a=this.view.endDate,i=s.getFullYear();let n=this.texts.months[s.getMonth()];this.xsmall&&(n=n.substring(0,3));let l=`${n} ${i}`;if(a.getMonth()!==s.getMonth()){const e=a.getFullYear();let t=this.texts.months[a.getMonth()];this.xsmall&&(t=t.substring(0,3)),l=i===e?`${n} - ${t} ${i}`:this.small?`${n.substring(0,3)} ${i} - ${t.substring(0,3)} ${e}`:`${n} ${i} - ${t} ${e}`}t=`${this.texts.week} ${e.getWeek(this.startWeekOnSunday?e.addDays(s,1):s)} (${l})`;break}case"day":t=this.utils.date.formatDate(s,this.texts.dateFormat,this.texts);break}return t},viewCells(){const e=this.utils.date;let t=[],s=null,a=!1;this.watchRealTime||(this.now=new Date);const i=this.now;switch(this.view.id){case"years":s=this.view.startDate.getFullYear(),t=Array.apply(null,Array(25)).map(((t,a)=>{const n=new Date(s+a,0,1),l=new Date(s+a+1,0,1);return l.setSeconds(-1),{startDate:n,formattedDate:e.formatDateLite(n),endDate:l,content:s+a,current:s+a===i.getFullYear()}}));break;case"year":s=this.view.startDate.getFullYear(),t=Array.apply(null,Array(12)).map(((t,a)=>{const n=new Date(s,a,1),l=new Date(s,a+1,1);return l.setSeconds(-1),{startDate:n,formattedDate:e.formatDateLite(n),endDate:l,content:this.xsmall?this.months[a].label.substr(0,3):this.months[a].label,current:a===i.getMonth()&&s===i.getFullYear()}}));break;case"month":{const s=this.view.startDate.getMonth(),i=new Date(this.view.firstCellDate);a=!1,t=Array.apply(null,Array(42)).map(((t,n)=>{const l=e.addDays(i,n),o=new Date(l);o.setHours(23,59,59,0);const r=!a&&e.isToday(l)&&!a++;return{startDate:l,formattedDate:e.formatDateLite(l),endDate:o,content:l.getDate(),today:r,outOfScope:l.getMonth()!==s,class:`vuecal__cell--day${l.getDay()||7}`}})),(this.hideWeekends||this.hideWeekdays.length)&&(t=t.filter((e=>{const t=e.startDate.getDay()||7;return!(this.hideWeekends&&t>=6||this.hideWeekdays.length&&this.hideWeekdays.includes(t))})));break}case"week":{a=!1;let s=this.view.startDate;const i=this.weekDays;t=i.map(((t,i)=>{const n=e.addDays(s,this.startWeekOnSunday?i-1:i),l=new Date(n);l.setHours(23,59,59,0);const o=(n.getDay()||7)-1;return{startDate:n,formattedDate:e.formatDateLite(n),endDate:l,today:!a&&e.isToday(n)&&!a++,specialHours:this.specialDayHours[o]||[]}})).filter(((e,t)=>!i[t].hide));break}case"day":{const s=this.view.startDate,a=new Date(this.view.startDate);a.setHours(23,59,59,0);const i=(s.getDay()||7)-1;t=[{startDate:s,formattedDate:e.formatDateLite(s),endDate:a,today:e.isToday(s),specialHours:this.specialDayHours[i]||[]}];break}}return t},visibleDaysCount(){return this.isDayView?1:7-this.weekDays.reduce(((e,t)=>e+t.hide),0)},cellWidth(){return 100/this.visibleDaysCount},cssClasses(){const{resizeAnEvent:e,dragAnEvent:t,dragCreateAnEvent:s}=this.domEvents;return{[`vuecal--${this.view.id}-view`]:!0,[`vuecal--${this.locale}`]:this.locale,"vuecal--no-time":!this.time,"vuecal--view-with-time":this.hasTimeColumn,"vuecal--week-numbers":this.showWeekNumbers&&this.isMonthView,"vuecal--twelve-hour":this.twelveHour,"vuecal--click-to-navigate":this.clickToNavigate,"vuecal--hide-weekends":this.hideWeekends,"vuecal--split-days":this.hasSplits,"vuecal--sticky-split-labels":this.hasSplits&&this.stickySplitLabels,"vuecal--overflow-x":this.minCellWidth&&this.isWeekView||this.hasSplits&&this.minSplitWidth,"vuecal--small":this.small,"vuecal--xsmall":this.xsmall,"vuecal--resizing-event":e._eid,"vuecal--drag-creating-event":s.event,"vuecal--dragging-event":t._eid,"vuecal--events-on-month-view":this.eventsOnMonthView,"vuecal--short-events":this.isMonthView&&"short"===this.eventsOnMonthView,"vuecal--has-touch":"undefined"!==typeof window&&"ontouchstart"in window}},isYearsOrYearView(){return["years","year"].includes(this.view.id)},isYearsView(){return"years"===this.view.id},isYearView(){return"year"===this.view.id},isMonthView(){return"month"===this.view.id},isWeekOrDayView(){return["week","day"].includes(this.view.id)},isWeekView(){return"week"===this.view.id},isDayView(){return"day"===this.view.id}},watch:{events:{handler(e,t){this.updateMutableEvents(e),this.addEventsToView()},deep:!0},locale(e){this.loadLocale(e)},selectedDate(e){this.updateSelectedDate(e)},activeView(e){this.switchView(e)}}};const Ir=(0,$.Z)(Zr,[["render",Eo]]);var Fr=Ir,Yr={install:e=>{e.component("Vue-cal",Fr)}};s(48851),s(1292),s(81633),s(51045),s(46187),s(22299),s(93423),s(54687),s(49147),s(6250);n(),d();const Pr={axios:{disabled:!0},i18n:{languages:[{title:"Slovenský",flag:"sk",value:"sk"}],defaultLanguage:"sk"},moxios:{routes:{"GET v1/overview/teams":!0,"GET v1/overview/tasks":!0}}},Lr=(0,a.ri)(ll).use(cl).use(rl).use(Gl).use(Bl,Pr).use(i.oX).use(o).use(Yr).use(Ql).use(c(),{color:"#6200EE"}).mount("#app"),Nr=Lr.$i18n.t},65687:function(e,t,s){"use strict";s.d(t,{Ly:function(){return a},d2:function(){return i},Jc:function(){return n},iy:function(){return l},QS:function(){return r},rI:function(){return o}});var a=s(27484),i=s(53830),n=s.p+"img/checkmark-double.8bc9494b.svg",l=s(34413),o=(s(87500),s(60666)),r=(s(38351),s(35902),s(52906),s.p+"img/office-365.84b4e31a.svg")},7648:function(e,t,s){"use strict";var a=s(85069);t["Z"]={parseErrors(e){return Object.values(e).map((e=>(0,a.$t)(e?.$message))).join(". ")}}},83299:function(e,t){"use strict";t["Z"]={methods:{customFilter(e,t){const s=e.normalize("NFD").replace(/[\u0300-\u036f]/g,""),a=t.normalize("NFD").replace(/[\u0300-\u036f]/g,""),i=/[^a-zA-Z0-9 ]/g,n=s.replace(i,""),l=a.replace(i,"");return n.toLowerCase().includes(l.toLowerCase())||""===e}}}},34407:function(e,t,s){"use strict";var a=s(36797),i=s.n(a);t["Z"]={enrichEmployees(e){return e.map((e=>({...e,_fullName:`${e.name} ${e.surname}`,_initials:e.name.charAt(0)+e.surname.charAt(0)})))},formatDateTime(e){return i()(e),i()(e).format("DD.MM.yyyy, HH:mm")},formatTimeblockDateTime(e){if(e.date&&e.starts_at_time){const t=i()(e.date).format("DD.MM.yyyy");return`${t}, ${e.starts_at_time}`}return e.start?this.formatDateTime(e.start):""},formatDateTimeForBackend(e){return i()(e).format("YYYY-MM-DD HH:mm:ss")},formatDate(e){return i()(e).format("DD.MM.yyyy")},isBefore(e,t=null){return i()(e).isBefore(i()(t))},isAfter(e,t=i()()){return i()(e).isAfter(i()(t))}}},8973:function(e,t,s){var a={"./en.json":20790,"./sk.json":71941};function i(e){var t=n(e);return s(t)}function n(e){if(!s.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}i.keys=function(){return Object.keys(a)},i.resolve=n,e.exports=i,i.id=8973},66667:function(e,t,s){var a={"./ar.json":[68568,8568],"./bg.json":[20684,684],"./bn.json":[61170,1170],"./bs.json":[41161,1161],"./ca.json":[40612,612],"./cs.json":[50213,213],"./da.json":[98542,8542],"./de.json":[4701,4701],"./el.json":[20453,453],"./en.json":[3320,3320],"./es.json":[60076,76],"./et.json":[44075,4075],"./fa.json":[69004,9004],"./fr.json":[60007,7],"./he.json":[23746,3746],"./hr.json":[92921,2921],"./hu.json":[75723,5723],"./id.json":[12502,2502],"./is.json":[13214,3214],"./it.json":[51380,1380],"./ja.json":[72484,2484],"./ka.json":[60285,285],"./ko.json":[79249,9249],"./lt.json":[42838,2838],"./mn.json":[6177,6177],"./nl.json":[99729,9729],"./no.json":[49409,9409],"./pl.json":[25409,5409],"./pt-br.json":[74529,4529],"./ro.json":[29715,9715],"./ru.json":[32113,2113],"./sk.json":[30229,229],"./sl.json":[28636,8636],"./sq.json":[204,204],"./sr.json":[55553,5553],"./sv.json":[75979,5979],"./tr.json":[5268,5268],"./uk.json":[14057,4057],"./vi.json":[88929,8929],"./zh-cn.json":[56730,6730],"./zh-hk.json":[30841,841]};function i(e){if(!s.o(a,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=a[e],i=t[0];return s.e(t[1]).then((function(){return s.t(i,19)}))}i.keys=function(){return Object.keys(a)},i.id=66667,e.exports=i},27484:function(e,t,s){"use strict";e.exports=s.p+"img/bin.8778f5be.svg"},53830:function(e,t,s){"use strict";e.exports=s.p+"img/checkmark.76754510.svg"},34413:function(e,t,s){"use strict";e.exports=s.p+"img/eye.6d5fa7d3.svg"},87500:function(e,t,s){"use strict";e.exports=s.p+"img/home.a9495a95.svg"},35902:function(e,t,s){"use strict";e.exports=s.p+"img/icon-next.25e7a4f4.svg"},38351:function(e,t,s){"use strict";e.exports=s.p+"img/icon-prev.22ba0fa6.svg"},60666:function(e,t,s){"use strict";e.exports=s.p+"img/pencil.b9009162.svg"},52906:function(e,t,s){"use strict";e.exports=s.p+"img/search.bd80c5fb.svg"},14214:function(e,t,s){"use strict";e.exports=s.p+"img/spinner.34fd3cb2.gif"},20790:function(e){"use strict";e.exports=JSON.parse('{"Value is not a valid email address":"Value is not a valid email address","error":"chyba","Value is required":"Pole je povinné","This field should be at least 8 characters long":"Pole musí obsahovať aspoň 8 znakov","This field should be at least 6 characters long":"Pole musí obsahovať aspoň 6 znakov","This maximum length allowed is 6":"Pole musí obsahovať 6 znakov","The value must be equal to the other value":"Heslá sa nezhodujú"}')},71941:function(e){"use strict";e.exports=JSON.parse('{"Value is not a valid email address":"Zadali ste neplatný email","error":"chyba","Value is required":"Pole je povinné","This field should be at least 8 characters long":"Pole musí obsahovať aspoň 8 znakov","This field should be at least 6 characters long":"Pole musí obsahovať aspoň 6 znakov","This maximum length allowed is 6":"Pole musí obsahovať 6 znakov","The value must be equal to the other value":"Heslá sa nezhodujú"}')}},t={};function s(a){var i=t[a];if(void 0!==i)return i.exports;var n=t[a]={id:a,loaded:!1,exports:{}};return e[a].call(n.exports,n,n.exports,s),n.loaded=!0,n.exports}s.m=e,function(){var e=[];s.O=function(t,a,i,n){if(!a){var l=1/0;for(u=0;u=n)&&Object.keys(s.O).every((function(e){return s.O[e](a[r])}))?a.splice(r--,1):(o=!1,n0&&e[u-1][2]>n;u--)e[u]=e[u-1];e[u]=[a,i,n]}}(),function(){s.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return s.d(t,{a:t}),t}}(),function(){var e,t=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__};s.t=function(a,i){if(1&i&&(a=this(a)),8&i)return a;if("object"===typeof a&&a){if(4&i&&a.__esModule)return a;if(16&i&&"function"===typeof a.then)return a}var n=Object.create(null);s.r(n);var l={};e=e||[null,t({}),t([]),t(t)];for(var o=2&i&&a;"object"==typeof o&&!~e.indexOf(o);o=t(o))Object.getOwnPropertyNames(o).forEach((function(e){l[e]=function(){return a[e]}}));return l["default"]=function(){return a},s.d(n,l),n}}(),function(){s.d=function(e,t){for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}}(),function(){s.f={},s.e=function(e){return Promise.all(Object.keys(s.f).reduce((function(t,a){return s.f[a](e,t),t}),[]))}}(),function(){s.u=function(e){return"js/"+e+"."+{7:"7cef58a7",76:"9977e9df",188:"d74ce2b2",204:"4dd3d03d",213:"c9ed5252",229:"b09f2145",285:"6a0985b5",453:"04d72c77",612:"4ea201aa",684:"017ebeb8",841:"65cae984",907:"bfa01f81",924:"ddc3fd73",1097:"88cdd882",1161:"59a7c68b",1170:"16217940",1277:"95db0fe3",1380:"fc40de11",1466:"c5d34b19",2113:"2a1bcdfa",2484:"6def3002",2502:"66addef9",2612:"ea780a2e",2838:"aa69ee5c",2921:"b5aad8e9",3214:"72d306e7",3311:"bcab8a66",3320:"fe7033d0",3657:"e558064c",3728:"3e558208",3746:"09ee0424",3862:"b079a5bd",4057:"4b3b38fd",4075:"2d83f71e",4392:"02bf9f00",4518:"8e2c3fa8",4529:"6ff3334b",4578:"5a7acff1",4701:"e34c277a",5268:"5d463fbd",5409:"4ce439c3",5456:"e8c8face",5553:"032fcbe7",5723:"09853a5d",5979:"385e1b41",6177:"12db94aa",6730:"61289e01",7073:"57c96578",7343:"1e290ed5",8024:"bb377405",8059:"91d676ea",8520:"cb7009ea",8542:"09badcc3",8568:"7f0dfd32",8636:"2a90cf11",8731:"a28fea96",8929:"ea6da50f",8990:"6dd37151",9004:"ffe04245",9033:"727fb9e6",9249:"d2b0f88c",9407:"ed2e3833",9409:"339f5afb",9715:"21ca1afa",9729:"812aea5b"}[e]+".js"}}(),function(){s.miniCssF=function(e){return"css/"+e+"."+{188:"37c2c58b",907:"fa9ddfdd",1277:"d65f48ae",2612:"f67d9d9c",3862:"f5c9dd84",4392:"01299cfb",5456:"2cf84289",7073:"3978ef96",8059:"2ab138a8",9033:"ace2e544",9407:"f4af91bc"}[e]+".css"}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="jandl:";s.l=function(a,i,n,l){if(e[a])e[a].push(i);else{var o,r;if(void 0!==n)for(var d=document.getElementsByTagName("script"),u=0;u sanitizedUrl.startsWith(protocol))\n\n if (hasWhitelistedProtocol) return sanitizedUrl\n\n return `https://${sanitizedUrl}`\n } \n }\n\n Quill.register('formats/link', CustomLinkSanitizer, true)\n}","\n\n","\n\n","export default {\n\tmounted() {\n\t\twindow.addEventListener('keydown', this.handleKeyDown)\n\t},\n\n\tmethods: {\n\t\thandleKeyDown(event) {\n\t\t\t// if (event.keyCode === 27) this.closeModal()\n\t\t\tif (event.keyCode === 27) this.visible = false\n\t\t}\n\t},\n}","import { render } from \"./z-delete-team-modal.vue?vue&type=template&id=67985565\"\nimport script from \"./z-delete-team-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-team-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-team-modal.vue?vue&type=template&id=3218e2d8\"\nimport script from \"./z-team-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-team-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-delete-task-modal.vue?vue&type=template&id=69a1b060\"\nimport script from \"./z-delete-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./z-delete-timeblock-modal.vue?vue&type=template&id=d203e48e&scoped=true\"\nimport script from \"./z-delete-timeblock-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-timeblock-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-delete-timeblock-modal.vue?vue&type=style&index=0&id=d203e48e&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d203e48e\"]])\n\nexport default __exports__","\n\n\n\n\n","\n\n\n\n","import { render } from \"./z-files-upload.vue?vue&type=template&id=a2a40214&scoped=true\"\nimport script from \"./z-files-upload.vue?vue&type=script&lang=js\"\nexport * from \"./z-files-upload.vue?vue&type=script&lang=js\"\n\nimport \"./z-files-upload.vue?vue&type=style&index=0&id=a2a40214&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a2a40214\"]])\n\nexport default __exports__","export default {\n // Mixin to fix autofocus on v-input in modals where date selects are used\n data() {\n return {\n preventInputFocus: false,\n savedScrollPosition: null,\n };\n },\n\n methods: {\n setFocusEvent() {\n document.querySelectorAll('.v-autocomplete input').forEach((input) => {\n input.addEventListener('focus', this.onInputFocus);\n });\n },\n\n onDateFocus($event) {\n if ($event == undefined) {\n this.preventInputFocus = true;\n }\n },\n\n onDateOpen($event) {\n // $event should be the element reference (or any truthy value to trigger saving)\n if ($event) {\n // Find the scrollable modal container\n const modalContent = document.querySelector('.v-dialog .modal-content');\n if (modalContent) {\n this.savedScrollPosition = modalContent.scrollTop;\n }\n\n this.preventInputFocus = true;\n\n // Reset after datepicker is opened\n setTimeout(() => {\n this.preventInputFocus = false;\n this.savedScrollPosition = null;\n }, 500);\n }\n },\n\n onInputFocus($event) {\n // If we have a saved scroll position and an unwanted focus happened\n if (this.preventInputFocus && this.savedScrollPosition !== null) {\n const target = $event.target;\n\n // Only intercept text input focus (autocomplete fields)\n if (target.tagName === 'INPUT' && target.type === 'text') {\n // Blur the focused element\n setTimeout(() => {\n target.blur();\n\n const modalContent = document.querySelector(\n '.v-dialog .modal-content',\n );\n if (modalContent && this.savedScrollPosition !== null) {\n modalContent.scrollTop = this.savedScrollPosition;\n }\n }, 0);\n }\n }\n },\n },\n};\n","export default {\n\tcomputed: {\n\t\temployeesOptions() {\n\t\t\tconst selectedEmployees = [...this.mastertask.employees].map(employee => employee.id)\n\n\t\t\treturn this.enrichedEmployees.filter(\n\t\t\t\t(employee) => !selectedEmployees.includes(employee.id)\n\t\t\t) || []\n\t\t},\n\n\t\tprojectsOptions() {\n\t\t\t// Added to \"paginate\" projects, because v-autocomplete was unable to handle so many projects at once\n\n\t\t\tconst pattern = /[^a-zA-Z0-9 ]/g\n\n\t\t\tconst normalizedInput = this.projectCodeSearch\n\t\t\t\t? this.projectCodeSearch.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').replace(pattern, '')\n\t\t\t\t: ''\n\n\t\t\tconst projects = this.projects.filter(project => {\n\t\t\t\tconst normalizedProjectCode = project.code.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').replace(pattern, '')\n\t\t\t\treturn normalizedProjectCode.toLowerCase().includes(normalizedInput.toLowerCase())\n\t\t\t})\n\n\t\t\tlet filteredProjects \t= projects?.length ? projects.slice(0, 10) : this.projects.slice(0, 10)\n\n\t\t\tif (!this.mastertask?.project_id)\n\t\t\t\treturn filteredProjects\n\n\t\t\tconst selectedProject \t= this.projects.find(project => project.id == this.mastertask?.project_id)\n\t\t\tfilteredProjects \t\t= filteredProjects.filter(project => project.id != selectedProject.id)\n\n\t\t\treturn [...filteredProjects, selectedProject]\n\t\t}\n\t},\n\n\tmethods: {\n\t\t// onProjectSelected(id) {\n\t\t// \tconst project = this.projects.find(project => project.id == id)\n\t\t// \tthis.mastertask.project_code = project.code\n\t\t// \tthis.mastertask.project_id \t = project.id\n\t\t// },\n\n\t\tonEmployeeSelected(id) {\n\t\t\tconst employee = this.enrichedEmployees.find(employee => employee.id == id)\n\t\t\tthis.mastertask.employees.push(employee)\n\t\t\tthis.showAddEmployeeInput = false\n\t\t},\n\n\t\tonEmployeeDurationChanged() {\n\t\t\tlet totalDuration = 0\n\n\t\t\tthis.mastertask.employees = this.mastertask.employees.map(employee => {\n\t\t\t\tif (typeof employee.duration == 'string') {\n\t\t\t\t\ttotalDuration += parseFloat(employee.duration)\n\t\t\t\t\temployee.duration = parseFloat(employee.duration)\n\t\t\t\t\temployee.invalid = false\n\t\t\t\t}\n\t\t\t\telse if (typeof employee.duration == 'number') {\n\t\t\t\t\ttotalDuration += employee.duration\n\t\t\t\t\temployee.invalid = false\n\t\t\t\t}\n\n\t\t\t\treturn employee\n\t\t\t})\n\n\t\t\tthis.mastertask.duration = totalDuration\n\t\t}\n\t},\n\n\twatch: {\n\t\t'mastertask.team_id'(value) {\n\t\t\tif (!value) return\n\t\t\t\n\t\t\tconst team = this.teams.find(team => team.id == value)\n\t\t\tif (!team) return\n\n\t\t\tthis.mastertask.team \t\t= JSON.parse(JSON.stringify(team))\n\t\t\tthis.mastertask.employees = [...this.mastertask.team.employees]\n\t\t},\n\t}\n}","\n\n\n","\n\n\n","import { render } from \"./a-mastertask-name.vue?vue&type=template&id=154bd9ae\"\nimport script from \"./a-mastertask-name.vue?vue&type=script&lang=js\"\nexport * from \"./a-mastertask-name.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./a-mastertask-status.vue?vue&type=template&id=40b1e729\"\nimport script from \"./a-mastertask-status.vue?vue&type=script&lang=js\"\nexport * from \"./a-mastertask-status.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./a-task-timeblocks.vue?vue&type=template&id=37c877b0\"\nimport script from \"./a-task-timeblocks.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-timeblocks.vue?vue&type=script&lang=js\"\n\nimport \"./a-task-timeblocks.vue?vue&type=style&index=0&id=37c877b0&lang=sass\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-created-by.vue?vue&type=template&id=76476816\"\nimport script from \"./z-created-by.vue?vue&type=script&lang=js\"\nexport * from \"./z-created-by.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./a-task-assigned-employee.vue?vue&type=template&id=e04c27ce\"\nimport script from \"./a-task-assigned-employee.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-assigned-employee.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./a-task-planned-time.vue?vue&type=template&id=5c6a17d5\"\nimport script from \"./a-task-planned-time.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-planned-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./a-task-spent-time.vue?vue&type=template&id=dc6acca2&scoped=true\"\nimport script from \"./a-task-spent-time.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-spent-time.vue?vue&type=script&lang=js\"\n\nimport \"./a-task-spent-time.vue?vue&type=style&index=0&id=dc6acca2&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-dc6acca2\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./a-task-remaining-time.vue?vue&type=template&id=76900acb\"\nimport script from \"./a-task-remaining-time.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-remaining-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./a-task-deadline.vue?vue&type=template&id=1d87e2c9\"\nimport script from \"./a-task-deadline.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-deadline.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { useToast } from 'vue-toast-notification';\nconst toast = useToast();\n\ndeclare global {\n interface Window {\n\ttoast: typeof toast;\n }\n}\n\nwindow.toast = toast;\n\nexport function detectOS() {\n\tconst platform = window.navigator.platform\n\tconst macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K']\n\tconst windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE']\n\n\tif (macosPlatforms.indexOf(platform) !== -1) {\n\t\treturn 'mac'\n\t} else if (windowsPlatforms.indexOf(platform) !== -1) {\n\t\treturn 'win'\n\t}\n\treturn 'win'\n}\n\nexport function prepareHTMLDescription(description) {\n\tif (!description) return description\n\n\tconst os = detectOS()\n\n\tif (os === 'mac') {\n\t\tdescription = description.replace(/\\\\\\\\/g, 'smb://')\n\n\t\t// find all smb links and replace them with clickable links, separated by ' ', '<', '>', '\"', and '(', ')' characters\n\t\tdescription = description = description.replace(/(smb:\\/\\/[^\\s<>\"()]+)/g, function(match) {\n\t\t\treturn '' + match.replace(/\\\\/g, '/') + ''\n\t\t})\n\t} else {\n\t\tdescription = description.replace(/smb:\\/\\//g, '\\\\\\\\')\n\n\t\t\n\t\t// find all windows links and replace them with clickable links, separated by ' ', '<', '>', '\"', and '(', ')' characters\n\t\tdescription = description.replace(/(\\\\\\\\[^\\s<>\"()]+)/g, function(match) {\n\t\t\tmatch = match.replaceAll('/', '\\\\')\n\t\t\treturn '' + match + '';\n\t\t});\n\t}\n\n\treturn description;\n}\n\nfunction getCopyFunction(text) {\n\treturn `\n\t\tif (navigator.clipboard && navigator.clipboard.writeText) {\n\t\t\tnavigator.clipboard.writeText('${text.replace(/\\\\/g, '\\\\\\\\')}').then(() => {\n\t\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t\t}).catch(err => {\n\t\t\t\twindow.toast.error('Failed to copy link to clipboard!')\n\t\t\t});\n\t\t} else {\n\t\t\tconst input = document.createElement('input');\n\t\t\tinput.style.position = 'fixed';\n\t\t\tinput.style.opacity = 0;\n\t\t\tinput.style.pointerEvents = 'none';\n\t\t\tinput.value = '${text.replace(/\\\\/g, '\\\\\\\\')}';\n\t\t\tdocument.body.appendChild(input);\n\t\t\tinput.select();\n\t\t\tinput.focus();\n\t\t\tdocument.execCommand('copy');\n\t\t\tdocument.body.removeChild(input);\n\t\t\twindow.toast.success('Link copied to clipboard!')\n\t\t}\n\t`\n}","import { render } from \"./a-task-description.vue?vue&type=template&id=37e8334d\"\nimport script from \"./a-task-description.vue?vue&type=script&lang=js\"\nexport * from \"./a-task-description.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n","import { render } from \"./z-files.vue?vue&type=template&id=f01fa1ac&scoped=true\"\nimport script from \"./z-files.vue?vue&type=script&lang=js\"\nexport * from \"./z-files.vue?vue&type=script&lang=js\"\n\nimport \"./z-files.vue?vue&type=style&index=0&id=f01fa1ac&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f01fa1ac\"]])\n\nexport default __exports__","import { render } from \"./z-task-readonly-info.vue?vue&type=template&id=ed26273c\"\nimport script from \"./z-task-readonly-info.vue?vue&type=script&lang=js\"\nexport * from \"./z-task-readonly-info.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./a-timeblock.vue?vue&type=template&id=4d980d7a&scoped=true\"\nimport script from \"./a-timeblock.vue?vue&type=script&lang=js\"\nexport * from \"./a-timeblock.vue?vue&type=script&lang=js\"\n\nimport \"./a-timeblock.vue?vue&type=style&index=0&id=4d980d7a&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4d980d7a\"]])\n\nexport default __exports__","import { render } from \"./z-task-modal.vue?vue&type=template&id=3db8381d&scoped=true\"\nimport script from \"./z-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-task-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-task-modal.vue?vue&type=style&index=0&id=3db8381d&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3db8381d\"]])\n\nexport default __exports__","\n\n","import { render } from \"./z-delete-blocker-modal.vue?vue&type=template&id=fe8d1392\"\nimport script from \"./z-delete-blocker-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-blocker-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-complete-task-modal.vue?vue&type=template&id=0e2bf271\"\nimport script from \"./z-complete-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-complete-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-complete-master-task-modal.vue?vue&type=template&id=62a2645e\"\nimport script from \"./z-complete-master-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-complete-master-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-task-add-time-modal.vue?vue&type=template&id=2d4f711c\"\nimport script from \"./z-task-add-time-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-task-add-time-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-blocker-modal.vue?vue&type=template&id=1ca4825a\"\nimport script from \"./z-blocker-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-blocker-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-delete-master-task-modal.vue?vue&type=template&id=9419f686\"\nimport script from \"./z-delete-master-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-master-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","\n\n\n\n\n","import { render } from \"./a-tasks-table.vue?vue&type=template&id=753dec0e&scoped=true\"\nimport script from \"./a-tasks-table.vue?vue&type=script&lang=js\"\nexport * from \"./a-tasks-table.vue?vue&type=script&lang=js\"\n\nimport \"./a-tasks-table.vue?vue&type=style&index=0&id=753dec0e&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-753dec0e\"]])\n\nexport default __exports__","\n\n\n","\n\n","import { render } from \"./z-deadline.vue?vue&type=template&id=13a73f8f\"\nimport script from \"./z-deadline.vue?vue&type=script&lang=js\"\nexport * from \"./z-deadline.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-description.vue?vue&type=template&id=09dc9550\"\nimport script from \"./z-description.vue?vue&type=script&lang=js\"\nexport * from \"./z-description.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-planned-time.vue?vue&type=template&id=0c44c1d0\"\nimport script from \"./z-planned-time.vue?vue&type=script&lang=js\"\nexport * from \"./z-planned-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-remaining-time.vue?vue&type=template&id=759929d5\"\nimport script from \"./z-remaining-time.vue?vue&type=script&lang=js\"\nexport * from \"./z-remaining-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-spent-time.vue?vue&type=template&id=cc4966e2\"\nimport script from \"./z-spent-time.vue?vue&type=script&lang=js\"\nexport * from \"./z-spent-time.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-status.vue?vue&type=template&id=5a460912\"\nimport script from \"./z-status.vue?vue&type=script&lang=js\"\nexport * from \"./z-status.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-team.vue?vue&type=template&id=3dfe3a63\"\nimport script from \"./z-team.vue?vue&type=script&lang=js\"\nexport * from \"./z-team.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./z-estimated-duration.vue?vue&type=template&id=5c7dad8e\"\nimport script from \"./z-estimated-duration.vue?vue&type=script&lang=js\"\nexport * from \"./z-estimated-duration.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./a-mastertask-description.vue?vue&type=template&id=2ed63137\"\nimport script from \"./a-mastertask-description.vue?vue&type=script&lang=js\"\nexport * from \"./a-mastertask-description.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./z-master-task-modal.vue?vue&type=template&id=ea627ecc&scoped=true\"\nimport script from \"./z-master-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-master-task-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-master-task-modal.vue?vue&type=style&index=0&id=ea627ecc&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-ea627ecc\"]])\n\nexport default __exports__","\r\n\r\n","import { render } from \"./z-delete-team-member-modal.vue?vue&type=template&id=554335ff\"\nimport script from \"./z-delete-team-member-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-delete-team-member-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-show-menu-modal.vue?vue&type=template&id=1399b161\"\nimport script from \"./z-show-menu-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-show-menu-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n","import { render } from \"./z-unable-to-edit-office-task-modal.vue?vue&type=template&id=4cd44904\"\nimport script from \"./z-unable-to-edit-office-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-unable-to-edit-office-task-modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./z-unable-to-complete-task-modal.vue?vue&type=template&id=f007e35e&scoped=true\"\nimport script from \"./z-unable-to-complete-task-modal.vue?vue&type=script&lang=js\"\nexport * from \"./z-unable-to-complete-task-modal.vue?vue&type=script&lang=js\"\n\nimport \"./z-unable-to-complete-task-modal.vue?vue&type=style&index=0&id=f007e35e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f007e35e\"]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=0c83946b\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createStore } from \"vuex\";\n\nexport default createStore({\n state: {},\n getters: {},\n mutations: {},\n actions: {},\n modules: {},\n});","import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'\nimport store from '@/store'\n\nconst routes: Array = [\n\t{\n\t\tpath: '',\n\t\tredirect: '/auth'\n\t},\n\t{\n\t\tpath: '/auth/',\n\t\tcomponent: () => import('@/plugins/app/_layout/auth/auth.layout.vue'),\n\t\tchildren: [\n\t\t\t{\n\t\t\t\tpath: '',\n\t\t\t\tredirect: '/auth/login'\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/login',\n\t\t\t\tname: 'Login',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/login/login.vue'),\n\t\t\t\tmeta: {requiresAuth: false}\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/forgot-password',\n\t\t\t\tname: 'Forgot password',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/forgot-password/forgot-password.vue'),\n\t\t\t\tmeta: {requiresAuth: false}\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/forgot-success',\n\t\t\t\tname: 'Forgot success',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/forgot-success/forgot-success.vue'),\n\t\t\t\tmeta: {requiresAuth: false}\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/auth/reset-password',\n\t\t\t\tname: 'Reset password',\n\t\t\t\tcomponent: () => import('@/plugins/lib@auth/reset-password/reset-password.vue'),\n\t\t\t\tmeta: {requiresAuth: null}\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\tpath: '/app',\n\t\tcomponent: () => import('@/plugins/app/_layout/app/app.layout.vue'),\n\t\tchildren: [\n\t\t\t{\n\t\t\t\tpath: '',\n\t\t\t\tredirect: '/app/dashboard'\n\t\t\t},\n\t\t\t{\n\t\t\t\tpath: '/app/dashboard',\n\t\t\t\tredirect: '/app/dashboard/tasks',\n\t\t\t\tchildren: [\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/tasks',\n\t\t\t\t\t\tname: 'Dashboard - Tasks',\n\t\t\t\t\t\tmeta: { title: 'Sub Tasks', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@dashboard/tasks/tasks.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/teams',\n\t\t\t\t\t\tname: 'Dashboard - Teams',\n\t\t\t\t\t\tmeta: { title: 'Teams Overview', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@dashboard/teams/teams.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/projects',\n\t\t\t\t\t\tname: 'Dashboard - Projects',\n\t\t\t\t\t\tmeta: { title: 'Projects overview', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@dashboard/projects/projects.vue')\n\t\t\t\t\t},\n\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/overview/unscheduled',\n\t\t\t\t\t\tname: 'Overview - Unscheduled tasks',\n\t\t\t\t\t\tmeta: { title: 'Unscheduled Sub Tasks', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@overview/tasks-unscheduled/tasks-unscheduled.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/overview/ongoing',\n\t\t\t\t\t\tname: 'Overview - Ongoing tasks',\n\t\t\t\t\t\tmeta: { title: 'Ongoing Sub Tasks', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@overview/tasks-ongoing/tasks-ongoing.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/overview/teams',\n\t\t\t\t\t\tname: 'Overview - Teams',\n\t\t\t\t\t\tmeta: { title: 'Teams', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@overview/teams/teams.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/dashboard/user',\n\t\t\t\t\t\tname: 'Dashboard - User',\n\t\t\t\t\t\tmeta: { title: 'Profile', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/tm@profile/profile/my-profile.vue')\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tpath: '/app/search',\n\t\t\t\t\t\tname: 'Search',\n\t\t\t\t\t\tmeta: { title: 'Search Results', requiresAuth: true },\n\t\t\t\t\t\tcomponent: () => import('@/plugins/lib@search/search/search.vue')\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\tpath: '/:catchAll(.*)',\n\t\tname: '404',\n\t\tcomponent: () => import('@/plugins/w@screen/404/404.vue'),\n\t\tmeta: {requiresAuth: null}\n\t}\n]\n\nconst router = createRouter({\n\thistory: createWebHashHistory(process.env.BASE_URL),\n\troutes\n})\n\nrouter.beforeEach((to, from, next) => {\n\tconst isLoggedIn = store.getters['auth/isLoggedIn']\n\n\tif (to.meta.requiresAuth === true) {\n\t\tif (isLoggedIn)\n\t\t\treturn next()\n\t\telse\n\t\t\treturn next({name: 'Login'})\n\t} else if (to.meta.requiresAuth === false) {\n\t\tif (!isLoggedIn)\n\t\t\treturn next()\n\t\telse\n\t\t\treturn next({name: 'Dashboard - Tasks'})\n\t} else {\n\t\treturn next()\n\t}\n})\n\nexport default router\n","import axios from 'axios'\nimport store from '@/store'\n\naxios.defaults.baseURL = process.env.VUE_APP_WAXIOS_URL\n\nexport default {\n\tasync get(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync get_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync get_data(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync get_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => Promise.resolve(response.data.data))\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync post(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync post_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync post_data(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync post_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync delete(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync delete_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync delete_data(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync delete_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync patch(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync patch_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync patch_data(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync patch_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync put(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync put_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(error))\n\t},\n\n\tasync put_data(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\tasync put_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, params, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(error.response || error))\n\t},\n\n\t_config(config: any) {\n\t\tif (config) console.error('NOT IMPLEMENTED')\n\n\t\tif (!store.getters['auth/token']) {\n\t\t\treturn {headers: {}}\n\t\t}\n\n\t\treturn {\n\t\t\theaders: {\n\t\t\t\tAuthorization: `Bearer ${store.getters['auth/token']}`\n\t\t\t}\n\t\t}\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport axios \t\tfrom './models/axios'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.config.globalProperties.$axios = axios\n\t}\n}","export const encodeGetParams = p =>\n\tObject.entries(p).map(kv => kv.map(encodeURIComponent).join('=')).join('&')\n\nexport function strToRegex(s) {\n\tlet re = s\n\tre = re.replace(/\\//g, '\\\\/')\n\tre = re.replace(/\\./g, '\\\\.')\n\tre = re.replace(/\\([^)]+\\)/g, '[^/]+')\n\treturn re\n}\n","import axios from 'axios'\nimport { encodeGetParams, strToRegex } from '../utils/moxios.util'\n\nexport class Moxios {\n\t_mocks = {}\n\n\tconstructor() {\n\t\taxios.interceptors.request.use(this._redirectRequestToMock.bind(this))\n\t\tthis._mocks = {}\n\t}\n\n\tmock(append) {\n\t\tfor (const k in append) {\n\t\t\tlet m = append[k]\n\n\t\t\tif (m === false) continue\n\n\t\t\tm = {}\n\n\t\t\tm.name = k\n\t\t\tm.url = k.split(' ')[1]\n\n\t\t\tif (!m.reUrl)\n\t\t\t\tm.reUrl = strToRegex( m.url )\n\n\t\t\tif (!m.matchMethod)\n\t\t\t\tm.matchMethod = k.split(' ')[0].toLowerCase()\n\n\t\t\tthis._mocks[k] = m\n\t\t}\n\t}\n\n\n\t_redirectRequestToMock(config) {\n\t\t// if (localStorage['isMoxios'] == 'false') {\n\t\t// \treturn config\n\t\t// }\n\n\t\tconst url = config.url.replace(/https?:\\/\\/[^/?]+/, '')\n\n\t\tlet mocked\n\n\t\tfor (const k in this._mocks) {\n\t\t\tconst m = this._mocks[k]\n\n\t\t\tif (config.method == m.matchMethod && url.match(m.reUrl)) {\n\t\t\t\tmocked = m\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\n\t\tif (mocked) {\n\t\t\tif (!mocked.fname)\n\t\t\t\tprocess.env.VUE_APP_PLATFORM\n\t\t\t\t\t? mocked.fname = `/mock/${process.env.VUE_APP_PLATFORM}/${mocked.url}.${config.method.toUpperCase()}.json`\n\t\t\t\t\t: mocked.fname = `/mock/${mocked.url}.${config.method.toUpperCase()}.json`\n\n\n\t\t\tconsole.log(mocked.fname = `/mock/${mocked.url}.${config.method.toUpperCase()}.json`)\n\n\t\t\tconst c = {\n\t\t\t\tmethod: 'get',\n\t\t\t\turl: window.location.origin + mocked.fname+'?___MOCK___&'+encodeGetParams(config.data||{}),\n\t\t\t}\n\n\t\t\tconfig = {...config, ...c}\n\t\t}\n\n\t\treturn config\n\t}\n\n}\n\n","import { App } \t\tfrom 'vue'\nimport { Moxios } \tfrom './models/moxios'\nimport { Options } \tfrom './types/index.js'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tconst moxios = new Moxios()\n\n\t\tif (!options || !options.routes || !Object.values(options.routes).length || options.disabled === true) return\n\n\t\tmoxios.mock(options.routes)\n\t}\n}","import { Options } \tfrom './types'\nimport mitt \t\tfrom 'mitt'\n\nexport default {\n\tinstall: (app, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tconst events = mitt()\n\t\tapp.config.globalProperties.$events = events\n\t}\n}","import { Language, Options } from \"../types\"\nimport { Ref, ref } from 'vue'\nimport axios from 'axios'\nimport { createI18n, I18n as I18nType } from 'vue-i18n'\nimport { Preferences } from '@capacitor/preferences'\n\n\nexport class I18n {\n\tpublic currentLanguage: Ref = ref();\n\tpublic availableLanguages: Language[];\n\tpublic vendorI18n: I18nType\n\tpublic defaultLanguage: Language | null;\n\n\tprivate languageKey: string;\n\n\tconstructor(properties: Options) {\n\t\tthis.availableLanguages = properties.languages || []\n\t\tthis.defaultLanguage = properties.languages.find(language => language.value == properties.defaultLanguage)\n\t\tthis.languageKey = properties.languageKey || process.env.VUE_APP_PLATFORM + '_language' || 'w18n_language'\n\n\t\tthis.vendorI18n = createI18n({\n\t\t\tlegacy: true,\n\t\t\tfallbackLocale: this.defaultLanguage.value,\n\t\t\tmessages: this._loadLocaleMessages(),\n\t\t\tmissing: this._missingTranslation,\n\t\t\tpostTranslation: this._postTranslation,\n\t\t})\n\n\t\tthis.changeLanguage({ title: \"Slovenský\", flag: \"sk\", value: \"sk\" })\n\t\tthis.initCurrentLanguage()\n\t}\n\n\tpublic async initCurrentLanguage() {\n\t\tconst { value } = await Preferences.get({ key: this.languageKey })\n\n\t\tif (value) {\n\t\t\tthis.currentLanguage.value = JSON.parse(value)\n\t\t} else if (this.defaultLanguage) {\n\t\t\tthis.currentLanguage.value = this.defaultLanguage\n\t\t} else if (this.availableLanguages[0]) {\n\t\t\tthis.currentLanguage.value = this.availableLanguages[0]\n\t\t} else {\n\t\t\treturn console.error('[w18n] Could not init current language')\n\t\t}\n\n\t\tconst availableLanguages = {}\n\n\t\tthis.availableLanguages.forEach(language => {\n\t\t\tavailableLanguages[language.value] = language.title\n\t\t})\n\n\t\tthis.changeLanguage(this.currentLanguage.value)\n\t\t// Translations.setup(this.currentLanguage.value.value, availableLanguages)\n\n\t\tthis._addAxiosHeaders()\n\t}\n\n\tpublic changeLanguage(language: Language) {\n\t\tthis.currentLanguage.value = language\n\t\tthis._addAxiosHeaders()\n\n\t\tPreferences.set({\n\t\t\tkey: this.languageKey,\n\t\t\tvalue: JSON.stringify(language)\n\t\t})\n\n\t\tthis.vendorI18n.global.locale = language.value\n\t}\n\n\n\tprivate _addAxiosHeaders() {\n\t\taxios.interceptors.request.use(config => {\n\t\t\tif (this.currentLanguage.value && this.currentLanguage.value.value) {\n\t\t\t\tconfig.headers['Accept-Language'] = this.currentLanguage.value.value\n\t\t\t}\n\n\t\t\treturn config\n\t\t})\n\n\t\taxios.interceptors.response.use(\n\t\t\t(response) => {\n\t\t\t\treturn response\n\t\t\t},\n\t\t\t(error) => {\n\t\t\t\treturn Promise.reject(error?.response || error)\n\t\t\t}\n\t\t)\n\t}\n\n\tpublic _loadLocaleMessages(path = '@/locales') {\n\t\tlet locales\n\t\ttry {\n\t\t\tlocales = require.context(\n\t\t\t\t'@/locales',\n\t\t\t\ttrue,\n\t\t\t\t/[A-Za-z0-9-_,\\s]+\\.json$/i\n\t\t\t)\n\t\t} catch (error) {\n\t\t\tconsole.warn('[@wezeo/i18n] Could not initialize i18n. Missing folder /src/locales.')\n\t\t\treturn {}\n\t\t}\n\n\t\tconst messages: { [key: string]: { [key: string]: string } } = {}\n\n\t\tlocales.keys().forEach((key) => {\n\t\t\tconst matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n\t\t\tif (matched && matched.length > 1) {\n\t\t\t\tconst locale = matched[1]\n\n\t\t\t\tmessages[locale] = locales(key)\n\t\t\t}\n\t\t})\n\t\treturn messages\n\t}\n\n\tprivate _missingTranslation = (locale, key, instance?, type?) => {\n\t\treturn key\n\t}\n\n\tprivate _postTranslation = (translated) => {\n\t\treturn translated\n\t}\n}\n","import { Options } \tfrom './types'\nimport { I18n } \tfrom './models/i18n'\nimport events \t\tfrom '@/plugins/w/events'\n\nexport default {\n\tinstall: (app, options: Options) => {\n\t\tif (options && options.disabled === true)\n\t\t\treturn\n\n\t\tif (!options || !options.languages || !options.defaultLanguage)\n\t\t\treturn console.warn('[@wezeo/i18n] Could not initialize i18n. Missing configuration options.')\n\n\t\tif (!app.config.globalProperties.$events) {\n\t\t\tapp.use(events)\n\t\t}\n\n\t\tconst i18n = new I18n(options)\n\n\t\tapp.use(i18n.vendorI18n)\n\t\tapp.config.globalProperties.$w18n = i18n\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\n\n\nimport {\n\tIonContent, IonPage, IonLabel, IonBackButton, IonCheckbox, IonText, IonButton, IonItem,\n\tIonToolbar, IonHeader, IonFooter, IonSlides, IonSlide, IonRow, IonCol, IonGrid, IonInput, IonButtons,\n\tIonIcon, IonList, IonTitle, IonMenu, IonRouterOutlet, IonMenuButton, IonSegment, IonSegmentButton, IonVirtualScroll,\n\tIonTextarea, IonSearchbar, IonRefresherContent, IonRefresher, IonInfiniteScrollContent, IonInfiniteScroll, IonAvatar,\n\tIonModal, IonRadioGroup, IonRadio, IonNote, IonCard, IonCardContent, IonTabBar, IonTabButton, IonMenuToggle, IonFab,\n\tIonFabButton, IonReorderGroup, IonReorder, IonFabList, IonSelect, IonSelectOption, IonToggle, IonBadge, IonChip, IonTabs, IonItemGroup, IonThumbnail, IonItemSliding, IonItemOption, IonItemOptions, IonImg, IonSkeletonText, IonSpinner, IonSplitPane\n} from '@ionic/vue'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.component('ion-content', IonContent)\n\t\tapp.component('ion-page', IonPage)\n\t\tapp.component('ion-label', IonLabel)\n\t\tapp.component('ion-back-button', IonBackButton)\n\t\tapp.component('ion-checkbox', IonCheckbox)\n\t\tapp.component('ion-text', IonText)\n\t\tapp.component('ion-button', IonButton)\n\t\tapp.component('ion-item', IonItem)\n\t\tapp.component('ion-item-group', IonItemGroup)\n\t\tapp.component('ion-item-sliding', IonItemSliding)\n\t\tapp.component('ion-item-option', IonItemOption)\n\t\tapp.component('ion-item-options', IonItemOptions)\n\t\tapp.component('ion-toolbar', IonToolbar)\n\t\tapp.component('ion-header', IonHeader)\n\t\tapp.component('ion-footer', IonFooter)\n\t\tapp.component('ion-slides', IonSlides)\n\t\tapp.component('ion-slide', IonSlide)\n\t\tapp.component('ion-spinner', IonSpinner)\n\t\tapp.component('ion-row', IonRow)\n\t\tapp.component('ion-col', IonCol)\n\t\tapp.component('ion-grid', IonGrid)\n\t\tapp.component('ion-input', IonInput)\n\t\tapp.component('ion-buttons', IonButtons)\n\t\tapp.component('ion-icon', IonIcon)\n\t\tapp.component('ion-img', IonImg)\n\t\tapp.component('ion-list', IonList)\n\t\tapp.component('ion-skeleton-text', IonSkeletonText)\n\t\tapp.component('ion-title', IonTitle)\n\t\tapp.component('ion-menu', IonMenu),\n\t\tapp.component('ion-split-pane', IonSplitPane)\n\t\tapp.component('ion-menu-button', IonMenuButton)\n\t\tapp.component('ion-router-outlet', IonRouterOutlet)\n\t\tapp.component('ion-segment', IonSegment)\n\t\tapp.component('ion-segment-button', IonSegmentButton)\n\t\tapp.component('ion-virtual-scroll', IonVirtualScroll)\n\t\tapp.component('ion-textarea', IonTextarea)\n\t\tapp.component('ion-searchbar', IonSearchbar)\n\t\tapp.component('ion-refresher-content', IonRefresherContent)\n\t\tapp.component('ion-refresher', IonRefresher)\n\t\tapp.component('ion-infinite-scroll-content', IonInfiniteScrollContent)\n\t\tapp.component('ion-infinite-scroll', IonInfiniteScroll)\n\t\tapp.component('ion-avatar', IonAvatar)\n\t\tapp.component('ion-thumbnail', IonThumbnail)\n\t\tapp.component('ion-modal', IonModal)\n\t\tapp.component('ion-radio-group', IonRadioGroup)\n\t\tapp.component('ion-radio', IonRadio)\n\t\tapp.component('ion-note', IonNote)\n\t\tapp.component('ion-card', IonCard)\n\t\tapp.component('ion-card-content', IonCardContent)\n\t\tapp.component('ion-tab-bar', IonTabBar)\n\t\tapp.component('ion-tab-button', IonTabButton),\n\t\tapp.component('ion-menu-toggle', IonMenuToggle)\n\t\tapp.component('ion-fab', IonFab)\n\t\tapp.component('ion-fab-button', IonFabButton)\n\t\tapp.component('ion-fab-list', IonFabList)\n\t\tapp.component('ion-reorder-group', IonReorderGroup)\n\t\tapp.component('ion-reorder', IonReorder)\n\t\tapp.component('ion-select', IonSelect)\n\t\tapp.component('ion-select-option', IonSelectOption)\n\t\tapp.component('ion-toggle', IonToggle)\n\t\tapp.component('ion-badge', IonBadge)\n\t\tapp.component('ion-chip', IonChip),\n\t\tapp.component('ion-tabs', IonTabs)\n\t}\n}","/* eslint-disable */\nimport axios from 'axios'\nimport store from '@/store'\n\nasync function _unauthorised(error: any) {\n\tif (error?.response?.data?.message == 'Unauthenticated.')\n\t\treturn store.dispatch('auth/logout')\n\t\n\treturn Promise.reject(error)\n}\n\naxios.interceptors.response.use(\n\t(response) => response,\n\t(error) => _unauthorised(error),\n)","import axios from '@/plugins/w/axios/models/axios'\nimport './refreshExpired'\n\nexport default {\n\tnamespaced: true,\n\tstate: {\n\t\ttoken: localStorage.getItem('wzo_vue_user_token') || '',\n\t\tuser: JSON.parse(localStorage.getItem('wzo_vue_user_user') || '{}'),\n\t},\n\tmutations: {\n\t\tauth_success(state: any, data: any) {\n\t\t\tif (data.token) {\n\t\t\t\tstate.token = data.token\n\t\t\t\tlocalStorage.setItem('wzo_vue_user_token', data.token)\n\t\t\t}\n\n\t\t\tif (data.user) {\n\t\t\t\tstate.user = data.user\n\t\t\t\tlocalStorage.setItem('wzo_vue_user_user', JSON.stringify(data.user))\n\t\t\t}\n\t\t},\n\t\tauth_error(state: any) {\n\t\t\tstate.token = ''\n\t\t\tlocalStorage.removeItem('wzo_vue_user_token')\n\t\t\tlocalStorage.removeItem('wzo_vue_user_user')\n\t\t},\n\t\tlogout(state: any) {\n\t\t\tstate.token = ''\n\t\t\tstate.user = null\n\t\t\tlocalStorage.removeItem('wzo_vue_user_token')\n\t\t\tlocalStorage.removeItem('wzo_vue_user_user')\n\t\t\twindow.open(location.origin, \"_self\")\n\t\t}\n\t},\n\tactions: {\n\t\tlogin({commit}: {commit: any}, credentials: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.post('v1/tokens/create', {data: credentials})\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst token = response.token\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\ttoken: token,\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(response)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\tcommit('auth_error')\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\tsignup({commit }: {commit: any}, credentials: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\tcommit('auth_request')\n\n\t\t\t\taxios.post_data('v1/auth/signup', credentials)\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst token = response.token\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\ttoken: token,\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(response)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\tcommit('auth_error')\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\t// eslint-disable-next-line\n\t\tlogout({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve) => {\n\t\t\t\taxios.post_auth_data('v1/auth/invalidate')\n\t\t\t\t\t.finally(() => {\n\t\t\t\t\t\tcommit('logout')\n\t\t\t\t\t\tresolve(null)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\t// eslint-disable-next-line\n\t\tforgotPassword({commit}: {commit: any}, credentials: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.post('v1/users/forgot', {data: credentials})\n\t\t\t\t\t.then(response => resolve(response))\n\t\t\t\t\t.catch(error => reject(error))\n\t\t\t})\n\t\t},\n\t\t// eslint-disable-next-line\n\t\tresetPassword({commit}: {commit: any}, credentials: any) {\n\t\t\tcommit('auth_success', {token: credentials.token})\n\t\t\t\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.post_auth_data('v1/users/reset', {data: credentials})\n\t\t\t\t\t.then(response => {\n\t\t\t\t\t\tcommit('logout')\n\t\t\t\t\t\tresolve(response)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => reject(error))\n\t\t\t})\n\t\t},\n\t\tasync refreshToken({commit}: {commit: any}) {\n\t\t\ttry {\n\t\t\t\tconst response: any = await axios.post_auth_data('v1/auth/refresh')\n\n\t\t\t\tconst token = response.token\n\t\t\t\tconst user = response.user\n\n\t\t\t\tcommit('auth_success', {\n\t\t\t\t\ttoken: token,\n\t\t\t\t\tuser: user\n\t\t\t\t})\n\n\t\t\t\treturn token\n\t\t\t} catch (error) {\n\t\t\t\tcommit('auth_error')\n\t\t\t\tconsole.error(error)\n\t\t\t}\n\t\t},\n\t\tasync userInfo({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/auth/info')\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(user)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\tupdateUserInfo({commit}: {commit: any}, data: any) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.put_auth(`v1/users/${data.id}`, {data: data})\n\t\t\t\t\t.then((response: any) => {\n\t\t\t\t\t\tconst user = response.user\n\n\t\t\t\t\t\tcommit('auth_success', {\n\t\t\t\t\t\t\tuser: user\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresolve(user)\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\t},\n\tgetters: {\n\t\tisLoggedIn: (state: any) => {\n\t\t\treturn !!state.token\n\t\t},\n\t\tuser: (state: any) => {\n\t\t\treturn state.user\n\t\t},\n\t\ttoken: (state: any) => {\n\t\t\treturn (state.token && state.token != undefined) ? state.token : null\n\t\t}\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport auth \t\tfrom './auth.store'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled == true) return\n\n\t\tif (!app.config.globalProperties.$store)\n\t\t\treturn console.warn('[w/auth] Could not initialize. App does not have vuex store added.')\n\n\t\tapp.config.globalProperties.$store.registerModule('auth', auth)\n\t}\n}","import { Options } \tfrom './types'\n// import { Toast } from './models/Toast'\nimport 'vue-toast-notification/dist/theme-sugar.css'\nimport VueToast from 'vue-toast-notification'\n\nexport default {\n\tinstall: (app, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.use(VueToast)\n\n\t\t// app.config.globalProperties.$wToast = new Toast()\n\t\tapp.config.globalProperties.$parseError = (error) => error?.data?.message || error?.response?.data?.message || error?.message || error\n\t}\n}","\n\n\n\n","import { render } from \"./w-loadable.vue?vue&type=template&id=a2444234&scoped=true\"\nimport script from \"./w-loadable.vue?vue&type=script&lang=js\"\nexport * from \"./w-loadable.vue?vue&type=script&lang=js\"\n\nimport \"./w-loadable.vue?vue&type=style&index=0&id=a2444234&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a2444234\"]])\n\nexport default __exports__","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport WLoadable\tfrom './_components/w-loadable.vue'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.component('W-loadable', WLoadable)\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\n\nimport axios\t \tfrom '@/plugins/w/axios'\nimport moxios\t \tfrom '@/plugins/w/moxios'\nimport events\t \tfrom '@/plugins/w/events'\nimport i18n\t \t\tfrom '@/plugins/w/i18n'\nimport ionic\t \tfrom '@/plugins/w/ionic'\nimport auth\t\t\tfrom '@/plugins/w/auth'\nimport toast\t\tfrom '@/plugins/w/toast'\nimport loadable\t\tfrom '@/plugins/w/loadable'\n\nexport default {\n\tinstall: (app: App, options: Options = {}) => {\n\t\tevents.install(app, options.events)\n\t\taxios.install(app, options.axios)\n\t\ti18n.install(app, options.i18n)\n\t\tmoxios.install(app, options.moxios)\n\t\tionic.install(app, options.ionic)\n\t\tauth.install(app, options.auth)\n\t\ttoast.install(app, options.toast)\n\t\tloadable.install(app, options.loadable)\n\t}\n}","import { $t } from '@/plugins/app/_config/main'\n\nexport default {\n\tparseAndTranslate(data) {\n\t\tconst errorsArray = this._parseToArrayOfStrings(data)\n\t\treturn errorsArray.join(', ')\n\t},\n\n\t_parseToArrayOfStrings(data) {\n\t\tif (data?.data?.message) {\n\t\t\treturn [$t(data.data.message)]\n\t\t}\n\n\t\tif (typeof data == 'string') {\n\t\t\treturn [$t(data)]\n\t\t}\n\n\t\tif (data?.response?.data)\n\t\t\treturn Object.values(data?.response?.data)\n\n\t\tif (data && data.error && typeof data.error == 'string') {\n\t\t\treturn [$t(data.error)]\n\t\t}\n\n\t\tif (data && data.error && typeof data.error == 'object') {\n\t\t\treturn Object.values($t(data.error))\n\t\t}\n\n\t\tif (data.data && data.data.error && typeof data.data.error == 'string') {\n\t\t\treturn [$t(data.data.error)]\n\t\t}\n\n\t\tif (data && data.data && data.data.error && typeof data.data.error == 'object') {\n\t\t\treturn Object.values(data.data.error).map(error => $t(error[0]) + ' ')\n\t\t}\n\n\t\tif (data.statusText) {\n\t\t\treturn [$t(data.statusText)]\n\t\t}\n\n\t\treturn [data]\n\t}\n}","import axios from 'axios'\nimport store from '@/store'\nimport toastUtils from '@/plugins/w/toast/utils/toast.utils'\n\naxios.defaults.baseURL = process.env.VUE_APP_WAXIOS_URL\n\nexport default {\n\tasync get(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync get_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync get_data(url: string, config?: any) {\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync get_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.get(url, config)\n\t\t\t.then(response => Promise.resolve(response.data.data))\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync post(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync post_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync post_data(url: string, params = null, config?: any) {\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync post_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.post(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync delete(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync delete_auth(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync delete_data(url: string, config?: any) {\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync delete_auth_data(url: string, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.delete(url, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync patch(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync patch_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync patch_auth_form(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\t\tconfig.headers['Content-Type'] = 'multipart/form-data'\n\t\tconst formData = this._objectToFormData(params)\n\t\tformData.append('_method', 'put')\n\t\tconfig.transformRequest = formData => formData\n\n\t\treturn axios.post(url, formData, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync patch_data(url: string, params = null, config?: any) {\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync patch_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.patch(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync put(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync put_auth(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, {data: params}, config)\n\t\t\t.then(response => response.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error)))\n\t},\n\n\tasync put_data(url: string, params = null, config?: any) {\n\t\treturn axios.put(url, this._objectToFormData(params), config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\tasync put_auth_data(url: string, params = null, config?: any) {\n\t\tconfig = this._config(config)\n\n\t\treturn axios.put(url, {data: params}, config)\n\t\t\t.then(response => response.data.data)\n\t\t\t.catch(error => Promise.reject(toastUtils.parseAndTranslate(error.response || error)))\n\t},\n\n\t_config(config: any) {\n\t\tif (config) console.error('NOT IMPLEMENTED')\n\n\t\tif (!store.getters['auth/token']) {\n\t\t\treturn {headers: {}}\n\t\t}\n\n\t\treturn {\n\t\t\theaders: {\n\t\t\t\tAuthorization: `Bearer ${store.getters['auth/token']}`\n\t\t\t}\n\t\t}\n\t},\n\n\t_buildFormData(formData, data, parentKey) {\n\t\tif (data && typeof data === 'object' && !(data instanceof Date) && !(data instanceof File))\n\t\t\tObject.keys(data).forEach(key => this._buildFormData(formData, data[key], parentKey ? `${parentKey}[${key}]` : key));\n\t\telse\n\t\t\tformData.append(parentKey, data == null ? '' : data);\n\t},\n\n\t_objectToFormData(data) {\n\t\tconst formData = new FormData()\n\t\tthis._buildFormData(formData, {data: data})\n\n\t\treturn formData\n\t}\n}","import { App } \t\tfrom 'vue'\nimport { Options } \tfrom './types'\nimport axios \t\tfrom './models/axios'\n\nexport default {\n\tinstall: (app: App, options: Options) => {\n\t\tif (options && options.disabled === true) return\n\n\t\tapp.config.globalProperties.$axios = axios\n\t}\n}","import axios from '@/plugins/w@custom/axios/models/axios'\nimport store from '@/store'\n\nexport default {\n\tnamespaced: true,\n\n\tstate: {\n\t\tmastertasks: null,\n\t\temployees: null,\n\t\tteams: null,\n\t\tprojects: null,\n\t\tunscheduledSubtasks: null,\n\t\tongoingSubtasks: null,\n\t\tinitialized: false,\n\t\tongoingSubtasksEmployeeId: null,\n\t\tunscheduledSubtasksEmployeeId: null\n\t},\n\n\tmutations: {\n\t\tset_mastertasks(state: any, mastertasks: any) {\n\t\t\tstate.mastertasks = mastertasks\n\t\t},\n\n\t\tset_employees(state: any, employees: any) {\n\t\t\tstate.employees = employees\n\n\t\t\t// TODO: Remove\n\t\t\t// const employee = employees.find(employee => employee.email == 'zachariah.vonrueden@jandl.sk')\n\t\t\t// store.commit('auth/auth_success', {\n\t\t\t// \tuser: employee\n\t\t\t// })\n\t\t},\n\n\t\tset_teams(state: any, teams: any) {\n\t\t\tstate.teams = teams\n\t\t},\n\n\t\tset_projects(state: any, projects: any) {\n\t\t\tstate.projects = projects\n\t\t},\n\n\t\tset_unscheduled_subtasks(state: any, subtasks: any) {\n\t\t\tstate.unscheduledSubtasks = subtasks\n\t\t},\n\n\t\tset_ongoing_subtasks(state: any, subtasks: any) {\n\t\t\tstate.ongoingSubtasks = subtasks\n\t\t},\n\n\t\tremove_ongoing_subtask(state: any, subtaskId: any) {\n\t\t\tstate.ongoingSubtasks = state.ongoingSubtasks.filter(st => st.id != subtaskId)\n\t\t},\n\n\t\tupdate_team(state: any, team: any) {\n\t\t\tstate.teams = state.teams.map(t => {\n\t\t\t\tif (t.id == team.id)\n\t\t\t\t\treturn team\n\n\t\t\t\treturn t\n\t\t\t})\n\t\t},\n\n\t\tsave_team(state: any, team: any) {\n\t\t\tstate.teams.push(team)\n\t\t},\n\n\t\tdelete_team(state: any, team: any) {\n\t\t\tstate.teams = state.teams.filter(t => t.id != team.id)\n\t\t},\n\n\t\tupdate_subtask(state: any, subtask: any) {\n\t\t\tstate.unscheduledSubtasks \t= state.unscheduledSubtasks.map(st \t\t=> st.id == subtask.id ? subtask : st)\n\t\t\tstate.ongoingSubtasks \t\t= state.ongoingSubtasks.map(st \t\t\t=> st.id == subtask.id ? subtask : st)\n\t\t\t\n\t\t\t// state.mastertasks \t\t\t= state.mastertasks.map(mastertask \t\t=> {\n\t\t\t// \tmastertask.subtasks \t= mastertask.subtasks.map(st => st.id == subtask.id ? subtask : st)\n\t\t\t// \treturn mastertask\n\t\t\t// })\n\t\t},\n\n\t\tdelete_subtask(state: any, subtask: any) {\n\t\t\tstate.unscheduledSubtasks \t= state.unscheduledSubtasks.filter(st \t=> st.id != subtask.id)\n\t\t\tstate.ongoingSubtasks \t\t= state.ongoingSubtasks.filter(st \t\t=> st.id != subtask.id)\n\n\t\t\t// state.mastertasks \t\t\t= state.mastertasks.map(mastertask \t\t=> {\n\t\t\t// \tmastertask.subtasks = mastertask.subtasks.filter(st => st.id != subtask.id)\n\t\t\t// \treturn mastertask\n\t\t\t// })\n\t\t},\n\n\t\tset_ongoing_subtasks_employee_id(state: any, employeeId: any) {\n\t\t\tstate.ongoingSubtasksEmployeeId = employeeId\n\t\t},\n\n\t\tset_unscheduled_subtasks_employee_id(state: any, employeeId: any) {\n\t\t\tstate.unscheduledSubtasksEmployeeId = employeeId\n\t\t},\n\n\t\tinitialized(state: any) {\n\t\t\tstate.initialized = true\n\t\t}\n\t},\n\n\tactions: {\n\t\tinitialize({dispatch, commit}: {dispatch: any, commit: any}) {\n\t\t\treturn Promise.all([\n\t\t\t\tdispatch('loadMastertasks'),\n\t\t\t\tdispatch('loadEmployees'),\n\t\t\t\tdispatch('loadTeams'),\n\t\t\t\tdispatch('loadProjects'),\n\t\t\t\tdispatch('loadUnscheduledSubtasks'),\n\t\t\t\tdispatch('loadOngoingSubtasks')\n\t\t\t]).then(() => commit('initialized'))\n\t\t},\n\n\t\treloadSubtasks({dispatch}: {dispatch: any}) {\n\t\t\treturn Promise.all([\n\t\t\t\tdispatch('loadMastertasks'),\n\t\t\t\tdispatch('loadProjects'),\n\t\t\t\tdispatch('loadUnscheduledSubtasks'),\n\t\t\t\tdispatch('loadOngoingSubtasks')\n\t\t\t])\n\t\t},\n\n\t\treloadMastertasks({dispatch}: {dispatch: any}) {\n\t\t\treturn Promise.all([\n\t\t\t\tdispatch('loadMastertasks')\n\t\t\t])\n\t\t},\n\n\t\tloadMastertasks({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\t// axios.get_auth('v1/mastertasks')\n\t\t\t\taxios.get_auth('v1/mastertasks/?simple=true')\n\t\t\t\t\t.then(({ mastertasks }) => {\n\t\t\t\t\t\tcommit('set_mastertasks', mastertasks)\n\t\t\t\t\t\tresolve(mastertasks)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_mastertasks', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\n\t\tloadEmployees({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/employees')\n\t\t\t\t\t.then(employees => {\n\t\t\t\t\t\tcommit('set_employees', employees)\n\t\t\t\t\t\tresolve(employees)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_employees', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t\t\n\t\t},\n\n\t\tloadTeams({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/teams')\n\t\t\t\t\t.then(teams => {\n\t\t\t\t\t\tcommit('set_teams', teams)\n\t\t\t\t\t\tresolve(teams)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_teams', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\n\t\tloadProjects({commit}: {commit: any}) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth_data('v1/projects')\n\t\t\t\t\t.then(project => {\n\t\t\t\t\t\tcommit('set_projects', project)\n\t\t\t\t\t\tresolve(project)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_projects', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t\t\n\t\t},\n\n\t\tloadUnscheduledSubtasks({commit, state}: {commit: any, state: any}, employeeId = undefined) {\n\t\t\tlet employeeIdToUse = undefined\n\n\t\t\tif (employeeId) {\n\t\t\t\temployeeIdToUse = employeeId\n\t\t\t\tcommit('set_unscheduled_subtasks_employee_id', employeeId)\n\t\t\t} else if (state.unscheduledSubtasksEmployeeId) {\n\t\t\t\temployeeIdToUse = state.unscheduledSubtasksEmployeeId\n\t\t\t} else {\n\t\t\t\temployeeIdToUse = store.getters['auth/user']?.id\n\t\t\t}\n\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth(`v1/subtasks?type=unscheduled&employee_id=${employeeIdToUse}`)\n\t\t\t\t\t.then(({subtasks}) => {\n\t\t\t\t\t\tcommit('set_unscheduled_subtasks', subtasks)\n\t\t\t\t\t\tresolve(subtasks)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_unscheduled_subtasks', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t})\n\t\t},\n\n\t\tloadOngoingSubtasks({commit, state}: {commit: any, state: any}, employeeId = undefined) {\n\t\t\tlet employeeIdToUse = undefined\n\n\t\t\tif (employeeId) {\n\t\t\t\temployeeIdToUse = employeeId\n\t\t\t\tcommit('set_ongoing_subtasks_employee_id', employeeId)\n\t\t\t} else if (state.ongoingSubtasksEmployeeId) {\n\t\t\t\temployeeIdToUse = state.ongoingSubtasksEmployeeId\n\t\t\t} else {\n\t\t\t\temployeeIdToUse = store.getters['auth/user']?.id\n\t\t\t\tcommit('set_ongoing_subtasks_employee_id', employeeIdToUse)\n\t\t\t}\n\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\taxios.get_auth(`v1/subtasks?type=ongoing&employee_id=${employeeIdToUse}`)\n\t\t\t\t\t.then(({subtasks}) => {\n\t\t\t\t\t\tcommit('set_ongoing_subtasks', subtasks)\n\t\t\t\t\t\tresolve(subtasks)\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tcommit('set_ongoing_subtasks', {error: error})\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t},\n\n\t\tremoveOngoingSubtask({commit}: {commit: any}, subtaskId: any) {\n\t\t\tcommit('remove_ongoing_subtask', subtaskId)\n\t\t}\n\n\t},\n\n\tgetters: {\n\t\tmastertasks: (state: any) => {\n\t\t\treturn state.mastertasks\n\t\t},\n\n\t\temployees: (state: any) => {\n\t\t\treturn state.employees\n\t\t},\n\n\t\tenrichedEmployees: (state: any) => {\n\t\t\tif (!state.employees) return []\n\t\t\t\n\t\t\treturn state.employees.map(employee => ({\n\t\t\t\t...employee, \n\t\t\t\t_fullName: `${ employee.name } ${ employee.surname }`,\n\t\t\t\t_initials: employee.name.charAt(0) + employee.surname.charAt(0)\n\t\t\t})).sort((a, b) => a.name < b.name ? -1 : 1)\n\t\t},\n\n\t\tteams: (state: any) => {\n\t\t\treturn state.teams\n\t\t},\n\n\t\tprojects: (state: any) => {\n\t\t\treturn state.projects\n\t\t},\n\n\t\tunscheduledSubtasks: (state: any) => {\n\t\t\treturn state.unscheduledSubtasks\n\t\t},\n\n\t\tongoingSubtasks: (state: any) => {\n\t\t\treturn state.ongoingSubtasks\n\t\t},\n\n\t\tisInitialized: (state: any) => {\n\t\t\treturn state.initialized\n\t\t}\n\t}\n}","import { App } \t\tfrom 'vue'\nimport tmStore \tfrom './store'\n\nexport default {\n\tinstall: (app: App) => {\n\t\tapp.config.globalProperties.$store.registerModule('tm', tmStore)\n\t}\n}","\n\n\n","/**\n * Date Utils & prototypes.\n *\n * Waiting for VS Code to support JavaScript private fields.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_fields\n * Meantime keep `_` for private.\n */\n\nlet now, todayDate, todayF, self\nlet _dateObject = {}\nlet _timeObject = {}\n\nexport default class DateUtils {\n texts = {}\n\n constructor (texts, noPrototypes = false) {\n self = this // For use in Date prototypes.\n this._texts = texts\n\n // Add prototypes ASAP - only once.\n if (!noPrototypes && Date && !Date.prototype.addDays) this._initDatePrototypes()\n\n // @todo: This would be nicer, but how to set Date.noPrototypes ASAP only if user wants?\n // if (Date.noPrototypes) delete Date.noPrototypes\n // else this._initDatePrototypes()\n }\n\n _initDatePrototypes () {\n /* eslint-disable no-extend-native */\n Date.prototype.addDays = function (days) { return self.addDays(this, days) }\n Date.prototype.subtractDays = function (days) { return self.subtractDays(this, days) }\n Date.prototype.addHours = function (hours) { return self.addHours(this, hours) }\n Date.prototype.subtractHours = function (hours) { return self.subtractHours(this, hours) }\n Date.prototype.addMinutes = function (minutes) { return self.addMinutes(this, minutes) }\n Date.prototype.subtractMinutes = function (minutes) { return self.subtractMinutes(this, minutes) }\n Date.prototype.getWeek = function () { return self.getWeek(this) }\n Date.prototype.isToday = function () { return self.isToday(this) }\n Date.prototype.isLeapYear = function () { return self.isLeapYear(this) }\n Date.prototype.format = function (format = 'YYYY-MM-DD') { return self.formatDate(this, format) }\n Date.prototype.formatTime = function (format = 'HH:mm') { return self.formatTime(this, format) }\n /* eslint-enable no-extend-native */\n }\n\n removePrototypes () {\n delete Date.prototype.addDays\n delete Date.prototype.subtractDays\n delete Date.prototype.addHours\n delete Date.prototype.subtractHours\n delete Date.prototype.addMinutes\n delete Date.prototype.subtractMinutes\n delete Date.prototype.getWeek\n delete Date.prototype.isToday\n delete Date.prototype.isLeapYear\n delete Date.prototype.format\n delete Date.prototype.formatTime\n }\n\n updateTexts (texts) {\n this._texts = texts\n }\n\n // Cache Today's date (to a maximum) for better isToday() performances. Formatted without leading 0.\n // We still need to update Today's date when Today changes without page refresh.\n _todayFormatted () {\n if (todayDate !== (new Date()).getDate()) {\n now = new Date()\n todayDate = now.getDate()\n todayF = `${now.getFullYear()}-${now.getMonth()}-${now.getDate()}`\n }\n\n return todayF\n }\n\n // UTILITIES.\n // ====================================================================\n addDays (date, days) {\n const d = new Date(date.valueOf())\n d.setDate(d.getDate() + days)\n return d\n }\n\n subtractDays (date, days) {\n const d = new Date(date.valueOf())\n d.setDate(d.getDate() - days)\n return d\n }\n\n addHours (date, hours) {\n const d = new Date(date.valueOf())\n d.setHours(d.getHours() + hours)\n return d\n }\n\n subtractHours (date, hours) {\n const d = new Date(date.valueOf())\n d.setHours(d.getHours() - hours)\n return d\n }\n\n addMinutes (date, minutes) {\n const d = new Date(date.valueOf())\n d.setMinutes(d.getMinutes() + minutes)\n return d\n }\n\n subtractMinutes (date, minutes) {\n const d = new Date(date.valueOf())\n d.setMinutes(d.getMinutes() - minutes)\n return d\n }\n\n getWeek (date) {\n const d = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))\n const dayNum = d.getUTCDay() || 7\n d.setUTCDate(d.getUTCDate() + 4 - dayNum)\n const yearStart = new Date(Date.UTC(d.getUTCFullYear(), 0, 1))\n return Math.ceil((((d - yearStart) / 86400000) + 1) / 7)\n }\n\n isToday (date) {\n return `${date.getFullYear()}-${date.getMonth()}-${date.getDate()}` === this._todayFormatted()\n }\n\n isLeapYear (date) {\n const year = date.getFullYear()\n return !(year % 400) || (year % 100 && !(year % 4))\n }\n\n // Returns today if it's FirstDayOfWeek (Monday or Sunday) or previous FirstDayOfWeek otherwise.\n getPreviousFirstDayOfWeek (date = null, weekStartsOnSunday) {\n const prevFirstDayOfWeek = (date && new Date(date.valueOf())) || new Date()\n const dayModifier = weekStartsOnSunday ? 7 : 6\n prevFirstDayOfWeek.setDate(prevFirstDayOfWeek.getDate() - (prevFirstDayOfWeek.getDay() + dayModifier) % 7)\n return prevFirstDayOfWeek\n }\n\n /**\n * Converts a string to a Javascript Date object. If a Date object is passed, return it as is.\n *\n * @param {String | Date} date the string to convert to Date.\n * @return {Date} the equivalent Javascript Date object.\n */\n stringToDate (date) {\n if (date instanceof Date) return date\n // Regexp way is less performant: https://jsperf.com/string-to-date-regexp-vs-new-date\n // const [, y, m, d, h = 0, min = 0] = date.match(/(\\d{4})-(\\d{2})-(\\d{2})(?: (\\d{2}):(\\d{2}))?/)\n // return new Date(y, parseInt(m) - 1, d, h, min)\n\n if (date.length === 10) date += ' 00:00'\n return new Date(date.replace(/-/g, '/')) // replace '-' with '/' for Safari.\n }\n\n /**\n * Simply takes a Date and returns the associated time in minutes (sum of hours + minutes).\n *\n * @param {Date} date the JavaScript Date to extract minutes from.\n * @return {Number} the number of minutes (total of hours plus minutes).\n */\n dateToMinutes = date => date.getHours() * 60 + date.getMinutes()\n\n /**\n * Count the number of days this date range spans onto.\n * E.g. countDays(2019-11-02 18:00, 2019-11-03 02:00) = 2\n *\n * @param {String | Date} start the start date\n * @param {String | Date} end the end date\n * @return {Integer} The number of days this date range involves\n */\n countDays (start, end) {\n // replace '-' with '/' for Safari.\n if (typeof start === 'string') start = start.replace(/-/g, '/')\n if (typeof end === 'string') end = end.replace(/-/g, '/')\n\n // Set start & end at midnight then compare the delta. Don't modify the original dates.\n start = (new Date(start)).setHours(0, 0, 0, 0)\n // Set end at midnight plus 1 sec, so Math.ceil will round it up to a full day.\n end = (new Date(end)).setHours(0, 0, 1, 0)\n\n // Remove the potential daylight saving delta.\n const timezoneDiffMs = (new Date(end).getTimezoneOffset() - new Date(start).getTimezoneOffset()) * 60 * 1000\n return Math.ceil((end - start - timezoneDiffMs) / (24 * 3600 * 1000))\n }\n\n /**\n * Take 2 dates and check if within the same time step (useful in overlapping events).\n *\n * @return {Boolean} `true` if their time is included in the same time step,\n * this means these 2 dates are very close.\n */\n datesInSameTimeStep (date1, date2, timeStep) {\n return Math.abs(date1.getTime() - date2.getTime()) <= timeStep * 60 * 1000\n }\n // ====================================================================\n\n // FORMATTERS.\n // ====================================================================\n /**\n * Formats a date/time to the given format and returns the formatted string.\n *\n * @param {Date} date a JavaScript Date object to format.\n * @param {String} format the wanted format.\n * @param {Object} texts Optional: the localized texts object to override the vue-cal one in this._texts.\n * This becomes useful when showing multiple instances with different languages,\n * like in the documentation page.\n * @return {String} the formatted date.\n */\n formatDate (date, format = 'YYYY-MM-DD', texts = null) {\n if (!texts) texts = this._texts\n if (!format) format = 'YYYY-MM-DD' // Allows passing null for default format.\n if (format === 'YYYY-MM-DD') return this.formatDateLite(date)\n\n // Reinit the date and time object on each function call.\n _dateObject = {}\n _timeObject = {}\n\n // Each keyword is a function to load the dateObject or timeObject on demand: no wasted resource.\n const dateObj = {\n YYYY: () => this._hydrateDateObject(date, texts).YYYY,\n YY: () => this._hydrateDateObject(date, texts).YY(),\n M: () => this._hydrateDateObject(date, texts).M,\n MM: () => this._hydrateDateObject(date, texts).MM(),\n MMM: () => this._hydrateDateObject(date, texts).MMM(),\n MMMM: () => this._hydrateDateObject(date, texts).MMMM(),\n MMMMG: () => this._hydrateDateObject(date, texts).MMMMG(),\n D: () => this._hydrateDateObject(date, texts).D,\n DD: () => this._hydrateDateObject(date, texts).DD(),\n S: () => this._hydrateDateObject(date, texts).S(),\n d: () => this._hydrateDateObject(date, texts).d,\n dd: () => this._hydrateDateObject(date, texts).dd(),\n ddd: () => this._hydrateDateObject(date, texts).ddd(),\n dddd: () => this._hydrateDateObject(date, texts).dddd(),\n HH: () => this._hydrateTimeObject(date, texts).HH,\n H: () => this._hydrateTimeObject(date, texts).H,\n hh: () => this._hydrateTimeObject(date, texts).hh,\n h: () => this._hydrateTimeObject(date, texts).h,\n am: () => this._hydrateTimeObject(date, texts).am,\n AM: () => this._hydrateTimeObject(date, texts).AM,\n mm: () => this._hydrateTimeObject(date, texts).mm,\n m: () => this._hydrateTimeObject(date, texts).m\n }\n\n return format.replace(/(\\{[a-zA-Z]+\\}|[a-zA-Z]+)/g, (m, contents) => {\n const result = dateObj[contents.replace(/\\{|\\}/g, '')]\n return result !== undefined ? result() : contents\n })\n }\n\n // More performant function to convert a Date to `YYYY-MM-DD` formatted string only.\n formatDateLite (date) {\n const m = date.getMonth() + 1\n const d = date.getDate()\n return `${date.getFullYear()}-${m < 10 ? '0' : ''}${m}-${d < 10 ? '0' : ''}${d}`\n }\n\n /**\n * Formats a time (from Date or number of mins) to the given format and returns the formatted string.\n *\n * @param {Date | Number} date a JavaScript Date object or a time in minutes.\n * @param {String} format the wanted format.\n * @param {Object} texts Optional: the localized texts object to override the vue-cal one in this._texts.\n * This becomes useful when showing multiple instances with different languages,\n * like in the documentation page.\n * @param {Boolean} round if time is 23:59:59, rounds up to 24:00 for formatting only.\n * @return {String} the formatted time.\n */\n formatTime (date, format = 'HH:mm', texts = null, round = false) {\n let shouldRound = false\n if (round) {\n const [h, m, s] = [date.getHours(), date.getMinutes(), date.getSeconds()]\n if ((h + m + s) === (23 + 59 + 59)) shouldRound = true\n }\n\n if (date instanceof Date && format === 'HH:mm') return shouldRound ? '24:00' : this.formatTimeLite(date)\n\n _timeObject = {} // Reinit the time object on each function call.\n if (!texts) texts = this._texts\n const timeObj = this._hydrateTimeObject(date, texts)\n\n const formatted = format.replace(/(\\{[a-zA-Z]+\\}|[a-zA-Z]+)/g, (m, contents) => {\n const result = timeObj[contents.replace(/\\{|\\}/g, '')]\n return result !== undefined ? result : contents\n })\n\n // Round 23:59:59 to 24:00. For 12-hour format there is nothing to replace: as both are 12am.\n // Also don't return `24:00` straight away as the user format may be different.\n return shouldRound ? formatted.replace('23:59', '24:00') : formatted\n }\n\n /**\n * Formats a time to 'HH:mm' from a Date and returns the formatted string.\n *\n * @param {Date} date a JavaScript Date object to format.\n * @return {String} the formatted time.\n */\n formatTimeLite (date) {\n const h = date.getHours()\n const m = date.getMinutes()\n return `${(h < 10 ? '0' : '') + h}:${(m < 10 ? '0' : '') + m}`\n }\n\n _nth (d) {\n if (d > 3 && d < 21) return 'th'\n switch (d % 10) {\n case 1: return 'st'\n case 2: return 'nd'\n case 3: return 'rd'\n default: return 'th'\n }\n }\n\n _hydrateDateObject (date, texts) {\n if (_dateObject.D) return _dateObject\n\n const YYYY = date.getFullYear()\n const M = date.getMonth() + 1\n const D = date.getDate()\n const day = date.getDay() // Day of the week.\n const dayNumber = (day - 1 + 7) % 7 // Day of the week. 0 to 6 with 6 = Sunday.\n // Some of this props are functions, to only calculate on demand.\n _dateObject = {\n // Year.\n YYYY, // 2019.\n YY: () => YYYY.toString().substring(2), // 19.\n\n // Month.\n M, // 1 to 12.\n MM: () => (M < 10 ? '0' : '') + M, // 01 to 12.\n MMM: () => texts.months[M - 1].substring(0, 3), // Jan to Dec.\n MMMM: () => texts.months[M - 1], // January to December.\n MMMMG: () => (texts.monthsGenitive || texts.months)[M - 1], // January to December in genitive form (Greek...)\n\n // Day.\n D, // 1 to 31.\n DD: () => (D < 10 ? '0' : '') + D, // 01 to 31.\n S: () => this._nth(D), // st, nd, rd, th.\n\n // Day of the week.\n d: dayNumber + 1, // 1 to 7 with 7 = Sunday.\n dd: () => texts.weekDays[dayNumber][0], // M to S.\n ddd: () => texts.weekDays[dayNumber].substr(0, 3), // Mon to Sun.\n dddd: () => texts.weekDays[dayNumber] // Monday to Sunday.\n }\n\n return _dateObject\n }\n\n _hydrateTimeObject (date, texts) {\n if (_timeObject.am) return _timeObject\n\n let H, m\n if (date instanceof Date) {\n H = date.getHours()\n m = date.getMinutes()\n }\n else {\n H = Math.floor(date / 60)\n m = Math.floor(date % 60)\n }\n\n const h = H % 12 ? H % 12 : 12\n const am = (texts || { am: 'am', pm: 'pm' })[H === 24 || H < 12 ? 'am' : 'pm']\n _timeObject = {\n H,\n h,\n HH: (H < 10 ? '0' : '') + H,\n hh: (h < 10 ? '0' : '') + h,\n am,\n AM: am.toUpperCase(),\n m,\n mm: (m < 10 ? '0' : '') + m\n }\n\n return _timeObject\n }\n // ====================================================================\n}\n","/**\n * Cell Utils.\n *\n * Waiting for VS Code to support JavaScript private fields.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_fields\n * Meantime keep `_` for private.\n */\n\nconst minutesInADay = 24 * 60\n\nexport default class CellUtils {\n _vuecal = null\n\n constructor (vuecal) {\n this._vuecal = vuecal\n }\n\n /**\n * Select a cell and go to narrower view on double click or single click according to vuecalProps option.\n *\n * @param {Boolean} force Force switching to narrower view.\n * @param {Date} date The selected cell date at the exact time where it was clicked (through cursor coords).\n * @param {Integer} split The selected cell split if any.\n */\n selectCell = (force = false, date, split) => {\n // Cell-click event returns a date and time at cursor position.\n this._vuecal.$emit('cell-click', split ? { date, split } : date)\n\n // Switch to narrower view.\n if (this._vuecal.clickToNavigate || force) this._vuecal.switchToNarrowerView()\n\n // Handle double click manually for touch devices.\n else if (this._vuecal.dblclickToNavigate && 'ontouchstart' in window) {\n this._vuecal.domEvents.dblTapACell.taps++\n\n setTimeout(() => (this._vuecal.domEvents.dblTapACell.taps = 0), this._vuecal.domEvents.dblTapACell.timeout)\n\n if (this._vuecal.domEvents.dblTapACell.taps >= 2) {\n this._vuecal.domEvents.dblTapACell.taps = 0\n this._vuecal.switchToNarrowerView()\n this._vuecal.$emit('cell-dblclick', split ? { date, split } : date)\n }\n }\n }\n\n /**\n * Select a cell and go to narrower view on enter.\n *\n * @param {Boolean} force Force switching to narrower view.\n * @param {Date} date The selected cell date at the exact time where it was clicked (through cursor coords).\n * @param {Integer} split The selected cell split if any.\n */\n keyPressEnterCell = (date, split) => {\n // Cell-key-press-enter event returns a date and time at cursor position.\n this._vuecal.$emit('cell-keypress-enter', split ? { date, split } : date)\n\n // Switch to narrower view.\n this._vuecal.switchToNarrowerView()\n }\n\n /**\n * Get the coordinates of the mouse cursor from the cells wrapper referential (`ref=\"cells\"`).\n *\n * @todo Cache bounding box & update it on resize.\n * @param {Object} e the native DOM event object.\n * @return {Object} containing { x: {Number}, y: {Number} }\n */\n getPosition = e => {\n const { left, top } = this._vuecal.cellsEl.getBoundingClientRect()\n const { clientX, clientY } = 'ontouchstart' in window && e.touches ? e.touches[0] : e\n return { x: clientX - left, y: clientY - top }\n }\n\n /**\n * Get the number of minutes from the top to the mouse cursor.\n * Returns a constrained time between 0 and 24 * 60.\n *\n * @param {Object} e the native DOM event object.\n * @return {Object} containing { minutes: {Number}, cursorCoords: { x: {Number}, y: {Number} } }\n */\n minutesAtCursor = e => {\n let minutes = 0\n let cursorCoords = { x: 0, y: 0 }\n const { timeStep, timeCellHeight, timeFrom } = this._vuecal.$props\n\n if (typeof e === 'number') minutes = e\n else if (typeof e === 'object') {\n cursorCoords = this.getPosition(e)\n minutes = Math.round(cursorCoords.y * timeStep / parseInt(timeCellHeight) + timeFrom)\n }\n\n return { minutes: Math.max(Math.min(minutes, minutesInADay), 0), cursorCoords }\n }\n}\n","/**\n * Events Utils.\n *\n * Waiting for VS Code to support JavaScript private fields.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_fields\n * Meantime keep `_` for private.\n */\n\nconst defaultEventDuration = 2 // In hours.\nconst minutesInADay = 24 * 60 // Don't do the maths every time.\n\nlet ud\n\n// Event overlaps: only for the current view, recreated on view change.\nlet _cellOverlaps, _comparisonArray\n\n// This is an approximation, it will not work with DLS time.\n// const approxDayMilliseconds = minutesInADay * 60 * 1000\n// This is an approximate minimum we can get in a year. Purposely stay below 365 but close.\n// const minYearMilliseconds = 364 * approxDayMilliseconds // Don't do the maths every time.\n\nexport default class EventUtils {\n _vuecal = null\n\n eventDefaults = {\n _eid: null,\n start: '', // Externally given formatted date & time or Date object.\n startTimeMinutes: 0,\n end: '', // Externally given formatted date & time or Date object.\n endTimeMinutes: 0,\n title: '',\n content: '',\n background: false,\n allDay: false,\n segments: null,\n repeat: null,\n daysCount: 1,\n deletable: true,\n deleting: false,\n titleEditable: true,\n resizable: true,\n resizing: false,\n draggable: true,\n dragging: false,\n draggingStatic: false, // Controls the CSS class of the static clone while dragging.\n focused: false,\n class: ''\n }\n\n constructor (vuecal, dateUtils) {\n this._vuecal = vuecal\n ud = dateUtils\n }\n\n /**\n * Create an event at the given date and time, and allow overriding\n * event attributes through the eventOptions object.\n *\n * @param {Date | String} dateTime The date and time of the new event start.\n * @param {Number} duration the event duration in minutes.\n * @param {Object} eventOptions some options to override the `eventDefaults` - optional.\n */\n createAnEvent (dateTime, duration, eventOptions) {\n if (typeof dateTime === 'string') dateTime = ud.stringToDate(dateTime)\n if (!(dateTime instanceof Date)) return false\n\n const startTimeMinutes = ud.dateToMinutes(dateTime)\n duration = duration * 1 || defaultEventDuration * 60\n const endTimeMinutes = startTimeMinutes + duration\n const end = ud.addMinutes(new Date(dateTime), duration)\n\n // Automatically add the required endTimeMinutes when passing an end.\n if (eventOptions.end) {\n if (typeof eventOptions.end === 'string') eventOptions.end = ud.stringToDate(eventOptions.end)\n eventOptions.endTimeMinutes = ud.dateToMinutes(eventOptions.end)\n }\n\n const event = {\n ...this.eventDefaults,\n _eid: `${this._vuecal._.uid}_${this._vuecal.eventIdIncrement++}`,\n start: dateTime,\n startTimeMinutes,\n end,\n endTimeMinutes,\n segments: null,\n ...eventOptions\n }\n\n // If the onEventCreate() function is given as a parameter to vue-cal:\n // 1. give it access to the created event & the deleteAnEvent() function.\n // 2. Prevent creation of the event if this function returns false.\n if (typeof this._vuecal.onEventCreate === 'function') {\n if (!this._vuecal.onEventCreate(event, () => this.deleteAnEvent(event))) return\n }\n\n // Check if event is a multiple day event and update days count.\n if (event.startDateF !== event.endDateF) {\n event.daysCount = ud.countDays(event.start, event.end)\n }\n\n // Add event to the mutableEvents array.\n this._vuecal.mutableEvents.push(event)\n\n // Add the new event to the current view.\n // The event may have been edited on the fly to become a multiple-day event,\n // the method addEventsToView makes sure the segments are created.\n this._vuecal.addEventsToView([event])\n\n this._vuecal.emitWithEvent('event-create', event)\n this._vuecal.$emit('event-change', { event: this._vuecal.cleanupEvent(event), originalEvent: null })\n\n return event\n }\n\n /**\n * Add an event segment (= day) to a multiple-day event.\n *\n * @param {Object} e the multiple-day event to add segment in.\n */\n addEventSegment (e) {\n // If event was previously single-day, event.segments = null,\n // so first create the first segment (first day).\n if (!e.segments) {\n e.segments = {}\n e.segments[ud.formatDateLite(e.start)] = {\n start: e.start,\n startTimeMinutes: e.startTimeMinutes,\n endTimeMinutes: minutesInADay,\n isFirstDay: true,\n isLastDay: false\n }\n }\n\n // Modify the last segment - which will not stay the last one after this function.\n const previousSegment = e.segments[ud.formatDateLite(e.end)]\n // previousSegment might not exist when dragging too fast, prevent errors.\n if (previousSegment) {\n previousSegment.isLastDay = false\n previousSegment.endTimeMinutes = minutesInADay\n }\n else {\n // @todo: when moving fast might lose the previousSegment.\n // Trying to update it would then result in an error, but do nothing would create a visual bug.\n }\n\n // Create the new last segment.\n const start = ud.addDays(e.end, 1)\n const formattedDate = ud.formatDateLite(start)\n start.setHours(0, 0, 0, 0)\n e.segments[formattedDate] = {\n start,\n startTimeMinutes: 0,\n endTimeMinutes: e.endTimeMinutes,\n isFirstDay: false,\n isLastDay: true\n }\n\n e.end = ud.addMinutes(start, e.endTimeMinutes)\n e.daysCount = Object.keys(e.segments).length\n\n return formattedDate\n }\n\n /**\n * Remove an event segment (= day) from a multiple-day event.\n *\n * @param {Object} e the multiple-day event to remove segments from.\n */\n removeEventSegment (e) {\n let segmentsCount = Object.keys(e.segments).length\n if (segmentsCount <= 1) return ud.formatDateLite(e.end)\n\n // Remove the last segment.\n delete e.segments[ud.formatDateLite(e.end)]\n segmentsCount--\n\n const end = ud.subtractDays(e.end, 1)\n const formattedDate = ud.formatDateLite(end)\n const previousSegment = e.segments[formattedDate]\n\n // If no more segments, reset the segments attribute to null.\n if (!segmentsCount) e.segments = null\n\n // previousSegment might not exist when dragging too fast, prevent errors.\n else if (previousSegment) {\n // Modify the new last segment.\n previousSegment.isLastDay = true\n previousSegment.endTimeMinutes = e.endTimeMinutes\n }\n else {\n // @todo: when moving fast might lose the previousSegment.\n // Trying to update it would then result in an error, but do nothing would create a visual bug.\n }\n\n e.daysCount = segmentsCount || 1\n e.end = end\n\n return formattedDate\n }\n\n /**\n * Create 1 segment per day of the given event, but only within the current view.\n * (It won't create segments for all the days in view that are not in the event!)\n *\n * An event segment is a piece of event per day that contains more day-specific data.\n *\n * @param {Object} e the multiple-day event to create segments for.\n * @param {Date} viewStartDate the starting date of the view.\n * @param {Date} viewEndDate the ending date of the view.\n */\n createEventSegments (e, viewStartDate, viewEndDate) {\n const viewStartTimestamp = viewStartDate.getTime()\n const viewEndTimestamp = viewEndDate.getTime()\n let eventStart = e.start.getTime()\n let eventEnd = e.end.getTime()\n let repeatedEventStartFound = false\n let timestamp, end, eventStartAtMidnight\n\n // @todo: I don't think we still need that:\n // Removing 1 sec when ending at 00:00, so that we don't create a segment for nothing on last day.\n if (!e.end.getHours() && !e.end.getMinutes()) eventEnd -= 1000\n\n e.segments = {}\n\n // The goal is to create 1 segment per day in the event, but only within the current view.\n if (!e.repeat) { // Simple case first.\n timestamp = Math.max(viewStartTimestamp, eventStart)\n end = Math.min(viewEndTimestamp, eventEnd)\n }\n else {\n // Start at the beginning of the range, and end at soonest between `repeat.until` if any or range end.\n // This range will most likely be too large (e.g. whole week) and we need to narrow it\n // down in the while loop below.\n // We must not create unused segments, it would break the render or result in weird behaviors.\n timestamp = viewStartTimestamp\n end = Math.min(\n viewEndTimestamp,\n e.repeat.until ? ud.stringToDate(e.repeat.until).getTime() : viewEndTimestamp\n )\n }\n\n while (timestamp <= end) {\n let createSegment = false\n // Be careful not to simply add 24 hours!\n // In case of DLS, that would cause the event to never end and browser to hang.\n // So use `addDays(1)` instead.\n const nextMidnight = ud.addDays(new Date(timestamp), 1).setHours(0, 0, 0, 0)\n let isFirstDay, isLastDay, start, formattedDate\n\n if (e.repeat) {\n const tmpDate = new Date(timestamp)\n const tmpDateFormatted = ud.formatDateLite(tmpDate)\n // If the current day in loop is a known date of the repeated event (in `e.occurrences`),\n // then we found the first day of the event repetition, now update the `eventStart` and\n // the end of the loop at current day + event days count.\n if (repeatedEventStartFound || (e.occurrences && e.occurrences[tmpDateFormatted])) {\n if (!repeatedEventStartFound) {\n eventStart = e.occurrences[tmpDateFormatted].start\n eventStartAtMidnight = new Date(eventStart).setHours(0, 0, 0, 0)\n eventEnd = e.occurrences[tmpDateFormatted].end\n }\n repeatedEventStartFound = true\n createSegment = true\n }\n\n isFirstDay = timestamp === eventStartAtMidnight\n isLastDay = tmpDateFormatted === ud.formatDateLite(new Date(eventEnd))\n start = new Date(isFirstDay ? eventStart : timestamp)\n formattedDate = ud.formatDateLite(start)\n // We want to find any potential other repetition of event in same range.\n if (isLastDay) repeatedEventStartFound = false\n }\n else {\n createSegment = true\n isFirstDay = timestamp === eventStart\n isLastDay = end === eventEnd && nextMidnight > end\n start = isFirstDay ? e.start : new Date(timestamp)\n formattedDate = ud.formatDateLite(isFirstDay ? e.start : start)\n }\n\n if (createSegment) {\n e.segments[formattedDate] = {\n start,\n startTimeMinutes: isFirstDay ? e.startTimeMinutes : 0,\n endTimeMinutes: isLastDay ? e.endTimeMinutes : minutesInADay,\n isFirstDay,\n isLastDay\n }\n }\n\n timestamp = nextMidnight\n }\n\n return e\n }\n\n /**\n * Delete an event.\n *\n * @param {Object} event the calendar event to delete.\n */\n deleteAnEvent (event) {\n this._vuecal.emitWithEvent('event-delete', event)\n\n // Delete the event globally.\n this._vuecal.mutableEvents = this._vuecal.mutableEvents.filter(e => e._eid !== event._eid)\n // Delete the event from the current view.\n // checkCellOverlappingEvents() will be re-run automatically from the cell computed events.\n this._vuecal.view.events = this._vuecal.view.events.filter(e => e._eid !== event._eid)\n }\n\n // EVENT OVERLAPS.\n // ===================================================================\n // Will recalculate all the overlaps of the current cell OR split.\n // cellEvents will contain only the current split events if in a split.\n checkCellOverlappingEvents (cellEvents, options) {\n _comparisonArray = cellEvents.slice(0)\n _cellOverlaps = {}\n\n // Can't filter background events before calling this function otherwise\n // when an event is changed to background it would not update its previous overlaps.\n cellEvents.forEach(e => {\n // For performance, never compare the current event in the next loops.\n // The array is smaller and smaller as we loop.\n _comparisonArray.shift()\n\n if (!_cellOverlaps[e._eid]) _cellOverlaps[e._eid] = { overlaps: [], start: e.start, position: 0, sameOverlaps: [] }\n _cellOverlaps[e._eid].position = 0\n\n _comparisonArray.forEach(e2 => {\n if (!_cellOverlaps[e2._eid]) _cellOverlaps[e2._eid] = { overlaps: [], start: e2.start, position: 0, sameOverlaps: [] }\n\n const eventIsInRange = this.eventInRange(e2, e.start, e.end)\n const eventSameOverlap = this.eventSameRange(e2, e)\n const eventsInSameTimeStep = options.overlapsPerTimeStep ? ud.datesInSameTimeStep(e.start, e2.start, options.timeStep) : 1\n // Add to the overlaps array if overlapping.\n if (!e.background && !e.allDay && !e2.background && !e2.allDay && eventIsInRange && eventsInSameTimeStep) {\n _cellOverlaps[e._eid].overlaps.push(e2._eid)\n _cellOverlaps[e._eid].overlaps = [...new Set(_cellOverlaps[e._eid].overlaps)] // Dedupe, most performant way.\n\n _cellOverlaps[e2._eid].overlaps.push(e._eid)\n _cellOverlaps[e2._eid].overlaps = [...new Set(_cellOverlaps[e2._eid].overlaps)] // Dedupe, most performant way.\n _cellOverlaps[e2._eid].position++\n \n if (eventSameOverlap) {\n _cellOverlaps[e._eid].sameOverlaps.push(e2._eid)\n _cellOverlaps[e._eid].sameOverlaps = [...new Set(_cellOverlaps[e._eid].sameOverlaps)] // Dedupe, most performant way.\n\n _cellOverlaps[e2._eid].sameOverlaps.push(e._eid)\n _cellOverlaps[e2._eid].sameOverlaps = [...new Set(_cellOverlaps[e2._eid].sameOverlaps)] // Dedupe, most performant way.\n }\n }\n // Remove from the overlaps array if not overlapping or if 1 of the 2 events is background or all-day long.\n else {\n let pos1, pos2\n if ((pos1 = (_cellOverlaps[e._eid] || { overlaps: [] }).overlaps.indexOf(e2._eid)) > -1) _cellOverlaps[e._eid].overlaps.splice(pos1, 1)\n if ((pos2 = (_cellOverlaps[e2._eid] || { overlaps: [] }).overlaps.indexOf(e._eid)) > -1) _cellOverlaps[e2._eid].overlaps.splice(pos2, 1)\n _cellOverlaps[e2._eid].position--\n }\n })\n })\n\n // Overlaps streak is the longest horizontal set of simultaneous events.\n // This is determining the width of events in a streak.\n // e.g. 3 overlapping events in a cell:\n // ___ ___\n // | 1 | |_2_| 1 overlaps 2 & 3; 2 & 3 don't overlap;\n // | | ___ => streak = 2; each width = 50% not 33%.\n // |___| |_3_|\n let longestStreak = 0\n for (const id in _cellOverlaps) {\n const item = _cellOverlaps[id]\n\n // Calculate the position of each event in current streak (determines the CSS left property).\n const overlapsRow = item.overlaps.map(id2 => ({ id: id2, start: _cellOverlaps[id2].start }))\n overlapsRow.push({ id, start: item.start })\n overlapsRow.sort((a, b) => a.start < b.start ? -1 : (a.start > b.start ? 1 : (a.id > b.id ? -1 : 1)))\n item.position = overlapsRow.findIndex(e => e.id === id)\n\n longestStreak = Math.max(this.getOverlapsStreak(item, _cellOverlaps), longestStreak)\n }\n\n // console.log([_cellOverlaps, longestStreak])\n\n return [_cellOverlaps, longestStreak]\n }\n\n /**\n * Overlaps streak is the longest horizontal set of simultaneous events.\n * This is determining the width of each events in this streak.\n * E.g. 3 overlapping events [1, 2, 3]; 1 overlaps 2 & 3; 2 & 3 don't overlap;\n * => streak = 2; each width = 50% not 33%.\n *\n * @param {Object} event The current event we are checking among all the events of the current cell.\n * @param {Object} cellOverlaps An indexed array of all the events overlaps for the current cell.\n * @return {Number} The number of simultaneous event for this event.\n */\n getOverlapsStreak (event, cellOverlaps = {}) {\n let streak = event.overlaps.length + 1\n let removeFromStreak = []\n event.overlaps.forEach(id => {\n if (!removeFromStreak.includes(id)) {\n const overlapsWithoutSelf = event.overlaps.filter(id2 => id2 !== id)\n overlapsWithoutSelf.forEach(id3 => {\n if (!cellOverlaps[id3].overlaps.includes(id)) removeFromStreak.push(id3)\n })\n }\n })\n\n removeFromStreak = [...new Set(removeFromStreak)] // Dedupe, most performant way.\n streak -= removeFromStreak.length\n return streak\n }\n\n /**\n * Tells whether an event is in a given date range, even partially.\n *\n * @param {Object} event The event to test.\n * @param {Date} start The start of range date object.\n * @param {Date} end The end of range date object.\n * @return {Boolean} true if in range, even partially.\n */\n eventInRange (event, start, end) {\n // Check if all-day or timeless event (if date but no time there won't be a `:` in event.start).\n if (event.allDay || !this._vuecal.time) {\n // Get the date and discard the time if any, then check it's within the date range.\n const startTimestamp = new Date(event.start).setHours(0, 0, 0, 0)\n const endTimestamp = new Date(event.end).setHours(23, 59, 0, 0)\n return (endTimestamp >= new Date(start).setHours(0, 0, 0, 0) &&\n startTimestamp <= new Date(end).setHours(0, 0, 0, 0))\n }\n\n const startTimestamp = event.start.getTime()\n const endTimestamp = event.end.getTime()\n return startTimestamp < end.getTime() && endTimestamp > start.getTime()\n }\n\n eventSameRange(event1, event2) {\n const isSameStart = event1.start.getTime() == event2.start.getTime()\n const isSameEnd = event1.end.getTime() == event2.end.getTime()\n return isSameStart && isSameEnd\n }\n}\n","
{{ split.label }}
","
","import { render } from \"./weekdays-headings.vue?vue&type=template&id=339102eb&lang=pug\"\nimport script from \"./weekdays-headings.vue?vue&type=script&lang=js\"\nexport * from \"./weekdays-headings.vue?vue&type=script&lang=js\"\n\nimport \"./weekdays-headings.vue?vue&type=style&index=0&id=339102eb&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./header.vue?vue&type=template&id=19ea4718&lang=pug\"\nimport script from \"./header.vue?vue&type=script&lang=js\"\nexport * from \"./header.vue?vue&type=script&lang=js\"\n\nimport \"./header.vue?vue&type=style&index=0&id=19ea4718&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","
{{ label }}
","
{{ cell.label }}\n
","
{{ vuecal.texts.deleteEvent }}
","import { render } from \"./event.vue?vue&type=template&id=4b2ee15a&lang=pug\"\nimport script from \"./event.vue?vue&type=script&lang=js\"\nexport * from \"./event.vue?vue&type=script&lang=js\"\n\nimport \"./event.vue?vue&type=style&index=0&id=4b2ee15a&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./cell.vue?vue&type=template&id=1eee7b54&lang=pug\"\nimport script from \"./cell.vue?vue&type=script&lang=js\"\nexport * from \"./cell.vue?vue&type=script&lang=js\"\n\nimport \"./cell.vue?vue&type=style&index=0&id=1eee7b54&lang=scss\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./all-day-bar.vue?vue&type=template&id=1fec77b5&lang=pug\"\nimport script from \"./all-day-bar.vue?vue&type=script&lang=js\"\nexport * from \"./all-day-bar.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./index.vue?vue&type=template&id=59399e28\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/Users/matejglasnak/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { App } \t\tfrom 'vue'\nimport VueCal from './index.vue'\n\n\nexport default {\n\tinstall: (app: App) => {\n\n\t\tapp.component('Vue-cal', VueCal)\n\t}\n}","import { createApp } \tfrom 'vue'\nimport { IonicVue } \tfrom '@ionic/vue'\nimport { loadFonts } \tfrom './webfontloader'\nimport vuetify \t\t\tfrom './vuetify'\nimport { registerQuillUrlSanitizer } from './quill.util'\nimport loader \t\t\tfrom 'vue-loading-overlay'\nimport App \t\t\t\tfrom './App.vue'\n\nimport router \t\t\tfrom './router'\nimport store \t\t\tfrom '@/store'\nimport w \t\t\t\tfrom '@/plugins/w/w'\nimport axiosCustom from '@/plugins/w@custom/axios'\nimport tmStore \t\t\tfrom '@/plugins/tm@_store'\nimport vueCal \t\t\tfrom '@/plugins/app@vendor/vue-cal'\nimport { Options } \t\tfrom '@/plugins/w/w/types'\n\nimport '@ionic/vue/css/core.css'\nimport '@ionic/vue/css/normalize.css'\nimport '@ionic/vue/css/structure.css'\nimport '@ionic/vue/css/typography.css'\nimport '@ionic/vue/css/padding.css'\nimport '@ionic/vue/css/float-elements.css'\nimport '@ionic/vue/css/text-alignment.css'\nimport '@ionic/vue/css/text-transformation.css'\nimport '@ionic/vue/css/flex-utils.css'\nimport '@ionic/vue/css/display.css'\n\nimport '@/plugins/app/_theme/index.sass'\nimport 'vue-loading-overlay/dist/vue-loading.css'\nimport '@vuepic/vue-datepicker/dist/main.css'\n\nloadFonts()\nregisterQuillUrlSanitizer()\n\nconst options: Options = {\n\taxios: {\n\t\tdisabled: true\n\t},\n\ti18n: {\n\t\tlanguages: [\n\t\t\t{\n\t\t\t\ttitle: \"Slovenský\", flag: \"sk\", value: \"sk\"\n\t\t\t}\n\t\t],\n\t\tdefaultLanguage: 'sk'\n\t},\n\tmoxios: {\n\t\troutes: {\n\t\t\t// 'GET v1/auth/info': true,\n\t\t\t// 'POST v1/auth/forgot': true,\n\t\t\t// 'POST v1/auth/reset': true,\n\t\t\t// 'POST v1/auth/info': true,\n\t\t\t// 'POST v1/auth/invalidate': true,\n\t\t\t// 'POST v1/auth/login': true,\n\t\t\t// 'POST v1/auth/post': true,\n\n\t\t\t'GET v1/overview/teams': true,\n\t\t\t'GET v1/overview/tasks': true,\n\t\t\t// 'GET v1/search': true,\n\t\t}\n\t}\n}\n\nconst app = createApp(App)\n\t.use(router)\n\t.use(store)\n\t.use(axiosCustom)\n\t.use(w, options)\n\t.use(IonicVue)\n\t.use(vuetify)\n\t.use(vueCal)\n\t.use(tmStore)\n\t.use(loader, {\n\t\tcolor: '#6200EE'\n\t})\n\t.mount('#app')\n\n// @ts-expect-error\nexport const $t = app.$i18n.t\n","import { $t } from '@/plugins/app/_config/main'\n\nexport default {\n\tparseErrors(errors) {\n\t\t// @ts-expect-error\n\t\treturn Object.values(errors).map(error => $t(error?.$message)).join('. ')\n\t}\n}","export default {\n\tmethods: {\n\t\tcustomFilter(item, input) {\n\t\t\t// Replace accented characters with non-accented equivalents\n\t\t\tconst normalizedItem = item.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n\t\t\tconst normalizedInput = input.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n\t\t\t\n\t\t\t// Remove any character that is not a letter, number, or space from both the item and the input\n\t\t\tconst pattern = /[^a-zA-Z0-9 ]/g;\n\t\t\tconst cleanedItem = normalizedItem.replace(pattern, '');\n\t\t\tconst cleanedInput = normalizedInput.replace(pattern, '');\n\t\t\t\n\t\t\t// Check if the cleaned item starts with the cleaned input and return empty value for dropdown if present\n\t\t\treturn cleanedItem.toLowerCase().includes(cleanedInput.toLowerCase()) || item === '';\n\t\t}\n\t}\n}","import moment from 'moment';\n\nexport default {\n enrichEmployees(employees) {\n return employees.map((employee) => ({\n ...employee,\n _fullName: `${employee.name} ${employee.surname}`,\n _initials: employee.name.charAt(0) + employee.surname.charAt(0),\n }));\n },\n\n formatDateTime(date) {\n moment(date);\n return moment(date).format('DD.MM.yyyy, HH:mm');\n },\n\n formatTimeblockDateTime(timeblock) {\n // Handle new format with separate date and time fields\n if (timeblock.date && timeblock.starts_at_time) {\n const dateStr = moment(timeblock.date).format('DD.MM.yyyy');\n return `${dateStr}, ${timeblock.starts_at_time}`;\n }\n // Fallback to old format\n if (timeblock.start) {\n return this.formatDateTime(timeblock.start);\n }\n return '';\n },\n\n formatDateTimeForBackend(date) {\n return moment(date).format('YYYY-MM-DD HH:mm:ss');\n },\n\n formatDate(date) {\n return moment(date).format('DD.MM.yyyy');\n },\n\n isBefore(date, compareTo = null) {\n return moment(date).isBefore(moment(compareTo));\n },\n\n isAfter(date, compareTo = moment()) {\n return moment(date).isAfter(moment(compareTo));\n },\n};\n","var map = {\n\t\"./en.json\": 20790,\n\t\"./sk.json\": 71941\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 8973;","var map = {\n\t\"./ar.json\": [\n\t\t68568,\n\t\t8568\n\t],\n\t\"./bg.json\": [\n\t\t20684,\n\t\t684\n\t],\n\t\"./bn.json\": [\n\t\t61170,\n\t\t1170\n\t],\n\t\"./bs.json\": [\n\t\t41161,\n\t\t1161\n\t],\n\t\"./ca.json\": [\n\t\t40612,\n\t\t612\n\t],\n\t\"./cs.json\": [\n\t\t50213,\n\t\t213\n\t],\n\t\"./da.json\": [\n\t\t98542,\n\t\t8542\n\t],\n\t\"./de.json\": [\n\t\t4701,\n\t\t4701\n\t],\n\t\"./el.json\": [\n\t\t20453,\n\t\t453\n\t],\n\t\"./en.json\": [\n\t\t3320,\n\t\t3320\n\t],\n\t\"./es.json\": [\n\t\t60076,\n\t\t76\n\t],\n\t\"./et.json\": [\n\t\t44075,\n\t\t4075\n\t],\n\t\"./fa.json\": [\n\t\t69004,\n\t\t9004\n\t],\n\t\"./fr.json\": [\n\t\t60007,\n\t\t7\n\t],\n\t\"./he.json\": [\n\t\t23746,\n\t\t3746\n\t],\n\t\"./hr.json\": [\n\t\t92921,\n\t\t2921\n\t],\n\t\"./hu.json\": [\n\t\t75723,\n\t\t5723\n\t],\n\t\"./id.json\": [\n\t\t12502,\n\t\t2502\n\t],\n\t\"./is.json\": [\n\t\t13214,\n\t\t3214\n\t],\n\t\"./it.json\": [\n\t\t51380,\n\t\t1380\n\t],\n\t\"./ja.json\": [\n\t\t72484,\n\t\t2484\n\t],\n\t\"./ka.json\": [\n\t\t60285,\n\t\t285\n\t],\n\t\"./ko.json\": [\n\t\t79249,\n\t\t9249\n\t],\n\t\"./lt.json\": [\n\t\t42838,\n\t\t2838\n\t],\n\t\"./mn.json\": [\n\t\t6177,\n\t\t6177\n\t],\n\t\"./nl.json\": [\n\t\t99729,\n\t\t9729\n\t],\n\t\"./no.json\": [\n\t\t49409,\n\t\t9409\n\t],\n\t\"./pl.json\": [\n\t\t25409,\n\t\t5409\n\t],\n\t\"./pt-br.json\": [\n\t\t74529,\n\t\t4529\n\t],\n\t\"./ro.json\": [\n\t\t29715,\n\t\t9715\n\t],\n\t\"./ru.json\": [\n\t\t32113,\n\t\t2113\n\t],\n\t\"./sk.json\": [\n\t\t30229,\n\t\t229\n\t],\n\t\"./sl.json\": [\n\t\t28636,\n\t\t8636\n\t],\n\t\"./sq.json\": [\n\t\t204,\n\t\t204\n\t],\n\t\"./sr.json\": [\n\t\t55553,\n\t\t5553\n\t],\n\t\"./sv.json\": [\n\t\t75979,\n\t\t5979\n\t],\n\t\"./tr.json\": [\n\t\t5268,\n\t\t5268\n\t],\n\t\"./uk.json\": [\n\t\t14057,\n\t\t4057\n\t],\n\t\"./vi.json\": [\n\t\t88929,\n\t\t8929\n\t],\n\t\"./zh-cn.json\": [\n\t\t56730,\n\t\t6730\n\t],\n\t\"./zh-hk.json\": [\n\t\t30841,\n\t\t841\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 3 | 16);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 66667;\nmodule.exports = webpackAsyncContext;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"7\":\"7cef58a7\",\"76\":\"9977e9df\",\"188\":\"d74ce2b2\",\"204\":\"4dd3d03d\",\"213\":\"c9ed5252\",\"229\":\"b09f2145\",\"285\":\"6a0985b5\",\"453\":\"04d72c77\",\"612\":\"4ea201aa\",\"684\":\"017ebeb8\",\"841\":\"65cae984\",\"907\":\"bfa01f81\",\"924\":\"ddc3fd73\",\"1097\":\"88cdd882\",\"1161\":\"59a7c68b\",\"1170\":\"16217940\",\"1277\":\"95db0fe3\",\"1380\":\"fc40de11\",\"1466\":\"c5d34b19\",\"2113\":\"2a1bcdfa\",\"2484\":\"6def3002\",\"2502\":\"66addef9\",\"2612\":\"ea780a2e\",\"2838\":\"aa69ee5c\",\"2921\":\"b5aad8e9\",\"3214\":\"72d306e7\",\"3311\":\"bcab8a66\",\"3320\":\"fe7033d0\",\"3657\":\"e558064c\",\"3728\":\"3e558208\",\"3746\":\"09ee0424\",\"3862\":\"b079a5bd\",\"4057\":\"4b3b38fd\",\"4075\":\"2d83f71e\",\"4392\":\"02bf9f00\",\"4518\":\"8e2c3fa8\",\"4529\":\"6ff3334b\",\"4578\":\"5a7acff1\",\"4701\":\"e34c277a\",\"5268\":\"5d463fbd\",\"5409\":\"4ce439c3\",\"5456\":\"e8c8face\",\"5553\":\"032fcbe7\",\"5723\":\"09853a5d\",\"5979\":\"385e1b41\",\"6177\":\"12db94aa\",\"6730\":\"61289e01\",\"7073\":\"57c96578\",\"7343\":\"1e290ed5\",\"8024\":\"bb377405\",\"8059\":\"91d676ea\",\"8520\":\"cb7009ea\",\"8542\":\"09badcc3\",\"8568\":\"7f0dfd32\",\"8636\":\"2a90cf11\",\"8731\":\"a28fea96\",\"8929\":\"ea6da50f\",\"8990\":\"6dd37151\",\"9004\":\"ffe04245\",\"9033\":\"727fb9e6\",\"9249\":\"d2b0f88c\",\"9407\":\"ed2e3833\",\"9409\":\"339f5afb\",\"9715\":\"21ca1afa\",\"9729\":\"812aea5b\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"188\":\"37c2c58b\",\"907\":\"fa9ddfdd\",\"1277\":\"d65f48ae\",\"2612\":\"f67d9d9c\",\"3862\":\"f5c9dd84\",\"4392\":\"01299cfb\",\"5456\":\"2cf84289\",\"7073\":\"3978ef96\",\"8059\":\"2ab138a8\",\"9033\":\"ace2e544\",\"9407\":\"f4af91bc\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"jandl:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t};\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","var createStylesheet = function(chunkId, fullhref, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t4826: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"188\":1,\"907\":1,\"1277\":1,\"2612\":1,\"3862\":1,\"4392\":1,\"5456\":1,\"7073\":1,\"8059\":1,\"9033\":1,\"9407\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t4826: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkjandl\"] = self[\"webpackChunkjandl\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4998], function() { return __webpack_require__(85069); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","id","module","exports","map","webpackContext","webpackContextResolve","__webpack_require__","o","Object","async","loadFonts","webFontLoader","load","google","families","createVuetify","registerQuillUrlSanitizer","Link","Quill","PROTOCOL_WHITELIST","push","CustomLinkSanitizer","static","url","sanitizedUrl","super","sanitize","protocolWhitelist","hasWhitelistedProtocol","some","protocol","startsWith","_createVNode","_component_v_app","_component_v_main","_component_router_view","_component_Z_team_modal","ref","onUpdate","$options","_component_Z_delete_team_modal","_component_Z_task_modal","onOnSubtaskEdited","_component_Z_delete_task_modal","onOnSubtaskDeleted","_component_Z_delete_timeBlock_modal","_component_Z_delete_blocker_modal","onOnBlockerDeleted","_component_Z_delete_master_task_modal","onOnMastertaskDeleted","_component_Z_complete_task_modal","_component_Z_complete_master_task_modal","onMasterTaskEdited","_component_Z_task_add_time_modal","_component_Z_blocker_modal","_component_Z_master_task_modal","_component_Z_delete_team_member_modal","_component_Z_show_menu_modal","_component_Z_unable_to_edit_office_task_modal","_component_Z_unable_to_complete_task_modal","class","_createBlock","_component_v_dialog","$data","persistent","_component_v_card","_createElementVNode","_hoisted_1","name","_component_v_icon","onClick","icon","size","_component_v_card_actions","_component_v_btn","variant","disabled","mounted","window","addEventListener","this","handleKeyDown","methods","event","keyCode","visible","mixins","modalMixin","emits","data","team","isDeleting","closeModal","$axios","delete_auth","$emit","$store","commit","error","$toast","$parseError","__exports__","height","_component_W_loadable","content","_component_v_text_field","$errors","length","label","hint","parseErrors","_createElementBlock","_Fragment","employees","employee","index","key","_fullName","splice","_component_v_autocomplete","_ctx","items","clearable","atLeastOne","value","AutocompleteMixin","v$","useVuelidate","errorUtils","employeeSelect","computed","mapGetters","employeesOptions","selectedEmployeesIds","enrichedEmployees","filter","includes","validations","required","$nextTick","$reset","t","get_auth_data","_enrichTeam","$validate","put_auth","fullTeamResource","post_auth","tmUtils","watch","employeeId","find","$refs","autocomplete","search","project_code","subtask","_hoisted_2","timeblocks","timeblock","is_finished","formatDateTime","start","end","JSON","parse","stringify","deadline","_update","deleteTimeblockWithoutId","i","timesheets","timesheet","employee_name","date","dateStr","moment","format","starts_at_time","ends_at_time","$events","emit","message","d","_hoisted_3","_hoisted_4","_hoisted_7","_hoisted_8","onFocus","master_task_id","item","title","_component_Datepicker","onOpen","Date","locale","placeholder","_deadline_time","type","employee_id","version","xmlns","width","viewBox","duration","_hoisted_10","_component_A_timeblock","onUpdateTimeblock","val","onRemoveTimeblock","deletable","editable","_hoisted_11","_hoisted_12","_component_QuillEditor","description","theme","onInput","$event","srcElement","innerHTML","_component_Z_files_upload","files","onFilesUploaded","_hoisted_13","_master_task","_hoisted_14","_hoisted_15","src","require","alt","_hoisted_18","_component_Z_task_readonly_info","onCloseModal","onUpdateSubtask","_hoisted_19","multiple","accept","onChange","fileUpload","click","file","_component_v_chip","toFixed","indexOf","$props","props","Array","default","isSaving","Boolean","uploadedFiles","created","maxSize","oversizedFiles","remove","preventInputFocus","savedScrollPosition","setFocusEvent","document","querySelectorAll","forEach","input","onInputFocus","onDateFocus","undefined","onDateOpen","modalContent","querySelector","scrollTop","setTimeout","target","tagName","blur","selectedEmployees","mastertask","projectsOptions","pattern","normalizedInput","projectCodeSearch","normalize","replace","projects","project","normalizedProjectCode","toLowerCase","filteredProjects","slice","project_id","selectedProject","onEmployeeSelected","showAddEmployeeInput","onEmployeeDurationChanged","totalDuration","parseFloat","invalid","teams","_component_A_mastertask_name","color","_component_A_mastertask_status","isFinished","_component_A_task_deadline","_component_A_task_timeblocks","_component_Z_created_by","created_by","_component_A_task_assigned_employee","_employee","_component_A_task_planned_time","hours","_component_A_task_remaining_time","spent_time","_component_A_task_spent_time","_component_A_task_description","master_task_description","_component_Z_files","_component_v_row","_component_v_col","cols","_component_v_sheet","style","backgroundColor","String","Number","openMastertask","editMode","completed","_hoisted_5","_hoisted_6","form","components","Datepicker","showModal","isOffice365Task","formatTimeblockStart","formatTimeblockEnd","_mergeDeadlineTimeDate","isAfterDeadline","originalTimeblock","timeblockForBackend","newTimeblock","startMoment","endMoment","convertedTimeblock","toDate","getDeadline","mDate","mDeadline","minutes","split","isAfter","master_task_deadline","timeParts","setHours","parseInt","setMinutes","_initials","charAt","surname","time","timestamp","_hoisted_9","numeric","minValue","user","console","log","formatDate","_component_v_tooltip","text","location","activator","_mergeProps","deadlineTime","getMasterTaskDeadline","toast","useToast","detectOS","platform","navigator","macosPlatforms","windowsPlatforms","prepareHTMLDescription","os","match","replaceAll","getCopyFunction","mastertaskDescription","copiedIndices","preparedDescription","preparedMastertaskDescription","emptyMessage","file_size","isLoading","response","fetch","path","blob","FileSaver","ZFiles","AMastertaskName","AMastertaskStatus","ATaskTimeblocks","ZCreatedBy","ATaskAssignedEmployee","ATaskPlannedTime","ATaskSpentTime","ATaskRemainingTime","ATaskDescription","ATaskDeadline","Function","requiredIf","handleDatepickerClick","scrollTarget","openDatepicker","calendar","datepickerWrapper","modalContainer","wrapperRect","getBoundingClientRect","modalRect","topPosition","top","left","openMenu","updateDate","updated","updateStartTime","updateEndTime","VuetifyFixFocusMixin","SelectsMixin","ZTaskReadonlyInfo","ATimeblock","ZFilesUpload","QuillEditor","employeeValidations","showDatePicker","selectedNewDate","wasFormValidationTriggered","enrichedMastertasks","mastertasks","editableTimeblocks","get","set","on","splittedDeadline","convertedTimeblocks","_enrichTask","$forceUpdate","toggleEditMode","mode","updateTimeblock","addTimeblock","removeTimeblock","savedSubtask","localStorage","getItem","parsedSubtask","setHTML","master_task","deleteTimeblock","$router","$route","employeesValid","_validateEmployees","timeblocksValid","_validateTimeblocks","validateAllFields","getHTML","patch_auth_form","removeItem","validEmployees","subtaskCopy","subtasks","openDeleteTaskModal","showCompleteTaskModal","filesUploaded","updateSubtask","hasValidEmployee","isError","valid","isValid","_created_by","oldValue","handler","lastEmployee","deep","subtaskData","setItem","blocker","tempSubtask","tempMastertask","payload","datepicker","clearValue","_syncDatesTimes","splittedStart","splittedEnd","estimated_duration","_component_v_select","team_id","_allEmployees","min","onKeyup","_component_A_mastertask_description","_component_A_tasks_table","_component_v_table","_employeeInitials","_employeeFullName","checkmark","bin","eye","office365","enrichedtasks","openTaskModal","_component_Z_status","status","_component_Z_deadline","_component_Z_team","_component_Z_estimated_duration","_component_Z_planned_time","_component_Z_remaining_time","time_worked","_component_Z_spent_time","_component_Z_description","inheritedDescription","preparedInheritedDescription","isExceeded","enrichedEmployeesInTeam","enrichedEmployeesOutsideTeam","employeesOutsideOfTeam","em","ZDeadline","ZDescription","ZPlannedTime","ZRemainingTime","ZSpentTime","ZStatus","ZTeam","ZEstimatedDuration","AMastertaskDescription","ATasksTable","enrichedSubtasks","quillEditorRequired","minLength","$each","closeBothModals","teamId","memberId","task","beforeUnmount","off","removeEmployee","removeMemberAlert","member","loadMastertask","savedMastertask","parsedMastertask","toggleIsFinished","vuelidateValid","post_auth_data","openDeleteMasterTaskModal","addTask","onQuillEditorInput","getHours","getMinutes","toString","padStart","oldTeamEmployeesIds","employeesNotInOldTeam","_","_component_v_card_text","_component_v_spacer","localData","createTask","onTaskCreated","createBlocker","onBlockerCreated","loading","loadingTimeblocks","loadingCloseAll","areAllTimeblocksFinished","every","_finishSubtask","dispatch","promises","all","ZDeleteTeamModal","ZTeamModal","ZDeleteTaskModal","ZDeleteBlockerModal","ZTaskModal","ZMasterTaskModal","ZCompleteTaskModal","ZTaskAddTimeModal","ZBlockerModal","ZDeleteMasterTaskModal","ZDeleteTeamMemberModal","ZShowMenuModal","ZCompleteMasterTaskModal","ZDeleteTimeBlockModal","ZUnableToEditOfficeTaskModal","ZUnableToCompleteTaskModal","query","_showModalsAfterInicialization","onTeamUpdate","onTaskDeleted","onBlockerDeleted","onTaskEdited","onMasterTaskDeleted","repeat","getters","render","createStore","state","mutations","actions","modules","routes","redirect","component","children","meta","requiresAuth","router","createRouter","history","createWebHashHistory","process","beforeEach","to","from","next","isLoggedIn","store","axios","config","catch","reject","_config","params","headers","Authorization","install","app","options","globalProperties","encodeGetParams","p","entries","kv","encodeURIComponent","join","strToRegex","s","re","Moxios","constructor","_redirectRequestToMock","bind","_mocks","mock","append","k","m","reUrl","matchMethod","mocked","method","fname","VUE_APP_PLATFORM","toUpperCase","c","origin","moxios","values","events","mitt","I18n","properties","instance","translated","availableLanguages","languages","defaultLanguage","language","languageKey","vendorI18n","createI18n","legacy","fallbackLocale","messages","_loadLocaleMessages","missing","_missingTranslation","postTranslation","_postTranslation","changeLanguage","flag","initCurrentLanguage","Preferences","currentLanguage","_addAxiosHeaders","global","locales","warn","matched","use","i18n","$w18n","IonContent","IonPage","IonLabel","IonBackButton","IonCheckbox","IonText","IonButton","IonItem","IonItemGroup","IonItemSliding","IonItemOption","IonItemOptions","IonToolbar","IonHeader","IonFooter","IonSlides","IonSlide","IonSpinner","IonRow","IonCol","IonGrid","IonInput","IonButtons","IonIcon","IonImg","IonList","IonSkeletonText","IonTitle","IonMenu","IonSplitPane","IonMenuButton","IonRouterOutlet","IonSegment","IonSegmentButton","IonVirtualScroll","IonTextarea","IonSearchbar","IonRefresherContent","IonRefresher","IonInfiniteScrollContent","IonInfiniteScroll","IonAvatar","IonThumbnail","IonModal","IonRadioGroup","IonRadio","IonNote","IonCard","IonCardContent","IonTabBar","IonTabButton","IonMenuToggle","IonFab","IonFabButton","IonFabList","IonReorderGroup","IonReorder","IonSelect","IonSelectOption","IonToggle","IonBadge","IonChip","IonTabs","_unauthorised","namespaced","token","auth_success","auth_error","logout","open","login","credentials","signup","finally","forgotPassword","resetPassword","updateUserInfo","registerModule","auth","VueToast","_renderSlot","loader","_startLoading","_stopLoading","WLoadable","ionic","loadable","parseAndTranslate","errorsArray","_parseToArrayOfStrings","$t","statusText","toastUtils","_objectToFormData","formData","transformRequest","_buildFormData","parentKey","File","FormData","unscheduledSubtasks","ongoingSubtasks","initialized","ongoingSubtasksEmployeeId","unscheduledSubtasksEmployeeId","set_mastertasks","set_employees","set_teams","set_projects","set_unscheduled_subtasks","set_ongoing_subtasks","remove_ongoing_subtask","subtaskId","st","update_team","save_team","delete_team","update_subtask","delete_subtask","set_ongoing_subtasks_employee_id","set_unscheduled_subtasks_employee_id","initialize","reloadSubtasks","reloadMastertasks","loadMastertasks","loadEmployees","loadTeams","loadProjects","loadUnscheduledSubtasks","employeeIdToUse","loadOngoingSubtasks","removeOngoingSubtask","sort","a","b","isInitialized","tmStore","grow","row","column","_hoisted_27","lang","_component_vuecal_header","views","weekDaysInHeader","heading","view","_Transition","appear","_component_all_day_bar","titleEditable","contenteditable","onBlur","vuecal__flex","allDay","cell","week","wrap","_component_weekdays_headings","unscheduledTime","el","_component_vuecal_cell","selectCell","goNarrower","noEvent","_hoisted_22","formatTime","endTimeMinutes","daysCount","segments","formattedDate","isFirstDay","_hoisted_24","day","_hoisted_26","now","todayDate","todayF","self","_dateObject","_timeObject","DateUtils","texts","noPrototypes","_texts","prototype","addDays","_initDatePrototypes","days","subtractDays","addHours","subtractHours","addMinutes","subtractMinutes","getWeek","isToday","isLeapYear","removePrototypes","updateTexts","_todayFormatted","getDate","getFullYear","getMonth","valueOf","setDate","UTC","dayNum","getUTCDay","setUTCDate","getUTCDate","yearStart","getUTCFullYear","Math","ceil","year","getPreviousFirstDayOfWeek","weekStartsOnSunday","prevFirstDayOfWeek","dayModifier","getDay","stringToDate","countDays","timezoneDiffMs","getTimezoneOffset","datesInSameTimeStep","date1","date2","timeStep","abs","getTime","formatDateLite","dateObj","YYYY","_hydrateDateObject","YY","M","MM","MMM","MMMM","MMMMG","D","DD","S","dd","ddd","dddd","HH","_hydrateTimeObject","H","hh","h","am","AM","mm","contents","result","round","shouldRound","getSeconds","formatTimeLite","timeObj","formatted","_nth","dayNumber","substring","months","monthsGenitive","weekDays","substr","floor","pm","minutesInADay","CellUtils","vuecal","force","_vuecal","clickToNavigate","switchToNarrowerView","dblclickToNavigate","domEvents","dblTapACell","taps","timeout","cellsEl","clientX","clientY","touches","x","y","cursorCoords","timeCellHeight","timeFrom","getPosition","max","defaultEventDuration","ud","_cellOverlaps","_comparisonArray","EventUtils","dateUtils","_eid","startTimeMinutes","background","deleting","resizable","resizing","draggable","dragging","draggingStatic","focused","createAnEvent","dateTime","eventOptions","dateToMinutes","eventDefaults","uid","eventIdIncrement","onEventCreate","deleteAnEvent","startDateF","endDateF","mutableEvents","addEventsToView","emitWithEvent","cleanupEvent","originalEvent","addEventSegment","isLastDay","previousSegment","removeEventSegment","segmentsCount","createEventSegments","viewStartDate","viewEndDate","viewStartTimestamp","viewEndTimestamp","eventStartAtMidnight","eventStart","eventEnd","repeatedEventStartFound","until","createSegment","nextMidnight","tmpDate","tmpDateFormatted","occurrences","checkCellOverlappingEvents","cellEvents","shift","overlaps","position","sameOverlaps","e2","eventIsInRange","eventInRange","eventSameOverlap","eventSameRange","eventsInSameTimeStep","overlapsPerTimeStep","pos1","pos2","Set","longestStreak","overlapsRow","id2","findIndex","getOverlapsStreak","cellOverlaps","streak","removeFromStreak","overlapsWithoutSelf","id3","startTimestamp","endTimestamp","event1","event2","isSameStart","isSameEnd","role","hideViewSelector","_createCommentVNode","_renderList","v","enabled","_normalizeClass","highlightedControl","onDragenter","drag","viewSelectorDragEnter","onDragleave","viewSelectorDragLeave","hideTitleBar","transitions","_resolveDynamicComponent","startDate","todayButton","_createSlots","$slots","fn","_createTextVNode","hide","today","clickable","toLocaleDateString","_normalizeStyle","onDblclick","dayOfMonth","full","small","xsmall","hasSplits","stickySplitLabels","daySplits","inject","transitionDirection","DOMEvent","selectedDate","utils","cleanupHeading","initials","onTimelineScroll","viewPortOffset","headings","todayFound","startWeekOnSunday","short","cellWidth","reduce","total","weekdayCellStyles","hideWeekdays","cellHeadingsClickable","WeekdaysHeadings","editEvents","viewProps","goToToday","updateSelectedDate","switchToBroaderView","broaderView","switchView","direction","enabledViews","showDaySplits","minSplitWidth","dnd","isWeekView","isMonthView","minTimestamp","maxTimestamp","_TransitionGroup","tag","tabindex","onKeypress","_withKeys","onTouchstart","onMousedown","onContextmenu","cellContextmenu","cellDragEnter","onDragover","cellDragOver","cellDragLeave","onDrop","cellDragDrop","showTimeInCells","timeCells","block","eventsOnMonthView","j","_component_event","allOverlaps","overlapsStreak","cellOverlapsStreak","eventId","onMouseenter","onMouseleave","_withModifiers","onMouseup","onTouchend","onTouchmove","onDragstart","onDragend","delete","deleteEvent","cellFormattedDate","eventPosition","touch","dragThreshold","startX","startY","dragged","onMouseDown","targetElement","nodeName","parentElement","classList","contains","preventDefault","clickHoldAnEvent","focusAnEvent","resizeAnEvent","dragAnEvent","focusEvent","timeoutId","onMouseUp","mousedUp","onMouseEnter","onMouseLeave","onTouchMove","onEventClick","onTouchStart","onEnterKeypress","onDblClick","onEventDblclick","onDragStart","eventDragStart","onDragEnd","eventDragEnd","onResizeHandleMouseDown","assign","segment","originalEnd","originalEndTimeMinutes","touchDeleteEvent","cancelDeleteEvent","focusedEvent","cancelDelete","eventDimensions","minutesFromTop","timeTo","bottom","eventStyles","zIdnex","master_task_color","isArray","sameOverlapsLength","parentNotSameOverlaps","minEventWidth","eventClasses","is_blocker","resize","Event","cellSplits","timeAtCursor","highlighted","highlightedSplit","getSplitAtCursor","targetIsSplit","findAncestor","attributes","splitClasses","isWeekend","eventsCount","splitsCount","isDOMElementAnEvent","onCellkeyPressEnter","isSelected","onCellFocus","keyPressEnterCell","isDisabled","onCellMouseDown","clickHoldACell","cancelClickEventCreation","eventCreated","minutesAtCursor","mouseDownOnEvent","create","setUpEventCreation","startCursorY","dragToCreateEvent","dragCreateAnEvent","snapToTime","timeMinutes","plusHalfSnapTime","cellClickHold","setUpCellHoldTimer","cellId","onCellTouchStart","onCellClick","allNonWorkingHoursEvents","calendarHeight","offsetHeight","morningNonWorkingHoursEventHeight","afternoonNonWorkingHoursEventHeight","offsetY","dateFrom","dateTo","isTeamCalendar","onCellDblClick","onCellContextMenu","stopPropagation","nowInMinutes","isBeforeMinDate","endDate","isAfterMaxDate","disableDays","isYearsOrYearView","selected","isWeekOrDayView","specialHours","timeScale","cellStart","cellEnd","eventsCountOnYearView","outOfScopeEvents","showAllDayEvents","singleDayInRange","multipleDayInRange","recurrMultDayInRange","splits","cellClasses","current","outOfScope","cellStyles","timelineVisible","todaysTimePosition","Cell","cells","shortEvents","cellOrSplitMinWidth","hasCellOrSplitWidth","minCellWidth","textsDefaults","fill","weekDaysShort","years","month","createEvent","dateFormat","validViews","Header","AllDayBar","provide","previous","activeView","scrollToHour","allDayBarHeight","disableDatePrototypes","disableViews","dragToCreateThreshold","editableEvents","hideBody","hideWeekends","maxDate","minDate","resizeX","showWeekNumbers","splitDays","timeFormat","twelveHour","watchRealTime","ready","firstCellDate","lastCellDate","timeTickerIds","startCell","endCell","loadDragAndDrop","DragAndDrop","validateView","fromViewSelector","viewDateBeforeChange","oldView","setSeconds","daysToAdd","daysToSubtract","weekDaysCount","viewDate","previousNext","modifier","viewId","weekDay","weekDayIndex","isDayHidden","daysWithIndex","dayToShow","daysFromDate","reverse","ue","filteredEvents","Class","onMouseMove","eventResizing","eventDragCreation","isClickHoldingEvent","wasResizing","hasResized","dragCreatedEvent","dragCreateStarted","mouseUpOnEvent","eventClicked","mutableEvent","cleanEvent","oldDate","unfocusEvent","clearTimeout","eventClickHandler","onKeyUp","newEndTimeMins","offsetWidth","childElementCount","newEnd","newDaysCount","lastSegmentFormattedDate","dragFromBottom","onEventTitleBlur","oldTitle","updateMutableEvents","multipleDays","discardProps","prop","eventName","getWeekNumber","weekFromFirstCell","firstCellWeekNumber","firstCellDateWeekNumber","currentWeekNumber","timeTick","updateDateTexts","alignWithScrollbar","cellOrSplitHasEvents","loadLocale","currentView","hasTouch","hasEventClickHandler","passive","oncontextmenu","viewportTimelineOffset","removeEventListener","hasTimeColumn","isShortMonthView","TimeFormat","hasShortEvents","minWidth","visibleDaysCount","allDayBar","isNaN","viewCells","unshift","pop","specialDayHours","viewTitle","lastDayOfWeek","y1","m1","formattedMonthYear","y2","m2","fromYear","apply","firstDayOfWeek","dayOfWeek","isDayView","cssClasses","isYearsView","isYearView","oldEvents","newVal","VueCal","createApp","App","axiosCustom","w","IonicVue","vuetify","vueCal","mount","$i18n","errors","$message","customFilter","normalizedItem","cleanedItem","cleanedInput","enrichEmployees","formatTimeblockDateTime","formatDateTimeForBackend","isBefore","compareTo","webpackAsyncContext","ids","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","r","n","getter","__esModule","leafPrototypes","getProto","getPrototypeOf","obj","__proto__","ns","def","getOwnPropertyNames","definition","defineProperty","enumerable","f","chunkId","u","miniCssF","g","globalThis","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onerror","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","nmd","paths","createStylesheet","fullhref","linkTag","rel","onLinkComplete","errorType","realHref","href","err","request","findStylesheet","existingLinkTags","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/app/src/plugins/app@vendor/vue-cal/cell.vue b/app/src/plugins/app@vendor/vue-cal/cell.vue index 8025033..7ce3f61 100644 --- a/app/src/plugins/app@vendor/vue-cal/cell.vue +++ b/app/src/plugins/app@vendor/vue-cal/cell.vue @@ -282,31 +282,47 @@ export default { }, onCellClick(DOMEvent, split) { - const dateFrom = split.date; - dateFrom.setHours(Math.floor(DOMEvent.offsetY / 100), 0, 0, 0); - const dateTo = new Date(dateFrom); - dateTo.setHours(dateFrom.getHours() + 1); + const allNonWorkingHoursEvents = + DOMEvent.target.querySelectorAll('.non-working-event'); - const time = moment(dateFrom).format('HH:mm'); + const calendarHeight = DOMEvent.target.offsetHeight; - const isTeamCalendar = this.$route.name === 'Dashboard - Teams'; - const employee = isTeamCalendar - ? split.employee_id - : Number(localStorage.getItem('selectedEmployee') || this.user.id); + const morningNonWorkingHoursEventHeight = + allNonWorkingHoursEvents?.[0]?.offsetHeight || 950; + const afternoonNonWorkingHoursEventHeight = + allNonWorkingHoursEvents?.[1]?.offsetHeight || 1700; - this.$events.emit('show-menu-modal', { - time, - date: tmUtils.formatDateTimeForBackend(dateFrom), - employee, - }); + if ( + // Check if the click is not in the non-working hours events + DOMEvent.offsetY > morningNonWorkingHoursEventHeight && + DOMEvent.offsetY < calendarHeight - afternoonNonWorkingHoursEventHeight + ) { + const dateFrom = split.date; + dateFrom.setHours(Math.floor(DOMEvent.offsetY / 100), 0, 0, 0); + const dateTo = new Date(dateFrom); + dateTo.setHours(dateFrom.getHours() + 1); - setTimeout(() => { - this.$events.emit('add-timeblock', { - id: null, - start: tmUtils.formatDateTimeForBackend(dateFrom), - end: tmUtils.formatDateTimeForBackend(dateTo), + const time = moment(dateFrom).format('HH:mm'); + + const isTeamCalendar = this.$route.name === 'Dashboard - Teams'; + const employee = isTeamCalendar + ? split.employee_id + : Number(localStorage.getItem('selectedEmployee') || this.user.id); + + this.$events.emit('show-menu-modal', { + time, + date: tmUtils.formatDateTimeForBackend(dateFrom), + employee, }); - }, 150); + + setTimeout(() => { + this.$events.emit('add-timeblock', { + id: null, + start: tmUtils.formatDateTimeForBackend(dateFrom), + end: tmUtils.formatDateTimeForBackend(dateTo), + }); + }, 150); + } if (!this.isDOMElementAnEvent(DOMEvent.target)) this.selectCell(DOMEvent); },