modoboa 2.5.0__py3-none-any.whl → 2.6.0__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.
Files changed (183) hide show
  1. modoboa/admin/api/v2/serializers.py +1 -1
  2. modoboa/admin/models/domain.py +1 -1
  3. modoboa/admin/models/mixins.py +3 -1
  4. modoboa/amavis/serializers.py +1 -1
  5. modoboa/autoconfig/__init__.py +0 -0
  6. modoboa/autoconfig/apps.py +6 -0
  7. modoboa/autoconfig/templates/autoconfig/autoconfig.xml +24 -0
  8. modoboa/autoconfig/templates/autoconfig/autodiscover.xml +27 -0
  9. modoboa/autoconfig/tests.py +38 -0
  10. modoboa/autoconfig/urls.py +21 -0
  11. modoboa/autoconfig/views.py +109 -0
  12. modoboa/autoreply/api/v2/tests.py +4 -4
  13. modoboa/calendars/tests.py +8 -8
  14. modoboa/contacts/tests.py +5 -7
  15. modoboa/core/api/v1/tests.py +2 -2
  16. modoboa/core/api/v2/views.py +3 -1
  17. modoboa/core/commands/deploy.py +3 -0
  18. modoboa/core/commands/templates/settings.py.tpl +26 -12
  19. modoboa/core/models.py +1 -1
  20. modoboa/core/tests/test_ldap.py +2 -0
  21. modoboa/core/views/auth.py +27 -8
  22. modoboa/frontend_dist/assets/{AccountAliasForm-BuSy_1n9.js → AccountAliasForm-Bu1I8sLg.js} +1 -1
  23. modoboa/frontend_dist/assets/{AccountEditView-qdJmLM_e.js → AccountEditView-YOpDW-Ob.js} +1 -1
  24. modoboa/frontend_dist/assets/AccountLayout-Cf_FVfvJ.js +1 -0
  25. modoboa/frontend_dist/assets/{AccountPasswordSubForm-DZGt_Xgq.js → AccountPasswordSubForm-B9X5wAXp.js} +1 -1
  26. modoboa/frontend_dist/assets/{AccountView-CO65y0vZ.js → AccountView-DCqbD7oi.js} +1 -1
  27. modoboa/frontend_dist/assets/{AddressBook-BZNUlhek.js → AddressBook-B53LXIsD.js} +1 -1
  28. modoboa/frontend_dist/assets/AdminLayout-DX-RXYiU.js +1 -0
  29. modoboa/frontend_dist/assets/AlarmsView-C0KvogOj.js +1 -0
  30. modoboa/frontend_dist/assets/AliasEditView-BiMPygn9.js +1 -0
  31. modoboa/frontend_dist/assets/AliasEditView-CYDSiX8l.css +1 -0
  32. modoboa/frontend_dist/assets/AliasRecipientForm-BhQfATiS.js +1 -0
  33. modoboa/frontend_dist/assets/{AliasView-GOJ5lyQH.js → AliasView-eIct4lMV.js} +1 -1
  34. modoboa/frontend_dist/assets/{AuditTrailView-fbXmq70e.js → AuditTrailView-FiUNTjpE.js} +1 -1
  35. modoboa/frontend_dist/assets/{CalendarView-LlQQNEPL.js → CalendarView-DbWVDoWq.js} +1 -1
  36. modoboa/frontend_dist/assets/{ChoiceField-B3ReQHVe.js → ChoiceField-17aCFpF6.js} +1 -1
  37. modoboa/frontend_dist/assets/{ComposeEmailForm-Bs1fZXAL.js → ComposeEmailForm-B-BP3lzX.js} +1 -1
  38. modoboa/frontend_dist/assets/ComposeEmailView-6JrFhK1W.js +1 -0
  39. modoboa/frontend_dist/assets/ConfirmDialog-Dr0i2kqK.js +1 -0
  40. modoboa/frontend_dist/assets/ConnectedLayout-irTI2ekJ.js +1 -0
  41. modoboa/frontend_dist/assets/{CreationForm-ORg3fazt.js → CreationForm-BZMhQOez.js} +1 -1
  42. modoboa/frontend_dist/assets/DashboardView-CBpsEG3P.js +1 -0
  43. modoboa/frontend_dist/assets/{DomainAdminList-DVn9x0rB.js → DomainAdminList-BikGujRD.js} +1 -1
  44. modoboa/frontend_dist/assets/{DomainEditView-nAoL64D_.js → DomainEditView-SOvfeZWo.js} +1 -1
  45. modoboa/frontend_dist/assets/{DomainTransportForm-CA-DNUxX.js → DomainTransportForm-CmFZ1Cxm.js} +1 -1
  46. modoboa/frontend_dist/assets/{DomainView-CdXPpwJG.js → DomainView-DasOm4jM.js} +3 -3
  47. modoboa/frontend_dist/assets/{DomainsView-B_59gowf.js → DomainsView-DVJA4-oN.js} +1 -1
  48. modoboa/frontend_dist/assets/{EmailField-CwcwI5xW.js → EmailField-DpBYkqam.js} +1 -1
  49. modoboa/frontend_dist/assets/{EmailView-BshxcfAK.js → EmailView-D9vO7HHB.js} +1 -1
  50. modoboa/frontend_dist/assets/EmptyLayout-Dz3F8c7x.js +1 -0
  51. modoboa/frontend_dist/assets/{FiltersView-Cf20MSTK.js → FiltersView-FjdtF4HL.js} +1 -1
  52. modoboa/frontend_dist/assets/ForwardEmailView-DF5BQJjL.js +1 -0
  53. modoboa/frontend_dist/assets/{HtmlEditor-Bh4c689R.js → HtmlEditor-Zn0wjDog.js} +1 -1
  54. modoboa/frontend_dist/assets/{IdentitiesView-BXAuU1YX.js → IdentitiesView-Cf5eQoKA.js} +1 -1
  55. modoboa/frontend_dist/assets/{IdentitiesView-DPrrRMS5.css → IdentitiesView-D3AAiZLZ.css} +1 -1
  56. modoboa/frontend_dist/assets/{InformationView-Cn5FZW7H.js → InformationView-gEYTQ37R.js} +1 -1
  57. modoboa/frontend_dist/assets/{LoadingData-CdVvm4FI.js → LoadingData-Cxd490P6.js} +1 -1
  58. modoboa/frontend_dist/assets/LoginCallbackView-C9zhejHH.js +1 -0
  59. modoboa/frontend_dist/assets/{LoginView-tHIR4Adc.js → LoginView-sWEH834U.js} +1 -1
  60. modoboa/frontend_dist/assets/{MailboxView-B-aI4XBq.css → MailboxView-CfStlWhk.css} +1 -1
  61. modoboa/frontend_dist/assets/MailboxView-Dn3iDym9.js +1 -0
  62. modoboa/frontend_dist/assets/{MenuItems-PXjiG-fs.js → MenuItems-BRChEdLp.js} +1 -1
  63. modoboa/frontend_dist/assets/{MessageView-Cy4STShm.js → MessageView-CDbJxbxm.js} +1 -1
  64. modoboa/frontend_dist/assets/{MessagesView-DdkuEgfX.js → MessagesView-C_vBxVzN.js} +1 -1
  65. modoboa/frontend_dist/assets/{MigrationsView-CidSEjCF.js → MigrationsView-D6peiQuR.js} +1 -1
  66. modoboa/frontend_dist/assets/{ParametersForm-CAv4SH-E.js → ParametersForm-Dip8Sobe.js} +1 -1
  67. modoboa/frontend_dist/assets/ParametersView-CwI0-9kV.js +1 -0
  68. modoboa/frontend_dist/assets/ParametersView-wFKfiEVR.js +1 -0
  69. modoboa/frontend_dist/assets/{ProviderEditView-CrltAQXl.js → ProviderEditView-EH2NSz3x.js} +1 -1
  70. modoboa/frontend_dist/assets/{ProviderGeneralForm-BYAzVnXM.js → ProviderGeneralForm-CAVNOJp6.js} +1 -1
  71. modoboa/frontend_dist/assets/{ProvidersView-osjIY4Ex.js → ProvidersView-BoH99d3a.js} +1 -1
  72. modoboa/frontend_dist/assets/QuarantineLayout--4g9urq2.js +1 -0
  73. modoboa/frontend_dist/assets/{QuarantineView-D8Qg0MXA.js → QuarantineView-BDzDrWwK.js} +1 -1
  74. modoboa/frontend_dist/assets/ReplyEmailView-D0VgYBnw.js +1 -0
  75. modoboa/frontend_dist/assets/ResourcesForm-C1YGkT8i.js +1 -0
  76. modoboa/frontend_dist/assets/SelfServiceLayout-BYkSLc4n.js +1 -0
  77. modoboa/frontend_dist/assets/{SettingsView-9iNcDhkI.js → SettingsView-Cy5O-88Y.js} +1 -1
  78. modoboa/frontend_dist/assets/{StatisticsView-cHsPyGkL.js → StatisticsView-DtlBQK9z.js} +1 -1
  79. modoboa/frontend_dist/assets/{TimeSerieChart--V83dcJ9.js → TimeSerieChart-DNjvmMDE.js} +1 -1
  80. modoboa/frontend_dist/assets/{TimeSerieChart-CxiwMzE8.css → TimeSerieChart-Dn6Wznn8.css} +1 -1
  81. modoboa/frontend_dist/assets/UserLayout-Cgqq7HVi.js +1 -0
  82. modoboa/frontend_dist/assets/{VAlert-BuaaYN2h.js → VAlert-x6n3drjw.js} +1 -1
  83. modoboa/frontend_dist/assets/{VApp-CKP-6zGP.js → VApp-C74A9rX5.js} +1 -1
  84. modoboa/frontend_dist/assets/{VAutocomplete-Dwv6_Rzq.js → VAutocomplete-Bg2AlW_n.js} +1 -1
  85. modoboa/frontend_dist/assets/{VAvatar-Cmga0vj6.js → VAvatar-J563boKh.js} +1 -1
  86. modoboa/frontend_dist/assets/{VBadge-CixeK87a.js → VBadge-CtEsXuih.js} +1 -1
  87. modoboa/frontend_dist/assets/{VCard-CxH9DWoK.js → VCard-CJ2oGh_i.js} +1 -1
  88. modoboa/frontend_dist/assets/{VCheckbox-62GOpvvP.js → VCheckbox-VicuXIJq.js} +1 -1
  89. modoboa/frontend_dist/assets/{VCheckboxBtn-DMoNtKT8.js → VCheckboxBtn-CLh3m66z.js} +1 -1
  90. modoboa/frontend_dist/assets/{VChip-D_styETR.js → VChip-DvxO74Mw.js} +1 -1
  91. modoboa/frontend_dist/assets/VColorPicker-DcVohVWE.js +1 -0
  92. modoboa/frontend_dist/assets/{VContainer-B46caNs1.js → VContainer-L2EoH3dT.js} +1 -1
  93. modoboa/frontend_dist/assets/{VDataTable-Bh8NbVSx.js → VDataTable-CAT0QYJz.js} +1 -1
  94. modoboa/frontend_dist/assets/{VDataTableServer-BDR5hOmo.js → VDataTableServer-DP13Fhfa.js} +1 -1
  95. modoboa/frontend_dist/assets/{VDataTableVirtual-BOQlNtIG.js → VDataTableVirtual-LVNemzH7.js} +1 -1
  96. modoboa/frontend_dist/assets/{VDialog-BcTg7w6P.js → VDialog-CaQnQSDn.js} +1 -1
  97. modoboa/frontend_dist/assets/{VExpansionPanels-BmH5Jl2Z.js → VExpansionPanels-Dnwgt5uT.js} +1 -1
  98. modoboa/frontend_dist/assets/{VFileInput-BC4yAygd.js → VFileInput-z44hJIWr.js} +1 -1
  99. modoboa/frontend_dist/assets/{VForm-D5iPGkde.js → VForm-BwTUBf4u.js} +1 -1
  100. modoboa/frontend_dist/assets/{VInput-CoDJzvaW.js → VInput-Dpmea5z9.js} +1 -1
  101. modoboa/frontend_dist/assets/{VMenu-gUG70-zD.js → VMenu-DDmBlbM8.js} +1 -1
  102. modoboa/frontend_dist/assets/{VPicker-BXuKT3zB.js → VPicker-Dz7GbXwU.js} +1 -1
  103. modoboa/frontend_dist/assets/{VProgressCircular-BtOPiGCg.js → VProgressCircular-CtqQON49.js} +1 -1
  104. modoboa/frontend_dist/assets/{VRadioGroup-DIFZKSn-.js → VRadioGroup-WW8uMAv4.js} +1 -1
  105. modoboa/frontend_dist/assets/{VRow-ozg66L7j.js → VRow-CAbOSEHS.js} +1 -1
  106. modoboa/frontend_dist/assets/{VSelect-C3RjAa45.js → VSelect-Cdh0qO5m.js} +1 -1
  107. modoboa/frontend_dist/assets/{VSelectionControl-zyz-fJvC.js → VSelectionControl-BN-zQ3C6.js} +1 -1
  108. modoboa/frontend_dist/assets/{VSheet-BNx2X4Mk.js → VSheet-9RDZpWCf.js} +1 -1
  109. modoboa/frontend_dist/assets/VSpacer-BWZq1PhD.js +1 -0
  110. modoboa/frontend_dist/assets/{VSwitch-DwxdeAEq.js → VSwitch-CixaedmQ.js} +1 -1
  111. modoboa/frontend_dist/assets/{VTable-DaLxa4FO.js → VTable-DO7ofPSj.js} +1 -1
  112. modoboa/frontend_dist/assets/{VTabs-BP0Hgsgm.js → VTabs-C1-E1DJE.js} +1 -1
  113. modoboa/frontend_dist/assets/{VTextField-XoGTj1KG.js → VTextField-C9VUP7V9.js} +1 -1
  114. modoboa/frontend_dist/assets/{VTextarea-wBlRMIv_.js → VTextarea-B28SmJ2v.js} +1 -1
  115. modoboa/frontend_dist/assets/{VToolbar-CFZfqeOr.js → VToolbar-Cs-fVa4M.js} +1 -1
  116. modoboa/frontend_dist/assets/VWindowItem-C9PFEbE6.js +1 -0
  117. modoboa/frontend_dist/assets/WebmailLayout-Dp6jIazW.js +1 -0
  118. modoboa/frontend_dist/assets/{accounts-DUzbx6k8.js → accounts-BT429O7P.js} +1 -1
  119. modoboa/frontend_dist/assets/{admin-DewTk2H8.js → admin-Cu5rjY7m.js} +1 -1
  120. modoboa/frontend_dist/assets/{aliases-4sXmjwXp.js → aliases-Q4uTcEh4.js} +1 -1
  121. modoboa/frontend_dist/assets/{amavis-CC0li7_T.js → amavis-Be87kCqw.js} +1 -1
  122. modoboa/frontend_dist/assets/{amavis-DK8SHE6o.js → amavis-Bx0pxvRn.js} +1 -1
  123. modoboa/frontend_dist/assets/{contacts-BjghrPqZ.js → contacts-Dx240BT8.js} +1 -1
  124. modoboa/frontend_dist/assets/{domains-BSawReeu.js → domains-CQv8gtbQ.js} +1 -1
  125. modoboa/frontend_dist/assets/{domains.store-D-vWCEIK.js → domains.store-CfpnnBGo.js} +1 -1
  126. modoboa/frontend_dist/assets/{filter-C82FUCw_.js → filter-C_GJovn5.js} +1 -1
  127. modoboa/frontend_dist/assets/{forwardRefs-cvcnlhoK.js → forwardRefs-DPrLRqxP.js} +1 -1
  128. modoboa/frontend_dist/assets/{global.store-DbkcI5o2.js → global.store-CNChIxQL.js} +1 -1
  129. modoboa/frontend_dist/assets/importExport-7sRHU_3R.js +1 -0
  130. modoboa/frontend_dist/assets/index-YIGRKgNA.js +982 -0
  131. modoboa/frontend_dist/assets/{layout-C5FyYCHK.js → layout-BM4C5b2r.js} +1 -1
  132. modoboa/frontend_dist/assets/{layout.store-NXWtFIwL.js → layout.store-CCOp6tv6.js} +1 -1
  133. modoboa/frontend_dist/assets/{logos-BswdveCV.js → logos-CboXciB_.js} +1 -1
  134. modoboa/frontend_dist/assets/{logs-6CbtfaZS.js → logs-BeuijmJA.js} +1 -1
  135. modoboa/frontend_dist/assets/{parameters-aSQiR7kN.js → parameters-DpVw-Zs4.js} +1 -1
  136. modoboa/frontend_dist/assets/{parameters.store-CzQqVatx.js → parameters.store-DRarkO6b.js} +1 -1
  137. modoboa/frontend_dist/assets/{permissions-DNoefz-n.js → permissions-C33K6cJv.js} +1 -1
  138. modoboa/frontend_dist/assets/{ssrBoot-CKUX4kcb.js → ssrBoot-CpJ-7WlH.js} +1 -1
  139. modoboa/frontend_dist/assets/{tag-B_yWNNJD.js → tag-DV1_zOzl.js} +1 -1
  140. modoboa/frontend_dist/assets/theme-BGzdVPko.js +1 -0
  141. modoboa/frontend_dist/assets/transports-B9mWU1W8.js +1 -0
  142. modoboa/frontend_dist/assets/{webmail-CdU6CD9b.js → webmail-DRyN8JIK.js} +1 -1
  143. modoboa/frontend_dist/index.html +1 -1
  144. modoboa/static/css/offline.css +7 -20
  145. modoboa/templates/registration/base.html +18 -0
  146. modoboa/templates/registration/login.html +1 -1
  147. modoboa/urls.py +1 -0
  148. modoboa/webmail/lib/imaputils.py +2 -2
  149. {modoboa-2.5.0.dist-info → modoboa-2.6.0.dist-info}/METADATA +6 -6
  150. {modoboa-2.5.0.dist-info → modoboa-2.6.0.dist-info}/RECORD +155 -147
  151. {modoboa-2.5.0.dist-info → modoboa-2.6.0.dist-info}/licenses/LICENSE +1 -1
  152. modoboa/frontend_dist/assets/AccountLayout-DrN7vHsX.js +0 -1
  153. modoboa/frontend_dist/assets/AdminLayout-CTNhuwTw.js +0 -1
  154. modoboa/frontend_dist/assets/AlarmsView-DN_JIw9g.js +0 -1
  155. modoboa/frontend_dist/assets/AliasEditView-Cx9410JP.css +0 -1
  156. modoboa/frontend_dist/assets/AliasEditView-DjpPUTp9.js +0 -1
  157. modoboa/frontend_dist/assets/AliasRecipientForm-B1Y8wFdP.js +0 -1
  158. modoboa/frontend_dist/assets/ComposeEmailView-s3LMl3pO.js +0 -1
  159. modoboa/frontend_dist/assets/ConfirmDialog-DY_kUHLG.js +0 -1
  160. modoboa/frontend_dist/assets/ConnectedLayout-UWjiYBNw.js +0 -1
  161. modoboa/frontend_dist/assets/DashboardView-Dplk9itS.js +0 -1
  162. modoboa/frontend_dist/assets/EmptyLayout-DFfhnhLi.js +0 -1
  163. modoboa/frontend_dist/assets/ForwardEmailView-CZG062os.js +0 -1
  164. modoboa/frontend_dist/assets/LoginCallbackView-B9hAH4MI.js +0 -1
  165. modoboa/frontend_dist/assets/MailboxView-Bugu2vhg.js +0 -1
  166. modoboa/frontend_dist/assets/ParametersView-CX7Ffemw.js +0 -1
  167. modoboa/frontend_dist/assets/ParametersView-CrbNcmV3.js +0 -1
  168. modoboa/frontend_dist/assets/QuarantineLayout-B8EcU9vS.js +0 -1
  169. modoboa/frontend_dist/assets/ReplyEmailView-BABPqWhd.js +0 -1
  170. modoboa/frontend_dist/assets/ResourcesForm-OaqdRYVs.js +0 -1
  171. modoboa/frontend_dist/assets/SelfServiceLayout-d277YTGR.js +0 -1
  172. modoboa/frontend_dist/assets/UserLayout-B3sBiTcZ.js +0 -1
  173. modoboa/frontend_dist/assets/VColorPicker-BHscBGQV.js +0 -1
  174. modoboa/frontend_dist/assets/VSpacer-DinPiXs9.js +0 -1
  175. modoboa/frontend_dist/assets/VWindowItem-BB7ETW3b.js +0 -1
  176. modoboa/frontend_dist/assets/WebmailLayout-_Hk1XhVq.js +0 -1
  177. modoboa/frontend_dist/assets/importExport-DzoL4Mvc.js +0 -1
  178. modoboa/frontend_dist/assets/index-BImkz5Jx.js +0 -984
  179. modoboa/frontend_dist/assets/transports-BDNB9wR5.js +0 -1
  180. {modoboa-2.5.0.data → modoboa-2.6.0.data}/scripts/modoboa-admin.py +0 -0
  181. {modoboa-2.5.0.dist-info → modoboa-2.6.0.dist-info}/WHEEL +0 -0
  182. {modoboa-2.5.0.dist-info → modoboa-2.6.0.dist-info}/entry_points.txt +0 -0
  183. {modoboa-2.5.0.dist-info → modoboa-2.6.0.dist-info}/top_level.txt +0 -0
