| Server IP : 93.86.61.54 / Your IP : 216.73.216.206 Web Server : Apache/2.4.62 (Ubuntu) System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64 User : www-data ( 33) PHP Version : 8.4.22 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/projects/nextcloud/apps/mail/js/ |
Upload File : |
(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{1066:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".toggle[data-v-46075dda]{position:fixed;width:44px;height:44px;padding:14px;cursor:pointer;opacity:.6;font-size:16px;line-height:17px;transform:rotate(180deg);background-color:var(--color-main-background);z-index:1100}.toggle[data-v-46075dda]:active,.toggle[data-v-46075dda]:hover,.toggle[data-v-46075dda]:focus{opacity:1}.toggle[data-v-46075dda]+.app-navigation--close .app-navigation-toggle{display:none}","",{version:3,sources:["webpack://./src/components/AppDetailsToggle.vue"],names:[],mappings:"AAsCA,yBACC,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CACA,UAAA,CACA,cAAA,CACA,gBAAA,CACA,wBAAA,CACA,6CAAA,CACA,YAAA,CAEA,8FAGC,SAAA,CAID,uEACC,YAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.toggle {\n\tposition: fixed;\n\twidth: 44px;\n\theight: 44px;\n\tpadding: 14px;\n\tcursor: pointer;\n\topacity: .6;\n\tfont-size: 16px;\n\tline-height: 17px;\n\ttransform: rotate(180deg);\n\tbackground-color: var(--color-main-background);\n\tz-index: 1100; // needs to be above the main content(1000) and below the navigation(1800)\n\n\t&:active,\n\t&:hover,\n\t&:focus {\n\t\topacity: 1;\n\t}\n\n\t// Hide app navigation toggle in case we are on mobile and have the back arrow visible\n\t&::v-deep + .app-navigation--close .app-navigation-toggle {\n\t\tdisplay: none;\n\t}\n}\n"],sourceRoot:""}]),n.a=i},1070:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n#priority[data-v-95f06344] {\n\tdisplay: inline-block;\n}\n.app-content-list-item[data-v-95f06344]:hover {\n\tbackground-color: transparent;\n\topacity: 0.8;\n}\n","",{version:3,sources:["webpack://./src/components/SectionTitle.vue"],names:[],mappings:";AAyCA;CACA,qBAAA;AACA;AACA;CACA,6BAAA;CACA,YAAA;AACA",sourcesContent:['\x3c!--\n - @copyright 2020 Greta Doçi <gretadoci@gmail.com>\n -\n - @author 2020 Greta Doçi <gretadoci@gmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n --\x3e\n\n<template>\n\t<div id="priority">\n\t\t<div class="app-content-list-item">\n\t\t\t<h2>{{ name }}</h2>\n\t\t</div>\n\t</div>\n</template>\n<script>\nexport default {\n\tname: \'SectionTitle\',\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n#priority {\n\tdisplay: inline-block;\n}\n.app-content-list-item:hover {\n\tbackground-color: transparent;\n\topacity: 0.8;\n}\n</style>\n'],sourceRoot:""}]),n.a=i},1072:function(t,n,e){var a={"./af":774,"./af.js":774,"./ar":775,"./ar-dz":776,"./ar-dz.js":776,"./ar-kw":777,"./ar-kw.js":777,"./ar-ly":778,"./ar-ly.js":778,"./ar-ma":779,"./ar-ma.js":779,"./ar-sa":780,"./ar-sa.js":780,"./ar-tn":781,"./ar-tn.js":781,"./ar.js":775,"./az":782,"./az.js":782,"./be":783,"./be.js":783,"./bg":784,"./bg.js":784,"./bm":785,"./bm.js":785,"./bn":786,"./bn.js":786,"./bo":787,"./bo.js":787,"./br":788,"./br.js":788,"./bs":789,"./bs.js":789,"./ca":790,"./ca.js":790,"./cs":791,"./cs.js":791,"./cv":792,"./cv.js":792,"./cy":793,"./cy.js":793,"./da":794,"./da.js":794,"./de":795,"./de-at":796,"./de-at.js":796,"./de-ch":797,"./de-ch.js":797,"./de.js":795,"./dv":798,"./dv.js":798,"./el":799,"./el.js":799,"./en-SG":800,"./en-SG.js":800,"./en-au":801,"./en-au.js":801,"./en-ca":802,"./en-ca.js":802,"./en-gb":803,"./en-gb.js":803,"./en-ie":804,"./en-ie.js":804,"./en-il":805,"./en-il.js":805,"./en-nz":806,"./en-nz.js":806,"./eo":807,"./eo.js":807,"./es":808,"./es-do":809,"./es-do.js":809,"./es-us":810,"./es-us.js":810,"./es.js":808,"./et":811,"./et.js":811,"./eu":812,"./eu.js":812,"./fa":813,"./fa.js":813,"./fi":814,"./fi.js":814,"./fo":815,"./fo.js":815,"./fr":816,"./fr-ca":817,"./fr-ca.js":817,"./fr-ch":818,"./fr-ch.js":818,"./fr.js":816,"./fy":819,"./fy.js":819,"./ga":820,"./ga.js":820,"./gd":821,"./gd.js":821,"./gl":822,"./gl.js":822,"./gom-latn":823,"./gom-latn.js":823,"./gu":824,"./gu.js":824,"./he":825,"./he.js":825,"./hi":826,"./hi.js":826,"./hr":827,"./hr.js":827,"./hu":828,"./hu.js":828,"./hy-am":829,"./hy-am.js":829,"./id":830,"./id.js":830,"./is":831,"./is.js":831,"./it":832,"./it-ch":833,"./it-ch.js":833,"./it.js":832,"./ja":834,"./ja.js":834,"./jv":835,"./jv.js":835,"./ka":836,"./ka.js":836,"./kk":837,"./kk.js":837,"./km":838,"./km.js":838,"./kn":839,"./kn.js":839,"./ko":840,"./ko.js":840,"./ku":841,"./ku.js":841,"./ky":842,"./ky.js":842,"./lb":843,"./lb.js":843,"./lo":844,"./lo.js":844,"./lt":845,"./lt.js":845,"./lv":846,"./lv.js":846,"./me":847,"./me.js":847,"./mi":848,"./mi.js":848,"./mk":849,"./mk.js":849,"./ml":850,"./ml.js":850,"./mn":851,"./mn.js":851,"./mr":852,"./mr.js":852,"./ms":853,"./ms-my":854,"./ms-my.js":854,"./ms.js":853,"./mt":855,"./mt.js":855,"./my":856,"./my.js":856,"./nb":857,"./nb.js":857,"./ne":858,"./ne.js":858,"./nl":859,"./nl-be":860,"./nl-be.js":860,"./nl.js":859,"./nn":861,"./nn.js":861,"./pa-in":862,"./pa-in.js":862,"./pl":863,"./pl.js":863,"./pt":864,"./pt-br":865,"./pt-br.js":865,"./pt.js":864,"./ro":866,"./ro.js":866,"./ru":867,"./ru.js":867,"./sd":868,"./sd.js":868,"./se":869,"./se.js":869,"./si":870,"./si.js":870,"./sk":871,"./sk.js":871,"./sl":872,"./sl.js":872,"./sq":873,"./sq.js":873,"./sr":874,"./sr-cyrl":875,"./sr-cyrl.js":875,"./sr.js":874,"./ss":876,"./ss.js":876,"./sv":877,"./sv.js":877,"./sw":878,"./sw.js":878,"./ta":879,"./ta.js":879,"./te":880,"./te.js":880,"./tet":881,"./tet.js":881,"./tg":882,"./tg.js":882,"./th":883,"./th.js":883,"./tl-ph":884,"./tl-ph.js":884,"./tlh":885,"./tlh.js":885,"./tr":886,"./tr.js":886,"./tzl":887,"./tzl.js":887,"./tzm":888,"./tzm-latn":889,"./tzm-latn.js":889,"./tzm.js":888,"./ug-cn":890,"./ug-cn.js":890,"./uk":891,"./uk.js":891,"./ur":892,"./ur.js":892,"./uz":893,"./uz-latn":894,"./uz-latn.js":894,"./uz.js":893,"./vi":895,"./vi.js":895,"./x-pseudo":896,"./x-pseudo.js":896,"./yo":897,"./yo.js":897,"./zh-cn":898,"./zh-cn.js":898,"./zh-hk":899,"./zh-hk.js":899,"./zh-tw":900,"./zh-tw.js":900};function r(t){var n=o(t);return e(n)}function o(t){if(!e.o(a,t)){var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}return a[t]}r.keys=function(){return Object.keys(a)},r.resolve=o,t.exports=r,r.id=1072},1130:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".source-modal[data-v-6279924e] .modal-container{height:800px}.source-modal .source-modal-content[data-v-6279924e]{width:100%;height:100%;overflow-y:scroll !important}","",{version:3,sources:["webpack://./src/components/MenuEnvelope.vue"],names:[],mappings:"AAyUC,iDACC,YAAA,CAGD,qDACC,UAAA,CACA,WAAA,CACA,4BAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.source-modal {\n\t::v-deep .modal-container {\n\t\theight: 800px;\n\t}\n\n\t.source-modal-content {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\toverflow-y: scroll !important;\n\t}\n}\n"],sourceRoot:""}]),n.a=i},1136:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o),s=e(470),l=e.n(s),c=e(1137),d=e.n(c),u=i()(r.a),p=l()(d.a);u.push([t.i,".mail-message-account-color[data-v-5b5c7240]{position:absolute;left:0px;width:2px;height:69px;z-index:1}.icon-important[data-v-5b5c7240] path{fill:#fc0;stroke:var(--color-main-background)}.app-content-list-item:hover .icon-important[data-v-5b5c7240] path,.app-content-list-item:focus .icon-important[data-v-5b5c7240] path,.app-content-list-item.active .icon-important[data-v-5b5c7240] path{stroke:var(--color-background-dark)}.icon-important.app-content-list-item-star[data-v-5b5c7240]{background-image:none;left:7px;top:13px;opacity:1}.icon-important.app-content-list-item-star[data-v-5b5c7240]:hover,.icon-important.app-content-list-item-star[data-v-5b5c7240]:focus{opacity:.5}.app-content-list-item .app-content-list-item-select-checkbox[data-v-5b5c7240]{display:inline-block;vertical-align:middle;position:absolute;left:22px;top:20px;z-index:50}.app-content-list-item[data-v-5b5c7240]:not(.seen){font-weight:bold}.app-content-list-item.selected[data-v-5b5c7240]{background-color:var(--color-background-dark);font-weight:bold}.app-content-list-item-star.junk[data-v-5b5c7240]{background-image:var(--icon-junk-000);opacity:1}.app-content-list-item.draft .app-content-list-item-line-two[data-v-5b5c7240]{font-style:italic}.app-content-list-item.active[data-v-5b5c7240]{background-color:var(--color-primary-light)}.icon-reply[data-v-5b5c7240],.icon-attachment[data-v-5b5c7240]{display:inline-block;vertical-align:text-top}.icon-reply[data-v-5b5c7240]{background-image:url("+p+');-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";opacity:.5}.icon-attachment[data-v-5b5c7240]{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";opacity:.25}.app-content-list .app-content-list-item[data-v-5b5c7240]{padding-right:0}.app-content-list .app-content-list-item .app-content-list-item-line-two[data-v-5b5c7240]{padding-right:0;margin-top:-8px}.app-content-list .app-content-list-item .app-content-list-item-menu[data-v-5b5c7240]{margin-right:-2px;margin-top:-8px}.app-content-list .app-content-list-item .app-content-list-item-menu[data-v-5b5c7240] .action-item__menu{right:7px !important}.app-content-list .app-content-list-item .app-content-list-item-menu[data-v-5b5c7240] .action-item__menu .action-item__menu_arrow{right:6px !important}.app-content-list .app-content-list-item .app-content-list-item-details[data-v-5b5c7240]{padding-right:7px}',"",{version:3,sources:["webpack://./src/components/Envelope.vue"],names:[],mappings:"AAiNA,6CACC,iBAAA,CACA,QAAA,CACA,SAAA,CACA,WAAA,CACA,SAAA,CAIA,uCACC,SAAA,CACA,mCAAA,CAKA,6MACC,mCAAA,CAKF,4DACC,qBAAA,CACA,QAAA,CACA,QAAA,CACA,SAAA,CAEA,oIAEC,UAAA,CAKH,+EACC,oBAAA,CACA,qBAAA,CACA,iBAAA,CACA,SAAA,CACA,QAAA,CACA,UAAA,CAGD,mDACC,gBAAA,CAED,iDACC,6CAAA,CACA,gBAAA,CAED,kDACC,qCAAA,CACA,SAAA,CAED,8EACC,iBAAA,CAED,+CACC,2CAAA,CAGD,+DAEC,oBAAA,CACA,uBAAA,CAGD,6BACC,wDAAA,CACA,gEAAA,CACA,UAAA,CAGD,kCACC,gEAAA,CACA,WAAA,CAKD,0DACC,eAAA,CAEA,0FACC,eAAA,CACA,eAAA,CAGD,sFACC,iBAAA,CACA,eAAA,CAEA,0GACC,oBAAA,CAEA,mIACC,oBAAA,CAKH,yFACC,iBAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.mail-message-account-color {\n\tposition: absolute;\n\tleft: 0px;\n\twidth: 2px;\n\theight: 69px;\n\tz-index: 1;\n}\n\n.icon-important {\n\t::v-deep path {\n\t\tfill: #ffcc00;\n\t\tstroke: var(--color-main-background);\n\t}\n\t.app-content-list-item:hover &,\n\t.app-content-list-item:focus &,\n\t.app-content-list-item.active & {\n\t\t::v-deep path {\n\t\t\tstroke: var(--color-background-dark);\n\t\t}\n\t}\n\n\t// In message list, but not the one in the action menu\n\t&.app-content-list-item-star {\n\t\tbackground-image: none;\n\t\tleft: 7px;\n\t\ttop: 13px;\n\t\topacity: 1;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\topacity: 0.5;\n\t\t}\n\t}\n}\n\n.app-content-list-item .app-content-list-item-select-checkbox {\n\tdisplay: inline-block;\n\tvertical-align: middle;\n\tposition: absolute;\n\tleft: 22px;\n\ttop: 20px;\n\tz-index: 50; // same as icon-starred\n}\n\n.app-content-list-item:not(.seen) {\n\tfont-weight: bold;\n}\n.app-content-list-item.selected {\n\tbackground-color: var(--color-background-dark);\n\tfont-weight: bold;\n}\n.app-content-list-item-star.junk {\n\tbackground-image: var(--icon-junk-000);\n\topacity: 1;\n}\n.app-content-list-item.draft .app-content-list-item-line-two {\n\tfont-style: italic;\n}\n.app-content-list-item.active {\n\tbackground-color: var(--color-primary-light);\n}\n\n.icon-reply,\n.icon-attachment {\n\tdisplay: inline-block;\n\tvertical-align: text-top;\n}\n\n.icon-reply {\n\tbackground-image: url('../../img/reply.svg');\n\t-ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=50)';\n\topacity: 0.5;\n}\n\n.icon-attachment {\n\t-ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=25)';\n\topacity: 0.25;\n}\n\n// Fix layout of messages in list until we move to component\n\n.app-content-list .app-content-list-item {\n\tpadding-right: 0;\n\n\t.app-content-list-item-line-two {\n\t\tpadding-right: 0;\n\t\tmargin-top: -8px;\n\t}\n\n\t.app-content-list-item-menu {\n\t\tmargin-right: -2px;\n\t\tmargin-top: -8px;\n\n\t\t::v-deep .action-item__menu {\n\t\t\tright: 7px !important;\n\n\t\t\t.action-item__menu_arrow {\n\t\t\t\tright: 6px !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t.app-content-list-item-details {\n\t\tpadding-right: 7px;\n\t}\n}\n"],sourceRoot:""}]),n.a=u},1137:function(t,n){t.exports='<svg xmlns="http://www.w3.org/2000/svg"><path d="M15 15s-.4-7.8-7-10V1L1 8l7 7v-4c5.1 0 7 4 7 4z"></path></svg>'},1138:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"div[data-v-74567ca5]{position:relative}.load-more[data-v-74567ca5]{text-align:center;margin-top:10px;cursor:pointer;color:var(--color-text-maxcontrast)}.multiselect-header[data-v-74567ca5]{display:flex;flex-direction:row;align-items:center;justify-content:center;background-color:var(--color-main-background-translucent);position:sticky;top:0px;height:48px;z-index:100}#load-more-mail-messages[data-v-74567ca5]{margin:10px auto;padding:10px;margin-top:50px;margin-bottom:50px}#load-more-mail-messages.icon-loading-small[data-v-74567ca5]{padding-left:32px;background-position:9px center}#list-refreshing[data-v-74567ca5]{position:absolute;left:calc(50% - 8px);overflow:hidden;padding:12px;background-color:var(--color-main-background);z-index:1;border-radius:var(--border-radius-pill);border:1px solid var(--color-border);top:-24px;opacity:0;transition-property:top,opacity;transition-duration:.5s;transition-timing-function:ease-in-out}#list-refreshing.refreshing[data-v-74567ca5]{top:4px;opacity:1}.multiselect-header-enter-active[data-v-74567ca5],.multiselect-header-leave-active[data-v-74567ca5],.list-enter-active[data-v-74567ca5],.list-leave-active[data-v-74567ca5]{transition:all var(--animation-slow)}.multiselect-header-enter[data-v-74567ca5],.multiselect-header-leave-to[data-v-74567ca5],.list-enter[data-v-74567ca5],.list-leave-to[data-v-74567ca5]{opacity:0;height:0px;transform:scaleY(0)}#action-label[data-v-74567ca5]{vertical-align:middle}@media only screen and (min-width: 600px){#action-label[data-v-74567ca5]{display:block}}","",{version:3,sources:["webpack://./src/components/EnvelopeList.vue"],names:[],mappings:"AAgXA,qBAEC,iBAAA,CAGD,4BACC,iBAAA,CACA,eAAA,CACA,cAAA,CACA,mCAAA,CAGD,qCACC,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,sBAAA,CACA,yDAAA,CACA,eAAA,CACA,OAAA,CACA,WAAA,CACA,WAAA,CAGD,0CACC,gBAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CAID,6DACC,iBAAA,CACA,8BAAA,CAGD,kCACC,iBAAA,CACA,oBAAA,CACA,eAAA,CACA,YAAA,CACA,6CAAA,CACA,SAAA,CACA,uCAAA,CACA,oCAAA,CACA,SAAA,CACA,SAAA,CACA,+BAAA,CACA,uBAAA,CACA,sCAAA,CAEA,6CACC,OAAA,CACA,SAAA,CAIF,4KAIC,oCAAA,CAGD,sJAIC,SAAA,CACA,UAAA,CACA,mBAAA,CAGD,+BACC,qBAAA,CAED,0CACC,+BACC,aAAA,CAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ndiv {\n\t// So we can align the loading spinner in the Priority inbox\n\tposition: relative;\n}\n\n.load-more {\n\ttext-align: center;\n\tmargin-top: 10px;\n\tcursor: pointer;\n\tcolor: var(--color-text-maxcontrast);\n}\n\n.multiselect-header {\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n\tjustify-content: center;\n\tbackground-color: var(--color-main-background-translucent);\n\tposition: sticky;\n\ttop: 0px;\n\theight: 48px;\n\tz-index: 100;\n}\n\n#load-more-mail-messages {\n\tmargin: 10px auto;\n\tpadding: 10px;\n\tmargin-top: 50px;\n\tmargin-bottom: 50px;\n}\n\n/* TODO: put this in core icons.css as general rule for buttons with icons */\n#load-more-mail-messages.icon-loading-small {\n\tpadding-left: 32px;\n\tbackground-position: 9px center;\n}\n\n#list-refreshing {\n\tposition: absolute;\n\tleft: calc(50% - 8px);\n\toverflow: hidden;\n\tpadding: 12px;\n\tbackground-color: var(--color-main-background);\n\tz-index: 1;\n\tborder-radius: var(--border-radius-pill);\n\tborder: 1px solid var(--color-border);\n\ttop: -24px;\n\topacity: 0;\n\ttransition-property: top, opacity;\n\ttransition-duration: 0.5s;\n\ttransition-timing-function: ease-in-out;\n\n\t&.refreshing {\n\t\ttop: 4px;\n\t\topacity: 1;\n\t}\n}\n\n.multiselect-header-enter-active,\n.multiselect-header-leave-active,\n.list-enter-active,\n.list-leave-active {\n\ttransition: all var(--animation-slow);\n}\n\n.multiselect-header-enter,\n.multiselect-header-leave-to,\n.list-enter,\n.list-leave-to {\n\topacity: 0;\n\theight: 0px;\n\ttransform: scaleY(0);\n}\n\n#action-label {\n\tvertical-align: middle;\n}\n@media only screen and (min-width: 600px) {\n\t#action-label {\n\t\tdisplay: block;\n\t}\n}\n"],sourceRoot:""}]),n.a=i},1140:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".fade-enter-active[data-v-5dce5c60],.fade-leave-active[data-v-5dce5c60]{transition:opacity .5s}.fade-enter[data-v-5dce5c60],.fade-leave-to[data-v-5dce5c60]{opacity:0}","",{version:3,sources:["webpack://./src/components/Loading.vue"],names:[],mappings:"AA8CA,wEAEC,sBAAA,CAED,6DAEC,SAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.fade-enter-active,\n.fade-leave-active {\n\ttransition: opacity 0.5s;\n}\n.fade-enter,\n.fade-leave-to {\n\topacity: 0;\n}\n"],sourceRoot:""}]),n.a=i},1141:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"#emptycontent[data-v-4512145e]{margin-top:10px}","",{version:3,sources:["webpack://./src/components/EmptyMailboxSection.vue"],names:[],mappings:"AAYA,+BACC,eAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n#emptycontent {\n\tmargin-top: 10px;\n}\n"],sourceRoot:""}]),n.a=i},1142:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".nameimportant[data-v-45a02c20] #load-more-mail-messages,.namestarred[data-v-45a02c20] #load-more-mail-messages{margin-top:0;margin-bottom:8px}","",{version:3,sources:["webpack://./src/components/Mailbox.vue"],names:[],mappings:"AAkdC,kHACC,YAAA,CACA,iBAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// Fix vertical space between sections in priority inbox\n.nameimportant,\n.namestarred {\n\t::v-deep #load-more-mail-messages {\n\t\tmargin-top: 0;\n\t\tmargin-bottom: 8px;\n\t}\n}\n"],sourceRoot:""}]),n.a=i},1207:function(t,n){},1209:function(t,n){},1239:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n.new-message-attachments li[data-v-44ae67a0] {\n\tpadding: 10px;\n}\n.new-message-attachments-action[data-v-44ae67a0] {\n\tdisplay: inline-block;\n\tvertical-align: middle;\n\tpadding: 22px;\n\topacity: 0.5;\n}\n\n/* attachment filenames */\n.new-message-attachment-name[data-v-44ae67a0] {\n\tdisplay: inline-block;\n}\n\n/* Colour the filename with a different color during attachment upload */\n.new-message-attachment-name.upload-ongoing[data-v-44ae67a0] {\n\tcolor: #0082c9;\n}\n\n/* Colour the filename in red if the attachment upload failed */\n.new-message-attachment-name.upload-warning[data-v-44ae67a0] {\n\tcolor: #d2322d;\n}\n\n/* Red ProgressBar for failed attachment uploads */\n.new-message-attachment-name.upload-warning .ui-progressbar-value[data-v-44ae67a0] {\n\tborder: 1px solid #e9322d;\n\tbackground: #e9322d;\n}\n.attachments-upload-progress[data-v-44ae67a0] {\n\tdisplay: flex;\n}\n.attachments-upload-progress > div[data-v-44ae67a0] {\n\tpadding-left: 3px;\n}\n","",{version:3,sources:["webpack://./src/components/ComposerAttachments.vue"],names:[],mappings:";AAuOA;CACA,aAAA;AACA;AAEA;CACA,qBAAA;CACA,sBAAA;CACA,aAAA;CACA,YAAA;AACA;;AAEA,yBAAA;AACA;CACA,qBAAA;AACA;;AAEA,wEAAA;AACA;CACA,cAAA;AACA;;AAEA,+DAAA;AACA;CACA,cAAA;AACA;;AAEA,kDAAA;AACA;CACA,yBAAA;CACA,mBAAA;AACA;AAEA;CACA,aAAA;AACA;AAEA;CACA,iBAAA;AACA",sourcesContent:["\x3c!--\n - @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>\n - @copyright 2020 Gary Kim <gary@garykim.dev>\n -\n - @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n --\x3e\n\n<template>\n\t<div class=\"new-message-attachments\">\n\t\t<ul>\n\t\t\t<li v-for=\"attachment in value\" :key=\"attachment.id\">\n\t\t\t\t<div class=\"new-message-attachment-name\">\n\t\t\t\t\t{{ attachment.displayName }}\n\t\t\t\t</div>\n\t\t\t\t<div class=\"new-message-attachments-action svg icon-delete\" @click=\"onDelete(attachment)\" />\n\t\t\t</li>\n\t\t\t<li v-if=\"uploading\" class=\"attachments-upload-progress\">\n\t\t\t\t<div :class=\"{'icon-loading-small': uploading}\" />\n\t\t\t\t<div>{{ uploading ? t('mail', 'Uploading {percent}% …', {percent: uploadProgress}) : '' }}</div>\n\t\t\t</li>\n\t\t</ul>\n\n\t\t<input ref=\"localAttachments\"\n\t\t\ttype=\"file\"\n\t\t\tmultiple\n\t\t\tstyle=\"display: none;\"\n\t\t\t@change=\"onLocalAttachmentSelected\">\n\t</div>\n</template>\n\n<script>\nimport map from 'lodash/fp/map'\nimport trimStart from 'lodash/fp/trimCharsStart'\nimport { getRequestToken } from '@nextcloud/auth'\nimport { formatFileSize } from '@nextcloud/files'\nimport prop from 'lodash/fp/prop'\nimport { getFilePickerBuilder, showWarning } from '@nextcloud/dialogs'\nimport sum from 'lodash/fp/sum'\nimport sumBy from 'lodash/fp/sumBy'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\n\nimport Vue from 'vue'\n\nimport logger from '../logger'\nimport { getFileSize } from '../service/FileService'\nimport { shareFile } from '../service/FileSharingService'\nimport { uploadLocalAttachment } from '../service/AttachmentService'\n\nexport default {\n\tname: 'ComposerAttachments',\n\tprops: {\n\t\tvalue: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tbus: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tuploadSizeLimit: {\n\t\t\ttype: Number,\n\t\t\tdefault: 0,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tuploading: false,\n\t\t\tuploads: {},\n\t\t}\n\t},\n\tcomputed: {\n\t\tuploadProgress() {\n\t\t\tlet uploaded = 0\n\t\t\tlet total = 0\n\t\t\tfor (const id in this.uploads) {\n\t\t\t\tuploaded += this.uploads[id].uploaded\n\t\t\t\ttotal += this.uploads[id].total\n\t\t\t}\n\t\t\treturn ((uploaded / total) * 100).toFixed(1)\n\t\t},\n\t},\n\tcreated() {\n\t\tthis.bus.$on('onAddLocalAttachment', this.onAddLocalAttachment)\n\t\tthis.bus.$on('onAddCloudAttachment', this.onAddCloudAttachment)\n\t\tthis.bus.$on('onAddCloudAttachmentLink', this.onAddCloudAttachmentLink)\n\t},\n\tmethods: {\n\t\tonAddLocalAttachment() {\n\t\t\tthis.$refs.localAttachments.click()\n\t\t},\n\t\temitNewAttachments(attachments) {\n\t\t\tthis.$emit('input', this.value.concat(attachments))\n\t\t},\n\t\ttotalSizeOfUpload() {\n\t\t\treturn Object.values(this.value).reduce((acc, upload) => {\n\t\t\t\tif (!upload.type === 'local') {\n\t\t\t\t\t// Ignore link shares\n\t\t\t\t\treturn acc\n\t\t\t\t}\n\n\t\t\t\treturn acc + upload.size\n\t\t\t}, 0)\n\t\t},\n\t\tonLocalAttachmentSelected(e) {\n\t\t\tthis.uploading = true\n\n\t\t\tVue.set(this, 'uploads', {})\n\n\t\t\tconst toUpload = sumBy(prop('size'), Object.values(e.target.files))\n\t\t\tconst newTotal = toUpload + this.totalSizeOfUpload()\n\t\t\tlogger.debug('checking upload size limit', {\n\t\t\t\texistingUploads: this.totalSizeOfUpload(),\n\t\t\t\ttoUpload,\n\t\t\t\tlimit: this.uploadSizeLimit,\n\t\t\t\tnewTotal,\n\t\t\t})\n\t\t\tif (this.uploadSizeLimit && newTotal > this.uploadSizeLimit) {\n\t\t\t\tthis.showAttachmentFileSizeWarning(e.target.files.length)\n\n\t\t\t\tthis.uploading = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst progress = (id) => (prog, uploaded) => {\n\t\t\t\tthis.uploads[id].uploaded = uploaded\n\t\t\t}\n\n\t\t\tconst promises = map((file) => {\n\t\t\t\tVue.set(this.uploads, file.name, {\n\t\t\t\t\ttotal: file.size,\n\t\t\t\t\tuploaded: 0,\n\t\t\t\t})\n\n\t\t\t\treturn uploadLocalAttachment(file, progress(file.name)).then(({ file, id }) => {\n\t\t\t\t\tlogger.info('uploaded')\n\t\t\t\t\tthis.emitNewAttachments([{\n\t\t\t\t\t\tfileName: file.name,\n\t\t\t\t\t\tdisplayName: trimStart('/', file.name),\n\t\t\t\t\t\tid,\n\t\t\t\t\t\tsize: file.size,\n\t\t\t\t\t\ttype: 'local',\n\t\t\t\t\t}])\n\t\t\t\t})\n\n\t\t\t}, e.target.files)\n\n\t\t\tconst done = Promise.all(promises)\n\t\t\t\t.catch((error) => logger.error('could not upload all attachments', { error }))\n\t\t\t\t.then(() => (this.uploading = false))\n\n\t\t\tthis.$emit('upload', done)\n\n\t\t\treturn done\n\t\t},\n\t\tasync onAddCloudAttachment() {\n\t\t\tconst picker = getFilePickerBuilder(t('mail', 'Choose a file to add as attachment')).setMultiSelect(true).build()\n\n\t\t\ttry {\n\t\t\t\tconst paths = await picker.pick(t('mail', 'Choose a file to add as attachment'))\n\t\t\t\tconst fileSizes = await Promise.all(paths.map(getFileSize))\n\t\t\t\tconst newTotal = sum(fileSizes) + this.totalSizeOfUpload()\n\n\t\t\t\tif (this.uploadSizeLimit && newTotal > this.uploadSizeLimit) {\n\t\t\t\t\tthis.showAttachmentFileSizeWarning(paths.length)\n\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tthis.emitNewAttachments(paths.map(function(name) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tfileName: name,\n\t\t\t\t\t\tdisplayName: trimStart('/', name),\n\t\t\t\t\t\ttype: 'cloud',\n\t\t\t\t\t}\n\t\t\t\t}))\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('could not choose a file as attachment', { error })\n\t\t\t}\n\t\t},\n\t\tasync onAddCloudAttachmentLink() {\n\t\t\tconst picker = getFilePickerBuilder(t('mail', 'Choose a file to share as a link')).build()\n\n\t\t\ttry {\n\t\t\t\tconst path = await picker.pick(t('mail', 'Choose a file to share as a link'))\n\t\t\t\tconst url = await shareFile(path, getRequestToken())\n\n\t\t\t\tthis.appendToBodyAtCursor(`<a href=\"${url}\">${url}</a>`)\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('could not choose a file as attachment link', { error })\n\t\t\t}\n\t\t},\n\t\tshowAttachmentFileSizeWarning(num) {\n\t\t\tshowWarning(n(\n\t\t\t\t'mail',\n\t\t\t\t'The attachment exceed the allowed attachments size of {size}. Please share the file via link instead.',\n\t\t\t\t'The attachments exceed the allowed attachments size of {size}. Please share the files via link instead.',\n\t\t\t\tnum,\n\t\t\t\t{\n\t\t\t\t\tsize: formatFileSize(this.uploadSizeLimit),\n\t\t\t\t}\n\t\t\t))\n\t\t},\n\t\tonDelete(attachment) {\n\t\t\tthis.$emit(\n\t\t\t\t'input',\n\t\t\t\tthis.value.filter((a) => a !== attachment)\n\t\t\t)\n\t\t},\n\t\tappendToBodyAtCursor(toAppend) {\n\t\t\tthis.bus.$emit('appendToBodyAtCursor', toAppend)\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n.new-message-attachments li {\n\tpadding: 10px;\n}\n\n.new-message-attachments-action {\n\tdisplay: inline-block;\n\tvertical-align: middle;\n\tpadding: 22px;\n\topacity: 0.5;\n}\n\n/* attachment filenames */\n.new-message-attachment-name {\n\tdisplay: inline-block;\n}\n\n/* Colour the filename with a different color during attachment upload */\n.new-message-attachment-name.upload-ongoing {\n\tcolor: #0082c9;\n}\n\n/* Colour the filename in red if the attachment upload failed */\n.new-message-attachment-name.upload-warning {\n\tcolor: #d2322d;\n}\n\n/* Red ProgressBar for failed attachment uploads */\n.new-message-attachment-name.upload-warning .ui-progressbar-value {\n\tborder: 1px solid #e9322d;\n\tbackground: #e9322d;\n}\n\n.attachments-upload-progress {\n\tdisplay: flex;\n}\n\n.attachments-upload-progress > div {\n\tpadding-left: 3px;\n}\n</style>\n"],sourceRoot:""}]),n.a=i},1271:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n#mailvelope-composer[data-v-1320c887] {\n\twidth: 100%;\n\theight: 450px;\n}\n","",{version:3,sources:["webpack://./src/components/MailvelopeEditor.vue"],names:[],mappings:";AA6EA;CACA,WAAA;CACA,aAAA;AACA",sourcesContent:["\x3c!--\n - @copyright 2020 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @author 2020 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n --\x3e\n\n<template>\n\t<div id=\"mailvelope-composer\" />\n</template>\n\n<script>\nimport logger from '../logger'\nimport { isPgpgMessage } from '../crypto/pgp'\n\nexport default {\n\tname: 'MailvelopeEditor',\n\tprops: {\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\trecipients: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tquotedText: {\n\t\t\ttype: Object,\n\t\t\trequired: false,\n\t\t\tdefault: () => undefined,\n\t\t},\n\t\tisReplyOrForward: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\teditor: undefined,\n\t\t}\n\t},\n\tasync mounted() {\n\t\tconst isEncrypted = this.quotedText ? isPgpgMessage(this.quotedText) : false\n\t\tconst quotedMail = this.isReplyOrForward ? this.quotedText?.value : undefined\n\n\t\tthis.editor = await window.mailvelope.createEditorContainer('#mailvelope-composer', undefined, {\n\t\t\tquotedMail: isEncrypted ? quotedMail : undefined,\n\t\t})\n\t},\n\tmethods: {\n\t\tasync pull() {\n\t\t\tconst recipients = this.recipients.map((r) => r.email)\n\t\t\tlogger.info('encrypting message', { recipients })\n\t\t\tconst armored = await this.editor.encrypt(recipients)\n\t\t\tlogger.info('message encryted', { armored })\n\n\t\t\tthis.$emit('input', armored)\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n#mailvelope-composer {\n\twidth: 100%;\n\theight: 450px;\n}\n</style>\n"],sourceRoot:""}]),n.a=i},1272:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".message-composer[data-v-3fcb09a1]{margin:0;z-index:100}.composer-actions[data-v-3fcb09a1]{display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;position:sticky;bottom:0;padding:12px;background:linear-gradient(rgba(255, 255, 255, 0), var(--color-main-background-translucent) 50%)}.composer-actions-right[data-v-3fcb09a1]{display:flex;align-items:center}.composer-fields[data-v-3fcb09a1]{display:flex;align-items:center;border-top:1px solid var(--color-border)}.composer-fields.mail-account[data-v-3fcb09a1]{border-top:none}.composer-fields.mail-account>.multiselect[data-v-3fcb09a1]{max-width:none;min-height:auto}.composer-fields .multiselect[data-v-3fcb09a1],.composer-fields input[data-v-3fcb09a1],.composer-fields TextEditor[data-v-3fcb09a1]{flex-grow:1;max-width:none;border:none;border-radius:0}.composer-fields .multiselect[data-v-3fcb09a1]{margin-right:12px}.subject[data-v-3fcb09a1]{font-size:20px;font-weight:bold;margin:0;padding:24px 12px}.warning-box[data-v-3fcb09a1]{padding:5px 12px;border-radius:0}.message-body[data-v-3fcb09a1]{min-height:300px;width:100%;margin:0;padding:12px;border:none !important;outline:none !important;box-shadow:none !important}#draft-status[data-v-3fcb09a1]{padding:5px;opacity:.5;font-size:small}.from-label[data-v-3fcb09a1],.to-label[data-v-3fcb09a1],.copy-toggle[data-v-3fcb09a1],.cc-label[data-v-3fcb09a1],.bcc-label[data-v-3fcb09a1]{padding:12px;cursor:text;color:var(--color-text-maxcontrast);width:100px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bcc-label[data-v-3fcb09a1]{top:initial;bottom:0}.copy-toggle[data-v-3fcb09a1]{cursor:pointer;width:initial}.copy-toggle[data-v-3fcb09a1]:hover,.copy-toggle[data-v-3fcb09a1]:focus{color:var(--color-main-text)}.reply[data-v-3fcb09a1]{min-height:100px}.send[data-v-3fcb09a1]{padding:12px 18px 13px 36px;background-position:12px center;margin-left:4px}[data-v-3fcb09a1] .multiselect .multiselect__tags{border:none !important}.submit-message.send.primary.icon-confirm-white[data-v-3fcb09a1]{color:var(--color-main-background)}","",{version:3,sources:["webpack://./src/components/Composer.vue"],names:[],mappings:"AA0wBA,mCACC,QAAA,CACA,WAAA,CAGD,mCACC,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,6BAAA,CACA,eAAA,CACA,QAAA,CACA,YAAA,CACA,gGAAA,CAGD,yCACC,YAAA,CACA,kBAAA,CAGD,kCACC,YAAA,CACA,kBAAA,CACA,wCAAA,CAEA,+CACC,eAAA,CAEA,4DACC,cAAA,CACA,eAAA,CAIF,oIAGC,WAAA,CACA,cAAA,CACA,WAAA,CACA,eAAA,CAGD,+CACC,iBAAA,CAIF,0BACC,cAAA,CACA,gBAAA,CACA,QAAA,CACA,iBAAA,CAGD,8BACC,gBAAA,CACA,eAAA,CAGD,+BACC,gBAAA,CACA,UAAA,CACA,QAAA,CACA,YAAA,CACA,sBAAA,CACA,uBAAA,CACA,0BAAA,CAGD,+BACC,WAAA,CACA,UAAA,CACA,eAAA,CAGD,6IAKC,YAAA,CACA,WAAA,CACA,mCAAA,CACA,WAAA,CACA,gBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAGD,4BACC,WAAA,CACA,QAAA,CAGD,8BACC,cAAA,CACA,aAAA,CAEA,wEAEC,4BAAA,CAIF,wBACC,gBAAA,CAGD,uBACC,2BAAA,CACA,+BAAA,CACA,eAAA,CAED,kDACC,sBAAA,CAED,iEACC,kCAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.message-composer {\n\tmargin: 0;\n\tz-index: 100;\n}\n\n.composer-actions {\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: flex-end;\n\tjustify-content: space-between;\n\tposition: sticky;\n\tbottom: 0;\n\tpadding: 12px;\n\tbackground: linear-gradient(rgba(255, 255, 255, 0), var(--color-main-background-translucent) 50%);\n}\n\n.composer-actions-right {\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.composer-fields {\n\tdisplay: flex;\n\talign-items: center;\n\tborder-top: 1px solid var(--color-border);\n\n\t&.mail-account {\n\t\tborder-top: none;\n\n\t\t& > .multiselect {\n\t\t\tmax-width: none;\n\t\t\tmin-height: auto;\n\t\t}\n\t}\n\n\t.multiselect,\n\tinput,\n\tTextEditor {\n\t\tflex-grow: 1;\n\t\tmax-width: none;\n\t\tborder: none;\n\t\tborder-radius: 0;\n\t}\n\n\t.multiselect {\n\t\tmargin-right: 12px;\n\t}\n}\n\n.subject {\n\tfont-size: 20px;\n\tfont-weight: bold;\n\tmargin: 0;\n\tpadding: 24px 12px;\n}\n\n.warning-box {\n\tpadding: 5px 12px;\n\tborder-radius: 0;\n}\n\n.message-body {\n\tmin-height: 300px;\n\twidth: 100%;\n\tmargin: 0;\n\tpadding: 12px;\n\tborder: none !important;\n\toutline: none !important;\n\tbox-shadow: none !important;\n}\n\n#draft-status {\n\tpadding: 5px;\n\topacity: 0.5;\n\tfont-size: small;\n}\n\n.from-label,\n.to-label,\n.copy-toggle,\n.cc-label,\n.bcc-label {\n\tpadding: 12px;\n\tcursor: text;\n\tcolor: var(--color-text-maxcontrast);\n\twidth: 100px;\n\ttext-align: right;\n\twhite-space: nowrap;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.bcc-label {\n\ttop: initial;\n\tbottom: 0;\n}\n\n.copy-toggle {\n\tcursor: pointer;\n\twidth: initial;\n\n\t&:hover,\n\t&:focus {\n\t\tcolor: var(--color-main-text);\n\t}\n}\n\n.reply {\n\tmin-height: 100px;\n}\n\n.send {\n\tpadding: 12px 18px 13px 36px;\n\tbackground-position: 12px center;\n\tmargin-left: 4px;\n}\n::v-deep .multiselect .multiselect__tags {\n\tborder: none !important;\n}\n.submit-message.send.primary.icon-confirm-white {\n\tcolor: var(--color-main-background);\n}\n"],sourceRoot:""}]),n.a=i},1273:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n.app-content-details[data-v-0f812b2d] {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n}\n.icon[data-v-0f812b2d] {\n\theight: 64px;\n\twidth: 64px;\n\tmargin: 0 auto 15px;\n\tbackground-size: 64px;\n\topacity: 0.4;\n}\nh2[data-v-0f812b2d],\np[data-v-0f812b2d] {\n\ttext-align: center;\n}\n","",{version:3,sources:["webpack://./src/components/NoMessageSelected.vue"],names:[],mappings:";AAyCA;CACA,aAAA;CACA,sBAAA;CACA,uBAAA;AACA;AAEA;CACA,YAAA;CACA,WAAA;CACA,mBAAA;CACA,qBAAA;CACA,YAAA;AACA;AAEA;;CAEA,kBAAA;AACA",sourcesContent:["\x3c!--\n - @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n --\x3e\n\n<template>\n\t<AppContentDetails>\n\t\t<div class=\"icon icon-mail\" />\n\t\t<h2>{{ t('mail', 'No message selected') }}</h2>\n\t\t<p />\n\t</AppContentDetails>\n</template>\n\n<script>\nimport AppContentDetails from '@nextcloud/vue/dist/Components/AppContentDetails'\n\nexport default {\n\tname: 'NoMessageSelected',\n\tcomponents: {\n\t\tAppContentDetails,\n\t},\n}\n<\/script>\n\n<style scoped>\n.app-content-details {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n}\n\n.icon {\n\theight: 64px;\n\twidth: 64px;\n\tmargin: 0 auto 15px;\n\tbackground-size: 64px;\n\topacity: 0.4;\n}\n\nh2,\np {\n\ttext-align: center;\n}\n</style>\n"],sourceRoot:""}]),n.a=i},1275:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".user-bubble__title[data-v-06e00222]{max-width:30vw}.user-bubble-email[data-v-06e00222]{margin:10px}","",{version:3,sources:["webpack://./src/components/RecipientBubble.vue"],names:[],mappings:"AA+FA,qCACC,cAAA,CAED,oCACC,WAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.user-bubble__title {\n\tmax-width: 30vw;\n}\n.user-bubble-email {\n\tmargin: 10px;\n}\n"],sourceRoot:""}]),n.a=i},1279:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n.reservation[data-v-b2f6d4c0] {\n\tdisplay: flex;\n\tflex-direction: row;\n\tmargin: 30px 38px;\n\tborder: 1px solid var(--color-border);\n\tborder-radius: var(--border-radius);\n\tpadding: 20px;\n\talign-items: center;\n}\n.event[data-v-b2f6d4c0] {\n\tflex-grow: 1;\n}\n.event-name[data-v-b2f6d4c0] {\n\tfont-size: larger;\n\tfont-weight: bold;\n}\n","",{version:3,sources:["webpack://./src/components/itinerary/EventReservation.vue"],names:[],mappings:";AAsJA;CACA,aAAA;CACA,mBAAA;CACA,iBAAA;CACA,qCAAA;CACA,mCAAA;CACA,aAAA;CACA,mBAAA;AACA;AAEA;CACA,YAAA;AACA;AAEA;CACA,iBAAA;CACA,iBAAA;AACA",sourcesContent:["\x3c!--\n - @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n --\x3e\n\n<template>\n\t<div class=\"reservation\">\n\t\t<div class=\"event\">\n\t\t\t<div class=\"event-name\">\n\t\t\t\t{{ eventName }}\n\t\t\t</div>\n\t\t\t<div v-if=\"location\" class=\"venue\">\n\t\t\t\t{{ location }}\n\t\t\t</div>\n\t\t\t<div v-if=\"date\">\n\t\t\t\t{{ date }}\n\t\t\t</div>\n\t\t\t<div v-if=\"time\">\n\t\t\t\t{{ time }}\n\t\t\t</div>\n\t\t</div>\n\t\t<CalendarImport v-if=\"canImport\" :calendars=\"calendars\" :handler=\"handleImport\" />\n\t</div>\n</template>\n\n<script>\nimport ical from 'ical.js'\nimport md5 from 'md5'\nimport moment from '@nextcloud/moment'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\n\nimport CalendarImport from './CalendarImport'\nimport { importCalendarEvent } from '../../service/DAVService'\nimport logger from '../../logger'\n\nexport default {\n\tname: 'EventReservation',\n\tcomponents: { CalendarImport },\n\tprops: {\n\t\tdata: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tcalendars: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tmessageId: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tcomputed: {\n\t\teventName() {\n\t\t\treturn this.data.reservationFor.name\n\t\t},\n\t\ttime() {\n\t\t\tif (!('startDate' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.startDate).format('LT')\n\t\t},\n\t\tdate() {\n\t\t\tif (!('startDate' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.startDate).format('L')\n\t\t},\n\t\tlocation() {\n\t\t\tif (!('location' in this.data.reservationFor) || !('name' in this.data.reservationFor.location)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn this.data.reservationFor.location.name\n\t\t},\n\t\tcanImport() {\n\t\t\treturn 'startDate' in this.data.reservationFor\n\t\t},\n\t},\n\tmethods: {\n\t\tgetEndDateTime(event) {\n\t\t\tif ('endDate' in this.data.reservationFor) {\n\t\t\t\treturn moment(this.data.reservationFor.endDate).format()\n\t\t\t} else {\n\t\t\t\t// Assume it's 2h and user will adjust if necessary\n\t\t\t\t// TODO: handle 'duration' https://schema.org/Event\n\t\t\t\treturn moment('2019-10-22T12:00:00Z').add(2, 'hours').format()\n\t\t\t}\n\t\t},\n\t\thandleImport(calendar) {\n\t\t\tconst event = new ical.Component('VEVENT')\n\t\t\tevent.updatePropertyWithValue('SUMMARY', this.eventName)\n\n\t\t\tconst start = moment(this.data.reservationFor.startDate).format()\n\t\t\tevent.updatePropertyWithValue('DTSTART', ical.Time.fromDateTimeString(start))\n\t\t\tevent.updatePropertyWithValue(\n\t\t\t\t'DTEND',\n\t\t\t\tical.Time.fromDateTimeString(this.getEndDateTime(this.data.reservationFor))\n\t\t\t)\n\n\t\t\tif ('location' in this.data.reservationFor) {\n\t\t\t\tevent.updatePropertyWithValue('LOCATION', this.data.reservationFor.location.name)\n\t\t\t\tif ('geo' in this.data.reservationFor.location) {\n\t\t\t\t\t// https://www.kanzaki.com/docs/ical/geo.html\n\t\t\t\t\tevent.updatePropertyWithValue(\n\t\t\t\t\t\t'GEO',\n\t\t\t\t\t\t`${this.data.reservationFor.location.geo.latitude};${this.data.reservationFor.location.geo.longitude}`\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// TODO: read version from package.json\n\t\t\tevent.updatePropertyWithValue('PRODID', 'Nextcloud Mail')\n\n\t\t\t// TODO: is this free of collisions? the bug reports will tell us!\n\t\t\tevent.updatePropertyWithValue('UID', md5(this.messageId + this.eventName))\n\n\t\t\tconst cal = new ical.Component('VCALENDAR')\n\t\t\tcal.addSubcomponent(event)\n\t\t\tlogger.debug('generated calendar event from event reservation data', { ical: cal.toString() })\n\t\t\treturn importCalendarEvent(calendar.url)(cal.toString())\n\t\t\t\t.then(() => {\n\t\t\t\t\tlogger.debug('event successfully imported')\n\t\t\t\t\tshowSuccess(t('mail', 'Event imported into {calendar}', { calendar: calendar.displayname }))\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tlogger.error('Could not import event', { error })\n\t\t\t\t\tshowError(t('mail', 'Could not create event'))\n\t\t\t\t})\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n.reservation {\n\tdisplay: flex;\n\tflex-direction: row;\n\tmargin: 30px 38px;\n\tborder: 1px solid var(--color-border);\n\tborder-radius: var(--border-radius);\n\tpadding: 20px;\n\talign-items: center;\n}\n\n.event {\n\tflex-grow: 1;\n}\n\n.event-name {\n\tfont-size: larger;\n\tfont-weight: bold;\n}\n</style>\n"],sourceRoot:""}]),n.a=i},1280:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n.reservation[data-v-670645fc] {\n\tdisplay: flex;\n\tflex-direction: row;\n\tmargin: 30px 38px;\n\tborder: 1px solid var(--color-border);\n\tborder-radius: var(--border-radius);\n\tpadding: 20px;\n\talign-items: center;\n}\n.departure[data-v-670645fc],\n.arrival[data-v-670645fc] {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-grow: 1;\n}\n.departure[data-v-670645fc],\n.arrival[data-v-670645fc],\n.connection[data-v-670645fc] {\n\tjustify-content: center;\n}\n.iata[data-v-670645fc] {\n\tfont-size: larger;\n\tfont-weight: bold;\n}\n.airport[data-v-670645fc] {\n\tfont-size: large;\n}\n.departure[data-v-670645fc] {\n\ttext-align: right;\n}\n.connection[data-v-670645fc] {\n\ttext-align: center;\n\tpadding: 0 40px;\n}\n","",{version:3,sources:["webpack://./src/components/itinerary/FlightReservation.vue"],names:[],mappings:";AA6JA;CACA,aAAA;CACA,mBAAA;CACA,iBAAA;CACA,qCAAA;CACA,mCAAA;CACA,aAAA;CACA,mBAAA;AACA;AAEA;;CAEA,aAAA;CACA,sBAAA;CACA,YAAA;AACA;AAEA;;;CAGA,uBAAA;AACA;AAEA;CACA,iBAAA;CACA,iBAAA;AACA;AAEA;CACA,gBAAA;AACA;AAEA;CACA,iBAAA;AACA;AAEA;CACA,kBAAA;CACA,eAAA;AACA",sourcesContent:["<template>\n\t<div class=\"reservation\">\n\t\t<div class=\"departure\">\n\t\t\t<div class=\"iata\">\n\t\t\t\t{{ data.reservationFor.departureAirport.iataCode }}\n\t\t\t</div>\n\t\t\t<div class=\"airport\">\n\t\t\t\t{{ data.reservationFor.departureAirport.name }}\n\t\t\t</div>\n\t\t\t<div v-if=\"departureDate\">\n\t\t\t\t{{ departureDate }}\n\t\t\t</div>\n\t\t\t<div v-if=\"departureTime\">\n\t\t\t\t{{ departureTime }}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"connection\">\n\t\t\t<div><AirplaneIcon :title=\"t('mail', 'Airplane')\" /></div>\n\t\t\t<div>{{ flightNumber }}</div>\n\t\t\t<div v-if=\"reservation\">\n\t\t\t\t{{ t('mail', 'Reservation {id}', {id: reservation}) }}\n\t\t\t</div>\n\t\t\t<div v-else>\n\t\t\t\t<ArrowIcon decorative />\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"arrival\">\n\t\t\t<div class=\"iata\">\n\t\t\t\t{{ data.reservationFor.arrivalAirport.iataCode }}\n\t\t\t</div>\n\t\t\t<div class=\"airport\">\n\t\t\t\t{{ data.reservationFor.arrivalAirport.name }}\n\t\t\t</div>\n\t\t\t<div v-if=\"arrivalDate\">\n\t\t\t\t{{ arrivalDate }}\n\t\t\t</div>\n\t\t\t<div v-if=\"arrivalTime\">\n\t\t\t\t{{ arrivalTime }}\n\t\t\t</div>\n\t\t</div>\n\t\t<CalendarImport :calendars=\"calendars\" :handler=\"handleImport\" />\n\t</div>\n</template>\n\n<script>\nimport AirplaneIcon from 'vue-material-design-icons/Airplane'\nimport ArrowIcon from 'vue-material-design-icons/ArrowRight'\nimport ical from 'ical.js'\nimport md5 from 'md5'\nimport moment from '@nextcloud/moment'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\n\nimport CalendarImport from './CalendarImport'\nimport { importCalendarEvent } from '../../service/DAVService'\nimport logger from '../../logger'\n\nexport default {\n\tname: 'FlightReservation',\n\tcomponents: {\n\t\tAirplaneIcon,\n\t\tArrowIcon,\n\t\tCalendarImport,\n\t},\n\tprops: {\n\t\tdata: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tcalendars: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tmessageId: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tcomputed: {\n\t\tdepartureTime() {\n\t\t\tif (!('departureTime' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.departureTime['@value']).format('LT')\n\t\t},\n\t\tdepartureDate() {\n\t\t\tif (!('departureTime' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.departureTime['@value']).format('L')\n\t\t},\n\t\tarrivalTime() {\n\t\t\tif (!('arrivalTime' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.arrivalTime['@value']).format('LT')\n\t\t},\n\t\tarrivalDate() {\n\t\t\tif (!('arrivalTime' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.arrivalTime['@value']).format('L')\n\t\t},\n\t\tflightNumber() {\n\t\t\treturn this.data.reservationFor.airline.iataCode + this.data.reservationFor.flightNumber\n\t\t},\n\t\treservation() {\n\t\t\tif (!('reservationNumber' in this.data)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn this.data.reservationNumber\n\t\t},\n\t\tcanImport() {\n\t\t\treturn 'departureTime' in this.data.reservationFor && 'arrivalTime' in this.data.reservationFor\n\t\t},\n\t},\n\tmethods: {\n\t\thandleImport(calendar) {\n\t\t\tconst event = new ical.Component('VEVENT')\n\t\t\tevent.updatePropertyWithValue(\n\t\t\t\t'SUMMARY',\n\t\t\t\tt('mail', 'Flight {flightNr} from {depAirport} to {arrAirport}', {\n\t\t\t\t\tflightNr: this.flightNumber,\n\t\t\t\t\tdepAirport: this.data.reservationFor.departureAirport.iataCode,\n\t\t\t\t\tarrAirport: this.data.reservationFor.arrivalAirport.iataCode,\n\t\t\t\t})\n\t\t\t)\n\n\t\t\tconst depart = moment(this.data.reservationFor.departureTime['@value']).format()\n\t\t\tevent.updatePropertyWithValue('DTSTART', ical.Time.fromDateTimeString(depart))\n\t\t\tconst arrive = moment(this.data.reservationFor.arrivalTime['@value']).format()\n\t\t\tevent.updatePropertyWithValue('DTEND', ical.Time.fromDateTimeString(arrive))\n\n\t\t\t// TODO: read version from package.json\n\t\t\tevent.updatePropertyWithValue('PRODID', 'Nextcloud Mail')\n\n\t\t\t// TODO: is this free of collisions? the bug reports will tell us!\n\t\t\tevent.updatePropertyWithValue('UID', md5(this.messageId + this.flightNumber))\n\n\t\t\tconst cal = new ical.Component('VCALENDAR')\n\t\t\tcal.addSubcomponent(event)\n\t\t\tlogger.debug('generated calendar event from flight reservation data', { ical: cal.toString() })\n\n\t\t\treturn importCalendarEvent(calendar.url)(cal.toString())\n\t\t\t\t.then(() => {\n\t\t\t\t\tlogger.debug('event successfully imported')\n\t\t\t\t\tshowSuccess(t('mail', 'Event imported into {calendar}', { calendar: calendar.displayname }))\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tlogger.error('Could not import event', { error })\n\t\t\t\t\tshowError(t('mail', 'Could not create event'))\n\t\t\t\t})\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n.reservation {\n\tdisplay: flex;\n\tflex-direction: row;\n\tmargin: 30px 38px;\n\tborder: 1px solid var(--color-border);\n\tborder-radius: var(--border-radius);\n\tpadding: 20px;\n\talign-items: center;\n}\n\n.departure,\n.arrival {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-grow: 1;\n}\n\n.departure,\n.arrival,\n.connection {\n\tjustify-content: center;\n}\n\n.iata {\n\tfont-size: larger;\n\tfont-weight: bold;\n}\n\n.airport {\n\tfont-size: large;\n}\n\n.departure {\n\ttext-align: right;\n}\n\n.connection {\n\ttext-align: center;\n\tpadding: 0 40px;\n}\n</style>\n"],sourceRoot:""}]),n.a=i},1281:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n.reservation[data-v-1eebd676] {\n\tdisplay: flex;\n\tflex-direction: row;\n\tmargin: 30px 38px;\n\tborder: 1px solid var(--color-border);\n\tborder-radius: var(--border-radius);\n\tpadding: 20px;\n\talign-items: center;\n}\n.departure[data-v-1eebd676],\n.arrival[data-v-1eebd676] {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-grow: 1;\n}\n.departure[data-v-1eebd676],\n.arrival[data-v-1eebd676],\n.connection[data-v-1eebd676] {\n\tjustify-content: center;\n}\n.station[data-v-1eebd676] {\n\tfont-size: larger;\n\tfont-weight: bold;\n}\n.departure[data-v-1eebd676] {\n\ttext-align: right;\n}\n.connection[data-v-1eebd676] {\n\ttext-align: center;\n\tpadding: 0 40px;\n}\n","",{version:3,sources:["webpack://./src/components/itinerary/TrainReservation.vue"],names:[],mappings:";AAiKA;CACA,aAAA;CACA,mBAAA;CACA,iBAAA;CACA,qCAAA;CACA,mCAAA;CACA,aAAA;CACA,mBAAA;AACA;AAEA;;CAEA,aAAA;CACA,sBAAA;CACA,YAAA;AACA;AAEA;;;CAGA,uBAAA;AACA;AAEA;CACA,iBAAA;CACA,iBAAA;AACA;AAEA;CACA,iBAAA;AACA;AAEA;CACA,kBAAA;CACA,eAAA;AACA",sourcesContent:["<template>\n\t<div class=\"reservation\">\n\t\t<div class=\"departure\">\n\t\t\t<div class=\"station\">\n\t\t\t\t{{ data.reservationFor.departureStation.name }}\n\t\t\t</div>\n\t\t\t<div v-if=\"departureDate\">\n\t\t\t\t{{ departureDate }}\n\t\t\t</div>\n\t\t\t<div v-if=\"departureTime\">\n\t\t\t\t{{ departureTime }}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"connection\">\n\t\t\t<div><TrainIcon :title=\"t('mail', 'Train')\" /></div>\n\t\t\t<div>{{ trainNumber }}</div>\n\t\t\t<div><ArrowIcon decorative /></div>\n\t\t</div>\n\t\t<div class=\"arrival\">\n\t\t\t<div class=\"station\">\n\t\t\t\t{{ data.reservationFor.arrivalStation.name }}\n\t\t\t</div>\n\t\t\t<div v-if=\"arrivalDate\">\n\t\t\t\t{{ arrivalDate }}\n\t\t\t</div>\n\t\t\t<div v-if=\"arrivalTime\">\n\t\t\t\t{{ arrivalTime }}\n\t\t\t</div>\n\t\t</div>\n\t\t<CalendarImport v-if=\"canImport\" :calendars=\"calendars\" :handler=\"handleImport\" />\n\t</div>\n</template>\n\n<script>\nimport ArrowIcon from 'vue-material-design-icons/ArrowRight'\nimport ical from 'ical.js'\nimport md5 from 'md5'\nimport moment from '@nextcloud/moment'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport TrainIcon from 'vue-material-design-icons/Train'\n\nimport CalendarImport from './CalendarImport'\nimport { importCalendarEvent } from '../../service/DAVService'\nimport logger from '../../logger'\n\nexport default {\n\tname: 'TrainReservation',\n\tcomponents: {\n\t\tArrowIcon,\n\t\tCalendarImport,\n\t\tTrainIcon,\n\t},\n\tprops: {\n\t\tdata: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tcalendars: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tmessageId: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tcomputed: {\n\t\tdepartureTime() {\n\t\t\tif (!('departureTime' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.departureTime).format('LT')\n\t\t},\n\t\tdepartureDate() {\n\t\t\tif ('departureTime' in this.data.reservationFor) {\n\t\t\t\treturn moment(this.data.reservationFor.departureTime).format('L')\n\t\t\t}\n\t\t\tif ('departureDay' in this.data.reservationFor) {\n\t\t\t\treturn moment(this.data.reservationFor.departureDay).format('L')\n\t\t\t}\n\t\t\treturn undefined\n\t\t},\n\t\tarrivalTime() {\n\t\t\tif (!('arrivalTime' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.arrivalTime).format('LT')\n\t\t},\n\t\tarrivalDate() {\n\t\t\tif (!('arrivalTime' in this.data.reservationFor)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\treturn moment(this.data.reservationFor.arrivalTime).format('L')\n\t\t},\n\t\ttrainNumber() {\n\t\t\treturn this.data.reservationFor.trainNumber\n\t\t},\n\t\tcanImport() {\n\t\t\treturn (\n\t\t\t\t('departureTime' in this.data.reservationFor && 'arrivalTime' in this.data.reservationFor)\n\t\t\t\t|| 'departureDay' in this.data.reservationFor\n\t\t\t)\n\t\t},\n\t},\n\tmethods: {\n\t\thandleImport(calendar) {\n\t\t\tconst event = new ical.Component('VEVENT')\n\t\t\tif ('trainNumber' in this.data.reservationFor) {\n\t\t\t\tevent.updatePropertyWithValue(\n\t\t\t\t\t'SUMMARY',\n\t\t\t\t\tt('mail', '{trainNr} from {depStation} to {arrStation}', {\n\t\t\t\t\t\ttrainNr: this.data.reservationFor.trainNumber,\n\t\t\t\t\t\tdepStation: this.data.reservationFor.departureStation.name,\n\t\t\t\t\t\tarrStation: this.data.reservationFor.arrivalStation.name,\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t} else {\n\t\t\t\tevent.updatePropertyWithValue(\n\t\t\t\t\t'SUMMARY',\n\t\t\t\t\tt('mail', 'Train from {depStation} to {arrStation}', {\n\t\t\t\t\t\tdepStation: this.data.reservationFor.departureStation.name,\n\t\t\t\t\t\tarrStation: this.data.reservationFor.arrivalStation.name,\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t}\n\n\t\t\tif ('departureTime' in this.data.reservationFor && 'arrivalTime' in this.data.reservationFor) {\n\t\t\t\tconst depart = moment(this.data.reservationFor.departureTime).format()\n\t\t\t\tevent.updatePropertyWithValue('DTSTART', ical.Time.fromDateTimeString(depart))\n\t\t\t\tconst arrive = moment(this.data.reservationFor.arrivalTime).format()\n\t\t\t\tevent.updatePropertyWithValue('DTEND', ical.Time.fromDateTimeString(arrive))\n\t\t\t} else if ('departureDay' in this.data.reservationFor) {\n\t\t\t\tconst date = moment(this.data.reservationFor.departureDay).format()\n\t\t\t\tevent.updatePropertyWithValue('DTSTART', ical.Time.fromDateTimeString(date))\n\t\t\t}\n\n\t\t\t// TODO: read version from package.json\n\t\t\tevent.updatePropertyWithValue('PRODID', 'Nextcloud Mail')\n\n\t\t\t// TODO: is this free of collisions? the bug reports will tell us!\n\t\t\tevent.updatePropertyWithValue('UID', md5(this.messageId + this.departureTime))\n\n\t\t\tconst cal = new ical.Component('VCALENDAR')\n\t\t\tcal.addSubcomponent(event)\n\t\t\tlogger.debug('generated calendar event from train reservation data', { ical: cal.toString() })\n\n\t\t\treturn importCalendarEvent(calendar.url)(cal.toString())\n\t\t\t\t.then(() => {\n\t\t\t\t\tlogger.debug('event successfully imported')\n\t\t\t\t\tshowSuccess(t('mail', 'Event imported into {calendar}', { calendar: calendar.displayname }))\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tlogger.error('Could not import event', { error })\n\t\t\t\t\tshowError(t('mail', 'Could not create event'))\n\t\t\t\t})\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n.reservation {\n\tdisplay: flex;\n\tflex-direction: row;\n\tmargin: 30px 38px;\n\tborder: 1px solid var(--color-border);\n\tborder-radius: var(--border-radius);\n\tpadding: 20px;\n\talign-items: center;\n}\n\n.departure,\n.arrival {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-grow: 1;\n}\n\n.departure,\n.arrival,\n.connection {\n\tjustify-content: center;\n}\n\n.station {\n\tfont-size: larger;\n\tfont-weight: bold;\n}\n\n.departure {\n\ttext-align: right;\n}\n\n.connection {\n\ttext-align: center;\n\tpadding: 0 40px;\n}\n</style>\n"],sourceRoot:""}]),n.a=i},1284:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,'.attachment[data-v-473b0a1e]{position:relative;display:inline-block;width:calc(100% - 32px);padding:16px}.attachment[data-v-473b0a1e]:hover,.attachment span[data-v-473b0a1e]:hover{background-color:var(--color-background-hover);cursor:pointer}.mail-attached-image[data-v-473b0a1e]{display:block;max-width:100%;border-radius:var(--border-radius);cursor:pointer}.mail-attached-image[data-v-473b0a1e]:hover{opacity:.8}.attachment-save-to-cloud[data-v-473b0a1e],.attachment-download[data-v-473b0a1e],.attachment-import[data-v-473b0a1e]{position:absolute;padding:21px;margin:0;bottom:6px;background-color:transparent;border-color:transparent}.attachment-save-to-cloud[data-v-473b0a1e]{right:0}.attachment-download[data-v-473b0a1e]{right:32px;opacity:.6}.attachment-import[data-v-473b0a1e]{right:64px}.attachment-import-popover[data-v-473b0a1e]{right:32px;top:42px}.attachment-import-popover[data-v-473b0a1e]::after{right:32px}.attachment-name[data-v-473b0a1e]{display:inline-block;width:calc(100% - 72px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.attachment-size[data-v-473b0a1e]{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";opacity:.5}.attachment-icon[data-v-473b0a1e]{vertical-align:middle;text-align:left}',"",{version:3,sources:["webpack://./src/components/MessageAttachment.vue"],names:[],mappings:"AAgMA,6BACC,iBAAA,CACA,oBAAA,CACA,uBAAA,CACA,YAAA,CAGD,2EAEC,8CAAA,CACA,cAAA,CAGD,sCACC,aAAA,CACA,cAAA,CACA,kCAAA,CACA,cAAA,CAED,4CACC,UAAA,CAGD,qHAGC,iBAAA,CACA,YAAA,CACA,QAAA,CACA,UAAA,CACA,4BAAA,CACA,wBAAA,CAGD,2CACC,OAAA,CAGD,sCACC,UAAA,CACA,UAAA,CAGD,oCACC,UAAA,CAGD,4CACC,UAAA,CACA,QAAA,CAGD,mDACC,UAAA,CAGD,kCACC,oBAAA,CACA,uBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CACA,qBAAA,CAID,kCACC,gEAAA,CACA,UAAA,CAGD,kCACC,qBAAA,CACA,eAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.attachment {\n\tposition: relative;\n\tdisplay: inline-block;\n\twidth: calc(100% - 32px);\n\tpadding: 16px;\n}\n\n.attachment:hover,\n.attachment span:hover {\n\tbackground-color: var(--color-background-hover);\n\tcursor: pointer;\n}\n\n.mail-attached-image {\n\tdisplay: block;\n\tmax-width: 100%;\n\tborder-radius: var(--border-radius);\n\tcursor: pointer;\n}\n.mail-attached-image:hover {\n\topacity: 0.8;\n}\n\n.attachment-save-to-cloud,\n.attachment-download,\n.attachment-import {\n\tposition: absolute;\n\tpadding: 21px;\n\tmargin: 0;\n\tbottom: 6px;\n\tbackground-color: transparent;\n\tborder-color: transparent;\n}\n\n.attachment-save-to-cloud {\n\tright: 0;\n}\n\n.attachment-download {\n\tright: 32px;\n\topacity: 0.6;\n}\n\n.attachment-import {\n\tright: 64px;\n}\n\n.attachment-import-popover {\n\tright: 32px;\n\ttop: 42px;\n}\n\n.attachment-import-popover::after {\n\tright: 32px;\n}\n\n.attachment-name {\n\tdisplay: inline-block;\n\twidth: calc(100% - 72px);\n\twhite-space: nowrap;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\tvertical-align: middle;\n}\n\n/* show attachment size less prominent */\n.attachment-size {\n\t-ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=50)';\n\topacity: 0.5;\n}\n\n.attachment-icon {\n\tvertical-align: middle;\n\ttext-align: left;\n}\n"],sourceRoot:""}]),n.a=i},1285:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".attachments{width:300px}.attachments-button-wrapper{text-align:center}.attachments-save-to-cloud{display:inline-block;margin:16px;background-position:16px center;padding:12px;padding-left:44px}.oc-dialog{z-index:10000000}","",{version:3,sources:["webpack://./src/components/MessageAttachments.vue"],names:[],mappings:"AA+HA,aACC,WAAA,CAKD,4BACC,iBAAA,CAED,2BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,YAAA,CACA,iBAAA,CAED,WACC,gBAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.attachments {\n\twidth: 300px;\n}\n\n/* show icon + text for Download all button\n\t\tas well as when there is only one attachment */\n.attachments-button-wrapper {\n\ttext-align: center;\n}\n.attachments-save-to-cloud {\n\tdisplay: inline-block;\n\tmargin: 16px;\n\tbackground-position: 16px center;\n\tpadding: 12px;\n\tpadding-left: 44px;\n}\n.oc-dialog {\n\tz-index: 10000000;\n}\n"],sourceRoot:""}]),n.a=i},1286:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".mail-message-has-mdn-request[data-v-3bf60f28]{white-space:normal}","",{version:3,sources:["webpack://./src/components/MdnRequest.vue"],names:[],mappings:"AA4DA,+CACC,kBAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.mail-message-has-mdn-request {\n\twhite-space: normal;\n}\n"],sourceRoot:""}]),n.a=i},1287:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"\n#mail-content[data-v-812ccd96] {\n\theight: 450px;\n}\n","",{version:3,sources:["webpack://./src/components/MessageEncryptedBody.vue"],names:[],mappings:";AA8CA;CACA,aAAA;AACA",sourcesContent:["<template>\n\t<div>\n\t\t<div v-if=\"mailvelope\" id=\"mail-content\">\n\t\t\t<MdnRequest :message=\"message\" />\n\t\t</div>\n\t\t<span v-else>{{ t('mail', 'This message is encrypted with PGP. Install Mailvelope to decrypt it.') }}</span>\n\t</div>\n</template>\n\n<script>\nimport { getMailvelope } from '../crypto/mailvelope'\nimport MdnRequest from './MdnRequest'\n\nexport default {\n\tname: 'MessageEncryptedBody',\n\tcomponents: { MdnRequest },\n\tprops: {\n\t\tbody: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tfrom: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: undefined,\n\t\t},\n\t\tmessage: {\n\t\t\trequired: true,\n\t\t\ttype: Object,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tmailvelope: false,\n\t\t}\n\t},\n\tasync mounted() {\n\t\tthis.mailvelope = await getMailvelope()\n\t\tthis.mailvelope.createDisplayContainer('#mail-content', this.body, undefined, {\n\t\t\tsenderAddress: this.from,\n\t\t})\n\t},\n}\n<\/script>\n\n<style scoped>\n#mail-content {\n\theight: 450px;\n}\n</style>\n"],sourceRoot:""}]),n.a=i},1291:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"#mail-content[data-v-306a9986]{margin-left:48px;margin-top:2px;display:flex;flex-direction:column;height:100%;background-color:#fff}#mail-message-has-blocked-content[data-v-306a9986]{margin-left:8px}#message-container[data-v-306a9986]{flex:1;display:flex}#message-container.scroll[data-v-306a9986]{max-height:50vh;overflow-y:auto}.message-frame[data-v-306a9986]{width:100%}","",{version:3,sources:["webpack://./src/components/MessageHTMLBody.vue"],names:[],mappings:"AAoIA,+BACC,gBAAA,CACA,cAAA,CACA,YAAA,CACA,qBAAA,CACA,WAAA,CACA,qBAAA,CAED,mDACC,eAAA,CAGD,oCACC,MAAA,CACA,YAAA,CAGA,2CACC,eAAA,CACA,eAAA,CAIF,gCACC,UAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// account for 8px margin on iframe body\n#mail-content {\n\tmargin-left: 48px;\n\tmargin-top: 2px;\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\tbackground-color: #FFFFFF;\n}\n#mail-message-has-blocked-content {\n\tmargin-left: 8px;\n}\n\n#message-container {\n\tflex: 1;\n\tdisplay: flex;\n\n\t// TODO: collapse quoted text and remove inner scrollbar\n\t&.scroll {\n\t\tmax-height: 50vh;\n\t\toverflow-y: auto;\n\t}\n}\n\n.message-frame {\n\twidth: 100%;\n}\n"],sourceRoot:""}]),n.a=i},1292:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".quoted-text{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./src/components/MessagePlainTextBody.vue"],names:[],mappings:"AAqEA,aACC,mCAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.quoted-text {\n\tcolor: var(--color-text-maxcontrast)\n}\n"],sourceRoot:""}]),n.a=i},1293:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"#mail-content[data-v-6bd2c088],.mail-signature[data-v-6bd2c088]{white-space:pre-wrap}.mail-signature[data-v-6bd2c088],.quoted[data-v-6bd2c088]{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./src/components/MessagePlainTextBody.vue"],names:[],mappings:"AA0EA,gEACC,oBAAA,CAED,0DACC,mCAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n#mail-content, .mail-signature {\n\twhite-space: pre-wrap;\n}\n.mail-signature, .quoted {\n\tcolor: var(--color-text-maxcontrast)\n}\n"],sourceRoot:""}]),n.a=i},1294:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".v-popover>.trigger>.action-item[data-v-396add68]{border-radius:22px;background-color:var(--color-background-darker)}","",{version:3,sources:["webpack://./src/components/Message.vue"],names:[],mappings:"AA8GA,kDACC,kBAAA,CACA,+CAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.v-popover > .trigger > .action-item {\n\tborder-radius: 22px;\n\tbackground-color: var(--color-background-darker);\n}\n"],sourceRoot:""}]),n.a=i},1295:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".sender[data-v-e711eb92]{margin-left:8px}.right[data-v-e711eb92]{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;margin-left:10px;margin-right:22px;height:44px}.right .app-content-list-item-menu[data-v-e711eb92]{margin-left:4px}.right .timestamp[data-v-e711eb92]{margin-right:10px;font-size:small;white-space:nowrap;margin-bottom:0}.button[data-v-e711eb92]{color:var(--color-main-background)}.button[data-v-e711eb92]:not(.active):not(.primary){display:none}.button:not(.active):not(.primary).primary[data-v-e711eb92]{background-color:var(--color-primary);opacity:1;margin-bottom:0}.avatardiv[data-v-e711eb92]{display:inline-block;margin-bottom:-23px}.subject[data-v-e711eb92]{margin-left:8px;cursor:default}.envelope[data-v-e711eb92]{display:flex;flex-direction:column}.envelope--header[data-v-e711eb92]{display:flex;padding:10px;margin-bottom:3px;border-radius:var(--border-radius)}.envelope--header[data-v-e711eb92]:hover{background-color:var(--color-background-hover)}.left[data-v-e711eb92]{flex-grow:1}.icon-important[data-v-e711eb92] path{fill:#fc0;stroke:var(--color-main-background);cursor:pointer}.icon-important.app-content-list-item-star[data-v-e711eb92]{background-image:none;position:absolute;opacity:1;width:16px;height:16px;margin-left:-1px;display:flex}.icon-important.app-content-list-item-star[data-v-e711eb92]:hover,.icon-important.app-content-list-item-star[data-v-e711eb92]:focus{opacity:.5}.app-content-list-item-star.icon-starred[data-v-e711eb92]{display:inline-block;position:absolute;margin-top:-2px;margin-left:27px;cursor:pointer}.left[data-v-e711eb92]:not(.seen){font-weight:bold}","",{version:3,sources:["webpack://./src/components/ThreadEnvelope.vue"],names:[],mappings:"AAgQA,yBACC,eAAA,CAGD,wBACC,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,wBAAA,CACA,gBAAA,CACA,iBAAA,CACA,WAAA,CAEA,oDACC,eAAA,CAGD,mCACC,iBAAA,CACA,eAAA,CACA,kBAAA,CACA,eAAA,CAGF,yBACC,kCAAA,CACA,oDACC,YAAA,CAEA,4DACC,qCAAA,CACA,SAAA,CACA,eAAA,CAKH,4BACC,oBAAA,CACA,mBAAA,CAED,0BACC,eAAA,CACA,cAAA,CAGD,2BACC,YAAA,CACA,qBAAA,CAGD,mCACC,YAAA,CACA,YAAA,CACA,iBAAA,CACA,kCAAA,CAEA,yCACC,8CAAA,CAGF,uBACC,WAAA,CAGA,uCACC,SAAA,CACA,mCAAA,CACA,cAAA,CAGD,4DACC,qBAAA,CACA,iBAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,gBAAA,CACA,YAAA,CAEA,oIAEC,UAAA,CAIH,0DACC,oBAAA,CACA,iBAAA,CACA,eAAA,CACA,gBAAA,CACA,cAAA,CAED,kCACC,gBAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.sender {\n\tmargin-left: 8px;\n}\n\n.right {\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n\tjustify-content: flex-end;\n\tmargin-left: 10px;\n\tmargin-right: 22px;\n\theight: 44px;\n\n\t.app-content-list-item-menu {\n\t\tmargin-left: 4px;\n\t}\n\n\t.timestamp {\n\t\tmargin-right: 10px;\n\t\tfont-size: small;\n\t\twhite-space: nowrap;\n\t\tmargin-bottom: 0;\n\t}\n}\n.button {\n\tcolor: var(--color-main-background);\n\t&:not(.active):not(.primary) {\n\t\tdisplay: none;\n\n\t\t&.primary {\n\t\t\tbackground-color: var(--color-primary);\n\t\t\topacity: 1;\n\t\t\tmargin-bottom: 0;\n\n\t\t}\n\t}\n}\n.avatardiv {\n\tdisplay: inline-block;\n\tmargin-bottom: -23px;\n}\n.subject {\n\tmargin-left: 8px;\n\tcursor: default;\n}\n\n.envelope {\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.envelope--header {\n\tdisplay: flex;\n\tpadding: 10px;\n\tmargin-bottom: 3px;\n\tborder-radius: var(--border-radius);\n\n\t&:hover {\n\t\tbackground-color: var(--color-background-hover);\n\t}\n}\n.left {\n\tflex-grow: 1;\n}\n.icon-important {\n\t::v-deep path {\n\t\tfill: #ffcc00;\n\t\tstroke: var(--color-main-background);\n\t\tcursor: pointer;\n\t}\n\n\t&.app-content-list-item-star {\n\t\tbackground-image: none;\n\t\tposition: absolute;\n\t\topacity: 1;\n\t\twidth: 16px;\n\t\theight: 16px;\n\t\tmargin-left: -1px;\n\t\tdisplay: flex;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\topacity: 0.5;\n\t\t}\n\t}\n}\n.app-content-list-item-star.icon-starred {\n\tdisplay: inline-block;\n\tposition: absolute;\n\tmargin-top: -2px;\n\tmargin-left: 27px;\n\tcursor: pointer;\n}\n.left:not(.seen) {\n\tfont-weight: bold;\n}\n\n"],sourceRoot:""}]),n.a=i},1296:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"#mail-message{flex-grow:1}.mail-message-body{flex:1;margin-bottom:60px;position:relative}#mail-thread-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:30px 0;box-sizing:content-box !important;height:44px;width:100%;z-index:100;position:fixed;position:-webkit-sticky;position:sticky;top:var(--header-height);background:-webkit-linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255, 255, 255, 0));background:-o-linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255, 255, 255, 0));background:-moz-linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255, 255, 255, 0));background:linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255, 255, 255, 0))}#mail-thread-header-fields{width:0;padding-left:60px;flex:1 1 auto}#mail-thread-header-fields h2,#mail-thread-header-fields p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-bottom:7px;margin-bottom:0}#mail-thread-header-fields .transparency{opacity:.6}#mail-thread-header-fields .transparency a{font-weight:bold}.attachment-popover{position:sticky;bottom:12px;text-align:center}.tooltip-inner{text-align:left}#mail-content,.mail-signature{margin:10px 38px 50px 60px}.mail-message-body-html #mail-content,.mail-message-body-html .mail-signature{margin-bottom:-44px}#mail-content iframe{width:100%}#show-images-text{display:none}#mail-content a,.mail-signature a{color:#07d;border-bottom:1px dotted #07d;text-decoration:none;word-wrap:break-word}.icon-reply-white,.icon-reply-all-white{height:44px;min-width:44px;margin:0;padding:9px 18px 10px 32px}@media only screen and (max-width: 600px){.action-label{display:none}}@media only screen and (min-width: 600px){.icon-reply-white,.icon-reply-all-white{background-position:12px center}}@media print{#mail-thread-header-fields{position:relative}#header,.app-navigation,#reply-composer,#forward-button,#mail-message-has-blocked-content,.app-content-list,.message-composer,.mail-message-attachments{display:none !important}.app-content{margin-left:0 !important}.mail-message-body{margin-bottom:0 !important}}.message-source{font-family:monospace;white-space:pre-wrap;user-select:text}.avatar-header{max-height:24px;overflow:hidden}.avatar-more{display:inline;background-color:var(--color-background-dark);padding:0px 0px 1px 1px;border-radius:10px;cursor:pointer}.avatar-hidden{visibility:hidden}.popover__wrapper{max-width:500px}.app-content-list-item-star.icon-starred{display:none}.user-bubble__wrapper{margin-right:4px}.user-bubble__title{cursor:pointer}","",{version:3,sources:["webpack://./src/components/Thread.vue"],names:[],mappings:"AA4OA,cACC,WAAA,CAGD,mBACC,MAAA,CACA,kBAAA,CACA,iBAAA,CAGD,oBACC,YAAA,CACA,kBAAA,CACA,6BAAA,CACA,kBAAA,CACA,cAAA,CAIA,iCAAA,CACA,WAAA,CACA,UAAA,CAEA,WAAA,CACA,cAAA,CACA,uBAAA,CACA,eAAA,CACA,wBAAA,CACA,0HAAA,CACA,qHAAA,CACA,uHAAA,CACA,kHAAA,CAGD,2BAEC,OAAA,CACA,iBAAA,CAEA,aAAA,CACA,2DAEC,kBAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,eAAA,CAGD,yCACC,UAAA,CACA,2CACC,gBAAA,CAKH,oBACC,eAAA,CACA,WAAA,CACA,iBAAA,CAGD,eACC,eAAA,CAGD,8BACC,0BAAA,CAEA,8EACC,mBAAA,CAIF,qBACC,UAAA,CAGD,kBACC,YAAA,CAGD,kCAEC,UAAA,CACA,6BAAA,CACA,oBAAA,CACA,oBAAA,CAGD,wCAEC,WAAA,CACA,cAAA,CACA,QAAA,CACA,0BAAA,CAKD,0CACC,cACC,YAAA,CAAA,CAGF,0CACC,wCAEC,+BAAA,CAAA,CAIF,aACC,2BACC,iBAAA,CAGD,wJAQC,uBAAA,CAED,aACC,wBAAA,CAED,mBACC,0BAAA,CAAA,CAIF,gBACC,qBAAA,CACA,oBAAA,CACA,gBAAA,CAGD,eACC,eAAA,CACA,eAAA,CAED,aACC,cAAA,CACA,6CAAA,CACA,uBAAA,CACA,kBAAA,CACA,cAAA,CAED,eACC,iBAAA,CAED,kBACC,eAAA,CAGD,yCACC,YAAA,CAED,sBACC,gBAAA,CAED,oBACC,cAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n#mail-message {\n\tflex-grow: 1;\n}\n\n.mail-message-body {\n\tflex: 1;\n\tmargin-bottom: 60px;\n\tposition: relative;\n}\n\n#mail-thread-header {\n\tdisplay: flex;\n\tflex-direction: row;\n\tjustify-content: space-between;\n\talign-items: center;\n\tpadding: 30px 0;\n\t// somehow ios doesn't care about this !important rule\n\t// so we have to manually set left/right padding to chidren\n\t// for 100% to be used\n\tbox-sizing: content-box !important;\n\theight: 44px;\n\twidth: 100%;\n\n\tz-index: 100;\n\tposition: fixed; // ie fallback\n\tposition: -webkit-sticky; // ios/safari fallback\n\tposition: sticky;\n\ttop: var(--header-height);\n\tbackground: -webkit-linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255,255,255,0));\n\tbackground: -o-linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255,255,255,0));\n\tbackground: -moz-linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255,255,255,0));\n\tbackground: linear-gradient(var(--color-main-background), var(--color-main-background) 80%, rgba(255,255,255,0));\n}\n\n#mail-thread-header-fields {\n\t// initial width\n\twidth: 0;\n\tpadding-left: 60px;\n\t// grow and try to fill 100%\n\tflex: 1 1 auto;\n\th2,\n\tp {\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\tpadding-bottom: 7px;\n\t\tmargin-bottom: 0;\n\t}\n\n\t.transparency {\n\t\topacity: 0.6;\n\t\ta {\n\t\t\tfont-weight: bold;\n\t\t}\n\t}\n}\n\n.attachment-popover {\n\tposition: sticky;\n\tbottom: 12px;\n\ttext-align: center;\n}\n\n.tooltip-inner {\n\ttext-align: left;\n}\n\n#mail-content, .mail-signature {\n\tmargin: 10px 38px 50px 60px;\n\n\t.mail-message-body-html & {\n\t\tmargin-bottom: -44px; // accounting for the sticky attachment button\n\t}\n}\n\n#mail-content iframe {\n\twidth: 100%;\n}\n\n#show-images-text {\n\tdisplay: none;\n}\n\n#mail-content a,\n.mail-signature a {\n\tcolor: #07d;\n\tborder-bottom: 1px dotted #07d;\n\ttext-decoration: none;\n\tword-wrap: break-word;\n}\n\n.icon-reply-white,\n.icon-reply-all-white {\n\theight: 44px;\n\tmin-width: 44px;\n\tmargin: 0;\n\tpadding: 9px 18px 10px 32px;\n}\n\n/* Show action button label and move icon to the left\n on screens larger than 600px */\n@media only screen and (max-width: 600px) {\n\t.action-label {\n\t\tdisplay: none;\n\t}\n}\n@media only screen and (min-width: 600px) {\n\t.icon-reply-white,\n\t.icon-reply-all-white {\n\t\tbackground-position: 12px center;\n\t}\n}\n\n@media print {\n\t#mail-thread-header-fields {\n\t\tposition: relative;\n\t}\n\n\t#header,\n\t.app-navigation,\n\t#reply-composer,\n\t#forward-button,\n\t#mail-message-has-blocked-content,\n\t.app-content-list,\n\t.message-composer,\n\t.mail-message-attachments {\n\t\tdisplay: none !important;\n\t}\n\t.app-content {\n\t\tmargin-left: 0 !important;\n\t}\n\t.mail-message-body {\n\t\tmargin-bottom: 0 !important;\n\t}\n}\n\n.message-source {\n\tfont-family: monospace;\n\twhite-space: pre-wrap;\n\tuser-select: text;\n}\n\n.avatar-header {\n\tmax-height: 24px;\n\toverflow: hidden;\n}\n.avatar-more {\n\tdisplay: inline;\n\tbackground-color: var(--color-background-dark);\n\tpadding: 0px 0px 1px 1px;\n\tborder-radius: 10px;\n\tcursor: pointer;\n}\n.avatar-hidden {\n\tvisibility: hidden;\n}\n.popover__wrapper {\n\tmax-width: 500px;\n}\n\n.app-content-list-item-star.icon-starred {\n\tdisplay: none;\n}\n.user-bubble__wrapper {\n\tmargin-right: 4px;\n}\n.user-bubble__title {\n\tcursor: pointer;\n}\n"],sourceRoot:""}]),n.a=i},1297:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,".v-popover>.trigger[data-v-04cb845c]>{z-index:1}.icon-info[data-v-04cb845c]{background-image:var(--icon-info-000)}.important-info[data-v-04cb845c]{max-width:230px;padding:16px}.app-content-list-item[data-v-04cb845c]:hover{background:transparent}.button[data-v-04cb845c]{background-color:var(--color-main-background);width:44px;height:44px;border:0;margin-bottom:17px}.button[data-v-04cb845c]:hover,.button[data-v-04cb845c]:focus{background-color:var(--color-background-dark)}#app-content-wrapper[data-v-04cb845c]{display:flex}","",{version:3,sources:["webpack://./src/components/MailboxThread.vue"],names:[],mappings:"AAmLA,sCACC,SAAA,CAGD,4BACC,qCAAA,CAGD,iCACC,eAAA,CACA,YAAA,CAGD,8CACC,sBAAA,CAGD,yBACC,6CAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,kBAAA,CAEA,8DAEC,6CAAA,CAIF,sCACC,YAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.v-popover > .trigger > {\n\tz-index: 1;\n}\n\n.icon-info {\n\tbackground-image: var(--icon-info-000);\n}\n\n.important-info {\n\tmax-width: 230px;\n\tpadding: 16px;\n}\n\n.app-content-list-item:hover {\n\tbackground: transparent;\n}\n\n.button {\n\tbackground-color: var(--color-main-background);\n\twidth: 44px;\n\theight: 44px;\n\tborder: 0;\n\tmargin-bottom: 17px;\n\n\t&:hover,\n\t&:focus {\n\t\tbackground-color: var(--color-background-dark);\n\t}\n}\n\n#app-content-wrapper {\n\tdisplay: flex;\n}\n"],sourceRoot:""}]),n.a=i},1343:function(t,n,e){"use strict";var a=e(41),r=e.n(a),o=e(42),i=e.n(o)()(r.a);i.push([t.i,"[data-v-7d3f4b94] .app-content #app-content-wrapper .app-content-details{margin:0 auto;max-width:900px;display:flex;flex-direction:column;flex:1 1 100%;min-width:0}","",{version:3,sources:["webpack://./src/views/Home.vue"],names:[],mappings:"AAsHA,yEACC,aAAA,CACA,eAAA,CACA,YAAA,CACA,qBAAA,CACA,aAAA,CACA,WAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n::v-deep .app-content #app-content-wrapper .app-content-details {\n\tmargin: 0 auto;\n\tmax-width: 900px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex: 1 1 100%;\n\tmin-width: 0;\n}\n"],sourceRoot:""}]),n.a=i},1364:function(n,e,a){"use strict";a.r(e);var r=a(772),o=a.n(r),i=a(701),s=a.n(i),l={name:"AppDetailsToggle",mixins:[s.a]},c=a(40),d=a.n(c),u=a(1066),p={insert:"head",singleton:!1},m=(d()(u.a,p),u.a.locals,a(29)),h=Object(m.a)(l,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.isMobile?e("div",{staticClass:"toggle icon-confirm",attrs:{tabindex:"0"},on:{click:function(n){return t.$emit("close")}}}):t._e()}),[],!1,null,"46075dda",null).exports,A=a(12),v=a(1067),f=a.n(v),g=a(1068),b=a.n(g),C=a(723),y=a.n(C),x=a(1069),w=a.n(x),k={name:"SectionTitle",props:{name:{type:String,required:!0}}},I=a(1070),_={insert:"head",singleton:!1},T=(d()(I.a,_),I.a.locals,Object(m.a)(k,(function(){var t=this.$createElement,n=this._self._c||t;return n("div",{attrs:{id:"priority"}},[n("div",{staticClass:"app-content-list-item"},[n("h2",[this._v(this._s(this.name))])])])}),[],!1,null,"95f06344",null).exports),j=a(6),D={name:"EmptyMailbox"},E=Object(m.a)(D,(function(){var t=this.$createElement,n=this._self._c||t;return n("div",{attrs:{id:"emptycontent"}},[n("div",{staticClass:"icon-mail"}),this._v(" "),n("h2",[this._v(this._s(this.t("mail","No messages in this mailbox")))])])}),[],!1,null,null,null).exports,S=a(672),M=a.n(S),B=a(657),O=a.n(B),R=a(640),F=a(1),$=a.n(F),P=a(773),N=a.n(P),q=a(1071),L=a.n(q),z=a(472),U=a(686),G=a.n(U),W=a(1076),V=a.n(W),Y=a(687),H=function(t,n,e){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],r="<p></p><p></p>",o="<br>> "+t.value.replace(/\n/g,"<br>> "),i="<blockquote>".concat(t.value,"</blockquote>");switch(t.format){case"plain":if(n){var s=G.a.unix(e).format("LLL");return a?Object(Y.b)("".concat(r,'"').concat(n.label,'" ').concat(n.email," – ").concat(s)+o):Object(Y.b)('"'.concat(n.label,'" ').concat(n.email," – ").concat(s)+o+r)}return a?Object(Y.b)("".concat(r).concat(o)):Object(Y.b)("".concat(o).concat(r));case"html":if(n){var l=G.a.unix(e).format("LLL");return a?Object(Y.b)("".concat(r,'"').concat(n.label,'" ').concat(n.email," – ").concat(l,"<br>").concat(i)):Object(Y.b)('"'.concat(n.label,'" ').concat(n.email," – ").concat(l,"<br>").concat(i).concat(r))}return a?Object(Y.b)("".concat(r).concat(i)):Object(Y.b)("".concat(i).concat(r))}throw new Error("can't build a reply for the format ".concat(t.format))},Q=Object.seal({None:0,To:1,Cc:2}),K=function(t,n){var e=Q.None,a=function(t){return t.email===n.email},r=V()(a),o=t.to.find(a);void 0!==o?e=Q.To:void 0!==(o=t.cc.find(a))?e=Q.Cc:o=n;var i=[],s=[];return e===Q.To?(i=(i=t.to.filter(r)).concat(t.from.filter(r)),s=t.cc):e===Q.Cc?(i=t.to.concat(t.from.filter(r)),s=t.cc.filter(r)):(i=(i=t.to).concat(t.from.filter(r)),s=t.cc),0===i.length&&(i=t.from),{to:i,from:o?[o]:[],cc:s}},J=["antw","atb","aw","bls","odp","r","re","ref","res","rif","sv","vá","vs","ynt","απ","σχετ","השב","回复","回覆"],X=function(t){return J.some((function(n){return t.toLowerCase().startsWith("".concat(n,":"))}))?t:"Re: ".concat(t)},Z=["doorst","enc","fs","fw","fwd","i","i̇lt","pd","rv","továbbítás","tr","trs","vb","vl","vs","wg","yml","ΠΡΘ","הועבר","إعادة توجيه","رد","轉寄","转发"],tt=a(0),nt=a(313),et=a(729),at=a.n(et);function rt(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}var ot={name:"MoveModal",components:{MailboxPicker:a(1051).a},props:{account:{type:Object,required:!0},envelopes:{type:Array,required:!0}},data:function(){return{moving:!1,destMailboxId:void 0}},methods:{onClose:function(){this.$emit("close")},onMove:function(){var t,n=this;return(t=regeneratorRuntime.mark((function t(){var e;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n.moving=!0,t.prev=1,0!==(e=n.envelopes.filter((function(t){return t.mailboxId!==n.destMailboxId})).map((function(t){return t.databaseId}))).length){t.next=5;break}return t.abrupt("return");case 5:return t.next=7,Promise.all(e.map((function(t){return n.$store.dispatch("moveMessage",{id:t,destMailboxId:n.destMailboxId})})));case 7:return t.next=9,n.$store.dispatch("syncEnvelopes",{mailboxId:n.destMailboxId});case 9:n.$emit("move"),t.next=15;break;case 12:t.prev=12,t.t0=t.catch(1),A.a.error("could not move messages",{error:t.t0});case 15:return t.prev=15,n.moving=!1,n.$emit("close"),t.finish(15);case 19:case"end":return t.stop()}}),t,null,[[1,12,15,19]])})),function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){rt(o,a,r,i,s,"next",t)}function s(t){rt(o,a,r,i,s,"throw",t)}i(void 0)}))})()}}},it=Object(m.a)(ot,(function(){var t=this,n=t.$createElement;return(t._self._c||n)("MailboxPicker",{attrs:{account:t.account,selected:t.destMailboxId,loading:t.moving,"label-select":t.t("mail","Move"),"label-select-loading":t.t("mail","Moving")},on:{"update:selected":function(n){t.destMailboxId=n},select:t.onMove,close:t.onClose}})}),[],!1,null,null,null).exports,st=a(220);function lt(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function ct(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function dt(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){ct(o,a,r,i,s,"next",t)}function s(t){ct(o,a,r,i,s,"throw",t)}i(void 0)}))}}var ut={name:"MenuEnvelope",components:{Actions:M.a,ActionButton:O.a,ActionLink:N.a,ActionRouter:L.a,Modal:at.a,MoveModal:it},props:{envelope:{type:Object,required:!0},mailbox:{type:Object,required:!1,default:void 0},isSelected:{type:Boolean,default:!1},withReply:{type:Boolean,default:!0},withSelect:{type:Boolean,default:!0},withShowSource:{type:Boolean,default:!0}},data:function(){var t,n;return{debug:(null===(t=window)||void 0===t||null===(n=t.OC)||void 0===n?void 0:n.debug)||!1,rawMessage:"",sourceLoading:!1,showSourceModal:!1,showMoveModal:!1}},computed:{account:function(){var t,n=null!==(t=this.envelope.accountId)&&void 0!==t?t:this.mailbox.accountId;return this.$store.getters.getAccount(n)},hasMultipleRecipients:function(){this.account||console.error("account is undefined",{accountId:this.envelope.accountId});var t=K(this.envelope,{label:this.account.name,email:this.account.emailAddress});return t.to.concat(t.cc).length>1},replyOneLink:function(){return{name:"message",params:{mailboxId:this.$route.params.mailboxId,threadId:"reply",filter:this.$route.params.filter?this.$route.params.filter:void 0},query:{messageId:this.envelope.databaseId}}},replyAllLink:function(){return{name:"message",params:{mailboxId:this.$route.params.mailboxId,threadId:"replyAll",filter:this.$route.params.filter?this.$route.params.filter:void 0},query:{messageId:this.envelope.databaseId}}},forwardLink:function(){return{name:"message",params:{mailboxId:this.$route.params.mailboxId,threadId:"new",filter:this.$route.params.filter?this.$route.params.filter:void 0},query:{messageId:this.envelope.databaseId}}},threadingFile:function(){return"data:text/plain;base64,".concat(z.a.encode(JSON.stringify({subject:this.envelope.subject,messageId:this.envelope.messageId,inReplyTo:this.envelope.inReplyTo,references:this.envelope.references,threadRootId:this.envelope.threadRootId},null,2)))},threadingFileName:function(){return"".concat(this.envelope.databaseId,".json")},iconFavorite:function(){return this.envelope.flags.flagged?"icon-favorite":"icon-starred"}},methods:{onToggleFlagged:function(){this.$store.dispatch("toggleEnvelopeFlagged",this.envelope)},onToggleImportant:function(){this.$store.dispatch("toggleEnvelopeImportant",this.envelope)},onToggleSeen:function(){this.$store.dispatch("toggleEnvelopeSeen",{envelope:this.envelope})},onToggleJunk:function(){this.$store.dispatch("toggleEnvelopeJunk",this.envelope)},toggleSelected:function(){this.$emit("update:selected")},onDelete:function(){var n=this;return dt(regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.withSelect&&n.$emit("unselect"),n.$emit("delete",n.envelope.databaseId),e.prev=2,e.next=5,n.$store.dispatch("deleteMessage",{id:n.envelope.databaseId});case 5:e.next=14;break;case 7:return e.prev=7,e.t0=e.catch(2),e.t1=R.b,e.next=12,Object(nt.a)(e.t0,(lt(a={},st.a.getName(),(function(){return t("mail","No trash mailbox configured")})),lt(a,"default",(function(n){return A.a.error("could not delete message",n),t("mail","Could not delete message")})),a));case 12:e.t2=e.sent,(0,e.t1)(e.t2);case 14:case"end":return e.stop()}}),e,null,[[2,7]])})))()},onShowSourceModal:function(){var t=this;return dt(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.sourceLoading=!0,n.prev=1,n.next=4,$.a.get(Object(tt.generateUrl)("/apps/mail/api/messages/{id}/source",{id:t.envelope.databaseId}));case 4:e=n.sent,t.rawMessage=e.data.source,t.showSourceModal=!0;case 7:return n.prev=7,t.sourceLoading=!1,n.finish(7);case 10:case"end":return n.stop()}}),n,null,[[1,,7,10]])})))()},onCloseSourceModal:function(){this.showSourceModal=!1},onMove:function(){this.$emit("move")},onOpenMoveModal:function(){this.showMoveModal=!0},onCloseMoveModal:function(){this.showMoveModal=!1}}},pt=a(1130),mt={insert:"head",singleton:!1},ht=(d()(pt.a,mt),pt.a.locals,Object(m.a)(ut,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",[e("Actions",{attrs:{"menu-align":"right",event:""},nativeOn:{click:function(t){t.preventDefault()}}},[t.withReply?e("ActionRouter",{attrs:{icon:t.hasMultipleRecipients?"icon-reply-all":"icon-reply","close-after-click":!0,to:t.hasMultipleRecipients?t.replyAllLink:t.replyOneLink}},[t._v("\n\t\t\t"+t._s(t.t("mail","Reply"))+"\n\t\t")]):t._e(),t._v(" "),t.hasMultipleRecipients?e("ActionRouter",{attrs:{icon:"icon-reply","close-after-click":!0,to:t.replyOneLink}},[t._v("\n\t\t\t"+t._s(t.t("mail","Reply to sender only"))+"\n\t\t")]):t._e(),t._v(" "),e("ActionRouter",{attrs:{icon:"icon-forward","close-after-click":!0,to:t.forwardLink}},[t._v("\n\t\t\t"+t._s(t.t("mail","Forward"))+"\n\t\t")]),t._v(" "),e("ActionRouter",{attrs:{icon:"icon-add",to:{name:"message",params:{mailboxId:t.$route.params.mailboxId,threadId:"asNew",filter:t.$route.params.filter},query:{messageId:t.envelope.databaseId}}}},[t._v("\n\t\t\t"+t._s(t.t("mail","Edit as new message"))+"\n\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-important","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onToggleImportant(n)}}},[t._v("\n\t\t\t"+t._s(t.envelope.flags.important?t.t("mail","Mark unimportant"):t.t("mail","Mark important"))+"\n\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:t.iconFavorite,"close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onToggleFlagged(n)}}},[t._v("\n\t\t\t"+t._s(t.envelope.flags.flagged?t.t("mail","Mark unfavorite"):t.t("mail","Mark favorite"))+"\n\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-mail","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onToggleSeen(n)}}},[t._v("\n\t\t\t"+t._s(t.envelope.flags.seen?t.t("mail","Mark unread"):t.t("mail","Mark read"))+"\n\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-junk","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onToggleJunk(n)}}},[t._v("\n\t\t\t"+t._s(t.envelope.flags.junk?t.t("mail","Mark not spam"):t.t("mail","Mark as spam"))+"\n\t\t")]),t._v(" "),t.withSelect?e("ActionButton",{attrs:{icon:"icon-checkmark","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.toggleSelected(n)}}},[t._v("\n\t\t\t"+t._s(t.isSelected?t.t("mail","Unselect"):t.t("mail","Select"))+"\n\t\t")]):t._e(),t._v(" "),e("ActionButton",{attrs:{icon:"icon-external","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onOpenMoveModal(n)}}},[t._v("\n\t\t\t"+t._s(t.t("mail","Move"))+"\n\t\t")]),t._v(" "),t.withShowSource?e("ActionButton",{attrs:{icon:t.sourceLoading?"icon-loading-small":"icon-details",disabled:t.sourceLoading,"close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onShowSourceModal(n)}}},[t._v("\n\t\t\t"+t._s(t.t("mail","View source"))+"\n\t\t")]):t._e(),t._v(" "),t.debug?e("ActionLink",{attrs:{icon:"icon-download",download:t.threadingFileName,href:t.threadingFile,"close-after-click":!0}},[t._v("\n\t\t\t"+t._s(t.t("mail","Download thread data for debugging"))+"\n\t\t")]):t._e(),t._v(" "),e("ActionButton",{attrs:{icon:"icon-delete","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onDelete(n)}}},[t._v("\n\t\t\t"+t._s(t.t("mail","Delete"))+"\n\t\t")])],1),t._v(" "),t.showSourceModal?e("Modal",{staticClass:"source-modal",on:{close:t.onCloseSourceModal}},[e("div",{staticClass:"source-modal-content"},[e("div",{staticClass:"section"},[e("h2",[t._v(t._s(t.t("mail","Message source")))]),t._v(" "),e("pre",{staticClass:"message-source"},[t._v(t._s(t.rawMessage))])])])]):t._e(),t._v(" "),t.showMoveModal?e("MoveModal",{attrs:{account:t.account,envelopes:[t.envelope]},on:{move:t.onMove,close:t.onCloseMoveModal}}):t._e()],1)}),[],!1,null,"6279924e",null).exports),At={name:"Moment",props:{timestamp:{type:Number,required:!0},format:{type:String,default:"LLL"}},computed:{title:function(){return G.a.unix(this.timestamp).format(this.format)},formatted:function(){return G.a.unix(this.timestamp).fromNow()}}},vt=Object(m.a)(At,(function(){var t=this.$createElement;return(this._self._c||t)("span",{staticClass:"live-relative-timestamp",attrs:{"data-timestamp":1e3*this.timestamp,title:this.title}},[this._v(this._s(this.formatted))])}),[],!1,null,null,null).exports,ft=a(918),gt=a.n(ft),bt=a(538),Ct=a(919),yt=a(705),xt=a(1134),wt=a.n(xt);function kt(t,n){for(var e=0;e<n.length;e++){var a=n[e];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}var It=function(){function t(n,e,a){!function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,t),this.el=n,this.options=a,this.registerListeners.bind(this)(n),this.setInitialAttributes()}var n,e,a;return n=t,(e=[{key:"setInitialAttributes",value:function(){this.el.setAttribute("draggable","true"),this.el.classList.add("draggable-envelope")}},{key:"update",value:function(t,n){this.options=n.options}},{key:"registerListeners",value:function(t){t.addEventListener("dragstart",this.onDragStart.bind(this)),t.addEventListener("dragend",this.onDragEnd.bind(this))}},{key:"removeListeners",value:function(t){t.removeEventListener("dragstart",this.onDragStart),t.removeEventListener("dragend",this.onDragEnd)}},{key:"onDragStart",value:function(t){var n=this.options,e=n.accountId,a=n.mailboxId,r=n.selectedEnvelopes;t.dataTransfer.clearData(),t.dataTransfer.effectAllowed="move";var o=[];if(r.length)r.forEach((function(t,n){o.push({accountId:e,mailboxId:a,envelopeId:t.databaseId,draggableLabel:"".concat(t.subject," (").concat(t.from[0].label,")")})}));else{var i=this.options,s=i.envelopeId,l=i.draggableLabel;o.push({accountId:e,mailboxId:a,envelopeId:s,draggableLabel:l})}t.dataTransfer.setData("text/plain",JSON.stringify(o)),this.attachGhost({event:t,envelopes:o}),yt.a.$emit("dragStart",{accountId:e,mailboxId:a,itemCount:o.length})}},{key:"onDragEnd",value:function(t){yt.a.$emit("dragEnd",{accountId:this.options.accountId})}},{key:"attachGhost",value:function(t){var n=t.event,e=t.envelopes,a="draggable-envelope-ghost",r=document.createElement("div");r.classList.add(a);var o=document.createElement("span");o.classList.add("".concat(a,"--counter"));var i=document.createTextNode(e.length);o.appendChild(i),r.appendChild(o);var s=document.createElement("div");s.classList.add("".concat(a,"--label-wrapper")),e.forEach((function(t){var n=document.createElement("div");n.classList.add("".concat(a,"--label-wrapper--label"));var e=document.createTextNode(t.draggableLabel);n.appendChild(e),s.appendChild(n)})),r.appendChild(s),document.body.appendChild(r),n.dataTransfer.setDragImage(r,0,15),wt()((function(){document.body.removeChild(r)}))}}])&&kt(n.prototype,e),a&&kt(n,a),t}(),_t=[],Tt={bind:function(t,n,e){var a=new It(t,e.context,n.value);_t.push(a)},componentUpdated:function(t,n){var e=n.value;setTimeout((function(){_t.forEach((function(n){n.options.selectedEnvelopes=e.selectedEnvelopes,n.update(t,n)}))}))},unbind:function(t){_t=_t.filter((function(n){return n.el!==t}))}},jt={name:"Envelope",components:{Avatar:bt.a,MenuEnvelope:ht,Moment:vt},directives:{draggableEnvelope:Tt},props:{data:{type:Object,required:!0},mailbox:{type:Object,required:!0},selectMode:{type:Boolean,default:!1},selected:{type:Boolean,default:!1},selectedEnvelopes:{type:Array,required:!1,default:function(){return[]}}},data:function(){return{importantSvg:gt.a}},computed:{accountColor:function(){var t,n=this.$store.getters.getAccount(this.data.accountId);return Object(Ct.a)(null!==(t=null==n?void 0:n.emailAddress)&&void 0!==t?t:"")},draft:function(){return this.data.flags.draft},link:function(){return this.draft?{name:"message",params:{mailboxId:this.$route.params.mailboxId,filter:this.$route.params.filter?this.$route.params.filter:void 0,threadId:"new",draftId:this.data.databaseId},exact:!0}:{name:"message",params:{mailboxId:this.$route.params.mailboxId,filter:this.$route.params.filter?this.$route.params.filter:void 0,threadId:this.data.databaseId},exact:!0}},addresses:function(){if("sent"===this.mailbox.specialRole){var n=[this.data.to,this.data.cc].flat().map((function(t){return t.label?t.label:t.email}));return n.length>0?n.join(", "):t("mail","Blind copy recipients only")}return 0===this.data.from.length?"?":this.data.from[0].label||this.data.from[0].email},avatarEmail:function(){if("sent"===this.mailbox.specialRole){var t=[this.data.to,this.data.cc].flat().map((function(t){return t.email}));return t.length>0?t[0]:void 0}return this.data.from.length>0?this.data.from[0].email:void 0}},methods:{unselect:function(){this.selected&&this.$emit("updated:selected",!1)},toggleSelected:function(){this.$emit("update:selected",!this.selected)},onSelectMultiple:function(){this.$emit("select-multiple")},onToggleImportant:function(){this.$store.dispatch("toggleEnvelopeImportant",this.data)},onToggleFlagged:function(){this.$store.dispatch("toggleEnvelopeFlagged",this.data)},onToggleJunk:function(){this.$store.dispatch("toggleEnvelopeJunk",this.data)}}},Dt=a(1136),Et={insert:"head",singleton:!1},St=(d()(Dt.a,Et),Dt.a.locals,Object(m.a)(jt,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("router-link",{directives:[{name:"draggable-envelope",rawName:"v-draggable-envelope",value:{accountId:t.data.accountId?t.data.accountId:t.mailbox.accountId,mailboxId:t.data.mailboxId,envelopeId:t.data.databaseId,draggableLabel:t.data.subject+" ("+t.data.from[0].label+")",selectedEnvelopes:t.selectedEnvelopes},expression:"{\n\t\taccountId: data.accountId ? data.accountId : mailbox.accountId,\n\t\tmailboxId: data.mailboxId,\n\t\tenvelopeId: data.databaseId,\n\t\tdraggableLabel: `${data.subject} (${data.from[0].label})`,\n\t\tselectedEnvelopes,\n\t}"}],staticClass:"app-content-list-item",class:{seen:t.data.flags.seen,draft:t.draft,selected:t.selected},attrs:{to:t.link,"data-envelope-id":t.data.databaseId}},[t.mailbox.isUnified?e("div",{staticClass:"mail-message-account-color",style:{"background-color":t.accountColor}}):t._e(),t._v(" "),t.data.flags.flagged?e("div",{staticClass:"app-content-list-item-star icon-starred",attrs:{"data-starred":t.data.flags.flagged?"true":"false"},on:{click:function(n){return n.preventDefault(),t.onToggleFlagged(n)}}}):t._e(),t._v(" "),t.data.flags.important?e("div",{staticClass:"app-content-list-item-star icon-important",attrs:{"data-starred":t.data.flags.important?"true":"false"},domProps:{innerHTML:t._s(t.importantSvg)},on:{click:function(n){return n.preventDefault(),t.onToggleImportant(n)}}}):t._e(),t._v(" "),t.data.flags.junk?e("div",{staticClass:"app-content-list-item-star icon-junk",attrs:{"data-starred":t.data.flags.junk?"true":"false"},on:{click:function(n){return n.preventDefault(),t.onToggleJunk(n)}}}):t._e(),t._v(" "),e("div",{staticClass:"app-content-list-item-icon"},[e("Avatar",{attrs:{"display-name":t.addresses,email:t.avatarEmail}}),t._v(" "),t.selectMode?e("p",{staticClass:"app-content-list-item-select-checkbox"},[e("input",{staticClass:"checkbox",attrs:{id:"select-checkbox-"+t.data.uid,type:"checkbox"},domProps:{checked:t.selected}}),t._v(" "),e("label",{attrs:{for:"select-checkbox-"+t.data.uid},on:{click:[function(n){return n.ctrlKey||n.shiftKey||n.altKey||n.metaKey?null:(n.preventDefault(),t.toggleSelected(n))},function(n){return n.shiftKey?(n.preventDefault(),t.onSelectMultiple(n)):null}]}})]):t._e()],1),t._v(" "),e("div",{staticClass:"app-content-list-item-line-one",attrs:{title:t.addresses}},[t._v("\n\t\t"+t._s(t.addresses)+"\n\t")]),t._v(" "),e("div",{staticClass:"app-content-list-item-line-two",attrs:{title:t.data.subject}},[t.data.flags.answered?e("span",{staticClass:"icon-reply"}):t._e(),t._v(" "),!0===t.data.flags.hasAttachments?e("span",{staticClass:"icon-public icon-attachment"}):t._e(),t._v(" "),t.draft?e("span",{staticClass:"draft"},[e("em",[t._v(t._s(t.t("mail","Draft: ")))])]):t._e(),t._v("\n\t\t"+t._s(t.data.subject)+"\n\t")]),t._v(" "),e("div",{staticClass:"app-content-list-item-details date"},[e("Moment",{attrs:{timestamp:t.data.dateInt}})],1),t._v(" "),e("MenuEnvelope",{staticClass:"app-content-list-item-menu",attrs:{envelope:t.data,mailbox:t.mailbox,"is-selected":t.selected,"with-select":!0,"with-show-source":!1},on:{unselect:t.unselect,"update:selected":t.toggleSelected}})],1)}),[],!1,null,"5b5c7240",null).exports),Mt=a(1359);function Bt(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function Ot(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function Rt(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){Ot(o,a,r,i,s,"next",t)}function s(t){Ot(o,a,r,i,s,"throw",t)}i(void 0)}))}}var Ft={name:"EnvelopeList",components:{Actions:M.a,ActionButton:O.a,Envelope:St,MoveModal:it},props:{account:{type:Object,required:!0},mailbox:{type:Object,required:!0},envelopes:{type:Array,required:!0},searchQuery:{type:String,required:!1,default:void 0},refreshing:{type:Boolean,required:!0,default:!0},loadingMore:{type:Boolean,required:!0},loadMoreButton:{type:Boolean,required:!1,default:!1}},data:function(){return{selection:[],showMoveModal:!1,lastToggledIndex:void 0}},computed:{selectMode:function(){return this.selection.length>0},areAllSelectedRead:function(){return this.selectedEnvelopes.every((function(t){return!0===t.flags.seen}))},areAllSelectedFavorite:function(){return this.selectedEnvelopes.every((function(t){return!0===t.flags.flagged}))},selectedEnvelopes:function(){var t=this;return this.envelopes.filter((function(n){return t.selection.includes(n.databaseId)}))}},watch:{envelopes:function(t,n){var e=t.map((function(t){return t.databaseId}));this.selection=this.selection.filter((function(t){return e.includes(t)})),Object(Mt.a)((function(t,n){return t.databaseId===n.databaseId}),n,t).forEach((function(t){t.flags.selected=!1}))}},mounted:function(){yt.a.$on("envelopesDropped",this.unselectAll)},beforeDestroy:function(){yt.a.$off("envelopesDropped",this.unselectAll)},methods:{isEnvelopeSelected:function(t){return 0!==this.selection.length&&this.selection.includes(t)},markSelectedSeenOrUnseen:function(){var t=this,n=!this.areAllSelectedRead;this.selectedEnvelopes.forEach((function(e){t.$store.dispatch("toggleEnvelopeSeen",{envelope:e,seen:n})})),this.unselectAll()},favoriteOrUnfavoriteAll:function(){var t=this,n=!this.areAllSelectedFavorite;this.selectedEnvelopes.forEach((function(e){t.$store.dispatch("markEnvelopeFavoriteOrUnfavorite",{envelope:e,favFlag:n})})),this.unselectAll()},deleteAllSelected:function(){var n=this;this.selectedEnvelopes.forEach(function(){var e=Rt(regeneratorRuntime.mark((function e(a){var r,o,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a.databaseId===n.$route.params.threadId&&(r=n.envelopes.indexOf(a),(o=0===r?n.envelopes[r+1]:n.envelopes[r-1])&&n.$router.push({name:"message",params:{mailboxId:n.$route.params.mailboxId,threadId:o.databaseId}})),A.a.info("deleting message ".concat(a.databaseId)),e.prev=2,e.next=5,n.$store.dispatch("deleteMessage",{id:a.databaseId});case 5:e.next=14;break;case 7:return e.prev=7,e.t0=e.catch(2),e.t1=R.b,e.next=12,Object(nt.a)(e.t0,(Bt(i={},st.a.getName(),(function(){return t("mail","No trash mailbox configured")})),Bt(i,"default",(function(n){return A.a.error("could not delete message",n),t("mail","Could not delete message")})),i));case 12:e.t2=e.sent,(0,e.t1)(e.t2);case 14:case"end":return e.stop()}}),e,null,[[2,7]])})));return function(t){return e.apply(this,arguments)}}()),this.unselectAll()},setEnvelopeSelected:function(t,n){var e=this.selection.includes(t.databaseId);n&&!e?(t.flags.selected=!0,this.selection.push(t.databaseId)):!n&&e&&(t.flags.selected=!1,this.selection.splice(this.selection.indexOf(t.databaseId),1))},onEnvelopeSelectToggle:function(t,n,e){this.lastToggledIndex=n,this.setEnvelopeSelected(t,e)},onEnvelopeSelectMultiple:function(t,n){if(void 0!==this.lastToggledIndex){for(var e=Math.min(this.lastToggledIndex,n),a=Math.max(this.lastToggledIndex,n),r=this.selection.includes(t.databaseId),o=e;o<=a;o++)this.setEnvelopeSelected(this.envelopes[o],!r);this.lastToggledIndex=n}},unselectAll:function(){this.envelopes.forEach((function(t){t.flags.selected=!1})),this.selection=[]},onOpenMoveModal:function(){this.showMoveModal=!0},forwardSelectedAsAttachment:function(){var t=this;return Rt(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:e=t.selection,t.$router.push({name:"message",params:{mailboxId:t.$route.params.mailboxId,threadId:"new"},query:{forwardedMessages:e}}),t.unselectAll();case 3:case"end":return n.stop()}}),n)})))()},onCloseMoveModal:function(){this.showMoveModal=!1,this.unselectAll()}}},$t=a(1138),Pt={insert:"head",singleton:!1},Nt=(d()($t.a,Pt),$t.a.locals,Object(m.a)(Ft,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",[e("transition",{attrs:{name:"multiselect-header"}},[t.selectMode?e("div",{key:"multiselect-header",staticClass:"multiselect-header"},[e("div",{staticClass:"button primary",on:{click:function(n){return n.preventDefault(),t.markSelectedSeenOrUnseen(n)}}},[e("span",{attrs:{id:"action-label"}},[t._v(t._s(t.areAllSelectedRead?t.n("mail","Mark {number} unread","Mark {number} unread",t.selection.length,{number:t.selection.length}):t.n("mail","Mark {number} read","Mark {number} read",t.selection.length,{number:t.selection.length})))])]),t._v(" "),e("Actions",{staticClass:"app-content-list-item-menu",attrs:{"menu-align":"right"}},[e("ActionButton",{attrs:{icon:"icon-starred","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.favoriteOrUnfavoriteAll(n)}}},[t._v("\n\t\t\t\t\t"+t._s(t.areAllSelectedFavorite?t.n("mail","Unfavorite {number}","Unfavorite {number}",t.selection.length,{number:t.selection.length}):t.n("mail","Favorite {number}","Favorite {number}",t.selection.length,{number:t.selection.length}))+"\n\t\t\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-close","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.unselectAll(n)}}},[t._v("\n\t\t\t\t\t"+t._s(t.n("mail","Unselect {number}","Unselect {number}",t.selection.length,{number:t.selection.length}))+"\n\t\t\t\t")]),t._v(" "),t.account.isUnified?t._e():e("ActionButton",{attrs:{icon:"icon-external","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.onOpenMoveModal(n)}}},[t._v("\n\t\t\t\t\t"+t._s(t.n("mail","Move {number}","Move {number}",t.selection.length,{number:t.selection.length}))+"\n\t\t\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-forward","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.forwardSelectedAsAttachment(n)}}},[t._v("\n\t\t\t\t\t"+t._s(t.n("mail","Forward {number} as attachment","Forward {number} as attachment",t.selection.length,{number:t.selection.length}))+"\n\t\t\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-delete","close-after-click":!0},on:{click:function(n){return n.preventDefault(),t.deleteAllSelected(n)}}},[t._v("\n\t\t\t\t\t"+t._s(t.n("mail","Delete {number}","Delete {number}",t.selection.length,{number:t.selection.length}))+"\n\t\t\t\t")])],1),t._v(" "),t.showMoveModal?e("MoveModal",{attrs:{account:t.account,envelopes:t.selectedEnvelopes},on:{close:t.onCloseMoveModal}}):t._e()],1):t._e()]),t._v(" "),e("transition-group",{attrs:{name:"list"}},[e("div",{key:"loading",staticClass:"icon-loading-small",class:{refreshing:t.refreshing},attrs:{id:"list-refreshing"}}),t._v(" "),t._l(t.envelopes,(function(n,a){return e("Envelope",{key:n.databaseId,attrs:{data:n,mailbox:t.mailbox,selected:t.selection.includes(n.databaseId),"select-mode":t.selectMode,"selected-envelopes":t.selectedEnvelopes},on:{delete:function(e){return t.$emit("delete",n.databaseId)},"update:selected":function(e){return t.onEnvelopeSelectToggle.apply(void 0,[n,a].concat(e))},"select-multiple":function(e){return t.onEnvelopeSelectMultiple(n,a)}}})})),t._v(" "),t.loadMoreButton&&!t.loadingMore?e("div",{key:"list-collapse-"+t.searchQuery,staticClass:"load-more",on:{click:function(n){return t.$emit("loadMore")}}},[t._v("\n\t\t\t"+t._s(t.t("mail","Load more"))+"\n\t\t")]):t._e(),t._v(" "),e("div",{key:"loadingMore",class:{"icon-loading-small":t.loadingMore},attrs:{id:"load-more-mail-messages"}})],2)],1)}),[],!1,null,"74567ca5",null).exports),qt=a(1139),Lt=a.n(qt),zt=function(t){return t.reduce((function(t,n){var e="";return n.class?e+=" at "+n.class+"::"+n.function:e+=" at "+n.function,n.file&&(e+="\n "+n.file+", line "+n.line),t+e+"\n"}),"")},Ut=function(t){console.error(t);var n=t.message||"An unkown error occurred.";n.endsWith(".")||(n+=".");var e=(new Lt.a).addEmptyStepsToReproduce().addExpectedActualBehaviour().addLogs("Error",function(t){var n="";return t.type&&(n+=t.type+": "),n+=t.message,n+="\n",t.trace&&(n+=zt(t.trace)),t.stack&&(n+=t.stack),n}(t)).render();return"https://github.com/nextcloud/mail/issues/new?title="+encodeURIComponent(n)+"&body="+encodeURIComponent(e)},Gt={name:"Error",props:{error:{type:String,required:!0},message:{type:String,required:!0},data:{type:Object,default:function(){}}},computed:{reportUrl:function(){return Ut(this.data)}}},Wt=Object(m.a)(Gt,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"emptycontent"},[e("h2",[t._v(t._s(t.error))]),t._v(" "),e("p",[t._v(t._s(t.message))]),t._v(" "),t.data&&t.data.debug?e("p",[e("a",{staticClass:"button",attrs:{href:t.reportUrl,target:"_blank",rel:"noopener"}},[t._v(t._s(t.t("mail","Report this bug")))])]):t._e()])}),[],!1,null,null,null).exports,Vt=a(1366),Yt=a(626),Ht={name:"Loading",props:{hint:{type:String,default:"",required:!1},slowHint:{type:String,default:"",required:!1}},data:function(){return{slow:!1,slowTimer:void 0}},mounted:function(){var t=this;clearTimeout(this.slowTimer),this.slowTimer=setTimeout((function(){t.slow=!0}),3500)},beforeDestroy:function(){clearTimeout(this.slowTimer)}},Qt=a(1140),Kt={insert:"head",singleton:!1},Jt=(d()(Qt.a,Kt),Qt.a.locals,Object(m.a)(Ht,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.hint?e("div",{staticClass:"emptycontent"},[e("a",{staticClass:"icon-loading"}),t._v(" "),e("h2",[t._v(t._s(t.hint))]),t._v(" "),e("transition",{attrs:{name:"fade"}},[t.slowHint&&t.slow?e("em",[t._v(t._s(t.slowHint))]):t._e()])],1):e("div",{staticClass:"container icon-loading"})}),[],!1,null,"5dce5c60",null).exports),Xt=a(126),Zt=a(301),tn=a(540),nn={name:"EmptyMailboxSection"},en=a(1141),an={insert:"head",singleton:!1};d()(en.a,an),en.a.locals;function rn(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function on(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function sn(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){on(o,a,r,i,s,"next",t)}function s(t){on(o,a,r,i,s,"throw",t)}i(void 0)}))}}var ln={name:"Mailbox",components:{EmptyMailboxSection:Object(m.a)(nn,(function(){var t=this.$createElement;return(this._self._c||t)("div",{attrs:{id:"emptycontent"}},[this._t("default",[this._v(" "+this._s(this.t("mail","No messages")))])],2)}),[],!1,null,"4512145e",null).exports,EmptyMailbox:E,EnvelopeList:Nt,Error:Wt,Loading:Jt},mixins:[s.a],props:{account:{type:Object,required:!0},mailbox:{type:Object,required:!0},bus:{type:Object,required:!0},paginate:{type:String,default:"scroll"},initialPageSize:{type:Number,default:20},openFirst:{type:Boolean,default:!0},searchQuery:{type:String,required:!1,default:void 0},isPriorityInbox:{type:Boolean,required:!1,default:!1}},data:function(){return{error:!1,refreshing:!1,loadingMore:!1,loadingEnvelopes:!0,loadingCacheInitialization:!1,loadMailboxInterval:void 0,expanded:!1,endReached:!1}},computed:{envelopes:function(){return this.$store.getters.getEnvelopes(this.mailbox.databaseId,this.searchQuery)},envelopesToShow:function(){return"manual"!==this.paginate||this.expanded?this.envelopes:this.envelopes.slice(0,5)},hasMessages:function(){return this.envelopes.length>0},showLoadMore:function(){return!this.endReached&&"manual"===this.paginate}},watch:{account:function(){this.loadEnvelopes()},mailbox:function(){var t=this;this.loadEnvelopes().then((function(){A.a.debug("syncing mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,") after mailbox change")),t.sync(!1)}))},searchQuery:function(){this.loadEnvelopes()}},created:function(){this.bus.$on("loadMore",this.onScroll),this.bus.$on("delete",this.onDelete),this.bus.$on("shortcut",this.handleShortcut),this.loadMailboxInterval=setInterval(this.loadMailbox,6e4)},mounted:function(){var t=this;return sn(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:t.loadEnvelopes().then((function(){A.a.debug("syncing mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,") after mount")),t.sync(!1)}));case 1:case"end":return n.stop()}}),n)})))()},destroyed:function(){this.bus.$off("loadMore",this.onScroll),this.bus.$off("delete",this.onDelete),this.bus.$off("shortcut",this.handleShortcut),this.stopInterval()},methods:{initializeCache:function(){var t=this;this.loadingCacheInitialization=!0,this.error=!1,A.a.debug("syncing mailbox ".concat(this.mailbox.databaseId," (").concat(this.searchQuery,") during cache initalization")),this.sync(!0).then((function(){return t.loadingCacheInitialization=!1,t.loadEnvelopes()}))},loadEnvelopes:function(){var t=this;return sn(regeneratorRuntime.mark((function n(){var e,a,r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return A.a.debug("Fetching envelopes for mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,")"),t.mailbox),t.loadingEnvelopes=!0,t.loadingCacheInitialization=!1,t.error=!1,n.prev=4,n.next=7,t.$store.dispatch("fetchEnvelopes",{mailboxId:t.mailbox.databaseId,query:t.searchQuery,limit:t.initialPageSize});case 7:e=n.sent,A.a.debug(e.length+" envelopes fetched",{envelopes:e}),t.loadingEnvelopes=!1,t.openFirst&&!t.isMobile&&"message"!==t.$route.name&&e.length>0&&(a=e[0],A.a.debug("showing the first message of mailbox "+t.$route.params.mailboxId),a.flags.draft?t.$router.replace({name:"message",params:{mailboxId:t.$route.params.mailboxId,filter:t.$route.params.filter?t.$route.params.filter:void 0,threadId:"new",draftId:a.databaseId}}):t.$router.replace({name:"message",params:{mailboxId:t.$route.params.mailboxId,filter:t.$route.params.filter?t.$route.params.filter:void 0,threadId:a.databaseId}})),n.next=17;break;case 13:return n.prev=13,n.t0=n.catch(4),n.next=17,Object(nt.a)(n.t0,(rn(r={},Xt.a.getName(),function(){var n=sn(regeneratorRuntime.mark((function n(e){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return A.a.info("Mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,") is locked"),{error:e}),n.next=3,Object(tn.a)(15e3);case 3:return n.next=5,t.loadEnvelopes();case 5:case"end":return n.stop()}}),n)})));return function(t){return n.apply(this,arguments)}}()),rn(r,Zt.a.getName(),function(){var n=sn(regeneratorRuntime.mark((function n(e){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return A.a.info("Mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,") not cached. Triggering initialization"),{error:e}),t.loadingEnvelopes=!1,n.prev=2,n.next=5,t.initializeCache();case 5:n.next=11;break;case 7:n.prev=7,n.t0=n.catch(2),A.a.error("Could not initialize cache of mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,")"),{error:n.t0}),t.error=n.t0;case 11:case"end":return n.stop()}}),n,null,[[2,7]])})));return function(t){return n.apply(this,arguments)}}()),rn(r,"default",(function(n){A.a.error("Could not fetch envelopes of mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,")"),{error:n}),t.loadingEnvelopes=!1,t.error=n})),r));case 17:case"end":return n.stop()}}),n,null,[[4,13]])})))()},loadMore:function(){var t=this;return sn(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t.expanded){n.next=4;break}return A.a.debug("expanding envelope list"),t.expanded=!0,n.abrupt("return");case 4:return A.a.debug("fetching next envelope page"),t.loadingMore=!0,n.prev=6,n.next=9,t.$store.dispatch("fetchNextEnvelopePage",{mailboxId:t.mailbox.databaseId,envelopes:t.envelopes,query:t.searchQuery});case 9:0===n.sent.length&&(A.a.info("envelope list end reached"),t.endReached=!0),n.next=16;break;case 13:n.prev=13,n.t0=n.catch(6),A.a.error("could not fetch next envelope page",{error:n.t0});case 16:return n.prev=16,t.loadingMore=!1,n.finish(16);case 19:case"end":return n.stop()}}),n,null,[[6,13,16,19]])})))()},handleShortcut:function(n){var e=this;return sn(regeneratorRuntime.mark((function a(){var r,o,i,s,l,c;return regeneratorRuntime.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:r=e.envelopes,o=parseInt(e.$route.params.threadId,10),i=r.find((function(t){return t.databaseId===o})),s=r.indexOf(i),"refresh"===n.srcKey||i||A.a.debug("envelope is not in the list, ignoring shortcut",{srcKey:n.srcKey}),a.t0=n.srcKey,a.next="next"===a.t0||"prev"===a.t0?8:"del"===a.t0?14:"flag"===a.t0?30:"refresh"===a.t0?33:"unseen"===a.t0?36:39;break;case 8:if(l="next"===n.srcKey?r[s+1]:r[s-1]){a.next=12;break}return A.a.debug("ignoring shortcut: head or tail of envelope list reached",{envelopes:r,idx:s,srcKey:n.srcKey}),a.abrupt("return");case 12:return e.$router.push({name:"message",params:{mailboxId:e.$route.params.mailboxId,filter:e.$route.params.filter?e.$route.params.filter:void 0,threadId:l.databaseId}}),a.abrupt("break",40);case 14:return A.a.debug("deleting",{env:i}),e.onDelete(i.databaseId),a.prev=16,a.next=19,e.$store.dispatch("deleteMessage",{id:i.databaseId});case 19:a.next=29;break;case 21:return a.prev=21,a.t1=a.catch(16),A.a.error("could not delete envelope",{env:i,error:a.t1}),a.t2=R.b,a.next=27,Object(nt.a)(a.t1,(rn(c={},st.a.getName(),(function(){return t("mail","No trash mailbox configured")})),rn(c,"default",(function(){return t("mail","Could not delete message")})),c));case 27:a.t3=a.sent,(0,a.t2)(a.t3);case 29:return a.abrupt("break",40);case 30:return A.a.debug("flagging envelope via shortkey",{env:i}),e.$store.dispatch("toggleEnvelopeFlagged",i).catch((function(t){return A.a.error("could not flag envelope via shortkey",{env:i,error:t})})),a.abrupt("break",40);case 33:return A.a.debug("syncing mailbox ".concat(e.mailbox.databaseId," (").concat(e.searchQuery,") per shortcut")),e.sync(!1),a.abrupt("break",40);case 36:return A.a.debug("marking message as seen/unseen via shortkey",{env:i}),e.$store.dispatch("toggleEnvelopeSeen",{envelope:i}).catch((function(t){return A.a.error("could not mark envelope as seen/unseen via shortkey",{env:i,error:t})})),a.abrupt("break",40);case 39:A.a.warn("shortcut "+n.srcKey+" is unknown. ignoring.");case 40:case"end":return a.stop()}}),a,null,[[16,21]])})))()},sync:function(){var t=arguments,n=this;return sn(regeneratorRuntime.mark((function e(){var a,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.length>0&&void 0!==t[0]&&t[0],!n.refreshing){e.next=4;break}return A.a.debug("already sync'ing mailbox ".concat(n.mailbox.databaseId," (").concat(n.searchQuery,"), aborting"),{init:a}),e.abrupt("return");case 4:return n.refreshing=!0,e.prev=5,e.next=8,n.$store.dispatch("syncEnvelopes",{mailboxId:n.mailbox.databaseId,query:n.searchQuery,init:a});case 8:e.next=13;break;case 10:e.prev=10,e.t0=e.catch(5),Object(nt.a)(e.t0,(rn(r={},Xt.a.getName(),(function(t){A.a.info("Background sync failed because the mailbox is locked",{error:t,init:a})})),rn(r,"default",(function(t){A.a.error("Could not sync envelopes: "+t.message,{error:t,init:a})})),r));case 13:return e.prev=13,n.refreshing=!1,A.a.debug("finished sync'ing mailbox ".concat(n.mailbox.databaseId," (").concat(n.searchQuery,")"),{init:a}),e.finish(13);case 17:case"end":return e.stop()}}),e,null,[[5,10,13,17]])})))()},onDelete:function(t){var n=Object(Vt.a)(Object(Yt.a)("databaseId",t),this.envelopes);if(-1!==n)if(this.envelopes.splice(n,1),t===this.$route.params.threadId){var e=this.envelopes[0===n?n:n-1];e?this.$router.push({name:"message",params:{mailboxId:this.$route.params.mailboxId,filter:this.$route.params.filter?this.$route.params.filter:void 0,threadId:e.databaseId}}):A.a.debug("no next/previous envelope, not navigating")}else A.a.debug("other message open, not jumping to the next/previous message");else A.a.debug("envelope to delete does not exist in envelope list")},onScroll:function(){"scroll"===this.paginate?this.loadMore():A.a.debug("ignoring scroll pagination")},loadMailbox:function(){var t=this;return sn(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!t.account.isUnified&&"inbox"!==t.mailbox.specialRole){n.next=2;break}return n.abrupt("return");case 2:return n.prev=2,A.a.debug("syncing mailbox ".concat(t.mailbox.databaseId," (").concat(t.searchQuery,") in background")),n.next=6,t.sync(!1);case 6:n.next=11;break;case 8:n.prev=8,n.t0=n.catch(2),A.a.error("Background sync failed: "+n.t0.message,{error:n.t0});case 11:case"end":return n.stop()}}),n,null,[[2,8]])})))()},stopInterval:function(){clearInterval(this.loadMailboxInterval),this.loadMailboxInterval=void 0}}},cn=a(1142),dn={insert:"head",singleton:!1},un=(d()(cn.a,dn),cn.a.locals,Object(m.a)(ln,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.error?e("Error",{attrs:{error:t.t("mail","Could not open mailbox"),message:"",role:"alert"}}):t.loadingEnvelopes?e("Loading",{attrs:{hint:t.t("mail","Loading messages"),role:"alert"}}):t.loadingCacheInitialization?e("Loading",{attrs:{hint:t.t("mail","Loading messages"),"slow-hint":t.t("mail","Indexing your messages. This can take a bit longer for larger mailboxes.")}}):t.isPriorityInbox&&!t.hasMessages?e("EmptyMailboxSection",{key:"empty"}):t.hasMessages?e("EnvelopeList",{attrs:{account:t.account,mailbox:t.mailbox,"search-query":t.searchQuery,envelopes:t.envelopesToShow,refreshing:t.refreshing,"loading-more":t.loadingMore,"load-more-button":t.showLoadMore},on:{delete:t.onDelete,loadMore:t.loadMore}}):e("EmptyMailbox",{key:"empty"})}),[],!1,null,"45a02c20",null).exports),pn=a(730),mn=a.n(pn),hn=a(38),An=a(921),vn=a.n(An),fn=a(1144),gn=a.n(fn),bn=a(1146),Cn=a.n(bn),yn=a(923),xn=a.n(yn),wn=a(1147),kn=a.n(wn),In=a(1150),_n=a.n(In),Tn=a(731),jn=a.n(Tn),Dn=a(1151),En=a.n(Dn),Sn=a(1154),Mn=a.n(Sn),Bn=a(36),On=a(732),Rn=a(535),Fn=a.n(Rn),$n=a(1159),Pn=a.n($n),Nn=a(1161),qn=a.n(Nn),Ln=a(537),zn=a.n(Ln),Un=a(1163);function Gn(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function Wn(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){Gn(o,a,r,i,s,"next",t)}function s(t){Gn(o,a,r,i,s,"throw",t)}i(void 0)}))}}
/*
* @copyright 2020 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @author 2020 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/var Vn=zn()((function(){return $.a.defaults.headers["X-Requested-With"]="XMLHttpRequest",Un.getPatcher().patch("request",$.a),Un.createClient(Object(tt.generateRemoteUrl)("dav/files/".concat(Object(Bn.getCurrentUser)().uid)))}));function Yn(t){return Hn.apply(this,arguments)}function Hn(){return(Hn=Wn(regeneratorRuntime.mark((function t(n){var e,a,r;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Vn().stat(n,{data:'<?xml version="1.0"?>\n\t\t\t<d:propfind xmlns:d="DAV:"\n\t\t\t\txmlns:oc="http://owncloud.org/ns">\n\t\t\t\t<d:prop>\n\t\t\t\t\t<oc:size />\n\t\t\t\t</d:prop>\n\t\t\t</d:propfind>',details:!0});case 2:return r=t.sent,t.abrupt("return",null==r||null===(e=r.data)||void 0===e||null===(a=e.props)||void 0===a?void 0:a.size);case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function Qn(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}
/**
* @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>
* @copyright Copyright (c) 2020 Gary Kim <gary@garykim.dev>
*
* @author Marco Ambrosini <marcoambrosini@pm.me>
* @author Gary Kim <gary@garykim.dev>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
var Kn=function(){var n,e=(n=regeneratorRuntime.mark((function n(e,a){var r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,$.a.post(Object(tt.generateOcsUrl)("apps/files_sharing/api/v1",2)+"shares",{shareType:3,path:e,shareWith:a});case 3:return r=n.sent,n.abrupt("return",r.data.ocs.data.url);case 7:if(n.prev=7,n.t0=n.catch(0),!(n.t0.response&&n.t0.response.data&&n.t0.response.data.ocs&&n.t0.response.data.ocs.meta&&n.t0.response.data.ocs.meta.message)){n.next=15;break}throw console.error("Error while sharing file: ".concat(n.t0.response.data.ocs.meta.message||"Unknown error")),Object(R.b)(n.t0.response.data.ocs.meta.message),n.t0;case 15:throw console.error("Error while sharing file: Unknown error"),Object(R.b)(t("mail","Error while sharing file")),n.t0;case 18:case"end":return n.stop()}}),n,null,[[0,7]])})),function(){var t=this,e=arguments;return new Promise((function(a,r){var o=n.apply(t,e);function i(t){Qn(o,a,r,i,s,"next",t)}function s(t){Qn(o,a,r,i,s,"throw",t)}i(void 0)}))});return function(t,n){return e.apply(this,arguments)}}();
/*
* @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/function Jn(t,n,e){var a=Object(tt.generateUrl)("/apps/mail/api/messages/{id}/attachment/{attachmentId}",{id:t,attachmentId:n});return $.a.post(a,{targetPath:e})}function Xn(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function Zn(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){Xn(o,a,r,i,s,"next",t)}function s(t){Xn(o,a,r,i,s,"throw",t)}i(void 0)}))}}var te={name:"ComposerAttachments",props:{value:{type:Array,required:!0},bus:{type:Object,required:!0},uploadSizeLimit:{type:Number,default:0}},data:function(){return{uploading:!1,uploads:{}}},computed:{uploadProgress:function(){var t=0,n=0;for(var e in this.uploads)t+=this.uploads[e].uploaded,n+=this.uploads[e].total;return(t/n*100).toFixed(1)}},created:function(){this.bus.$on("onAddLocalAttachment",this.onAddLocalAttachment),this.bus.$on("onAddCloudAttachment",this.onAddCloudAttachment),this.bus.$on("onAddCloudAttachmentLink",this.onAddCloudAttachmentLink)},methods:{onAddLocalAttachment:function(){this.$refs.localAttachments.click()},emitNewAttachments:function(t){this.$emit("input",this.value.concat(t))},totalSizeOfUpload:function(){return Object.values(this.value).reduce((function(t,n){return"local"===!n.type?t:t+n.size}),0)},onLocalAttachmentSelected:function(t){var n=this;this.uploading=!0,j.default.set(this,"uploads",{});var e=qn()(Fn()("size"),Object.values(t.target.files)),a=e+this.totalSizeOfUpload();if(A.a.debug("checking upload size limit",{existingUploads:this.totalSizeOfUpload(),toUpload:e,limit:this.uploadSizeLimit,newTotal:a}),this.uploadSizeLimit&&a>this.uploadSizeLimit)return this.showAttachmentFileSizeWarning(t.target.files.length),void(this.uploading=!1);var r=Mn()((function(t){return j.default.set(n.uploads,t.name,{total:t.size,uploaded:0}),function(t,n){var e=Object(tt.generateUrl)("/apps/mail/api/attachments"),a=new FormData,r={onUploadProgress:function(t){return n(t,t.loaded,t.total)}};return a.append("attachment",t),$.a.post(e,a,r).then((function(t){return t.data})).then((function(n){var e=n.id;return{file:t,id:e}}))}(t,(e=t.name,function(t,a){n.uploads[e].uploaded=a})).then((function(t){var e=t.file,a=t.id;A.a.info("uploaded"),n.emitNewAttachments([{fileName:e.name,displayName:xn()("/",e.name),id:a,size:e.size,type:"local"}])}));var e}),t.target.files),o=Promise.all(r).catch((function(t){return A.a.error("could not upload all attachments",{error:t})})).then((function(){return n.uploading=!1}));return this.$emit("upload",o),o},onAddCloudAttachment:function(){var t=this;return Zn(regeneratorRuntime.mark((function n(){var e,a,r,o;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=Object(R.a)(Object(hn.translate)("mail","Choose a file to add as attachment")).setMultiSelect(!0).build(),n.prev=1,n.next=4,e.pick(Object(hn.translate)("mail","Choose a file to add as attachment"));case 4:return a=n.sent,n.next=7,Promise.all(a.map(Yn));case 7:if(r=n.sent,o=Pn()(r)+t.totalSizeOfUpload(),!(t.uploadSizeLimit&&o>t.uploadSizeLimit)){n.next=12;break}return t.showAttachmentFileSizeWarning(a.length),n.abrupt("return");case 12:t.emitNewAttachments(a.map((function(t){return{fileName:t,displayName:xn()("/",t),type:"cloud"}}))),n.next=18;break;case 15:n.prev=15,n.t0=n.catch(1),A.a.error("could not choose a file as attachment",{error:n.t0});case 18:case"end":return n.stop()}}),n,null,[[1,15]])})))()},onAddCloudAttachmentLink:function(){var t=this;return Zn(regeneratorRuntime.mark((function n(){var e,a,r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=Object(R.a)(Object(hn.translate)("mail","Choose a file to share as a link")).build(),n.prev=1,n.next=4,e.pick(Object(hn.translate)("mail","Choose a file to share as a link"));case 4:return a=n.sent,n.next=7,Kn(a,Object(Bn.getRequestToken)());case 7:r=n.sent,t.appendToBodyAtCursor('<a href="'.concat(r,'">').concat(r,"</a>")),n.next=14;break;case 11:n.prev=11,n.t0=n.catch(1),A.a.error("could not choose a file as attachment link",{error:n.t0});case 14:case"end":return n.stop()}}),n,null,[[1,11]])})))()},showAttachmentFileSizeWarning:function(t){Object(R.e)(Object(hn.translatePlural)("mail","The attachment exceed the allowed attachments size of {size}. Please share the file via link instead.","The attachments exceed the allowed attachments size of {size}. Please share the files via link instead.",t,{size:Object(On.formatFileSize)(this.uploadSizeLimit)}))},onDelete:function(t){this.$emit("input",this.value.filter((function(n){return n!==t})))},appendToBodyAtCursor:function(t){this.bus.$emit("appendToBodyAtCursor",t)}}},ne=a(1239),ee={insert:"head",singleton:!1},ae=(d()(ne.a,ee),ne.a.locals,Object(m.a)(te,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"new-message-attachments"},[e("ul",[t._l(t.value,(function(n){return e("li",{key:n.id},[e("div",{staticClass:"new-message-attachment-name"},[t._v("\n\t\t\t\t"+t._s(n.displayName)+"\n\t\t\t")]),t._v(" "),e("div",{staticClass:"new-message-attachments-action svg icon-delete",on:{click:function(e){return t.onDelete(n)}}})])})),t._v(" "),t.uploading?e("li",{staticClass:"attachments-upload-progress"},[e("div",{class:{"icon-loading-small":t.uploading}}),t._v(" "),e("div",[t._v(t._s(t.uploading?t.t("mail","Uploading {percent}% …",{percent:t.uploadProgress}):""))])]):t._e()],2),t._v(" "),e("input",{ref:"localAttachments",staticStyle:{display:"none"},attrs:{type:"file",multiple:""},on:{change:t.onLocalAttachmentSelected}})])}),[],!1,null,"44ae67a0",null).exports),re=a(1052),oe=function(t){return"plain"===t.format&&t.value.startsWith("-----BEGIN PGP MESSAGE-----")};function ie(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function se(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){ie(o,a,r,i,s,"next",t)}function s(t){ie(o,a,r,i,s,"throw",t)}i(void 0)}))}}var le,ce={name:"MailvelopeEditor",props:{value:{type:String,required:!0},recipients:{type:Array,required:!0},quotedText:{type:Object,required:!1,default:function(){}},isReplyOrForward:{type:Boolean,default:!1}},data:function(){return{editor:void 0}},mounted:function(){var t=this;return se(regeneratorRuntime.mark((function n(){var e,a,r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return a=!!t.quotedText&&oe(t.quotedText),r=t.isReplyOrForward?null===(e=t.quotedText)||void 0===e?void 0:e.value:void 0,n.next=4,window.mailvelope.createEditorContainer("#mailvelope-composer",void 0,{quotedMail:a?r:void 0});case 4:t.editor=n.sent;case 5:case"end":return n.stop()}}),n)})))()},methods:{pull:function(){var t=this;return se(regeneratorRuntime.mark((function n(){var e,a;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=t.recipients.map((function(t){return t.email})),A.a.info("encrypting message",{recipients:e}),n.next=4,t.editor.encrypt(e);case 4:a=n.sent,A.a.info("message encryted",{armored:a}),t.$emit("input",a);case 7:case"end":return n.stop()}}),n)})))()}}},de=a(1271),ue={insert:"head",singleton:!1},pe=(d()(de.a,ue),de.a.locals,Object(m.a)(ce,(function(){var t=this.$createElement;return(this._self._c||t)("div",{attrs:{id:"mailvelope-composer"}})}),[],!1,null,"1320c887",null).exports);function me(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}var he=function(){var t,n=(t=regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!le){t.next=2;break}return t.abrupt("return",le);case 2:if(!(le=window.mailvelope)){t.next=6;break}return A.a.debug("mailvelope found statically"),t.abrupt("return",le);case 6:return A.a.debug("loading mailvelope dynamically"),t.next=9,new Promise((function(t){window.addEventListener("mailvelope",(function(){return t(window.mailvelope)}),!1)}));case 9:return le=t.sent,A.a.debug("mailvelope found dynamically"),t.abrupt("return",le);case 12:case"end":return t.stop()}}),t)})),function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){me(o,a,r,i,s,"next",t)}function s(t){me(o,a,r,i,s,"throw",t)}i(void 0)}))});return function(){return n.apply(this,arguments)}}(),Ae=a(303),ve=a(302);function fe(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function ge(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){fe(o,a,r,i,s,"next",t)}function s(t){fe(o,a,r,i,s,"throw",t)}i(void 0)}))}}function be(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,a)}return e}function Ce(t){for(var n=1;n<arguments.length;n++){var e=null!=arguments[n]?arguments[n]:{};n%2?be(Object(e),!0).forEach((function(n){ye(t,n,e[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):be(Object(e)).forEach((function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))}))}return t}function ye(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}var xe=_n()((function(t){var n=Object(tt.generateUrl)("/apps/mail/api/autoComplete?term={term}",{term:t});return $.a.get(n).then((function(t){return t.data}))}),500);j.default.use(kn.a);var we=Object.seal({EDITING:0,UPLOADING:1,SENDING:2,ERROR:3,FINISHED:4}),ke={name:"Composer",components:{MailvelopeEditor:pe,Actions:M.a,ActionButton:O.a,ActionCheckbox:jn.a,ActionLink:N.a,ComposerAttachments:ae,Loading:Jt,Multiselect:En.a,TextEditor:re.a},props:{fromAccount:{type:Number,default:function(){}},to:{type:Array,default:function(){return[]}},cc:{type:Array,default:function(){return[]}},bcc:{type:Array,default:function(){return[]}},subject:{type:String,default:""},body:{type:Object,default:function(){return Object(Y.b)("")}},draft:{type:Function,required:!0},send:{type:Function,required:!0},replyTo:{type:Object,required:!1,default:function(){}},forwardFrom:{type:Object,required:!1,default:function(){}}},data:function(){var t,n,e;return{showCC:this.cc.length>0,selectedAlias:-1,autocompleteRecipients:this.to.concat(this.cc).concat(this.bcc),newRecipients:[],subjectVal:this.subject,bodyVal:Object(Y.d)(this.body).value,attachments:[],noReply:this.to.some((function(t){return t.email.startsWith("noreply@")||t.email.startsWith("no-reply@")})),draftsPromise:Promise.resolve(),attachmentsPromise:Promise.resolve(),canSaveDraft:!0,savingDraft:void 0,saveDraftDebounced:vn()(700,this.saveDraft),state:we.EDITING,errorText:void 0,STATES:we,selectTo:this.to,selectCc:this.cc,selectBcc:this.bcc,bus:new j.default,encrypt:!1,mailvelope:{available:!1,keyRing:void 0,keysMissing:[]},editorMode:"html",addShareLink:Object(hn.translate)("mail","Add share link from {productName} Files",{productName:null!==(t=null===(n=OC)||void 0===n||null===(e=n.theme)||void 0===e?void 0:e.name)&&void 0!==t?t:"Nextcloud"}),requestMdn:!1}},computed:{aliases:function(){var t=0,n=this.$store.getters.accounts.filter((function(t){return!t.isUnified})).flatMap((function(n){return[{id:n.id,aliasId:null,selectId:t++,editorMode:n.editorMode,signature:n.signature,name:n.name,emailAddress:n.emailAddress},n.aliases.map((function(e){return{id:n.id,aliasId:e.id,selectId:t++,editorMode:n.editorMode,signature:n.signature,name:e.name,emailAddress:e.alias}}))]}));return n.flat()},allRecipients:function(){return this.selectTo.concat(this.selectCc).concat(this.selectBcc)},attachmentSizeLimit:function(){return this.$store.getters.getPreference("attachment-size-limit")},selectableRecipients:function(){return this.newRecipients.concat(this.autocompleteRecipients).map((function(t){return Ce(Ce({},t),{},{label:t.label||t.email})}))},isForward:function(){return void 0!==this.forwardFrom},isReply:function(){return void 0!==this.replyTo},canSend:function(){return(!this.encrypt||!this.mailvelope.keysMissing.length)&&(this.selectTo.length>0||this.selectCc.length>0||this.selectBcc.length>0)},editorPlainText:function(){return"plaintext"===this.editorMode},submitButtonTitle:function(){return this.mailvelope.available?this.encrypt?Object(hn.translate)("mail","Encrypt and send"):Object(hn.translate)("mail","Send unencrypted"):Object(hn.translate)("mail","Send")}},watch:{"$route.params.threadId":function(){this.reset()},allRecipients:function(){this.checkRecipientsKeys()}},beforeMount:function(){var t=this;return ge(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.setAlias(),t.initBody(),n.t0=t,n.next=5,he();case 5:return n.t1=n.sent,n.next=8,n.t0.onMailvelopeLoaded.call(n.t0,n.t1);case 8:case"end":return n.stop()}}),n)})))()},mounted:function(){var t,n=this;this.isReply||this.$refs.toLabel.$el.focus(),this.$root.$on("newMessage",(function(){n.draftsPromise.then((function(){return n.saveDraft(n.getMessageData)})).then((function(){n.reset()}))})),void 0!==(null===(t=this.forwardFrom)||void 0===t?void 0:t.attachments)&&this.forwardFrom.attachments.filter((function(t){return"inline"!==t.disposition})).forEach((function(t){n.attachments.push({fileName:t.fileName,displayName:xn()("/",t.fileName),id:t.id,messageId:n.forwardFrom.databaseId,type:"message-attachment"})}));var e=[];this.$route.query.forwardedMessages&&!Cn()(this.$route.query.forwardedMessages)?e=[this.$route.query.forwardedMessages]:this.$route.query.forwardedMessages&&Cn()(this.$route.query.forwardedMessages)&&(e=this.$route.query.forwardedMessages),e.map((function(t){var e=n.$store.getters.getEnvelope(t);e?n.attachments.push({displayName:e.subject+".eml",id:t,type:"message"}):Object(R.b)(Object(hn.translate)("mail","Message {id} could not be found",{id:t}))}))},beforeDestroy:function(){this.$root.$off("newMessage"),window.removeEventListener("mailvelope",this.onMailvelopeLoaded)},methods:{setAlias:function(){var t=this,n=this.selectedAlias;this.fromAccount?this.selectedAlias=this.aliases.find((function(n){return n.id===t.fromAccount})):this.selectedAlias=this.aliases[0],-1===n&&(this.editorMode=this.selectedAlias.editorMode)},checkRecipientsKeys:function(){var t=this;return ge(regeneratorRuntime.mark((function n(){var e,a;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t.encrypt&&t.mailvelope.available){n.next=2;break}return n.abrupt("return");case 2:return e=t.allRecipients.map((function(t){return t.email})),n.next=5,t.mailvelope.keyRing.validKeyForAddress(e);case 5:a=n.sent,A.a.debug("recipients keys validated",{recipients:e,keysValid:a}),t.mailvelope.keysMissing=e.filter((function(t){return!1===a[t]}));case 8:case"end":return n.stop()}}),n)})))()},initBody:function(){this.replyTo?this.bodyVal=this.bodyWithSignature(this.selectedAlias,H(this.editorPlainText?Object(Y.e)(this.body):Object(Y.d)(this.body),this.replyTo.from[0],this.replyTo.dateInt,"top"===this.$store.getters.getPreference("reply-mode","top")).value).value:this.forwardFrom?this.bodyVal=this.bodyWithSignature(this.selectedAlias,H(this.editorPlainText?Object(Y.e)(this.body):Object(Y.d)(this.body),this.forwardFrom.from[0],this.forwardFrom.dateInt,"top"===this.$store.getters.getPreference("reply-mode","top")).value).value:this.bodyVal=this.bodyWithSignature(this.selectedAlias,this.bodyVal).value},recipientToRfc822:function(t){return t.email===t.label||""===t.label||0===t.email.search(/^[a-zA-Z]+:/)?t.email:'"'.concat(t.label,'" <').concat(t.email,">")},getMessageData:function(t){return{account:this.selectedAlias.id,aliasId:this.selectedAlias.aliasId,to:this.selectTo.map(this.recipientToRfc822).join(", "),cc:this.selectCc.map(this.recipientToRfc822).join(", "),bcc:this.selectBcc.map(this.recipientToRfc822).join(", "),draftId:t,subject:this.subjectVal,body:this.encrypt?Object(Y.c)(this.bodyVal):Object(Y.b)(this.bodyVal),attachments:this.attachments,messageId:this.replyTo?this.replyTo.databaseId:void 0,isHtml:!this.editorPlainText,requestMdn:this.requestMdn}},saveDraft:function(t){var n=this;return this.savingDraft=!0,this.draftsPromise=this.draftsPromise.then((function(e){var a=t(e);return e||a.subject||a.body||a.cc||a.bcc||a.to?n.draft(a):(A.a.debug("Nothing substantial to save, ignoring draft save"),n.savingDraft=!1,e)})).then((function(t){return n.canSaveDraft=!0,t})).catch(function(){var t=ge(regeneratorRuntime.mark((function t(e){var a;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return console.error("could not save draft",e),t.next=3,Object(nt.a)(e,(ye(a={},ve.a.getName(),(function(){return!1})),ye(a,"default",(function(){return!0})),a));case 3:t.sent||(n.canSaveDraft=!1);case 5:case"end":return t.stop()}}),t)})));return function(n){return t.apply(this,arguments)}}()).then((function(t){return n.savingDraft=!1,t})),this.draftsPromise},onInputChanged:function(){this.saveDraftDebounced(this.getMessageData)},onAddLocalAttachment:function(){this.bus.$emit("onAddLocalAttachment")},onAddCloudAttachment:function(){this.bus.$emit("onAddCloudAttachment")},onAddCloudAttachmentLink:function(){this.bus.$emit("onAddCloudAttachmentLink")},onAutocomplete:function(t){var n=this;void 0!==t&&""!==t&&xe(t).then((function(t){n.autocompleteRecipients=gn()("email")(n.autocompleteRecipients.concat(t))}))},onAttachmentsUploading:function(t){this.attachmentsPromise=this.attachmentsPromise.then((function(){return t})).catch((function(t){return A.a.error("could not upload attachments",{error:t})})).then((function(){return A.a.debug("attachments uploaded")}))},onMailvelopeLoaded:function(t){var n=this;return ge(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.encrypt=oe(n.body),n.mailvelope.available=!0,A.a.info("Mailvelope loaded",{encrypt:n.encrypt,isPgpgMessage:oe(n.body),keyRing:n.mailvelope.keyRing}),e.next=5,t.getKeyring();case 5:return n.mailvelope.keyRing=e.sent,e.next=8,n.checkRecipientsKeys();case 8:case"end":return e.stop()}}),e)})))()},onNewToAddr:function(t){this.onNewAddr(t,this.selectTo)},onNewCcAddr:function(t){this.onNewAddr(t,this.selectCc)},onNewBccAddr:function(t){this.onNewAddr(t,this.selectBcc)},onNewAddr:function(t,n){var e={label:t,email:t};this.newRecipients.push(e),n.push(e)},onSend:function(){var t=this;return ge(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!t.encrypt){n.next=4;break}return A.a.debug("get encrypted message from mailvelope"),n.next=4,t.$refs.mailvelopeEditor.pull();case 4:return t.state=we.UPLOADING,n.next=7,t.attachmentsPromise.then((function(){return t.state=we.SENDING})).then((function(){return t.draftsPromise})).then(t.getMessageData).then((function(n){return t.send(n)})).then((function(){return A.a.info("message sent")})).then((function(){return t.state=we.FINISHED})).catch(function(){var n=ge(regeneratorRuntime.mark((function n(e){var a;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return A.a.error("could not send message",{error:e}),n.next=3,Object(nt.a)(e,(ye(a={},Ae.a.getName(),(function(){return Object(hn.translate)("mail","No sent mailbox configured. Please pick one in the account settings.")})),ye(a,"default",(function(t){if(t&&t.toString)return t.toString()})),a));case 3:t.errorText=n.sent,t.state=we.ERROR;case 5:case"end":return n.stop()}}),n)})));return function(t){return n.apply(this,arguments)}}());case 7:e=t.$store.getters.getAccount(t.selectedAlias.id),parseInt(t.$route.params.mailboxId,10)===e.sentMailboxId&&setTimeout((function(){t.$store.dispatch("syncEnvelopes",{mailboxId:e.sentMailboxId,query:"",init:!1})}),500);case 9:case"end":return n.stop()}}),n)})))()},reset:function(){var t=this;this.draftsPromise=Promise.resolve(),this.selectTo=[],this.selectCc=[],this.selectBcc=[],this.subjectVal="",this.bodyVal="",this.attachments=[],this.errorText=void 0,this.state=we.EDITING,this.autocompleteRecipients=[],this.newRecipients=[],this.requestMdn=!1,this.setAlias(),this.initBody(),j.default.nextTick((function(){t.$refs.toLabel.$el.focus()}))},formatAliases:function(t){return t.name?"".concat(t.name," <").concat(t.emailAddress,">"):t.emailAddress},bodyWithSignature:function(t,n){return t&&t.signature?Object(Y.b)(n).append(Object(Y.b)("<br>--<br>")).append(Object(Y.d)(Object(Y.a)(t.signature))):Object(Y.b)(n)}}},Ie=a(1272),_e={insert:"head",singleton:!1},Te=(d()(Ie.a,_e),Ie.a.locals,Object(m.a)(ke,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.state===t.STATES.EDITING?e("div",{staticClass:"message-composer"},[e("div",{staticClass:"composer-fields mail-account"},[e("label",{staticClass:"from-label",attrs:{for:"from"}},[t._v("\n\t\t\t"+t._s(t.t("mail","From"))+"\n\t\t")]),t._v(" "),e("Multiselect",{attrs:{id:"from",options:t.aliases,label:"name","track-by":"selectId",searchable:!1,"hide-selected":!0,"custom-label":t.formatAliases,placeholder:t.t("mail","Select account"),"clear-on-select":!1},on:{keyup:t.onInputChanged},model:{value:t.selectedAlias,callback:function(n){t.selectedAlias=n},expression:"selectedAlias"}})],1),t._v(" "),e("div",{staticClass:"composer-fields"},[e("label",{staticClass:"to-label",attrs:{for:"to"}},[t._v("\n\t\t\t"+t._s(t.t("mail","To"))+"\n\t\t")]),t._v(" "),e("Multiselect",{ref:"toLabel",attrs:{id:"to",options:t.selectableRecipients,taggable:!0,label:"label","track-by":"email",multiple:!0,placeholder:t.t("mail","Contact or email address …"),"clear-on-select":!1,"show-no-options":!1,"preserve-search":!0},on:{keyup:t.onInputChanged,tag:t.onNewToAddr,"search-change":t.onAutocomplete},model:{value:t.selectTo,callback:function(n){t.selectTo=n},expression:"selectTo"}}),t._v(" "),t.showCC?t._e():e("a",{staticClass:"copy-toggle",attrs:{href:"#"},on:{click:function(n){n.preventDefault(),t.showCC=!0}}},[t._v("\n\t\t\t"+t._s(t.t("mail","+ Cc/Bcc"))+"\n\t\t")])],1),t._v(" "),t.showCC?e("div",{staticClass:"composer-fields"},[e("label",{staticClass:"cc-label",attrs:{for:"cc"}},[t._v("\n\t\t\t"+t._s(t.t("mail","Cc"))+"\n\t\t")]),t._v(" "),e("Multiselect",{attrs:{id:"cc",options:t.selectableRecipients,taggable:!0,label:"label","track-by":"email",multiple:!0,placeholder:t.t("mail",""),"clear-on-select":!1,"show-no-options":!1,"preserve-search":!0},on:{keyup:t.onInputChanged,tag:t.onNewCcAddr,"search-change":t.onAutocomplete},model:{value:t.selectCc,callback:function(n){t.selectCc=n},expression:"selectCc"}},[e("span",{attrs:{slot:"noOptions"},slot:"noOptions"},[t._v(t._s(t.t("mail","No contacts found.")))])])],1):t._e(),t._v(" "),t.showCC?e("div",{staticClass:"composer-fields"},[e("label",{staticClass:"bcc-label",attrs:{for:"bcc"}},[t._v("\n\t\t\t"+t._s(t.t("mail","Bcc"))+"\n\t\t")]),t._v(" "),e("Multiselect",{attrs:{id:"bcc",options:t.selectableRecipients,taggable:!0,label:"label","track-by":"email",multiple:!0,placeholder:t.t("mail",""),"show-no-options":!1,"preserve-search":!0},on:{keyup:t.onInputChanged,tag:t.onNewBccAddr,"search-change":t.onAutocomplete},model:{value:t.selectBcc,callback:function(n){t.selectBcc=n},expression:"selectBcc"}},[e("span",{attrs:{slot:"noOptions"},slot:"noOptions"},[t._v(t._s(t.t("mail","No contacts found.")))])])],1):t._e(),t._v(" "),e("div",{staticClass:"composer-fields"},[e("label",{staticClass:"subject-label hidden-visually",attrs:{for:"subject"}},[t._v("\n\t\t\t"+t._s(t.t("mail","Subject"))+"\n\t\t")]),t._v(" "),e("input",{directives:[{name:"model",rawName:"v-model",value:t.subjectVal,expression:"subjectVal"}],staticClass:"subject",attrs:{id:"subject",type:"text",name:"subject",autocomplete:"off",placeholder:t.t("mail","Subject …")},domProps:{value:t.subjectVal},on:{keyup:t.onInputChanged,input:function(n){n.target.composing||(t.subjectVal=n.target.value)}}})]),t._v(" "),t.noReply?e("div",{staticClass:"warning noreply-warning"},[t._v("\n\t\t"+t._s(t.t("mail","This message came from a noreply address so your reply will probably not be read."))+"\n\t")]):t._e(),t._v(" "),t.mailvelope.keysMissing.length?e("div",{staticClass:"warning noreply-warning"},[t._v("\n\t\t"+t._s(t.t("mail","The following recipients do not have a PGP key: {recipients}.",{recipients:t.mailvelope.keysMissing.join(", ")}))+"\n\t")]):t._e(),t._v(" "),e("div",{staticClass:"composer-fields"},[!t.encrypt&&t.editorPlainText?e("TextEditor",{key:"editor-plain",staticClass:"message-body",attrs:{name:"body",placeholder:t.t("mail","Write message …"),focus:t.isReply,bus:t.bus},on:{input:t.onInputChanged},model:{value:t.bodyVal,callback:function(n){t.bodyVal=n},expression:"bodyVal"}}):t.encrypt||t.editorPlainText?e("MailvelopeEditor",{ref:"mailvelopeEditor",attrs:{recipients:t.allRecipients,"quoted-text":t.body,"is-reply-or-forward":t.isReply||t.isForward},model:{value:t.bodyVal,callback:function(n){t.bodyVal=n},expression:"bodyVal"}}):e("TextEditor",{key:"editor-rich",staticClass:"message-body",attrs:{html:!0,name:"body",placeholder:t.t("mail","Write message …"),focus:t.isReply,bus:t.bus},on:{input:t.onInputChanged},model:{value:t.bodyVal,callback:function(n){t.bodyVal=n},expression:"bodyVal"}})],1),t._v(" "),e("div",{staticClass:"composer-actions"},[e("ComposerAttachments",{attrs:{bus:t.bus,"upload-size-limit":t.attachmentSizeLimit},on:{upload:t.onAttachmentsUploading},model:{value:t.attachments,callback:function(n){t.attachments=n},expression:"attachments"}}),t._v(" "),e("div",{staticClass:"composer-actions-right"},[e("p",{staticClass:"composer-actions-draft"},[t.canSaveDraft?!0===t.savingDraft?e("span",{attrs:{id:"draft-status"}},[t._v(t._s(t.t("mail","Saving draft …")))]):!1===t.savingDraft?e("span",{attrs:{id:"draft-status"}},[t._v(t._s(t.t("mail","Draft saved")))]):t._e():e("span",{attrs:{id:"draft-status"}},[t._v(t._s(t.t("mail","Can not save draft because this account does not have a drafts mailbox configured.")))])]),t._v(" "),e("Actions",[e("ActionButton",{attrs:{icon:"icon-upload"},on:{click:t.onAddLocalAttachment}},[t._v("\n\t\t\t\t\t"+t._s(t.t("mail","Upload attachment"))+"\n\t\t\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-folder"},on:{click:t.onAddCloudAttachment}},[t._v("\n\t\t\t\t\t"+t._s(t.t("mail","Add attachment from Files"))+"\n\t\t\t\t")]),t._v(" "),e("ActionButton",{attrs:{disabled:t.encrypt,icon:"icon-public"},on:{click:t.onAddCloudAttachmentLink}},[t._v("\n\t\t\t\t\t"+t._s(t.addShareLink)+"\n\t\t\t\t")]),t._v(" "),e("ActionCheckbox",{attrs:{checked:!t.encrypt&&!t.editorPlainText,disabled:t.encrypt},on:{check:function(n){t.editorMode="html"},uncheck:function(n){t.editorMode="plaintext"}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("mail","Enable formatting"))+"\n\t\t\t\t")]),t._v(" "),e("ActionCheckbox",{attrs:{checked:t.requestMdn},on:{check:function(n){t.requestMdn=!0},uncheck:function(n){t.requestMdn=!1}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("mail","Request a read receipt"))+"\n\t\t\t\t")]),t._v(" "),t.mailvelope.available?e("ActionCheckbox",{attrs:{checked:t.encrypt},on:{check:function(n){t.encrypt=!0},uncheck:function(n){t.encrypt=!1}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("mail","Encrypt message with Mailvelope"))+"\n\t\t\t\t")]):e("ActionLink",{attrs:{href:"https://www.mailvelope.com/",target:"_blank",icon:"icon-password"}},[t._v("\n\t\t\t\t\t"+t._s(t.t("mail","Looking for a way to encrypt your emails? Install the Mailvelope browser extension!"))+"\n\t\t\t\t")])],1),t._v(" "),e("div",[e("input",{staticClass:"submit-message send primary icon-confirm-white",attrs:{type:"submit",disabled:!t.canSend},domProps:{value:t.submitButtonTitle},on:{click:t.onSend}})])],1)],1)]):t.state===t.STATES.UPLOADING?e("Loading",{attrs:{hint:t.t("mail","Uploading attachments …"),role:"alert"}}):t.state===t.STATES.SENDING?e("Loading",{attrs:{hint:t.t("mail","Sending …"),role:"alert"}}):t.state===t.STATES.ERROR?e("div",{staticClass:"emptycontent",attrs:{role:"alert"}},[e("h2",[t._v(t._s(t.t("mail","Error sending your message")))]),t._v(" "),t.errorText?e("p",[t._v("\n\t\t"+t._s(t.errorText)+"\n\t")]):t._e(),t._v(" "),e("button",{staticClass:"button",on:{click:function(n){t.state=t.STATES.EDITING}}},[t._v("\n\t\t"+t._s(t.t("mail","Go back"))+"\n\t")]),t._v(" "),e("button",{staticClass:"button primary",on:{click:t.onSend}},[t._v("\n\t\t"+t._s(t.t("mail","Retry"))+"\n\t")])]):e("div",{staticClass:"emptycontent"},[e("h2",[t._v(t._s(t.t("mail","Message sent!")))]),t._v(" "),t.isReply?t._e():e("button",{staticClass:"button primary",on:{click:t.reset}},[t._v("\n\t\t"+t._s(t.t("mail","Write another message"))+"\n\t")])])}),[],!1,null,"3fcb09a1",null).exports),je=[":-(",":-/",":-\\",":-|",":'-(",":'-/",":'-\\",":'-|"],De=function(){return je[Math.floor(Math.random()*je.length)]},Ee=function(){var t=[Object(hn.translate)("mail","Could not load your message"),Object(hn.translate)("mail","Could not load the desired message"),Object(hn.translate)("mail","Could not load the message")];return t[Math.floor(Math.random()*t.length)]+" "+De()},Se=a(35);function Me(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,a)}return e}function Be(t){for(var n=1;n<arguments.length;n++){var e=null!=arguments[n]?arguments[n]:{};n%2?Me(Object(e),!0).forEach((function(n){Oe(t,n,e[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):Me(Object(e)).forEach((function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))}))}return t}function Oe(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function Re(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function Fe(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){Re(o,a,r,i,s,"next",t)}function s(t){Re(o,a,r,i,s,"throw",t)}i(void 0)}))}}var $e={name:"NewMessageDetail",components:{AppContentDetails:mn.a,Composer:Te,Error:Wt,Loading:Jt},data:function(){return{loading:!1,draft:void 0,original:void 0,originalBody:void 0,errorMessage:"",error:void 0,newDraftId:void 0}},computed:{composerData:function(){if(void 0!==this.draft)return A.a.info("todo: handle draft data",{draft:this.draft}),{to:this.draft.to,cc:this.draft.cc,bcc:this.draft.bcc,subject:this.draft.subject,body:this.draft.hasHtmlBody?Object(Y.b)(this.draft.body):Object(Y.c)(this.draft.body)};if(void 0!==this.$route.query.messageId){var t=this.original;if(A.a.debug("forwarding or replying to message",{message:t}),"reply"===this.$route.params.threadId)return A.a.debug("simple reply",{message:t}),{accountId:t.accountId,to:t.from,cc:[],subject:X(t.subject),body:this.originalBody,originalBody:this.originalBody,replyTo:t};if("replyAll"===this.$route.params.threadId){A.a.debug("replying to all",{original:this.original});var n=this.$store.getters.getAccount(t.accountId),e=K(t,{email:n.emailAddress,label:n.name});return{accountId:t.accountId,to:e.to,cc:e.cc,subject:X(t.subject),body:this.originalBody,originalBody:this.originalBody,replyTo:t}}return"asNew"===this.$route.params.threadId?(A.a.debug("composing as new",{original:this.original}),this.original.attachments.length&&Object(R.e)(Object(hn.translate)("mail","Attachments were not copied. Please add them manually.")),{accountId:t.accountId,to:t.to,cc:t.cc,subject:t.subject,body:this.originalBody,originalBody:this.originalBody}):{accountId:t.accountId,to:[],cc:[],subject:(r=t.subject,Z.some((function(t){return r.toLowerCase().startsWith("".concat(t,":"))}))?r:"Fwd: ".concat(r)),body:this.originalBody,originalBody:this.originalBody,forwardFrom:t}}var a,r;return A.a.debug("composing a new message or handling a mailto link",{threadId:this.$route.params.threadId}),0!==this.$route.params.accountId&&"0"!==this.$route.params.accountId&&(a=parseInt(this.$route.params.accountId,10)),{accountId:a,to:this.stringToRecipients(this.$route.query.to),cc:this.stringToRecipients(this.$route.query.cc),subject:this.$route.query.subject||"",body:this.$route.query.body?Object(Y.a)(this.$route.query.body):Object(Y.b)("")}}},watch:{$route:function(t,n){var e,a;"message"!==t.name||!this.draft||t.params.draftId!==parseInt(this.draft.databaseId,10)&&t.params.draftId!==this.newDraftId?(A.a.debug("the draft ID changed, we have to fetch the draft",{currentId:null!==(e=null==this||null===(a=this.draft)||void 0===a?void 0:a.databaseId)&&void 0!==e?e:"no draft currently loaded",newId:t.params.draftId}),this.fetchMessage()):A.a.debug("detected navigation to current (new) draft UID, not reloading")}},created:function(){this.fetchMessage()},methods:{stringToRecipients:function(t){return void 0===t?[]:[{label:t,email:t}]},fetchMessage:function(){return void 0!==this.$route.params.draftId?this.fetchDraftMessage(this.$route.params.draftId):void 0!==this.$route.query.messageId?this.fetchOriginalMessage(this.$route.query.messageId):void 0},fetchDraftMessage:function(t){var n=this;this.loading=!0,this.draft=void 0,this.error=void 0,this.errorMessage="",this.$store.dispatch("fetchMessage",t).then((function(e){if(e.databaseId===parseInt(n.$route.params.draftId,10)){if(n.draft=e,void 0===n.draft)return A.a.info("draft could not be found",{id:t}),n.errorMessage=Ee(),void(n.loading=!1);n.loading=!1}else A.a.debug("User navigated away, loaded draft won't be shown",{draft:e,draftId:n.$route.params.draftId})})).catch((function(e){A.a.error("could not load draft ".concat(t),{error:e}),e.isError&&(n.errorMessage=Object(hn.translate)("mail","Could not load your draft"),n.error=e,n.loading=!1)}))},fetchOriginalMessage:function(t){var n=this;return Fe(regeneratorRuntime.mark((function e(){var a,r,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.loading=!0,n.error=void 0,n.errorMessage="",A.a.debug("fetching original message ".concat(t)),e.prev=4,e.next=7,n.$store.dispatch("fetchMessage",t);case 7:if((a=e.sent).databaseId===parseInt(n.$route.query.messageId,10)){e.next=11;break}return A.a.debug("User navigated away, loaded original message won't be used",{message:a,messageId:a.databaseId,urlId:n.$route.query.messageId}),e.abrupt("return");case 11:if(A.a.debug("original message fetched",{message:a}),n.original=a,r=Object(Y.c)(a.body||""),!a.hasHtmlBody){e.next=20;break}return A.a.debug("original message has HTML body"),e.next=18,$.a.get(Object(tt.generateUrl)("/apps/mail/api/messages/{id}/html?plain=true",{id:t}));case 18:o=e.sent,r=Object(Y.b)(o.data);case 20:n.originalBody=r,e.next=27;break;case 23:e.prev=23,e.t0=e.catch(4),A.a.error("could not load original message "+t,{error:e.t0}),e.t0.isError&&(n.errorMessage=Object(hn.translate)("mail","Could not load original message"),n.error=e.t0,n.loading=!1);case 27:return e.prev=27,n.loading=!1,e.finish(27);case 30:case"end":return e.stop()}}),e,null,[[4,23,27,30]])})))()},saveDraft:function(t){var n=this;return Fe(regeneratorRuntime.mark((function e(){var a,r,o,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return void 0===t.draftId&&n.draft&&(A.a.debug("draft data does not have a draftId, adding one",{draft:n.draft,data:t,id:n.draft.databaseId}),t.draftId=n.draft.databaseId),a=Be(Be({},t),{},{body:t.isHtml?t.body.value:Object(Y.e)(t.body).value}),e.next=4,Object(Se.h)(t.account,a);case 4:return r=e.sent,o=r.id,n.$store.commit("removeEnvelope",{id:t.draftId}),n.$store.commit("removeMessage",{id:t.draftId}),e.next=10,n.$store.dispatch("fetchEnvelope",o);case 10:return i=n.$store.getters.getAccount(t.account),parseInt(n.$route.params.mailboxId,10)===i.draftsMailboxId&&(n.newDraftId=o,n.$router.replace({to:"message",params:{mailboxId:n.$route.params.mailboxId,threadId:n.$route.params.threadId,draftId:o}})),e.abrupt("return",o);case 13:case"end":return e.stop()}}),e)})))()},sendMessage:function(t){var n=this;return Fe(regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return A.a.debug("sending message",{data:t}),a=Be(Be({},t),{},{body:t.isHtml?t.body.value:Object(Y.e)(t.body).value}),e.next=4,Object(Se.j)(t.account,a);case 4:n.$store.commit("removeEnvelope",{id:t.draftId}),n.$store.commit("removeMessage",{id:t.draftId});case 6:case"end":return e.stop()}}),e)})))()}}},Pe=Object(m.a)($e,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("AppContentDetails",[t.loading?e("Loading"):t.error?e("Error",{attrs:{error:t.error&&t.error.message?t.error.message:t.t("mail","Not found"),message:t.errorMessage,data:t.error,role:"alert"}}):e("Composer",{attrs:{"from-account":t.composerData.accountId,to:t.composerData.to,cc:t.composerData.cc,bcc:t.composerData.bcc,subject:t.composerData.subject,body:t.composerData.body,draft:t.saveDraft,send:t.sendMessage,"reply-to":t.composerData.replyTo,"forward-from":t.composerData.forwardFrom}})],1)}),[],!1,null,null,null).exports,Ne={name:"NoMessageSelected",components:{AppContentDetails:mn.a}},qe=a(1273),Le={insert:"head",singleton:!1},ze=(d()(qe.a,Le),qe.a.locals,Object(m.a)(Ne,(function(){var t=this.$createElement,n=this._self._c||t;return n("AppContentDetails",[n("div",{staticClass:"icon icon-mail"}),this._v(" "),n("h2",[this._v(this._s(this.t("mail","No message selected")))]),this._v(" "),n("p")])}),[],!1,null,"0f812b2d",null).exports),Ue=a(1367),Ge=a(627),We=a(1274),Ve=a.n(We),Ye=a(536);function He(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}var Qe={name:"RecipientBubble",components:{UserBubble:Ve.a},props:{email:{type:String,required:!0},label:{type:String,required:!0}},data:function(){return{avatarUrl:void 0}},computed:{avatarUrlAbsolute:function(){if(this.avatarUrl)return this.avatarUrl.startsWith("http")?this.avatarUrl:window.location.protocol+"//"+window.location.host+Object(tt.generateUrl)(this.avatarUrl)}},mounted:function(){var t,n=this;return(t=regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,Object(Ye.a)(n.email);case 3:n.avatarUrl=t.sent,t.next=9;break;case 6:t.prev=6,t.t0=t.catch(0),console.debug("no avatar for "+n.email,{error:t.t0});case 9:case"end":return t.stop()}}),t,null,[[0,6]])})),function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){He(o,a,r,i,s,"next",t)}function s(t){He(o,a,r,i,s,"throw",t)}i(void 0)}))})()},methods:{onClick:function(){this.$router.push({name:"message",params:{mailboxId:"priority",threadId:"new"},query:{to:this.email}})}}},Ke=a(1275),Je={insert:"head",singleton:!1},Xe=(d()(Ke.a,Je),Ke.a.locals,Object(m.a)(Qe,(function(){var t=this.$createElement,n=this._self._c||t;return n("UserBubble",{attrs:{"display-name":this.label,"avatar-image":this.avatarUrlAbsolute},on:{click:this.onClick}},[n("span",{staticClass:"user-bubble-email"},[this._v(this._s(this.email))])])}),[],!1,null,"06e00222",null).exports),Ze=a(1276),ta=a.n(Ze),na=a(1278),ea=a(719),aa=a.n(ea),ra=new na.Client({baseUrl:Object(tt.generateRemoteUrl)("dav/calendars"),xmlNamespaces:{"DAV:":"d","urn:ietf:params:xml:ns:caldav":"c","http://apple.com/ns/ical/":"aapl","http://owncloud.org/ns":"oc","http://calendarserver.org/ns/":"cs"}}),oa=["{DAV:}displayname","{urn:ietf:params:xml:ns:caldav}calendar-description","{urn:ietf:params:xml:ns:caldav}calendar-timezone","{http://apple.com/ns/ical/}calendar-order","{http://apple.com/ns/ical/}calendar-color","{urn:ietf:params:xml:ns:caldav}supported-calendar-component-set","{http://owncloud.org/ns}calendar-enabled","{DAV:}acl","{DAV:}owner","{http://owncloud.org/ns}invite"],ia=function(){var t=Object(tt.generateRemoteUrl)("dav/calendars")+"/"+Object(Bn.getCurrentUser)().uid+"/";return ra.propFind(t,oa,1,{requesttoken:Object(Bn.getRequestToken)()}).then((function(t){var n=[];return t.body.forEach((function(t){if(!(t.propStat.length<1)&&200===function(t){return parseInt(t.split(" ")[1])}(t.propStat[0].status)){var e=function(t){!function(t){var n=!1,e=t["{DAV:}acl"];if(e)for(var a=0;a<e.length;a++){var r=e[a].getElementsByTagNameNS("DAV:","href");if(0!==r.length)r=r[0].textContent,e[a].getElementsByTagNameNS("DAV:","write").length>0&&(n=!0)}t.canWrite=n}(t);for(var n={displayname:t["{DAV:}displayname"],color:t["{http://apple.com/ns/ical/}calendar-color"],order:t["{http://apple.com/ns/ical/}calendar-order"],components:{vevent:!1},writable:t.canWrite},e=t["{urn:ietf:params:xml:ns:caldav}supported-calendar-component-set"]||[],a=0;a<e.length;a++){var r=e[a].attributes.getNamedItem("name").textContent.toLowerCase();Object.hasOwnProperty.call(n.components,r)&&(n.components[r]=!0)}return n}(t.propStat[0].properties);e&&e.components.vevent&&!0===e.writable&&(e.url=t.href,n.push(e))}})),n}))},sa=function(){for(var t="",n=0;n<7;n++)t+=Math.random().toString(36).substring(7);return t},la=function(t){return function(n){A.a.debug("importing events into calendar",{url:t,data:n});var e=[],a=function(t){var n=[],e={},a=aa.a.parse(t),r=new aa.a.Component(a);r.getAllSubcomponents("vtimezone").forEach((function(t){return n.push(t)}));var o=["vevent","vjournal","vtodo"];o.forEach((function(t){var n=r.getAllSubcomponents(t);e[t]={},n.forEach((function(n){var a=n.getFirstPropertyValue("uid");e[t][a]=e[t][a]||[],e[t][a].push(n)}))}));var i=[];return o.forEach((function(t){for(var a in i[t]=[],e[t]){var r=e[t][a],o=(l=void 0,(l=new aa.a.Component(["vcalendar",[],[]])).updatePropertyWithValue("prodid","-//"+OC.theme.name+" Mail"),l);for(var s in n.forEach(o.addSubcomponent.bind(o)),r)o.addSubcomponent(r[s]);i[t].push(o.toString())}var l})),{name:r.getFirstPropertyValue("x-wr-calname"),color:r.getFirstPropertyValue("x-apple-calendar-color"),split:i}}(n);return["vevent","vjournal","vtodo"].forEach((function(n){for(var r in a.split[n]){var o=a.split[n][r];A.a.info("importing event component",{component:o}),e.push(Promise.resolve($.a.put(t+sa()+".ics",o,{headers:{"Content-Type":"text/calendar; charset=utf-8"}})))}})),Promise.all(e)}},ca=a(482),da=a.n(ca),ua={name:"CalendarImport",components:{Actions:M.a,ActionButton:O.a},props:{calendars:{type:Array,required:!0},handler:{type:Function,required:!0}},computed:{cals:function(){var t=this;return this.calendars.map((function(n){return t.$set(n,"loading",!1),n}))}},methods:{onImport:function(t){t.loading=!0,this.handler(t).catch(console.error.bind(this)).then((function(){t.loading=!1}))}}},pa=Object(m.a)(ua,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.calendars.length?e("Actions",{attrs:{"default-icon":"icon-add"}},t._l(t.cals,(function(n,a){return e("ActionButton",{key:a,attrs:{icon:n.loading?"icon-loading-small":"icon-add"},on:{click:function(e){return t.onImport(n)}}},[t._v("\n\t\t"+t._s(t.t("mail","Import into {calendar}",{calendar:n.displayname}))+"\n\t")])})),1):t._e()}),[],!1,null,"7c52d704",null).exports,ma={name:"EventReservation",components:{CalendarImport:pa},props:{data:{type:Object,required:!0},calendars:{type:Array,required:!0},messageId:{type:String,required:!0}},computed:{eventName:function(){return this.data.reservationFor.name},time:function(){if("startDate"in this.data.reservationFor)return G()(this.data.reservationFor.startDate).format("LT")},date:function(){if("startDate"in this.data.reservationFor)return G()(this.data.reservationFor.startDate).format("L")},location:function(){if("location"in this.data.reservationFor&&"name"in this.data.reservationFor.location)return this.data.reservationFor.location.name},canImport:function(){return"startDate"in this.data.reservationFor}},methods:{getEndDateTime:function(t){return"endDate"in this.data.reservationFor?G()(this.data.reservationFor.endDate).format():G()("2019-10-22T12:00:00Z").add(2,"hours").format()},handleImport:function(n){var e=new aa.a.Component("VEVENT");e.updatePropertyWithValue("SUMMARY",this.eventName);var a=G()(this.data.reservationFor.startDate).format();e.updatePropertyWithValue("DTSTART",aa.a.Time.fromDateTimeString(a)),e.updatePropertyWithValue("DTEND",aa.a.Time.fromDateTimeString(this.getEndDateTime(this.data.reservationFor))),"location"in this.data.reservationFor&&(e.updatePropertyWithValue("LOCATION",this.data.reservationFor.location.name),"geo"in this.data.reservationFor.location&&e.updatePropertyWithValue("GEO","".concat(this.data.reservationFor.location.geo.latitude,";").concat(this.data.reservationFor.location.geo.longitude))),e.updatePropertyWithValue("PRODID","Nextcloud Mail"),e.updatePropertyWithValue("UID",da()(this.messageId+this.eventName));var r=new aa.a.Component("VCALENDAR");return r.addSubcomponent(e),A.a.debug("generated calendar event from event reservation data",{ical:r.toString()}),la(n.url)(r.toString()).then((function(){A.a.debug("event successfully imported"),Object(R.d)(t("mail","Event imported into {calendar}",{calendar:n.displayname}))})).catch((function(n){A.a.error("Could not import event",{error:n}),Object(R.b)(t("mail","Could not create event"))}))}}},ha=a(1279),Aa={insert:"head",singleton:!1},va=(d()(ha.a,Aa),ha.a.locals,Object(m.a)(ma,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"reservation"},[e("div",{staticClass:"event"},[e("div",{staticClass:"event-name"},[t._v("\n\t\t\t"+t._s(t.eventName)+"\n\t\t")]),t._v(" "),t.location?e("div",{staticClass:"venue"},[t._v("\n\t\t\t"+t._s(t.location)+"\n\t\t")]):t._e(),t._v(" "),t.date?e("div",[t._v("\n\t\t\t"+t._s(t.date)+"\n\t\t")]):t._e(),t._v(" "),t.time?e("div",[t._v("\n\t\t\t"+t._s(t.time)+"\n\t\t")]):t._e()]),t._v(" "),t.canImport?e("CalendarImport",{attrs:{calendars:t.calendars,handler:t.handleImport}}):t._e()],1)}),[],!1,null,"b2f6d4c0",null).exports),fa=a(1353),ga=a(1057),ba={name:"FlightReservation",components:{AirplaneIcon:fa.a,ArrowIcon:ga.a,CalendarImport:pa},props:{data:{type:Object,required:!0},calendars:{type:Array,required:!0},messageId:{type:String,required:!0}},computed:{departureTime:function(){if("departureTime"in this.data.reservationFor)return G()(this.data.reservationFor.departureTime["@value"]).format("LT")},departureDate:function(){if("departureTime"in this.data.reservationFor)return G()(this.data.reservationFor.departureTime["@value"]).format("L")},arrivalTime:function(){if("arrivalTime"in this.data.reservationFor)return G()(this.data.reservationFor.arrivalTime["@value"]).format("LT")},arrivalDate:function(){if("arrivalTime"in this.data.reservationFor)return G()(this.data.reservationFor.arrivalTime["@value"]).format("L")},flightNumber:function(){return this.data.reservationFor.airline.iataCode+this.data.reservationFor.flightNumber},reservation:function(){if("reservationNumber"in this.data)return this.data.reservationNumber},canImport:function(){return"departureTime"in this.data.reservationFor&&"arrivalTime"in this.data.reservationFor}},methods:{handleImport:function(n){var e=new aa.a.Component("VEVENT");e.updatePropertyWithValue("SUMMARY",t("mail","Flight {flightNr} from {depAirport} to {arrAirport}",{flightNr:this.flightNumber,depAirport:this.data.reservationFor.departureAirport.iataCode,arrAirport:this.data.reservationFor.arrivalAirport.iataCode}));var a=G()(this.data.reservationFor.departureTime["@value"]).format();e.updatePropertyWithValue("DTSTART",aa.a.Time.fromDateTimeString(a));var r=G()(this.data.reservationFor.arrivalTime["@value"]).format();e.updatePropertyWithValue("DTEND",aa.a.Time.fromDateTimeString(r)),e.updatePropertyWithValue("PRODID","Nextcloud Mail"),e.updatePropertyWithValue("UID",da()(this.messageId+this.flightNumber));var o=new aa.a.Component("VCALENDAR");return o.addSubcomponent(e),A.a.debug("generated calendar event from flight reservation data",{ical:o.toString()}),la(n.url)(o.toString()).then((function(){A.a.debug("event successfully imported"),Object(R.d)(t("mail","Event imported into {calendar}",{calendar:n.displayname}))})).catch((function(n){A.a.error("Could not import event",{error:n}),Object(R.b)(t("mail","Could not create event"))}))}}},Ca=a(1280),ya={insert:"head",singleton:!1},xa=(d()(Ca.a,ya),Ca.a.locals,Object(m.a)(ba,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"reservation"},[e("div",{staticClass:"departure"},[e("div",{staticClass:"iata"},[t._v("\n\t\t\t"+t._s(t.data.reservationFor.departureAirport.iataCode)+"\n\t\t")]),t._v(" "),e("div",{staticClass:"airport"},[t._v("\n\t\t\t"+t._s(t.data.reservationFor.departureAirport.name)+"\n\t\t")]),t._v(" "),t.departureDate?e("div",[t._v("\n\t\t\t"+t._s(t.departureDate)+"\n\t\t")]):t._e(),t._v(" "),t.departureTime?e("div",[t._v("\n\t\t\t"+t._s(t.departureTime)+"\n\t\t")]):t._e()]),t._v(" "),e("div",{staticClass:"connection"},[e("div",[e("AirplaneIcon",{attrs:{title:t.t("mail","Airplane")}})],1),t._v(" "),e("div",[t._v(t._s(t.flightNumber))]),t._v(" "),t.reservation?e("div",[t._v("\n\t\t\t"+t._s(t.t("mail","Reservation {id}",{id:t.reservation}))+"\n\t\t")]):e("div",[e("ArrowIcon",{attrs:{decorative:""}})],1)]),t._v(" "),e("div",{staticClass:"arrival"},[e("div",{staticClass:"iata"},[t._v("\n\t\t\t"+t._s(t.data.reservationFor.arrivalAirport.iataCode)+"\n\t\t")]),t._v(" "),e("div",{staticClass:"airport"},[t._v("\n\t\t\t"+t._s(t.data.reservationFor.arrivalAirport.name)+"\n\t\t")]),t._v(" "),t.arrivalDate?e("div",[t._v("\n\t\t\t"+t._s(t.arrivalDate)+"\n\t\t")]):t._e(),t._v(" "),t.arrivalTime?e("div",[t._v("\n\t\t\t"+t._s(t.arrivalTime)+"\n\t\t")]):t._e()]),t._v(" "),e("CalendarImport",{attrs:{calendars:t.calendars,handler:t.handleImport}})],1)}),[],!1,null,"670645fc",null).exports),wa=a(1354),ka={name:"TrainReservation",components:{ArrowIcon:ga.a,CalendarImport:pa,TrainIcon:wa.a},props:{data:{type:Object,required:!0},calendars:{type:Array,required:!0},messageId:{type:String,required:!0}},computed:{departureTime:function(){if("departureTime"in this.data.reservationFor)return G()(this.data.reservationFor.departureTime).format("LT")},departureDate:function(){return"departureTime"in this.data.reservationFor?G()(this.data.reservationFor.departureTime).format("L"):"departureDay"in this.data.reservationFor?G()(this.data.reservationFor.departureDay).format("L"):void 0},arrivalTime:function(){if("arrivalTime"in this.data.reservationFor)return G()(this.data.reservationFor.arrivalTime).format("LT")},arrivalDate:function(){if("arrivalTime"in this.data.reservationFor)return G()(this.data.reservationFor.arrivalTime).format("L")},trainNumber:function(){return this.data.reservationFor.trainNumber},canImport:function(){return"departureTime"in this.data.reservationFor&&"arrivalTime"in this.data.reservationFor||"departureDay"in this.data.reservationFor}},methods:{handleImport:function(n){var e=new aa.a.Component("VEVENT");if("trainNumber"in this.data.reservationFor?e.updatePropertyWithValue("SUMMARY",t("mail","{trainNr} from {depStation} to {arrStation}",{trainNr:this.data.reservationFor.trainNumber,depStation:this.data.reservationFor.departureStation.name,arrStation:this.data.reservationFor.arrivalStation.name})):e.updatePropertyWithValue("SUMMARY",t("mail","Train from {depStation} to {arrStation}",{depStation:this.data.reservationFor.departureStation.name,arrStation:this.data.reservationFor.arrivalStation.name})),"departureTime"in this.data.reservationFor&&"arrivalTime"in this.data.reservationFor){var a=G()(this.data.reservationFor.departureTime).format();e.updatePropertyWithValue("DTSTART",aa.a.Time.fromDateTimeString(a));var r=G()(this.data.reservationFor.arrivalTime).format();e.updatePropertyWithValue("DTEND",aa.a.Time.fromDateTimeString(r))}else if("departureDay"in this.data.reservationFor){var o=G()(this.data.reservationFor.departureDay).format();e.updatePropertyWithValue("DTSTART",aa.a.Time.fromDateTimeString(o))}e.updatePropertyWithValue("PRODID","Nextcloud Mail"),e.updatePropertyWithValue("UID",da()(this.messageId+this.departureTime));var i=new aa.a.Component("VCALENDAR");return i.addSubcomponent(e),A.a.debug("generated calendar event from train reservation data",{ical:i.toString()}),la(n.url)(i.toString()).then((function(){A.a.debug("event successfully imported"),Object(R.d)(t("mail","Event imported into {calendar}",{calendar:n.displayname}))})).catch((function(n){A.a.error("Could not import event",{error:n}),Object(R.b)(t("mail","Could not create event"))}))}}},Ia=a(1281),_a={insert:"head",singleton:!1},Ta=(d()(Ia.a,_a),Ia.a.locals,Object(m.a)(ka,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"reservation"},[e("div",{staticClass:"departure"},[e("div",{staticClass:"station"},[t._v("\n\t\t\t"+t._s(t.data.reservationFor.departureStation.name)+"\n\t\t")]),t._v(" "),t.departureDate?e("div",[t._v("\n\t\t\t"+t._s(t.departureDate)+"\n\t\t")]):t._e(),t._v(" "),t.departureTime?e("div",[t._v("\n\t\t\t"+t._s(t.departureTime)+"\n\t\t")]):t._e()]),t._v(" "),e("div",{staticClass:"connection"},[e("div",[e("TrainIcon",{attrs:{title:t.t("mail","Train")}})],1),t._v(" "),e("div",[t._v(t._s(t.trainNumber))]),t._v(" "),e("div",[e("ArrowIcon",{attrs:{decorative:""}})],1)]),t._v(" "),e("div",{staticClass:"arrival"},[e("div",{staticClass:"station"},[t._v("\n\t\t\t"+t._s(t.data.reservationFor.arrivalStation.name)+"\n\t\t")]),t._v(" "),t.arrivalDate?e("div",[t._v("\n\t\t\t"+t._s(t.arrivalDate)+"\n\t\t")]):t._e(),t._v(" "),t.arrivalTime?e("div",[t._v("\n\t\t\t"+t._s(t.arrivalTime)+"\n\t\t")]):t._e()]),t._v(" "),t.canImport?e("CalendarImport",{attrs:{calendars:t.calendars,handler:t.handleImport}}):t._e()],1)}),[],!1,null,"1eebd676",null).exports),ja=ta()(ia),Da={name:"Itinerary",components:{EventReservation:va,FlightReservation:xa,TrainReservation:Ta},props:{entries:{type:Array,required:!0},messageId:{type:String,required:!0}},data:function(){return{calendars:[]}},mounted:function(){var t=this;ja().then((function(n){return t.calendars=n})).catch((function(t){return A.a.error("Could not load calendars",{error:t})}))}},Ea=Object(m.a)(Da,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",[t._l(t.entries,(function(n,a){return["EventReservation"===n["@type"]?e("EventReservation",{key:a,attrs:{data:n,calendars:t.calendars,"message-id":t.messageId}}):"FlightReservation"===n["@type"]?e("FlightReservation",{key:a,attrs:{data:n,calendars:t.calendars,"message-id":t.messageId}}):"TrainReservation"===n["@type"]?e("TrainReservation",{key:a,attrs:{data:n,calendars:t.calendars,"message-id":t.messageId}}):e("span",{key:a},[t._v(t._s(t.t("mail","Itinerary for {type} is not supported yet",{type:n["@type"]})))])]}))],2)}),[],!1,null,null,null).exports,Sa=a(1282),Ma=a(1283),Ba={name:"MessageAttachment",components:{PopoverMenu:a.n(Ma).a},mixins:[Sa.mixin],props:{id:{type:String,required:!0},fileName:{type:String,default:Object(hn.translate)("mail","Unnamed"),required:!1},url:{type:String,required:!0},size:{type:Number,required:!0},mime:{type:String,required:!0},mimeUrl:{type:String,required:!0},isImage:{type:Boolean,default:!1},isCalendarEvent:{type:Boolean,default:!1}},data:function(){return{savingToCloud:!1,loadingCalendars:!1,calendars:[],showCalendarPopover:!1}},computed:{name:function(){return"message/rfc822"===this.mime?Object(hn.translate)("mail","Embedded message"):this.fileName},label:function(){return"message/rfc822"===this.mime?Object(hn.translate)("mail","Embedded message")+" ("+Object(On.formatFileSize)(this.size)+")":this.fileName+" ("+Object(On.formatFileSize)(this.size)+")"},calendarMenuEntries:function(){var t=this;return this.calendars.map((function(n){return{icon:"icon-add",text:n.displayname,action:t.importCalendar(n.url)}}))}},methods:{humanReadable:function(t){return Object(On.formatFileSize)(t)},saveToCloud:function(){var t=this,n=this.$route.params.threadId;return Object(R.a)(Object(hn.translate)("mail","Choose a folder to store the attachment in")).setMultiSelect(!1).addMimeTypeFilter("httpd/unix-directory").setModal(!0).setType(1).allowDirectories(!0).build().pick().then((function(n){return t.savingToCloud=!0,n})).then(function(t,n){return function(e){return Jn(t,n,e)}}(n,this.id)).then((function(){return A.a.info("saved")})).catch((function(t){return A.a.error("not saved",{error:t})})).then((function(){return t.savingToCloud=!1}))},download:function(){window.location=this.url},loadCalendars:function(){var t=this;this.loadingCalendars=!0,ia().then((function(n){t.calendars=n,t.showCalendarPopover=!0,t.loadingCalendars=!1}))},closeCalendarPopover:function(){this.showCalendarPopover=!1},importCalendar:function(t){var n=this;return function(){(function(t){return $.a.get(t).then((function(t){return t.data}))})(n.url).then(la(t)).then((function(){return A.a.info("calendar imported")})).catch((function(t){return A.a.error("import error",{error:t})})).then((function(){return n.showCalendarPopover=!1}))}}}},Oa=a(1284),Ra={insert:"head",singleton:!1},Fa=(d()(Oa.a,Ra),Oa.a.locals,{name:"MessageAttachments",components:{MessageAttachment:Object(m.a)(Ba,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"attachment",on:{click:t.download}},[t.isImage?e("img",{staticClass:"mail-attached-image",attrs:{src:t.url}}):t._e(),t._v(" "),e("img",{staticClass:"attachment-icon",attrs:{src:t.mimeUrl}}),t._v(" "),e("span",{staticClass:"attachment-name",attrs:{title:t.label}},[t._v(t._s(t.name)+"\n\t\t"),e("span",{staticClass:"attachment-size"},[t._v("("+t._s(t.humanReadable(t.size))+")")])]),t._v(" "),t.isCalendarEvent?e("button",{staticClass:"button attachment-import calendar",class:{"icon-add":!t.loadingCalendars,"icon-loading-small":t.loadingCalendars},attrs:{disabled:t.loadingCalendars,title:t.t("mail","Import into calendar")},on:{click:function(n){return n.stopPropagation(),t.loadCalendars(n)}}}):t._e(),t._v(" "),e("button",{staticClass:"button icon-download attachment-download",attrs:{title:t.t("mail","Download attachment")}}),t._v(" "),e("button",{staticClass:"attachment-save-to-cloud",class:{"icon-folder":!t.savingToCloud,"icon-loading-small":t.savingToCloud},attrs:{disabled:t.savingToCloud,title:t.t("mail","Save to Files")},on:{click:function(n){return n.stopPropagation(),t.saveToCloud(n)}}}),t._v(" "),e("div",{directives:[{name:"on-click-outside",rawName:"v-on-click-outside",value:t.closeCalendarPopover,expression:"closeCalendarPopover"}],staticClass:"popovermenu bubble attachment-import-popover hidden",class:{open:t.showCalendarPopover}},[e("PopoverMenu",{attrs:{menu:t.calendarMenuEntries}})],1)])}),[],!1,null,"473b0a1e",null).exports},props:{envelope:{required:!0,type:Object},attachments:{type:Array,required:!0}},data:function(){return{savingToCloud:!1}},computed:{moreThanOne:function(){return this.attachments.length>1},zipUrl:function(){return Object(tt.generateUrl)("/apps/mail/api/messages/{id}/attachments",{id:this.envelope.databaseId})}},methods:{saveAll:function(){var n=this,e=Object(R.a)(t("mail","Choose a folder to store the attachments in")).setMultiSelect(!1).addMimeTypeFilter("httpd/unix-directory").setModal(!0).setType(1).allowDirectories(!0).build(),a=this.$route.params.threadId;return e.pick().then((function(t){return n.savingToCloud=!0,t})).then(function(t){return function(n){return function(t,n){return Jn(t,0,n)}(t,n)}}(a)).then((function(){return A.a.info("saved")})).catch((function(t){return A.a.error("not saved",{error:t})})).then((function(){return n.savingToCloud=!1}))},downloadZip:function(){window.open(this.zipUrl),window.focus(),window.location=this.zipUrl}}}),$a=a(1285),Pa={insert:"head",singleton:!1},Na=(d()($a.a,Pa),$a.a.locals,Object(m.a)(Fa,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"mail-message-attachments"},[e("div",{staticClass:"attachments"},t._l(t.attachments,(function(t){return e("MessageAttachment",{key:t.id,attrs:{id:t.id,"file-name":t.fileName,size:t.size,url:t.downloadUrl,"is-image":t.isImage,"is-calendar-event":t.isCalendarEvent,mime:t.mime,"mime-url":t.mimeUrl}})})),1),t._v(" "),t.moreThanOne?e("p",{staticClass:"attachments-button-wrapper"},[e("button",{staticClass:"attachments-save-to-cloud",class:{"icon-folder":!t.savingToCloud,"icon-loading-small":t.savingToCloud},attrs:{disabled:t.savingToCloud},on:{click:t.saveAll}},[t._v("\n\t\t\t"+t._s(t.t("mail","Save all to Files"))+"\n\t\t")]),t._v(" "),e("button",{staticClass:"attachments-save-to-cloud icon-folder",on:{click:t.downloadZip}},[t._v("\n\t\t\t"+t._s(t.t("mail","Download Zip"))+"\n\t\t")])]):t._e()])}),[],!1,null,null,null).exports);function qa(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}var La={name:"MdnRequest",props:{message:{required:!0,type:Object}},data:function(){return{hasMdnRequest:this.message.dispositionNotificationTo&&this.message.dispositionNotificationTo.length>0,loading:!1}},computed:{mdnSent:function(){return this.message.flags.mdnsent}},methods:{sendMdn:function(){var n,e=this;return(n=regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e.loading=!0,A.a.debug("send return receipt"),n.prev=2,n.next=5,Object(Se.i)(e.message.databaseId);case 5:e.$store.commit("flagEnvelope",{envelope:e.message,flag:"mdnsent",value:!0}),n.next=12;break;case 8:n.prev=8,n.t0=n.catch(2),A.a.error("could not send mdn",n.t0),Object(R.b)(t("mail","Could not send mdn"));case 12:e.loading=!1;case 13:case"end":return n.stop()}}),n,null,[[2,8]])})),function(){var t=this,e=arguments;return new Promise((function(a,r){var o=n.apply(t,e);function i(t){qa(o,a,r,i,s,"next",t)}function s(t){qa(o,a,r,i,s,"throw",t)}i(void 0)}))})()}}},za=a(1286),Ua={insert:"head",singleton:!1},Ga=(d()(za.a,Ua),za.a.locals,Object(m.a)(La,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.hasMdnRequest&&!t.mdnSent?e("div",{staticClass:"mail-message-has-mdn-request"},[t._v("\n\t"+t._s(t.t("mail","The sender of this message has asked to be notified when you read this message."))+"\n\t"),e("button",{attrs:{disabled:t.loading},on:{click:t.sendMdn}},[t._v("\n\t\t"+t._s(t.t("mail","Notify the sender"))+"\n\t")])]):t.mdnSent?e("div",{staticClass:"mail-message-has-mdn-request"},[t._v("\n\t"+t._s(t.t("mail","You sent a read confirmation to the sender of this message."))+"\n")]):t._e()}),[],!1,null,"3bf60f28",null).exports);function Wa(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}var Va={name:"MessageEncryptedBody",components:{MdnRequest:Ga},props:{body:{type:String,required:!0},from:{type:String,required:!1,default:void 0},message:{required:!0,type:Object}},data:function(){return{mailvelope:!1}},mounted:function(){var t,n=this;return(t=regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,he();case 2:n.mailvelope=t.sent,n.mailvelope.createDisplayContainer("#mail-content",n.body,void 0,{senderAddress:n.from});case 4:case"end":return t.stop()}}),t)})),function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){Wa(o,a,r,i,s,"next",t)}function s(t){Wa(o,a,r,i,s,"throw",t)}i(void 0)}))})()}},Ya=a(1287),Ha={insert:"head",singleton:!1},Qa=(d()(Ya.a,Ha),Ya.a.locals,Object(m.a)(Va,(function(){var t=this.$createElement,n=this._self._c||t;return n("div",[this.mailvelope?n("div",{attrs:{id:"mail-content"}},[n("MdnRequest",{attrs:{message:this.message}})],1):n("span",[this._v(this._s(this.t("mail","This message is encrypted with PGP. Install Mailvelope to decrypt it.")))])])}),[],!1,null,"812ccd96",null).exports),Ka=a(1288),Ja=a(1357),Xa=a(979);function Za(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function tr(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){Za(o,a,r,i,s,"next",t)}function s(t){Za(o,a,r,i,s,"throw",t)}i(void 0)}))}}var nr=new Ja.a,er={name:"MessageHTMLBody",components:{MdnRequest:Ga,Actions:M.a,ActionButton:O.a},props:{url:{type:String,required:!0},fullHeight:{type:Boolean,required:!1,default:!1},message:{required:!0,type:Object}},data:function(){return{loading:!0,hasBlockedContent:!1,isSenderTrusted:this.message.isSenderTrusted}},beforeMount:function(){nr.on("beforeprint",this.onBeforePrint),nr.on("afterprint",this.onAfterPrint)},mounted:function(){Object(Ka.iframeResizer)({},this.$refs.iframe)},beforeDestroy:function(){nr.off("beforeprint",this.onBeforePrint),nr.off("afterprint",this.onAfterPrint),this.$refs.iframe.iFrameResizer.close()},methods:{getIframeDoc:function(){var t=this.$refs.iframe;return t.contentDocument||t.contentWindow.document},onMessageFrameLoad:function(){var t=this.getIframeDoc();this.hasBlockedContent=t.querySelectorAll("[data-original-src]").length>0||t.querySelectorAll("[data-original-style]").length>0,this.loading=!1,this.isSenderTrusted&&this.displayIframe()},onAfterPrint:function(){this.$refs.iframe.style.setProperty("height","")},onBeforePrint:function(){this.$refs.iframe.style.setProperty("height","".concat(this.getIframeDoc().body.scrollHeight,"px"),"important")},displayIframe:function(){var t=this.getIframeDoc();A.a.debug("showing external images"),t.querySelectorAll("[data-original-src]").forEach((function(t){t.style.display=null,t.setAttribute("src",t.getAttribute("data-original-src"))})),t.querySelectorAll("[data-original-style]").forEach((function(t){return t.setAttribute("style",t.getAttribute("data-original-style"))})),this.hasBlockedContent=!1},onShowBlockedContent:function(){var t=this;return tr(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.displayIframe(),n.next=3,Object(Xa.b)(t.message.from[0].email,"individual",!0);case 3:case"end":return n.stop()}}),n)})))()},getDomain:function(){return this.message.from[0].email.split("@").pop()},onShowBlockedContentForDomain:function(){var t=this;return tr(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.displayIframe(),n.next=3,Object(Xa.b)(t.getDomain(),"domain",!0);case 3:case"end":return n.stop()}}),n)})))()}}},ar=a(1291),rr={insert:"head",singleton:!1},or=(d()(ar.a,rr),ar.a.locals,Object(m.a)(er,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{attrs:{id:"mail-content"}},[e("MdnRequest",{attrs:{message:t.message}}),t._v(" "),t.hasBlockedContent?e("div",{staticStyle:{color:"#000000"},attrs:{id:"mail-message-has-blocked-content"}},[t._v("\n\t\t"+t._s(t.t("mail","The images have been blocked to protect your privacy."))+"\n\t\t"),e("Actions",{attrs:{"default-icon":"icon-toggle"}},[e("ActionButton",{attrs:{icon:"icon-toggle"},on:{click:t.onShowBlockedContent}},[t._v("\n\t\t\t\t"+t._s(t.t("mail","Always show images from {sender}",{sender:t.message.from[0].email}))+"\n\t\t\t")]),t._v(" "),e("ActionButton",{attrs:{icon:"icon-toggle"},on:{click:t.onShowBlockedContentForDomain}},[t._v("\n\t\t\t\t"+t._s(t.t("mail","Always show images from {domain}",{domain:t.getDomain()}))+"\n\t\t\t")])],1)],1):t._e(),t._v(" "),t.loading?e("div",{staticClass:"icon-loading"}):t._e(),t._v(" "),e("div",{class:{hidden:t.loading,scroll:!t.fullHeight},attrs:{id:"message-container"}},[e("iframe",{ref:"iframe",staticClass:"message-frame",attrs:{title:t.t("mail","Message frame"),src:t.url,seamless:""},on:{load:t.onMessageFrameLoad}})])],1)}),[],!1,null,"306a9986",null).exports),ir=/(.+\n\r?)+(\n\r?)+/,sr={name:"MessagePlainTextBody",components:{MdnRequest:Ga},props:{body:{type:String,required:!0},signature:{type:String,default:function(){}},message:{required:!0,type:Object}},computed:{enhancedBody:function(){return this.body.replace(/(>.*\n?)+/g,(function(n){return'<details class="quoted-text"><summary>'.concat(t("mail","Quoted text"),"</summary>").concat(n,"</details>")}))},signatureSummaryAndBody:function(){var t=this.signature.trim().match(ir);if(t&&t[0])return{summary:t[0],body:this.signature.substring(t[0].length)};var n=this.signature.trim().split(/\r?\n/);return{summary:n[0],body:n.slice(1).join("\n")}},signatureSummary:function(){return console.info(this.signature.match(ir)),this.signatureSummaryAndBody.summary}},methods:{nl2br:function(t){return t.replace(/(\r\n|\n\r|\n|\r)/g,"<br />")}}},lr=a(1292),cr={insert:"head",singleton:!1},dr=(d()(lr.a,cr),lr.a.locals,a(1293)),ur={insert:"head",singleton:!1},pr=(d()(dr.a,ur),dr.a.locals,Object(m.a)(sr,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{attrs:{id:"mail-content"}},[e("MdnRequest",{attrs:{message:t.message}}),t._v(" "),e("div",{attrs:{id:"message-container"},domProps:{innerHTML:t._s(t.nl2br(t.enhancedBody))}}),t._v(" "),t.signature?e("details",{staticClass:"mail-signature"},[e("summary",{domProps:{innerHTML:t._s(t.nl2br(t.signatureSummaryAndBody.summary))}}),t._v(" "),e("span",{domProps:{innerHTML:t._s(t.nl2br(t.signatureSummaryAndBody.body))}})]):t._e()],1)}),[],!1,null,"6bd2c088",null).exports),mr={name:"Message",components:{Actions:M.a,ActionButton:O.a,Itinerary:Ea,MessageAttachments:Na,MessageEncryptedBody:Qa,MessageHTMLBody:or,MessagePlainTextBody:pr,Popover:y.a},props:{envelope:{required:!0,type:Object},message:{required:!0,type:Object},fullHeight:{required:!1,type:Boolean,default:!1}},computed:{from:function(){return 0===this.message.from.length?"?":this.message.from[0].label||this.message.from[0].email},htmlUrl:function(){return Object(tt.generateUrl)("/apps/mail/api/messages/{id}/html",{id:this.envelope.databaseId})},isEncrypted:function(){return oe(this.message.hasHtmlBody?Object(Y.b)(this.message.body):Object(Y.c)(this.message.body))}}},hr=a(1294),Ar={insert:"head",singleton:!1};d()(hr.a,Ar),hr.a.locals;function vr(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function fr(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){vr(o,a,r,i,s,"next",t)}function s(t){vr(o,a,r,i,s,"throw",t)}i(void 0)}))}}var gr={name:"ThreadEnvelope",components:{Error:Wt,Loading:Jt,MenuEnvelope:ht,Moment:vt,Message:Object(m.a)(mr,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{class:[t.message.hasHtmlBody?"mail-message-body mail-message-body-html":"mail-message-body"],attrs:{role:"region","aria-label":t.t("mail","Message body")}},[t.message.itineraries.length>0?e("div",{staticClass:"message-itinerary"},[e("Itinerary",{attrs:{entries:t.message.itineraries,"message-id":t.message.messageId}})],1):t._e(),t._v(" "),t.message.hasHtmlBody?e("MessageHTMLBody",{attrs:{url:t.htmlUrl,message:t.message,"full-height":t.fullHeight}}):t.isEncrypted?e("MessageEncryptedBody",{attrs:{body:t.message.body,from:t.from,message:t.message}}):e("MessagePlainTextBody",{attrs:{body:t.message.body,signature:t.message.signature,message:t.message}}),t._v(" "),t.message.flags.hasAttachments?e("Popover",{staticClass:"attachment-popover"},[e("Actions",{attrs:{slot:"trigger"},slot:"trigger"},[e("ActionButton",{attrs:{icon:"icon-public icon-attachment"}},[t._v("\n\t\t\t\t"+t._s(t.t("mail","Attachments"))+"\n\t\t\t")])],1),t._v(" "),e("MessageAttachments",{directives:[{name:"close-popover",rawName:"v-close-popover",value:!0,expression:"true"}],attrs:{attachments:t.message.attachments,envelope:t.envelope}})],1):t._e(),t._v(" "),e("div",{attrs:{id:"reply-composer"}})],1)}),[],!1,null,"396add68",null).exports,Avatar:bt.a},props:{envelope:{required:!0,type:Object},mailboxId:{required:!1,type:[String,Number],default:void 0},expanded:{required:!1,type:Boolean,default:!1},fullHeight:{required:!1,type:Boolean,default:!1}},data:function(){return{loading:!1,error:void 0,message:void 0,importantSvg:gt.a,seenTimer:void 0}},computed:{account:function(){return this.$store.getters.getAccount(this.envelope.accountId)},hasMultipleRecipients:function(){this.account||console.error("account is undefined",{accountId:this.envelope.accountId});var t=K(this.envelope,{label:this.account.name,email:this.account.emailAddress});return t.to.concat(t.cc).length>1},replyOneLink:function(){return{name:"message",params:{mailboxId:this.$route.params.mailboxId,threadId:"reply",filter:this.$route.params.filter?this.$route.params.filter:void 0},query:{messageId:this.envelope.databaseId}}},replyAllLink:function(){return{name:"message",params:{mailboxId:this.$route.params.mailboxId,threadId:"replyAll",filter:this.$route.params.filter?this.$route.params.filter:void 0},query:{messageId:this.envelope.databaseId}}},route:function(){return{name:"message",params:{mailboxId:this.mailboxId||this.envelope.mailboxId,threadId:this.envelope.databaseId}}}},watch:{expanded:function(t){t?this.fetchMessage():this.message=void 0}},mounted:function(){var t=this;return fr(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!t.expanded){n.next=4;break}return n.next=3,t.fetchMessage();case 3:t.$nextTick((function(){return t.scrollToCurrentEnvelope()}));case 4:case"end":return n.stop()}}),n)})))()},beforeDestroy:function(){void 0!==this.seenTimer&&(A.a.info("Navigating away before seenTimer delay, will not mark message as seen/read"),clearTimeout(this.seenTimer))},methods:{fetchMessage:function(){var t=this;return fr(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.loading=!0,A.a.debug("fetching thread message ".concat(t.envelope.databaseId)),n.prev=2,n.next=5,t.$store.dispatch("fetchMessage",t.envelope.databaseId);case 5:e=t.message=n.sent,A.a.debug("message ".concat(t.envelope.databaseId," fetched"),{message:e}),t.envelope.flags.seen||(A.a.info("Starting timer to mark message as seen/read"),t.seenTimer=setTimeout((function(){t.$store.dispatch("toggleEnvelopeSeen",{envelope:t.envelope}),t.seenTimer=void 0}),2e3)),t.loading=!1,n.next=14;break;case 11:n.prev=11,n.t0=n.catch(2),A.a.error("Could not fetch message",{error:n.t0});case 14:case"end":return n.stop()}}),n,null,[[2,11]])})))()},scrollToCurrentEnvelope:function(){var t=document.querySelector("#header").clientHeight,n=document.querySelector("#mail-thread-header").clientHeight,e=this.$el.getBoundingClientRect().top-t-n;window.scrollTo({top:e})},onToggleImportant:function(){this.$store.dispatch("toggleEnvelopeImportant",this.envelope)},onToggleFlagged:function(){this.$store.dispatch("toggleEnvelopeFlagged",this.envelope)}}},br=a(1295),Cr={insert:"head",singleton:!1},yr=(d()(br.a,Cr),br.a.locals,Object(m.a)(gr,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"envelope"},[e("div",{staticClass:"envelope--header"},[t.envelope.from&&t.envelope.from[0]?e("Avatar",{attrs:{email:t.envelope.from[0].email,"display-name":t.envelope.from[0].label,"disable-tooltip":!0,size:40}}):t._e(),t._v(" "),t.envelope.flags.important?e("div",{staticClass:"app-content-list-item-star icon-important",attrs:{"data-starred":t.envelope.flags.important?"true":"false"},domProps:{innerHTML:t._s(t.importantSvg)},on:{click:function(n){return n.preventDefault(),t.onToggleImportant(n)}}}):t._e(),t._v(" "),t.envelope.flags.flagged?e("div",{staticClass:"app-content-list-item-star icon-starred",attrs:{"data-starred":t.envelope.flags.flagged?"true":"false"},on:{click:function(n){return n.preventDefault(),t.onToggleFlagged(n)}}}):t._e(),t._v(" "),e("router-link",{staticClass:"left",class:{seen:t.envelope.flags.seen},attrs:{to:t.route,event:""},nativeOn:{click:function(n){return n.preventDefault(),t.$emit("toggleExpand",n)}}},[e("span",{staticClass:"sender"},[t._v(t._s(t.envelope.from&&t.envelope.from[0]?t.envelope.from[0].label:""))]),t._v(" "),e("div",{staticClass:"subject"},[e("span",{staticClass:"preview"},[t._v("\n\t\t\t\t\t"+t._s(t.envelope.subject)+"\n\t\t\t\t")])])]),t._v(" "),e("div",{staticClass:"right"},[e("Moment",{staticClass:"timestamp",attrs:{timestamp:t.envelope.dateInt}}),t._v(" "),e("router-link",{staticClass:"button",class:{"icon-reply-all-white":t.hasMultipleRecipients,"icon-reply-white":!t.hasMultipleRecipients,primary:t.expanded},attrs:{to:t.hasMultipleRecipients?t.replyAllLink:t.replyOneLink}},[e("span",{staticClass:"action-label"},[t._v(" "+t._s(t.t("mail","Reply")))])]),t._v(" "),e("MenuEnvelope",{staticClass:"app-content-list-item-menu",attrs:{envelope:t.envelope,"with-reply":!1,"with-select":!1,"with-show-source":!0}})],1)],1),t._v(" "),t.loading?e("Loading"):t.message?e("Message",{attrs:{envelope:t.envelope,message:t.message,"full-height":t.fullHeight}}):t.error?e("Error",{attrs:{error:t.error&&t.error.message?t.error.message:t.t("mail","Not found"),message:t.errorMessage,data:t.error,role:"alert"}}):t._e()],1)}),[],!1,null,"e711eb92",null).exports);function xr(t,n,e,a,r,o,i){try{var s=t[o](i),l=s.value}catch(t){return void e(t)}s.done?n(l):Promise.resolve(l).then(a,r)}function wr(t){return function(){var n=this,e=arguments;return new Promise((function(a,r){var o=t.apply(n,e);function i(t){xr(o,a,r,i,s,"next",t)}function s(t){xr(o,a,r,i,s,"throw",t)}i(void 0)}))}}var kr={name:"Thread",components:{RecipientBubble:Xe,AppContentDetails:mn.a,Loading:Jt,ThreadEnvelope:yr,Popover:y.a},data:function(){return{loading:!0,message:void 0,errorMessage:"",error:void 0,expandedThreads:[],participantsToDisplay:999,resizeDebounced:vn()(500,this.updateParticipantsToDisplay)}},computed:{moreParticipantsString:function(){return"+".concat(this.threadParticipants.length-this.participantsToDisplay)},threadId:function(){return parseInt(this.$route.params.threadId,10)},thread:function(){return this.$store.getters.getEnvelopeThread(this.threadId)},threadParticipants:function(){var t=this.thread.flatMap((function(t){return t.from.concat(t.to).concat(t.cc)}));return Object(Ue.a)(Object(Ge.a)("email"),t)},threadSubject:function(){var t=this.thread;return 0===t.length?(console.warn("thread is empty"),""):t[0].subject}},watch:{$route:function(t,n){n.name!==t.name||n.params.mailboxId!==t.params.mailboxId||n.params.threadId!==t.params.threadId||n.params.filter!==t.params.filter?(A.a.debug("navigated to another thread",{to:t,from:n}),this.resetThread()):A.a.debug("navigated but the thread is still the same")}},created:function(){this.resetThread(),window.addEventListener("resize",this.resizeDebounced)},beforeDestroy:function(){window.removeEventListener("resize",this.resizeDebounced)},methods:{updateParticipantsToDisplay:function(){if(this.$refs.avatarHeader&&this.threadParticipants){for(var t=this.$refs.avatarHeader,n=t.clientWidth-100,e=0,a=0,r=0;e<n&&a<this.threadParticipants.length;)void 0!==t.childNodes[r].clientWidth?(e+=t.childNodes[r].clientWidth,a++,r++):r+=3;this.participantsToDisplay=e>n?a>1?a-1:0===a?1:a:this.threadParticipants.length}},toggleExpand:function(t){this.expandedThreads.includes(t)?(console.debug("collapse thread ".concat(t)),this.expandedThreads=this.expandedThreads.filter((function(n){return n!==t}))):(console.debug("expand thread ".concat(t)),this.expandedThreads.push(t))},onMove:function(t){t===this.threadId?this.$router.replace({name:"mailbox",params:{mailboxId:this.$route.params.mailboxId}}):(this.expandedThreads=this.expandedThreads.filter((function(n){return n!==t})),this.fetchThread())},resetThread:function(){var t=this;return wr(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.expandedThreads=[t.threadId],n.next=3,t.fetchThread();case 3:t.updateParticipantsToDisplay();case 4:case"end":return n.stop()}}),n)})))()},fetchThread:function(){var n=this;return wr(regeneratorRuntime.mark((function e(){var a,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.loading=!0,n.errorMessage="",n.error=void 0,a=n.threadId,e.prev=4,e.next=7,n.$store.dispatch("fetchThread",a);case 7:if(r=e.sent,A.a.debug("thread for envelope ".concat(a," fetched"),{thread:r}),a===parseInt(n.$route.params.threadId,10)){e.next=12;break}return A.a.debug("User navigated away, loaded envelope won't be shown nor flagged as seen",{oldId:a,newId:n.$route.params.threadId}),e.abrupt("return");case 12:if(0!==r.length){e.next=17;break}return A.a.info("thread could not be found and is empty",{threadId:a}),n.errorMessage=Ee(),n.loading=!1,e.abrupt("return");case 17:n.loading=!1,e.next=24;break;case 20:e.prev=20,e.t0=e.catch(4),A.a.error("could not load envelope thread",{threadId:a,error:e.t0}),e.t0.isError&&(n.errorMessage=t("mail","Could not load your message thread"),n.error=e.t0,n.loading=!1);case 24:case"end":return e.stop()}}),e,null,[[4,20]])})))()}}},Ir=a(1296),_r={insert:"head",singleton:!1},Tr=(d()(Ir.a,_r),Ir.a.locals,Object(m.a)(kr,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("AppContentDetails",{attrs:{id:"mail-message"}},[t.loading?e("Loading"):[e("div",{attrs:{id:"mail-thread-header"}},[e("div",{attrs:{id:"mail-thread-header-fields"}},[e("h2",{attrs:{title:t.threadSubject}},[t._v("\n\t\t\t\t\t"+t._s(t.threadSubject)+"\n\t\t\t\t")]),t._v(" "),e("div",{ref:"avatarHeader",staticClass:"avatar-header"},[t._l(t.threadParticipants.slice(0,t.participantsToDisplay),(function(t){return e("RecipientBubble",{key:t.email,attrs:{email:t.email,label:t.label}})})),t._v(" "),t.threadParticipants.length>t.participantsToDisplay?e("Popover",{staticClass:"avatar-more"},[e("span",{staticClass:"avatar-more",attrs:{slot:"trigger"},slot:"trigger"},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.moreParticipantsString)+"\n\t\t\t\t\t\t")]),t._v(" "),t._l(t.threadParticipants.slice(t.participantsToDisplay),(function(t){return e("RecipientBubble",{key:t.email,attrs:{email:t.email,label:t.label}})}))],2):t._e(),t._v(" "),t._l(t.threadParticipants.slice(t.participantsToDisplay),(function(t){return e("RecipientBubble",{key:t.email,staticClass:"avatar-hidden",attrs:{email:t.email,label:t.label}})}))],2)])]),t._v(" "),t._l(t.thread,(function(n){return e("ThreadEnvelope",{key:n.databaseId,attrs:{envelope:n,"mailbox-id":t.$route.params.mailboxId,expanded:t.expandedThreads.includes(n.databaseId),"full-height":1===t.thread.length},on:{move:function(e){return t.onMove(n.databaseId)},toggleExpand:function(e){return t.toggleExpand(n.databaseId)}}})}))]],2)}),[],!1,null,null,null).exports),jr=a(25),Dr={name:"MailboxThread",directives:{infiniteScroll:w.a},components:{AppContent:f.a,AppContentList:b.a,Mailbox:un,NewMessageDetail:Pe,NoMessageSelected:ze,Popover:y.a,SectionTitle:T,Thread:Tr},mixins:[s.a],props:{account:{type:Object,required:!0},mailbox:{type:Object,required:!0}},data:function(){return{importantInfo:t("mail","Messages will automatically be marked as important based on which messages you interacted with or marked as important. In the beginning you might have to manually change the importance to teach the system, but it will improve over time."),bus:new j.default,searchQuery:void 0,shortkeys:{del:["del"],flag:["s"],next:["arrowright"],prev:["arrowleft"],refresh:["r"],unseen:["u"]}}},computed:{unifiedAccount:function(){return this.$store.getters.getAccount(jr.b)},unifiedInbox:function(){return this.$store.getters.getMailbox(jr.c)},hasEnvelopes:function(){return this.$store.getters.getEnvelopes(this.mailbox.databaseId,this.searchQuery).length>0},showThread:function(){return(!0===this.mailbox.isPriorityInbox||this.hasEnvelopes)&&"message"===this.$route.name},query:function(){return"starred"===this.$route.params.filter?this.searchQuery?this.searchQuery+" is:starred":"is:starred":this.searchQuery},newMessage:function(){return"new"===this.$route.params.threadId||"reply"===this.$route.params.threadId||"replyAll"===this.$route.params.threadId||"asNew"===this.$route.params.threadId}},methods:{deleteMessage:function(t){this.bus.$emit("delete",t)},onScroll:function(t){A.a.debug("scroll",{event:t}),this.bus.$emit("loadMore")},onShortcut:function(t){this.bus.$emit("shortcut",t)},appendToSearch:function(t){return void 0===this.searchQuery?t:this.searchQuery+" "+t}}},Er=a(1297),Sr={insert:"head",singleton:!1},Mr=(d()(Er.a,Sr),Er.a.locals,Object(m.a)(Dr,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("AppContent",[e("div",{attrs:{id:"app-content-wrapper"}},[e("AppContentList",{directives:[{name:"infinite-scroll",rawName:"v-infinite-scroll",value:t.onScroll,expression:"onScroll"},{name:"shortkey",rawName:"v-shortkey.once",value:t.shortkeys,expression:"shortkeys",modifiers:{once:!0}}],attrs:{"infinite-scroll-immediate-check":"false","show-details":t.showThread,"infinite-scroll-disabled":!1,"infinite-scroll-distance":10,role:"heading","aria-level":2},nativeOn:{shortkey:function(n){return t.onShortcut(n)}}},[t.mailbox.isPriorityInbox?[e("div",{staticClass:"app-content-list-item"},[e("SectionTitle",{staticClass:"important",attrs:{name:t.t("mail","Important and unread")}}),t._v(" "),e("Popover",{attrs:{trigger:"hover focus"}},[e("button",{staticClass:"button icon-info",attrs:{slot:"trigger","aria-label":t.t("mail","Important info")},slot:"trigger"}),t._v(" "),e("p",{staticClass:"important-info"},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.importantInfo)+"\n\t\t\t\t\t\t")])])],1),t._v(" "),e("Mailbox",{staticClass:"nameimportant",attrs:{account:t.unifiedAccount,mailbox:t.unifiedInbox,"search-query":t.appendToSearch("is:pi-important"),paginate:"manual","is-priority-inbox":!0,"initial-page-size":5,collapsible:!0,bus:t.bus}}),t._v(" "),e("SectionTitle",{staticClass:"app-content-list-item starred",attrs:{name:t.t("mail","Favorites")}}),t._v(" "),e("Mailbox",{staticClass:"namestarred",attrs:{account:t.unifiedAccount,mailbox:t.unifiedInbox,"search-query":t.appendToSearch("is:pi-starred"),paginate:"manual","is-priority-inbox":!0,"initial-page-size":5,bus:t.bus}}),t._v(" "),e("SectionTitle",{staticClass:"app-content-list-item other",attrs:{name:t.t("mail","Other")}}),t._v(" "),e("Mailbox",{staticClass:"nameother",attrs:{account:t.unifiedAccount,mailbox:t.unifiedInbox,"open-first":!1,"search-query":t.appendToSearch("is:pi-other"),"is-priority-inbox":!0,bus:t.bus}})]:e("Mailbox",{attrs:{account:t.account,mailbox:t.mailbox,"search-query":t.query,bus:t.bus}})],2),t._v(" "),t.newMessage?e("NewMessageDetail"):t.showThread?e("Thread",{on:{delete:t.deleteMessage}}):t.hasEnvelopes&&!t.isMobile?e("NoMessageSelected"):t._e()],1)])}),[],!1,null,"04cb845c",null).exports),Br=a(1046),Or={name:"Home",components:{Content:o.a,MailboxThread:Mr,Navigation:Br.a,AppDetailsToggle:h},mixins:[s.a],computed:{activeAccount:function(){var t;return this.$store.getters.getAccount(null===(t=this.activeMailbox)||void 0===t?void 0:t.accountId)},activeMailbox:function(){return this.$store.getters.getMailbox(this.$route.params.mailboxId)},menu:function(){return this.buildMenu()},isThreadShown:function(){return this.$route.params.threadId}},created:function(){var t=this.$store.getters.accounts;if("home"===this.$route.name&&t.length>1){var n=t[0],e=this.$store.getters.getMailboxes(n.id)[0];console.debug("loading first mailbox of first account",n.id,e.databaseId),this.$router.replace({name:"mailbox",params:{mailboxId:e.databaseId}})}else if("home"===this.$route.name&&1===t.length)A.a.debug("the only account we have is the unified one -> show the setup page"),this.$router.replace({name:"setup"});else if("mailto"===this.$route.name){if(0===t.length)return void console.error("cannot handle mailto:, no accounts configured");var a=t[0],r=this.$store.getters.getMailboxes(a.id)[0];console.debug("loading composer with first account and mailbox",a.id,r.id),this.$router.replace({name:"message",params:{mailboxId:r.databaseId,threadId:"new"},query:{to:this.$route.query.to,cc:this.$route.query.cc,bcc:this.$route.query.bcc,subject:this.$route.query.subject,body:this.$route.query.body}})}},methods:{onNewMessage:function(){this.$router.push({name:"message",params:{mailboxId:this.$route.params.mailboxId,threadId:"new"}})},hideMessage:function(){var t;this.$router.replace({name:"mailbox",params:{mailboxId:this.$route.params.mailboxId,filter:null===(t=this.$route.params)||void 0===t?void 0:t.filter}})}}},Rr=a(1343),Fr={insert:"head",singleton:!1},$r=(d()(Rr.a,Fr),Rr.a.locals,Object(m.a)(Or,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("Content",{directives:[{name:"shortkey",rawName:"v-shortkey.once",value:["c"],expression:"['c']",modifiers:{once:!0}}],attrs:{"app-name":"mail"},nativeOn:{shortkey:function(n){return t.onNewMessage(n)}}},[t.isMobile&&t.isThreadShown?e("AppDetailsToggle",{on:{close:t.hideMessage}}):t._e(),t._v(" "),e("Navigation"),t._v(" "),t.activeAccount?e("MailboxThread",{attrs:{account:t.activeAccount,mailbox:t.activeMailbox}}):t._e()],1)}),[],!1,null,"7d3f4b94",null));e.default=$r.exports},536:function(t,n,e){"use strict";e.d(n,"a",(function(){return l}));var a=e(537),r=e.n(a),o=e(1),i=e.n(o),s=e(0),l=r()((function(t){if(null===t)return Promise.resolve(void 0);var n=Object(s.generateUrl)("/apps/mail/api/avatars/url/{email}",{email:t});return i.a.get(n).then((function(t){return t.data})).then((function(n){return n.isExternal?Object(s.generateUrl)("/apps/mail/api/avatars/image/{email}",{email:t}):n.url})).catch((function(t){if(404!==t.response.status)return Promise.reject(t)}))}))},538:function(t,n,e){"use strict";var a=e(539),r=e.n(a),o=e(536),i={name:"Avatar",components:{BaseAvatar:r.a},props:{displayName:{type:String,required:!0},email:{type:String,required:!0},disableTooltip:{type:Boolean,default:!1},size:{type:Number,default:40}},data:function(){return{loading:!0,avatarUrl:void 0}},computed:{hasAvatar:function(){return void 0!==this.avatarUrl}},mounted:function(){var t=this;Object(o.a)(this.email).then((function(n){t.avatarUrl=n,t.loading=!1}))}},s=e(29),l=Object(s.a)(i,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return t.loading||!t.hasAvatar?e("BaseAvatar",{attrs:{"display-name":t.displayName,size:t.size,"disable-tooltip":t.disableTooltip}}):e("BaseAvatar",{attrs:{"display-name":t.displayName,url:t.avatarUrl,size:t.size,"disable-tooltip":t.disableTooltip}})}),[],!1,null,null,null);n.a=l.exports},918:function(t,n){t.exports='<svg xmlns="http://www.w3.org/2000/svg"><path d="M2 13h7.8a1.4 1.4 0 001.1-.6L14 8l-3.1-4.4A1.4 1.4 0 009.8 3H2l3.4 5z" stroke="#000" stroke-width="2"></path></svg>'}},0,[8]]);
//# sourceMappingURL=mail.9.5033282686ee6443f1fb.js.map