modoboa 2.6.4__py3-none-any.whl → 2.6.5__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- modoboa/autoreply/models.py +4 -4
- modoboa/frontend_dist/assets/{AccountAliasForm-tLHotdIR.js → AccountAliasForm-B-hTKSFr.js} +1 -1
- modoboa/frontend_dist/assets/{AccountEditView-DnQIIg47.js → AccountEditView-LkP_qhf_.js} +1 -1
- modoboa/frontend_dist/assets/AccountLayout-APeC9bsN.js +1 -0
- modoboa/frontend_dist/assets/{AccountPasswordSubForm-DpADntAL.js → AccountPasswordSubForm-D4vB2yQK.js} +1 -1
- modoboa/frontend_dist/assets/{AccountView-CJBGh9Oe.js → AccountView-CloBP1BY.js} +1 -1
- modoboa/frontend_dist/assets/{AddressBook-CrFqzlzZ.js → AddressBook-C03MXg3y.js} +1 -1
- modoboa/frontend_dist/assets/{AdminLayout-BbCt7YxX.js → AdminLayout-DFmyKOo6.js} +1 -1
- modoboa/frontend_dist/assets/{AlarmsView-CIlt_IKQ.js → AlarmsView-CFhH0I5d.js} +1 -1
- modoboa/frontend_dist/assets/{AliasEditView-n75NEN_s.js → AliasEditView-BVjNJekt.js} +1 -1
- modoboa/frontend_dist/assets/{AliasRecipientForm-jjj5yJJw.js → AliasRecipientForm-CZ_SvjtG.js} +1 -1
- modoboa/frontend_dist/assets/{AliasView-DFIvPeIm.js → AliasView-DvvI6cV9.js} +1 -1
- modoboa/frontend_dist/assets/{AuditTrailView-sWnED3E9.js → AuditTrailView-Cyq25Jle.js} +1 -1
- modoboa/frontend_dist/assets/CalendarView-C_dSXRp9.js +1 -0
- modoboa/frontend_dist/assets/{ChoiceField-RDT6XcnX.js → ChoiceField-BPhUvoyr.js} +1 -1
- modoboa/frontend_dist/assets/{ComposeEmailForm-G3sXQAwI.js → ComposeEmailForm-Ns5SYs4J.js} +1 -1
- modoboa/frontend_dist/assets/ComposeEmailView-DgUfiWEH.js +1 -0
- modoboa/frontend_dist/assets/{ConfirmDialog-Du7aqKbR.js → ConfirmDialog-BMIg94-U.js} +1 -1
- modoboa/frontend_dist/assets/{ConnectedLayout-BHWaBAzH.js → ConnectedLayout-CSXdVJtV.js} +1 -1
- modoboa/frontend_dist/assets/{CreationForm-CjtILq0_.js → CreationForm-CaAZYATm.js} +1 -1
- modoboa/frontend_dist/assets/{DashboardView-DFNwusDZ.js → DashboardView-DErmyUoy.js} +1 -1
- modoboa/frontend_dist/assets/{DomainAdminList-BjtfbhRj.js → DomainAdminList-BO8_4Cwt.js} +1 -1
- modoboa/frontend_dist/assets/{DomainEditView-Cq5Ea4RW.js → DomainEditView-BXylM4aB.js} +1 -1
- modoboa/frontend_dist/assets/{DomainTransportForm-DAXJGNLA.js → DomainTransportForm-Ccw5BXyM.js} +1 -1
- modoboa/frontend_dist/assets/{DomainView-BfpK7U14.js → DomainView-Bd5XQI-1.js} +1 -1
- modoboa/frontend_dist/assets/{DomainsView-CYxLy-3Y.js → DomainsView-CC1EwRId.js} +1 -1
- modoboa/frontend_dist/assets/{EmailField-DmPc4pyP.js → EmailField-BFgga4zp.js} +1 -1
- modoboa/frontend_dist/assets/{EmailView-BE3vYZtJ.js → EmailView-DPWTch_6.js} +1 -1
- modoboa/frontend_dist/assets/EmptyLayout-DAw7fAab.js +1 -0
- modoboa/frontend_dist/assets/{FiltersView-Dps3_fAh.js → FiltersView-Cg9lkLw0.js} +1 -1
- modoboa/frontend_dist/assets/ForwardEmailView-Dd1sxgaP.js +1 -0
- modoboa/frontend_dist/assets/{HtmlEditor-D753fIAJ.js → HtmlEditor-DNn3CY-w.js} +1 -1
- modoboa/frontend_dist/assets/{IdentitiesView-CoGBVhZx.js → IdentitiesView-CiHIQ9Qt.js} +1 -1
- modoboa/frontend_dist/assets/{InformationView-eB2ayeLD.js → InformationView-Cc0aBA5j.js} +1 -1
- modoboa/frontend_dist/assets/{LoadingData-Tm56XNwj.js → LoadingData-CnQ_aVqa.js} +1 -1
- modoboa/frontend_dist/assets/{LoginCallbackView-DjCHUgz5.js → LoginCallbackView-Nh_gmh8e.js} +1 -1
- modoboa/frontend_dist/assets/{LoginView-D0r4XBEl.js → LoginView-BtC9BHuJ.js} +1 -1
- modoboa/frontend_dist/assets/{MailboxView-DNokO2WZ.js → MailboxView-DplC0IXR.js} +1 -1
- modoboa/frontend_dist/assets/{MenuItems-dl38msRA.js → MenuItems-efx2rqwT.js} +1 -1
- modoboa/frontend_dist/assets/{MessageView-BWh9BqzS.js → MessageView-C1Goz-hY.js} +1 -1
- modoboa/frontend_dist/assets/{MessagesView-BZ7NUOwo.js → MessagesView-CesYYZ9f.js} +1 -1
- modoboa/frontend_dist/assets/{MigrationsView-DcOVgmcH.js → MigrationsView-DSBk8T0y.js} +1 -1
- modoboa/frontend_dist/assets/{ParametersForm-y02-GM0r.js → ParametersForm-BegEnkQM.js} +1 -1
- modoboa/frontend_dist/assets/ParametersView-B8W_PAiz.js +1 -0
- modoboa/frontend_dist/assets/ParametersView-Dsx2M_g9.js +1 -0
- modoboa/frontend_dist/assets/ProviderEditView-PEAr7MA1.js +1 -0
- modoboa/frontend_dist/assets/ProviderGeneralForm-BAELnXh6.js +1 -0
- modoboa/frontend_dist/assets/ProvidersView-CHvQf3Vv.js +1 -0
- modoboa/frontend_dist/assets/QuarantineLayout-BWEaBK48.js +1 -0
- modoboa/frontend_dist/assets/{QuarantineView-BOXSobRz.js → QuarantineView-BzjeDhTm.js} +1 -1
- modoboa/frontend_dist/assets/ReplyEmailView-CwQ9jsce.js +1 -0
- modoboa/frontend_dist/assets/{ResourcesForm-D0YBapCG.js → ResourcesForm-noC3AXd9.js} +1 -1
- modoboa/frontend_dist/assets/SelfServiceLayout-DQgRMu0L.js +1 -0
- modoboa/frontend_dist/assets/{SettingsView-DIvKGRBY.css → SettingsView-DJTdIeRK.css} +1 -1
- modoboa/frontend_dist/assets/{SettingsView-DMuaKagM.js → SettingsView-Dgwpfd8O.js} +2 -2
- modoboa/frontend_dist/assets/{StatisticsView-CyY_CNcI.js → StatisticsView-BZkVSh5o.js} +1 -1
- modoboa/frontend_dist/assets/{TimeSerieChart-BTDBH33K.js → TimeSerieChart-BXJwhTMO.js} +1 -1
- modoboa/frontend_dist/assets/UserLayout-CWK9ICfE.js +1 -0
- modoboa/frontend_dist/assets/{VAlert-CNys_LUS.js → VAlert-Buv8Z5G4.js} +1 -1
- modoboa/frontend_dist/assets/{VApp-B0vRc3-6.js → VApp-CiIBWB_Q.js} +1 -1
- modoboa/frontend_dist/assets/{VAutocomplete-Huaz_-hf.js → VAutocomplete-DcNqTIie.js} +1 -1
- modoboa/frontend_dist/assets/{VAvatar-JdJfoK0C.js → VAvatar-BsHplcRP.js} +1 -1
- modoboa/frontend_dist/assets/{VBadge-Cg5iu5LG.js → VBadge-CavP_E2g.js} +1 -1
- modoboa/frontend_dist/assets/{VCard-BoH6kjPa.js → VCard-D7AwBs4w.js} +1 -1
- modoboa/frontend_dist/assets/{VCheckbox-CCLOJFKF.js → VCheckbox-CKW9lz5i.js} +1 -1
- modoboa/frontend_dist/assets/{VCheckboxBtn-Ccl786Rg.js → VCheckboxBtn-B5evxN9K.js} +1 -1
- modoboa/frontend_dist/assets/{VColorPicker-452uc3tY.js → VColorPicker-Bsrz8yif.js} +1 -1
- modoboa/frontend_dist/assets/{VContainer-DKMcKasC.js → VContainer-DY9021j4.js} +1 -1
- modoboa/frontend_dist/assets/{VDataTable-BkLLfcQK.js → VDataTable-ocZo8ju0.js} +1 -1
- modoboa/frontend_dist/assets/{VDataTableServer-B_6fWBA3.js → VDataTableServer-CJfpYXQW.js} +1 -1
- modoboa/frontend_dist/assets/{VDataTableVirtual-Ike7oqcC.js → VDataTableVirtual-Cr8yw49k.js} +1 -1
- modoboa/frontend_dist/assets/{VDialog-DIUeAIpw.js → VDialog-CUMh3paI.js} +1 -1
- modoboa/frontend_dist/assets/{VExpansionPanels-BeMgiS7A.js → VExpansionPanels-CkwHiKsA.js} +1 -1
- modoboa/frontend_dist/assets/{VFileInput-Dvj95FL5.js → VFileInput-D5qlksIG.js} +1 -1
- modoboa/frontend_dist/assets/{VForm-DkphQD3e.js → VForm-ClJU5x_v.js} +1 -1
- modoboa/frontend_dist/assets/{VInput-CbqehdOu.js → VInput-DhzSMFXh.js} +1 -1
- modoboa/frontend_dist/assets/{VMenu-B6SCtOwT.js → VMenu-B53a3gm6.js} +1 -1
- modoboa/frontend_dist/assets/{VPicker-BUx70Wjg.js → VPicker-B928ZVJQ.js} +1 -1
- modoboa/frontend_dist/assets/{VProgressCircular-DTDGzl2O.js → VProgressCircular-viI3jDXe.js} +1 -1
- modoboa/frontend_dist/assets/{VRadioGroup-CS9ULZ1c.js → VRadioGroup-C0bqFrYg.js} +1 -1
- modoboa/frontend_dist/assets/{VRow-CuVZGqBj.js → VRow-DyK_Mj7R.js} +1 -1
- modoboa/frontend_dist/assets/{VSelect-D5IXDPEX.js → VSelect-y0E5_vPn.js} +1 -1
- modoboa/frontend_dist/assets/{VSelectionControl-uKY9Zull.js → VSelectionControl-Dkms9_P5.js} +1 -1
- modoboa/frontend_dist/assets/{VSheet-HeHw6g5_.js → VSheet-DQkh_hsX.js} +1 -1
- modoboa/frontend_dist/assets/VSpacer-CBqB9uSt.js +1 -0
- modoboa/frontend_dist/assets/{VSwitch-Dh_dserW.js → VSwitch-D4xdR9jz.js} +1 -1
- modoboa/frontend_dist/assets/{VTable-gDsAUSLX.js → VTable-D8ZwwC_B.js} +1 -1
- modoboa/frontend_dist/assets/{VTabs-5XSICLQP.js → VTabs-D2c0KeF2.js} +1 -1
- modoboa/frontend_dist/assets/{VTextField-QXQFhKxm.js → VTextField-DvvH1ciR.js} +1 -1
- modoboa/frontend_dist/assets/{VTextarea-Bdy4UKmV.js → VTextarea-DHtXtzqP.js} +1 -1
- modoboa/frontend_dist/assets/{VToolbar-CyrYSqJZ.js → VToolbar-pvLQtmbU.js} +1 -1
- modoboa/frontend_dist/assets/{VWindowItem-kZpArwK1.js → VWindowItem-DErNPSH8.js} +1 -1
- modoboa/frontend_dist/assets/{WebmailLayout-CNUHODnw.js → WebmailLayout-D7J-QJ-0.js} +1 -1
- modoboa/frontend_dist/assets/{accounts-DqbBlaLK.js → accounts-BZBqbAmd.js} +1 -1
- modoboa/frontend_dist/assets/{admin-D36m_nXq.js → admin-uCrKjpln.js} +1 -1
- modoboa/frontend_dist/assets/{aliases-BtyF8GC8.js → aliases-CFwFkX45.js} +1 -1
- modoboa/frontend_dist/assets/{amavis-B4QhM5Fa.js → amavis-B4ScfQsG.js} +1 -1
- modoboa/frontend_dist/assets/{amavis-DySmsCJQ.js → amavis-DCy0U0TD.js} +1 -1
- modoboa/frontend_dist/assets/{contacts-Df8ptuMn.js → contacts-DKmh2q-4.js} +1 -1
- modoboa/frontend_dist/assets/{domains-CSxtTvUh.js → domains-CDE4_LDF.js} +1 -1
- modoboa/frontend_dist/assets/domains.store-a9Y5UlDV.js +1 -0
- modoboa/frontend_dist/assets/{filter-DHKXX97M.js → filter-BVvMTmPG.js} +1 -1
- modoboa/frontend_dist/assets/{global.store-DYMmGKpn.js → global.store-Bha4Z76j.js} +1 -1
- modoboa/frontend_dist/assets/{importExport-C-adpHJX.js → importExport-EgijWlC1.js} +1 -1
- modoboa/frontend_dist/assets/index-BjibLozh.js +995 -0
- modoboa/frontend_dist/assets/{index-Bp9Fb67E.js → index-Dwg6jPTX.js} +1 -1
- modoboa/frontend_dist/assets/{language.store-_-zrrEiS.js → language.store-DGuI8jG0.js} +1 -1
- modoboa/frontend_dist/assets/languages-Cge6pECg.js +1 -0
- modoboa/frontend_dist/assets/{layout-CjSP_k58.js → layout-5PvsmkGR.js} +1 -1
- modoboa/frontend_dist/assets/{layout.store-CF5WRevH.js → layout.store-DJVcXtxk.js} +1 -1
- modoboa/frontend_dist/assets/{logos-95XYS6uH.js → logos-CMmd0hOG.js} +1 -1
- modoboa/frontend_dist/assets/{logs-CyU_PIDh.js → logs-D2GOydPZ.js} +1 -1
- modoboa/frontend_dist/assets/{parameters-BxAXBXU1.js → parameters-DJdlq9sh.js} +1 -1
- modoboa/frontend_dist/assets/{parameters.store-CATOSoQZ.js → parameters.store-DH3pPlaT.js} +1 -1
- modoboa/frontend_dist/assets/{permissions-cSkGqV3M.js → permissions-CgFJFhCp.js} +1 -1
- modoboa/frontend_dist/assets/{ssrBoot-05WtbG6H.js → ssrBoot-ChTB-PYP.js} +1 -1
- modoboa/frontend_dist/assets/{tag-BmV84V2s.js → tag-CvrHE14f.js} +1 -1
- modoboa/frontend_dist/assets/{theme-myV4ekXo.js → theme-DFzlhSh5.js} +1 -1
- modoboa/frontend_dist/assets/transports-BUSYxSF4.js +1 -0
- modoboa/frontend_dist/assets/{webmail-B7MNMkv_.js → webmail-HVg3ZHC0.js} +1 -1
- modoboa/frontend_dist/assets/{webmail.store-Cm-h6hhE.js → webmail.store-D-d88s4w.js} +1 -1
- modoboa/frontend_dist/index.html +1 -1
- modoboa/imap_migration/api/v2/serializers.py +13 -0
- modoboa/imap_migration/tests.py +7 -0
- modoboa/locale/br/LC_MESSAGES/django.po +487 -79
- modoboa/locale/cs/LC_MESSAGES/django.po +420 -75
- modoboa/locale/cs_CZ/LC_MESSAGES/django.po +534 -139
- modoboa/locale/de/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/de/LC_MESSAGES/django.po +853 -220
- modoboa/locale/de_DE/LC_MESSAGES/django.po +476 -77
- modoboa/locale/el_GR/LC_MESSAGES/django.po +558 -154
- modoboa/locale/en/LC_MESSAGES/django.po +418 -75
- modoboa/locale/es/LC_MESSAGES/django.po +543 -151
- modoboa/locale/es_MX/LC_MESSAGES/django.po +418 -75
- modoboa/locale/fi/LC_MESSAGES/django.po +491 -79
- modoboa/locale/fr/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/fr/LC_MESSAGES/django.po +420 -76
- modoboa/locale/hu/LC_MESSAGES/django.po +418 -75
- modoboa/locale/it/LC_MESSAGES/django.po +540 -141
- modoboa/locale/ja_JP/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/ja_JP/LC_MESSAGES/django.po +735 -180
- modoboa/locale/ka/LC_MESSAGES/django.po +418 -75
- modoboa/locale/nl_NL/LC_MESSAGES/django.po +544 -152
- modoboa/locale/no/LC_MESSAGES/django.po +418 -75
- modoboa/locale/pl_PL/LC_MESSAGES/django.po +564 -162
- modoboa/locale/pt_BR/LC_MESSAGES/django.po +567 -157
- modoboa/locale/pt_PT/LC_MESSAGES/django.po +521 -132
- modoboa/locale/ro_RO/LC_MESSAGES/django.po +498 -79
- modoboa/locale/ru/LC_MESSAGES/django.po +530 -137
- modoboa/locale/si/LC_MESSAGES/django.po +418 -75
- modoboa/locale/sk/LC_MESSAGES/django.po +420 -75
- modoboa/locale/sk_SK/LC_MESSAGES/django.po +420 -75
- modoboa/locale/sl_SI/LC_MESSAGES/django.po +441 -80
- modoboa/locale/sv/LC_MESSAGES/django.po +556 -152
- modoboa/locale/tr/LC_MESSAGES/django.po +470 -77
- modoboa/locale/tr_TR/LC_MESSAGES/django.po +454 -75
- modoboa/locale/uk/LC_MESSAGES/django.po +420 -75
- modoboa/locale/zh/LC_MESSAGES/django.po +417 -75
- modoboa/locale/zh_CN/LC_MESSAGES/django.po +417 -75
- modoboa/locale/zh_TW/LC_MESSAGES/django.po +486 -77
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/METADATA +1 -1
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/RECORD +167 -167
- modoboa/frontend_dist/assets/AccountLayout-B2HptJzY.js +0 -1
- modoboa/frontend_dist/assets/CalendarView-DSCBIvef.js +0 -1
- modoboa/frontend_dist/assets/ComposeEmailView-Ce1CtFjD.js +0 -1
- modoboa/frontend_dist/assets/EmptyLayout-DMwKNHfI.js +0 -1
- modoboa/frontend_dist/assets/ForwardEmailView-C0I00eXf.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-B6abt-LH.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-v0YS6WU4.js +0 -1
- modoboa/frontend_dist/assets/ProviderEditView-BaL9mKxJ.js +0 -1
- modoboa/frontend_dist/assets/ProviderGeneralForm-eoHMDO5v.js +0 -1
- modoboa/frontend_dist/assets/ProvidersView-Zu-G35u7.js +0 -1
- modoboa/frontend_dist/assets/QuarantineLayout-BHiiksnP.js +0 -1
- modoboa/frontend_dist/assets/ReplyEmailView-JmSiNWPy.js +0 -1
- modoboa/frontend_dist/assets/SelfServiceLayout-DUmQzUDk.js +0 -1
- modoboa/frontend_dist/assets/UserLayout-DwxcQr4L.js +0 -1
- modoboa/frontend_dist/assets/VSpacer-BUxSSJbH.js +0 -1
- modoboa/frontend_dist/assets/domains.store-D4ZqCQ-O.js +0 -1
- modoboa/frontend_dist/assets/index-B1bntsLR.js +0 -995
- modoboa/frontend_dist/assets/languages-CxjoT69j.js +0 -1
- modoboa/frontend_dist/assets/transports-ChdHV5hX.js +0 -1
- {modoboa-2.6.4.data → modoboa-2.6.5.data}/scripts/modoboa-admin.py +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/WHEEL +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/entry_points.txt +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/licenses/LICENSE +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/top_level.txt +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as k,i as _,h as V,d as B,l as o,o as a,e as n,t as u,y as m,F as r,s as f,c as L,m as F}from"./index-
|
|
1
|
+
import{_ as k,i as _,h as V,d as B,l as o,o as a,e as n,t as u,y as m,F as r,s as f,c as L,m as F}from"./index-BjibLozh.js";import{c as N}from"./VAvatar-BsHplcRP.js";const P={class:"m-label"},w=["onClick"],I={class:"text-grey-darken-1"},S={__name:"ChoiceField",props:{modelValue:{type:[Number,String],default:null},label:{type:String,default:""},choices:{type:Array,default:()=>[]},disabled:{type:Boolean,default:!1},choicesPerLine:{type:Number,required:!1,default:null}},emits:["update:modelValue"],setup(s,{emit:b}){const l=s,h=b,c=_({get(){return l.modelValue},set(e){h("update:modelValue",e)}}),i=V([]);function p(){if(l.choicesPerLine){let e=0;for(;e<l.choices.length;){const d=l.choices.slice(e,e+l.choicesPerLine);i.value.push(d),e+=l.choicesPerLine}}else i.value.push(l.choices)}function v(e){return!l.disabled&&e===c.value?"primary":""}function y(e){l.disabled||(c.value=e)}return B(()=>{p()}),(e,d)=>(a(),o(r,null,[n("div",{class:m(["text-subtitle-1 text-grey-darken-1 mb-5",{"label--disabled":s.disabled}])},[n("label",P,u(s.label),1)],2),(a(!0),o(r,null,f(i.value,(x,C)=>(a(),o("div",{key:C,class:"d-flex flex-grow-0"},[(a(!0),o(r,null,f(x,(t,g)=>(a(),o("div",{key:g,class:m(["choice rounded pa-10 mr-4 text-center flex-grow-0 mb-4",{"choice--disabled":s.disabled,"choice--selected":!s.disabled&&c.value===t.value}]),onClick:z=>y(t.value)},[t.icon?(a(),L(N,{key:0,class:"d-block mb-2 mx-auto",color:v(t.value),size:"x-large",icon:t.icon},null,8,["color","icon"])):F("",!0),n("span",I,u(t.label),1)],10,w))),128))]))),128))],64))}},D=k(S,[["__scopeId","data-v-762c41e2"]]);export{D as C};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as C,c as ae,o as q,w as p,a,k as De,t as J,e as S,f as y,l as ce,F as se,s as Ge,H as ke,A as Je,z as W,I as We,J as Ye,K as Qe,a6 as le,O as we,a5 as Xe,i as L,a0 as oe,bS as Ze,aq as el,v as j,P as ll,bT as al,ar as Se,at as tl,au as ol,a1 as nl,y as ul,b as sl,n as il,u as rl,B as dl,q as cl,m as de}from"./index-B1bntsLR.js";import{d as ml}from"./index-Bp9Fb67E.js";import{a as N}from"./webmail-B7MNMkv_.js";import{V as Me,r as pe}from"./VForm-DkphQD3e.js";import{c as vl,V as fl,b as pl,a as gl}from"./VCard-BoH6kjPa.js";import{V as hl}from"./VFileInput-Dvj95FL5.js";import{V as I,Y as _e,q as Fe,c as Ae,b as Vl,e as yl}from"./VAvatar-JdJfoK0C.js";import{V as bl}from"./VTable-gDsAUSLX.js";import{V as xl}from"./VSpacer-BUxSSJbH.js";import{_ as Cl}from"./HtmlEditor-D753fIAJ.js";import{V as kl}from"./VTextarea-Bdy4UKmV.js";import{c as wl}from"./contacts-Df8ptuMn.js";import{V as Sl}from"./VToolbar-CyrYSqJZ.js";import{V as ne,a as P}from"./VRow-CuVZGqBj.js";import{c as _l,d as Fl,e as Al,f as El,V as Dl,a as Ml}from"./VSelect-D5IXDPEX.js";import{V as ge,b as Ul}from"./VTextField-QXQFhKxm.js";import{b as Il}from"./VProgressCircular-DTDGzl2O.js";import{u as Tl,m as Rl,h as Pl}from"./filter-DHKXX97M.js";import{a as Bl}from"./VInput-CbqehdOu.js";import{f as $l,t as ue,g as ql,V as zl,a as Ll,b as Ee,d as jl,h as Nl}from"./VMenu-B6SCtOwT.js";import{V as Hl}from"./VCheckboxBtn-Ccl786Rg.js";import{u as Ol}from"./tag-BmV84V2s.js";import{V as Kl}from"./VDialog-DIUeAIpw.js";const Gl={class:"w-100 d-flex justify-center"},Jl={__name:"AttachmentsDialog",props:{sessionUid:{type:String,default:null}},emits:["close"],setup(e,{emit:H}){const h=e,o=H,_=C([]),g=C(),m=C(),F=C(!1),T=()=>{o("close")},A=async()=>{const{valid:n}=await m.value.validate();if(!n)return;const E=new FormData;E.append("attachment",g.value),F.value=!0;try{const i=await N.uploadAttachment(h.sessionUid,E);_.value.push(i.data),m.value.reset()}finally{F.value=!1}},k=async n=>{await N.removeAttachment(h.sessionUid,n.tmpname);const E=_.value.findIndex(i=>i.tmpname===n.tmpname);_.value.splice(E,1)};return N.getComposeSession(h.sessionUid).then(n=>{_.value=n.data.attachments}),(n,E)=>(q(),ae(gl,null,{default:p(()=>[a(vl,null,{default:p(()=>[De(J(n.$gettext("Attachments")),1)]),_:1}),a(fl,null,{default:p(()=>[a(Me,{ref_key:"formRef",ref:m},{default:p(()=>[a(hl,{modelValue:g.value,"onUpdate:modelValue":E[0]||(E[0]=i=>g.value=i),density:"compact",variant:"outlined",rules:[y(pe).required]},null,8,["modelValue","rules"]),S("div",Gl,[a(I,{color:"primary",variant:"tonal",text:n.$gettext("Attach"),onClick:A},null,8,["text"])])]),_:1},512),a(bl,{class:"mt-4 border-sm"},{default:p(()=>[S("tbody",null,[(q(!0),ce(se,null,Ge(_.value,i=>(q(),ce("tr",{key:i.fname},[S("td",null,J(i.fname),1),S("td",null,[a(I,{icon:"mdi-trash-can",color:"error",size:"small",variant:"text",onClick:te=>k(i)},null,8,["onClick"])])]))),128))])]),_:1})]),_:1}),a(pl,null,{default:p(()=>[a(xl),a(I,{text:n.$gettext("Close"),variant:"flat",onClick:T},null,8,["text"])]),_:1})]),_:1}))}},Wl={class:"mt-8"},Yl={__name:"BodyEditor",props:ke({editorMode:{type:String,default:null}},{modelValue:{},modelModifiers:{}}),emits:ke(["onToggleHtmlMode"],["update:modelValue"]),setup(e,{emit:H}){const h=e,o=Je(e,"modelValue"),_=H,g=C(!1),m=C(),F=()=>{g.value=!g.value,_("onToggleHtmlMode",g.value)};return W(()=>h.editorMode,T=>{g.value=T==="html"}),(T,A)=>g.value?(q(),ae(y(Cl),{key:0,modelValue:o.value,"onUpdate:modelValue":A[1]||(A[1]=k=>o.value=k),class:"d-flex flex-column flex-grow-1 mt-4"},{"append-toolbar":p(()=>[a(_e,{modelValue:m.value,"onUpdate:modelValue":A[0]||(A[0]=k=>m.value=k),"base-color":"grey-lighten-3",color:"primary",class:"mr-2"},{default:p(()=>[a(I,{text:"HTML",size:"small",onClick:F})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])):(q(),ce(se,{key:1},[S("div",Wl,[a(_e,{modelValue:m.value,"onUpdate:modelValue":A[2]||(A[2]=k=>m.value=k),"base-color":"grey-lighten-3",color:"primary",class:"mr-2"},{default:p(()=>[a(I,{text:"HTML",size:"small",onClick:F})]),_:1},8,["modelValue"])]),a(kl,{modelValue:o.value,"onUpdate:modelValue":A[3]||(A[3]=k=>o.value=k),class:"border-sm"},null,8,["modelValue"])],64))}},Ql=Ye({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Rl({filterKeys:["title"]}),...Al({hideNoData:!0,returnObject:!0}),...ll(Ul({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"])},"VCombobox"),fe=We()({name:"VCombobox",props:Ql(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,H){var Ve;let{emit:h,slots:o}=H;const{t:_}=Qe(),g=C(),m=le(!1),F=le(!0),T=le(!1),A=C(),k=C(),n=le(-1);let E=!1;const{items:i,transformIn:te,transformOut:Y}=$l(e),{textColorClasses:O,textColorStyles:Q}=Il(()=>{var l;return(l=g.value)==null?void 0:l.color}),c=we(e,"modelValue",[],l=>te(Xe(l)),l=>{const s=Y(l);return e.multiple?s:s[0]??null}),X=Bl(e),Z=L(()=>!!(e.chips||o.chip)),R=L(()=>Z.value||!!o.selection),M=le(!e.multiple&&!R.value?((Ve=c.value[0])==null?void 0:Ve.title)??"":""),K=le(null),b=L({get:()=>M.value,set:async l=>{var s;if(M.value=l??"",l===null||l===""&&!e.multiple&&!R.value?c.value=[]:!e.multiple&&!R.value&&(c.value=[ue(e,l)],oe(()=>{var x;return(x=k.value)==null?void 0:x.scrollToIndex(0)})),l&&e.multiple&&((s=e.delimiters)!=null&&s.length)){const x=e.delimiters.map(Ze).join("|"),u=l.split(new RegExp(`(?:${x})+`));if(u.length>1){for(let V of u)V=V.trim(),V&&(B(ue(e,V)),await oe());M.value=""}}l||(n.value=-1),F.value=!l}}),ie=L(()=>typeof e.counterValue=="function"?e.counterValue(c.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?c.value.length:b.value.length),{filteredItems:f,getMatches:t}=Tl(e,i,()=>K.value??(e.alwaysFilter||!F.value?b.value:"")),d=L(()=>e.hideSelected&&K.value===null?f.value.filter(l=>!c.value.some(s=>s.value===l.value)):f.value),G=L(()=>e.hideNoData&&!d.value.length||X.isReadonly.value||X.isDisabled.value),ee=we(e,"menu"),v=L({get:()=>ee.value,set:l=>{var s;ee.value&&!l&&((s=A.value)!=null&&s.ΨopenChildren.size)||l&&G.value||(ee.value=l)}}),{menuId:z,ariaExpanded:Ue,ariaControls:Ie,ariaLabel:he}=_l(e,v);W(M,l=>{E?oe(()=>E=!1):m.value&&!v.value&&(v.value=!0),h("update:search",l)}),W(c,l=>{var s;!e.multiple&&!R.value&&(M.value=((s=l[0])==null?void 0:s.title)??"")});const Te=L(()=>c.value.map(l=>l.value)),me=L(()=>{var s;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&b.value===((s=d.value[0])==null?void 0:s.title))&&d.value.length>0&&!F.value&&!T.value}),ve=C(),Re=Fl(ve,g);function Pe(l){E=!0,oe(()=>E=!1),e.openOnClear&&(v.value=!0)}function Be(){G.value||(v.value=!0)}function $e(l){G.value||(m.value&&(l.preventDefault(),l.stopPropagation()),v.value=!v.value)}function qe(l){var s;(Se(l)||l.key==="Backspace")&&((s=g.value)==null||s.focus())}function ze(l){var u,V,w,$;if(al(l)||X.isReadonly.value)return;const s=(u=g.value)==null?void 0:u.selectionStart,x=c.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(v.value=!0),["Escape"].includes(l.key)&&(v.value=!1),me.value&&["Enter","Tab"].includes(l.key)&&!c.value.some(r=>{let{value:U}=r;return U===d.value[0].value})&&B(f.value[0]),l.key==="ArrowDown"&&me.value&&((V=ve.value)==null||V.focus("next")),l.key==="Enter"&&b.value&&(B(ue(e,b.value),!0,!0),R.value&&(M.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&R.value&&c.value.length>0&&!b.value)return B(c.value[0],!1);if(~n.value){l.preventDefault();const r=n.value;B(c.value[n.value],!1),n.value=r>=x-1?x-2:r}else l.key==="Backspace"&&!b.value&&(n.value=x-1);return}if(e.multiple)if(l.key==="ArrowLeft"){if(n.value<0&&s&&s>0)return;const r=n.value>-1?n.value-1:x-1;c.value[r]?n.value=r:(n.value=-1,(w=g.value)==null||w.setSelectionRange(b.value.length,b.value.length))}else if(l.key==="ArrowRight"){if(n.value<0)return;const r=n.value+1;c.value[r]?n.value=r:(n.value=-1,($=g.value)==null||$.setSelectionRange(0,0))}else~n.value&&Se(l)&&(n.value=-1)}function Le(){var l;e.eager&&((l=k.value)==null||l.calculateVisibleItems())}function je(){var l;m.value&&((l=g.value)==null||l.focus()),F.value=!0,K.value=null}function B(l){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!l||l.props.disabled))if(e.multiple){const u=c.value.findIndex(w=>(e.valueComparator||Fe)(w.value,l.value)),V=s??!~u;if(~u){const w=V?[...c.value,l]:[...c.value];w.splice(u,1),c.value=w}else V&&(c.value=[...c.value,l]);e.clearOnSelect&&(b.value="")}else{const u=s!==!1;c.value=u?[l]:[],(!F.value||e.alwaysFilter)&&M.value&&(K.value=M.value),M.value=u&&!R.value?l.title:"",oe(()=>{v.value=x,F.value=!0})}}function Ne(l){m.value=!0,setTimeout(()=>{T.value=!0})}function He(l){T.value=!1}return W(m,(l,s)=>{if(!(l||l===s)&&(n.value=-1,v.value=!1,b.value)){if(e.multiple){B(ue(e,b.value));return}if(!R.value)return;c.value.some(x=>{let{title:u}=x;return u===b.value})?M.value="":B(ue(e,b.value))}}),W(v,l=>{if(!e.hideSelected&&l&&c.value.length&&F.value){const s=d.value.findIndex(x=>c.value.some(u=>(e.valueComparator||Fe)(u.value,x.value)));el&&window.requestAnimationFrame(()=>{var x;s>=0&&((x=k.value)==null||x.scrollToIndex(s))})}l&&(K.value=null)}),W(i,(l,s)=>{v.value||m.value&&!s.length&&l.length&&(v.value=!0)}),Ol(()=>{const l=!!(!e.hideNoData||d.value.length||o["prepend-item"]||o["append-item"]||o["no-data"]),s=c.value.length>0,x=ge.filterProps(e);return a(ge,j({ref:g},x,{modelValue:b.value,"onUpdate:modelValue":u=>b.value=u,focused:m.value,"onUpdate:focused":u=>m.value=u,validationValue:c.externalValue,counterValue:ie.value,dirty:s,class:["v-combobox",{"v-combobox--active-menu":v.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!R.value,"v-combobox--selecting-index":n.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:X.isReadonly.value,placeholder:s?void 0:e.placeholder,"onClick:clear":Pe,"onMousedown:control":Be,onKeydown:ze,"aria-expanded":Ue.value,"aria-controls":Ie.value}),{...o,default:()=>S(se,null,[a(zl,j({id:z.value,ref:A,modelValue:v.value,"onUpdate:modelValue":u=>v.value=u,activator:"parent",contentClass:"v-combobox__content",disabled:G.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:Le,onAfterLeave:je},e.menuProps),{default:()=>[l&&a(Ll,j({ref:ve,filterable:!0,selected:Te.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:u=>u.preventDefault(),selectable:!0,onKeydown:qe,onFocusin:Ne,onFocusout:He,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},Re,e.listProps),{default:()=>{var u,V,w;return[(u=o["prepend-item"])==null?void 0:u.call(o),!d.value.length&&!e.hideNoData&&(((V=o["no-data"])==null?void 0:V.call(o))??a(Ee,{key:"no-data",title:_(e.noDataText)},null)),a(El,{ref:k,renderless:!0,items:d.value,itemKey:"value"},{default:$=>{var be,xe,Ce;let{item:r,index:U,itemRef:D}=$;const ye=j(r.props,{ref:D,key:r.value,active:me.value&&U===0?!0:void 0,onClick:()=>B(r,null)});return r.type==="divider"?((be=o.divider)==null?void 0:be.call(o,{props:r.raw,index:U}))??a(jl,j(r.props,{key:`divider-${U}`}),null):r.type==="subheader"?((xe=o.subheader)==null?void 0:xe.call(o,{props:r.raw,index:U}))??a(Nl,j(r.props,{key:`subheader-${U}`}),null):((Ce=o.item)==null?void 0:Ce.call(o,{item:r,index:U,props:ye}))??a(Ee,j(ye,{role:"option"}),{prepend:re=>{let{isSelected:Oe}=re;return S(se,null,[e.multiple&&!e.hideSelected?a(Hl,{key:r.value,modelValue:Oe,ripple:!1,tabindex:"-1",onClick:Ke=>Ke.preventDefault()},null):void 0,r.props.prependAvatar&&a(Vl,{image:r.props.prependAvatar},null),r.props.prependIcon&&a(Ae,{icon:r.props.prependIcon},null)])},title:()=>{var re;return F.value?r.title:Pl("v-combobox",r.title,(re=t(r))==null?void 0:re.title)}})}}),(w=o["append-item"])==null?void 0:w.call(o)]}})]}),c.value.map((u,V)=>{function w(D){D.stopPropagation(),D.preventDefault(),B(u,!1)}const $={"onClick:close":w,onKeydown(D){D.key!=="Enter"&&D.key!==" "||(D.preventDefault(),D.stopPropagation(),w(D))},onMousedown(D){D.preventDefault(),D.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},r=Z.value?!!o.chip:!!o.selection,U=r?ol(Z.value?o.chip({item:u,index:V,props:$}):o.selection({item:u,index:V})):void 0;if(!(r&&!U))return S("div",{key:u.value,class:ul(["v-combobox__selection",V===n.value&&["v-combobox__selection--selected",O.value]]),style:nl(V===n.value?Q.value:{})},[Z.value?o.chip?a(yl,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:u.title}}},{default:()=>[U]}):a(Dl,j({key:"chip",closable:e.closableChips,size:"small",text:u.title,disabled:u.props.disabled},$),null):U??S("span",{class:"v-combobox__selection-text"},[u.title,e.multiple&&V<c.value.length-1&&S("span",{class:"v-combobox__selection-comma"},[De(",")])])])})]),"append-inner":function(){var $,r;for(var u=arguments.length,V=new Array(u),w=0;w<u;w++)V[w]=arguments[w];return S(se,null,[($=o["append-inner"])==null?void 0:$.call(o,...V),(!e.hideNoData||e.items.length)&&e.menuIcon?a(Ae,{class:"v-combobox__menu-icon",color:(r=g.value)==null?void 0:r.fieldIconColor,icon:e.menuIcon,onMousedown:$e,onClick:tl,"aria-label":he.value,title:he.value,tabindex:"-1"},null):void 0])}})}),ql({isFocused:m,isPristine:F,menu:v,search:b,selectionIndex:n,filteredItems:f,select:B},g)}}),Xl={class:"position-relative h-100"},Zl={class:"bg-white rounded-lg pa-4 position-relative h-100 d-flex flex-column"},ka={__name:"ComposeEmailForm",props:{originalEmail:{type:Object,default:null},replyAll:{type:Boolean,default:!1}},emits:["onToggleHtmlMode"],setup(e,{emit:H}){const h=e,o=H,_=dl(),g=cl(),{$gettext:m}=sl(),{displayNotification:F}=il(),T=rl(),A=C([]),k=C(0),n=C([]),E=C("plain"),i=C({}),te=C(),Y=C(!1),O=C(!1),Q=C(!1),c=C(!1),X=()=>{g.push({name:"MailboxView"})},Z=()=>{if(i.value={sender:T.authUser.username},h.originalEmail){if(i.value.to=h.originalEmail.reply_to?[h.originalEmail.reply_to]:[h.originalEmail.from_address.address],h.replyAll){let f=h.originalEmail.to.filter(t=>t.address!==T.authUser.username).map(t=>t.fulladdress);h.originalEmail.cc&&h.originalEmail.cc.length&&(f=f.concat(h.originalEmail.cc.map(t=>t.fulladdress))),i.value.cc=f,O.value=!0}i.value.subject=h.originalEmail.subject,i.value.body=h.originalEmail.body,h.originalEmail.message_id&&(i.value.in_reply_to=h.originalEmail.message_id)}},R=async()=>{var G,ee;const{valid:f}=await te.value.validate();if(!f)return;c.value=!0;const t={...i.value},d=[];for(const v of t.to)d.push(typeof v=="string"?v:v.emails[0].address);if(t.to=d,(G=t.cc)!=null&&G.length){const v=[];for(const z of t.cc)v.push(typeof z=="string"?z:z.emails[0].address);t.cc=v}if((ee=t.bcc)!=null&&ee.length){const v=[];for(const z of t.bcc)v.push(typeof z=="string"?z:z.emails[0].address);t.bcc=v}try{await N.sendEmailFromComposeSession(_.query.uid,t),g.push({name:"MailboxView"}),F({msg:m("Email sent")})}catch(v){console.log(v)}finally{c.value=!1}},M=()=>{Y.value=!0},K=async()=>{Y.value=!1;const f=await N.getUploadedAttachments(_.query.uid);k.value=f.data.length},b=ml(async f=>{if(f){const t={search:f},d=await wl.getContacts(t);d.data.length&&(n.value=d.data)}else n.value=[]},500),ie=f=>{f.signature&&(i.value.body?i.value.body+=f.signature:i.value.body=f.signature),E.value=f.editor_format};return W(()=>h.originalEmail,()=>{Z()},{immediate:!0}),_.query.uid?N.getComposeSession(_.query.uid).then(f=>{k.value=f.data.attachments.length,ie(f.data)}):N.createComposeSession().then(f=>{const t={..._.query,uid:f.data.uid};g.push({name:_.name,query:t}),ie(f.data)}),N.getAllowedSenders().then(f=>{A.value=f.data}),(f,t)=>(q(),ce("div",Xl,[S("div",Zl,[a(Sl,{color:"white"},{default:p(()=>[a(I,{icon:"mdi-arrow-left",size:"small",variant:"flat",onClick:X}),a(I,{class:"ml-2",color:"primary",variant:"tonal","prepend-icon":"mdi-send",loading:c.value,text:y(m)("Send"),onClick:R},null,8,["loading","text"]),a(I,{class:"ml-2",variant:"tonal","prepend-icon":"mdi-paperclip",text:y(m)("Attachments")+` (${k.value})`,onClick:M},null,8,["text"])]),_:1}),a(Me,{ref_key:"formRef",ref:te,class:"flex-grow-1 d-flex flex-column"},{default:p(()=>[S("div",null,[a(ne,{class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("From")),1)]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(Ml,{modelValue:i.value.sender,"onUpdate:modelValue":t[0]||(t[0]=d=>i.value.sender=d),items:A.value,"item-title":"address","item-value":"address",variant:"outlined",density:"compact","hide-details":"auto",rules:[y(pe).required]},null,8,["modelValue","items","rules"])]),_:1})]),_:1}),a(ne,{class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("To")),1)]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(fe,{modelValue:i.value.to,"onUpdate:modelValue":t[1]||(t[1]=d=>i.value.to=d),items:n.value,"item-title":"display_name","return-object":"",placeholder:y(m)("Provide one or more addresses"),variant:"outlined",density:"compact","hide-details":"auto",chips:"",multiple:"",rules:[y(pe).required],"onUpdate:search":y(b)},null,8,["modelValue","items","placeholder","rules","onUpdate:search"])]),_:1}),a(P,{cols:"2"},{default:p(()=>[O.value?de("",!0):(q(),ae(I,{key:0,text:y(m)("Cc"),"prepend-icon":"mdi-plus",size:"x-small",variant:"flat",onClick:t[2]||(t[2]=d=>O.value=!0)},null,8,["text"])),Q.value?de("",!0):(q(),ae(I,{key:1,text:y(m)("Bcc"),"prepend-icon":"mdi-plus",size:"x-small",variant:"flat",onClick:t[3]||(t[3]=d=>Q.value=!0)},null,8,["text"]))]),_:1})]),_:1}),O.value?(q(),ae(ne,{key:0,class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("Cc")),1),a(I,{icon:"mdi-close",variant:"flat",size:"x-small",onClick:t[4]||(t[4]=d=>O.value=!1)})]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(fe,{modelValue:i.value.cc,"onUpdate:modelValue":t[5]||(t[5]=d=>i.value.cc=d),items:n.value,"item-title":"display_name","return-object":"",placeholder:y(m)("Provide one or more addresses"),variant:"outlined",density:"compact","hide-details":"auto",chips:"",multiple:"","hide-no-data":!1,"onUpdate:search":y(b)},null,8,["modelValue","items","placeholder","onUpdate:search"])]),_:1})]),_:1})):de("",!0),Q.value?(q(),ae(ne,{key:1,class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("Bcc")),1),a(I,{icon:"mdi-close",variant:"flat",size:"x-small",onClick:t[6]||(t[6]=d=>Q.value=!1)})]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(fe,{modelValue:i.value.bcc,"onUpdate:modelValue":t[7]||(t[7]=d=>i.value.bcc=d),items:n.value,"item-title":"display_name","return-object":"",placeholder:y(m)("Provide one or more addresses"),variant:"outlined",density:"compact","hide-details":"auto",chips:"",multiple:"","hide-no-data":!1,"onUpdate:search":y(b)},null,8,["modelValue","items","placeholder","onUpdate:search"])]),_:1})]),_:1})):de("",!0),a(ne,{class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("Subject")),1)]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(ge,{modelValue:i.value.subject,"onUpdate:modelValue":t[8]||(t[8]=d=>i.value.subject=d),variant:"outlined",density:"compact","hide-details":"auto"},null,8,["modelValue"])]),_:1})]),_:1})]),a(y(Yl),{modelValue:i.value.body,"onUpdate:modelValue":t[9]||(t[9]=d=>i.value.body=d),"editor-mode":E.value,onOnToggleHtmlMode:t[10]||(t[10]=d=>o("onToggleHtmlMode",d))},null,8,["modelValue","editor-mode"])]),_:1},512)]),a(Kl,{modelValue:Y.value,"onUpdate:modelValue":t[11]||(t[11]=d=>Y.value=d),"max-width":"800"},{default:p(()=>[a(y(Jl),{"session-uid":y(_).query.uid,onClose:K},null,8,["session-uid"])]),_:1},8,["modelValue"])]))}};export{ka as _};
|
|
1
|
+
import{h as C,c as ae,o as q,w as p,a,k as De,t as J,e as S,f as y,l as ce,F as se,s as Ge,H as ke,A as Je,z as W,I as We,J as Ye,K as Qe,a6 as le,O as we,a5 as Xe,i as L,a0 as oe,bS as Ze,aq as el,v as j,P as ll,bT as al,ar as Se,at as tl,au as ol,a1 as nl,y as ul,b as sl,n as il,u as rl,B as dl,q as cl,m as de}from"./index-BjibLozh.js";import{d as ml}from"./index-Dwg6jPTX.js";import{a as N}from"./webmail-HVg3ZHC0.js";import{V as Me,r as pe}from"./VForm-ClJU5x_v.js";import{c as vl,V as fl,b as pl,a as gl}from"./VCard-D7AwBs4w.js";import{V as hl}from"./VFileInput-D5qlksIG.js";import{V as I,Y as _e,q as Fe,c as Ae,b as Vl,e as yl}from"./VAvatar-BsHplcRP.js";import{V as bl}from"./VTable-D8ZwwC_B.js";import{V as xl}from"./VSpacer-CBqB9uSt.js";import{_ as Cl}from"./HtmlEditor-DNn3CY-w.js";import{V as kl}from"./VTextarea-DHtXtzqP.js";import{c as wl}from"./contacts-DKmh2q-4.js";import{V as Sl}from"./VToolbar-pvLQtmbU.js";import{V as ne,a as P}from"./VRow-DyK_Mj7R.js";import{c as _l,d as Fl,e as Al,f as El,V as Dl,a as Ml}from"./VSelect-y0E5_vPn.js";import{V as ge,b as Ul}from"./VTextField-DvvH1ciR.js";import{b as Il}from"./VProgressCircular-viI3jDXe.js";import{u as Tl,m as Rl,h as Pl}from"./filter-BVvMTmPG.js";import{a as Bl}from"./VInput-DhzSMFXh.js";import{f as $l,t as ue,g as ql,V as zl,a as Ll,b as Ee,d as jl,h as Nl}from"./VMenu-B53a3gm6.js";import{V as Hl}from"./VCheckboxBtn-B5evxN9K.js";import{u as Ol}from"./tag-CvrHE14f.js";import{V as Kl}from"./VDialog-CUMh3paI.js";const Gl={class:"w-100 d-flex justify-center"},Jl={__name:"AttachmentsDialog",props:{sessionUid:{type:String,default:null}},emits:["close"],setup(e,{emit:H}){const h=e,o=H,_=C([]),g=C(),m=C(),F=C(!1),T=()=>{o("close")},A=async()=>{const{valid:n}=await m.value.validate();if(!n)return;const E=new FormData;E.append("attachment",g.value),F.value=!0;try{const i=await N.uploadAttachment(h.sessionUid,E);_.value.push(i.data),m.value.reset()}finally{F.value=!1}},k=async n=>{await N.removeAttachment(h.sessionUid,n.tmpname);const E=_.value.findIndex(i=>i.tmpname===n.tmpname);_.value.splice(E,1)};return N.getComposeSession(h.sessionUid).then(n=>{_.value=n.data.attachments}),(n,E)=>(q(),ae(gl,null,{default:p(()=>[a(vl,null,{default:p(()=>[De(J(n.$gettext("Attachments")),1)]),_:1}),a(fl,null,{default:p(()=>[a(Me,{ref_key:"formRef",ref:m},{default:p(()=>[a(hl,{modelValue:g.value,"onUpdate:modelValue":E[0]||(E[0]=i=>g.value=i),density:"compact",variant:"outlined",rules:[y(pe).required]},null,8,["modelValue","rules"]),S("div",Gl,[a(I,{color:"primary",variant:"tonal",text:n.$gettext("Attach"),onClick:A},null,8,["text"])])]),_:1},512),a(bl,{class:"mt-4 border-sm"},{default:p(()=>[S("tbody",null,[(q(!0),ce(se,null,Ge(_.value,i=>(q(),ce("tr",{key:i.fname},[S("td",null,J(i.fname),1),S("td",null,[a(I,{icon:"mdi-trash-can",color:"error",size:"small",variant:"text",onClick:te=>k(i)},null,8,["onClick"])])]))),128))])]),_:1})]),_:1}),a(pl,null,{default:p(()=>[a(xl),a(I,{text:n.$gettext("Close"),variant:"flat",onClick:T},null,8,["text"])]),_:1})]),_:1}))}},Wl={class:"mt-8"},Yl={__name:"BodyEditor",props:ke({editorMode:{type:String,default:null}},{modelValue:{},modelModifiers:{}}),emits:ke(["onToggleHtmlMode"],["update:modelValue"]),setup(e,{emit:H}){const h=e,o=Je(e,"modelValue"),_=H,g=C(!1),m=C(),F=()=>{g.value=!g.value,_("onToggleHtmlMode",g.value)};return W(()=>h.editorMode,T=>{g.value=T==="html"}),(T,A)=>g.value?(q(),ae(y(Cl),{key:0,modelValue:o.value,"onUpdate:modelValue":A[1]||(A[1]=k=>o.value=k),class:"d-flex flex-column flex-grow-1 mt-4"},{"append-toolbar":p(()=>[a(_e,{modelValue:m.value,"onUpdate:modelValue":A[0]||(A[0]=k=>m.value=k),"base-color":"grey-lighten-3",color:"primary",class:"mr-2"},{default:p(()=>[a(I,{text:"HTML",size:"small",onClick:F})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])):(q(),ce(se,{key:1},[S("div",Wl,[a(_e,{modelValue:m.value,"onUpdate:modelValue":A[2]||(A[2]=k=>m.value=k),"base-color":"grey-lighten-3",color:"primary",class:"mr-2"},{default:p(()=>[a(I,{text:"HTML",size:"small",onClick:F})]),_:1},8,["modelValue"])]),a(kl,{modelValue:o.value,"onUpdate:modelValue":A[3]||(A[3]=k=>o.value=k),class:"border-sm"},null,8,["modelValue"])],64))}},Ql=Ye({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Rl({filterKeys:["title"]}),...Al({hideNoData:!0,returnObject:!0}),...ll(Ul({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"])},"VCombobox"),fe=We()({name:"VCombobox",props:Ql(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,H){var Ve;let{emit:h,slots:o}=H;const{t:_}=Qe(),g=C(),m=le(!1),F=le(!0),T=le(!1),A=C(),k=C(),n=le(-1);let E=!1;const{items:i,transformIn:te,transformOut:Y}=$l(e),{textColorClasses:O,textColorStyles:Q}=Il(()=>{var l;return(l=g.value)==null?void 0:l.color}),c=we(e,"modelValue",[],l=>te(Xe(l)),l=>{const s=Y(l);return e.multiple?s:s[0]??null}),X=Bl(e),Z=L(()=>!!(e.chips||o.chip)),R=L(()=>Z.value||!!o.selection),M=le(!e.multiple&&!R.value?((Ve=c.value[0])==null?void 0:Ve.title)??"":""),K=le(null),b=L({get:()=>M.value,set:async l=>{var s;if(M.value=l??"",l===null||l===""&&!e.multiple&&!R.value?c.value=[]:!e.multiple&&!R.value&&(c.value=[ue(e,l)],oe(()=>{var x;return(x=k.value)==null?void 0:x.scrollToIndex(0)})),l&&e.multiple&&((s=e.delimiters)!=null&&s.length)){const x=e.delimiters.map(Ze).join("|"),u=l.split(new RegExp(`(?:${x})+`));if(u.length>1){for(let V of u)V=V.trim(),V&&(B(ue(e,V)),await oe());M.value=""}}l||(n.value=-1),F.value=!l}}),ie=L(()=>typeof e.counterValue=="function"?e.counterValue(c.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?c.value.length:b.value.length),{filteredItems:f,getMatches:t}=Tl(e,i,()=>K.value??(e.alwaysFilter||!F.value?b.value:"")),d=L(()=>e.hideSelected&&K.value===null?f.value.filter(l=>!c.value.some(s=>s.value===l.value)):f.value),G=L(()=>e.hideNoData&&!d.value.length||X.isReadonly.value||X.isDisabled.value),ee=we(e,"menu"),v=L({get:()=>ee.value,set:l=>{var s;ee.value&&!l&&((s=A.value)!=null&&s.ΨopenChildren.size)||l&&G.value||(ee.value=l)}}),{menuId:z,ariaExpanded:Ue,ariaControls:Ie,ariaLabel:he}=_l(e,v);W(M,l=>{E?oe(()=>E=!1):m.value&&!v.value&&(v.value=!0),h("update:search",l)}),W(c,l=>{var s;!e.multiple&&!R.value&&(M.value=((s=l[0])==null?void 0:s.title)??"")});const Te=L(()=>c.value.map(l=>l.value)),me=L(()=>{var s;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&b.value===((s=d.value[0])==null?void 0:s.title))&&d.value.length>0&&!F.value&&!T.value}),ve=C(),Re=Fl(ve,g);function Pe(l){E=!0,oe(()=>E=!1),e.openOnClear&&(v.value=!0)}function Be(){G.value||(v.value=!0)}function $e(l){G.value||(m.value&&(l.preventDefault(),l.stopPropagation()),v.value=!v.value)}function qe(l){var s;(Se(l)||l.key==="Backspace")&&((s=g.value)==null||s.focus())}function ze(l){var u,V,w,$;if(al(l)||X.isReadonly.value)return;const s=(u=g.value)==null?void 0:u.selectionStart,x=c.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(v.value=!0),["Escape"].includes(l.key)&&(v.value=!1),me.value&&["Enter","Tab"].includes(l.key)&&!c.value.some(r=>{let{value:U}=r;return U===d.value[0].value})&&B(f.value[0]),l.key==="ArrowDown"&&me.value&&((V=ve.value)==null||V.focus("next")),l.key==="Enter"&&b.value&&(B(ue(e,b.value),!0,!0),R.value&&(M.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&R.value&&c.value.length>0&&!b.value)return B(c.value[0],!1);if(~n.value){l.preventDefault();const r=n.value;B(c.value[n.value],!1),n.value=r>=x-1?x-2:r}else l.key==="Backspace"&&!b.value&&(n.value=x-1);return}if(e.multiple)if(l.key==="ArrowLeft"){if(n.value<0&&s&&s>0)return;const r=n.value>-1?n.value-1:x-1;c.value[r]?n.value=r:(n.value=-1,(w=g.value)==null||w.setSelectionRange(b.value.length,b.value.length))}else if(l.key==="ArrowRight"){if(n.value<0)return;const r=n.value+1;c.value[r]?n.value=r:(n.value=-1,($=g.value)==null||$.setSelectionRange(0,0))}else~n.value&&Se(l)&&(n.value=-1)}function Le(){var l;e.eager&&((l=k.value)==null||l.calculateVisibleItems())}function je(){var l;m.value&&((l=g.value)==null||l.focus()),F.value=!0,K.value=null}function B(l){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!l||l.props.disabled))if(e.multiple){const u=c.value.findIndex(w=>(e.valueComparator||Fe)(w.value,l.value)),V=s??!~u;if(~u){const w=V?[...c.value,l]:[...c.value];w.splice(u,1),c.value=w}else V&&(c.value=[...c.value,l]);e.clearOnSelect&&(b.value="")}else{const u=s!==!1;c.value=u?[l]:[],(!F.value||e.alwaysFilter)&&M.value&&(K.value=M.value),M.value=u&&!R.value?l.title:"",oe(()=>{v.value=x,F.value=!0})}}function Ne(l){m.value=!0,setTimeout(()=>{T.value=!0})}function He(l){T.value=!1}return W(m,(l,s)=>{if(!(l||l===s)&&(n.value=-1,v.value=!1,b.value)){if(e.multiple){B(ue(e,b.value));return}if(!R.value)return;c.value.some(x=>{let{title:u}=x;return u===b.value})?M.value="":B(ue(e,b.value))}}),W(v,l=>{if(!e.hideSelected&&l&&c.value.length&&F.value){const s=d.value.findIndex(x=>c.value.some(u=>(e.valueComparator||Fe)(u.value,x.value)));el&&window.requestAnimationFrame(()=>{var x;s>=0&&((x=k.value)==null||x.scrollToIndex(s))})}l&&(K.value=null)}),W(i,(l,s)=>{v.value||m.value&&!s.length&&l.length&&(v.value=!0)}),Ol(()=>{const l=!!(!e.hideNoData||d.value.length||o["prepend-item"]||o["append-item"]||o["no-data"]),s=c.value.length>0,x=ge.filterProps(e);return a(ge,j({ref:g},x,{modelValue:b.value,"onUpdate:modelValue":u=>b.value=u,focused:m.value,"onUpdate:focused":u=>m.value=u,validationValue:c.externalValue,counterValue:ie.value,dirty:s,class:["v-combobox",{"v-combobox--active-menu":v.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!R.value,"v-combobox--selecting-index":n.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:X.isReadonly.value,placeholder:s?void 0:e.placeholder,"onClick:clear":Pe,"onMousedown:control":Be,onKeydown:ze,"aria-expanded":Ue.value,"aria-controls":Ie.value}),{...o,default:()=>S(se,null,[a(zl,j({id:z.value,ref:A,modelValue:v.value,"onUpdate:modelValue":u=>v.value=u,activator:"parent",contentClass:"v-combobox__content",disabled:G.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:Le,onAfterLeave:je},e.menuProps),{default:()=>[l&&a(Ll,j({ref:ve,filterable:!0,selected:Te.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:u=>u.preventDefault(),selectable:!0,onKeydown:qe,onFocusin:Ne,onFocusout:He,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},Re,e.listProps),{default:()=>{var u,V,w;return[(u=o["prepend-item"])==null?void 0:u.call(o),!d.value.length&&!e.hideNoData&&(((V=o["no-data"])==null?void 0:V.call(o))??a(Ee,{key:"no-data",title:_(e.noDataText)},null)),a(El,{ref:k,renderless:!0,items:d.value,itemKey:"value"},{default:$=>{var be,xe,Ce;let{item:r,index:U,itemRef:D}=$;const ye=j(r.props,{ref:D,key:r.value,active:me.value&&U===0?!0:void 0,onClick:()=>B(r,null)});return r.type==="divider"?((be=o.divider)==null?void 0:be.call(o,{props:r.raw,index:U}))??a(jl,j(r.props,{key:`divider-${U}`}),null):r.type==="subheader"?((xe=o.subheader)==null?void 0:xe.call(o,{props:r.raw,index:U}))??a(Nl,j(r.props,{key:`subheader-${U}`}),null):((Ce=o.item)==null?void 0:Ce.call(o,{item:r,index:U,props:ye}))??a(Ee,j(ye,{role:"option"}),{prepend:re=>{let{isSelected:Oe}=re;return S(se,null,[e.multiple&&!e.hideSelected?a(Hl,{key:r.value,modelValue:Oe,ripple:!1,tabindex:"-1",onClick:Ke=>Ke.preventDefault()},null):void 0,r.props.prependAvatar&&a(Vl,{image:r.props.prependAvatar},null),r.props.prependIcon&&a(Ae,{icon:r.props.prependIcon},null)])},title:()=>{var re;return F.value?r.title:Pl("v-combobox",r.title,(re=t(r))==null?void 0:re.title)}})}}),(w=o["append-item"])==null?void 0:w.call(o)]}})]}),c.value.map((u,V)=>{function w(D){D.stopPropagation(),D.preventDefault(),B(u,!1)}const $={"onClick:close":w,onKeydown(D){D.key!=="Enter"&&D.key!==" "||(D.preventDefault(),D.stopPropagation(),w(D))},onMousedown(D){D.preventDefault(),D.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},r=Z.value?!!o.chip:!!o.selection,U=r?ol(Z.value?o.chip({item:u,index:V,props:$}):o.selection({item:u,index:V})):void 0;if(!(r&&!U))return S("div",{key:u.value,class:ul(["v-combobox__selection",V===n.value&&["v-combobox__selection--selected",O.value]]),style:nl(V===n.value?Q.value:{})},[Z.value?o.chip?a(yl,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:u.title}}},{default:()=>[U]}):a(Dl,j({key:"chip",closable:e.closableChips,size:"small",text:u.title,disabled:u.props.disabled},$),null):U??S("span",{class:"v-combobox__selection-text"},[u.title,e.multiple&&V<c.value.length-1&&S("span",{class:"v-combobox__selection-comma"},[De(",")])])])})]),"append-inner":function(){var $,r;for(var u=arguments.length,V=new Array(u),w=0;w<u;w++)V[w]=arguments[w];return S(se,null,[($=o["append-inner"])==null?void 0:$.call(o,...V),(!e.hideNoData||e.items.length)&&e.menuIcon?a(Ae,{class:"v-combobox__menu-icon",color:(r=g.value)==null?void 0:r.fieldIconColor,icon:e.menuIcon,onMousedown:$e,onClick:tl,"aria-label":he.value,title:he.value,tabindex:"-1"},null):void 0])}})}),ql({isFocused:m,isPristine:F,menu:v,search:b,selectionIndex:n,filteredItems:f,select:B},g)}}),Xl={class:"position-relative h-100"},Zl={class:"bg-white rounded-lg pa-4 position-relative h-100 d-flex flex-column"},ka={__name:"ComposeEmailForm",props:{originalEmail:{type:Object,default:null},replyAll:{type:Boolean,default:!1}},emits:["onToggleHtmlMode"],setup(e,{emit:H}){const h=e,o=H,_=dl(),g=cl(),{$gettext:m}=sl(),{displayNotification:F}=il(),T=rl(),A=C([]),k=C(0),n=C([]),E=C("plain"),i=C({}),te=C(),Y=C(!1),O=C(!1),Q=C(!1),c=C(!1),X=()=>{g.push({name:"MailboxView"})},Z=()=>{if(i.value={sender:T.authUser.username},h.originalEmail){if(i.value.to=h.originalEmail.reply_to?[h.originalEmail.reply_to]:[h.originalEmail.from_address.address],h.replyAll){let f=h.originalEmail.to.filter(t=>t.address!==T.authUser.username).map(t=>t.fulladdress);h.originalEmail.cc&&h.originalEmail.cc.length&&(f=f.concat(h.originalEmail.cc.map(t=>t.fulladdress))),i.value.cc=f,O.value=!0}i.value.subject=h.originalEmail.subject,i.value.body=h.originalEmail.body,h.originalEmail.message_id&&(i.value.in_reply_to=h.originalEmail.message_id)}},R=async()=>{var G,ee;const{valid:f}=await te.value.validate();if(!f)return;c.value=!0;const t={...i.value},d=[];for(const v of t.to)d.push(typeof v=="string"?v:v.emails[0].address);if(t.to=d,(G=t.cc)!=null&&G.length){const v=[];for(const z of t.cc)v.push(typeof z=="string"?z:z.emails[0].address);t.cc=v}if((ee=t.bcc)!=null&&ee.length){const v=[];for(const z of t.bcc)v.push(typeof z=="string"?z:z.emails[0].address);t.bcc=v}try{await N.sendEmailFromComposeSession(_.query.uid,t),g.push({name:"MailboxView"}),F({msg:m("Email sent")})}catch(v){console.log(v)}finally{c.value=!1}},M=()=>{Y.value=!0},K=async()=>{Y.value=!1;const f=await N.getUploadedAttachments(_.query.uid);k.value=f.data.length},b=ml(async f=>{if(f){const t={search:f},d=await wl.getContacts(t);d.data.length&&(n.value=d.data)}else n.value=[]},500),ie=f=>{f.signature&&(i.value.body?i.value.body+=f.signature:i.value.body=f.signature),E.value=f.editor_format};return W(()=>h.originalEmail,()=>{Z()},{immediate:!0}),_.query.uid?N.getComposeSession(_.query.uid).then(f=>{k.value=f.data.attachments.length,ie(f.data)}):N.createComposeSession().then(f=>{const t={..._.query,uid:f.data.uid};g.push({name:_.name,query:t}),ie(f.data)}),N.getAllowedSenders().then(f=>{A.value=f.data}),(f,t)=>(q(),ce("div",Xl,[S("div",Zl,[a(Sl,{color:"white"},{default:p(()=>[a(I,{icon:"mdi-arrow-left",size:"small",variant:"flat",onClick:X}),a(I,{class:"ml-2",color:"primary",variant:"tonal","prepend-icon":"mdi-send",loading:c.value,text:y(m)("Send"),onClick:R},null,8,["loading","text"]),a(I,{class:"ml-2",variant:"tonal","prepend-icon":"mdi-paperclip",text:y(m)("Attachments")+` (${k.value})`,onClick:M},null,8,["text"])]),_:1}),a(Me,{ref_key:"formRef",ref:te,class:"flex-grow-1 d-flex flex-column"},{default:p(()=>[S("div",null,[a(ne,{class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("From")),1)]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(Ml,{modelValue:i.value.sender,"onUpdate:modelValue":t[0]||(t[0]=d=>i.value.sender=d),items:A.value,"item-title":"address","item-value":"address",variant:"outlined",density:"compact","hide-details":"auto",rules:[y(pe).required]},null,8,["modelValue","items","rules"])]),_:1})]),_:1}),a(ne,{class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("To")),1)]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(fe,{modelValue:i.value.to,"onUpdate:modelValue":t[1]||(t[1]=d=>i.value.to=d),items:n.value,"item-title":"display_name","return-object":"",placeholder:y(m)("Provide one or more addresses"),variant:"outlined",density:"compact","hide-details":"auto",chips:"",multiple:"",rules:[y(pe).required],"onUpdate:search":y(b)},null,8,["modelValue","items","placeholder","rules","onUpdate:search"])]),_:1}),a(P,{cols:"2"},{default:p(()=>[O.value?de("",!0):(q(),ae(I,{key:0,text:y(m)("Cc"),"prepend-icon":"mdi-plus",size:"x-small",variant:"flat",onClick:t[2]||(t[2]=d=>O.value=!0)},null,8,["text"])),Q.value?de("",!0):(q(),ae(I,{key:1,text:y(m)("Bcc"),"prepend-icon":"mdi-plus",size:"x-small",variant:"flat",onClick:t[3]||(t[3]=d=>Q.value=!0)},null,8,["text"]))]),_:1})]),_:1}),O.value?(q(),ae(ne,{key:0,class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("Cc")),1),a(I,{icon:"mdi-close",variant:"flat",size:"x-small",onClick:t[4]||(t[4]=d=>O.value=!1)})]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(fe,{modelValue:i.value.cc,"onUpdate:modelValue":t[5]||(t[5]=d=>i.value.cc=d),items:n.value,"item-title":"display_name","return-object":"",placeholder:y(m)("Provide one or more addresses"),variant:"outlined",density:"compact","hide-details":"auto",chips:"",multiple:"","hide-no-data":!1,"onUpdate:search":y(b)},null,8,["modelValue","items","placeholder","onUpdate:search"])]),_:1})]),_:1})):de("",!0),Q.value?(q(),ae(ne,{key:1,class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("Bcc")),1),a(I,{icon:"mdi-close",variant:"flat",size:"x-small",onClick:t[6]||(t[6]=d=>Q.value=!1)})]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(fe,{modelValue:i.value.bcc,"onUpdate:modelValue":t[7]||(t[7]=d=>i.value.bcc=d),items:n.value,"item-title":"display_name","return-object":"",placeholder:y(m)("Provide one or more addresses"),variant:"outlined",density:"compact","hide-details":"auto",chips:"",multiple:"","hide-no-data":!1,"onUpdate:search":y(b)},null,8,["modelValue","items","placeholder","onUpdate:search"])]),_:1})]),_:1})):de("",!0),a(ne,{class:"align-center"},{default:p(()=>[a(P,{cols:"2"},{default:p(()=>[S("span",null,J(y(m)("Subject")),1)]),_:1}),a(P,{cols:"8"},{default:p(()=>[a(ge,{modelValue:i.value.subject,"onUpdate:modelValue":t[8]||(t[8]=d=>i.value.subject=d),variant:"outlined",density:"compact","hide-details":"auto"},null,8,["modelValue"])]),_:1})]),_:1})]),a(y(Yl),{modelValue:i.value.body,"onUpdate:modelValue":t[9]||(t[9]=d=>i.value.body=d),"editor-mode":E.value,onOnToggleHtmlMode:t[10]||(t[10]=d=>o("onToggleHtmlMode",d))},null,8,["modelValue","editor-mode"])]),_:1},512)]),a(Kl,{modelValue:Y.value,"onUpdate:modelValue":t[11]||(t[11]=d=>Y.value=d),"max-width":"800"},{default:p(()=>[a(y(Jl),{"session-uid":y(_).query.uid,onClose:K},null,8,["session-uid"])]),_:1},8,["modelValue"])]))}};export{ka as _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as o}from"./ComposeEmailForm-Ns5SYs4J.js";import{c as r,f as t,o as m}from"./index-BjibLozh.js";import"./index-Dwg6jPTX.js";import"./webmail-HVg3ZHC0.js";import"./VForm-ClJU5x_v.js";import"./tag-CvrHE14f.js";import"./VInput-DhzSMFXh.js";import"./VAvatar-BsHplcRP.js";import"./VProgressCircular-viI3jDXe.js";import"./VMenu-B53a3gm6.js";import"./ssrBoot-ChTB-PYP.js";import"./VCard-D7AwBs4w.js";import"./VFileInput-D5qlksIG.js";import"./VTextField-DvvH1ciR.js";import"./VSelect-y0E5_vPn.js";import"./VCheckboxBtn-B5evxN9K.js";import"./VSelectionControl-Dkms9_P5.js";import"./VTable-D8ZwwC_B.js";import"./VSpacer-CBqB9uSt.js";/* empty css */import"./HtmlEditor-DNn3CY-w.js";import"./VTextarea-DHtXtzqP.js";import"./contacts-DKmh2q-4.js";import"./VToolbar-pvLQtmbU.js";import"./VRow-DyK_Mj7R.js";import"./filter-BVvMTmPG.js";import"./VDialog-CUMh3paI.js";const F={__name:"ComposeEmailView",setup(p){return(i,e)=>(m(),r(t(o)))}};export{F as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as y,h as s,c as V,w as a,a as l,L as C,k as r,t as n,am as L,x as T,m as z,aV as D,o as x}from"./index-
|
|
1
|
+
import{b as y,h as s,c as V,w as a,a as l,L as C,k as r,t as n,am as L,x as T,m as z,aV as D,o as x}from"./index-BjibLozh.js";import{V as S,a as B}from"./VToolbar-pvLQtmbU.js";import{V as K,b as N,a as I}from"./VCard-D7AwBs4w.js";import{V as O}from"./VSpacer-CBqB9uSt.js";import{V as _}from"./VAvatar-BsHplcRP.js";import{V as $}from"./VDialog-CUMh3paI.js";const U={__name:"ConfirmDialog",props:{callback_agree:{type:Function,default:null}},setup(b,{expose:g}){const{$gettext:f}=y(),m=b,o=s(!1),c=s(""),p=s("");let u;const e=s({color:"primary",width:400,zIndex:2400,noconfirm:!1,cancelLabel:f("Cancel"),agreeLabel:f("OK")});function w(i,t,d){return o.value=!0,p.value=i,c.value=t,e.value=Object.assign(e.value,d),new Promise(k=>{u=k})}g({open:w});async function h(){m.callback_agree!==null&&!await m.callback_agree()||(u(!0),o.value=!1)}function v(){u(!1),o.value=!1}return(i,t)=>(x(),V($,{modelValue:o.value,"onUpdate:modelValue":t[0]||(t[0]=d=>o.value=d),"max-width":e.value.width,"z-index":e.value.zIndex,onKeydown:D(v,["esc"])},{default:a(()=>[l(I,null,{default:a(()=>[l(S,{color:e.value.color,density:"compact",variant:"flat"},{default:a(()=>[l(B,{class:"text-body-2 font-weight-bold"},{default:a(()=>[r(n(p.value),1)]),_:1})]),_:1},8,["color"]),C(l(K,{class:"pa-4"},{default:a(()=>[r(n(c.value)+" ",1),T(i.$slots,"default")]),_:3},512),[[L,!!c.value]]),l(N,{class:"pt-3"},{default:a(()=>[l(O),e.value.noconfirm?z("",!0):(x(),V(_,{key:0,onClick:v},{default:a(()=>[r(n(e.value.cancelLabel),1)]),_:1})),l(_,{color:e.value.color,onClick:h},{default:a(()=>[r(n(e.value.agreeLabel),1)]),_:1},8,["color"])]),_:1})]),_:3})]),_:3},8,["modelValue","max-width","z-index"]))}};export{U as _};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as oe,r as Oe,c as C,o as b,w as f,a as u,bc as pe,bd as Ye,a6 as A,i as x,a2 as He,d as ee,z as W,aB as we,be as Ue,ah as q,aa as ke,b8 as be,aE as We,I as _e,J as xe,ac as ze,ao as Ve,Q as Xe,O as Se,h as Y,a7 as te,a0 as Ce,aX as Fe,T as je,e as P,v as J,F as L,ap as Te,V as qe,u as Pe,q as Ge,f as O,p as Ze,l as I,s as G,m as Q,k as F,t as R,b as Be,bf as Je,ae as Ke,N as Qe,bg as et,P as tt,n as at,g as nt,x as ce}from"./index-B1bntsLR.js";import{u as ot}from"./theme-myV4ekXo.js";import{V as lt}from"./VContainer-DKMcKasC.js";import{V as rt,a as st}from"./VApp-B0vRc3-6.js";import{u as ut}from"./logos-95XYS6uH.js";import{u as it}from"./layout.store-CF5WRevH.js";import{x as ct,l as vt,n as Me,y as dt,z as ft,o as Ee,p as mt,A as ht,j as Le,e as Ie,V as Z,c as K,b as gt,B as yt,C as pt,g as wt,a as kt,D as bt,E as _t,F as xt}from"./VAvatar-JdJfoK0C.js";import{j as Ne,l as Vt,n as St,a as ne,h as Ct,b as $,o as Tt,V as ae,d as ve,c as de,e as fe,g as Pt,p as Bt}from"./VMenu-B6SCtOwT.js";import{u as me}from"./VProgressCircular-DTDGzl2O.js";import{u as $e,c as Mt,b as Et}from"./tag-BmV84V2s.js";import{a as Lt,b as It,V as Nt,u as $t}from"./layout-CjSP_k58.js";import{u as At}from"./ssrBoot-05WtbG6H.js";import{u as Dt}from"./global.store-DYMmGKpn.js";import{V as Rt}from"./VBadge-Cg5iu5LG.js";import{a as he}from"./VCard-BoH6kjPa.js";import{V as Ot,a as Yt}from"./VRow-CuVZGqBj.js";import{V as Ht}from"./VSheet-HeHw6g5_.js";const Ut={__name:"ConnectedView",setup(e){return(s,n)=>{const i=Oe("router-view");return b(),C(rt,null,{default:f(()=>[u(lt,{fluid:"",style:{height:"100%"}},{default:f(()=>[u(i,null,{default:f(({Component:t})=>[u(pe,{name:"fade"},{default:f(()=>[(b(),C(Ye(t)))]),_:2},1024)]),_:1})]),_:1})]),_:1})}}},Wt=oe(Ut,[["__scopeId","data-v-b2ffa9e6"]]);function zt(e){let{rootEl:s,isSticky:n,layoutItemStyles:i}=e;const t=A(!1),v=A(0),l=x(()=>{const _=typeof t.value=="boolean"?"top":t.value;return[n.value?{top:"auto",bottom:"auto",height:void 0}:void 0,t.value?{[_]:He(v.value)}:{top:i.value.top}]});ee(()=>{W(n,_=>{_?window.addEventListener("scroll",p,{passive:!0}):window.removeEventListener("scroll",p)},{immediate:!0})}),we(()=>{window.removeEventListener("scroll",p)});let y=0;function p(){const _=y>window.scrollY?"up":"down",o=s.value.getBoundingClientRect(),d=parseFloat(i.value.top??0),c=window.scrollY-Math.max(0,v.value-d),a=o.height+Math.max(v.value,d)-window.scrollY-window.innerHeight,r=parseFloat(getComputedStyle(s.value).getPropertyValue("--v-body-scroll-y"))||0;o.height<window.innerHeight-d?(t.value="top",v.value=d):_==="up"&&t.value==="bottom"||_==="down"&&t.value==="top"?(v.value=window.scrollY+o.top-r,t.value=!0):_==="down"&&a<=0?(v.value=0,t.value="bottom"):_==="up"&&c<=0&&(r?t.value!=="top"&&(v.value=-c+r+d,t.value="top"):(v.value=o.top+c,t.value="top")),y=window.scrollY}return{isStuck:t,stickyStyles:l}}const Xt=100,Ft=20;function ge(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function ye(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let s=0;for(let n=e.length-1;n>0;n--){if(e[n].t===e[n-1].t)continue;const i=ge(s),t=(e[n].d-e[n-1].d)/(e[n].t-e[n-1].t);s+=(t-i)*Math.abs(t),n===e.length-1&&(s*=.5)}return ge(s)*1e3}function jt(){const e={};function s(t){Array.from(t.changedTouches).forEach(v=>{(e[v.identifier]??(e[v.identifier]=new Ue(Ft))).push([t.timeStamp,v])})}function n(t){Array.from(t.changedTouches).forEach(v=>{delete e[v.identifier]})}function i(t){var _;const v=(_=e[t])==null?void 0:_.values().reverse();if(!v)throw new Error(`No samples for touch id ${t}`);const l=v[0],y=[],p=[];for(const o of v){if(l[0]-o[0]>Xt)break;y.push({t:o[0],d:o[1].clientX}),p.push({t:o[0],d:o[1].clientY})}return{x:ye(y),y:ye(p),get direction(){const{x:o,y:d}=this,[c,a]=[Math.abs(o),Math.abs(d)];return c>a&&o>=0?"right":c>a&&o<=0?"left":a>c&&d>=0?"down":a>c&&d<=0?"up":qt()}}}return{addMovement:s,endTouch:n,getVelocity:i}}function qt(){throw new Error}function Gt(e){let{el:s,isActive:n,isTemporary:i,width:t,touchless:v,position:l}=e;ee(()=>{window.addEventListener("touchstart",E,{passive:!0}),window.addEventListener("touchmove",B,{passive:!1}),window.addEventListener("touchend",z,{passive:!0})}),we(()=>{window.removeEventListener("touchstart",E),window.removeEventListener("touchmove",B),window.removeEventListener("touchend",z)});const y=x(()=>["left","right"].includes(l.value)),{addMovement:p,endTouch:_,getVelocity:o}=jt();let d=!1;const c=A(!1),a=A(0),r=A(0);let V;function D(m,g){return(l.value==="left"?m:l.value==="right"?document.documentElement.clientWidth-m:l.value==="top"?m:l.value==="bottom"?document.documentElement.clientHeight-m:X())-(g?t.value:0)}function H(m){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const w=l.value==="left"?(m-r.value)/t.value:l.value==="right"?(document.documentElement.clientWidth-m-r.value)/t.value:l.value==="top"?(m-r.value)/t.value:l.value==="bottom"?(document.documentElement.clientHeight-m-r.value)/t.value:X();return g?We(w):w}function E(m){if(v.value)return;const g=m.changedTouches[0].clientX,w=m.changedTouches[0].clientY,k=25,S=l.value==="left"?g<k:l.value==="right"?g>document.documentElement.clientWidth-k:l.value==="top"?w<k:l.value==="bottom"?w>document.documentElement.clientHeight-k:X(),h=n.value&&(l.value==="left"?g<t.value:l.value==="right"?g>document.documentElement.clientWidth-t.value:l.value==="top"?w<t.value:l.value==="bottom"?w>document.documentElement.clientHeight-t.value:X());(S||h||n.value&&i.value)&&(V=[g,w],r.value=D(y.value?g:w,n.value),a.value=H(y.value?g:w),d=r.value>-20&&r.value<80,_(m),p(m))}function B(m){const g=m.changedTouches[0].clientX,w=m.changedTouches[0].clientY;if(d){if(!m.cancelable){d=!1;return}const S=Math.abs(g-V[0]),h=Math.abs(w-V[1]);(y.value?S>h&&S>3:h>S&&h>3)?(c.value=!0,d=!1):(y.value?h:S)>3&&(d=!1)}if(!c.value)return;m.preventDefault(),p(m);const k=H(y.value?g:w,!1);a.value=Math.max(0,Math.min(1,k)),k>1?r.value=D(y.value?g:w,!0):k<0&&(r.value=D(y.value?g:w,!1))}function z(m){if(d=!1,!c.value)return;p(m),c.value=!1;const g=o(m.changedTouches[0].identifier),w=Math.abs(g.x),k=Math.abs(g.y);(y.value?w>k&&w>400:k>w&&k>3)?n.value=g.direction===({left:"right",right:"left",top:"down",bottom:"up"}[l.value]||X()):n.value=a.value>.5}const U=x(()=>c.value?{transform:l.value==="left"?`translateX(calc(-100% + ${a.value*t.value}px))`:l.value==="right"?`translateX(calc(100% - ${a.value*t.value}px))`:l.value==="top"?`translateY(calc(-100% + ${a.value*t.value}px))`:l.value==="bottom"?`translateY(calc(100% - ${a.value*t.value}px))`:X(),transition:"none"}:void 0);return q(c,()=>{var w,k;const m=((w=s.value)==null?void 0:w.style.transform)??null,g=((k=s.value)==null?void 0:k.style.transition)??null;ke(()=>{var S,h,M,N;(h=s.value)==null||h.style.setProperty("transform",((S=U.value)==null?void 0:S.transform)||"none"),(N=s.value)==null||N.style.setProperty("transition",((M=U.value)==null?void 0:M.transition)||null)}),be(()=>{var S,h;(S=s.value)==null||S.style.setProperty("transform",m),(h=s.value)==null||h.style.setProperty("transition",g)})}),{isDragging:c,dragProgress:a,dragStyles:U}}function X(){throw new Error}const Zt=["start","end","left","right","top","bottom"],Jt=xe({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>Zt.includes(e)},sticky:Boolean,...ht(),...Et(),...St(),...qe({mobile:null}),...mt(),...It(),...Ee(),...Mt({tag:"nav"}),...Te()},"VNavigationDrawer"),Kt=_e()({name:"VNavigationDrawer",props:Jt(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,s){let{attrs:n,emit:i,slots:t}=s;const{isRtl:v}=ze(),{themeClasses:l}=Ve(e),{borderClasses:y}=ct(e),{backgroundColorClasses:p,backgroundColorStyles:_}=me(()=>e.color),{elevationClasses:o}=vt(e),{displayClasses:d,mobile:c}=Xe(e),{roundedClasses:a}=Me(e),r=dt(),V=Se(e,"modelValue",null,T=>!!T),{ssrBootStyles:D}=At(),{scopeId:H}=Ne(),E=Y(),B=A(!1),{runOpenDelay:z,runCloseDelay:U}=Vt(e,T=>{B.value=T}),m=x(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),g=x(()=>ft(e.location,v.value)),w=te(()=>e.persistent),k=x(()=>!e.permanent&&(c.value||e.temporary)),S=x(()=>e.sticky&&!k.value&&g.value!=="bottom");q(()=>e.expandOnHover&&e.rail!=null,()=>{W(B,T=>i("update:rail",!T))}),q(()=>!e.disableResizeWatcher,()=>{W(k,T=>!e.permanent&&Ce(()=>V.value=!T))}),q(()=>!e.disableRouteWatcher&&!!r,()=>{W(r.currentRoute,()=>k.value&&(V.value=!1))}),W(()=>e.permanent,T=>{T&&(V.value=!0)}),e.modelValue==null&&!k.value&&(V.value=e.permanent||!c.value);const{isDragging:h,dragProgress:M}=Gt({el:E,isActive:V,isTemporary:k,width:m,touchless:te(()=>e.touchless),position:g}),N=x(()=>{const T=k.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):m.value;return h.value?T*M.value:T}),{layoutItemStyles:j,layoutItemScrimStyles:Ae}=Lt({id:e.name,order:x(()=>parseInt(e.order,10)),position:g,layoutSize:N,elementSize:m,active:Fe(V),disableTransitions:te(()=>h.value),absolute:x(()=>e.absolute||S.value&&typeof le.value!="string")}),{isStuck:le,stickyStyles:De}=zt({rootEl:E,isSticky:S,layoutItemStyles:j}),re=me(()=>typeof e.scrim=="string"?e.scrim:null),Re=x(()=>({...h.value?{opacity:M.value*.2,transition:"none"}:void 0,...Ae.value}));return je({VList:{bgColor:"transparent"}}),$e(()=>{const T=t.image||e.image;return P(L,null,[u(e.tag,J({ref:E,onMouseenter:z,onMouseleave:U,class:["v-navigation-drawer",`v-navigation-drawer--${g.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":k.value,"v-navigation-drawer--persistent":w.value,"v-navigation-drawer--active":V.value,"v-navigation-drawer--sticky":S.value},l.value,p.value,y.value,d.value,o.value,a.value,e.class],style:[_.value,j.value,D.value,De.value,e.style]},H,n),{default:()=>{var se,ue,ie;return[T&&P("div",{key:"image",class:"v-navigation-drawer__img"},[t.image?u(Ie,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},t.image):u(Le,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),t.prepend&&P("div",{class:"v-navigation-drawer__prepend"},[(se=t.prepend)==null?void 0:se.call(t)]),P("div",{class:"v-navigation-drawer__content"},[(ue=t.default)==null?void 0:ue.call(t)]),t.append&&P("div",{class:"v-navigation-drawer__append"},[(ie=t.append)==null?void 0:ie.call(t)])]}}),u(pe,{name:"fade-transition"},{default:()=>[k.value&&(h.value||V.value)&&!!e.scrim&&P("div",J({class:["v-navigation-drawer__scrim",re.backgroundColorClasses.value],style:[Re.value,re.backgroundColorStyles.value],onClick:()=>{w.value||(V.value=!1)}},H),null)]})])}),{isStuck:le}}}),Qt={class:"d-flex align-center"},ea={__name:"NavBar",props:{color:{type:String,default:"primary"},menuItems:{type:Array,required:!1,default:null},logoRoute:{type:Object,default:null}},setup(e){const s=e,n=Pe(),i=it(),t=Ge(),{menuLogoPath:v}=ut(),l=Y(!1),y=Y(!0),p=x(()=>n.authUser),_=x(()=>n.isAuthenticated);function o(d){return _.value?(d.roles===void 0||d.roles.indexOf(p.value.role)!==-1)&&(d.condition===void 0||d.condition())&&d.activated!==!1:!1}return(d,c)=>(b(),C(Kt,{modelValue:y.value,"onUpdate:modelValue":c[2]||(c[2]=a=>y.value=a),rail:l.value,permanent:"",color:e.color,app:""},{default:f(()=>[P("div",Qt,[u(Le,{src:O(v),"max-width":"190",class:"logo",onClick:c[0]||(c[0]=a=>O(t).push(s.logoRoute))},null,8,["src"]),u(Z,{icon:l.value?"mdi-chevron-right":"mdi-chevron-left",variant:"text",onClick:c[1]||(c[1]=Ze(a=>l.value=!l.value,["stop"]))},null,8,["icon"])]),u(ne,{density:O(i).compactLeftMenu?"compact":"default",lines:!O(i).compactLeftMenu,nav:""},{default:f(()=>[(b(!0),I(L,null,G(e.menuItems,a=>(b(),I(L,{key:a.text},[o(a)?(b(),I(L,{key:0},[a.subheader?(b(),C(Ct,{key:0,class:"text-white"},{default:f(()=>[F(R(a.text.toUpperCase()),1)]),_:2},1024)):a.action?(b(),C($,{key:1,value:a,exact:a.exact,title:a.text,"prepend-icon":a.icon,onClick:a.action},null,8,["value","exact","title","prepend-icon","onClick"])):a.children?(b(),C(Tt,{key:3,value:a.text},{activator:f(({props:r})=>[(b(),C($,J({ref_for:!0},r,{key:a.text,title:a.text,color:"white","prepend-icon":a.icon}),null,16,["title","prepend-icon"]))]),default:f(()=>[(b(!0),I(L,null,G(a.children,r=>(b(),I(L,{key:r.text},[o(r)?(b(),I(L,{key:0},[r.action?(b(),C($,{key:0,title:r.text,value:r,"prepend-icon":r.icon,onClick:r.action},null,8,["title","value","prepend-icon","onClick"])):(b(),C($,{key:1,to:r.to,link:"",title:r.text,value:r,"prepend-icon":r.icon},null,8,["to","title","value","prepend-icon"]))],64)):Q("",!0)],64))),128))]),_:2},1032,["value"])):(b(),C($,{key:2,value:a,to:a.to,link:"",exact:a.exact,title:a.text,"prepend-icon":a.icon},null,8,["value","to","exact","title","prepend-icon"]))],64)):Q("",!0)],64))),128))]),_:1},8,["density","lines"])]),_:1},8,["modelValue","rail","color"]))}},ta=oe(ea,[["__scopeId","data-v-4deeb2f7"]]),aa={key:0,class:"top-menu"},na={class:"text-center"},oa={class:"mt-2"},la={class:"text-center"},ra={class:"text-h5"},sa={__name:"TopMenu",props:{user:{type:Object,default:null},remote:{type:Boolean,default:!1}},setup(e){const s=e,{$gettext:n}=Be(),i=Dt(),t=Y([]),v=x(()=>s.user.first_name&&s.user.last_name?`${s.user.first_name[0].toUpperCase()}${s.user.last_name[0].toUpperCase()}`:s.user.username?s.user.username.slice(0,2).toUpperCase():""),l=x(()=>[{text:n("Account"),icon:"mdi-account-circle-outline",to:s.remote?null:{name:"AccountSettings"},href:s.remote?"https://localhost:3000/account":"",click:()=>null},{text:n("Logout"),icon:"mdi-logout",click:y}]);async function y(){Je()._s.forEach(async p=>await p.$reset())}return ee(()=>{Ke.getAvailableApplications().then(p=>{t.value=p.data}),i.fetchNotifications()}),(p,_)=>e.user?(b(),I("div",aa,[O(i).activeNotifications?(b(),C(Z,{key:0,icon:"",color:"error",class:"mr-4",variant:"tonal",size:"small"},{default:f(()=>[u(K,{icon:"mdi-bell"}),u(ae,{activator:"parent",location:"bottom"},{default:f(()=>[u(ne,null,{default:f(()=>[P("div",na,[u($,{title:O(n)("Notifications")},null,8,["title"])]),u(ve),(b(!0),I(L,null,G(O(i).notifications,o=>(b(),C($,{key:o.id,to:o.url},{prepend:f(()=>[u(Rt,{color:o.color,content:o.counter,inline:""},null,8,["color","content"])]),default:f(()=>[u(de,null,{default:f(()=>[F(R(o.text),1)]),_:2},1024)]),_:2},1032,["to"]))),128))]),_:1})]),_:1})]),_:1})):Q("",!0),u(Z,{icon:"",class:"mr-4",variant:"flat"},{default:f(()=>[u(K,{icon:"mdi-apps"}),u(ae,{activator:"parent",location:"bottom"},{default:f(()=>[u(he,{"min-width":"350","max-width":"400",class:"pa-4"},{default:f(()=>[u(Ot,{class:"justify-center"},{default:f(()=>[(b(!0),I(L,null,G(t.value,o=>(b(),C(Yt,{key:o.name,cols:"6"},{default:f(()=>[u(Ht,{rounded:"",class:"application text-center pa-4 text-body-2",onClick:d=>p.$router.push(o.url)},{default:f(()=>[u(K,{color:"primary",icon:o.icon,size:"x-large"},null,8,["icon"]),P("div",oa,R(o.label),1)]),_:2},1032,["onClick"])]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1}),u(Z,{icon:"",flat:"",color:"primary"},{default:f(()=>[F(R(v.value)+" ",1),u(ae,{activator:"parent",location:"bottom"},{default:f(()=>[u(he,{"min-width":"300","max-width":"350"},{default:f(()=>[u(ne,null,{default:f(()=>[P("div",la,[u(gt,{color:"primary"},{default:f(()=>[P("span",ra,R(v.value),1)]),_:1}),u($,{title:e.user.username},null,8,["title"])]),u(ve),(b(!0),I(L,null,G(l.value,o=>(b(),C($,{key:o.text,to:o.to,href:o.href,link:"",onClick:o.click},{prepend:f(()=>[u(K,{icon:o.icon},null,8,["icon"])]),default:f(()=>[u(de,null,{default:f(()=>[F(R(o.text),1)]),_:2},1024)]),_:2},1032,["to","href","onClick"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})])):Q("",!0)}},ua=oe(sa,[["__scopeId","data-v-7bd1943d"]]);function ia(e){const s=A(e());let n=-1;function i(){clearInterval(n)}function t(){i(),Ce(()=>s.value=e())}function v(l){const y=l?getComputedStyle(l):{transitionDuration:.2},p=parseFloat(y.transitionDuration)*1e3||200;if(i(),s.value<=0)return;const _=performance.now();n=window.setInterval(()=>{const o=performance.now()-_+p;s.value=Math.max(e()-o,0),s.value<=0&&i()},p)}return be(i),{clear:i,time:s,start:v,reset:t}}const ca=xe({multiLine:Boolean,text:String,timer:[Boolean,String],timeout:{type:[Number,String],default:5e3},vertical:Boolean,...xt({location:"bottom"}),..._t(),...Ee(),...bt(),...Te(),...tt(Bt({transition:"v-snackbar-transition"}),["persistent","noClickAnimation","scrim","scrollStrategy","stickToTarget"])},"VSnackbar"),va=_e()({name:"VSnackbar",props:ca(),emits:{"update:modelValue":e=>!0},setup(e,s){let{slots:n}=s;const i=Se(e,"modelValue"),{positionClasses:t}=yt(e),{scopeId:v}=Ne(),{themeClasses:l}=Ve(e),{colorClasses:y,colorStyles:p,variantClasses:_}=pt(e),{roundedClasses:o}=Me(e),d=ia(()=>Number(e.timeout)),c=Y(),a=Y(),r=A(!1),V=A(0),D=Y(),H=Qe(Nt,void 0);q(()=>!!H,()=>{const h=$t();ke(()=>{D.value=h.mainStyles.value})}),W(i,B),W(()=>e.timeout,B),ee(()=>{i.value&&B()});let E=-1;function B(){d.reset(),window.clearTimeout(E);const h=Number(e.timeout);if(!i.value||h===-1)return;const M=et(a.value);d.start(M),E=window.setTimeout(()=>{i.value=!1},h)}function z(){d.reset(),window.clearTimeout(E)}function U(){r.value=!0,z()}function m(){r.value=!1,B()}function g(h){V.value=h.touches[0].clientY}function w(h){Math.abs(V.value-h.changedTouches[0].clientY)>50&&(i.value=!1)}function k(){r.value&&m()}const S=x(()=>e.location.split(" ").reduce((h,M)=>(h[`v-snackbar--${M}`]=!0,h),{}));return $e(()=>{const h=fe.filterProps(e),M=!!(n.default||n.text||e.text);return u(fe,J({ref:c,class:["v-snackbar",{"v-snackbar--active":i.value,"v-snackbar--multi-line":e.multiLine&&!e.vertical,"v-snackbar--timer":!!e.timer,"v-snackbar--vertical":e.vertical},S.value,t.value,e.class],style:[D.value,e.style]},h,{modelValue:i.value,"onUpdate:modelValue":N=>i.value=N,contentProps:J({class:["v-snackbar__wrapper",l.value,y.value,o.value,_.value],style:[p.value],onPointerenter:U,onPointerleave:m},h.contentProps),persistent:!0,noClickAnimation:!0,scrim:!1,scrollStrategy:"none",_disableGlobalStack:!0,onTouchstartPassive:g,onTouchend:w,onAfterLeave:k},v),{default:()=>{var N,j;return[wt(!1,"v-snackbar"),e.timer&&!r.value&&P("div",{key:"timer",class:"v-snackbar__timer"},[u(kt,{ref:a,color:typeof e.timer=="string"?e.timer:"info",max:e.timeout,modelValue:d.time.value},null)]),M&&P("div",{key:"content",class:"v-snackbar__content",role:"status","aria-live":"polite"},[((N=n.text)==null?void 0:N.call(n))??e.text,(j=n.default)==null?void 0:j.call(n)]),n.actions&&u(Ie,{defaults:{VBtn:{variant:"text",ripple:!1,slim:!0}}},{default:()=>[P("div",{class:"v-snackbar__actions"},[n.actions({isActive:i})])]})]},activator:n.activator})}),Pt({},c)}}),Ba={__name:"ConnectedLayout",props:{color:{type:String,default:"primary"},menuItems:{type:Array,default:null},loadTheme:{type:Boolean,default:!0}},async setup(e){let s,n;const i=Pe(),t=at(),{$gettext:v}=Be(),{enableTheme:l}=ot(),y=e,p=x(()=>i.authUser),_=x(()=>t.notificationColor),o=x(()=>t.notificationTimeout),d=x(()=>t.notification),c=Y(!1);return t.$onAction(({name:a,after:r})=>{a==="displayNotification"&&r(()=>{c.value=!0}),a==="hideNotification"&&r(()=>{c.value=!1})},!0),y.loadTheme&&([s,n]=nt(()=>l()),await s,n()),(a,r)=>(b(),C(st,null,{default:f(()=>[ce(a.$slots,"navbar",{},()=>[u(ta,{color:e.color,"menu-items":e.menuItems},null,8,["color","menu-items"])]),ce(a.$slots,"topbar",{},()=>[u(ua,{user:p.value},null,8,["user"])]),u(Wt),u(va,{modelValue:c.value,"onUpdate:modelValue":r[1]||(r[1]=V=>c.value=V),color:_.value,timeout:o.value,location:"top"},{actions:f(()=>[u(Z,{color:"white",text:"",onClick:r[0]||(r[0]=V=>c.value=!1)},{default:f(()=>[F(R(O(v)("Close")),1)]),_:1})]),default:f(()=>[F(R(d.value)+" ",1)]),_:1},8,["modelValue","color","timeout"])]),_:3}))}};export{Kt as V,Ba as _};
|
|
1
|
+
import{_ as oe,r as Oe,c as C,o as b,w as f,a as u,bc as pe,bd as Ye,a6 as A,i as x,a2 as He,d as ee,z as W,aB as we,be as Ue,ah as q,aa as ke,b8 as be,aE as We,I as _e,J as xe,ac as ze,ao as Ve,Q as Xe,O as Se,h as Y,a7 as te,a0 as Ce,aX as Fe,T as je,e as P,v as J,F as L,ap as Te,V as qe,u as Pe,q as Ge,f as O,p as Ze,l as I,s as G,m as Q,k as F,t as R,b as Be,bf as Je,ae as Ke,N as Qe,bg as et,P as tt,n as at,g as nt,x as ce}from"./index-BjibLozh.js";import{u as ot}from"./theme-DFzlhSh5.js";import{V as lt}from"./VContainer-DY9021j4.js";import{V as rt,a as st}from"./VApp-CiIBWB_Q.js";import{u as ut}from"./logos-CMmd0hOG.js";import{u as it}from"./layout.store-DJVcXtxk.js";import{x as ct,l as vt,n as Me,y as dt,z as ft,o as Ee,p as mt,A as ht,j as Le,e as Ie,V as Z,c as K,b as gt,B as yt,C as pt,g as wt,a as kt,D as bt,E as _t,F as xt}from"./VAvatar-BsHplcRP.js";import{j as Ne,l as Vt,n as St,a as ne,h as Ct,b as $,o as Tt,V as ae,d as ve,c as de,e as fe,g as Pt,p as Bt}from"./VMenu-B53a3gm6.js";import{u as me}from"./VProgressCircular-viI3jDXe.js";import{u as $e,c as Mt,b as Et}from"./tag-CvrHE14f.js";import{a as Lt,b as It,V as Nt,u as $t}from"./layout-5PvsmkGR.js";import{u as At}from"./ssrBoot-ChTB-PYP.js";import{u as Dt}from"./global.store-Bha4Z76j.js";import{V as Rt}from"./VBadge-CavP_E2g.js";import{a as he}from"./VCard-D7AwBs4w.js";import{V as Ot,a as Yt}from"./VRow-DyK_Mj7R.js";import{V as Ht}from"./VSheet-DQkh_hsX.js";const Ut={__name:"ConnectedView",setup(e){return(s,n)=>{const i=Oe("router-view");return b(),C(rt,null,{default:f(()=>[u(lt,{fluid:"",style:{height:"100%"}},{default:f(()=>[u(i,null,{default:f(({Component:t})=>[u(pe,{name:"fade"},{default:f(()=>[(b(),C(Ye(t)))]),_:2},1024)]),_:1})]),_:1})]),_:1})}}},Wt=oe(Ut,[["__scopeId","data-v-b2ffa9e6"]]);function zt(e){let{rootEl:s,isSticky:n,layoutItemStyles:i}=e;const t=A(!1),v=A(0),l=x(()=>{const _=typeof t.value=="boolean"?"top":t.value;return[n.value?{top:"auto",bottom:"auto",height:void 0}:void 0,t.value?{[_]:He(v.value)}:{top:i.value.top}]});ee(()=>{W(n,_=>{_?window.addEventListener("scroll",p,{passive:!0}):window.removeEventListener("scroll",p)},{immediate:!0})}),we(()=>{window.removeEventListener("scroll",p)});let y=0;function p(){const _=y>window.scrollY?"up":"down",o=s.value.getBoundingClientRect(),d=parseFloat(i.value.top??0),c=window.scrollY-Math.max(0,v.value-d),a=o.height+Math.max(v.value,d)-window.scrollY-window.innerHeight,r=parseFloat(getComputedStyle(s.value).getPropertyValue("--v-body-scroll-y"))||0;o.height<window.innerHeight-d?(t.value="top",v.value=d):_==="up"&&t.value==="bottom"||_==="down"&&t.value==="top"?(v.value=window.scrollY+o.top-r,t.value=!0):_==="down"&&a<=0?(v.value=0,t.value="bottom"):_==="up"&&c<=0&&(r?t.value!=="top"&&(v.value=-c+r+d,t.value="top"):(v.value=o.top+c,t.value="top")),y=window.scrollY}return{isStuck:t,stickyStyles:l}}const Xt=100,Ft=20;function ge(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function ye(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let s=0;for(let n=e.length-1;n>0;n--){if(e[n].t===e[n-1].t)continue;const i=ge(s),t=(e[n].d-e[n-1].d)/(e[n].t-e[n-1].t);s+=(t-i)*Math.abs(t),n===e.length-1&&(s*=.5)}return ge(s)*1e3}function jt(){const e={};function s(t){Array.from(t.changedTouches).forEach(v=>{(e[v.identifier]??(e[v.identifier]=new Ue(Ft))).push([t.timeStamp,v])})}function n(t){Array.from(t.changedTouches).forEach(v=>{delete e[v.identifier]})}function i(t){var _;const v=(_=e[t])==null?void 0:_.values().reverse();if(!v)throw new Error(`No samples for touch id ${t}`);const l=v[0],y=[],p=[];for(const o of v){if(l[0]-o[0]>Xt)break;y.push({t:o[0],d:o[1].clientX}),p.push({t:o[0],d:o[1].clientY})}return{x:ye(y),y:ye(p),get direction(){const{x:o,y:d}=this,[c,a]=[Math.abs(o),Math.abs(d)];return c>a&&o>=0?"right":c>a&&o<=0?"left":a>c&&d>=0?"down":a>c&&d<=0?"up":qt()}}}return{addMovement:s,endTouch:n,getVelocity:i}}function qt(){throw new Error}function Gt(e){let{el:s,isActive:n,isTemporary:i,width:t,touchless:v,position:l}=e;ee(()=>{window.addEventListener("touchstart",E,{passive:!0}),window.addEventListener("touchmove",B,{passive:!1}),window.addEventListener("touchend",z,{passive:!0})}),we(()=>{window.removeEventListener("touchstart",E),window.removeEventListener("touchmove",B),window.removeEventListener("touchend",z)});const y=x(()=>["left","right"].includes(l.value)),{addMovement:p,endTouch:_,getVelocity:o}=jt();let d=!1;const c=A(!1),a=A(0),r=A(0);let V;function D(m,g){return(l.value==="left"?m:l.value==="right"?document.documentElement.clientWidth-m:l.value==="top"?m:l.value==="bottom"?document.documentElement.clientHeight-m:X())-(g?t.value:0)}function H(m){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const w=l.value==="left"?(m-r.value)/t.value:l.value==="right"?(document.documentElement.clientWidth-m-r.value)/t.value:l.value==="top"?(m-r.value)/t.value:l.value==="bottom"?(document.documentElement.clientHeight-m-r.value)/t.value:X();return g?We(w):w}function E(m){if(v.value)return;const g=m.changedTouches[0].clientX,w=m.changedTouches[0].clientY,k=25,S=l.value==="left"?g<k:l.value==="right"?g>document.documentElement.clientWidth-k:l.value==="top"?w<k:l.value==="bottom"?w>document.documentElement.clientHeight-k:X(),h=n.value&&(l.value==="left"?g<t.value:l.value==="right"?g>document.documentElement.clientWidth-t.value:l.value==="top"?w<t.value:l.value==="bottom"?w>document.documentElement.clientHeight-t.value:X());(S||h||n.value&&i.value)&&(V=[g,w],r.value=D(y.value?g:w,n.value),a.value=H(y.value?g:w),d=r.value>-20&&r.value<80,_(m),p(m))}function B(m){const g=m.changedTouches[0].clientX,w=m.changedTouches[0].clientY;if(d){if(!m.cancelable){d=!1;return}const S=Math.abs(g-V[0]),h=Math.abs(w-V[1]);(y.value?S>h&&S>3:h>S&&h>3)?(c.value=!0,d=!1):(y.value?h:S)>3&&(d=!1)}if(!c.value)return;m.preventDefault(),p(m);const k=H(y.value?g:w,!1);a.value=Math.max(0,Math.min(1,k)),k>1?r.value=D(y.value?g:w,!0):k<0&&(r.value=D(y.value?g:w,!1))}function z(m){if(d=!1,!c.value)return;p(m),c.value=!1;const g=o(m.changedTouches[0].identifier),w=Math.abs(g.x),k=Math.abs(g.y);(y.value?w>k&&w>400:k>w&&k>3)?n.value=g.direction===({left:"right",right:"left",top:"down",bottom:"up"}[l.value]||X()):n.value=a.value>.5}const U=x(()=>c.value?{transform:l.value==="left"?`translateX(calc(-100% + ${a.value*t.value}px))`:l.value==="right"?`translateX(calc(100% - ${a.value*t.value}px))`:l.value==="top"?`translateY(calc(-100% + ${a.value*t.value}px))`:l.value==="bottom"?`translateY(calc(100% - ${a.value*t.value}px))`:X(),transition:"none"}:void 0);return q(c,()=>{var w,k;const m=((w=s.value)==null?void 0:w.style.transform)??null,g=((k=s.value)==null?void 0:k.style.transition)??null;ke(()=>{var S,h,M,N;(h=s.value)==null||h.style.setProperty("transform",((S=U.value)==null?void 0:S.transform)||"none"),(N=s.value)==null||N.style.setProperty("transition",((M=U.value)==null?void 0:M.transition)||null)}),be(()=>{var S,h;(S=s.value)==null||S.style.setProperty("transform",m),(h=s.value)==null||h.style.setProperty("transition",g)})}),{isDragging:c,dragProgress:a,dragStyles:U}}function X(){throw new Error}const Zt=["start","end","left","right","top","bottom"],Jt=xe({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>Zt.includes(e)},sticky:Boolean,...ht(),...Et(),...St(),...qe({mobile:null}),...mt(),...It(),...Ee(),...Mt({tag:"nav"}),...Te()},"VNavigationDrawer"),Kt=_e()({name:"VNavigationDrawer",props:Jt(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,s){let{attrs:n,emit:i,slots:t}=s;const{isRtl:v}=ze(),{themeClasses:l}=Ve(e),{borderClasses:y}=ct(e),{backgroundColorClasses:p,backgroundColorStyles:_}=me(()=>e.color),{elevationClasses:o}=vt(e),{displayClasses:d,mobile:c}=Xe(e),{roundedClasses:a}=Me(e),r=dt(),V=Se(e,"modelValue",null,T=>!!T),{ssrBootStyles:D}=At(),{scopeId:H}=Ne(),E=Y(),B=A(!1),{runOpenDelay:z,runCloseDelay:U}=Vt(e,T=>{B.value=T}),m=x(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),g=x(()=>ft(e.location,v.value)),w=te(()=>e.persistent),k=x(()=>!e.permanent&&(c.value||e.temporary)),S=x(()=>e.sticky&&!k.value&&g.value!=="bottom");q(()=>e.expandOnHover&&e.rail!=null,()=>{W(B,T=>i("update:rail",!T))}),q(()=>!e.disableResizeWatcher,()=>{W(k,T=>!e.permanent&&Ce(()=>V.value=!T))}),q(()=>!e.disableRouteWatcher&&!!r,()=>{W(r.currentRoute,()=>k.value&&(V.value=!1))}),W(()=>e.permanent,T=>{T&&(V.value=!0)}),e.modelValue==null&&!k.value&&(V.value=e.permanent||!c.value);const{isDragging:h,dragProgress:M}=Gt({el:E,isActive:V,isTemporary:k,width:m,touchless:te(()=>e.touchless),position:g}),N=x(()=>{const T=k.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):m.value;return h.value?T*M.value:T}),{layoutItemStyles:j,layoutItemScrimStyles:Ae}=Lt({id:e.name,order:x(()=>parseInt(e.order,10)),position:g,layoutSize:N,elementSize:m,active:Fe(V),disableTransitions:te(()=>h.value),absolute:x(()=>e.absolute||S.value&&typeof le.value!="string")}),{isStuck:le,stickyStyles:De}=zt({rootEl:E,isSticky:S,layoutItemStyles:j}),re=me(()=>typeof e.scrim=="string"?e.scrim:null),Re=x(()=>({...h.value?{opacity:M.value*.2,transition:"none"}:void 0,...Ae.value}));return je({VList:{bgColor:"transparent"}}),$e(()=>{const T=t.image||e.image;return P(L,null,[u(e.tag,J({ref:E,onMouseenter:z,onMouseleave:U,class:["v-navigation-drawer",`v-navigation-drawer--${g.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":k.value,"v-navigation-drawer--persistent":w.value,"v-navigation-drawer--active":V.value,"v-navigation-drawer--sticky":S.value},l.value,p.value,y.value,d.value,o.value,a.value,e.class],style:[_.value,j.value,D.value,De.value,e.style]},H,n),{default:()=>{var se,ue,ie;return[T&&P("div",{key:"image",class:"v-navigation-drawer__img"},[t.image?u(Ie,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},t.image):u(Le,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),t.prepend&&P("div",{class:"v-navigation-drawer__prepend"},[(se=t.prepend)==null?void 0:se.call(t)]),P("div",{class:"v-navigation-drawer__content"},[(ue=t.default)==null?void 0:ue.call(t)]),t.append&&P("div",{class:"v-navigation-drawer__append"},[(ie=t.append)==null?void 0:ie.call(t)])]}}),u(pe,{name:"fade-transition"},{default:()=>[k.value&&(h.value||V.value)&&!!e.scrim&&P("div",J({class:["v-navigation-drawer__scrim",re.backgroundColorClasses.value],style:[Re.value,re.backgroundColorStyles.value],onClick:()=>{w.value||(V.value=!1)}},H),null)]})])}),{isStuck:le}}}),Qt={class:"d-flex align-center"},ea={__name:"NavBar",props:{color:{type:String,default:"primary"},menuItems:{type:Array,required:!1,default:null},logoRoute:{type:Object,default:null}},setup(e){const s=e,n=Pe(),i=it(),t=Ge(),{menuLogoPath:v}=ut(),l=Y(!1),y=Y(!0),p=x(()=>n.authUser),_=x(()=>n.isAuthenticated);function o(d){return _.value?(d.roles===void 0||d.roles.indexOf(p.value.role)!==-1)&&(d.condition===void 0||d.condition())&&d.activated!==!1:!1}return(d,c)=>(b(),C(Kt,{modelValue:y.value,"onUpdate:modelValue":c[2]||(c[2]=a=>y.value=a),rail:l.value,permanent:"",color:e.color,app:""},{default:f(()=>[P("div",Qt,[u(Le,{src:O(v),"max-width":"190",class:"logo",onClick:c[0]||(c[0]=a=>O(t).push(s.logoRoute))},null,8,["src"]),u(Z,{icon:l.value?"mdi-chevron-right":"mdi-chevron-left",variant:"text",onClick:c[1]||(c[1]=Ze(a=>l.value=!l.value,["stop"]))},null,8,["icon"])]),u(ne,{density:O(i).compactLeftMenu?"compact":"default",lines:!O(i).compactLeftMenu,nav:""},{default:f(()=>[(b(!0),I(L,null,G(e.menuItems,a=>(b(),I(L,{key:a.text},[o(a)?(b(),I(L,{key:0},[a.subheader?(b(),C(Ct,{key:0,class:"text-white"},{default:f(()=>[F(R(a.text.toUpperCase()),1)]),_:2},1024)):a.action?(b(),C($,{key:1,value:a,exact:a.exact,title:a.text,"prepend-icon":a.icon,onClick:a.action},null,8,["value","exact","title","prepend-icon","onClick"])):a.children?(b(),C(Tt,{key:3,value:a.text},{activator:f(({props:r})=>[(b(),C($,J({ref_for:!0},r,{key:a.text,title:a.text,color:"white","prepend-icon":a.icon}),null,16,["title","prepend-icon"]))]),default:f(()=>[(b(!0),I(L,null,G(a.children,r=>(b(),I(L,{key:r.text},[o(r)?(b(),I(L,{key:0},[r.action?(b(),C($,{key:0,title:r.text,value:r,"prepend-icon":r.icon,onClick:r.action},null,8,["title","value","prepend-icon","onClick"])):(b(),C($,{key:1,to:r.to,link:"",title:r.text,value:r,"prepend-icon":r.icon},null,8,["to","title","value","prepend-icon"]))],64)):Q("",!0)],64))),128))]),_:2},1032,["value"])):(b(),C($,{key:2,value:a,to:a.to,link:"",exact:a.exact,title:a.text,"prepend-icon":a.icon},null,8,["value","to","exact","title","prepend-icon"]))],64)):Q("",!0)],64))),128))]),_:1},8,["density","lines"])]),_:1},8,["modelValue","rail","color"]))}},ta=oe(ea,[["__scopeId","data-v-4deeb2f7"]]),aa={key:0,class:"top-menu"},na={class:"text-center"},oa={class:"mt-2"},la={class:"text-center"},ra={class:"text-h5"},sa={__name:"TopMenu",props:{user:{type:Object,default:null},remote:{type:Boolean,default:!1}},setup(e){const s=e,{$gettext:n}=Be(),i=Dt(),t=Y([]),v=x(()=>s.user.first_name&&s.user.last_name?`${s.user.first_name[0].toUpperCase()}${s.user.last_name[0].toUpperCase()}`:s.user.username?s.user.username.slice(0,2).toUpperCase():""),l=x(()=>[{text:n("Account"),icon:"mdi-account-circle-outline",to:s.remote?null:{name:"AccountSettings"},href:s.remote?"https://localhost:3000/account":"",click:()=>null},{text:n("Logout"),icon:"mdi-logout",click:y}]);async function y(){Je()._s.forEach(async p=>await p.$reset())}return ee(()=>{Ke.getAvailableApplications().then(p=>{t.value=p.data}),i.fetchNotifications()}),(p,_)=>e.user?(b(),I("div",aa,[O(i).activeNotifications?(b(),C(Z,{key:0,icon:"",color:"error",class:"mr-4",variant:"tonal",size:"small"},{default:f(()=>[u(K,{icon:"mdi-bell"}),u(ae,{activator:"parent",location:"bottom"},{default:f(()=>[u(ne,null,{default:f(()=>[P("div",na,[u($,{title:O(n)("Notifications")},null,8,["title"])]),u(ve),(b(!0),I(L,null,G(O(i).notifications,o=>(b(),C($,{key:o.id,to:o.url},{prepend:f(()=>[u(Rt,{color:o.color,content:o.counter,inline:""},null,8,["color","content"])]),default:f(()=>[u(de,null,{default:f(()=>[F(R(o.text),1)]),_:2},1024)]),_:2},1032,["to"]))),128))]),_:1})]),_:1})]),_:1})):Q("",!0),u(Z,{icon:"",class:"mr-4",variant:"flat"},{default:f(()=>[u(K,{icon:"mdi-apps"}),u(ae,{activator:"parent",location:"bottom"},{default:f(()=>[u(he,{"min-width":"350","max-width":"400",class:"pa-4"},{default:f(()=>[u(Ot,{class:"justify-center"},{default:f(()=>[(b(!0),I(L,null,G(t.value,o=>(b(),C(Yt,{key:o.name,cols:"6"},{default:f(()=>[u(Ht,{rounded:"",class:"application text-center pa-4 text-body-2",onClick:d=>p.$router.push(o.url)},{default:f(()=>[u(K,{color:"primary",icon:o.icon,size:"x-large"},null,8,["icon"]),P("div",oa,R(o.label),1)]),_:2},1032,["onClick"])]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1}),u(Z,{icon:"",flat:"",color:"primary"},{default:f(()=>[F(R(v.value)+" ",1),u(ae,{activator:"parent",location:"bottom"},{default:f(()=>[u(he,{"min-width":"300","max-width":"350"},{default:f(()=>[u(ne,null,{default:f(()=>[P("div",la,[u(gt,{color:"primary"},{default:f(()=>[P("span",ra,R(v.value),1)]),_:1}),u($,{title:e.user.username},null,8,["title"])]),u(ve),(b(!0),I(L,null,G(l.value,o=>(b(),C($,{key:o.text,to:o.to,href:o.href,link:"",onClick:o.click},{prepend:f(()=>[u(K,{icon:o.icon},null,8,["icon"])]),default:f(()=>[u(de,null,{default:f(()=>[F(R(o.text),1)]),_:2},1024)]),_:2},1032,["to","href","onClick"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})])):Q("",!0)}},ua=oe(sa,[["__scopeId","data-v-7bd1943d"]]);function ia(e){const s=A(e());let n=-1;function i(){clearInterval(n)}function t(){i(),Ce(()=>s.value=e())}function v(l){const y=l?getComputedStyle(l):{transitionDuration:.2},p=parseFloat(y.transitionDuration)*1e3||200;if(i(),s.value<=0)return;const _=performance.now();n=window.setInterval(()=>{const o=performance.now()-_+p;s.value=Math.max(e()-o,0),s.value<=0&&i()},p)}return be(i),{clear:i,time:s,start:v,reset:t}}const ca=xe({multiLine:Boolean,text:String,timer:[Boolean,String],timeout:{type:[Number,String],default:5e3},vertical:Boolean,...xt({location:"bottom"}),..._t(),...Ee(),...bt(),...Te(),...tt(Bt({transition:"v-snackbar-transition"}),["persistent","noClickAnimation","scrim","scrollStrategy","stickToTarget"])},"VSnackbar"),va=_e()({name:"VSnackbar",props:ca(),emits:{"update:modelValue":e=>!0},setup(e,s){let{slots:n}=s;const i=Se(e,"modelValue"),{positionClasses:t}=yt(e),{scopeId:v}=Ne(),{themeClasses:l}=Ve(e),{colorClasses:y,colorStyles:p,variantClasses:_}=pt(e),{roundedClasses:o}=Me(e),d=ia(()=>Number(e.timeout)),c=Y(),a=Y(),r=A(!1),V=A(0),D=Y(),H=Qe(Nt,void 0);q(()=>!!H,()=>{const h=$t();ke(()=>{D.value=h.mainStyles.value})}),W(i,B),W(()=>e.timeout,B),ee(()=>{i.value&&B()});let E=-1;function B(){d.reset(),window.clearTimeout(E);const h=Number(e.timeout);if(!i.value||h===-1)return;const M=et(a.value);d.start(M),E=window.setTimeout(()=>{i.value=!1},h)}function z(){d.reset(),window.clearTimeout(E)}function U(){r.value=!0,z()}function m(){r.value=!1,B()}function g(h){V.value=h.touches[0].clientY}function w(h){Math.abs(V.value-h.changedTouches[0].clientY)>50&&(i.value=!1)}function k(){r.value&&m()}const S=x(()=>e.location.split(" ").reduce((h,M)=>(h[`v-snackbar--${M}`]=!0,h),{}));return $e(()=>{const h=fe.filterProps(e),M=!!(n.default||n.text||e.text);return u(fe,J({ref:c,class:["v-snackbar",{"v-snackbar--active":i.value,"v-snackbar--multi-line":e.multiLine&&!e.vertical,"v-snackbar--timer":!!e.timer,"v-snackbar--vertical":e.vertical},S.value,t.value,e.class],style:[D.value,e.style]},h,{modelValue:i.value,"onUpdate:modelValue":N=>i.value=N,contentProps:J({class:["v-snackbar__wrapper",l.value,y.value,o.value,_.value],style:[p.value],onPointerenter:U,onPointerleave:m},h.contentProps),persistent:!0,noClickAnimation:!0,scrim:!1,scrollStrategy:"none",_disableGlobalStack:!0,onTouchstartPassive:g,onTouchend:w,onAfterLeave:k},v),{default:()=>{var N,j;return[wt(!1,"v-snackbar"),e.timer&&!r.value&&P("div",{key:"timer",class:"v-snackbar__timer"},[u(kt,{ref:a,color:typeof e.timer=="string"?e.timer:"info",max:e.timeout,modelValue:d.time.value},null)]),M&&P("div",{key:"content",class:"v-snackbar__content",role:"status","aria-live":"polite"},[((N=n.text)==null?void 0:N.call(n))??e.text,(j=n.default)==null?void 0:j.call(n)]),n.actions&&u(Ie,{defaults:{VBtn:{variant:"text",ripple:!1,slim:!0}}},{default:()=>[P("div",{class:"v-snackbar__actions"},[n.actions({isActive:i})])]})]},activator:n.activator})}),Pt({},c)}}),Ba={__name:"ConnectedLayout",props:{color:{type:String,default:"primary"},menuItems:{type:Array,default:null},loadTheme:{type:Boolean,default:!0}},async setup(e){let s,n;const i=Pe(),t=at(),{$gettext:v}=Be(),{enableTheme:l}=ot(),y=e,p=x(()=>i.authUser),_=x(()=>t.notificationColor),o=x(()=>t.notificationTimeout),d=x(()=>t.notification),c=Y(!1);return t.$onAction(({name:a,after:r})=>{a==="displayNotification"&&r(()=>{c.value=!0}),a==="hideNotification"&&r(()=>{c.value=!1})},!0),y.loadTheme&&([s,n]=nt(()=>l()),await s,n()),(a,r)=>(b(),C(st,null,{default:f(()=>[ce(a.$slots,"navbar",{},()=>[u(ta,{color:e.color,"menu-items":e.menuItems},null,8,["color","menu-items"])]),ce(a.$slots,"topbar",{},()=>[u(ua,{user:p.value},null,8,["user"])]),u(Wt),u(va,{modelValue:c.value,"onUpdate:modelValue":r[1]||(r[1]=V=>c.value=V),color:_.value,timeout:o.value,location:"top"},{actions:f(()=>[u(Z,{color:"white",text:"",onClick:r[0]||(r[0]=V=>c.value=!1)},{default:f(()=>[F(R(O(v)("Close")),1)]),_:1})]),default:f(()=>[F(R(d.value)+" ",1)]),_:1},8,["modelValue","color","timeout"])]),_:3}))}};export{Kt as V,Ba as _};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as me}from"./ConfirmDialog-Du7aqKbR.js";import{_ as pe,b as ne,l as A,o as S,s as F,F as T,e as v,t as f,f as _,c as C,w as c,x as U,m as re,a as l,k as x,I as R,J as $,K as ve,i as b,L as fe,y as ye,M as P,N as Ve,O as Se,v as J,P as be,Q as oe,R as ke,S as Z,T as ge,U as he,V as _e,h as M,W as xe,X as we,Y as Ie}from"./index-B1bntsLR.js";import{a as j,V as ie}from"./VRow-CuVZGqBj.js";import{u as Ce}from"./logos-95XYS6uH.js";import{V as W,e as ee,f as Pe,R as te,u as $e,g as Be,c as We,b as Ae,m as Te,h as Le,i as je,j as Fe}from"./VAvatar-JdJfoK0C.js";import{u as D}from"./tag-BmV84V2s.js";import{V as ae,m as Re,a as le,b as De}from"./VWindowItem-kZpArwK1.js";import{V as Ne}from"./VContainer-DKMcKasC.js";import{V as se,m as Ee}from"./VSheet-HeHw6g5_.js";import{d as ze}from"./VMenu-B6SCtOwT.js";const Ge={class:"subtitle mt-4 d-flex"},Oe={class:"text-h6"},Me=["onClick"],Ue={class:"text-grey"},He={__name:"CreationSummary",props:{sections:{type:Array,default:()=>[]}},emits:["modify-step"],setup(e,{emit:y}){const{$gettext:t}=ne(),a=y;function u(n){return n.length?n.join(", "):t("Empty")}return(n,o)=>(S(!0),A(T,null,F(e.sections,(d,p)=>(S(),A(T,{key:p},[v("div",Ge,[v("span",Oe,f(d.title),1),v("a",{href:"#",class:"edit-link ml-auto",onClick:s=>a("modify-step",p+1)},f(_(t)("Modify")),9,Me)]),(S(!0),A(T,null,F(d.items,(s,m)=>(S(),C(ie,{key:m,dense:""},{default:c(()=>[s.value!==void 0?U(n.$slots,`item.${s.name}`,{key:0,item:s,displayList:u},()=>[l(j,null,{default:c(()=>[v("span",Ue,f(s.key),1)]),_:2},1024),s.type==="yesno"?(S(),C(j,{key:0,class:"text-right"},{default:c(()=>[x(f(n.$yesno(s.value)),1)]),_:2},1024)):s.type==="list"?(S(),C(j,{key:1,class:"text-right"},{default:c(()=>[x(f(u(s.value)),1)]),_:2},1024)):(S(),C(j,{key:2,class:"text-right"},{default:c(()=>[x(f(s.value),1)]),_:2},1024))],!0):re("",!0)]),_:2},1024))),128))],64))),128))}},Ye=pe(He,[["__scopeId","data-v-6e743e1a"]]),K=Symbol.for("vuetify:v-stepper"),ue=$({color:String,disabled:{type:[Boolean,String],default:!1},prevText:{type:String,default:"$vuetify.stepper.prev"},nextText:{type:String,default:"$vuetify.stepper.next"}},"VStepperActions"),Je=R()({name:"VStepperActions",props:ue(),emits:{"click:prev":()=>!0,"click:next":()=>!0},setup(e,y){let{emit:t,slots:a}=y;const{t:u}=ve();function n(){t("click:prev")}function o(){t("click:next")}return D(()=>{const d={onClick:n},p={onClick:o};return v("div",{class:"v-stepper-actions"},[l(ee,{defaults:{VBtn:{disabled:["prev",!0].includes(e.disabled),text:u(e.prevText),variant:"text"}}},{default:()=>{var s;return[((s=a.prev)==null?void 0:s.call(a,{props:d}))??l(W,d,null)]}}),l(ee,{defaults:{VBtn:{color:e.color,disabled:["next",!0].includes(e.disabled),text:u(e.nextText),variant:"tonal"}}},{default:()=>{var s;return[((s=a.next)==null?void 0:s.call(a,{props:p}))??l(W,p,null)]}})])}),{}}}),ce=Pe("v-stepper-header"),Ke=$({color:String,title:String,subtitle:String,complete:Boolean,completeIcon:{type:P,default:"$complete"},editable:Boolean,editIcon:{type:P,default:"$edit"},error:Boolean,errorIcon:{type:P,default:"$error"},icon:P,ripple:{type:[Boolean,Object],default:!0},rules:{type:Array,default:()=>[]}},"StepperItem"),Qe=$({...Ke(),...Te()},"VStepperItem"),H=R()({name:"VStepperItem",directives:{vRipple:te},props:Qe(),emits:{"group:selected":e=>!0},setup(e,y){let{slots:t}=y;const a=$e(e,K,!0),u=b(()=>(a==null?void 0:a.value.value)??e.value),n=b(()=>e.rules.every(I=>I()===!0)),o=b(()=>!e.disabled&&e.editable),d=b(()=>!e.disabled&&e.editable),p=b(()=>e.error||!n.value),s=b(()=>e.complete||e.rules.length>0&&n.value),m=b(()=>p.value?e.errorIcon:s.value?e.completeIcon:a.isSelected.value&&e.editable?e.editIcon:e.icon),w=b(()=>({canEdit:d.value,hasError:p.value,hasCompleted:s.value,title:e.title,subtitle:e.subtitle,step:u.value,value:e.value}));return D(()=>{var r,i,h;const I=(!a||a.isSelected.value||s.value||d.value)&&!p.value&&!e.disabled,L=!!(e.title!=null||t.title),V=!!(e.subtitle!=null||t.subtitle);function k(){a==null||a.toggle()}return fe(v("button",{class:ye(["v-stepper-item",{"v-stepper-item--complete":s.value,"v-stepper-item--disabled":e.disabled,"v-stepper-item--error":p.value},a==null?void 0:a.selectedClass.value]),disabled:!e.editable,type:"button",onClick:k},[o.value&&Be(!0,"v-stepper-item"),l(Ae,{key:"stepper-avatar",class:"v-stepper-item__avatar",color:I?e.color:void 0,size:24},{default:()=>{var g;return[((g=t.icon)==null?void 0:g.call(t,w.value))??(m.value?l(We,{icon:m.value},null):u.value)]}}),v("div",{class:"v-stepper-item__content"},[L&&v("div",{key:"title",class:"v-stepper-item__title"},[((r=t.title)==null?void 0:r.call(t,w.value))??e.title]),V&&v("div",{key:"subtitle",class:"v-stepper-item__subtitle"},[((i=t.subtitle)==null?void 0:i.call(t,w.value))??e.subtitle]),(h=t.default)==null?void 0:h.call(t,w.value)])]),[[te,e.editable&&e.ripple,null]])}),{}}}),Xe=$({...be(Re(),["continuous","nextIcon","prevIcon","showArrows","touch","mandatory"])},"VStepperWindow"),de=R()({name:"VStepperWindow",props:Xe(),emits:{"update:modelValue":e=>!0},setup(e,y){let{slots:t}=y;const a=Ve(K,null),u=Se(e,"modelValue"),n=b({get(){var o;return u.value!=null||!a?u.value:(o=a.items.value.find(d=>a.selected.value.includes(d.id)))==null?void 0:o.value},set(o){u.value=o}});return D(()=>{const o=ae.filterProps(e);return l(ae,J({_as:"VStepperWindow"},o,{modelValue:n.value,"onUpdate:modelValue":d=>n.value=d,class:["v-stepper-window",e.class],style:e.style,mandatory:!1,touch:!1}),t)}),{}}}),qe=$({...De()},"VStepperWindowItem"),Y=R()({name:"VStepperWindowItem",props:qe(),setup(e,y){let{slots:t}=y;return D(()=>{const a=le.filterProps(e);return l(le,J({_as:"VStepperWindowItem"},a,{class:["v-stepper-window-item",e.class],style:e.style}),t)}),{}}}),Ze=$({altLabels:Boolean,bgColor:String,completeIcon:P,editIcon:P,editable:Boolean,errorIcon:P,hideActions:Boolean,items:{type:Array,default:()=>[]},itemTitle:{type:String,default:"title"},itemValue:{type:String,default:"value"},nonLinear:Boolean,flat:Boolean,..._e()},"Stepper"),et=$({...Ze(),...je({mandatory:"force",selectedClass:"v-stepper-item--selected"}),...Ee(),...he(ue(),["prevText","nextText"])},"VStepper"),tt=R()({name:"VStepper",props:et(),emits:{"update:modelValue":e=>!0},setup(e,y){let{slots:t}=y;const{items:a,next:u,prev:n,selected:o}=Le(e,K),{displayClasses:d,mobile:p}=oe(e),{completeIcon:s,editIcon:m,errorIcon:w,color:I,editable:L,prevText:V,nextText:k}=ke(e),r=b(()=>e.items.map((g,z)=>{const N=Z(g,e.itemTitle,g),G=Z(g,e.itemValue,z+1);return{title:N,value:G,raw:g}})),i=b(()=>a.value.findIndex(g=>o.value.includes(g.id))),h=b(()=>e.disabled?e.disabled:i.value===0?"prev":i.value===a.value.length-1?"next":!1);return ge({VStepperItem:{editable:L,errorIcon:w,completeIcon:s,editIcon:m,prevText:V,nextText:k},VStepperActions:{color:I,disabled:h,prevText:V,nextText:k}}),D(()=>{const g=se.filterProps(e),z=!!(t.header||e.items.length),N=e.items.length>0,G=!e.hideActions&&!!(N||t.actions);return l(se,J(g,{color:e.bgColor,class:["v-stepper",{"v-stepper--alt-labels":e.altLabels,"v-stepper--flat":e.flat,"v-stepper--non-linear":e.nonLinear,"v-stepper--mobile":p.value},d.value,e.class],style:e.style}),{default:()=>{var Q,X;return[z&&l(ce,{key:"stepper-header"},{default:()=>[r.value.map((B,E)=>{let{raw:O,...q}=B;return v(T,null,[!!E&&l(ze,null,null),l(H,q,{default:t[`header-item.${q.value}`]??t.header,icon:t.icon,title:t.title,subtitle:t.subtitle})])})]}),N&&l(de,{key:"stepper-window"},{default:()=>[r.value.map(B=>l(Y,{value:B.value},{default:()=>{var E,O;return((E=t[`item.${B.value}`])==null?void 0:E.call(t,B))??((O=t.item)==null?void 0:O.call(t,B))}}))]}),(Q=t.default)==null?void 0:Q.call(t,{prev:n,next:u}),G&&(((X=t.actions)==null?void 0:X.call(t,{next:u,prev:n}))??l(Je,{key:"stepper-actions","onClick:prev":n,"onClick:next":u},t))]}})}),{prev:n,next:u}}}),at={class:"d-flex justify-center inner fill-height"},lt={class:"mb-5 text-h5"},st={class:"text-grey-darken-1"},nt={class:"d-flex justify-end mt-4"},rt={class:"text-center text-h3"},ot={class:"d-flex justify-center mt-8"},St={__name:"CreationForm",props:{title:{type:String,default:""},steps:{type:Array,default:()=>[]},summarySections:{type:Array,default:()=>[]},getVFormRef:{type:Function,default:null},formGetter:{type:Function,default:null},validateObject:{type:Function,default:null}},emits:["close","create","validationError"],setup(e,{expose:y,emit:t}){const{smAndDown:a}=oe(),{creationFormLogoPath:u}=Ce(),n=e,o=M(1),d=M(!1),p=M(),s=t,{$gettext:m}=ne();async function w(){await p.value.open(m("Warning"),m("If you close this form now, your modifications won't be saved. Do you confirm?"),{color:"warning",agreeLabel:m("Yes"),cancelLabel:m("No")})&&s("close")}async function I(V,k){const r=n.getVFormRef(n.steps[V-1]);if(r!==void 0){const{valid:i}=await r.validate();if(!i)return;if(n.validateObject)try{await n.validateObject(V)}catch(h){s("validationError",V,h.response.data);return}}o.value=k}function L(){d.value=!0,s("create")}return y({working:d}),(V,k)=>(S(),A("div",at,[l(tt,{modelValue:o.value,"onUpdate:modelValue":k[1]||(k[1]=r=>o.value=r),mobile:!_(a),class:"vertical-overflow"},{default:c(()=>[l(_(me),{ref_key:"confirm",ref:p},null,512),l(ce,{class:"align-center px-10"},{default:c(()=>[l(Fe,{src:_(u),"max-width":"190",class:"hidden-sm-and-down"},null,8,["src"]),(S(!0),A(T,null,F(e.steps,(r,i)=>(S(),C(H,{key:r.name,color:"primary",value:i+1,complete:o.value>i+1},{default:c(()=>[x(f(r.title),1)]),_:2},1032,["value","complete"]))),128)),l(H,{value:e.steps.length+1},{default:c(()=>[x(f(_(m)("Summary")),1)]),_:1},8,["value"]),l(W,{icon:"mdi-close",color:"primary",size:_(a)?"small":"x-large",variant:"text",onClick:w},null,8,["size"])]),_:1}),l(de,{class:"mt-4 d-flex justify-center"},{default:c(()=>[(S(!0),A(T,null,F(e.steps,(r,i)=>(S(),C(Y,{key:r.name,value:i+1,class:"flex-grow-1 ma-10"},{default:c(()=>[l(Ne,{fluid:""},{default:c(()=>[l(ie,{align:"center",justify:"center"},{default:c(()=>[l(j,{cols:"8",align:"start"},{default:c(()=>[v("div",lt,[v("span",st,f(e.title),1),x(" / "+f(r.title),1)]),U(V.$slots,`form.${r.name}`,{step:r,currentStep:i+1})]),_:2},1024)]),_:2},1024)]),_:2},1024),v("div",nt,[i+1>1?(S(),C(W,{key:0,class:"mr-10",variant:"text",onClick:h=>o.value=i},{default:c(()=>[x(f(_(m)("Back")),1)]),_:1},8,["onClick"])):re("",!0),l(W,{color:"primary",size:"large",onClick:h=>I(i+1,i+2)},{default:c(()=>[x(f(_(m)("Next")),1)]),_:1},8,["onClick"])])]),_:2},1032,["value"]))),128)),l(Y,{value:e.steps.length+1,class:"flex-grow-0"},{default:c(()=>[v("div",rt,f(_(m)("Summary")),1),l(Ye,{sections:e.summarySections,onModifyStep:k[0]||(k[0]=r=>o.value=r)},xe({_:2},[F(V.$slots,(r,i)=>({name:i,fn:c(h=>[U(V.$slots,i,we(Ie(h)))])}))]),1032,["sections"]),v("div",ot,[l(W,{color:"primary",size:"large",loading:d.value,onClick:L},{default:c(()=>[x(f(_(m)("Confirm and create")),1)]),_:1},8,["loading"])])]),_:3},8,["value"])]),_:3})]),_:3},8,["modelValue","mobile"])]))}};export{St as _};
|
|
1
|
+
import{_ as me}from"./ConfirmDialog-BMIg94-U.js";import{_ as pe,b as ne,l as A,o as S,s as F,F as T,e as v,t as f,f as _,c as C,w as c,x as U,m as re,a as l,k as x,I as R,J as $,K as ve,i as b,L as fe,y as ye,M as P,N as Ve,O as Se,v as J,P as be,Q as oe,R as ke,S as Z,T as ge,U as he,V as _e,h as M,W as xe,X as we,Y as Ie}from"./index-BjibLozh.js";import{a as j,V as ie}from"./VRow-DyK_Mj7R.js";import{u as Ce}from"./logos-CMmd0hOG.js";import{V as W,e as ee,f as Pe,R as te,u as $e,g as Be,c as We,b as Ae,m as Te,h as Le,i as je,j as Fe}from"./VAvatar-BsHplcRP.js";import{u as D}from"./tag-CvrHE14f.js";import{V as ae,m as Re,a as le,b as De}from"./VWindowItem-DErNPSH8.js";import{V as Ne}from"./VContainer-DY9021j4.js";import{V as se,m as Ee}from"./VSheet-DQkh_hsX.js";import{d as ze}from"./VMenu-B53a3gm6.js";const Ge={class:"subtitle mt-4 d-flex"},Oe={class:"text-h6"},Me=["onClick"],Ue={class:"text-grey"},He={__name:"CreationSummary",props:{sections:{type:Array,default:()=>[]}},emits:["modify-step"],setup(e,{emit:y}){const{$gettext:t}=ne(),a=y;function u(n){return n.length?n.join(", "):t("Empty")}return(n,o)=>(S(!0),A(T,null,F(e.sections,(d,p)=>(S(),A(T,{key:p},[v("div",Ge,[v("span",Oe,f(d.title),1),v("a",{href:"#",class:"edit-link ml-auto",onClick:s=>a("modify-step",p+1)},f(_(t)("Modify")),9,Me)]),(S(!0),A(T,null,F(d.items,(s,m)=>(S(),C(ie,{key:m,dense:""},{default:c(()=>[s.value!==void 0?U(n.$slots,`item.${s.name}`,{key:0,item:s,displayList:u},()=>[l(j,null,{default:c(()=>[v("span",Ue,f(s.key),1)]),_:2},1024),s.type==="yesno"?(S(),C(j,{key:0,class:"text-right"},{default:c(()=>[x(f(n.$yesno(s.value)),1)]),_:2},1024)):s.type==="list"?(S(),C(j,{key:1,class:"text-right"},{default:c(()=>[x(f(u(s.value)),1)]),_:2},1024)):(S(),C(j,{key:2,class:"text-right"},{default:c(()=>[x(f(s.value),1)]),_:2},1024))],!0):re("",!0)]),_:2},1024))),128))],64))),128))}},Ye=pe(He,[["__scopeId","data-v-6e743e1a"]]),K=Symbol.for("vuetify:v-stepper"),ue=$({color:String,disabled:{type:[Boolean,String],default:!1},prevText:{type:String,default:"$vuetify.stepper.prev"},nextText:{type:String,default:"$vuetify.stepper.next"}},"VStepperActions"),Je=R()({name:"VStepperActions",props:ue(),emits:{"click:prev":()=>!0,"click:next":()=>!0},setup(e,y){let{emit:t,slots:a}=y;const{t:u}=ve();function n(){t("click:prev")}function o(){t("click:next")}return D(()=>{const d={onClick:n},p={onClick:o};return v("div",{class:"v-stepper-actions"},[l(ee,{defaults:{VBtn:{disabled:["prev",!0].includes(e.disabled),text:u(e.prevText),variant:"text"}}},{default:()=>{var s;return[((s=a.prev)==null?void 0:s.call(a,{props:d}))??l(W,d,null)]}}),l(ee,{defaults:{VBtn:{color:e.color,disabled:["next",!0].includes(e.disabled),text:u(e.nextText),variant:"tonal"}}},{default:()=>{var s;return[((s=a.next)==null?void 0:s.call(a,{props:p}))??l(W,p,null)]}})])}),{}}}),ce=Pe("v-stepper-header"),Ke=$({color:String,title:String,subtitle:String,complete:Boolean,completeIcon:{type:P,default:"$complete"},editable:Boolean,editIcon:{type:P,default:"$edit"},error:Boolean,errorIcon:{type:P,default:"$error"},icon:P,ripple:{type:[Boolean,Object],default:!0},rules:{type:Array,default:()=>[]}},"StepperItem"),Qe=$({...Ke(),...Te()},"VStepperItem"),H=R()({name:"VStepperItem",directives:{vRipple:te},props:Qe(),emits:{"group:selected":e=>!0},setup(e,y){let{slots:t}=y;const a=$e(e,K,!0),u=b(()=>(a==null?void 0:a.value.value)??e.value),n=b(()=>e.rules.every(I=>I()===!0)),o=b(()=>!e.disabled&&e.editable),d=b(()=>!e.disabled&&e.editable),p=b(()=>e.error||!n.value),s=b(()=>e.complete||e.rules.length>0&&n.value),m=b(()=>p.value?e.errorIcon:s.value?e.completeIcon:a.isSelected.value&&e.editable?e.editIcon:e.icon),w=b(()=>({canEdit:d.value,hasError:p.value,hasCompleted:s.value,title:e.title,subtitle:e.subtitle,step:u.value,value:e.value}));return D(()=>{var r,i,h;const I=(!a||a.isSelected.value||s.value||d.value)&&!p.value&&!e.disabled,L=!!(e.title!=null||t.title),V=!!(e.subtitle!=null||t.subtitle);function k(){a==null||a.toggle()}return fe(v("button",{class:ye(["v-stepper-item",{"v-stepper-item--complete":s.value,"v-stepper-item--disabled":e.disabled,"v-stepper-item--error":p.value},a==null?void 0:a.selectedClass.value]),disabled:!e.editable,type:"button",onClick:k},[o.value&&Be(!0,"v-stepper-item"),l(Ae,{key:"stepper-avatar",class:"v-stepper-item__avatar",color:I?e.color:void 0,size:24},{default:()=>{var g;return[((g=t.icon)==null?void 0:g.call(t,w.value))??(m.value?l(We,{icon:m.value},null):u.value)]}}),v("div",{class:"v-stepper-item__content"},[L&&v("div",{key:"title",class:"v-stepper-item__title"},[((r=t.title)==null?void 0:r.call(t,w.value))??e.title]),V&&v("div",{key:"subtitle",class:"v-stepper-item__subtitle"},[((i=t.subtitle)==null?void 0:i.call(t,w.value))??e.subtitle]),(h=t.default)==null?void 0:h.call(t,w.value)])]),[[te,e.editable&&e.ripple,null]])}),{}}}),Xe=$({...be(Re(),["continuous","nextIcon","prevIcon","showArrows","touch","mandatory"])},"VStepperWindow"),de=R()({name:"VStepperWindow",props:Xe(),emits:{"update:modelValue":e=>!0},setup(e,y){let{slots:t}=y;const a=Ve(K,null),u=Se(e,"modelValue"),n=b({get(){var o;return u.value!=null||!a?u.value:(o=a.items.value.find(d=>a.selected.value.includes(d.id)))==null?void 0:o.value},set(o){u.value=o}});return D(()=>{const o=ae.filterProps(e);return l(ae,J({_as:"VStepperWindow"},o,{modelValue:n.value,"onUpdate:modelValue":d=>n.value=d,class:["v-stepper-window",e.class],style:e.style,mandatory:!1,touch:!1}),t)}),{}}}),qe=$({...De()},"VStepperWindowItem"),Y=R()({name:"VStepperWindowItem",props:qe(),setup(e,y){let{slots:t}=y;return D(()=>{const a=le.filterProps(e);return l(le,J({_as:"VStepperWindowItem"},a,{class:["v-stepper-window-item",e.class],style:e.style}),t)}),{}}}),Ze=$({altLabels:Boolean,bgColor:String,completeIcon:P,editIcon:P,editable:Boolean,errorIcon:P,hideActions:Boolean,items:{type:Array,default:()=>[]},itemTitle:{type:String,default:"title"},itemValue:{type:String,default:"value"},nonLinear:Boolean,flat:Boolean,..._e()},"Stepper"),et=$({...Ze(),...je({mandatory:"force",selectedClass:"v-stepper-item--selected"}),...Ee(),...he(ue(),["prevText","nextText"])},"VStepper"),tt=R()({name:"VStepper",props:et(),emits:{"update:modelValue":e=>!0},setup(e,y){let{slots:t}=y;const{items:a,next:u,prev:n,selected:o}=Le(e,K),{displayClasses:d,mobile:p}=oe(e),{completeIcon:s,editIcon:m,errorIcon:w,color:I,editable:L,prevText:V,nextText:k}=ke(e),r=b(()=>e.items.map((g,z)=>{const N=Z(g,e.itemTitle,g),G=Z(g,e.itemValue,z+1);return{title:N,value:G,raw:g}})),i=b(()=>a.value.findIndex(g=>o.value.includes(g.id))),h=b(()=>e.disabled?e.disabled:i.value===0?"prev":i.value===a.value.length-1?"next":!1);return ge({VStepperItem:{editable:L,errorIcon:w,completeIcon:s,editIcon:m,prevText:V,nextText:k},VStepperActions:{color:I,disabled:h,prevText:V,nextText:k}}),D(()=>{const g=se.filterProps(e),z=!!(t.header||e.items.length),N=e.items.length>0,G=!e.hideActions&&!!(N||t.actions);return l(se,J(g,{color:e.bgColor,class:["v-stepper",{"v-stepper--alt-labels":e.altLabels,"v-stepper--flat":e.flat,"v-stepper--non-linear":e.nonLinear,"v-stepper--mobile":p.value},d.value,e.class],style:e.style}),{default:()=>{var Q,X;return[z&&l(ce,{key:"stepper-header"},{default:()=>[r.value.map((B,E)=>{let{raw:O,...q}=B;return v(T,null,[!!E&&l(ze,null,null),l(H,q,{default:t[`header-item.${q.value}`]??t.header,icon:t.icon,title:t.title,subtitle:t.subtitle})])})]}),N&&l(de,{key:"stepper-window"},{default:()=>[r.value.map(B=>l(Y,{value:B.value},{default:()=>{var E,O;return((E=t[`item.${B.value}`])==null?void 0:E.call(t,B))??((O=t.item)==null?void 0:O.call(t,B))}}))]}),(Q=t.default)==null?void 0:Q.call(t,{prev:n,next:u}),G&&(((X=t.actions)==null?void 0:X.call(t,{next:u,prev:n}))??l(Je,{key:"stepper-actions","onClick:prev":n,"onClick:next":u},t))]}})}),{prev:n,next:u}}}),at={class:"d-flex justify-center inner fill-height"},lt={class:"mb-5 text-h5"},st={class:"text-grey-darken-1"},nt={class:"d-flex justify-end mt-4"},rt={class:"text-center text-h3"},ot={class:"d-flex justify-center mt-8"},St={__name:"CreationForm",props:{title:{type:String,default:""},steps:{type:Array,default:()=>[]},summarySections:{type:Array,default:()=>[]},getVFormRef:{type:Function,default:null},formGetter:{type:Function,default:null},validateObject:{type:Function,default:null}},emits:["close","create","validationError"],setup(e,{expose:y,emit:t}){const{smAndDown:a}=oe(),{creationFormLogoPath:u}=Ce(),n=e,o=M(1),d=M(!1),p=M(),s=t,{$gettext:m}=ne();async function w(){await p.value.open(m("Warning"),m("If you close this form now, your modifications won't be saved. Do you confirm?"),{color:"warning",agreeLabel:m("Yes"),cancelLabel:m("No")})&&s("close")}async function I(V,k){const r=n.getVFormRef(n.steps[V-1]);if(r!==void 0){const{valid:i}=await r.validate();if(!i)return;if(n.validateObject)try{await n.validateObject(V)}catch(h){s("validationError",V,h.response.data);return}}o.value=k}function L(){d.value=!0,s("create")}return y({working:d}),(V,k)=>(S(),A("div",at,[l(tt,{modelValue:o.value,"onUpdate:modelValue":k[1]||(k[1]=r=>o.value=r),mobile:!_(a),class:"vertical-overflow"},{default:c(()=>[l(_(me),{ref_key:"confirm",ref:p},null,512),l(ce,{class:"align-center px-10"},{default:c(()=>[l(Fe,{src:_(u),"max-width":"190",class:"hidden-sm-and-down"},null,8,["src"]),(S(!0),A(T,null,F(e.steps,(r,i)=>(S(),C(H,{key:r.name,color:"primary",value:i+1,complete:o.value>i+1},{default:c(()=>[x(f(r.title),1)]),_:2},1032,["value","complete"]))),128)),l(H,{value:e.steps.length+1},{default:c(()=>[x(f(_(m)("Summary")),1)]),_:1},8,["value"]),l(W,{icon:"mdi-close",color:"primary",size:_(a)?"small":"x-large",variant:"text",onClick:w},null,8,["size"])]),_:1}),l(de,{class:"mt-4 d-flex justify-center"},{default:c(()=>[(S(!0),A(T,null,F(e.steps,(r,i)=>(S(),C(Y,{key:r.name,value:i+1,class:"flex-grow-1 ma-10"},{default:c(()=>[l(Ne,{fluid:""},{default:c(()=>[l(ie,{align:"center",justify:"center"},{default:c(()=>[l(j,{cols:"8",align:"start"},{default:c(()=>[v("div",lt,[v("span",st,f(e.title),1),x(" / "+f(r.title),1)]),U(V.$slots,`form.${r.name}`,{step:r,currentStep:i+1})]),_:2},1024)]),_:2},1024)]),_:2},1024),v("div",nt,[i+1>1?(S(),C(W,{key:0,class:"mr-10",variant:"text",onClick:h=>o.value=i},{default:c(()=>[x(f(_(m)("Back")),1)]),_:1},8,["onClick"])):re("",!0),l(W,{color:"primary",size:"large",onClick:h=>I(i+1,i+2)},{default:c(()=>[x(f(_(m)("Next")),1)]),_:1},8,["onClick"])])]),_:2},1032,["value"]))),128)),l(Y,{value:e.steps.length+1,class:"flex-grow-0"},{default:c(()=>[v("div",rt,f(_(m)("Summary")),1),l(Ye,{sections:e.summarySections,onModifyStep:k[0]||(k[0]=r=>o.value=r)},xe({_:2},[F(V.$slots,(r,i)=>({name:i,fn:c(h=>[U(V.$slots,i,we(Ie(h)))])}))]),1032,["sections"]),v("div",ot,[l(W,{color:"primary",size:"large",loading:d.value,onClick:L},{default:c(()=>[x(f(_(m)("Confirm and create")),1)]),_:1},8,["loading"])])]),_:3},8,["value"])]),_:3})]),_:3},8,["modelValue","mobile"])]))}};export{St as _};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as _,g,c as p,o as m,w as o,a as l,e as t,t as a,_ as b,k as V,b as k,u as x,d as y,l as A,m as N,f as c,j as C}from"./index-
|
|
1
|
+
import{h as _,g,c as p,o as m,w as o,a as l,e as t,t as a,_ as b,k as V,b as k,u as x,d as y,l as A,m as N,f as c,j as C}from"./index-BjibLozh.js";import{a as w}from"./admin-uCrKjpln.js";import{V as v,a as $,b as D}from"./VCard-D7AwBs4w.js";import{V as S}from"./VTable-D8ZwwC_B.js";import{V as T}from"./VDataTable-ocZo8ju0.js";import{p as B}from"./parameters-DJdlq9sh.js";import{V as M,a as W}from"./VToolbar-pvLQtmbU.js";import{V as F,a as h}from"./VRow-DyK_Mj7R.js";import"./tag-CvrHE14f.js";import"./VAvatar-BsHplcRP.js";import"./VProgressCircular-viI3jDXe.js";import"./VSelect-y0E5_vPn.js";import"./VTextField-DvvH1ciR.js";import"./VInput-DhzSMFXh.js";import"./VMenu-B53a3gm6.js";import"./ssrBoot-ChTB-PYP.js";import"./VCheckboxBtn-B5evxN9K.js";import"./VSelectionControl-Dkms9_P5.js";import"./filter-BVvMTmPG.js";/* empty css */const G={__name:"GlobalStatisticsWidget",async setup(f){let s,n;const e=_({}),i=([s,n]=g(()=>w.getStatistics()),s=await s,n(),s);return e.value=i.data,(r,u)=>(m(),p($,{title:r.$gettext("Statistics")},{default:o(()=>[l(v,null,{default:o(()=>[l(S,null,{default:o(()=>[t("tbody",null,[t("tr",null,[t("td",null,a(r.$gettext("Domain count")),1),t("td",null,a(e.value.domain_count),1)]),t("tr",null,[t("td",null,a(r.$gettext("Domain alias count")),1),t("td",null,a(e.value.domain_alias_count),1)]),t("tr",null,[t("td",null,a(r.$gettext("Account count")),1),t("td",null,a(e.value.account_count),1)]),t("tr",null,[t("td",null,a(r.$gettext("Alias count")),1),t("td",null,a(e.value.alias_count),1)])])]),_:1})]),_:1})]),_:1},8,["title"]))}},I=["href"],j={href:"https://modoboa.org/weblog/",target:"_blank"},E={__name:"NewsFeedWidget",async setup(f){let s,n;const e=_([]),i=[{title:"",key:"title"},{title:"",key:"published",align:"end"}],r=([s,n]=g(()=>w.getNewsFeed()),s=await s,n(),s);return e.value=r.data,(u,L)=>(m(),p($,{title:u.$gettext("Latest news")},{default:o(()=>[l(v,null,{default:o(()=>[l(T,{headers:i,items:e.value,"hide-default-header":"","hide-default-footer":""},{"item.title":o(({item:d})=>[t("a",{href:d.link,target:"_blank"},a(d.title),9,I)]),"item.published":o(({item:d})=>[V(a(u.$date(d.published)),1)]),_:2},1032,["items"])]),_:1}),l(D,{class:"justify-center"},{default:o(()=>[t("div",null,[t("a",j,a(u.$gettext("Visit the official weblog for more information")),1)])]),_:1})]),_:1},8,["title"]))}},R=b(E,[["__scopeId","data-v-e0975b37"]]),U={__name:"DashboardView",setup(f){const{$gettext:s}=k(),n=x(),e=_("");return y(async()=>{const i=await B.getGlobalApplication("core");i.data.params.custom_welcome_message?e.value=i.data.params.custom_welcome_message:e.value=s("Welcome to Modoboa")}),(i,r)=>(m(),A("div",null,[l(M,{flat:""},{default:o(()=>[l(W,null,{default:o(()=>[V(a(e.value),1)]),_:1})]),_:1}),l(F,null,{default:o(()=>[l(h,{sm:"12",md:"6"},{default:o(()=>[l(c(R)),c(n).authUser.role===c(C).SUPER_ADMIN?(m(),p(c(G),{key:0,class:"mt-4"})):N("",!0)]),_:1}),l(h,{sm:"12",md:"6"})]),_:1})]))}},ut=b(U,[["__scopeId","data-v-24210b96"]]);export{ut as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as x,V as y}from"./VAvatar-
|
|
1
|
+
import{c as x,V as y}from"./VAvatar-BsHplcRP.js";import{i as R,c as d,o as l,n as L,b as U,h as f,d as $,w as e,a as n,e as O,l as b,t as i,f as v,m as C,k as p,j as S}from"./index-BjibLozh.js";import{a as G}from"./accounts-BZBqbAmd.js";import{d as D}from"./domains-CDE4_LDF.js";import{c as H,V as q,b as F,a as J}from"./VCard-D7AwBs4w.js";import{V as K}from"./VDataTableVirtual-Cr8yw49k.js";import{V as P}from"./VAutocomplete-DcNqTIie.js";import{V as Q,a as w}from"./VRow-DyK_Mj7R.js";const re={__name:"BooleanIcon",props:{value:{type:Boolean}},setup(r){const k=r,V=R(()=>k.value?"mdi-check-circle":"mdi-close-circle"),t=R(()=>k.value?"success":"error");return(u,M)=>(l(),d(x,{icon:V.value,color:t.value},null,8,["icon","color"]))}},W={class:"headline"},X={key:0,class:"headline"},Y={key:1,class:"headline"},Z={key:0},de={__name:"DomainAdminList",props:{domain:{type:Object,default:()=>{}},dialogMode:{type:Boolean,default:!1}},emits:["close"],setup(r,{emit:k}){const V=L(),{$gettext:t}=U(),u=r,M=k,_=f([]),A=f([]),g=f(""),E=f([{title:t("Username"),value:"username"},{title:t("Name"),value:"name"},{title:"",value:"actions",align:"end",sortable:!1}]),h=f(!1),m=f(null);function I(){A.value.push({}),h.value=!0}function T(){h.value=!1,M("close")}function B(s){D.getDomainAdministrators(s.pk).then(a=>{A.value=a.data})}function N(){const s={role:[S.RESELLER,S.DOMAIN_ADMIN],page_size:50};g.value&&(s.search=g.value),G.getAll(s).then(a=>{_.value=a.data.results.filter(o=>A.value.find(c=>c.id===o.pk)===void 0)})}function j(){D.addDomainAdministrator(u.domain.pk,m.value.pk).then(()=>{B(u.domain),_.value=_.value.filter(s=>s.pk!==m.value.pk),m.value=null,h.value=!1,V.displayNotification({msg:t("Administrator added")})})}function z(s){D.removeDomainAdministrator(u.domain.pk,s.id).then(()=>{B(u.domain),N(),V.displayNotification({msg:t("Administrator removed")})})}return $(()=>{B(u.domain),N()}),(s,a)=>(l(),d(J,null,{default:e(()=>[n(H,null,{default:e(()=>[O("span",W,[r.dialogMode?(l(),b("div",X,i(v(t)("Administrators of"))+" "+i(r.domain.name),1)):(l(),b("div",Y,i(v(t)("Administrators")),1))])]),_:1}),n(q,null,{default:e(()=>[n(K,{headers:E.value,items:A.value},{"item.username":e(({item:o})=>[o.id?(l(),b("span",Z,i(o.username),1)):(l(),d(P,{key:1,modelValue:m.value,"onUpdate:modelValue":a[0]||(a[0]=c=>m.value=c),search:g.value,"onUpdate:search":[a[1]||(a[1]=c=>g.value=c),N],label:v(t)("Select an account"),items:_.value,variant:"outlined","item-title":"username",class:"mt-5","return-object":""},{append:e(()=>[m.value?(l(),d(y,{key:0,variant:"text",color:"primary",size:"x-large",onClick:j},{default:e(()=>[n(x,null,{default:e(()=>[...a[2]||(a[2]=[p("mdi-content-save",-1)])]),_:1})]),_:1})):C("",!0)]),_:1},8,["modelValue","search","label","items"]))]),"item.name":e(({item:o})=>[p(i(o.first_name)+" "+i(o.last_name),1)]),"item.actions":e(({item:o})=>[o.id?(l(),d(y,{key:0,variant:"text",color:"red",title:v(t)("Remove this administrator"),size:"x-large",onClick:c=>z(o)},{default:e(()=>[n(x,null,{default:e(()=>[...a[3]||(a[3]=[p("mdi-delete-outline",-1)])]),_:1})]),_:1},8,["title","onClick"])):C("",!0)]),_:2},1032,["headers","items"])]),_:1}),n(F,null,{default:e(()=>[n(Q,null,{default:e(()=>[n(w,{align:r.dialogMode?"left":"right"},{default:e(()=>[h.value?C("",!0):(l(),d(y,{key:0,color:"primary",variant:"outlined",onClick:I},{default:e(()=>[n(x,{small:""},{default:e(()=>[...a[4]||(a[4]=[p("mdi-plus",-1)])]),_:1}),p(" "+i(v(t)("Add administrator")),1)]),_:1}))]),_:1},8,["align"]),r.dialogMode?(l(),d(w,{key:0,align:"right"},{default:e(()=>[n(y,{color:"grey darken-1",variant:"text",onClick:T},{default:e(()=>[p(i(v(t)("Close")),1)]),_:1})]),_:1})):C("",!0)]),_:1})]),_:1})]),_:1}))}};export{re as _,de as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as M,u as q,i as U,h as f,j as b,d as J,c as d,l as y,a,e as k,w as e,m as P,k as c,t as o,f as s,q as K,o as u,_ as Q,B as z,F as H}from"./index-
|
|
1
|
+
import{b as M,u as q,i as U,h as f,j as b,d as J,c as d,l as y,a,e as k,w as e,m as P,k as c,t as o,f as s,q as K,o as u,_ as Q,B as z,F as H}from"./index-BjibLozh.js";import{c as W,b as X,a as Y,_ as Z}from"./DomainTransportForm-Ccw5BXyM.js";import{L as ee}from"./LoadingData-CnQ_aVqa.js";import{p as ae}from"./parameters-DJdlq9sh.js";import{_ as te}from"./ResourcesForm-noC3AXd9.js";import{d as j}from"./domains-CDE4_LDF.js";import{d as N,c as w,V as I}from"./VAvatar-BsHplcRP.js";import{V,c as F,a as h,b as le}from"./VExpansionPanels-CkwHiKsA.js";import{V as p,a as m}from"./VRow-DyK_Mj7R.js";import{u as oe}from"./domains.store-a9Y5UlDV.js";import{V as se,a as ue}from"./VToolbar-pvLQtmbU.js";import"./ChoiceField-BPhUvoyr.js";import"./VForm-ClJU5x_v.js";import"./tag-CvrHE14f.js";import"./VInput-DhzSMFXh.js";import"./VProgressCircular-viI3jDXe.js";import"./VMenu-B53a3gm6.js";import"./ssrBoot-ChTB-PYP.js";import"./VTextField-DvvH1ciR.js";import"./VSwitch-D4xdR9jz.js";import"./VSelectionControl-Dkms9_P5.js";import"./transports-BUSYxSF4.js";import"./VAutocomplete-DcNqTIie.js";import"./VSelect-y0E5_vPn.js";import"./VCheckboxBtn-B5evxN9K.js";import"./filter-BVvMTmPG.js";import"./VCheckbox-CKW9lz5i.js";import"./VContainer-DY9021j4.js";/* empty css */const ne={key:1},re={key:0},ie={key:0},me={key:0},de={class:"mr-2"},ce={class:"mr-2"},fe={class:"mr-2"},pe={key:0},_e={class:"mr-2"},ve={class:"mt-4 d-flex justify-end"},ye={__name:"DomainEditForm",props:{domain:{type:Object,default:null}},setup($){const x=K(),{$gettext:r}=M(),R=q(),E=$,_=U(()=>R.authUser),v=f({}),D=f(0),g=f(!1),t=U(()=>E.domain),C=f(),L=f(),T=f(),A=f(),B=f(),O=U(()=>{const n={generalForm:C,limitationForm:A,dnsForm:B};return t.value.type==="relaydomain"&&(n.transportForm=T),v.value.params&&v.value.params.enable_domain_limits&&(_.value.role===b.SUPER_ADMIN||_.value.role===b.RESELLER)&&(n.resourcesForm=L),n}),S=f(!1);async function G(){S.value=!1,D.value=[];for(const[n,i]of Object.entries(O.value))if(i.value!=null){const{valid:l}=await i.value.vFormRef.validate();l||(S.value=!0,D.value.push(n))}if(!S.value){g.value=!0;try{const n=JSON.parse(JSON.stringify(t.value));n.transport===null&&delete n.transport,n.type==="relaydomain"?T.value.checkSettingTypes(n):n.transport&&delete n.transport,n.message_limit===""&&(n.message_limit=null),await j.updateDomain(t.value.pk,n),x.push({name:"DomainDetail",params:{id:t.value.pk}})}finally{g.value=!1}}}return J(()=>{ae.getGlobalApplication("limits").then(n=>{v.value.data=n.data})}),(n,i)=>g.value?(u(),d(ee,{key:0})):(u(),y("div",ne,[a(le,{modelValue:D.value,"onUpdate:modelValue":i[5]||(i[5]=l=>D.value=l),multiple:S.value},{default:e(()=>[a(V,{eager:"",value:"generalForm"},{default:e(()=>[a(F,null,{default:e(({expanded:l})=>[a(p,{"no-gutters":""},{default:e(()=>[a(m,{cols:"4"},{default:e(()=>[c(o(s(r)("General")),1)]),_:1}),a(m,{cols:"8",class:"text-medium-emphasis"},{default:e(()=>[a(N,{"leave-absolute":""},{default:e(()=>[l?(u(),y("span",re)):(u(),d(p,{key:1,"no-gutters":"",style:{width:"100%"}},{default:e(()=>[a(m,{cols:"6"},{default:e(()=>[c(o(s(r)("Name: "))+" "+o(t.value.name),1)]),_:1}),a(m,{cols:"6"},{default:e(()=>[c(o(s(r)("Type: "))+" "+o(t.value.type),1)]),_:1})]),_:1}))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:1}),a(h,null,{default:e(()=>[a(W,{ref_key:"generalForm",ref:C,modelValue:t.value,"onUpdate:modelValue":i[0]||(i[0]=l=>t.value=l)},null,8,["modelValue"])]),_:1})]),_:1}),a(V,{eager:"",value:"dnsForm"},{default:e(()=>[a(F,null,{default:e(({expanded:l})=>[a(p,{"no-gutters":""},{default:e(()=>[a(m,{cols:"4"},{default:e(()=>[c(o(s(r)("DNS")),1)]),_:1}),a(m,{cols:"8",class:"text-medium-emphasis"},{default:e(()=>[a(N,{"leave-absolute":""},{default:e(()=>[l?(u(),y("span",ie)):(u(),d(p,{key:1,"no-gutters":"",style:{width:"100%"}},{default:e(()=>[a(m,{cols:"6"},{default:e(()=>[c(o(s(r)("DNS checks"))+" ",1),t.value.enable_dns_checks?(u(),d(w,{key:0,color:"success",icon:"mdi-check-circle-outline"})):(u(),d(w,{key:1,icon:"mdi-check-circle-outline"}))]),_:1}),a(m,{cols:"6"},{default:e(()=>[c(o(s(r)("DKIM signing"))+" ",1),t.value.enable_dkim?(u(),d(w,{key:0,color:"success",icon:"mdi-check-circle-outline"})):(u(),d(w,{key:1,icon:"mdi-close-circle-outline"}))]),_:1})]),_:1}))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:1}),a(h,null,{default:e(()=>[a(X,{ref_key:"dnsForm",ref:B,modelValue:t.value,"onUpdate:modelValue":i[1]||(i[1]=l=>t.value=l)},null,8,["modelValue"])]),_:1})]),_:1}),a(V,{eager:"",value:"limitationForm"},{default:e(()=>[a(F,null,{default:e(({expanded:l})=>[a(p,{"no-gutters":""},{default:e(()=>[a(m,{cols:"4"},{default:e(()=>[c(o(s(r)("Limitations")),1)]),_:1}),a(m,{cols:"8",class:"text-medium-emphasis"},{default:e(()=>[a(N,{"leave-absolute":""},{default:e(()=>[l?(u(),y("span",me)):(u(),d(p,{key:1,"no-gutters":"",style:{width:"100%"}},{default:e(()=>[a(m,{cols:"6"},{default:e(()=>[k("div",de,o(s(r)("Quota: "))+" "+o(t.value.quota),1)]),_:1}),t.value.message_limit?(u(),d(m,{key:0,cols:"6"},{default:e(()=>[k("div",ce,o(s(r)("Sending limit: "))+" "+o(t.value.message_limit),1)]),_:1})):(u(),d(m,{key:1,cols:"6"},{default:e(()=>[k("div",fe,o(s(r)("No sending limit")),1)]),_:1}))]),_:1}))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:1}),a(h,null,{default:e(()=>[a(Y,{ref_key:"limitationForm",ref:A,modelValue:t.value,"onUpdate:modelValue":i[2]||(i[2]=l=>t.value=l)},null,8,["modelValue"])]),_:1})]),_:1}),t.value.type==="relaydomain"?(u(),d(V,{key:0,value:"transportForm",eager:""},{default:e(()=>[a(F,null,{default:e(({expanded:l})=>[a(p,{"no-gutters":""},{default:e(()=>[a(m,{cols:"4"},{default:e(()=>[c(o(s(r)("Transport")),1)]),_:1}),a(m,{cols:"8",class:"text-medium-emphasis"},{default:e(()=>[a(N,{"leave-absolute":""},{default:e(()=>[l?(u(),y("span",pe)):(u(),d(p,{key:1,"no-gutters":"",style:{width:"100%"}},{default:e(()=>[a(m,{cols:"6"},{default:e(()=>[k("div",_e,o(s(r)("Service: "))+" "+o(t.value.transport.service),1)]),_:1})]),_:1}))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:1}),a(h,null,{default:e(()=>[a(Z,{ref_key:"transportForm",ref:T,modelValue:t.value.transport,"onUpdate:modelValue":i[3]||(i[3]=l=>t.value.transport=l)},null,8,["modelValue"])]),_:1})]),_:1})):P("",!0),v.value.params&&v.value.params.enable_domain_limits&&(_.value.role===s(b).SUPER_ADMIN||_.value.role===s(b).RESELLER)?(u(),d(V,{key:1,value:"resourcesForm",eager:""},{default:e(()=>[a(F,null,{default:e(()=>[a(p,{"no-gutters":""},{default:e(()=>[a(m,{cols:"4"},{default:e(()=>[c(o(s(r)("Resources")),1)]),_:1})]),_:1})]),_:1}),a(h,null,{default:e(()=>[a(te,{ref_key:"resourcesForm",ref:L,modelValue:t.value.resources,"onUpdate:modelValue":i[4]||(i[4]=l=>t.value.resources=l)},null,8,["modelValue"])]),_:1})]),_:1})):P("",!0)]),_:1},8,["modelValue","multiple"]),k("div",ve,[a(I,{loading:g.value,variant:"outlined",onClick:i[6]||(i[6]=l=>s(x).go(-1))},{default:e(()=>[c(o(s(r)("Cancel")),1)]),_:1},8,["loading"]),a(I,{class:"ml-4",color:"primary darken-1",variant:"outlined",loading:g.value,onClick:G},{default:e(()=>[c(o(s(r)("Save")),1)]),_:1},8,["loading"])])]))}},ge={__name:"DomainEditView",setup($){const{$gettext:x}=M(),r=z(),R=oe(),E=f({});return R.getDomains(),j.getDomain(r.params.id).then(_=>{E.value=_.data}),(_,v)=>(u(),y(H,null,[a(se,{flat:""},{default:e(()=>[a(ue,null,{default:e(()=>[c(o(s(x)("Edit domain")),1)]),_:1})]),_:1}),a(s(ye),{domain:E.value},null,8,["domain"])],64))}},ze=Q(ge,[["__scopeId","data-v-2221e277"]]);export{ze as default};
|
modoboa/frontend_dist/assets/{DomainTransportForm-DAXJGNLA.js → DomainTransportForm-Ccw5BXyM.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as M}from"./ChoiceField-
|
|
1
|
+
import{C as M}from"./ChoiceField-BPhUvoyr.js";import{b as g,i as R,h as b,c as x,o as v,w as h,a as r,f as a,e as D,d as K,l as U,m as C,t as N,F as q,s as S}from"./index-BjibLozh.js";import{r as y,V as F}from"./VForm-ClJU5x_v.js";import{V as k}from"./VTextField-DvvH1ciR.js";import{V as B}from"./VSwitch-D4xdR9jz.js";import{t as T}from"./transports-BUSYxSF4.js";import{V as j}from"./VAutocomplete-DcNqTIie.js";import{V as A}from"./VCheckbox-CKW9lz5i.js";const W={__name:"DomainGeneralForm",props:{modelValue:{type:Object,default:null}},emits:["update:modelValue"],setup(V,{expose:c,emit:o}){const{$gettext:m}=g(),i=V,t=o,u=R({get(){return i.modelValue},set(_){t("update:modelValue",_)}}),l=b();function e(_){_==="relaydomain"&&u.value.transport==null&&(u.value.transport={})}const s=[{label:m("Domain"),icon:"mdi-earth",value:"domain"},{label:m("Relay domain"),icon:"mdi-earth",value:"relaydomain"}];return c({vFormRef:l}),(_,p)=>(v(),x(F,{ref_key:"vFormRef",ref:l},{default:h(()=>[r(k,{modelValue:u.value.name,"onUpdate:modelValue":p[0]||(p[0]=d=>u.value.name=d),label:a(m)("Domain name (ex: domain.tld)"),rules:[a(y).required],variant:"outlined",class:"mb-5"},null,8,["modelValue","label","rules"]),r(a(M),{modelValue:u.value.type,"onUpdate:modelValue":[p[1]||(p[1]=d=>u.value.type=d),e],label:a(m)("Type"),choices:s},null,8,["modelValue","label"]),r(B,{modelValue:u.value.enabled,"onUpdate:modelValue":p[2]||(p[2]=d=>u.value.enabled=d),label:a(m)("Enabled"),hint:a(m)("Control if this domain will be allowed to send and receive messages"),color:"primary","persistent-hint":""},null,8,["modelValue","label","hint"])]),_:1},512))}},X={__name:"DomainDNSForm",props:{modelValue:{type:Object,default:()=>{}}},setup(V,{expose:c}){const{$gettext:o}=g(),m=V,i=b(),t=R(()=>m.modelValue),u=b([{label:"1024",value:1024},{label:"2048",value:2048},{label:"4096",value:4096}]);return c({vFormRef:i}),(l,e)=>(v(),x(F,{ref_key:"vFormRef",ref:i},{default:h(()=>[D("div",null,[r(B,{modelValue:t.value.enable_dns_checks,"onUpdate:modelValue":e[0]||(e[0]=s=>t.value.enable_dns_checks=s),label:a(o)("Enable DNS checks"),color:"primary"},null,8,["modelValue","label"]),r(B,{modelValue:t.value.enable_dkim,"onUpdate:modelValue":e[1]||(e[1]=s=>t.value.enable_dkim=s),label:a(o)("Enable DKIM signing"),color:"primary"},null,8,["modelValue","label"]),r(k,{modelValue:t.value.dkim_key_selector,"onUpdate:modelValue":e[2]||(e[2]=s=>t.value.dkim_key_selector=s),label:a(o)("DKIM key selector"),disabled:!t.value.enable_dkim,variant:"outlined"},null,8,["modelValue","label","disabled"]),r(a(M),{modelValue:t.value.dkim_key_length,"onUpdate:modelValue":e[3]||(e[3]=s=>t.value.dkim_key_length=s),label:a(o)("DKIM key length"),choices:u.value,disabled:!t.value.enable_dkim},null,8,["modelValue","label","choices","disabled"])])]),_:1},512))}},Y={__name:"DomainLimitationsForm",props:{modelValue:{type:Object,default:null}},setup(V,{expose:c}){const{$gettext:o}=g(),m=V,i=b(),t=R(()=>m.modelValue);return c({vFormRef:i}),(u,l)=>(v(),x(F,{ref_key:"vFormRef",ref:i},{default:h(()=>[r(k,{modelValue:t.value.quota,"onUpdate:modelValue":l[0]||(l[0]=e=>t.value.quota=e),label:a(o)("Quota"),hint:a(o)("Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. A value of 0 means no quota."),"persistent-hint":"",class:"mb-4",variant:"outlined",rules:[a(y).required]},null,8,["modelValue","label","hint","rules"]),r(k,{modelValue:t.value.default_mailbox_quota,"onUpdate:modelValue":l[1]||(l[1]=e=>t.value.default_mailbox_quota=e),label:a(o)("Default mailbox quota"),hint:a(o)("Default quota applied to mailboxes. Can be expressed in KB, MB (default) or GB. A value of 0 means no quota."),"persistent-hint":"",class:"mb-4",variant:"outlined",rules:[a(y).required]},null,8,["modelValue","label","hint","rules"]),r(k,{modelValue:t.value.message_limit,"onUpdate:modelValue":l[2]||(l[2]=e=>t.value.message_limit=e),label:a(o)("Message sending limit"),hint:a(o)("Number of messages this domain can send per day. Leave empty for no limit."),type:"number","persistent-hint":"",variant:"outlined",rules:[a(y).numericOrNull]},null,8,["modelValue","label","hint","rules"])]),_:1},512))}},O={class:"m-label"},E={class:"m-label"},Z={__name:"DomainTransportForm",props:{modelValue:{type:Object,default:()=>{}}},emits:["update:modelValue"],setup(V,{expose:c,emit:o}){const{$gettext:m}=g(),i=V,t=o,u=b(),l=b({}),e=b(),s=b([]);function _(d){for(const f of e.value.settings)if(f.type==="int"){const n=`${e.value.name}_${f.name}`;d.transport.settings[n]=parseInt(d.transport.settings[n])}}function p(){l.value.service=e.value.name,t("update:modelValue",l.value)}return K(()=>{l.value={...i.modelValue},l.value.settings||(l.value.settings={}),T.getAll().then(d=>{s.value=d.data,l.value.service&&(e.value=s.value.find(f=>f.name===l.value.service))})}),c({checkSettingTypes:_,service:e,vFormRef:u}),(d,f)=>(v(),x(F,{ref_key:"vFormRef",ref:u},{default:h(()=>[D("label",O,N(a(m)("Service")),1),r(j,{modelValue:e.value,"onUpdate:modelValue":f[0]||(f[0]=n=>e.value=n),items:s.value,"item-title":"name","return-object":"",variant:"outlined",rules:[a(y).required]},null,8,["modelValue","items","rules"]),e.value?(v(!0),U(q,{key:0},S(e.value.settings,(n,w)=>(v(),U(q,{key:w},[n.type==="str"||n.type==="int"?(v(),U(q,{key:0},[D("label",E,N(n.label),1),r(k,{modelValue:l.value.settings[`${e.value.name}_${n.name}`],"onUpdate:modelValue":[$=>l.value.settings[`${e.value.name}_${n.name}`]=$,p],variant:"outlined",type:l.value.type==="int"?"number":"text",rules:[!!n.required||a(y).required]},null,8,["modelValue","onUpdate:modelValue","type","rules"])],64)):n.type==="boolean"?(v(),x(A,{key:1,modelValue:l.value.settings[`${e.value.name}_${n.name}`],"onUpdate:modelValue":[$=>l.value.settings[`${e.value.name}_${n.name}`]=$,p],label:n.label},null,8,["modelValue","onUpdate:modelValue","label"])):C("",!0)],64))),128)):C("",!0)]),_:1},512))}};export{Z as _,Y as a,X as b,W as c};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as O,a as ke}from"./DomainAdminList-
|
|
1
|
+
import{_ as O,a as ke}from"./DomainAdminList-BO8_4Cwt.js";import{c as q}from"./colors-DoZdCu1D.js";import{b as z,l as h,o as n,e as i,a as e,k as s,t,y as me,w as l,F as T,s as Y,f as u,h as D,D as te,i as R,d as Ve,z as ie,r as ce,c,m as C,_ as fe,n as he,g as pe,A as $e,B as xe}from"./index-BjibLozh.js";import{b as X,V as w,a as De}from"./VAvatar-BsHplcRP.js";import{V as we}from"./VTable-D8ZwwC_B.js";import{d as E}from"./domains-CDE4_LDF.js";import{V as ve,a as _e}from"./VToolbar-pvLQtmbU.js";import{V as G}from"./VSpacer-CBqB9uSt.js";import{V as A,a as K,c as B,b as Q}from"./VCard-D7AwBs4w.js";import{V as $,a as d}from"./VRow-DyK_Mj7R.js";import{V as Ce}from"./VSheet-DQkh_hsX.js";import{V as Se,a as Me,b as Ne}from"./VExpansionPanels-CkwHiKsA.js";import{V as P}from"./VAlert-Buv8Z5G4.js";import{a as Ie,b as Te}from"./VMenu-B53a3gm6.js";import{_ as Ae}from"./ConfirmDialog-BMIg94-U.js";import{V as N}from"./VSelect-y0E5_vPn.js";import{V as Ke}from"./VDataTableVirtual-Cr8yw49k.js";import{V as H}from"./VDialog-CUMh3paI.js";import{t as je}from"./transports-BUSYxSF4.js";import{V as ae,a as Ue}from"./VRadioGroup-C0bqFrYg.js";import{a as ye}from"./amavis-B4ScfQsG.js";import{V as oe}from"./VTextField-DvvH1ciR.js";import{V as Pe}from"./VCheckbox-CKW9lz5i.js";import{L as Be}from"./LoadingData-CnQ_aVqa.js";import{_ as Le}from"./ResourcesForm-noC3AXd9.js";import{T as re}from"./TimeSerieChart-BXJwhTMO.js";import{V as Fe,a as Re,b as ne,c as se}from"./VTabs-D2c0KeF2.js";import{u as ze}from"./global.store-Bha4Z76j.js";import"./accounts-BZBqbAmd.js";import"./VAutocomplete-DcNqTIie.js";import"./VProgressCircular-viI3jDXe.js";import"./tag-CvrHE14f.js";import"./filter-BVvMTmPG.js";import"./VInput-DhzSMFXh.js";import"./VCheckboxBtn-B5evxN9K.js";import"./VSelectionControl-Dkms9_P5.js";/* empty css */import"./ssrBoot-ChTB-PYP.js";import"./VDataTable-ocZo8ju0.js";import"./VContainer-DY9021j4.js";import"./VForm-ClJU5x_v.js";import"./VPicker-B928ZVJQ.js";import"./VWindowItem-DErNPSH8.js";const Oe={class:"text-h6"},Ee={width:"40%"},Ye={class:"text-white"},Ge={class:"text-white"},qe={class:"text-white"},Xe={class:"text-white"},W={__name:"DmarcSourceTable",props:{title:{type:String,default:""},color:{type:String,default:""},total:{type:Number,default:null},sources:{type:Object,default:null}},setup(r){const{$gettext:o}=z();return(p,y)=>(n(),h("div",null,[i("div",Oe,[s(t(r.title)+" ",1),i("span",{class:me(`text-${r.color}-lighten-2`)},t(r.total),3)]),e(we,null,{default:l(()=>[i("tbody",null,[(n(!0),h(T,null,Y(r.sources,(a,_)=>(n(),h(T,{key:_},[i("tr",null,[i("th",Ee,t(_),1),i("th",null,t(u(o)("Total")),1),y[0]||(y[0]=i("th",null,"SPF",-1)),y[1]||(y[1]=i("th",null,"DKIM",-1))]),(n(!0),h(T,null,Y(a,(f,V)=>(n(),h("tr",{key:V},[i("td",null,t(V),1),i("td",null,t(f.total),1),i("td",null,[e(X,{color:"green lighten-2",size:"24"},{default:l(()=>[i("span",Ye,t(f.spf.success),1)]),_:2},1024),e(X,{color:"red lighten-2 ml-1",size:"24"},{default:l(()=>[i("span",Ge,t(f.spf.failure),1)]),_:2},1024)]),i("td",null,[e(X,{color:"green lighten-2",size:"24"},{default:l(()=>[i("span",qe,t(f.dkim.success),1)]),_:2},1024),e(X,{color:"red lighten-2 ml-1",size:"24"},{default:l(()=>[i("span",Xe,t(f.dkim.failure),1)]),_:2},1024)])]))),128))],64))),128))])]),_:1})]))}},We={key:0},He={class:"mx-2"},Qe={class:"text-subtitle-1"},Je={key:1},Ze={__name:"DmarcAligmentChart",props:{domain:{type:Object,default:()=>null}},setup(r){const{$gettext:o}=z(),p=["aligned","trusted","forwarded","failed"],y=r,a=D({colors:[q.green.lighten2,q.orange.lighten2,q.blue.lighten2,q.red.lighten2],labels:[o("Fully aligned"),o("Partially aligned"),o("Forwarded"),o("Failed")],legend:{position:"bottom"}}),_=D(null),f=D([{key:"total",label:o("Total"),color:"primary lighten-2"},{key:"aligned",label:o("Fully aligned"),color:"green lighten-2"},{key:"trusted",label:o("Partially aligned"),color:"orange lighten-2"},{key:"forwarded",label:o("Forwarded"),color:"blue lighten-2"},{key:"failed",label:o("Failed"),color:"red lighten-2"}]),V=te.now(),g=D(V.year),v=D(V.weekNumber),m=D(!1),b=D(!1),L=D(null),F=D([]),I=D({}),J=R(()=>te.fromObject({weekYear:g.value,weekNumber:v.value}).startOf("week")),Z=R(()=>te.fromObject({weekYear:g.value,weekNumber:v.value}).endOf("week"));function ee(U){let k="";for(const j of U.split(" "))k!==""&&(k+=" "),k+="text-"+j;return k}function le(){v.value===52?(g.value+=1,v.value=1):v.value+=1}function S(){v.value===1?(g.value-=1,v.value=52):v.value-=1}function x(){if(b.value)return;const U=`${g.value}-${v.value}`;b.value=!0,E.getDomainDmarcAlignment(y.domain.pk,U).then(k=>{if(b.value=!1,k.status===204){m.value=!0;return}I.value={total:0},_.value=k.data,F.value=[];for(const j of p){let M=0;for(const de in k.data[j])for(const be in k.data[j][de])M+=k.data[j][de][be].total;I.value.total+=M,I.value[j]=M,F.value.push(M)}})}return Ve(()=>x()),ie(v,()=>{x()}),ie(g,()=>{x()}),(U,k)=>{const j=ce("apexchart");return _.value?(n(),h("div",We,[e(K,null,{default:l(()=>[e(ve,{dense:"",elevation:"0",class:"mr-2"},{default:l(()=>[e(_e,null,{default:l(()=>[s(t(u(o)("Alignment")),1)]),_:1}),e(G),e(w,{icon:"mdi-arrow-left",size:"x-small",onClick:S}),i("span",He,t(J.value.toLocaleString())+" - "+t(Z.value.toLocaleString()),1),e(w,{icon:"mdi-arrow-right",size:"x-small",onClick:le})]),_:1}),e(A,null,{default:l(()=>[e($,null,{default:l(()=>[e(d,{cols:"5"},{default:l(()=>[F.value?(n(),c(j,{key:0,type:"pie",height:"350",options:a.value,series:F.value},null,8,["options","series"])):C("",!0)]),_:1}),e(d,{cols:"7"},{default:l(()=>[e($,null,{default:l(()=>[(n(!0),h(T,null,Y(f.value,M=>(n(),c(d,{key:M.key,cols:"6"},{default:l(()=>[e(Ce,{outlined:"",color:M.color,rounded:""},{default:l(()=>[e(K,{outlined:"",class:"pa-10 text-center"},{default:l(()=>[i("span",{class:me("text-h4 "+ee(M.color))},t(I.value[M.key]),3),k[1]||(k[1]=i("br",null,null,-1)),i("span",Qe,t(M.label),1)]),_:2},1024)]),_:2},1032,["color"])]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(Ne,{modelValue:L.value,"onUpdate:modelValue":k[0]||(k[0]=M=>L.value=M),class:"mt-2"},{default:l(()=>[e(Se,{title:u(o)("Detail")},{default:l(()=>[e(Me,null,{default:l(()=>[e(W,{title:u(o)("Trusted sources"),color:"green",total:I.value.aligned,sources:_.value.aligned},null,8,["title","total","sources"]),e(W,{title:u(o)("Partially trusted sources / Forwarders"),color:"orange",total:I.value.trusted,sources:_.value.trusted,class:"mt-4"},null,8,["title","total","sources"]),e(W,{title:u(o)("Forwarders with ARC"),color:"blue",total:I.value.forwarded,sources:_.value.forwarded,class:"mt-4"},null,8,["title","total","sources"]),e(W,{title:u(o)("Unknown sources / Threats"),color:"red",total:I.value.failed,sources:_.value.failed,class:"mt-4"},null,8,["title","total","sources"])]),_:1})]),_:1},8,["title"])]),_:1},8,["modelValue"])])):(n(),h("div",Je,[m.value?(n(),c(P,{key:0,type:"info",variant:"outlined",prominent:"",border:"start",class:"mt-6"},{default:l(()=>[i("div",null,t(u(o)("DMARC support does not seem to be enabled for this domain.")),1),i("div",null,t(u(o)("If you configured it recently, please wait for the first report to be received and processed.")),1)]),_:1})):C("",!0)]))}}},el={id:"dkimdns",class:"dkim"},ge={__name:"DKIMKeyViewer",props:{domain:{type:Object,default:null}},setup(r){const o=r,p=R(()=>{let a=`v=DKIM1;k=rsa;p=${o.domain.dkim_public_key}`;const _=[];for(;a.length>0;)if(a.length>74)_.push(` "${a.substring(0,74)}"`),a=a.substring(74);else{_.push(` "${a}"`);break}return _.join(`
|
|
2
2
|
`)});function y(){navigator.clipboard.writeText(document.getElementById("dkimdns").textContent)}return(a,_)=>(n(),h("button",{class:"dkimbutton",onClick:_[0]||(_[0]=f=>y())},[i("pre",el,t(r.domain.dkim_key_selector)+"._domainkey."+t(r.domain.name)+". IN TXT ("+t(p.value)+")",1)]))}},ll={class:"headline"},tl={id:"dkimpub",class:"dkim"},al={__name:"DomainDKIMKey",props:{domain:{type:Object,default:null}},emits:["close"],setup(r,{emit:o}){const{$gettext:p}=z(),y=o;function a(){navigator.clipboard.writeText(document.getElementById("dkimpub").textContent)}return(_,f)=>(n(),c(K,null,{default:l(()=>[e(B,null,{default:l(()=>[i("span",ll,t(u(p)("DKIM public key for"))+" "+t(r.domain.name),1)]),_:1}),e(A,null,{default:l(()=>[i("p",null,t(u(p)("Raw format. Click to copy")),1),e(P,{border:"start","colored-border":"","border-color":"primary lighten-3",elevation:"2",dense:""},{default:l(()=>[i("button",{class:"dkimbutton",onClick:f[0]||(f[0]=V=>a())},[i("pre",tl,t(r.domain.dkim_public_key),1)])]),_:1})]),_:1}),e(A,null,{default:l(()=>[i("p",null,t(u(p)("Bind/named format. Click to copy")),1),e(P,{border:"start","colored-border":"","border-color":"primary lighten-3",elevation:"2",dense:""},{default:l(()=>[e(ge,{domain:r.domain},null,8,["domain"])]),_:1})]),_:1}),e(Q,null,{default:l(()=>[e(G),e(w,{onClick:f[1]||(f[1]=V=>y("close"))},{default:l(()=>[s(t(u(p)("Close")),1)]),_:1})]),_:1})]),_:1}))}},ol={class:"text-subtitle-1 text-grey-darken-2 mb-4"},nl={class:"text-h6"},sl={__name:"DomainDNSConfig",props:{domain:{type:Object,default:null}},emits:["close"],setup(r,{emit:o}){const p=o;return(y,a)=>(n(),c(K,null,{default:l(()=>[e(B,{class:"text-h5"},{default:l(()=>[i("span",null,t(y.$gettext("DNS configuration for "))+" "+t(r.domain.name),1)]),_:1}),e(A,null,{default:l(()=>[i("p",ol,t(y.$gettext("Here is an example of DNS configuration (bind format). Replace values between [ ] by the appropriate ones.")),1),e(P,{class:"mb-4",border:"start","border-color":"primary lighten-3",elevation:"2",color:"white"},{default:l(()=>[a[1]||(a[1]=i("div",{class:"text-h6"},"MX",-1)),i("pre",null,[s("mail."+t(r.domain.name)+". IN A ",1),i("strong",null,"["+t(y.$gettext("IP address of your Modoboa server"))+"]",1),s(`
|
|
3
3
|
@ IN MX 10 mail.`+t(r.domain.name)+".",1)])]),_:1}),e(P,{class:"mb-4",border:"start","border-color":"primary lighten-3",elevation:"2",dense:"",color:"white"},{default:l(()=>[...a[2]||(a[2]=[i("div",{class:"text-h6"},"SPF",-1),i("pre",null,'@ IN TXT "v=spf1 mx ~all"',-1)])]),_:1}),r.domain.enable_dkim&&r.domain.dkim_public_key?(n(),c(P,{key:0,class:"mb-4",border:"start","border-color":"primary lighten-3",elevation:"2",dense:"",color:"white"},{default:l(()=>[a[3]||(a[3]=i("div",{class:"text-h6"},"DKIM",-1)),e(ge,{domain:r.domain},null,8,["domain"])]),_:1})):C("",!0),e(P,{class:"mb-4",border:"start","border-color":"primary lighten-3",elevation:"2",dense:"",color:"white"},{default:l(()=>[a[4]||(a[4]=i("div",{class:"text-h6"},"DMARC",-1)),i("pre",null,"_dmarc."+t(r.domain.name)+'. IN TXT "v=DMARC1; p=quarantine; pct=100;"',1)]),_:1}),e(P,{class:"mb-4",border:"start","border-color":"primary lighten-3",elevation:"2",dense:"",color:"white"},{default:l(()=>[i("div",nl,t(y.$gettext("Auto configuration")),1),i("pre",null,[s("autoconfig."+t(r.domain.name)+". IN CNAME ",1),i("strong",null,"["+t(y.$gettext("hostname of your automx server"))+"]",1),s(`
|
|
4
4
|
autodiscover.`+t(r.domain.name)+". IN CNAME ",1),i("strong",null,"["+t(y.$gettext("hostname of your automx server"))+"]",1)])]),_:1})]),_:1}),e(Q,null,{default:l(()=>[e(G),e(w,{onClick:a[0]||(a[0]=_=>p("close"))},{default:l(()=>[s(t(y.$gettext("Close")),1)]),_:1})]),_:1})]),_:1}))}},ul=fe(sl,[["__scopeId","data-v-506783e1"]]),il={__name:"DNSBLSummary",props:{mxrecord:{type:Object,default:null}},emits:["close"],setup(r,{emit:o}){const p=r,y=o;return(a,_)=>(n(),c(K,null,{default:l(()=>[e(B,{class:"text-h5"},{default:l(()=>[i("span",null,t(a.$gettext("DNSBL summary for "))+" "+t(p.mxrecord.name),1)]),_:1}),e(A,null,{default:l(()=>[s(t(a.$gettext("IP address %{ address } is currently listed by the following DNSBL providers:",{address:r.mxrecord.address}))+" ",1),e(Ie,null,{default:l(()=>[(n(!0),h(T,null,Y(p.mxrecord.dnsbl_results,f=>(n(),c(Te,{key:f.provider},{default:l(()=>[s(t(f.provider)+" ("+t(f.status)+") ",1)]),_:2},1024))),128))]),_:1})]),_:1}),e(Q,null,{default:l(()=>[e(G),e(w,{onClick:_[0]||(_[0]=f=>y("close"))},{default:l(()=>[s(t(a.$gettext("Close")),1)]),_:1})]),_:1})]),_:1}))}},dl={class:"mt-4 overline"},rl={class:"mt-4 overline"},ml={key:4,class:"d-flex align-center flex-nowrap mt-4"},cl={class:"text-subtitle-2"},fl={class:"ml-6"},pl={key:0},vl={key:1},_l={__name:"DNSDetail",props:{modelValue:{type:Object,default:null}},setup(r){const{$gettext:o}=z(),p=he(),y=r,a=R(()=>y.modelValue),_=D(),f=D({}),V=D([{title:o("Name"),value:"name"},{title:o("Address"),value:"address"},{title:o("Updated"),value:"updated"},{title:"",value:"issues"}]),g=D(!1),v=D(null),m=D(!1),b=D(!1),L=D(!1);function F(){navigator.clipboard.writeText(a.value.dkim_public_key),p.displayNotification({msg:o("DKIM key copied to clipboard"),type:"success"})}function I(){const S={dkim_private_key_path:""};E.patchDomain(a.value.pk,S).then(()=>{p.displayNotification({msg:o("A new key will be generated soon. Refresh the page in a moment to see it."),type:"success"}),a.value.dkim_private_key_path="",g.value=!1}).catch(()=>{g.value=!1})}function J(){g.value=!1}async function Z(){g.value=!0,E.getDomainDNSDetail(a.value.pk).then(async S=>{f.value=S.data,await _.value.open(o("warning"),o("DKIM key does not seem to be generated yet or has failed. Do you want to requeue the job?"),{color:"warning",cancelLabel:o("No"),agreeLabel:o("Yes")})?I():J()})}function ee(){_.value.open(o("Warning"),o("DKIM keys already exist for this domain. Do you want to overwrite them?"),{color:"error",cancelLabel:o("No"),agreeLabel:o("Yes")})}function le(S){v.value=S,L.value=!0}return ie(a,S=>{S&&E.getDomainDNSDetail(S.pk).then(x=>{f.value=x.data})},{immediate:!0}),(S,x)=>{const U=ce("translate");return a.value?(n(),c(K,{key:0},{default:l(()=>[e(B,null,{default:l(()=>[x[8]||(x[8]=i("span",null," DNS ",-1)),e(w,{class:"ml-2",icon:"mdi-information-outline",title:u(o)("DNS configuration help"),variant:"text",density:"compact",onClick:x[0]||(x[0]=k=>m.value=!0)},null,8,["title"])]),_:1}),e(A,null,{default:l(()=>[e(U,{class:"overline"},{default:l(()=>[...x[9]||(x[9]=[s("MX records",-1)])]),_:1}),a.value.dns_global_status=="pending"?(n(),c($,{key:0},{default:l(()=>[e(d,null,{default:l(()=>[e(N,{color:"info",size:"small"},{default:l(()=>[s(t(u(o)("Pending")),1)]),_:1})]),_:1})]),_:1})):(n(),c(Ke,{key:1,headers:V.value,items:f.value.mx_records},{"item.updated":l(({item:k})=>[s(t(S.$date(k.updated)),1)]),"item.issues":l(({item:k})=>[k.dnsbl_results.length?(n(),c(w,{key:0,icon:"mdi-bell",color:"error",variant:"flat",size:"x-small",onClick:j=>le(k)},null,8,["onClick"])):C("",!0)]),_:2},1032,["headers","items"])),i("div",dl,t(u(o)("Auto configuration")),1),a.value.dns_global_status=="pending"?(n(),c($,{key:2},{default:l(()=>[e(d,null,{default:l(()=>[e(N,{color:"info",size:"small"},{default:l(()=>[s(t(u(o)("Pending")),1)]),_:1})]),_:1})]),_:1})):(n(),h(T,{key:3},[e($,null,{default:l(()=>[e(d,null,{default:l(()=>[f.value.autoconfig_record?(n(),c(N,{key:0,color:"success"},{default:l(()=>[s(t(u(o)("autoconfig record (Mozilla): %{ value }",{value:f.value.autoconfig_record.value})),1)]),_:1})):(n(),c(N,{key:1,color:"warning"},{default:l(()=>[s(t(u(o)("autoconfig record (Mozilla) not found")),1)]),_:1}))]),_:1}),e(d,null,{default:l(()=>[f.value.autodiscover_record?(n(),c(N,{key:0,color:"success"},{default:l(()=>[s(t(u(o)("autodiscover record (Microsoft): %{ value }",{value:f.value.autodiscover_record.value})),1)]),_:1})):(n(),c(N,{key:1,color:"warning"},{default:l(()=>[s(t(u(o)("autodiscover record (Microsoft) not found")),1)]),_:1}))]),_:1})]),_:1}),i("div",rl,t(u(o)("Authentication")),1),e($,null,{default:l(()=>[e(d,null,{default:l(()=>[f.value.spf_record?(n(),c(N,{key:0,color:"success"},{default:l(()=>[s(t(u(o)("SPF record found")),1)]),_:1})):(n(),c(N,{key:1,color:"error"},{default:l(()=>[s(t(u(o)("SPF record not found")),1)]),_:1}))]),_:1}),e(d,null,{default:l(()=>[f.value.dkim_record?(n(),c(N,{key:0,color:"success"},{default:l(()=>[s(t(u(o)("DKIM record found")),1)]),_:1})):(n(),c(N,{key:1,color:"error"},{default:l(()=>[s(t(u(o)("DKIM record not found")),1)]),_:1}))]),_:1}),e(d,null,{default:l(()=>[f.value.dmarc_record?(n(),c(N,{key:0,color:"success"},{default:l(()=>[s(t(u(o)("DMARC record found")),1)]),_:1})):(n(),c(N,{key:1,color:"error"},{default:l(()=>[s(t(u(o)("DMARC record not found")),1)]),_:1}))]),_:1})]),_:1})],64)),a.value.enable_dkim?(n(),h("div",ml,[i("div",cl,t(u(o)("DKIM key")),1),i("div",fl,[a.value.dkim_private_key_path&&a.value.dkim_public_key?(n(),h("div",pl,[e(w,{color:"primary",size:"small",onClick:x[1]||(x[1]=k=>b.value=!0)},{default:l(()=>[s(t(u(o)("Show key")),1)]),_:1}),e(w,{icon:"mdi-content-copy",variant:"text",class:"ml-2",title:u(o)("Copy key to clipboard"),onClick:F},null,8,["title"]),e(w,{icon:"mdi-refresh",title:u(o)("Generate a new DKIM key"),variant:"text",loading:g.value,onClick:ee},null,8,["title","loading"])])):(n(),h("div",vl,[s(t(u(o)("Not generated"))+" ",1),e(w,{icon:"mdi-reload",color:"primary",variant:"text",loading:g.value,onClick:Z},null,8,["loading"])]))])])):C("",!0)]),_:1}),e(H,{modelValue:m.value,"onUpdate:modelValue":x[3]||(x[3]=k=>m.value=k),"max-width":"800px",persistent:""},{default:l(()=>[e(ul,{domain:a.value,onClose:x[2]||(x[2]=k=>m.value=!1)},null,8,["domain"])]),_:1},8,["modelValue"]),e(H,{modelValue:b.value,"onUpdate:modelValue":x[5]||(x[5]=k=>b.value=k),"max-width":"800px",persistent:""},{default:l(()=>[e(al,{domain:a.value,onClose:x[4]||(x[4]=k=>b.value=!1)},null,8,["domain"])]),_:1},8,["modelValue"]),e(H,{modelValue:L.value,"onUpdate:modelValue":x[7]||(x[7]=k=>L.value=k),"max-width":"800px",persistent:""},{default:l(()=>[e(il,{mxrecord:v.value,onClose:x[6]||(x[6]=k=>L.value=!1)},null,8,["mxrecord"])]),_:1},8,["modelValue"]),e(Ae,{ref_key:"dialog",ref:_},null,512)]),_:1})):C("",!0)}}},yl={class:"headline"},gl={__name:"DomainSummary",props:{domain:{type:Object,default:null}},setup(r){const{$gettext:o}=z();return(p,y)=>r.domain?(n(),c(K,{key:0},{default:l(()=>[e(B,null,{default:l(()=>[i("div",yl,t(u(o)("General information")),1)]),_:1}),e(A,null,{default:l(()=>[e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Creation date")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[s(t(p.$date(r.domain.creation)),1)]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Last modification date")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[s(t(p.$date(r.domain.last_modification)),1)]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Quota")),1)]),_:1}),r.domain.quota==="0"?(n(),c(d,{key:0,cols:"6"},{default:l(()=>[s(t(u(o)("Unlimited")),1)]),_:1})):(n(),c(d,{key:1,cols:"6"},{default:l(()=>[s(t(r.domain.quota)+" "+t(u(o)("MB")),1)]),_:1}))]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Default mailbox quota")),1)]),_:1}),r.domain.default_mailbox_quota==="0"?(n(),c(d,{key:0,cols:"6"},{default:l(()=>[s(t(u(o)("Unlimited")),1)]),_:1})):(n(),c(d,{key:1,cols:"6"},{default:l(()=>[s(t(r.domain.default_mailbox_quota)+" MB",1)]),_:1}))]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Daily sending limit")),1)]),_:1}),r.domain.message_limit!==void 0&&r.domain.message_limit!==null?(n(),c(d,{key:0,cols:"6"},{default:l(()=>[r.domain.message_limit===0?(n(),h(T,{key:0},[s(t(u(o)("Sending forbidden")),1)],64)):(n(),c(De,{key:1,color:r.domain.sent_messages_in_percent<80?"primary":"warning","model-value":r.domain.sent_messages_in_percent,height:"25",class:"white--text"},{default:l(({value:a})=>[s(t(Math.ceil(a))+"% ("+t(r.domain.message_limit)+" "+t(u(o)("messages"))+") ",1)]),_:1},8,["color","model-value"]))]),_:1})):(n(),c(d,{key:1,cols:"6"},{default:l(()=>[s(t(u(o)("Unlimited")),1)]),_:1}))]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Mailboxes")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[s(t(r.domain.mailbox_count),1)]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Aliases")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[s(t(r.domain.mbalias_count),1)]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(u(o)("Enabled")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[e(u(O),{value:r.domain.enabled,variant:"flat"},null,8,["value"])]),_:1})]),_:1})]),_:1})]),_:1})):C("",!0)}},bl={class:"headline"},kl={__name:"RelayDomainSummary",props:{domain:{type:Object,default:null}},async setup(r){let o,p;const y=r,a=D([]),_=R(()=>a.value.find(g=>g.name===y.domain.transport.service)),f=g=>y.domain.transport.settings[`${_.value.name}_${g}`],V=([o,p]=pe(()=>je.getAll()),o=await o,p(),o);return a.value=V.data,(g,v)=>y.domain?(n(),c(K,{key:0},{default:l(()=>[e(B,null,{default:l(()=>[i("div",bl,t(g.$gettext("Transport")),1)]),_:1}),e(A,null,{default:l(()=>[e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(g.$gettext("Service")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[s(t(y.domain.transport.service),1)]),_:1})]),_:1}),_.value?(n(!0),h(T,{key:0},Y(_.value.settings,(m,b)=>(n(),c($,{key:b},{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(m.label),1)]),_:2},1024),e(d,{cols:"6"},{default:l(()=>[m.type!=="boolean"?(n(),h(T,{key:0},[s(t(f(m.name)),1)],64)):(n(),c(u(O),{key:1,value:f(m.name),variant:"flat"},null,8,["value"]))]),_:2},1024)]),_:2},1024))),128)):C("",!0)]),_:1})]),_:1})):C("",!0)}},ue={__name:"YesNoDefaultField",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(r){const o=$e(r,"modelValue");return(p,y)=>(n(),c(Ue,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[0]=a=>o.value=a),inline:""},{default:l(()=>[e(ae,{label:p.$gettext("yes"),value:"Y"},null,8,["label"]),e(ae,{label:p.$gettext("no"),value:"N"},null,8,["label"]),e(ae,{label:p.$gettext("default"),value:""},null,8,["label"])]),_:1},8,["modelValue"]))}},Vl={class:"v-label mb-4"},hl={class:"v-label mb-4"},$l={__name:"DomainPolicyForm",props:{domainId:{type:Number,default:null},modelValue:{type:Object,default:()=>{}}},emits:["close","update:modelValue"],setup(r,{emit:o}){const p=r,y=o,a=D({}),_=D(!1),f=D(!1);a.value={bypass_virus_checks:p.modelValue.bypass_virus_checks===null?"":p.modelValue.bypass_virus_checks,bypass_spam_checks:p.modelValue.bypass_spam_checks===null?"":p.modelValue.bypass_spam_checks,bypass_banned_checks:p.modelValue.bypass_banned_checks===null?"":p.modelValue.bypass_banned_checks,spam_tag2_level:p.modelValue.spam_tag2_level,spam_kill_level:p.modelValue.spam_kill_level,spam_subject_tag2:p.modelValue.spam_subject_tag2},a.value.spam_subject_tag2===null&&(f.value=!0);const V=v=>{v&&(a.value.spam_subject_tag2=null)},g=async()=>{_.value=!0;const v={...a.value};v.spam_tag2_level===""&&(v.spam_tag2_level=null),v.spam_kill_level===""&&(v.spam_kill_level=null);try{const m=await ye.updateDomainPolicy(p.domainId,v);y("update:modelValue",m.data),y("close")}finally{_.value=!1}};return(v,m)=>(n(),c(K,null,{default:l(()=>[e(B,{class:"text-h5"},{default:l(()=>[i("span",null,t(v.$gettext("Content filter settings")),1)]),_:1}),e(A,null,{default:l(()=>[e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[e(u(ue),{modelValue:a.value.bypass_virus_checks,"onUpdate:modelValue":m[0]||(m[0]=b=>a.value.bypass_virus_checks=b),label:v.$gettext("Disable virus checks"),color:"primary","hide-details":""},null,8,["modelValue","label"]),e(u(ue),{modelValue:a.value.bypass_spam_checks,"onUpdate:modelValue":m[1]||(m[1]=b=>a.value.bypass_spam_checks=b),label:v.$gettext("Disable spam checks"),color:"primary",class:"mt-6","hide-details":""},null,8,["modelValue","label"]),e(u(ue),{modelValue:a.value.bypass_banned_checks,"onUpdate:modelValue":m[2]||(m[2]=b=>a.value.bypass_banned_checks=b),label:v.$gettext("Disable banned checks"),color:"primary",class:"mt-6","hide-details":""},null,8,["modelValue","label"])]),_:1}),e(d,{cols:"6"},{default:l(()=>[i("div",null,[i("label",Vl,t(v.$gettext("Spam marker")),1),e($,null,{default:l(()=>[e(d,{cols:"9"},{default:l(()=>[e(oe,{modelValue:a.value.spam_subject_tag2,"onUpdate:modelValue":m[3]||(m[3]=b=>a.value.spam_subject_tag2=b),variant:"outlined",density:"compact",disabled:f.value},null,8,["modelValue","disabled"])]),_:1}),e(d,{cols:"3"},{default:l(()=>[e(Pe,{modelValue:f.value,"onUpdate:modelValue":[m[4]||(m[4]=b=>f.value=b),V],label:v.$gettext("default"),color:"primary",density:"compact","hide-details":""},null,8,["modelValue","label"])]),_:1})]),_:1})]),i("div",hl,t(v.$gettext("Thresholds")),1),e($,{class:"align-center"},{default:l(()=>[e(d,{cols:"4"},{default:l(()=>[e(oe,{modelValue:a.value.spam_tag2_level,"onUpdate:modelValue":m[5]||(m[5]=b=>a.value.spam_tag2_level=b),variant:"outlined",density:"compact",type:"number","hide-details":""},null,8,["modelValue"])]),_:1}),e(d,{cols:"8"},{default:l(()=>[s(t(v.$gettext("or more is spam")),1)]),_:1})]),_:1}),e($,{class:"align-center"},{default:l(()=>[e(d,{cols:"4"},{default:l(()=>[e(oe,{modelValue:a.value.spam_kill_level,"onUpdate:modelValue":m[6]||(m[6]=b=>a.value.spam_kill_level=b),variant:"outlined",density:"compact",type:"number","hide-details":""},null,8,["modelValue"])]),_:1}),e(d,{cols:"8"},{default:l(()=>[s(t(v.$gettext("or more throw spam message away")),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(Q,null,{default:l(()=>[e(G),e(w,{loading:_.value,onClick:m[7]||(m[7]=b=>y("close"))},{default:l(()=>[s(t(v.$gettext("Cancel")),1)]),_:1},8,["loading"]),e(w,{color:"primary",loading:_.value,onClick:g},{default:l(()=>[s(t(v.$gettext("Apply")),1)]),_:1},8,["loading"])]),_:1})]),_:1}))}},xl={key:1},Dl={key:1},wl={key:1},Cl={key:0},Sl={key:1},Ml={key:0},Nl={key:1},Il={key:0},Tl={key:1},Al={__name:"DomainPolicy",props:{domain:{type:Object,default:null}},async setup(r){let o,p;const y=r,a=D(null),_=D(!1),f=([o,p]=pe(()=>ye.getDomainPolicy(y.domain.pk)),o=await o,p(),o);return a.value=f.data,(V,g)=>(n(),h("div",null,[a.value?(n(),c(K,{key:0},{default:l(()=>[e(B,null,{default:l(()=>[i("span",null,t(V.$gettext("Content filter")),1),e(w,{class:"ml-2",icon:"mdi-circle-edit-outline",title:V.$gettext("Edit content filter settings"),variant:"text",density:"compact",onClick:g[0]||(g[0]=v=>_.value=!0)},null,8,["title"])]),_:1}),e(A,null,{default:l(()=>[e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(V.$gettext("Spam filters")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[a.value.bypass_spam_checks!==null&&a.value.bypass_spam_checks!==""?(n(),c(u(O),{key:0,value:a.value.bypass_spam_checks!=="Y",variant:"flat"},null,8,["value"])):(n(),h("span",xl,t(V.$gettext("Default value")),1))]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(V.$gettext("Virus filters")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[a.value.bypass_virus_checks!==null&&a.value.bypass_virus_checks!==""?(n(),c(u(O),{key:0,value:a.value.bypass_virus_checks!=="Y",variant:"flat"},null,8,["value"])):(n(),h("span",Dl,t(V.$gettext("Default value")),1))]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(V.$gettext("Banned filters")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[a.value.bypass_banned_checks!==null&&a.value.bypass_banned_checks!==""?(n(),c(u(O),{key:0,value:a.value.bypass_banned_checks!=="Y",variant:"flat"},null,8,["value"])):(n(),h("span",wl,t(V.$gettext("Default value")),1))]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(V.$gettext("Spam classification threshold")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[a.value.spam_tag2_level!==null?(n(),h("span",Cl,t(a.value.spam_tag2_level),1)):(n(),h("span",Sl,t(V.$gettext("Default value")),1))]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(V.$gettext("Rejection threshold")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[a.value.spam_kill_level!==null?(n(),h("span",Ml,t(a.value.spam_kill_level),1)):(n(),h("span",Nl,t(V.$gettext("Default value")),1))]),_:1})]),_:1}),e($,null,{default:l(()=>[e(d,{cols:"6"},{default:l(()=>[s(t(V.$gettext("Spam marker")),1)]),_:1}),e(d,{cols:"6"},{default:l(()=>[a.value.spam_subject_tag2!==null?(n(),h("span",Il,t(a.value.spam_subject_tag2),1)):(n(),h("span",Tl,t(V.$gettext("Default value")),1))]),_:1})]),_:1})]),_:1})]),_:1})):C("",!0),e(H,{modelValue:_.value,"onUpdate:modelValue":g[3]||(g[3]=v=>_.value=v),width:"1000"},{default:l(()=>[e(u($l),{modelValue:a.value,"onUpdate:modelValue":g[1]||(g[1]=v=>a.value=v),"domain-id":y.domain.pk,onClose:g[2]||(g[2]=v=>_.value=!1)},null,8,["modelValue","domain-id"])]),_:1},8,["modelValue"])]))}},Kl={key:1},jl={__name:"DomainView",setup(r){const{$gettext:o}=z(),p=xe(),y=ze(),a=D(null),_=D({}),f=D(null),V=R(()=>"amavis"in y.capabilities);function g(){E.getDomain(p.params.id).then(v=>{a.value=v.data})}return g(),(v,m)=>a.value?(n(),h("div",Kl,[e(ve,{flat:""},{default:l(()=>[e(_e,null,{default:l(()=>[s(t(u(o)("Domain"))+" "+t(a.value.name)+" ",1),e(w,{color:"primary",icon:"mdi-circle-edit-outline",to:{name:"DomainEdit",params:{id:a.value.pk}}},null,8,["to"]),e(w,{color:"primary",icon:"mdi-reload",onClick:m[0]||(m[0]=b=>g())})]),_:1})]),_:1}),e(Fe,{modelValue:f.value,"onUpdate:modelValue":m[1]||(m[1]=b=>f.value=b),class:"mb-4",color:"primary"},{default:l(()=>[e(ne,null,{default:l(()=>[s(t(u(o)("General")),1)]),_:1}),e(ne,null,{default:l(()=>[s(t(u(o)("Statistics")),1)]),_:1}),e(ne,null,{default:l(()=>[s(t(u(o)("DMARC")),1)]),_:1})]),_:1},8,["modelValue"]),e(Re,{modelValue:f.value,"onUpdate:modelValue":m[3]||(m[3]=b=>f.value=b)},{default:l(()=>[e(se,null,{default:l(()=>[e($,null,{default:l(()=>[e(d,{cols:"12",md:"6"},{default:l(()=>[e(gl,{domain:a.value},null,8,["domain"]),m[5]||(m[5]=i("div",{class:"mt-4"},null,-1)),a.value.type==="relaydomain"?(n(),h(T,{key:0},[e(kl,{domain:a.value},null,8,["domain"]),m[4]||(m[4]=i("div",{class:"mt-4"},null,-1))],64)):C("",!0),e(ke,{domain:a.value},null,8,["domain"]),m[6]||(m[6]=i("div",{class:"mt-4"},null,-1)),V.value?(n(),c(Al,{key:1,domain:a.value},null,8,["domain"])):C("",!0)]),_:1}),e(d,{cols:"12",md:"6"},{default:l(()=>[e(_l,{modelValue:a.value,"onUpdate:modelValue":m[2]||(m[2]=b=>a.value=b)},null,8,["modelValue"]),m[7]||(m[7]=i("div",{class:"mt-4"},null,-1)),_.value.params&&_.value.params.enable_domain_limits&&a.value.resources&&a.value.resources.length?(n(),c(Le,{key:0,resources:a.value.resources},null,8,["resources"])):C("",!0)]),_:1})]),_:1})]),_:1}),e(se,null,{default:l(()=>[e($,null,{default:l(()=>[e(d,{cols:"12"},{default:l(()=>[a.value.name?(n(),c(re,{key:0,domain:a.value,"graphic-set":"mailtraffic","graphic-name":"averagetraffic"},null,8,["domain"])):C("",!0)]),_:1}),e(d,{cols:"12"},{default:l(()=>[a.value.name?(n(),c(re,{key:0,domain:a.value,"graphic-set":"mailtraffic","graphic-name":"averagetrafficsize"},null,8,["domain"])):C("",!0)]),_:1})]),_:1})]),_:1}),e(se,null,{default:l(()=>[e(Ze,{domain:a.value},null,8,["domain"])]),_:1})]),_:1},8,["modelValue"])])):(n(),c(Be,{key:0}))}},Dt=fe(jl,[["__scopeId","data-v-11fbb076"]]);export{Dt as default};
|