@@ -1 +0,0 @@
1
- import{a as S}from"./aliases-4sXmjwXp.js";import{E as w}from"./EmailField-CwcwI5xW.js";import{r as A,V as E}from"./VForm-D5iPGkde.js";import{d as T}from"./domains-BSawReeu.js";import{V as U}from"./VSwitch-DwxdeAEq.js";import{V as N}from"./VSelect-C3RjAa45.js";import{V as h}from"./VAvatar-Cmga0vj6.js";import{V as C}from"./VTextField-XoGTj1KG.js";import{V as j}from"./VTextarea-wBlRMIv_.js";import{h as _,g as m,c as f,o as r,w as u,m as q,l as x,a as o,e as V,F,t as i,f as d,b as G,s as L,k as O}from"./index-BImkz5Jx.js";import{V as P}from"./VChip-D_styETR.js";const z={class:"m-label"},H={class:"m-label"},I={class:"m-label"},J={class:"m-label"},se={__name:"AliasGeneralForm",props:{modelValue:{type:Object,default:null}},setup(b,{expose:y}){const g=b,e=_(()=>g.modelValue),p=m([]),c=m();function n(){e.value.address!=null&&navigator.clipboard.writeText(e.value.address)}async function s(){e.value.domain!=null&&S.getRandomAddress().then(t=>{e.value.address=`${t.data.address}@${e.value.domain.name}`})}return T.getDomains().then(t=>{p.value=t.data}),y({vFormRef:c}),(t,a)=>(r(),f(E,{ref_key:"vFormRef",ref:c},{default:u(()=>[e.value.pk?q("",!0):(r(),f(U,{key:0,modelValue:e.value.random,"onUpdate:modelValue":a[0]||(a[0]=l=>e.value.random=l),label:t.$gettext("Random address"),color:"primary"},null,8,["modelValue","label"])),e.value.random?(r(),x(F,{key:2},[V("label",H,i(t.$gettext("Domain")),1),o(N,{modelValue:e.value.domain,"onUpdate:modelValue":[a[2]||(a[2]=l=>e.value.domain=l),s],items:p.value,"item-title":"name","return-object":"",variant:"outlined",density:"compact",rules:[d(A).required]},{append:u(()=>[o(h,{variant:"flat",icon:"mdi-reload",onClick:s})]),_:1},8,["modelValue","items","rules"]),o(C,{modelValue:e.value.address,"onUpdate:modelValue":a[3]||(a[3]=l=>e.value.address=l),label:t.$gettext("Generated address"),variant:"outlined",readonly:""},{"append-inner":u(()=>[o(h,{variant:"flat",icon:"mdi-clipboard-outline",onClick:n})]),_:1},8,["modelValue","label"])],64)):(r(),x(F,{key:1},[V("label",z,i(t.$gettext("Email address")),1),o(d(w),{ref:"address",modelValue:e.value.address,"onUpdate:modelValue":a[1]||(a[1]=l=>e.value.address=l),type:"email",variant:"outlined",density:"compact",rules:[d(A).required]},null,8,["modelValue","rules"])],64)),o(U,{modelValue:e.value.enabled,"onUpdate:modelValue":a[4]||(a[4]=l=>e.value.enabled=l),label:t.$gettext("Enabled"),color:"primary"},null,8,["modelValue","label"]),V("label",I,i(t.$gettext("Expire at")),1),o(C,{modelValue:e.value.expire,"onUpdate:modelValue":a[5]||(a[5]=l=>e.value.expire=l),variant:"outlined",density:"compact"},null,8,["modelValue"]),V("label",J,i(t.$gettext("Description")),1),o(j,{modelValue:e.value.description,"onUpdate:modelValue":a[6]||(a[6]=l=>e.value.description=l),rows:"2",variant:"outlined",density:"compact"},null,8,["modelValue"])]),_:1},512))}},re={__name:"AliasRecipientForm",props:{modelValue:{type:Array,default:()=>[]}},emits:["update:model-value"],setup(b,{expose:y,emit:g}){const{$gettext:e}=G(),p=g,c=b,n=_({get:()=>c.modelValue,set:v=>p("update:model-value",v)}),s=m(""),t=m(),a=m();async function l(){n.value.push(s.value),s.value="",a.value.resetValidation()}function B(v){n.value.splice(v,1)}const D=[()=>n.value.length>0||e("Please add at least one recipient.")];return y({vFormRef:a}),(v,$)=>(r(),f(E,{ref_key:"vFormRef",ref:a},{default:u(()=>[o(d(w),{ref_key:"recipientField",ref:t,modelValue:s.value,"onUpdate:modelValue":$[0]||($[0]=k=>s.value=k),placeholder:d(e)("Start typing a name here..."),hint:d(e)("Alias(es) of this mailbox. To create a catchall alias, just enter the domain name (@domain.tld)."),"persistent-hint":"","allow-add":"",rules:D,onDomainSelected:l},null,8,["modelValue","placeholder","hint"]),(r(!0),x(F,null,L(n.value,(k,R)=>(r(),f(P,{key:R,class:"mr-2 mt-2",closable:"","onClick:close":K=>B(R)},{default:u(()=>[O(i(k),1)]),_:2},1032,["onClick:close"]))),128))]),_:1},512))}};export{re as _,se as a};
@@ -1 +0,0 @@
1
- import{_ as o}from"./ComposeEmailForm-Bs1fZXAL.js";import{c as r,f as t,o as m}from"./index-BImkz5Jx.js";import"./index-DuzUMVLM.js";import"./webmail-CdU6CD9b.js";import"./VForm-D5iPGkde.js";import"./tag-B_yWNNJD.js";import"./VInput-CoDJzvaW.js";import"./VAvatar-Cmga0vj6.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./ssrBoot-CKUX4kcb.js";import"./VCard-CxH9DWoK.js";import"./VFileInput-BC4yAygd.js";import"./VTextField-XoGTj1KG.js";import"./VChip-D_styETR.js";import"./VTable-DaLxa4FO.js";import"./VSpacer-DinPiXs9.js";/* empty css */import"./HtmlEditor-Bh4c689R.js";import"./VTextarea-wBlRMIv_.js";import"./contacts-BjghrPqZ.js";import"./VToolbar-CFZfqeOr.js";import"./VRow-ozg66L7j.js";import"./VSelect-C3RjAa45.js";import"./VMenu-gUG70-zD.js";import"./VCheckboxBtn-DMoNtKT8.js";import"./VSelectionControl-zyz-fJvC.js";import"./filter-C82FUCw_.js";import"./VDialog-BcTg7w6P.js";const H={__name:"ComposeEmailView",setup(p){return(i,e)=>(m(),r(t(o)))}};export{H as default};
@@ -1 +0,0 @@
1
- import{b as C,g as s,c as V,w as a,a as l,L as h,k as r,t as n,aj as L,x as T,m as z,aQ as D,o as g}from"./index-BImkz5Jx.js";import{V as S,a as B}from"./VToolbar-CFZfqeOr.js";import{V as K,b as N,a as j}from"./VCard-CxH9DWoK.js";import{V as I}from"./VSpacer-DinPiXs9.js";import{V as x}from"./VAvatar-Cmga0vj6.js";import{V as O}from"./VDialog-BcTg7w6P.js";const R={__name:"ConfirmDialog",props:{callback_agree:{type:Function,default:null}},setup(_,{expose:b}){const{$gettext:f}=C(),m=_,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(y=>{u=y})}b({open:w});async function k(){m.callback_agree!==null&&!await m.callback_agree()||(u(!0),o.value=!1)}function v(){u(!1),o.value=!1}return(i,t)=>(g(),V(O,{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(j,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"]),h(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(I),e.value.noconfirm?z("",!0):(g(),V(x,{key:0,onClick:v},{default:a(()=>[r(n(e.value.cancelLabel),1)]),_:1})),l(x,{color:e.value.color,onClick:k},{default:a(()=>[r(n(e.value.agreeLabel),1)]),_:1},8,["color"])]),_:1})]),_:3})]),_:3},8,["modelValue","max-width","z-index"]))}};export{R as _};
@@ -1 +0,0 @@
1
- import{_ as ne,r as Oe,c as C,o as k,w as m,a as i,b5 as pe,b6 as Ye,a6 as N,h as V,a2 as He,d as ee,z,aw as we,b7 as Ue,b8 as q,aa as _e,b9 as be,az as ze,I as ke,J as xe,ac as We,al as Ve,Q as Xe,O as Se,g as Y,a7 as te,a0 as Ce,aS as Fe,T as je,e as P,v as J,F as E,am 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,ba as Je,ad as Ke,C as Qe,N as et,bb as tt,P as at,n as ot,bc as nt,x as ce}from"./index-BImkz5Jx.js";import{V as lt}from"./VContainer-B46caNs1.js";import{V as rt,a as it}from"./VApp-CKP-6zGP.js";import{u as st}from"./logos-BswdveCV.js";import{u as ut}from"./layout.store-NXWtFIwL.js";import{x as ct,l as vt,n as Le,y as dt,z as mt,o as Me,p as ft,A as ht,j as Ee,e as Ie,V as Z,c as K,b as gt,B as yt,C as pt,g as wt,a as _t,D as bt,E as kt,F as xt}from"./VAvatar-Cmga0vj6.js";import{V as oe,g as Vt,a as A,h as St,c as ve,b as de,f as Ct}from"./forwardRefs-cvcnlhoK.js";import{u as me}from"./VProgressCircular-BtOPiGCg.js";import{u as $e,c as Tt,b as Pt}from"./tag-B_yWNNJD.js";import{u as Ae,b as Bt,m as Lt,V as ae,a as fe,c as Mt}from"./VMenu-gUG70-zD.js";import{a as Et,b as It,V as $t,u as At}from"./layout-C5FyYCHK.js";import{u as Nt}from"./ssrBoot-CKUX4kcb.js";import{u as Dt}from"./global.store-DbkcI5o2.js";import{V as Rt}from"./VBadge-CixeK87a.js";import{a as he}from"./VCard-CxH9DWoK.js";import{V as Ot,a as Yt}from"./VRow-ozg66L7j.js";import{V as Ht}from"./VSheet-BNx2X4Mk.js";const Ut={__name:"ConnectedView",setup(e){return(r,o)=>{const u=Oe("router-view");return k(),C(rt,null,{default:m(()=>[i(lt,{fluid:"",style:{height:"100%"}},{default:m(()=>[i(u,null,{default:m(({Component:t})=>[i(pe,{name:"fade"},{default:m(()=>[(k(),C(Ye(t)))]),_:2},1024)]),_:1})]),_:1})]),_:1})}}},zt=ne(Ut,[["__scopeId","data-v-b2ffa9e6"]]);function Wt(e){let{rootEl:r,isSticky:o,layoutItemStyles:u}=e;const t=N(!1),v=N(0),l=V(()=>{const w=typeof t.value=="boolean"?"top":t.value;return[o.value?{top:"auto",bottom:"auto",height:void 0}:void 0,t.value?{[w]:He(v.value)}:{top:u.value.top}]});ee(()=>{z(o,w=>{w?window.addEventListener("scroll",p,{passive:!0}):window.removeEventListener("scroll",p)},{immediate:!0})}),we(()=>{window.removeEventListener("scroll",p)});let y=0;function p(){const w=y>window.scrollY?"up":"down",a=r.value.getBoundingClientRect(),s=parseFloat(u.value.top??0),d=window.scrollY-Math.max(0,v.value-s),n=a.height+Math.max(v.value,s)-window.scrollY-window.innerHeight,c=parseFloat(getComputedStyle(r.value).getPropertyValue("--v-body-scroll-y"))||0;a.height<window.innerHeight-s?(t.value="top",v.value=s):w==="up"&&t.value==="bottom"||w==="down"&&t.value==="top"?(v.value=window.scrollY+a.top-c,t.value=!0):w==="down"&&n<=0?(v.value=0,t.value="bottom"):w==="up"&&d<=0&&(c?t.value!=="top"&&(v.value=-d+c+s,t.value="top"):(v.value=a.top+d,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 r=0;for(let o=e.length-1;o>0;o--){if(e[o].t===e[o-1].t)continue;const u=ge(r),t=(e[o].d-e[o-1].d)/(e[o].t-e[o-1].t);r+=(t-u)*Math.abs(t),o===e.length-1&&(r*=.5)}return ge(r)*1e3}function jt(){const e={};function r(t){Array.from(t.changedTouches).forEach(v=>{(e[v.identifier]??(e[v.identifier]=new Ue(Ft))).push([t.timeStamp,v])})}function o(t){Array.from(t.changedTouches).forEach(v=>{delete e[v.identifier]})}function u(t){var w;const v=(w=e[t])==null?void 0:w.values().reverse();if(!v)throw new Error(`No samples for touch id ${t}`);const l=v[0],y=[],p=[];for(const a of v){if(l[0]-a[0]>Xt)break;y.push({t:a[0],d:a[1].clientX}),p.push({t:a[0],d:a[1].clientY})}return{x:ye(y),y:ye(p),get direction(){const{x:a,y:s}=this,[d,n]=[Math.abs(a),Math.abs(s)];return d>n&&a>=0?"right":d>n&&a<=0?"left":n>d&&s>=0?"down":n>d&&s<=0?"up":qt()}}}return{addMovement:r,endTouch:o,getVelocity:u}}function qt(){throw new Error}function Gt(e){let{el:r,isActive:o,isTemporary:u,width:t,touchless:v,position:l}=e;ee(()=>{window.addEventListener("touchstart",M,{passive:!0}),window.addEventListener("touchmove",B,{passive:!1}),window.addEventListener("touchend",W,{passive:!0})}),we(()=>{window.removeEventListener("touchstart",M),window.removeEventListener("touchmove",B),window.removeEventListener("touchend",W)});const y=V(()=>["left","right"].includes(l.value)),{addMovement:p,endTouch:w,getVelocity:a}=jt();let s=!1;const d=N(!1),n=N(0),c=N(0);let S;function D(f,g){return(l.value==="left"?f:l.value==="right"?document.documentElement.clientWidth-f:l.value==="top"?f:l.value==="bottom"?document.documentElement.clientHeight-f:X())-(g?t.value:0)}function H(f){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const _=l.value==="left"?(f-c.value)/t.value:l.value==="right"?(document.documentElement.clientWidth-f-c.value)/t.value:l.value==="top"?(f-c.value)/t.value:l.value==="bottom"?(document.documentElement.clientHeight-f-c.value)/t.value:X();return g?ze(_):_}function M(f){if(v.value)return;const g=f.changedTouches[0].clientX,_=f.changedTouches[0].clientY,b=25,x=l.value==="left"?g<b:l.value==="right"?g>document.documentElement.clientWidth-b:l.value==="top"?_<b:l.value==="bottom"?_>document.documentElement.clientHeight-b:X(),h=o.value&&(l.value==="left"?g<t.value:l.value==="right"?g>document.documentElement.clientWidth-t.value:l.value==="top"?_<t.value:l.value==="bottom"?_>document.documentElement.clientHeight-t.value:X());(x||h||o.value&&u.value)&&(S=[g,_],c.value=D(y.value?g:_,o.value),n.value=H(y.value?g:_),s=c.value>-20&&c.value<80,w(f),p(f))}function B(f){const g=f.changedTouches[0].clientX,_=f.changedTouches[0].clientY;if(s){if(!f.cancelable){s=!1;return}const x=Math.abs(g-S[0]),h=Math.abs(_-S[1]);(y.value?x>h&&x>3:h>x&&h>3)?(d.value=!0,s=!1):(y.value?h:x)>3&&(s=!1)}if(!d.value)return;f.preventDefault(),p(f);const b=H(y.value?g:_,!1);n.value=Math.max(0,Math.min(1,b)),b>1?c.value=D(y.value?g:_,!0):b<0&&(c.value=D(y.value?g:_,!1))}function W(f){if(s=!1,!d.value)return;p(f),d.value=!1;const g=a(f.changedTouches[0].identifier),_=Math.abs(g.x),b=Math.abs(g.y);(y.value?_>b&&_>400:b>_&&b>3)?o.value=g.direction===({left:"right",right:"left",top:"down",bottom:"up"}[l.value]||X()):o.value=n.value>.5}const U=V(()=>d.value?{transform:l.value==="left"?`translateX(calc(-100% + ${n.value*t.value}px))`:l.value==="right"?`translateX(calc(100% - ${n.value*t.value}px))`:l.value==="top"?`translateY(calc(-100% + ${n.value*t.value}px))`:l.value==="bottom"?`translateY(calc(100% - ${n.value*t.value}px))`:X(),transition:"none"}:void 0);return q(d,()=>{var _,b;const f=((_=r.value)==null?void 0:_.style.transform)??null,g=((b=r.value)==null?void 0:b.style.transition)??null;_e(()=>{var x,h,L,$;(h=r.value)==null||h.style.setProperty("transform",((x=U.value)==null?void 0:x.transform)||"none"),($=r.value)==null||$.style.setProperty("transition",((L=U.value)==null?void 0:L.transition)||null)}),be(()=>{var x,h;(x=r.value)==null||x.style.setProperty("transform",f),(h=r.value)==null||h.style.setProperty("transition",g)})}),{isDragging:d,dragProgress:n,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(),...Pt(),...Lt(),...qe({mobile:null}),...ft(),...It(),...Me(),...Tt({tag:"nav"}),...Te()},"VNavigationDrawer"),Kt=ke()({name:"VNavigationDrawer",props:Jt(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,r){let{attrs:o,emit:u,slots:t}=r;const{isRtl:v}=We(),{themeClasses:l}=Ve(e),{borderClasses:y}=ct(e),{backgroundColorClasses:p,backgroundColorStyles:w}=me(()=>e.color),{elevationClasses:a}=vt(e),{displayClasses:s,mobile:d}=Xe(e),{roundedClasses:n}=Le(e),c=dt(),S=Se(e,"modelValue",null,T=>!!T),{ssrBootStyles:D}=Nt(),{scopeId:H}=Ae(),M=Y(),B=N(!1),{runOpenDelay:W,runCloseDelay:U}=Bt(e,T=>{B.value=T}),f=V(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),g=V(()=>mt(e.location,v.value)),_=te(()=>e.persistent),b=V(()=>!e.permanent&&(d.value||e.temporary)),x=V(()=>e.sticky&&!b.value&&g.value!=="bottom");q(()=>e.expandOnHover&&e.rail!=null,()=>{z(B,T=>u("update:rail",!T))}),q(()=>!e.disableResizeWatcher,()=>{z(b,T=>!e.permanent&&Ce(()=>S.value=!T))}),q(()=>!e.disableRouteWatcher&&!!c,()=>{z(c.currentRoute,()=>b.value&&(S.value=!1))}),z(()=>e.permanent,T=>{T&&(S.value=!0)}),e.modelValue==null&&!b.value&&(S.value=e.permanent||!d.value);const{isDragging:h,dragProgress:L}=Gt({el:M,isActive:S,isTemporary:b,width:f,touchless:te(()=>e.touchless),position:g}),$=V(()=>{const T=b.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):f.value;return h.value?T*L.value:T}),{layoutItemStyles:j,layoutItemScrimStyles:Ne}=Et({id:e.name,order:V(()=>parseInt(e.order,10)),position:g,layoutSize:$,elementSize:f,active:Fe(S),disableTransitions:te(()=>h.value),absolute:V(()=>e.absolute||x.value&&typeof le.value!="string")}),{isStuck:le,stickyStyles:De}=Wt({rootEl:M,isSticky:x,layoutItemStyles:j}),re=me(()=>typeof e.scrim=="string"?e.scrim:null),Re=V(()=>({...h.value?{opacity:L.value*.2,transition:"none"}:void 0,...Ne.value}));return je({VList:{bgColor:"transparent"}}),$e(()=>{const T=t.image||e.image;return P(E,null,[i(e.tag,J({ref:M,onMouseenter:W,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":b.value,"v-navigation-drawer--persistent":_.value,"v-navigation-drawer--active":S.value,"v-navigation-drawer--sticky":x.value},l.value,p.value,y.value,s.value,a.value,n.value,e.class],style:[w.value,j.value,D.value,De.value,e.style]},H,o),{default:()=>{var ie,se,ue;return[T&&P("div",{key:"image",class:"v-navigation-drawer__img"},[t.image?i(Ie,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},t.image):i(Ee,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),t.prepend&&P("div",{class:"v-navigation-drawer__prepend"},[(ie=t.prepend)==null?void 0:ie.call(t)]),P("div",{class:"v-navigation-drawer__content"},[(se=t.default)==null?void 0:se.call(t)]),t.append&&P("div",{class:"v-navigation-drawer__append"},[(ue=t.append)==null?void 0:ue.call(t)])]}}),i(pe,{name:"fade-transition"},{default:()=>[b.value&&(h.value||S.value)&&!!e.scrim&&P("div",J({class:["v-navigation-drawer__scrim",re.backgroundColorClasses.value],style:[Re.value,re.backgroundColorStyles.value],onClick:()=>{_.value||(S.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 r=e,o=Pe(),u=ut(),t=Ge(),{menuLogoPath:v}=st(),l=Y(!1),y=Y(!0),p=V(()=>o.authUser),w=V(()=>o.isAuthenticated);function a(s){return w.value?(s.roles===void 0||s.roles.indexOf(p.value.role)!==-1)&&(s.condition===void 0||s.condition())&&s.activated!==!1:!1}return(s,d)=>(k(),C(Kt,{modelValue:y.value,"onUpdate:modelValue":d[2]||(d[2]=n=>y.value=n),rail:l.value,permanent:"",color:e.color,app:""},{default:m(()=>[P("div",Qt,[i(Ee,{src:O(v),"max-width":"190",class:"logo",onClick:d[0]||(d[0]=n=>O(t).push(r.logoRoute))},null,8,["src"]),i(Z,{icon:l.value?"mdi-chevron-right":"mdi-chevron-left",variant:"text",onClick:d[1]||(d[1]=Ze(n=>l.value=!l.value,["stop"]))},null,8,["icon"])]),i(oe,{density:O(u).compactLeftMenu?"compact":"default",lines:!O(u).compactLeftMenu,nav:""},{default:m(()=>[(k(!0),I(E,null,G(e.menuItems,n=>(k(),I(E,{key:n.text},[a(n)?(k(),I(E,{key:0},[n.subheader?(k(),C(Vt,{key:0,class:"text-white"},{default:m(()=>[F(R(n.text.toUpperCase()),1)]),_:2},1024)):n.action?(k(),C(A,{key:1,value:n,exact:n.exact,title:n.text,"prepend-icon":n.icon,onClick:n.action},null,8,["value","exact","title","prepend-icon","onClick"])):n.children?(k(),C(St,{key:3,value:n.text},{activator:m(({props:c})=>[(k(),C(A,J({ref_for:!0},c,{key:n.text,title:n.text,color:"white","prepend-icon":n.icon}),null,16,["title","prepend-icon"]))]),default:m(()=>[(k(!0),I(E,null,G(n.children,c=>(k(),I(E,{key:c.text},[a(c)?(k(),I(E,{key:0},[c.action?(k(),C(A,{key:0,title:c.text,value:c,"prepend-icon":c.icon,onClick:c.action},null,8,["title","value","prepend-icon","onClick"])):(k(),C(A,{key:1,to:c.to,link:"",title:c.text,value:c,"prepend-icon":c.icon},null,8,["to","title","value","prepend-icon"]))],64)):Q("",!0)],64))),128))]),_:2},1032,["value"])):(k(),C(A,{key:2,value:n,to:n.to,link:"",exact:n.exact,title:n.text,"prepend-icon":n.icon},null,8,["value","to","exact","title","prepend-icon"]))],64)):Q("",!0)],64))),128))]),_:1},8,["density","lines"])]),_:1},8,["modelValue","rail","color"]))}},ta=ne(ea,[["__scopeId","data-v-4deeb2f7"]]),aa={key:0,class:"top-menu"},oa={class:"text-center"},na={class:"mt-2"},la={class:"text-center"},ra={class:"text-h5"},ia={__name:"TopMenu",props:{user:{type:Object,default:null},remote:{type:Boolean,default:!1}},setup(e){const r=e,{$gettext:o}=Be(),u=Dt(),t=Y([]),v=V(()=>r.user.first_name&&r.user.last_name?`${r.user.first_name[0].toUpperCase()}${r.user.last_name[0].toUpperCase()}`:r.user.username?r.user.username.slice(0,2).toUpperCase():""),l=V(()=>[{text:o("Account"),icon:"mdi-account-circle-outline",to:r.remote?null:{name:"AccountSettings"},href:r.remote?"https://localhost:3000/account":"",click:()=>null},{text:o("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}),u.fetchNotifications()}),(p,w)=>e.user?(k(),I("div",aa,[O(u).activeNotifications?(k(),C(Z,{key:0,icon:"",color:"error",class:"mr-4",variant:"tonal",size:"small"},{default:m(()=>[i(K,{icon:"mdi-bell"}),i(ae,{activator:"parent",location:"bottom"},{default:m(()=>[i(oe,null,{default:m(()=>[P("div",oa,[i(A,{title:O(o)("Notifications")},null,8,["title"])]),i(ve),(k(!0),I(E,null,G(O(u).notifications,a=>(k(),C(A,{key:a.id,to:a.url},{prepend:m(()=>[i(Rt,{color:a.color,content:a.counter,inline:""},null,8,["color","content"])]),default:m(()=>[i(de,null,{default:m(()=>[F(R(a.text),1)]),_:2},1024)]),_:2},1032,["to"]))),128))]),_:1})]),_:1})]),_:1})):Q("",!0),i(Z,{icon:"",class:"mr-4",variant:"flat"},{default:m(()=>[i(K,{icon:"mdi-apps"}),i(ae,{activator:"parent",location:"bottom"},{default:m(()=>[i(he,{"min-width":"350","max-width":"400",class:"pa-4"},{default:m(()=>[i(Ot,{class:"justify-center"},{default:m(()=>[(k(!0),I(E,null,G(t.value,a=>(k(),C(Yt,{key:a.name,cols:"6"},{default:m(()=>[i(Ht,{rounded:"",class:"application text-center pa-4 text-body-2",onClick:s=>p.$router.push(a.url)},{default:m(()=>[i(K,{color:"primary",icon:a.icon,size:"x-large"},null,8,["icon"]),P("div",na,R(a.label),1)]),_:2},1032,["onClick"])]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1}),i(Z,{icon:"",flat:"",color:"primary"},{default:m(()=>[F(R(v.value)+" ",1),i(ae,{activator:"parent",location:"bottom"},{default:m(()=>[i(he,{"min-width":"300","max-width":"350"},{default:m(()=>[i(oe,null,{default:m(()=>[P("div",la,[i(gt,{color:"primary"},{default:m(()=>[P("span",ra,R(v.value),1)]),_:1}),i(A,{title:e.user.username},null,8,["title"])]),i(ve),(k(!0),I(E,null,G(l.value,a=>(k(),C(A,{key:a.text,to:a.to,href:a.href,link:"",onClick:a.click},{prepend:m(()=>[i(K,{icon:a.icon},null,8,["icon"])]),default:m(()=>[i(de,null,{default:m(()=>[F(R(a.text),1)]),_:2},1024)]),_:2},1032,["to","href","onClick"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})])):Q("",!0)}},sa=ne(ia,[["__scopeId","data-v-7bd1943d"]]),ua={getTheme(){return Qe.get("/theme/")}};function ca(e){const r=N(e());let o=-1;function u(){clearInterval(o)}function t(){u(),Ce(()=>r.value=e())}function v(l){const y=l?getComputedStyle(l):{transitionDuration:.2},p=parseFloat(y.transitionDuration)*1e3||200;if(u(),r.value<=0)return;const w=performance.now();o=window.setInterval(()=>{const a=performance.now()-w+p;r.value=Math.max(e()-a,0),r.value<=0&&u()},p)}return be(u),{clear:u,time:r,start:v,reset:t}}const va=xe({multiLine:Boolean,text:String,timer:[Boolean,String],timeout:{type:[Number,String],default:5e3},vertical:Boolean,...xt({location:"bottom"}),...kt(),...Me(),...bt(),...Te(),...at(Mt({transition:"v-snackbar-transition"}),["persistent","noClickAnimation","scrim","scrollStrategy"])},"VSnackbar"),da=ke()({name:"VSnackbar",props:va(),emits:{"update:modelValue":e=>!0},setup(e,r){let{slots:o}=r;const u=Se(e,"modelValue"),{positionClasses:t}=yt(e),{scopeId:v}=Ae(),{themeClasses:l}=Ve(e),{colorClasses:y,colorStyles:p,variantClasses:w}=pt(e),{roundedClasses:a}=Le(e),s=ca(()=>Number(e.timeout)),d=Y(),n=Y(),c=N(!1),S=N(0),D=Y(),H=et($t,void 0);q(()=>!!H,()=>{const h=At();_e(()=>{D.value=h.mainStyles.value})}),z(u,B),z(()=>e.timeout,B),ee(()=>{u.value&&B()});let M=-1;function B(){s.reset(),window.clearTimeout(M);const h=Number(e.timeout);if(!u.value||h===-1)return;const L=tt(n.value);s.start(L),M=window.setTimeout(()=>{u.value=!1},h)}function W(){s.reset(),window.clearTimeout(M)}function U(){c.value=!0,W()}function f(){c.value=!1,B()}function g(h){S.value=h.touches[0].clientY}function _(h){Math.abs(S.value-h.changedTouches[0].clientY)>50&&(u.value=!1)}function b(){c.value&&f()}const x=V(()=>e.location.split(" ").reduce((h,L)=>(h[`v-snackbar--${L}`]=!0,h),{}));return $e(()=>{const h=fe.filterProps(e),L=!!(o.default||o.text||e.text);return i(fe,J({ref:d,class:["v-snackbar",{"v-snackbar--active":u.value,"v-snackbar--multi-line":e.multiLine&&!e.vertical,"v-snackbar--timer":!!e.timer,"v-snackbar--vertical":e.vertical},x.value,t.value,e.class],style:[D.value,e.style]},h,{modelValue:u.value,"onUpdate:modelValue":$=>u.value=$,contentProps:J({class:["v-snackbar__wrapper",l.value,y.value,a.value,w.value],style:[p.value],onPointerenter:U,onPointerleave:f},h.contentProps),persistent:!0,noClickAnimation:!0,scrim:!1,scrollStrategy:"none",_disableGlobalStack:!0,onTouchstartPassive:g,onTouchend:_,onAfterLeave:b},v),{default:()=>{var $,j;return[wt(!1,"v-snackbar"),e.timer&&!c.value&&P("div",{key:"timer",class:"v-snackbar__timer"},[i(_t,{ref:n,color:typeof e.timer=="string"?e.timer:"info",max:e.timeout,"model-value":s.time.value},null)]),L&&P("div",{key:"content",class:"v-snackbar__content",role:"status","aria-live":"polite"},[(($=o.text)==null?void 0:$.call(o))??e.text,(j=o.default)==null?void 0:j.call(o)]),o.actions&&i(Ie,{defaults:{VBtn:{variant:"text",ripple:!1,slim:!0}}},{default:()=>[P("div",{class:"v-snackbar__actions"},[o.actions({isActive:u})])]})]},activator:o.activator})}),Ct({},d)}}),ma=2e3,Ma={__name:"ConnectedLayout",props:{color:{type:String,default:"primary"},menuItems:{type:Array,default:null},loadTheme:{type:Boolean,default:!0}},setup(e){const r=Pe(),o=ot(),{$gettext:u}=Be(),t=nt(),v=e,l=V(()=>r.authUser),y=V(()=>o.notificationColor),p=V(()=>o.notification),w=Y(!1);return o.$onAction(({name:a,after:s})=>{a==="displayNotification"&&s(()=>{w.value=!0})},!0),v.loadTheme&&ua.getTheme().then(a=>{a.data.theme_primary_color!==t.themes.value.light.colors.primary&&(t.themes.value.light.colors.primary=a.data.theme_primary_color),a.data.theme_primary_color_light!==t.themes.value.light.colors["primary-lighten-1"]&&(t.themes.value.light.colors["primary-lighten-1"]=a.data.theme_primary_color_light),a.data.theme_primary_color_dark!==t.themes.value.light.colors["primary-darken-1"]&&(t.themes.value.light.colors["primary-darken-1"]=a.data.theme_primary_color_dark),a.data.theme_secondary_color!==t.themes.value.light.colors.secondary&&(t.themes.value.light.colors.secondary=a.data.theme_secondary_color),a.data.theme_label_color!==t.themes.value.light.colors.label&&(t.themes.value.light.colors.label=a.data.theme_label_color)}),(a,s)=>(k(),C(it,null,{default:m(()=>[ce(a.$slots,"navbar",{},()=>[i(ta,{color:e.color,"menu-items":e.menuItems},null,8,["color","menu-items"])]),ce(a.$slots,"topbar",{},()=>[i(sa,{user:l.value},null,8,["user"])]),i(zt),i(da,{modelValue:w.value,"onUpdate:modelValue":s[1]||(s[1]=d=>w.value=d),color:y.value,timeout:ma,location:"top"},{actions:m(()=>[i(Z,{color:"white",text:"",onClick:s[0]||(s[0]=d=>w.value=!1)},{default:m(()=>[F(R(O(u)("Close")),1)]),_:1})]),default:m(()=>[F(R(p.value)+" ",1)]),_:1},8,["modelValue","color"])]),_:3}))}};export{Kt as V,Ma as _};
@@ -1 +0,0 @@
1
- import{g as _,j as h,c as p,o as c,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 d,i as C}from"./index-BImkz5Jx.js";import{a as w}from"./admin-DewTk2H8.js";import{V as v,a as $,b as D}from"./VCard-CxH9DWoK.js";import{V as S}from"./VTable-DaLxa4FO.js";import{V as T}from"./VDataTable-Bh8NbVSx.js";import{p as B}from"./parameters-aSQiR7kN.js";import{V as M,a as W}from"./VToolbar-CFZfqeOr.js";import{V as F,a as g}from"./VRow-ozg66L7j.js";import"./tag-B_yWNNJD.js";import"./VAvatar-Cmga0vj6.js";import"./VProgressCircular-BtOPiGCg.js";import"./VSelect-C3RjAa45.js";import"./VTextField-XoGTj1KG.js";import"./VInput-CoDJzvaW.js";import"./forwardRefs-cvcnlhoK.js";import"./ssrBoot-CKUX4kcb.js";import"./VMenu-gUG70-zD.js";import"./VCheckboxBtn-DMoNtKT8.js";import"./VSelectionControl-zyz-fJvC.js";import"./VChip-D_styETR.js";import"./filter-C82FUCw_.js";/* empty css */const G={__name:"GlobalStatisticsWidget",async setup(f){let s,i;const e=_({}),n=([s,i]=h(()=>w.getStatistics()),s=await s,i(),s);return e.value=n.data,(r,u)=>(c(),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,i;const e=_([]),n=[{title:"",key:"title"},{title:"",key:"published",align:"end"}],r=([s,i]=h(()=>w.getNewsFeed()),s=await s,i(),s);return e.value=r.data,(u,L)=>(c(),p($,{title:u.$gettext("Latest news")},{default:o(()=>[l(v,null,{default:o(()=>[l(T,{headers:n,items:e.value,"hide-default-header":"","hide-default-footer":""},{"item.title":o(({item:m})=>[t("a",{href:m.link,target:"_blank"},a(m.title),9,I)]),"item.published":o(({item:m})=>[V(a(u.$date(m.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(),i=x(),e=_("");return y(async()=>{const n=await B.getGlobalApplication("core");n.data.params.custom_welcome_message?e.value=n.data.params.custom_welcome_message:e.value=s("Welcome to Modoboa")}),(n,r)=>(c(),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(g,{sm:"12",md:"6"},{default:o(()=>[l(d(R)),d(i).authUser.role===d(C).SUPER_ADMIN?(c(),p(d(G),{key:0,class:"mt-4"})):N("",!0)]),_:1}),l(g,{sm:"12",md:"6"})]),_:1})]))}},dt=b(U,[["__scopeId","data-v-24210b96"]]);export{dt as default};
@@ -1 +0,0 @@
1
- import{V as s,a as c}from"./VApp-CKP-6zGP.js";import{r as m,c as t,o as e,w as o,a as r}from"./index-BImkz5Jx.js";import"./tag-B_yWNNJD.js";import"./layout-C5FyYCHK.js";import"./ssrBoot-CKUX4kcb.js";const u={__name:"EmptyView",setup(a){return(_,n)=>{const p=m("router-view");return e(),t(s,null,{default:o(()=>[r(p)]),_:1})}}},d={__name:"EmptyLayout",setup(a){return(_,n)=>(e(),t(c,null,{default:o(()=>[r(u)]),_:1}))}};export{d as default};
@@ -1 +0,0 @@
1
- import{g as i,B as m,c as p,f as a,o as e}from"./index-BImkz5Jx.js";import{_ as n}from"./ComposeEmailForm-Bs1fZXAL.js";import{a as l}from"./webmail-CdU6CD9b.js";import"./index-DuzUMVLM.js";import"./VForm-D5iPGkde.js";import"./tag-B_yWNNJD.js";import"./VInput-CoDJzvaW.js";import"./VAvatar-Cmga0vj6.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./ssrBoot-CKUX4kcb.js";import"./VCard-CxH9DWoK.js";import"./VFileInput-BC4yAygd.js";import"./VTextField-XoGTj1KG.js";import"./VChip-D_styETR.js";import"./VTable-DaLxa4FO.js";import"./VSpacer-DinPiXs9.js";/* empty css */import"./HtmlEditor-Bh4c689R.js";import"./VTextarea-wBlRMIv_.js";import"./contacts-BjghrPqZ.js";import"./VToolbar-CFZfqeOr.js";import"./VRow-ozg66L7j.js";import"./VSelect-C3RjAa45.js";import"./VMenu-gUG70-zD.js";import"./VCheckboxBtn-DMoNtKT8.js";import"./VSelectionControl-zyz-fJvC.js";import"./filter-C82FUCw_.js";import"./VDialog-BcTg7w6P.js";const L={__name:"ForwardEmailView",setup(s){const o=m(),r=i();return l.getEmailContent(o.query.mailbox,o.query.mailid,{context:"forward"}).then(t=>{r.value=t.data}),(t,c)=>(e(),p(a(n),{"original-email":r.value},null,8,["original-email"]))}};export{L as default};
@@ -1 +0,0 @@
1
- import{u as i,d as c,c as n,w as t,o as l,a as e,e as m,t as p}from"./index-BImkz5Jx.js";import{V as u}from"./VContainer-B46caNs1.js";import{V as d,a as f}from"./VRow-ozg66L7j.js";import{V as g}from"./VProgressCircular-BtOPiGCg.js";/* empty css */import"./tag-B_yWNNJD.js";const V={class:"ma-5"},k={__name:"LoginCallbackView",props:{redirectUrl:String},setup(o){const r=o,a=i();return c(()=>{a.completeLogin(r.redirectUrl)}),(s,_)=>(l(),n(u,{class:"fill-height",fluid:""},{default:t(()=>[e(d,{align:"center",justify:"center"},{default:t(()=>[e(f,{cols:"auto",class:"text-center"},{default:t(()=>[m("h1",V,p(s.$gettext("Attempting to log you in.")),1),e(g,{color:"primary",indeterminate:"",size:128,width:12,"align-self":"center"})]),_:1})]),_:1})]),_:1}))}};export{k as default};
@@ -1 +0,0 @@
1
- import{I as te,J as le,al as se,K as oe,h as O,a5 as ne,e as d,v as ie,am as re,y as X,_ as ue,b as de,n as ce,g as h,B as me,d as ve,Z as pe,z as J,l as _,a as s,c as v,w as b,m as M,aQ as ge,f,t as m,F as U,s as fe,q as ke,o as r}from"./index-BImkz5Jx.js";import{a as x}from"./webmail-CdU6CD9b.js";import{V as he}from"./VToolbar-CFZfqeOr.js";import{V as j}from"./VCheckbox-62GOpvvP.js";import{V as be}from"./VTextField-XoGTj1KG.js";import{l as xe,p as ye,V as y,c as I}from"./VAvatar-Cmga0vj6.js";import{V as _e}from"./VMenu-gUG70-zD.js";import{V as Ve,a as $}from"./forwardRefs-cvcnlhoK.js";import{V as q}from"./VSpacer-DinPiXs9.js";import{a as R,V as Ce}from"./VCard-CxH9DWoK.js";import{u as we}from"./VProgressCircular-BtOPiGCg.js";import{a as Se,u as Be,m as Me}from"./tag-B_yWNNJD.js";import{V as $e}from"./VAlert-BuaaYN2h.js";import"./VCheckboxBtn-DMoNtKT8.js";import"./VSelectionControl-zyz-fJvC.js";import"./VInput-CoDJzvaW.js";import"./ssrBoot-CKUX4kcb.js";/* empty css */const Le={actions:"button@2",article:"heading, paragraph",avatar:"avatar",button:"button",card:"image, heading","card-avatar":"image, list-item-avatar",chip:"chip","date-picker":"list-item, heading, divider, date-picker-options, date-picker-days, actions","date-picker-options":"text, avatar@2","date-picker-days":"avatar@28",divider:"divider",heading:"heading",image:"image","list-item":"text","list-item-avatar":"avatar, text","list-item-two-line":"sentences","list-item-avatar-two-line":"avatar, sentences","list-item-three-line":"paragraph","list-item-avatar-three-line":"avatar, paragraph",ossein:"ossein",paragraph:"text@3",sentences:"text@2",subtitle:"text",table:"table-heading, table-thead, table-tbody, table-tfoot","table-heading":"chip, text","table-thead":"heading@6","table-tbody":"table-row-divider@6","table-row-divider":"table-row, divider","table-row":"text@6","table-tfoot":"text@2, avatar@2",text:"text"};function Ie(a){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return d("div",{class:X(["v-skeleton-loader__bone",`v-skeleton-loader__${a}`])},[o])}function D(a){const[o,e]=a.split("@");return Array.from({length:e}).map(()=>z(o))}function z(a){let o=[];if(!a)return o;const e=Le[a];if(a!==e){if(a.includes(","))return K(a);if(a.includes("@"))return D(a);e.includes(",")?o=K(e):e.includes("@")?o=D(e):e&&o.push(z(e))}return[Ie(a,o)]}function K(a){return a.replace(/\s/g,"").split(",").map(z)}const ze=le({boilerplate:Boolean,color:String,loading:Boolean,loadingText:{type:String,default:"$vuetify.loading"},type:{type:[String,Array],default:"ossein"},...Me(),...ye(),...re()},"VSkeletonLoader"),Ae=te()({name:"VSkeletonLoader",props:ze(),setup(a,o){let{slots:e}=o;const{backgroundColorClasses:V,backgroundColorStyles:B}=we(()=>a.color),{dimensionStyles:A}=Se(a),{elevationClasses:E}=xe(a),{themeClasses:p}=se(a),{t:i}=oe(),C=O(()=>z(ne(a.type).join(",")));return Be(()=>{var n;const g=!e.default||a.loading,w=a.boilerplate||!g?{}:{ariaLive:"polite",ariaLabel:i(a.loadingText),role:"alert"};return d("div",ie({class:["v-skeleton-loader",{"v-skeleton-loader--boilerplate":a.boilerplate},p.value,V.value,E.value],style:[B.value,g?A.value:{}]},w),[g?C.value:(n=e.default)==null?void 0:n.call(e)])}),{}}}),Ee={key:2,class:"d-flex align-center"},Ne={class:"text-caption mr-2"},Te={key:1,class:"emails position-absolute top-0 bottom-0 w-100 overflow-y-auto"},Je=["onClick"],Pe={class:"mt-1 text-grey"},Fe=["title"],Ue={key:1},je={class:"text-right"},qe={class:"mt-1"},Re={class:"text-grey"},De={__name:"EmailList",props:{mailbox:{type:String,default:"INBOX"}},setup(a){const o=a,{$gettext:e}=de(),{displayNotification:V,reloadMailboxCounters:B}=ce(),A=ke(),E=me(),p=h(!1),i=h({}),C=h(1),g=h(""),w=h(!1),n=h([]),c=h(!1);let P=null;const S=O(()=>E.query.mailbox||"INBOX"),G=u=>{A.push({name:"EmailView",query:{mailbox:o.mailbox,mailid:u}})},k=()=>{i.value={},p.value=!0,x.getMailboxEmails(o.mailbox,{page:C.value,search:g.value}).then(u=>{i.value=u.data,p.value=!1}).catch(()=>{p.value=!1})},N=()=>{k()},Q=()=>{g.value&&k()},W=u=>{u?n.value=i.value.results.map(t=>t.imapid):n.value=[]},Z=()=>{n.value.length&&(c.value=!0,x.deleteSelection(S.value,n.value).then(()=>{c.value=!1,V({msg:e("Message(s) deleted")}),k(),B()}))},H=()=>{n.value.length&&(c.value=!0,x.markSelectionAsJunk(S.value,n.value).then(()=>{c.value=!1,V({msg:e("Message(s) marked as junk")}),N()}))},Y=()=>{n.value.length&&(c.value=!0,x.markSelectionAsNotJunk(S.value,n.value).then(()=>{c.value=!1,V({msg:e("Message(s) marked as not junk")}),N()}))},L=u=>{n.value.length&&(c.value=!0,x.flagSelection(S.value,n.value,u).then(()=>{c.value=!1,n.value=[],V({msg:e("Message(s) flagged")}),k(),B()}))},ee=()=>{p.value=!0,x.emptyUserMailbox(S.value).then(()=>{i.value={},p.value=!1,B()})},ae=async u=>{const t=u.flagged?"unflagged":"flagged";await x.flagSelection(S.value,[u.imapid],t),u.flagged=t==="flagged"};return ve(()=>{P=setInterval(N,300*1e3)}),pe(()=>{clearInterval(P)}),J(()=>o.mailbox,()=>{k()},{immediate:!0}),J(n,()=>{n.value.length?w.value=!0:w.value=!1}),J(C,()=>{k()}),(u,t)=>{var F;return r(),_(U,null,[s(R,{class:"mt-6 mb-2 mx-1"},{default:b(()=>[s(he,{color:"white",flat:""},{default:b(()=>[s(j,{modelValue:w.value,"onUpdate:modelValue":[t[0]||(t[0]=l=>w.value=l),W],class:"mr-4","hide-details":""},null,8,["modelValue"]),s(be,{modelValue:g.value,"onUpdate:modelValue":t[1]||(t[1]=l=>g.value=l),"prepend-inner-icon":"mdi-magnify",placeholder:f(e)("Search in messages"),variant:"outlined","single-line":"",flat:"","hide-details":"",density:"compact",class:"flex-grow-0 w-33 mr-4",clearable:"","onClick:clear":k,onKeyup:ge(Q,["enter"])},null,8,["modelValue","placeholder"]),s(y,{class:"ml-2",color:"error",variant:"tonal",icon:"mdi-trash-can",size:"small",loading:c.value,onClick:Z},null,8,["loading"]),u.$route.params.mailbox!=="Junk"?(r(),v(y,{key:0,class:"ml-2",color:"warning",variant:"tonal",icon:"mdi-fire",size:"small",loading:c.value,onClick:H},null,8,["loading"])):(r(),v(y,{key:1,class:"ml-2",color:"success",variant:"tonal",icon:"mdi-thumb-up",size:"small",loading:c.value,onClick:Y},null,8,["loading"])),s(y,{class:"ml-2",variant:"tonal",icon:"",size:"small"},{default:b(()=>[s(I,{icon:"mdi-cog"}),s(_e,{activator:"parent"},{default:b(()=>[s(Ve,{density:"compact"},{default:b(()=>[s($,{title:f(e)("Mark as read"),"prepend-icon":"mdi-eye",onClick:t[2]||(t[2]=()=>L("read"))},null,8,["title"]),s($,{title:f(e)("Mark as unread"),"prepend-icon":"mdi-eye-outline",onClick:t[3]||(t[3]=()=>L("unread"))},null,8,["title"]),s($,{title:f(e)("Mark as followed"),"prepend-icon":"mdi-star",onClick:t[4]||(t[4]=()=>L("flagged"))},null,8,["title"]),s($,{title:f(e)("Mark as unfollowed"),"prepend-icon":"mdi-star-outline",onClick:t[5]||(t[5]=()=>L("unflagged"))},null,8,["title"]),u.$route.params.mailbox!=="Trash"?(r(),v($,{key:0,title:f(e)("Empty mailbox"),"prepend-icon":"mdi-trash-can",onClick:ee},null,8,["title"])):M("",!0)]),_:1})]),_:1})]),_:1}),s(q),i.value.results?(r(),_("div",Ee,[d("div",Ne,m(i.value.first_index)+"-"+m(i.value.last_index)+" "+m(f(e)("on"))+" "+m(i.value.count),1),d("div",null,[s(y,{icon:"mdi-chevron-left",size:"x-small",disabled:i.value.prev_page===null,onClick:t[6]||(t[6]=l=>C.value=i.value.prev_page)},null,8,["disabled"]),s(y,{icon:"mdi-chevron-right",size:"x-small",disabled:i.value.next_page===null,onClick:t[7]||(t[7]=l=>C.value=i.value.next_page)},null,8,["disabled"])])])):M("",!0)]),_:1})]),_:1}),p.value?(r(),v(Ae,{key:0,type:"card@2"})):(r(),_("div",Te,[(F=i.value.results)!=null&&F.length?(r(!0),_(U,{key:0},fe(i.value.results,l=>(r(),v(R,{key:l.imapid,density:"compact",class:"mb-2 mx-1"},{default:b(()=>[s(Ce,{class:X(["d-flex align-center",{"font-weight-bold":l.style==="unseen"}])},{default:b(()=>[s(j,{modelValue:n.value,"onUpdate:modelValue":t[8]||(t[8]=T=>n.value=T),value:l.imapid,"hide-details":""},null,8,["modelValue","value"]),s(y,{icon:l.flagged?"mdi-star":"mdi-star-outline",variant:"flat",onClick:T=>ae(l)},null,8,["icon","onClick"]),d("div",{class:"ml-4 clickable",onClick:T=>G(l.imapid)},[d("div",null,m(l.subject),1),d("div",Pe,[l.from_address.name?(r(),_("span",{key:0,title:l.from_address.address},m(l.from_address.name),9,Fe)):(r(),_("span",Ue,m(l.from_address.address),1))])],8,Je),s(q),d("div",je,[d("div",null,m(l.date),1),d("div",qe,[l.answered?(r(),v(I,{key:0,icon:"mdi-reply-outline"})):M("",!0),l.forwarded?(r(),v(I,{key:1,icon:"mdi-share-outline"})):M("",!0),l.attachments?(r(),v(I,{key:2,icon:"mdi-paperclip"})):M("",!0),d("span",Re,m(u.$filesize(l.size)),1)])])]),_:2},1032,["class"])]),_:2},1024))),128)):(r(),v($e,{key:1,class:"mt-4",type:"info",text:f(e)("No message yet in this mailbox"),variant:"tonal"},null,8,["text"]))]))],64)}}},Ke=ue(De,[["__scopeId","data-v-0050ed0f"]]),Oe={class:"position-relative h-100"},Xe={class:"text-h5 ml-4"},ma={__name:"MailboxView",setup(a){return(o,e)=>(r(),_("div",Oe,[d("div",Xe,m(o.$gettext("Webmail")),1),s(Ke,{mailbox:o.$route.query.mailbox||"INBOX"},null,8,["mailbox"])]))}};export{ma as default};
@@ -1 +0,0 @@
1
- import{_ as v,b as _,g as r,h as d,z as V,B as g,l as h,a as e,w as u,f as c,o as x,k as b,t as w}from"./index-BImkz5Jx.js";import{P}from"./ParametersForm-CAv4SH-E.js";import{p as o}from"./parameters-aSQiR7kN.js";import{V as A,a as T}from"./VToolbar-CFZfqeOr.js";import"./HtmlEditor-Bh4c689R.js";import"./VAvatar-Cmga0vj6.js";import"./tag-B_yWNNJD.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./ssrBoot-CKUX4kcb.js";import"./VTabs-BP0Hgsgm.js";import"./VWindowItem-BB7ETW3b.js";import"./VChip-D_styETR.js";import"./VMenu-gUG70-zD.js";import"./VContainer-B46caNs1.js";/* empty css */import"./VCard-CxH9DWoK.js";import"./VSwitch-DwxdeAEq.js";import"./VInput-CoDJzvaW.js";import"./VSelectionControl-zyz-fJvC.js";import"./VSelect-C3RjAa45.js";import"./VTextField-XoGTj1KG.js";import"./VCheckboxBtn-DMoNtKT8.js";import"./VTextarea-wBlRMIv_.js";import"./VColorPicker-BHscBGQV.js";import"./colors-DoZdCu1D.js";import"./VPicker-BXuKT3zB.js";import"./VSheet-BNx2X4Mk.js";const k={__name:"ParametersView",setup(B){const{$gettext:n}=_(),p=g(),s=r(""),i=r([]),m=r({}),f=d(()=>n("Settings: "+s.value));function l(t){o.getUserApplicationStructure(t).then(a=>{i.value=a.data}),o.getUserApplication(t).then(a=>{m.value=a.data.params,s.value=a.data.label})}return V(p,t=>{l(t.params.app)}),l(p.params.app),(t,a)=>(x(),h("div",null,[e(A,{flat:""},{default:u(()=>[e(T,null,{default:u(()=>[b(w(f.value),1)]),_:1})]),_:1}),e(c(P),{app:t.$route.params.app,structure:i.value,values:m.value,"save-function":c(o).saveUserApplication},null,8,["app","structure","values","save-function"])]))}},rt=v(k,[["__scopeId","data-v-3e7380ff"]]);export{rt as default};
@@ -1 +0,0 @@
1
- import{_ as b,b as g,g as r,h as S,z as h,B as V,l as x,a as e,w as u,f as n,o as P,k as w,t as G}from"./index-BImkz5Jx.js";import{p}from"./parameters-aSQiR7kN.js";import{P as A}from"./ParametersForm-CAv4SH-E.js";import{V as T,a as k}from"./VToolbar-CFZfqeOr.js";import{u as B}from"./global.store-DbkcI5o2.js";import{u as N}from"./parameters.store-CzQqVatx.js";import"./HtmlEditor-Bh4c689R.js";import"./VAvatar-Cmga0vj6.js";import"./tag-B_yWNNJD.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./ssrBoot-CKUX4kcb.js";import"./VTabs-BP0Hgsgm.js";import"./VWindowItem-BB7ETW3b.js";import"./VChip-D_styETR.js";import"./VMenu-gUG70-zD.js";import"./VContainer-B46caNs1.js";/* empty css */import"./VCard-CxH9DWoK.js";import"./VSwitch-DwxdeAEq.js";import"./VInput-CoDJzvaW.js";import"./VSelectionControl-zyz-fJvC.js";import"./VSelect-C3RjAa45.js";import"./VTextField-XoGTj1KG.js";import"./VCheckboxBtn-DMoNtKT8.js";import"./VTextarea-wBlRMIv_.js";import"./VColorPicker-BHscBGQV.js";import"./colors-DoZdCu1D.js";import"./VPicker-BXuKT3zB.js";import"./VSheet-BNx2X4Mk.js";const E={__name:"ParametersView",setup($){const{$gettext:c}=g(),f=B(),o=V(),d=N(),s=r([]),i=r({}),m=r(""),_=S(()=>c("Settings: "+m.value));function l(t){p.getGlobalApplicationStructure(t).then(a=>{s.value=a.data}),p.getGlobalApplication(t).then(a=>{i.value=a.data.params,m.value=a.data.label})}function v(t){f.fetchNotifications(),o.params.app==="imap_migration"&&(d.imapMigrationEnabled=t.enabled_imapmigration)}return h(o,t=>{l(t.params.app)}),l(o.params.app),(t,a)=>(P(),x("div",null,[e(T,{flat:""},{default:u(()=>[e(k,null,{default:u(()=>[w(G(_.value),1)]),_:1})]),_:1}),e(n(A),{app:t.$route.params.app,structure:s.value,values:i.value,"save-function":n(p).saveGlobalApplication,onSuccess:v},null,8,["app","structure","values","save-function"])]))}},lt=b(E,[["__scopeId","data-v-6ffadfb6"]]);export{lt as default};
@@ -1 +0,0 @@
1
- import{_ as r}from"./ConnectedLayout-UWjiYBNw.js";import{c as o,w as m,o as p,k as i}from"./index-BImkz5Jx.js";import"./VContainer-B46caNs1.js";/* empty css */import"./tag-B_yWNNJD.js";import"./VApp-CKP-6zGP.js";import"./layout-C5FyYCHK.js";import"./ssrBoot-CKUX4kcb.js";import"./logos-BswdveCV.js";import"./layout.store-NXWtFIwL.js";import"./VAvatar-Cmga0vj6.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./VMenu-gUG70-zD.js";import"./global.store-DbkcI5o2.js";import"./VBadge-CixeK87a.js";import"./VCard-CxH9DWoK.js";import"./VRow-ozg66L7j.js";import"./VSheet-BNx2X4Mk.js";const T={__name:"QuarantineLayout",setup(a){return(e,t)=>(p(),o(r,null,{navbar:m(()=>t[0]||(t[0]=[i(" ")])),_:1}))}};export{T as default};
@@ -1 +0,0 @@
1
- import{g as e,c as a,f as p,B as l,o as n}from"./index-BImkz5Jx.js";import{_ as s}from"./ComposeEmailForm-Bs1fZXAL.js";import{a as u}from"./webmail-CdU6CD9b.js";import"./index-DuzUMVLM.js";import"./VForm-D5iPGkde.js";import"./tag-B_yWNNJD.js";import"./VInput-CoDJzvaW.js";import"./VAvatar-Cmga0vj6.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./ssrBoot-CKUX4kcb.js";import"./VCard-CxH9DWoK.js";import"./VFileInput-BC4yAygd.js";import"./VTextField-XoGTj1KG.js";import"./VChip-D_styETR.js";import"./VTable-DaLxa4FO.js";import"./VSpacer-DinPiXs9.js";/* empty css */import"./HtmlEditor-Bh4c689R.js";import"./VTextarea-wBlRMIv_.js";import"./contacts-BjghrPqZ.js";import"./VToolbar-CFZfqeOr.js";import"./VRow-ozg66L7j.js";import"./VSelect-C3RjAa45.js";import"./VMenu-gUG70-zD.js";import"./VCheckboxBtn-DMoNtKT8.js";import"./VSelectionControl-zyz-fJvC.js";import"./filter-C82FUCw_.js";import"./VDialog-BcTg7w6P.js";const J={__name:"ReplyEmailView",setup(c){const t=l(),o=e(),r=i=>{o.value="",u.getEmailContent(t.query.mailbox,t.query.mailid,{context:"reply",dformat:i?"html":"plain"}).then(m=>{o.value=m.data})};return r(),(i,m)=>(n(),a(p(s),{"original-email":o.value,"reply-all":p(t).query.all==="true",onOnToggleHtmlMode:r},null,8,["original-email","reply-all"]))}};export{J as default};
@@ -1 +0,0 @@
1
- import{r as p,V as _}from"./VForm-D5iPGkde.js";import{V as f}from"./VTextField-XoGTj1KG.js";import{h as i,g as V,c as v,o as l,w as x,l as o,F as s,s as F,e as y,a as b,t as k,f as g}from"./index-BImkz5Jx.js";const h={class:"m-label"},U={__name:"ResourcesForm",props:{modelValue:{type:Object,default:null}},setup(n,{expose:u}){const m=n,t=i(()=>m.modelValue),r=V();function c(){return t.value.map(a=>({name:a.name,max_value:a.max_value}))}return u({vFormRef:r,getPayload:c}),(a,B)=>(l(),v(_,{ref_key:"vFormRef",ref:r},{default:x(()=>[(l(!0),o(s,null,F(t.value,e=>(l(),o(s,{key:e.name},[y("label",h,k(e.label),1),b(f,{modelValue:e.max_value,"onUpdate:modelValue":d=>e.max_value=d,type:"number",variant:"outlined",dense:"",rules:[g(p).required]},null,8,["modelValue","onUpdate:modelValue","rules"])],64))),128))]),_:1},512))}};export{U as _};
@@ -1 +0,0 @@
1
- import{_ as p}from"./ConnectedLayout-UWjiYBNw.js";import{c as m,w as r,o as i,k as o}from"./index-BImkz5Jx.js";import"./VContainer-B46caNs1.js";/* empty css */import"./tag-B_yWNNJD.js";import"./VApp-CKP-6zGP.js";import"./layout-C5FyYCHK.js";import"./ssrBoot-CKUX4kcb.js";import"./logos-BswdveCV.js";import"./layout.store-NXWtFIwL.js";import"./VAvatar-Cmga0vj6.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./VMenu-gUG70-zD.js";import"./global.store-DbkcI5o2.js";import"./VBadge-CixeK87a.js";import"./VCard-CxH9DWoK.js";import"./VRow-ozg66L7j.js";import"./VSheet-BNx2X4Mk.js";const T={__name:"SelfServiceLayout",setup(a){return(e,t)=>(i(),m(p,null,{navbar:r(()=>t[0]||(t[0]=[o(" ")])),topbar:r(()=>t[1]||(t[1]=[o(" ")])),_:1}))}};export{T as default};
@@ -1 +0,0 @@
1
- import{c as o,f as r,o as m}from"./index-BImkz5Jx.js";import{_ as p}from"./ConnectedLayout-UWjiYBNw.js";import{u as i}from"./layout.store-NXWtFIwL.js";import"./VContainer-B46caNs1.js";/* empty css */import"./tag-B_yWNNJD.js";import"./VApp-CKP-6zGP.js";import"./layout-C5FyYCHK.js";import"./ssrBoot-CKUX4kcb.js";import"./logos-BswdveCV.js";import"./VAvatar-Cmga0vj6.js";import"./VProgressCircular-BtOPiGCg.js";import"./forwardRefs-cvcnlhoK.js";import"./VMenu-gUG70-zD.js";import"./global.store-DbkcI5o2.js";import"./VBadge-CixeK87a.js";import"./VCard-CxH9DWoK.js";import"./VRow-ozg66L7j.js";import"./VSheet-BNx2X4Mk.js";const g={__name:"UserLayout",setup(e){const t=i();return(s,a)=>(m(),o(p,{"menu-items":r(t).leftMenuItems},null,8,["menu-items"]))}};export{g as default};
@@ -1 +0,0 @@
1
- import{d as $e,u as q,b as te}from"./tag-B_yWNNJD.js";import{ay as ae,J as I,a6 as le,g as ee,h,az as W,a2 as L,z as ne,d as Ue,e as c,a1 as G,y as z,aA as Ge,aB as qe,aC as ze,aD as Ke,aE as ve,aF as se,aG as me,aH as re,a as E,X as Xe,Y as We,aI as Se,ac as ie,a7 as D,a9 as Ye,a0 as Je,ak as Ze,I as ke,N as Me,aJ as Qe,L as we,aj as et,O as he,F as Ne,v as Re,Z as tt,aK as Ce,aL as Te,aM as ye,aN as lt,aq as at,aO as ot,aP as rt,T as nt}from"./index-BImkz5Jx.js";import{V as Be,p as st,o as it,R as Ve,l as ut,w as ct,n as dt,c as vt}from"./VAvatar-Cmga0vj6.js";import{a as mt,u as Pe}from"./VProgressCircular-BtOPiGCg.js";import{u as ht,V as xe,c as bt,b as ft,m as kt}from"./VInput-CoDJzvaW.js";import{c as yt}from"./colors-DoZdCu1D.js";import{V as _e,m as gt}from"./VPicker-BXuKT3zB.js";const pt=I({color:{type:Object},disabled:Boolean,dotSize:{type:[Number,String],default:10},height:{type:[Number,String],default:150},width:{type:[Number,String],default:300},...te()},"VColorPickerCanvas"),St=ae({name:"VColorPickerCanvas",props:pt(),emits:{"update:color":e=>!0,"update:position":e=>!0},setup(e,t){let{emit:l}=t;const r=le(!1),i=ee(),a=le(parseFloat(e.width)),o=le(parseFloat(e.height)),n=ee({x:0,y:0}),b=h({get:()=>n.value,set(u){var g,F;if(!i.value)return;const{x:v,y}=u;n.value=u,l("update:color",{h:((g=e.color)==null?void 0:g.h)??0,s:W(v,0,a.value)/a.value,v:1-W(y,0,o.value)/o.value,a:((F=e.color)==null?void 0:F.a)??1})}}),k=h(()=>{const{x:u,y:v}=b.value,y=parseInt(e.dotSize,10)/2;return{width:L(e.dotSize),height:L(e.dotSize),transform:`translate(${L(u-y)}, ${L(v-y)})`}}),{resizeRef:d}=$e(u=>{var g;if(!((g=d.el)!=null&&g.offsetParent))return;const{width:v,height:y}=u[0].contentRect;a.value=v,o.value=y});function f(u,v,y){const{left:g,top:F,width:N,height:S}=y;b.value={x:W(u-g,0,N),y:W(v-F,0,S)}}function V(u){u.type==="mousedown"&&u.preventDefault(),!e.disabled&&(p(u),window.addEventListener("mousemove",p),window.addEventListener("mouseup",M),window.addEventListener("touchmove",p),window.addEventListener("touchend",M))}function p(u){if(e.disabled||!i.value)return;r.value=!0;const v=Ge(u);f(v.clientX,v.clientY,i.value.getBoundingClientRect())}function M(){window.removeEventListener("mousemove",p),window.removeEventListener("mouseup",M),window.removeEventListener("touchmove",p),window.removeEventListener("touchend",M)}function R(){var F;if(!i.value)return;const u=i.value,v=u.getContext("2d");if(!v)return;const y=v.createLinearGradient(0,0,u.width,0);y.addColorStop(0,"hsla(0, 0%, 100%, 1)"),y.addColorStop(1,`hsla(${((F=e.color)==null?void 0:F.h)??0}, 100%, 50%, 1)`),v.fillStyle=y,v.fillRect(0,0,u.width,u.height);const g=v.createLinearGradient(0,0,0,u.height);g.addColorStop(0,"hsla(0, 0%, 0%, 0)"),g.addColorStop(1,"hsla(0, 0%, 0%, 1)"),v.fillStyle=g,v.fillRect(0,0,u.width,u.height)}return ne(()=>{var u;return(u=e.color)==null?void 0:u.h},R,{immediate:!0}),ne(()=>[a.value,o.value],(u,v)=>{R(),n.value={x:b.value.x*u[0]/v[0],y:b.value.y*u[1]/v[1]}},{flush:"post"}),ne(()=>e.color,()=>{if(r.value){r.value=!1;return}n.value=e.color?{x:e.color.s*a.value,y:(1-e.color.v)*o.value}:{x:0,y:0}},{deep:!0,immediate:!0}),Ue(()=>R()),q(()=>c("div",{ref:d,class:z(["v-color-picker-canvas",e.class]),style:G(e.style),onMousedown:V,onTouchstartPassive:V},[c("canvas",{ref:i,width:a.value,height:o.value},null),e.color&&c("div",{class:z(["v-color-picker-canvas__dot",{"v-color-picker-canvas__dot--disabled":e.disabled}]),style:G(k.value)},null)])),{}}});function wt(e,t){if(t){const{a:l,...r}=e;return r}return e}function Ct(e,t){if(t==null||typeof t=="string"){const l=e.a!==1;if(t!=null&&t.startsWith("rgb(")){const{r:i,g:a,b:o,a:n}=me(e);return`rgb(${i} ${a} ${o}`+(l?` / ${n})`:")")}else if(t!=null&&t.startsWith("hsl(")){const{h:i,s:a,l:o,a:n}=ve(e);return`hsl(${i} ${Math.round(a*100)} ${Math.round(o*100)}`+(l?` / ${n})`:")")}const r=ze(e);return e.a===1?r.slice(0,7):r}if(typeof t=="object"){let l;return re(t,["r","g","b"])?l=me(e):re(t,["h","s","l"])?l=ve(e):re(t,["h","s","v"])&&(l=e),wt(l,!re(t,["a"])&&e.a===1)}return e}const Q={h:0,s:0,v:0,a:1},be={inputProps:{type:"number",min:0},inputs:[{label:"R",max:255,step:1,getValue:e=>Math.round(e.r),getColor:(e,t)=>({...e,r:Number(t)})},{label:"G",max:255,step:1,getValue:e=>Math.round(e.g),getColor:(e,t)=>({...e,g:Number(t)})},{label:"B",max:255,step:1,getValue:e=>Math.round(e.b),getColor:(e,t)=>({...e,b:Number(t)})},{label:"A",max:1,step:.01,getValue:e=>{let{a:t}=e;return t!=null?Math.round(t*100)/100:1},getColor:(e,t)=>({...e,a:Number(t)})}],to:me,from:se};var Fe;const Vt={...be,inputs:(Fe=be.inputs)==null?void 0:Fe.slice(0,3)},fe={inputProps:{type:"number",min:0},inputs:[{label:"H",max:360,step:1,getValue:e=>Math.round(e.h),getColor:(e,t)=>({...e,h:Number(t)})},{label:"S",max:1,step:.01,getValue:e=>Math.round(e.s*100)/100,getColor:(e,t)=>({...e,s:Number(t)})},{label:"L",max:1,step:.01,getValue:e=>Math.round(e.l*100)/100,getColor:(e,t)=>({...e,l:Number(t)})},{label:"A",max:1,step:.01,getValue:e=>{let{a:t}=e;return t!=null?Math.round(t*100)/100:1},getColor:(e,t)=>({...e,a:Number(t)})}],to:ve,from:Ke},Pt={...fe,inputs:fe.inputs.slice(0,3)},Le={inputProps:{type:"text"},inputs:[{label:"HEXA",getValue:e=>e,getColor:(e,t)=>t}],to:ze,from:qe},xt={...Le,inputs:[{label:"HEX",getValue:e=>e.slice(0,7),getColor:(e,t)=>t}]},Y={rgb:Vt,rgba:be,hsl:Pt,hsla:fe,hex:xt,hexa:Le},_t=e=>{let{label:t,...l}=e;return c("div",{class:"v-color-picker-edit__input"},[c("input",Xe(We(l)),null),c("span",null,[t])])},Et=I({color:Object,disabled:Boolean,mode:{type:String,default:"rgba",validator:e=>Object.keys(Y).includes(e)},modes:{type:Array,default:()=>Object.keys(Y),validator:e=>Array.isArray(e)&&e.every(t=>Object.keys(Y).includes(t))},...te()},"VColorPickerEdit"),Ft=ae({name:"VColorPickerEdit",props:Et(),emits:{"update:color":e=>!0,"update:mode":e=>!0},setup(e,t){let{emit:l}=t;const r=h(()=>e.modes.map(a=>({...Y[a],name:a}))),i=h(()=>{var n;const a=r.value.find(b=>b.name===e.mode);if(!a)return[];const o=e.color?a.to(e.color):null;return(n=a.inputs)==null?void 0:n.map(b=>{let{getValue:k,getColor:d,...f}=b;return{...a.inputProps,...f,disabled:e.disabled,value:o&&k(o),onChange:V=>{const p=V.target;p&&l("update:color",a.from(d(o??a.to(Q),p.value)))}}})});return q(()=>{var a;return c("div",{class:z(["v-color-picker-edit",e.class]),style:G(e.style)},[(a=i.value)==null?void 0:a.map(o=>E(_t,o,null)),r.value.length>1&&E(Be,{icon:"$unfold",size:"x-small",variant:"plain",onClick:()=>{const o=r.value.findIndex(n=>n.name===e.mode);l("update:mode",r.value[(o+1)%r.value.length].name)}},null)])}),{}}}),ge=Symbol.for("vuetify:v-slider");function zt(e,t,l){const r=l==="vertical",i=t.getBoundingClientRect(),a="touches"in e?e.touches[0]:e;return r?a.clientY-(i.top+i.height/2):a.clientX-(i.left+i.width/2)}function Mt(e,t){return"touches"in e&&e.touches.length?e.touches[0][t]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][t]:e[t]}const Nt=I({disabled:{type:Boolean,default:null},error:Boolean,readonly:{type:Boolean,default:null},max:{type:[Number,String],default:100},min:{type:[Number,String],default:0},step:{type:[Number,String],default:0},thumbColor:String,thumbLabel:{type:[Boolean,String],default:void 0,validator:e=>typeof e=="boolean"||e==="always"},thumbSize:{type:[Number,String],default:20},showTicks:{type:[Boolean,String],default:!1,validator:e=>typeof e=="boolean"||e==="always"},ticks:{type:[Array,Object]},tickSize:{type:[Number,String],default:2},color:String,trackColor:String,trackFillColor:String,trackSize:{type:[Number,String],default:4},direction:{type:String,default:"horizontal",validator:e=>["vertical","horizontal"].includes(e)},reverse:Boolean,...it(),...st({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),Rt=e=>{const t=h(()=>parseFloat(e.min)),l=h(()=>parseFloat(e.max)),r=h(()=>Number(e.step)>0?parseFloat(e.step):0),i=h(()=>Math.max(Se(r.value),Se(t.value)));function a(o){if(o=parseFloat(o),r.value<=0)return o;const n=W(o,t.value,l.value),b=t.value%r.value;let k=Math.round((n-b)/r.value)*r.value+b;return n>k&&k+r.value>l.value&&(k=l.value),parseFloat(Math.min(k,l.value).toFixed(i.value))}return{min:t,max:l,step:r,decimals:i,roundValue:a}},Tt=e=>{let{props:t,steps:l,onSliderStart:r,onSliderMove:i,onSliderEnd:a,getActiveThumb:o}=e;const{isRtl:n}=ie(),b=D(()=>t.reverse),k=h(()=>t.direction==="vertical"),d=h(()=>k.value!==b.value),{min:f,max:V,step:p,decimals:M,roundValue:R}=l,u=h(()=>parseInt(t.thumbSize,10)),v=h(()=>parseInt(t.tickSize,10)),y=h(()=>parseInt(t.trackSize,10)),g=h(()=>(V.value-f.value)/p.value),F=D(()=>t.disabled),N=h(()=>t.error||t.disabled?void 0:t.thumbColor??t.color),S=h(()=>t.error||t.disabled?void 0:t.trackColor??t.color),H=h(()=>t.error||t.disabled?void 0:t.trackFillColor??t.color),P=le(!1),x=le(0),A=ee(),T=ee();function w(s){var pe;const m=(pe=A.value)==null?void 0:pe.$el;if(!m)return;const O=t.direction==="vertical",He=O?"top":"left",Ae=O?"height":"width",Oe=O?"clientY":"clientX",{[He]:De,[Ae]:je}=m.getBoundingClientRect(),Ie=Mt(s,Oe);let de=W((Ie-De-x.value)/je)||0;return(O?d.value:d.value!==n.value)&&(de=1-de),R(f.value+de*(V.value-f.value))}const K=s=>{const m=w(s);m!=null&&a({value:m}),P.value=!1,x.value=0},j=s=>{const m=w(s);T.value=o(s),T.value&&(P.value=!0,T.value.contains(s.target)?x.value=zt(s,T.value,t.direction):(x.value=0,m!=null&&i({value:m})),m!=null&&r({value:m}),Je(()=>{var O;return(O=T.value)==null?void 0:O.focus()}))},B={passive:!0,capture:!0};function $(s){const m=w(s);m!=null&&i({value:m})}function U(s){s.stopPropagation(),s.preventDefault(),K(s),window.removeEventListener("mousemove",$,B),window.removeEventListener("mouseup",U)}function oe(s){var m;K(s),window.removeEventListener("touchmove",$,B),(m=s.target)==null||m.removeEventListener("touchend",oe)}function ue(s){var m;j(s),window.addEventListener("touchmove",$,B),(m=s.target)==null||m.addEventListener("touchend",oe,{passive:!1})}function ce(s){s.button===0&&(s.preventDefault(),j(s),window.addEventListener("mousemove",$,B),window.addEventListener("mouseup",U,{passive:!1}))}const J=s=>{const m=(s-f.value)/(V.value-f.value)*100;return W(isNaN(m)?0:m,0,100)},_=D(()=>t.showTicks),C=h(()=>_.value?t.ticks?Array.isArray(t.ticks)?t.ticks.map(s=>({value:s,position:J(s),label:s.toString()})):Object.keys(t.ticks).map(s=>({value:parseFloat(s),position:J(parseFloat(s)),label:t.ticks[s]})):g.value!==1/0?Ye(g.value+1).map(s=>{const m=f.value+s*p.value;return{value:m,position:J(m)}}):[]:[]),Z=h(()=>C.value.some(s=>{let{label:m}=s;return!!m})),X={activeThumbRef:T,color:D(()=>t.color),decimals:M,disabled:F,direction:D(()=>t.direction),elevation:D(()=>t.elevation),hasLabels:Z,isReversed:b,indexFromEnd:d,min:f,max:V,mousePressed:P,numTicks:g,onSliderMousedown:ce,onSliderTouchstart:ue,parsedTicks:C,parseMouseMove:w,position:J,readonly:D(()=>t.readonly),rounded:D(()=>t.rounded),roundValue:R,showTicks:_,startOffset:x,step:p,thumbSize:u,thumbColor:N,thumbLabel:D(()=>t.thumbLabel),ticks:D(()=>t.ticks),tickSize:v,trackColor:S,trackContainerRef:A,trackFillColor:H,trackSize:y,vertical:k};return Ze(ge,X),X},Bt=I({focused:Boolean,max:{type:Number,required:!0},min:{type:Number,required:!0},modelValue:{type:Number,required:!0},position:{type:Number,required:!0},ripple:{type:[Boolean,Object],default:!0},name:String,...te()},"VSliderThumb"),Lt=ke()({name:"VSliderThumb",directives:{vRipple:Ve},props:Bt(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:l,emit:r}=t;const i=Me(ge),{isRtl:a,rtlClasses:o}=ie();if(!i)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{min:n,max:b,thumbColor:k,step:d,disabled:f,thumbSize:V,thumbLabel:p,direction:M,isReversed:R,vertical:u,readonly:v,elevation:y,mousePressed:g,decimals:F,indexFromEnd:N}=i,S=h(()=>f.value?void 0:y.value),{elevationClasses:H}=ut(S),{textColorClasses:P,textColorStyles:x}=mt(k),{pageup:A,pagedown:T,end:w,home:K,left:j,right:B,down:$,up:U}=Qe,oe=[A,T,w,K,j,B,$,U],ue=h(()=>d.value?[1,2,3]:[1,5,10]);function ce(_,C){if(!oe.includes(_.key))return;_.preventDefault();const Z=d.value||.1,X=(b.value-n.value)/Z;if([j,B,$,U].includes(_.key)){const m=(u.value?[a.value?j:B,R.value?$:U]:N.value!==a.value?[j,U]:[B,U]).includes(_.key)?1:-1,O=_.shiftKey?2:_.ctrlKey?1:0;m===-1&&C===b.value&&!O&&!Number.isInteger(X)?C=C-X%1*Z:C=C+m*Z*ue.value[O]}else if(_.key===K)C=n.value;else if(_.key===w)C=b.value;else{const s=_.key===T?1:-1;C=C-s*Z*(X>100?X/10:10)}return Math.max(e.min,Math.min(e.max,C))}function J(_){const C=ce(_,e.modelValue);C!=null&&r("update:modelValue",C)}return q(()=>{const _=L(N.value?100-e.position:e.position,"%");return c("div",{class:z(["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&g.value},e.class,o.value]),style:G([{"--v-slider-thumb-position":_,"--v-slider-thumb-size":L(V.value)},e.style]),role:"slider",tabindex:f.value?-1:0,"aria-label":e.name,"aria-valuemin":n.value,"aria-valuemax":b.value,"aria-valuenow":e.modelValue,"aria-readonly":!!v.value,"aria-orientation":M.value,onKeydown:v.value?void 0:J},[c("div",{class:z(["v-slider-thumb__surface",P.value,H.value]),style:{...x.value}},null),we(c("div",{class:z(["v-slider-thumb__ripple",P.value]),style:G(x.value)},null),[[Ve,e.ripple,null,{circle:!0,center:!0}]]),E(ct,{origin:"bottom center"},{default:()=>{var C;return[we(c("div",{class:"v-slider-thumb__label-container"},[c("div",{class:z(["v-slider-thumb__label",P.value])},[c("div",null,[((C=l["thumb-label"])==null?void 0:C.call(l,{modelValue:e.modelValue}))??e.modelValue.toFixed(d.value?F.value:1)])])]),[[et,p.value&&e.focused||p.value==="always"]])]}})])}),{}}}),Ht=I({start:{type:Number,required:!0},stop:{type:Number,required:!0},...te()},"VSliderTrack"),At=ke()({name:"VSliderTrack",props:Ht(),emits:{},setup(e,t){let{slots:l}=t;const r=Me(ge);if(!r)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:i,parsedTicks:a,rounded:o,showTicks:n,tickSize:b,trackColor:k,trackFillColor:d,trackSize:f,vertical:V,min:p,max:M,indexFromEnd:R}=r,{roundedClasses:u}=dt(o),{backgroundColorClasses:v,backgroundColorStyles:y}=Pe(d),{backgroundColorClasses:g,backgroundColorStyles:F}=Pe(k),N=h(()=>`inset-${V.value?"block":"inline"}-${R.value?"end":"start"}`),S=h(()=>V.value?"height":"width"),H=h(()=>({[N.value]:"0%",[S.value]:"100%"})),P=h(()=>e.stop-e.start),x=h(()=>({[N.value]:L(e.start,"%"),[S.value]:L(P.value,"%")})),A=h(()=>n.value?(V.value?a.value.slice().reverse():a.value).map((w,K)=>{var B;const j=w.value!==p.value&&w.value!==M.value?L(w.position,"%"):void 0;return c("div",{key:w.value,class:z(["v-slider-track__tick",{"v-slider-track__tick--filled":w.position>=e.start&&w.position<=e.stop,"v-slider-track__tick--first":w.value===p.value,"v-slider-track__tick--last":w.value===M.value}]),style:{[N.value]:j}},[(w.label||l["tick-label"])&&c("div",{class:"v-slider-track__tick-label"},[((B=l["tick-label"])==null?void 0:B.call(l,{tick:w,index:K}))??w.label])])}):[]);return q(()=>c("div",{class:z(["v-slider-track",u.value,e.class]),style:G([{"--v-slider-track-size":L(f.value),"--v-slider-tick-size":L(b.value)},e.style])},[c("div",{class:z(["v-slider-track__background",g.value,{"v-slider-track__background--opacity":!!i.value||!d.value}]),style:{...H.value,...F.value}},null),c("div",{class:z(["v-slider-track__fill",v.value]),style:{...x.value,...y.value}},null),n.value&&c("div",{class:z(["v-slider-track__ticks",{"v-slider-track__ticks--always-show":n.value==="always"}])},[A.value])])),{}}}),Ot=I({...kt(),...Nt(),...ft(),modelValue:{type:[Number,String],default:0}},"VSlider"),Ee=ke()({name:"VSlider",props:Ot(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,t){let{slots:l,emit:r}=t;const i=ee(),{rtlClasses:a}=ie(),o=Rt(e),n=he(e,"modelValue",void 0,S=>o.roundValue(S??o.min.value)),{min:b,max:k,mousePressed:d,roundValue:f,onSliderMousedown:V,onSliderTouchstart:p,trackContainerRef:M,position:R,hasLabels:u,readonly:v}=Tt({props:e,steps:o,onSliderStart:()=>{r("start",n.value)},onSliderEnd:S=>{let{value:H}=S;const P=f(H);n.value=P,r("end",P)},onSliderMove:S=>{let{value:H}=S;return n.value=f(H)},getActiveThumb:()=>{var S;return(S=i.value)==null?void 0:S.$el}}),{isFocused:y,focus:g,blur:F}=ht(e),N=h(()=>R(n.value));return q(()=>{const S=xe.filterProps(e),H=!!(e.label||l.label||l.prepend);return E(xe,Re({class:["v-slider",{"v-slider--has-labels":!!l["tick-label"]||u.value,"v-slider--focused":y.value,"v-slider--pressed":d.value,"v-slider--disabled":e.disabled},a.value,e.class],style:e.style},S,{focused:y.value}),{...l,prepend:H?P=>{var x,A;return c(Ne,null,[((x=l.label)==null?void 0:x.call(l,P))??(e.label?E(bt,{id:P.id.value,class:"v-slider__label",text:e.label},null):void 0),(A=l.prepend)==null?void 0:A.call(l,P)])}:void 0,default:P=>{let{id:x,messagesId:A}=P;return c("div",{class:"v-slider__container",onMousedown:v.value?void 0:V,onTouchstartPassive:v.value?void 0:p},[c("input",{id:x.value,name:e.name||x.value,disabled:!!e.disabled,readonly:!!e.readonly,tabindex:"-1",value:n.value},null),E(At,{ref:M,start:0,stop:N.value},{"tick-label":l["tick-label"]}),E(Lt,{ref:i,"aria-describedby":A.value,focused:y.value,min:b.value,max:k.value,modelValue:n.value,"onUpdate:modelValue":T=>n.value=T,position:N.value,elevation:e.elevation,onFocus:g,onBlur:F,ripple:e.ripple,name:e.name},{"thumb-label":l["thumb-label"]})])}})}),{}}}),Dt=I({color:{type:Object},disabled:Boolean,hideAlpha:Boolean,...te()},"VColorPickerPreview"),jt=ae({name:"VColorPickerPreview",props:Dt(),emits:{"update:color":e=>!0},setup(e,t){let{emit:l}=t;const r=new AbortController;tt(()=>r.abort());async function i(){if(!Ce||e.disabled)return;const a=new window.EyeDropper;try{const o=await a.open({signal:r.signal}),n=se(ye(o.sRGBHex));l("update:color",{...e.color??Q,...n})}catch{}}return q(()=>{var a,o;return c("div",{class:z(["v-color-picker-preview",{"v-color-picker-preview--hide-alpha":e.hideAlpha},e.class]),style:G(e.style)},[Ce&&c("div",{class:"v-color-picker-preview__eye-dropper",key:"eyeDropper"},[E(Be,{density:"comfortable",disabled:e.disabled,icon:"$eyeDropper",variant:"plain",onClick:i},null)]),c("div",{class:"v-color-picker-preview__dot"},[c("div",{style:{background:Te(e.color??Q)}},null)]),c("div",{class:"v-color-picker-preview__sliders"},[E(Ee,{class:"v-color-picker-preview__track v-color-picker-preview__hue",modelValue:(a=e.color)==null?void 0:a.h,"onUpdate:modelValue":n=>l("update:color",{...e.color??Q,h:n}),step:0,min:0,max:360,disabled:e.disabled,thumbSize:14,trackSize:8,trackFillColor:"white",hideDetails:!0},null),!e.hideAlpha&&E(Ee,{class:"v-color-picker-preview__track v-color-picker-preview__alpha",modelValue:((o=e.color)==null?void 0:o.a)??1,"onUpdate:modelValue":n=>l("update:color",{...e.color??Q,a:n}),step:1/256,min:0,max:1,disabled:e.disabled,thumbSize:14,trackSize:8,trackFillColor:"white",hideDetails:!0},null)])])}),{}}}),It=I({swatches:{type:Array,default:()=>$t(yt)},disabled:Boolean,color:Object,maxHeight:[Number,String],...te()},"VColorPickerSwatches");function $t(e){return Object.keys(e).map(t=>{const l=e[t];return l.base?[l.base,l.darken4,l.darken3,l.darken2,l.darken1,l.lighten1,l.lighten2,l.lighten3,l.lighten4,l.lighten5]:[l.black,l.white,l.transparent]})}const Ut=ae({name:"VColorPickerSwatches",props:It(),emits:{"update:color":e=>!0},setup(e,t){let{emit:l}=t;return q(()=>c("div",{class:z(["v-color-picker-swatches",e.class]),style:G([{maxHeight:L(e.maxHeight)},e.style])},[c("div",null,[e.swatches.map(r=>c("div",{class:"v-color-picker-swatches__swatch"},[r.map(i=>{const a=ye(i),o=se(a),n=lt(a);return c("div",{class:"v-color-picker-swatches__color",onClick:()=>o&&l("update:color",o)},[c("div",{style:{background:n}},[e.color&&at(e.color,o)?E(vt,{size:"x-small",icon:"$success",color:ot(i,"#FFFFFF")>2?"white":"black"},null):void 0])])})]))])])),{}}}),Gt=I({canvasHeight:{type:[String,Number],default:150},disabled:Boolean,dotSize:{type:[Number,String],default:10},hideCanvas:Boolean,hideSliders:Boolean,hideInputs:Boolean,mode:{type:String,default:"rgba",validator:e=>Object.keys(Y).includes(e)},modes:{type:Array,default:()=>Object.keys(Y),validator:e=>Array.isArray(e)&&e.every(t=>Object.keys(Y).includes(t))},showSwatches:Boolean,swatches:Array,swatchesMaxHeight:{type:[Number,String],default:150},modelValue:{type:[Object,String]},...gt({hideHeader:!0})},"VColorPicker"),Qt=ae({name:"VColorPicker",props:Gt(),emits:{"update:modelValue":e=>!0,"update:mode":e=>!0},setup(e,t){let{slots:l}=t;const r=he(e,"mode"),i=ee(null),a=he(e,"modelValue",void 0,d=>{if(d==null||d==="")return null;let f;try{f=se(ye(d))}catch{return null}return f},d=>d?Ct(d,e.modelValue):null),o=h(()=>a.value?{...a.value,h:i.value??a.value.h}:null),{rtlClasses:n}=ie();let b=!0;ne(a,d=>{if(!b){b=!0;return}d&&(i.value=d.h)},{immediate:!0});const k=d=>{b=!1,i.value=d.h,a.value=d};return rt(()=>{e.modes.includes(r.value)||(r.value=e.modes[0])}),nt({VSlider:{color:void 0,trackColor:void 0,trackFillColor:void 0}}),q(()=>{const d=_e.filterProps(e);return E(_e,Re(d,{class:["v-color-picker",n.value,e.class],style:[{"--v-color-picker-color-hsv":Te({...o.value??Q,a:1})},e.style]}),{...l,default:()=>c(Ne,null,[!e.hideCanvas&&E(St,{key:"canvas",color:o.value,"onUpdate:color":k,disabled:e.disabled,dotSize:e.dotSize,width:e.width,height:e.canvasHeight},null),(!e.hideSliders||!e.hideInputs)&&c("div",{key:"controls",class:"v-color-picker__controls"},[!e.hideSliders&&E(jt,{key:"preview",color:o.value,"onUpdate:color":k,hideAlpha:!r.value.endsWith("a"),disabled:e.disabled},null),!e.hideInputs&&E(Ft,{key:"edit",modes:e.modes,mode:r.value,"onUpdate:mode":f=>r.value=f,color:o.value,"onUpdate:color":k,disabled:e.disabled},null)]),e.showSwatches&&E(Ut,{key:"swatches",color:o.value,"onUpdate:color":k,maxHeight:e.swatchesMaxHeight,swatches:e.swatches,disabled:e.disabled},null)])})}),{}}});export{Qt as V};
@@ -1 +0,0 @@
1
- /* empty css */import{f as r}from"./VAvatar-Cmga0vj6.js";const p=r("v-spacer","div","VSpacer");export{p as V};
@@ -1 +0,0 @@
1
- import{au as k,J as H,am as O,I as R,al as F,ac as D,K as J,g as X,h,a6 as B,z as K,a7 as Y,a as b,e as g,L as W,a1 as L,y as P,ak as N,N as U,a0 as q,a2 as V,aj as Q}from"./index-BImkz5Jx.js";import{c as Z,b as $,u as M}from"./tag-B_yWNNJD.js";import{h as p,V as _,u as ee,M as te,m as ne}from"./VAvatar-Cmga0vj6.js";import{u as oe,m as se}from"./forwardRefs-cvcnlhoK.js";import{u as ae}from"./ssrBoot-CKUX4kcb.js";const ie=e=>{const{touchstartX:o,touchendX:t,touchstartY:n,touchendY:a}=e,u=.5,s=16;e.offsetX=t-o,e.offsetY=a-n,Math.abs(e.offsetY)<u*Math.abs(e.offsetX)&&(e.left&&t<o-s&&e.left(e),e.right&&t>o+s&&e.right(e)),Math.abs(e.offsetX)<u*Math.abs(e.offsetY)&&(e.up&&a<n-s&&e.up(e),e.down&&a>n+s&&e.down(e))};function ue(e,o){var n;const t=e.changedTouches[0];o.touchstartX=t.clientX,o.touchstartY=t.clientY,(n=o.start)==null||n.call(o,{originalEvent:e,...o})}function le(e,o){var n;const t=e.changedTouches[0];o.touchendX=t.clientX,o.touchendY=t.clientY,(n=o.end)==null||n.call(o,{originalEvent:e,...o}),ie(o)}function ce(e,o){var n;const t=e.changedTouches[0];o.touchmoveX=t.clientX,o.touchmoveY=t.clientY,(n=o.move)==null||n.call(o,{originalEvent:e,...o})}function re(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const o={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:e.left,right:e.right,up:e.up,down:e.down,start:e.start,move:e.move,end:e.end};return{touchstart:t=>ue(t,o),touchend:t=>le(t,o),touchmove:t=>ce(t,o)}}function ve(e,o){var v;const t=o.value,n=t!=null&&t.parent?e.parentElement:e,a=(t==null?void 0:t.options)??{passive:!0},u=(v=o.instance)==null?void 0:v.$.uid;if(!n||!u)return;const s=re(o.value);n._touchHandlers=n._touchHandlers??Object.create(null),n._touchHandlers[u]=s,k(s).forEach(r=>{n.addEventListener(r,s[r],a)})}function de(e,o){var u,s;const t=(u=o.value)!=null&&u.parent?e.parentElement:e,n=(s=o.instance)==null?void 0:s.$.uid;if(!(t!=null&&t._touchHandlers)||!n)return;const a=t._touchHandlers[n];k(a).forEach(v=>{t.removeEventListener(v,a[v])}),delete t._touchHandlers[n]}const C={mounted:ve,unmounted:de},j=Symbol.for("vuetify:v-window"),z=Symbol.for("vuetify:v-window-group"),fe=H({continuous:Boolean,nextIcon:{type:[Boolean,String,Function,Object],default:"$next"},prevIcon:{type:[Boolean,String,Function,Object],default:"$prev"},reverse:Boolean,showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||e==="hover"},touch:{type:[Object,Boolean],default:void 0},direction:{type:String,default:"horizontal"},modelValue:null,disabled:Boolean,selectedClass:{type:String,default:"v-window-item--active"},mandatory:{type:[Boolean,String],default:"force"},...$(),...Z(),...O()},"VWindow"),xe=R()({name:"VWindow",directives:{vTouch:C},props:fe(),emits:{"update:modelValue":e=>!0},setup(e,o){let{slots:t}=o;const{themeClasses:n}=F(e),{isRtl:a}=D(),{t:u}=J(),s=p(e,z),v=X(),r=h(()=>a.value?!e.reverse:e.reverse),d=B(!1),y=h(()=>{const i=e.direction==="vertical"?"y":"x",f=(r.value?!d.value:d.value)?"-reverse":"";return`v-window-${i}${f}-transition`}),x=B(0),T=X(void 0),m=h(()=>s.items.value.findIndex(i=>s.selected.value.includes(i.id)));K(m,(i,c)=>{const f=s.items.value.length,w=f-1;f<=2?d.value=i<c:i===w&&c===0?d.value=!0:i===0&&c===w?d.value=!1:d.value=i<c}),N(j,{transition:y,isReversed:d,transitionCount:x,transitionHeight:T,rootRef:v});const l=Y(()=>e.continuous||m.value!==0),I=Y(()=>e.continuous||m.value!==s.items.value.length-1);function S(){l.value&&s.prev()}function E(){I.value&&s.next()}const A=h(()=>{const i=[],c={icon:a.value?e.nextIcon:e.prevIcon,class:`v-window__${r.value?"right":"left"}`,onClick:s.prev,"aria-label":u("$vuetify.carousel.prev")};i.push(l.value?t.prev?t.prev({props:c}):b(_,c,null):g("div",null,null));const f={icon:a.value?e.prevIcon:e.nextIcon,class:`v-window__${r.value?"left":"right"}`,onClick:s.next,"aria-label":u("$vuetify.carousel.next")};return i.push(I.value?t.next?t.next({props:f}):b(_,f,null):g("div",null,null)),i}),G=h(()=>e.touch===!1?e.touch:{...{left:()=>{r.value?S():E()},right:()=>{r.value?E():S()},start:c=>{let{originalEvent:f}=c;f.stopPropagation()}},...e.touch===!0?{}:e.touch});return M(()=>W(b(e.tag,{ref:v,class:P(["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover"},n.value,e.class]),style:L(e.style)},{default:()=>{var i,c;return[g("div",{class:"v-window__container",style:{height:T.value}},[(i=t.default)==null?void 0:i.call(t,{group:s}),e.showArrows!==!1&&g("div",{class:"v-window__controls"},[A.value])]),(c=t.additional)==null?void 0:c.call(t,{group:s})]}}),[[C,G.value]])),{group:s}}}),he=H({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},...$(),...ne(),...se()},"VWindowItem"),Be=R()({name:"VWindowItem",directives:{vTouch:C},props:he(),emits:{"group:selected":e=>!0},setup(e,o){let{slots:t}=o;const n=U(j),a=ee(e,z),{isBooted:u}=ae();if(!n||!a)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const s=B(!1),v=h(()=>u.value&&(n.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function r(){!s.value||!n||(s.value=!1,n.transitionCount.value>0&&(n.transitionCount.value-=1,n.transitionCount.value===0&&(n.transitionHeight.value=void 0)))}function d(){var l;s.value||!n||(s.value=!0,n.transitionCount.value===0&&(n.transitionHeight.value=V((l=n.rootRef.value)==null?void 0:l.clientHeight)),n.transitionCount.value+=1)}function y(){r()}function x(l){s.value&&q(()=>{!v.value||!s.value||!n||(n.transitionHeight.value=V(l.clientHeight))})}const T=h(()=>{const l=n.isReversed.value?e.reverseTransition:e.transition;return v.value?{name:typeof l!="string"?n.transition.value:l,onBeforeEnter:d,onAfterEnter:r,onEnterCancelled:y,onBeforeLeave:d,onAfterLeave:r,onLeaveCancelled:y,onEnter:x}:!1}),{hasContent:m}=oe(e,a.isSelected);return M(()=>b(te,{transition:T.value,disabled:!u.value},{default:()=>{var l;return[W(g("div",{class:P(["v-window-item",a.selectedClass.value,e.class]),style:L(e.style)},[m.value&&((l=t.default)==null?void 0:l.call(t))]),[[Q,a.isSelected.value]])]}})),{groupItem:a}}});export{xe as V,Be as a,he as b,fe as m};
@@ -1 +0,0 @@
1
- import{_ as ne,H as E,A as se,B as H,n as D,g as u,z as T,r as ie,l as M,o as m,F as O,s as re,y as Q,e as L,c as j,m as A,a,f as g,t as U,p as K,b as W,h as F,w as f,j as P,q as ue}from"./index-BImkz5Jx.js";import{u as me}from"./logos-BswdveCV.js";import{_ as de}from"./ConfirmDialog-DY_kUHLG.js";import{_ as ce,V as pe}from"./ConnectedLayout-UWjiYBNw.js";import{a as _}from"./webmail-CdU6CD9b.js";import{c as G,V as N,a as ve,j as fe}from"./VAvatar-Cmga0vj6.js";import{V as Y}from"./VSpacer-DinPiXs9.js";import{V as be,r as xe}from"./VForm-D5iPGkde.js";import{V as ge,b as ye,a as Me}from"./VCard-CxH9DWoK.js";import{V as Ve}from"./VTextField-XoGTj1KG.js";import{V as _e}from"./VDialog-BcTg7w6P.js";import{V as he}from"./VMenu-gUG70-zD.js";import{V as Ce,a as R}from"./forwardRefs-cvcnlhoK.js";import"./VToolbar-CFZfqeOr.js";import"./tag-B_yWNNJD.js";import"./VProgressCircular-BtOPiGCg.js";import"./VContainer-B46caNs1.js";/* empty css */import"./VApp-CKP-6zGP.js";import"./layout-C5FyYCHK.js";import"./ssrBoot-CKUX4kcb.js";import"./layout.store-NXWtFIwL.js";import"./global.store-DbkcI5o2.js";import"./VBadge-CixeK87a.js";import"./VRow-ozg66L7j.js";import"./VSheet-BNx2X4Mk.js";import"./VInput-CoDJzvaW.js";const we=["onClick","onMouseover","onMouseleave"],ke={key:0,class:"font-weight-bold"},Ue={key:1},$e={key:0,class:"font-weight-bold"},Be={key:1},Le={__name:"MailboxList",props:E({mailboxes:{type:Array,default:null},lightMode:{type:Boolean,default:!1},compact:{type:Boolean,default:!1},unseenCounters:{type:Boolean,default:!0},allowUnselect:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:E(["update:modelValue"],["update:modelValue"]),setup(S,{emit:y}){const t=S,n=se(S,"modelValue"),i=y,V=H(),r=D(),$={inbox:"mdi-inbox",draft:"mdi-file",junk:"mdi-fire",sent:"mdi-email-fast-outline",trash:"mdi-trash-can-outline",normal:"mdi-folder-outline"},d=u(null),h=u({}),c=u({});function b(e){return e.label.split("/").pop()}function B(e){return d.value===null&&(d.value=e.unseen),d.value}function s(e,C){h.value[e.name]=C}function o(e){return n.value===e.name?"bg-primary-lighten-1":t.lightMode?h.value[e.name]?"bg-primary":"bg-white":h.value[e.name]?"bg-primary-lighten-1":"bg-primary"}function p(e){return c.value[e.name]}function q(e){c.value[e.name]||(c.value[e.name]=!1),c.value[e.name]=!c.value[e.name],c.value[e.name]&&!e.sub.length&&_.getUserMailboxes(e.name).then(C=>{e.sub=C.data.mailboxes})}function I(e){t.allowUnselect&&e===n.value?i("update:modelValue",null):i("update:modelValue",e)}return T(()=>r.mbCounterKey,()=>{_.getUserMailboxUnseen(V.query.mailbox).then(e=>{d.value=e.data.counter})}),(e,C)=>{const z=ie("MailboxList",!0);return m(),M("div",null,[(m(!0),M(O,null,re(t.mailboxes,l=>(m(),M("div",{key:l.name,class:Q(["pl-3 text-body-2",{"py-1":!t.compact}])},[L("div",{class:Q([o(l),"d-flex mailbox pa-1 align-center"]),onClick:w=>I(l.name),onMouseover:w=>s(l,!0),onMouseleave:w=>s(l,!1)},[a(G,{icon:$[l.type],class:"mr-4"},null,8,["icon"]),l.name===g(V).query.mailbox?(m(),M(O,{key:0},[d.value>0?(m(),M("span",ke,U(b(l))+" ("+U(B(l))+") ",1)):(m(),M("span",Ue,U(b(l)),1))],64)):(m(),M(O,{key:1},[l.unseen>0?(m(),M("span",$e,U(b(l))+" ("+U(l.unseen)+") ",1)):(m(),M("span",Be,U(b(l)),1))],64)),a(Y),l.sub?(m(),j(N,{key:2,icon:p(l)?"mdi-minus":"mdi-plus",size:"xsmall",variant:"flat",color:"transparent",onClick:K(w=>q(l),["stop"])},null,8,["icon","onClick"])):A("",!0)],42,we),p(l)&&l.sub&&l.sub.length?(m(),j(z,{key:0,modelValue:n.value,"onUpdate:modelValue":C[0]||(C[0]=w=>n.value=w),mailboxes:l.sub,class:"mt-1","light-mode":t.lightMode,compact:t.compact},null,8,["modelValue","mailboxes","light-mode","compact"])):A("",!0)],2))),128))])}}},J=ne(Le,[["__scopeId","data-v-62d5beb0"]]),Ne={class:"mb-2 rounded-lg"},Se={__name:"MailboxForm",props:{userMailboxes:Array,mailbox:{type:String,default:null},hdelimiter:{type:String,default:null}},emits:["close","mailboxRenamed"],setup(S,{emit:y}){const t=S,n=y,{$gettext:i}=W(),{displayNotification:V}=D(),r=u({}),$=u(),d=u(!1),h=F(()=>t.mailbox?i("Edit mailbox"):i("Create new mailbox")),c=F(()=>t.mailbox?i("Update"):i("Create")),b=()=>{r.value={},n("close")},B=async()=>{const{valid:s}=await $.value.validate();if(s){d.value=!0;try{const o={...r.value};t.mailbox?(o.oldname=t.mailbox,await _.renameUserMailbox(o),V({msg:i("Mailbox renamed")}),n("mailboxRenamed",`${o.parent_mailbox}${t.hdelimiter}${o.name}`)):(await _.createUserMailbox(o),V({msg:i("Mailbox created")})),b()}finally{d.value=!1}}};return T(()=>t.mailbox,s=>{if(s){const o=t.mailbox.split(t.hdelimiter);r.value.name=o.slice(-1)[0],r.value.parent_mailbox=o.slice(0,-1).join(t.hdelimiter)}else r.value={}},{immediate:!0}),(s,o)=>(m(),j(Me,{title:h.value},{default:f(()=>[a(ge,null,{default:f(()=>[a(be,{ref_key:"formRef",ref:$},{default:f(()=>[a(Ve,{modelValue:r.value.name,"onUpdate:modelValue":o[0]||(o[0]=p=>r.value.name=p),label:g(i)("Name"),variant:"outlined",density:"compact",rules:[g(xe).required]},null,8,["modelValue","label","rules"]),L("div",Ne,[L("h4",null,U(g(i)("Parent mailbox")),1),a(J,{modelValue:r.value.parent_mailbox,"onUpdate:modelValue":o[1]||(o[1]=p=>r.value.parent_mailbox=p),"active-mailbox":t.parent,mailboxes:t.userMailboxes,"light-mode":"",compact:"","unseen-counters":!1,"allow-unselect":""},null,8,["modelValue","active-mailbox","mailboxes"])])]),_:1},512)]),_:1}),a(ye,null,{default:f(()=>[a(Y),a(N,{text:g(i)("Close"),variant:"flat",loading:d.value,onClick:b},null,8,["text","loading"]),a(N,{text:c.value,variant:"tonal",color:"primary",loading:d.value,onClick:B},null,8,["text","loading"])]),_:1})]),_:1},8,["title"]))}},qe={class:"d-flex align-center"},Fe={class:"d-flex justify-center mb-4"},Ie={class:"border-t-sm d-flex align-center bg-grey"},ua={__name:"WebmailLayout",async setup(S){let y,t;const{$gettext:n}=W(),i=H(),V=ue(),r=D(),{menuLogoPath:$}=me(),d=u(),h=u(!0),c=u(!1),b=u(null),B=u(null),s=u(null),o=u(i.query.mailbox||"INBOX"),p=u(!1),q=u([]),I=F(()=>["INBOX"].includes(i.query.mailbox||"INBOX")),e=F(()=>s.value.usage<50?"info":s.value.usage<80?"warning":"error"),C=F(()=>`${s.value.current} / ${s.value.limit} (${s.value.usage}%)`);function z(x){V.push({name:"MailboxView",query:{mailbox:x}}),_.getUserMailboxQuota(x).then(v=>{s.value=v.data})}const l=async()=>{const x=await _.getUserMailboxes();q.value=x.data.mailboxes,B.value=x.data.hdelimiter},w=()=>{V.push({name:"ComposeEmailView"})},Z=()=>{p.value=!1,b.value=null,l()},ee=()=>{p.value=!0},ae=()=>{b.value=o.value,p.value=!0},X=x=>{o.value=x,V.push({name:"MailboxView",query:{mailbox:x}})},le=async()=>{await _.compressUserMailbox({name:o.value}),r.displayNotification({msg:n("Mailbox compressed")})},te=async()=>{await d.value.open(n("Warning"),n("Delete this mailbox?"),{color:"warning",agreeLabel:n("Yes"),cancelLabel:n("No")})&&(await _.deleteUserMailbox({name:o.value}),r.displayNotification({msg:n("Mailbox deleted")}),X("INBOX"))};T(()=>r.dataKey,()=>{l()}),[y,t]=P(()=>l()),await y,t();const oe=([y,t]=P(()=>_.getUserMailboxQuota(i.query.mailbox||"INBOX")),y=await y,t(),y);return s.value=oe.data,(x,v)=>(m(),M(O,null,[a(ce,null,{navbar:f(()=>[a(pe,{modelValue:h.value,"onUpdate:modelValue":v[2]||(v[2]=k=>h.value=k),rail:c.value,permanent:"",color:"primary",app:""},{prepend:f(()=>[L("div",qe,[a(fe,{src:g($),"max-width":"190",class:"logo"},null,8,["src"]),a(N,{icon:c.value?"mdi-chevron-right":"mdi-chevron-left",variant:"text",onClick:v[0]||(v[0]=K(k=>c.value=!c.value,["stop"]))},null,8,["icon"])]),L("div",Fe,[a(N,{text:g(n)("Compose"),color:"secondary",variant:"flat","prepend-icon":"mdi-pencil",onClick:w},null,8,["text"])])]),append:f(()=>[L("div",Ie,[a(N,{class:"ml-2",variant:"text",icon:"",size:"small"},{default:f(()=>[a(G,{icon:"mdi-cog"}),a(he,{activator:"parent"},{default:f(()=>[a(Ce,{density:"compact"},{default:f(()=>[a(R,{title:g(n)("Create a new mailbox"),"prepend-icon":"mdi-plus",onClick:ee},null,8,["title"]),a(R,{title:g(n)("Edit this mailbox"),"prepend-icon":"mdi-pencil",disabled:I.value,onClick:ae},null,8,["title","disabled"]),a(R,{title:g(n)("Delete this mailbox"),"prepend-icon":"mdi-trash-can",disabled:I.value,onClick:te},null,8,["title","disabled"]),a(R,{title:g(n)("Compress this mailbox"),"prepend-icon":"mdi-folder-zip-outline",onClick:le},null,8,["title"])]),_:1})]),_:1})]),_:1}),s.value?(m(),j(ve,{key:0,color:e.value,"model-value":s.value.usage,title:C.value},null,8,["color","model-value","title"])):A("",!0)])]),default:f(()=>[a(J,{modelValue:o.value,"onUpdate:modelValue":[v[1]||(v[1]=k=>o.value=k),z],mailboxes:q.value,class:"mr-2"},null,8,["modelValue","mailboxes"])]),_:1},8,["modelValue","rail"])]),_:1}),a(_e,{modelValue:p.value,"onUpdate:modelValue":v[4]||(v[4]=k=>p.value=k),"max-width":"800"},{default:f(()=>[a(Se,{"user-mailboxes":q.value,mailbox:b.value,hdelimiter:B.value,onMailboxRenamed:X,onClose:v[3]||(v[3]=k=>Z())},null,8,["user-mailboxes","mailbox","hdelimiter"])]),_:1},8,["modelValue"]),a(de,{ref_key:"confirm",ref:d},null,512)],64))}};export{ua as default};
@@ -1 +0,0 @@
1
- import{g as h,b as g,c as C,o as w,w as l,a as o,p as k,e as v,t as r,x as _,k as p,f as s,n as b}from"./index-BImkz5Jx.js";import{V as N,r as y}from"./VForm-D5iPGkde.js";import{c as F,V as U,b as B,a as T}from"./VCard-CxH9DWoK.js";import{V as L}from"./VAlert-BuaaYN2h.js";import{V as R}from"./VFileInput-BC4yAygd.js";import{V as $}from"./VTextField-XoGTj1KG.js";import{V as j}from"./VSwitch-DwxdeAEq.js";import{V as q}from"./VSpacer-DinPiXs9.js";import{V as x}from"./VAvatar-Cmga0vj6.js";const D={class:"headline"},I={class:"m-label"},A={class:"m-label"},K={__name:"ImportForm",props:{helpText:{type:String,default:""},title:{type:String,default:""}},emits:["close","submit"],setup(f,{expose:V,emit:i}){const n=i,t=h({}),u=h(),{$gettext:e}=g();function c(){t.value={},n("close")}async function S(){const{valid:d}=await u.value.validate();if(!d)return;const a=new FormData;a.append("sourcefile",t.value.sourcefile),t.value.sepchar&&a.append("sepchar",t.value.sepchar),t.value.continue_if_exists&&a.append("continue_if_exists",t.value.continue_if_exists),n("submit",a,t.value)}return V({close:c}),(d,a)=>(w(),C(T,null,{default:l(()=>[o(N,{ref_key:"vform",ref:u,onSubmit:k(S,["prevent"])},{default:l(()=>[o(F,null,{default:l(()=>[v("span",D,r(f.title),1)]),_:1}),o(U,null,{default:l(()=>[o(L,{variant:"tonal",type:"info",class:"mb-2"},{default:l(()=>[p(r(s(e)("Provide a CSV file where lines respect one of the following formats:"))+" ",1),_(d.$slots,"help"),p(" "+r(s(e)("The first element of each line is mandatory and must be equal to one of the previous values."))+" "+r(s(e)("You can use a different character as separator.")),1)]),_:3}),v("label",I,r(s(e)("Select file")),1),o(R,{modelValue:t.value.sourcefile,"onUpdate:modelValue":a[0]||(a[0]=m=>t.value.sourcefile=m),accept:"text/csv","truncate-length":"15",variant:"outlined",density:"compact",rules:[s(y).required]},null,8,["modelValue","rules"]),v("label",A,r(s(e)("Separator")),1),o($,{modelValue:t.value.sepchar,"onUpdate:modelValue":a[1]||(a[1]=m=>t.value.sepchar=m),rules:[s(y).required],variant:"outlined",density:"compact"},null,8,["modelValue","rules"]),o(j,{modelValue:t.value.continue_if_exists,"onUpdate:modelValue":a[2]||(a[2]=m=>t.value.continue_if_exists=m),label:s(e)("Continue on error"),color:"primary",density:"compact",hint:s(e)("Don't treat duplicated objects as errors"),"persistent-hint":""},null,8,["modelValue","label","hint"]),_(d.$slots,"extraFields",{form:t.value})]),_:3}),o(B,null,{default:l(()=>[o(q),o(x,{onClick:c},{default:l(()=>[p(r(s(e)("Close")),1)]),_:1}),o(x,{color:"primary",type:"submit"},{default:l(()=>[p(r(s(e)("Import")),1)]),_:1})]),_:1})]),_:3},512)]),_:3}))}},Q=()=>{function f(i,n,t){if(!i&&!i.length){b().displayNotification({msg:t("No data to export"),type:"warning"});return}const u=new Blob([i],{type:"text/csv"}),e=document.createElement("a");e.href=URL.createObjectURL(u),e.download=`modoboa-${n}.csv`,e.click(),URL.revokeObjectURL(e.href)}function V(i,n,t,u){i.importFromCSV(n).then(e=>{const c=b();e.data.status?(c.displayNotification({msg:e.data.message}),t.value.close()):c.displayNotification({msg:e.data.message,type:"error"})}).catch(()=>{b().displayNotification({msg:u("CSV seems to be badly formatted"),type:"error"})})}return{exportContent:f,importContent:V}};export{K as _,Q as i};