modoboa 2.4.5__py3-none-any.whl → 2.4.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- modoboa/core/api/v2/serializers.py +1 -1
- modoboa/frontend_dist/assets/AccountAliasForm-kM_uu76m.js +1 -0
- modoboa/frontend_dist/assets/AccountEditView-BdP-Lrlr.js +1 -0
- modoboa/frontend_dist/assets/AccountLayout-Bw0etAuB.js +1 -0
- modoboa/frontend_dist/assets/{AccountPasswordSubForm-CcDzcjPb.js → AccountPasswordSubForm-D7zaiyOj.js} +1 -1
- modoboa/frontend_dist/assets/AccountView-Du-GTL6A.js +1 -0
- modoboa/frontend_dist/assets/{AddressBook-B6Sa6mjt.js → AddressBook-Bsb173uq.js} +1 -1
- modoboa/frontend_dist/assets/AdminLayout-Bkpt_-A8.js +1 -0
- modoboa/frontend_dist/assets/AlarmsView-DSCq8RAc.js +1 -0
- modoboa/frontend_dist/assets/AliasEditView-QWMq-R1h.js +1 -0
- modoboa/frontend_dist/assets/AliasRecipientForm-rO7zW0eC.js +1 -0
- modoboa/frontend_dist/assets/AliasView-CZni2HPw.js +1 -0
- modoboa/frontend_dist/assets/AuditTrailView-DMqo60nl.js +1 -0
- modoboa/frontend_dist/assets/{CalendarView-yM5HGvWM.js → CalendarView-C32PuIes.js} +1 -1
- modoboa/frontend_dist/assets/ChoiceField-3mhgf6ob.js +1 -0
- modoboa/frontend_dist/assets/{ComposeEmailForm-DLCkPGvB.js → ComposeEmailForm-DkZQzxAe.js} +1 -1
- modoboa/frontend_dist/assets/ComposeEmailView-BNjj7sIK.js +1 -0
- modoboa/frontend_dist/assets/ConfirmDialog-q002W_T5.js +1 -0
- modoboa/frontend_dist/assets/ConnectedLayout-CuQwWdiY.js +1 -0
- modoboa/frontend_dist/assets/CreationForm-i9httQC1.js +1 -0
- modoboa/frontend_dist/assets/DashboardView-q7Q7yMK2.js +1 -0
- modoboa/frontend_dist/assets/{DomainAdminList-C3iwNb43.js → DomainAdminList-eJFjURqQ.js} +1 -1
- modoboa/frontend_dist/assets/DomainEditView-Dry1PQg1.js +1 -0
- modoboa/frontend_dist/assets/{DomainTransportForm-Blk4sH4Y.js → DomainTransportForm-Brvt1I8k.js} +1 -1
- modoboa/frontend_dist/assets/DomainView-BrQ0GZ67.js +5 -0
- modoboa/frontend_dist/assets/DomainsView-yBu065sw.js +1 -0
- modoboa/frontend_dist/assets/EmailField-CK1ZbR3C.js +1 -0
- modoboa/frontend_dist/assets/{EmailView-Dfxt2DGx.js → EmailView-BTfAqAzl.js} +1 -1
- modoboa/frontend_dist/assets/EmptyLayout-CZDgHz_u.js +1 -0
- modoboa/frontend_dist/assets/{FiltersView-meSoOehe.js → FiltersView-B7hCW2rz.js} +1 -1
- modoboa/frontend_dist/assets/ForwardEmailView-AWMrhg32.js +1 -0
- modoboa/frontend_dist/assets/{HtmlEditor-B_VCbd5z.js → HtmlEditor-DfoGrUHw.js} +1 -1
- modoboa/frontend_dist/assets/IdentitiesView-DUILBzSE.js +1 -0
- modoboa/frontend_dist/assets/InformationView-BidXYqOD.js +1 -0
- modoboa/frontend_dist/assets/LoadingData-BT9tD67O.js +1 -0
- modoboa/frontend_dist/assets/{LoginCallbackView-CVMpLe0f.js → LoginCallbackView-R1BJ5xBt.js} +1 -1
- modoboa/frontend_dist/assets/{LoginView-CUyc88IC.js → LoginView-GA-9tjIM.js} +1 -1
- modoboa/frontend_dist/assets/MailboxView-BUaJT0kp.js +1 -0
- modoboa/frontend_dist/assets/MenuItems-CaGz5Av4.js +1 -0
- modoboa/frontend_dist/assets/MessagesView-L8mRbK29.js +1 -0
- modoboa/frontend_dist/assets/MigrationsView-D46w_hKc.js +1 -0
- modoboa/frontend_dist/assets/ParametersForm-CYThYAHD.js +1 -0
- modoboa/frontend_dist/assets/ParametersView-D337Sezo.js +1 -0
- modoboa/frontend_dist/assets/ParametersView-DBCbbCEi.js +1 -0
- modoboa/frontend_dist/assets/{ProviderEditView-CIYmWpgI.js → ProviderEditView-BECcPRk7.js} +1 -1
- modoboa/frontend_dist/assets/ProviderGeneralForm-DwCmFqXI.js +1 -0
- modoboa/frontend_dist/assets/ProvidersView-B4g2wVbq.js +1 -0
- modoboa/frontend_dist/assets/ReplyEmailView-IwPYuVp5.js +1 -0
- modoboa/frontend_dist/assets/ResourcesForm-k0MAKh89.js +1 -0
- modoboa/frontend_dist/assets/{SettingsView-DeNxODAJ.js → SettingsView-Sp1ExY72.js} +2 -2
- modoboa/frontend_dist/assets/StatisticsView-CjYZKBmP.js +1 -0
- modoboa/frontend_dist/assets/TimeSerieChart-CjiX490n.js +1 -0
- modoboa/frontend_dist/assets/UserLayout-BQ7D5b4m.js +1 -0
- modoboa/frontend_dist/assets/{VAlert-DMLG8wNi.js → VAlert-BiAap6Bx.js} +1 -1
- modoboa/frontend_dist/assets/VApp-tsfSFSQl.js +1 -0
- modoboa/frontend_dist/assets/{VAutocomplete-QADGK4Mr.js → VAutocomplete-CfnbXRi6.js} +1 -1
- modoboa/frontend_dist/assets/{VAvatar-BLlAVJo2.js → VAvatar-x_79C0tA.js} +1 -1
- modoboa/frontend_dist/assets/{VCard-CgG7Sw1Z.js → VCard-DRptUN8Y.js} +1 -1
- modoboa/frontend_dist/assets/VCheckbox-DTbWq72R.js +1 -0
- modoboa/frontend_dist/assets/VCheckboxBtn-xrhfoOlo.js +1 -0
- modoboa/frontend_dist/assets/{VChip-DtLoN5pb.js → VChip-Def9BYoN.js} +1 -1
- modoboa/frontend_dist/assets/VColorPicker-D7UlInpB.js +1 -0
- modoboa/frontend_dist/assets/{VContainer-CWsXUJRX.js → VContainer-CC8lqRXa.js} +1 -1
- modoboa/frontend_dist/assets/VDataTable-CYPG0MtF.js +1 -0
- modoboa/frontend_dist/assets/{VDataTableServer-D_lPUXtC.js → VDataTableServer-DyIOcZiN.js} +1 -1
- modoboa/frontend_dist/assets/VDataTableVirtual-B6iCEfal.js +1 -0
- modoboa/frontend_dist/assets/VDialog-DzctVbsK.js +1 -0
- modoboa/frontend_dist/assets/{VExpansionPanels--ynjpeWA.js → VExpansionPanels-DpJzLCB-.js} +1 -1
- modoboa/frontend_dist/assets/{VFileInput-B3-nE2RJ.js → VFileInput-C7DE4B9B.js} +1 -1
- modoboa/frontend_dist/assets/VForm-CXf-xKYz.js +1 -0
- modoboa/frontend_dist/assets/{VMenu-ds-uYle9.js → VMenu-DTm7W1Hp.js} +1 -1
- modoboa/frontend_dist/assets/{VPicker-CNDT8tbx.js → VPicker-F4Rx1F-m.js} +1 -1
- modoboa/frontend_dist/assets/{VProgressCircular--49P1TOW.js → VProgressCircular-ubzZW5PC.js} +1 -1
- modoboa/frontend_dist/assets/VRadioGroup-Bb36EvlG.js +1 -0
- modoboa/frontend_dist/assets/{VRow-CnohEaAX.js → VRow-B-csPNw7.js} +1 -1
- modoboa/frontend_dist/assets/{VSelect-BiP6crf0.js → VSelect-tV4GZAtn.js} +1 -1
- modoboa/frontend_dist/assets/VSelectionControl-Bdgm37Tl.js +1 -0
- modoboa/frontend_dist/assets/VSheet-BV83IblO.js +1 -0
- modoboa/frontend_dist/assets/VSpacer-BcQnH0oL.js +1 -0
- modoboa/frontend_dist/assets/{VSwitch-PAZTCa-8.js → VSwitch-HiyBjUWI.js} +1 -1
- modoboa/frontend_dist/assets/{VTable-Dtu3KidF.js → VTable-B-HE2nmK.js} +1 -1
- modoboa/frontend_dist/assets/VTabs-DCb8kj6G.js +1 -0
- modoboa/frontend_dist/assets/{VTextField-4NZ7IznA.js → VTextField-CWm47OUI.js} +1 -1
- modoboa/frontend_dist/assets/{VTextarea-BXNl7Mt9.js → VTextarea-Bry3a299.js} +1 -1
- modoboa/frontend_dist/assets/{VToolbar-J3yNZ_TP.js → VToolbar-Cd2iSn8H.js} +1 -1
- modoboa/frontend_dist/assets/{VWindowItem-D0hjETv2.js → VWindowItem-pE5PWxHf.js} +1 -1
- modoboa/frontend_dist/assets/WebmailLayout-hFexxk4W.js +1 -0
- modoboa/frontend_dist/assets/{admin-B-kSn9RO.js → admin-CjK02gmr.js} +1 -1
- modoboa/frontend_dist/assets/{aliases-DoKIh-Gw.js → aliases-CTtmxHck.js} +1 -1
- modoboa/frontend_dist/assets/{contacts-BVgP-Nvk.js → contacts-HeZ9it3d.js} +1 -1
- modoboa/frontend_dist/assets/{domains-BKPjvqA_.js → domains-HueJ9pRR.js} +1 -1
- modoboa/frontend_dist/assets/{domains.store-Ck9BRSQQ.js → domains.store-BAoaJY6i.js} +1 -1
- modoboa/frontend_dist/assets/{filter-C-VZW-D6.js → filter-DaBUD6Rp.js} +1 -1
- modoboa/frontend_dist/assets/{forwardRefs-DulMu961.js → forwardRefs-BSESyuUp.js} +1 -1
- modoboa/frontend_dist/assets/{global.store-DKpKwgQU.js → global.store-C4iiNxy1.js} +1 -1
- modoboa/frontend_dist/assets/{importExport-DpEAqdAr.js → importExport-fHtEeUon.js} +1 -1
- modoboa/frontend_dist/assets/{index-BA5nENc7.js → index-CTxlYqj4.js} +25 -25
- modoboa/frontend_dist/assets/{index-DSETu0oI.js → index-a9uUi1ey.js} +1 -1
- modoboa/frontend_dist/assets/layout-BFr6o7er.js +1 -0
- modoboa/frontend_dist/assets/{layout.store-BpB_lwEX.js → layout.store-3tdRwdnE.js} +1 -1
- modoboa/frontend_dist/assets/{logs-DYj_x8NI.js → logs-B92gHEZQ.js} +1 -1
- modoboa/frontend_dist/assets/{parameters-D7GvY13G.js → parameters-1TAbI5b7.js} +1 -1
- modoboa/frontend_dist/assets/{parameters.store-OjyEFwc3.js → parameters.store-BXTaWfO7.js} +1 -1
- modoboa/frontend_dist/assets/{permissions-DKbaVxSS.js → permissions-CbdfpdU1.js} +1 -1
- modoboa/frontend_dist/assets/{ssrBoot-CTcujE2n.js → ssrBoot-DGgZQEVC.js} +1 -1
- modoboa/frontend_dist/assets/{tag-BQLfwzbO.js → tag-Dx3OexMp.js} +1 -1
- modoboa/frontend_dist/assets/{webmail-Cgnpe0EQ.js → webmail-CGWB-wMk.js} +1 -1
- modoboa/frontend_dist/config.json +1 -1
- modoboa/frontend_dist/index.html +1 -1
- {modoboa-2.4.5.dist-info → modoboa-2.4.6.dist-info}/METADATA +1 -1
- {modoboa-2.4.5.dist-info → modoboa-2.4.6.dist-info}/RECORD +116 -117
- modoboa/frontend_dist/assets/AccountAliasForm-Dnpp9_-z.js +0 -1
- modoboa/frontend_dist/assets/AccountEditView-BQaSlpsL.js +0 -1
- modoboa/frontend_dist/assets/AccountLayout-DG_Co_SZ.js +0 -1
- modoboa/frontend_dist/assets/AccountView-BoEGwq9z.js +0 -1
- modoboa/frontend_dist/assets/AdminLayout-DgwlSRlC.js +0 -1
- modoboa/frontend_dist/assets/AlarmsView-DB_IXF_s.js +0 -1
- modoboa/frontend_dist/assets/AliasEditView-Drs6U8vs.js +0 -1
- modoboa/frontend_dist/assets/AliasRecipientForm-hHFnWu8k.js +0 -1
- modoboa/frontend_dist/assets/AliasView-SUMxaGUe.js +0 -1
- modoboa/frontend_dist/assets/AuditTrailView-cSABZ3TO.js +0 -1
- modoboa/frontend_dist/assets/ChoiceField-BRXxbiWf.js +0 -1
- modoboa/frontend_dist/assets/ComposeEmailView-0l455MSI.js +0 -1
- modoboa/frontend_dist/assets/ConfirmDialog-C_e6hlR9.js +0 -1
- modoboa/frontend_dist/assets/ConnectedLayout-DZLdEDMc.js +0 -1
- modoboa/frontend_dist/assets/CreationForm-CM6XIMTJ.js +0 -1
- modoboa/frontend_dist/assets/DashboardView-EbwsBsvl.js +0 -1
- modoboa/frontend_dist/assets/DomainEditView-DChdOeWs.js +0 -1
- modoboa/frontend_dist/assets/DomainView-C_rpTRuB.js +0 -5
- modoboa/frontend_dist/assets/DomainsView-CSq9Qqa2.js +0 -1
- modoboa/frontend_dist/assets/EmailField-D44CsIWb.js +0 -1
- modoboa/frontend_dist/assets/EmptyLayout-kuBMnfgD.js +0 -1
- modoboa/frontend_dist/assets/ForwardEmailView-DJfvMH7g.js +0 -1
- modoboa/frontend_dist/assets/IdentitiesView-SddVlIrY.js +0 -1
- modoboa/frontend_dist/assets/InformationView-D_JM2475.js +0 -1
- modoboa/frontend_dist/assets/LoadingData-AOVv_iWB.js +0 -1
- modoboa/frontend_dist/assets/MailboxView-D3q8yP3G.js +0 -1
- modoboa/frontend_dist/assets/MenuItems-Cuf8-V0W.js +0 -1
- modoboa/frontend_dist/assets/MessagesView-CBspcRFp.js +0 -1
- modoboa/frontend_dist/assets/MigrationsView-C4_XQZW3.js +0 -1
- modoboa/frontend_dist/assets/ParametersForm-CMSQqJgF.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-CumtciiZ.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-DJWYKIfG.js +0 -1
- modoboa/frontend_dist/assets/ProviderGeneralForm-B3DP3kaS.js +0 -1
- modoboa/frontend_dist/assets/ProvidersView-Dob13upM.js +0 -1
- modoboa/frontend_dist/assets/ReplyEmailView-BYUjcU54.js +0 -1
- modoboa/frontend_dist/assets/ResourcesForm-BsBHUrsM.js +0 -1
- modoboa/frontend_dist/assets/StatisticsView-5VaSkD9s.js +0 -1
- modoboa/frontend_dist/assets/TimeSerieChart-BdFmjRbO.js +0 -1
- modoboa/frontend_dist/assets/UserLayout-CF0xC6tf.js +0 -1
- modoboa/frontend_dist/assets/VApp-BkjZPyh4.js +0 -1
- modoboa/frontend_dist/assets/VCheckbox-DPPPkFg8.js +0 -1
- modoboa/frontend_dist/assets/VCheckboxBtn-Bxy-LfII.js +0 -1
- modoboa/frontend_dist/assets/VColorPicker-Djl1hnN2.js +0 -1
- modoboa/frontend_dist/assets/VDataTable-C75c5ugx.js +0 -1
- modoboa/frontend_dist/assets/VDataTableVirtual-BR3-3ZhB.js +0 -1
- modoboa/frontend_dist/assets/VDialog-BZ4gm6K7.js +0 -1
- modoboa/frontend_dist/assets/VForm-B967suxO.js +0 -1
- modoboa/frontend_dist/assets/VRadioGroup-Bq0AGvQn.js +0 -1
- modoboa/frontend_dist/assets/VSelectionControl-CCdZN5dG.js +0 -1
- modoboa/frontend_dist/assets/VSheet-CajYOL8i.js +0 -1
- modoboa/frontend_dist/assets/VSpacer-DL_DqXyB.js +0 -1
- modoboa/frontend_dist/assets/VTabs-CDeotHqK.js +0 -1
- modoboa/frontend_dist/assets/WebmailLayout-BEGfzupj.js +0 -1
- modoboa/frontend_dist/assets/_plugin-vue_export-helper-DlAUqK2U.js +0 -1
- modoboa/frontend_dist/assets/layout-DYUfCptT.js +0 -1
- {modoboa-2.4.5.data → modoboa-2.4.6.data}/scripts/modoboa-admin.py +0 -0
- {modoboa-2.4.5.dist-info → modoboa-2.4.6.dist-info}/WHEEL +0 -0
- {modoboa-2.4.5.dist-info → modoboa-2.4.6.dist-info}/entry_points.txt +0 -0
- {modoboa-2.4.5.dist-info → modoboa-2.4.6.dist-info}/licenses/LICENSE +0 -0
- {modoboa-2.4.5.dist-info → modoboa-2.4.6.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{_ as Ke,b as
|
|
1
|
+
import{_ as Ke,b as Z,n as se,u as ce,h as J,g as _,d as pe,L as _e,c as O,o as P,w as c,a as u,l as S,t as g,f as m,p as me,e as A,am as Ce,an as H,a4 as Ue,F as B,v as Ge,x as Ye,T as We,y as Je,Y as Xe,ac as re,a5 as je,al as Ze,a6 as et,B as Re,Z as tt,J as at,ao as Pe,m as D,q as W,G as xe,aj as G,S as ot,ap as nt,j as rt,i as Me}from"./index-CTxlYqj4.js";import{_ as lt}from"./AccountPasswordSubForm-D7zaiyOj.js";import{V as ae,r as oe}from"./VForm-CXf-xKYz.js";import{V as Ne,c as Fe,a as Te,b as st}from"./VExpansionPanels-DpJzLCB-.js";import{V as K,u as it,c as ut,d as dt,e as ct}from"./VTextField-CWm47OUI.js";import{V as ft}from"./VAutocomplete-CfnbXRi6.js";import{V as Q,d as be}from"./VAvatar-x_79C0tA.js";import{c as ge,V as X,b as j,a as Ee}from"./VCard-DRptUN8Y.js";import{V as ve,a as de}from"./VRow-B-csPNw7.js";import{V as ee}from"./VAlert-BiAap6Bx.js";import{a as vt}from"./VMenu-DTm7W1Hp.js";import{V as mt}from"./VProgressCircular-ubzZW5PC.js";import{b as ht,u as pt,c as gt}from"./tag-Dx3OexMp.js";import{V as De}from"./VTable-B-HE2nmK.js";import{V as yt}from"./VSpacer-BcQnH0oL.js";import{V as $e}from"./VDialog-DzctVbsK.js";import{V as Oe}from"./VTextarea-Bry3a299.js";import{V as Le}from"./VCheckbox-DTbWq72R.js";import{_ as we}from"./ConfirmDialog-q002W_T5.js";import{V as _t}from"./VDataTableVirtual-B6iCEfal.js";import{V as bt,a as wt}from"./VToolbar-Cd2iSn8H.js";import{V as Ct,a as Et,b as ie,c as ue}from"./VTabs-DCb8kj6G.js";import"./VSwitch-HiyBjUWI.js";import"./VSelectionControl-Bdgm37Tl.js";import"./forwardRefs-BSESyuUp.js";import"./ssrBoot-DGgZQEVC.js";import"./VSelect-tV4GZAtn.js";import"./VCheckboxBtn-xrhfoOlo.js";import"./VChip-Def9BYoN.js";import"./filter-DaBUD6Rp.js";/* empty css */import"./VDataTable-CYPG0MtF.js";import"./VWindowItem-pE5PWxHf.js";const At="languages",kt={getAll(){return Ke.get(`/${At}/`)}},Vt={class:"m-label"},St={class:"m-label"},Rt={class:"m-label"},Pt={class:"text-disabled"},Mt={href:"https://explore.transifex.com/tonio/modoboa/",target:"_blank"},Nt={href:"https://github.com/modoboa/modoboa/issues/new/choose",target:"_blank"},Ft={class:"m-label"},Tt={class:"m-label"},It={__name:"ProfileForm",setup(n){const{$gettext:l,available:i}=Z(),s=se(),f=ce(),h=J(()=>f.authUser),o=_({}),e=_(),t=_(),a=_({}),r=_([]),d=_(0),v=_(!1),p=_(!1),w=_("");function k(R){o.value={first_name:R.first_name,last_name:R.last_name,language:R.language,phone_number:R.phone_number,secondary_email:R.secondary_email}}async function N(){const{valid:R}=await e.value.validate();R&&(v.value=!0,f.updateAccount(o.value).then(()=>{s.displayNotification({msg:l("Profile updated")}),f.accountLanguage in i||(w.value=l("Language does no exist"))}).finally(()=>v.value=!1))}async function F(){const{valid:R}=await t.value.validate();if(R){p.value=!0;try{await f.updatePassword({password:o.value.password,new_password:o.value.new_password}),s.displayNotification({msg:l("Password updated")}),t.value.reset()}catch(C){C.status===400&&(a.value=C.response.data)}finally{p.value=!1}}}return pe(()=>{k(h.value),kt.getAll().then(R=>{r.value=R.data})}),_e(()=>h,R=>{R?k(R):o.value={}}),(R,C)=>(P(),O(st,{modelValue:d.value,"onUpdate:modelValue":C[6]||(C[6]=y=>d.value=y),flat:""},{default:c(()=>[u(Ne,null,{default:c(()=>[u(Fe,null,{default:c(()=>[S(g(m(l)("General settings")),1)]),_:1}),u(Te,null,{default:c(()=>[u(ae,{ref_key:"profileForm",ref:e,onSubmit:me(N,["prevent"])},{default:c(()=>[A("label",Vt,g(m(l)("First name")),1),u(K,{modelValue:o.value.first_name,"onUpdate:modelValue":C[0]||(C[0]=y=>o.value.first_name=y),variant:"outlined",density:"compact"},null,8,["modelValue"]),A("label",St,g(m(l)("Last name")),1),u(K,{modelValue:o.value.last_name,"onUpdate:modelValue":C[1]||(C[1]=y=>o.value.last_name=y),variant:"outlined",density:"compact"},null,8,["modelValue"]),A("label",Rt,[S(g(m(l)("Language"))+" ",1),A("p",Pt,[S(g(m(l)("Feel free to improve the translations"))+" ",1),A("a",Mt,g(m(l)("here")),1),S(" "+g(m(l)("or suggest a new language"))+" ",1),A("a",Nt,g(m(l)("there")),1)])]),u(ft,{modelValue:o.value.language,"onUpdate:modelValue":C[2]||(C[2]=y=>o.value.language=y),items:r.value,"item-title":"label","item-value":"code",variant:"outlined",density:"compact","error-messages":w.value},null,8,["modelValue","items","error-messages"]),A("label",Ft,g(m(l)("Phone number")),1),u(K,{modelValue:o.value.phone_number,"onUpdate:modelValue":C[3]||(C[3]=y=>o.value.phone_number=y),label:m(l)("Phone number"),variant:"outlined",density:"compact"},null,8,["modelValue","label"]),A("label",Tt,g(m(l)("Secondary email")),1),u(K,{modelValue:o.value.secondary_email,"onUpdate:modelValue":C[4]||(C[4]=y=>o.value.secondary_email=y),variant:"outlined",density:"compact",rules:[m(oe).emailOrNull]},null,8,["modelValue","rules"]),u(Q,{color:"success",type:"submit",loading:v.value},{default:c(()=>[S(g(m(l)("Update settings")),1)]),_:1},8,["loading"])]),_:1},512)]),_:1})]),_:1}),u(Ne,null,{default:c(()=>[u(Fe,null,{default:c(()=>[S(g(m(l)("Password")),1)]),_:1}),u(Te,null,{default:c(()=>[u(ae,{ref_key:"passwordForm",ref:t,onSubmit:me(F,["prevent"])},{default:c(()=>[u(lt,{modelValue:o.value,"onUpdate:modelValue":C[5]||(C[5]=y=>o.value=y),"form-errors":a.value,"with-password-check":""},null,8,["modelValue","form-errors"]),u(Q,{color:"success",type:"submit",loading:p.value},{default:c(()=>[S(g(m(l)("Update Password")),1)]),_:1},8,["loading"])]),_:1},512)]),_:1})]),_:1})]),_:1},8,["modelValue"]))}};/*!
|
|
2
2
|
* qrcode.vue v3.6.0
|
|
3
3
|
* A Vue.js component to generate QRCode. Both support Vue 2 and Vue 3
|
|
4
4
|
* © 2017-PRESENT @scopewu(https://github.com/scopewu)
|
|
5
5
|
* MIT License.
|
|
6
|
-
*/var G=function(){return G=Object.assign||function(l){for(var i,s=1,f=arguments.length;s<f;s++){i=arguments[s];for(var h in i)Object.prototype.hasOwnProperty.call(i,h)&&(l[h]=i[h])}return l},G.apply(this,arguments)};var ne;(function(n){var l=function(){function o(e,t,a,r){if(this.version=e,this.errorCorrectionLevel=t,this.modules=[],this.isFunction=[],e<o.MIN_VERSION||e>o.MAX_VERSION)throw new RangeError("Version value out of range");if(r<-1||r>7)throw new RangeError("Mask value out of range");this.size=e*4+17;for(var d=[],v=0;v<this.size;v++)d.push(!1);for(var v=0;v<this.size;v++)this.modules.push(d.slice()),this.isFunction.push(d.slice());this.drawFunctionPatterns();var p=this.addEccAndInterleave(a);if(this.drawCodewords(p),r==-1)for(var w=1e9,v=0;v<8;v++){this.applyMask(v),this.drawFormatBits(v);var k=this.getPenaltyScore();k<w&&(r=v,w=k),this.applyMask(v)}f(0<=r&&r<=7),this.mask=r,this.applyMask(r),this.drawFormatBits(r),this.isFunction=[]}return o.encodeText=function(e,t){var a=n.QrSegment.makeSegments(e);return o.encodeSegments(a,t)},o.encodeBinary=function(e,t){var a=n.QrSegment.makeBytes(e);return o.encodeSegments([a],t)},o.encodeSegments=function(e,t,a,r,d,v){if(a===void 0&&(a=1),r===void 0&&(r=40),d===void 0&&(d=-1),v===void 0&&(v=!0),!(o.MIN_VERSION<=a&&a<=r&&r<=o.MAX_VERSION)||d<-1||d>7)throw new RangeError("Invalid value");var p,w;for(p=a;;p++){var k=o.getNumDataCodewords(p,t)*8,N=h.getTotalBits(e,p);if(N<=k){w=N;break}if(p>=r)throw new RangeError("Data too long")}for(var F=0,R=[o.Ecc.MEDIUM,o.Ecc.QUARTILE,o.Ecc.HIGH];F<R.length;F++){var C=R[F];v&&w<=o.getNumDataCodewords(p,C)*8&&(t=C)}for(var y=[],b=0,V=e;b<V.length;b++){var T=V[b];i(T.mode.modeBits,4,y),i(T.numChars,T.mode.numCharCountBits(p),y);for(var E=0,M=T.getData();E<M.length;E++){var $=M[E];y.push($)}}f(y.length==w);var x=o.getNumDataCodewords(p,t)*8;f(y.length<=x),i(0,Math.min(4,x-y.length),y),i(0,(8-y.length%8)%8,y),f(y.length%8==0);for(var I=236;y.length<x;I^=253)i(I,8,y);for(var H=[];H.length*8<y.length;)H.push(0);return y.forEach(function(ye,fe){return H[fe>>>3]|=ye<<7-(fe&7)}),new o(p,t,H,d)},o.prototype.getModule=function(e,t){return 0<=e&&e<this.size&&0<=t&&t<this.size&&this.modules[t][e]},o.prototype.getModules=function(){return this.modules},o.prototype.drawFunctionPatterns=function(){for(var e=0;e<this.size;e++)this.setFunctionModule(6,e,e%2==0),this.setFunctionModule(e,6,e%2==0);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);for(var t=this.getAlignmentPatternPositions(),a=t.length,e=0;e<a;e++)for(var r=0;r<a;r++)e==0&&r==0||e==0&&r==a-1||e==a-1&&r==0||this.drawAlignmentPattern(t[e],t[r]);this.drawFormatBits(0),this.drawVersion()},o.prototype.drawFormatBits=function(e){for(var t=this.errorCorrectionLevel.formatBits<<3|e,a=t,r=0;r<10;r++)a=a<<1^(a>>>9)*1335;var d=(t<<10|a)^21522;f(d>>>15==0);for(var r=0;r<=5;r++)this.setFunctionModule(8,r,s(d,r));this.setFunctionModule(8,7,s(d,6)),this.setFunctionModule(8,8,s(d,7)),this.setFunctionModule(7,8,s(d,8));for(var r=9;r<15;r++)this.setFunctionModule(14-r,8,s(d,r));for(var r=0;r<8;r++)this.setFunctionModule(this.size-1-r,8,s(d,r));for(var r=8;r<15;r++)this.setFunctionModule(8,this.size-15+r,s(d,r));this.setFunctionModule(8,this.size-8,!0)},o.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^(e>>>11)*7973;var a=this.version<<12|e;f(a>>>18==0);for(var t=0;t<18;t++){var r=s(a,t),d=this.size-11+t%3,v=Math.floor(t/3);this.setFunctionModule(d,v,r),this.setFunctionModule(v,d,r)}}},o.prototype.drawFinderPattern=function(e,t){for(var a=-4;a<=4;a++)for(var r=-4;r<=4;r++){var d=Math.max(Math.abs(r),Math.abs(a)),v=e+r,p=t+a;0<=v&&v<this.size&&0<=p&&p<this.size&&this.setFunctionModule(v,p,d!=2&&d!=4)}},o.prototype.drawAlignmentPattern=function(e,t){for(var a=-2;a<=2;a++)for(var r=-2;r<=2;r++)this.setFunctionModule(e+r,t+a,Math.max(Math.abs(r),Math.abs(a))!=1)},o.prototype.setFunctionModule=function(e,t,a){this.modules[t][e]=a,this.isFunction[t][e]=!0},o.prototype.addEccAndInterleave=function(e){var t=this.version,a=this.errorCorrectionLevel;if(e.length!=o.getNumDataCodewords(t,a))throw new RangeError("Invalid argument");for(var r=o.NUM_ERROR_CORRECTION_BLOCKS[a.ordinal][t],d=o.ECC_CODEWORDS_PER_BLOCK[a.ordinal][t],v=Math.floor(o.getNumRawDataModules(t)/8),p=r-v%r,w=Math.floor(v/r),k=[],N=o.reedSolomonComputeDivisor(d),F=0,R=0;F<r;F++){var C=e.slice(R,R+w-d+(F<p?0:1));R+=C.length;var y=o.reedSolomonComputeRemainder(C,N);F<p&&C.push(0),k.push(C.concat(y))}for(var b=[],V=function(T){k.forEach(function(E,M){(T!=w-d||M>=p)&&b.push(E[T])})},F=0;F<k[0].length;F++)V(F);return f(b.length==v),b},o.prototype.drawCodewords=function(e){if(e.length!=Math.floor(o.getNumRawDataModules(this.version)/8))throw new RangeError("Invalid argument");for(var t=0,a=this.size-1;a>=1;a-=2){a==6&&(a=5);for(var r=0;r<this.size;r++)for(var d=0;d<2;d++){var v=a-d,p=(a+1&2)==0,w=p?this.size-1-r:r;!this.isFunction[w][v]&&t<e.length*8&&(this.modules[w][v]=s(e[t>>>3],7-(t&7)),t++)}}f(t==e.length*8)},o.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t<this.size;t++)for(var a=0;a<this.size;a++){var r=void 0;switch(e){case 0:r=(a+t)%2==0;break;case 1:r=t%2==0;break;case 2:r=a%3==0;break;case 3:r=(a+t)%3==0;break;case 4:r=(Math.floor(a/3)+Math.floor(t/2))%2==0;break;case 5:r=a*t%2+a*t%3==0;break;case 6:r=(a*t%2+a*t%3)%2==0;break;case 7:r=((a+t)%2+a*t%3)%2==0;break;default:throw new Error("Unreachable")}!this.isFunction[t][a]&&r&&(this.modules[t][a]=!this.modules[t][a])}},o.prototype.getPenaltyScore=function(){for(var e=0,t=0;t<this.size;t++){for(var a=!1,r=0,d=[0,0,0,0,0,0,0],v=0;v<this.size;v++)this.modules[t][v]==a?(r++,r==5?e+=o.PENALTY_N1:r>5&&e++):(this.finderPenaltyAddHistory(r,d),a||(e+=this.finderPenaltyCountPatterns(d)*o.PENALTY_N3),a=this.modules[t][v],r=1);e+=this.finderPenaltyTerminateAndCount(a,r,d)*o.PENALTY_N3}for(var v=0;v<this.size;v++){for(var a=!1,p=0,d=[0,0,0,0,0,0,0],t=0;t<this.size;t++)this.modules[t][v]==a?(p++,p==5?e+=o.PENALTY_N1:p>5&&e++):(this.finderPenaltyAddHistory(p,d),a||(e+=this.finderPenaltyCountPatterns(d)*o.PENALTY_N3),a=this.modules[t][v],p=1);e+=this.finderPenaltyTerminateAndCount(a,p,d)*o.PENALTY_N3}for(var t=0;t<this.size-1;t++)for(var v=0;v<this.size-1;v++){var w=this.modules[t][v];w==this.modules[t][v+1]&&w==this.modules[t+1][v]&&w==this.modules[t+1][v+1]&&(e+=o.PENALTY_N2)}for(var k=0,N=0,F=this.modules;N<F.length;N++){var R=F[N];k=R.reduce(function(b,V){return b+(V?1:0)},k)}var C=this.size*this.size,y=Math.ceil(Math.abs(k*20-C*10)/C)-1;return f(0<=y&&y<=9),e+=y*o.PENALTY_N4,f(0<=e&&e<=2568888),e},o.prototype.getAlignmentPatternPositions=function(){if(this.version==1)return[];for(var e=Math.floor(this.version/7)+2,t=Math.floor((this.version*8+e*3+5)/(e*4-4))*2,a=[6],r=this.size-7;a.length<e;r-=t)a.splice(1,0,r);return a},o.getNumRawDataModules=function(e){if(e<o.MIN_VERSION||e>o.MAX_VERSION)throw new RangeError("Version number out of range");var t=(16*e+128)*e+64;if(e>=2){var a=Math.floor(e/7)+2;t-=(25*a-10)*a-55,e>=7&&(t-=36)}return f(208<=t&&t<=29648),t},o.getNumDataCodewords=function(e,t){return Math.floor(o.getNumRawDataModules(e)/8)-o.ECC_CODEWORDS_PER_BLOCK[t.ordinal][e]*o.NUM_ERROR_CORRECTION_BLOCKS[t.ordinal][e]},o.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var t=[],a=0;a<e-1;a++)t.push(0);t.push(1);for(var r=1,a=0;a<e;a++){for(var d=0;d<t.length;d++)t[d]=o.reedSolomonMultiply(t[d],r),d+1<t.length&&(t[d]^=t[d+1]);r=o.reedSolomonMultiply(r,2)}return t},o.reedSolomonComputeRemainder=function(e,t){for(var a=t.map(function(w){return 0}),r=function(w){var k=w^a.shift();a.push(0),t.forEach(function(N,F){return a[F]^=o.reedSolomonMultiply(N,k)})},d=0,v=e;d<v.length;d++){var p=v[d];r(p)}return a},o.reedSolomonMultiply=function(e,t){if(e>>>8||t>>>8)throw new RangeError("Byte out of range");for(var a=0,r=7;r>=0;r--)a=a<<1^(a>>>7)*285,a^=(t>>>r&1)*e;return f(a>>>8==0),a},o.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];f(t<=this.size*3);var a=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(a&&e[0]>=t*4&&e[6]>=t?1:0)+(a&&e[6]>=t*4&&e[0]>=t?1:0)},o.prototype.finderPenaltyTerminateAndCount=function(e,t,a){return e&&(this.finderPenaltyAddHistory(t,a),t=0),t+=this.size,this.finderPenaltyAddHistory(t,a),this.finderPenaltyCountPatterns(a)},o.prototype.finderPenaltyAddHistory=function(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)},o.MIN_VERSION=1,o.MAX_VERSION=40,o.PENALTY_N1=3,o.PENALTY_N2=3,o.PENALTY_N3=40,o.PENALTY_N4=10,o.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],o.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],o}();n.QrCode=l;function i(o,e,t){if(e<0||e>31||o>>>e)throw new RangeError("Value out of range");for(var a=e-1;a>=0;a--)t.push(o>>>a&1)}function s(o,e){return(o>>>e&1)!=0}function f(o){if(!o)throw new Error("Assertion error")}var h=function(){function o(e,t,a){if(this.mode=e,this.numChars=t,this.bitData=a,t<0)throw new RangeError("Invalid argument");this.bitData=a.slice()}return o.makeBytes=function(e){for(var t=[],a=0,r=e;a<r.length;a++){var d=r[a];i(d,8,t)}return new o(o.Mode.BYTE,e.length,t)},o.makeNumeric=function(e){if(!o.isNumeric(e))throw new RangeError("String contains non-numeric characters");for(var t=[],a=0;a<e.length;){var r=Math.min(e.length-a,3);i(parseInt(e.substring(a,a+r),10),r*3+1,t),a+=r}return new o(o.Mode.NUMERIC,e.length,t)},o.makeAlphanumeric=function(e){if(!o.isAlphanumeric(e))throw new RangeError("String contains unencodable characters in alphanumeric mode");var t=[],a;for(a=0;a+2<=e.length;a+=2){var r=o.ALPHANUMERIC_CHARSET.indexOf(e.charAt(a))*45;r+=o.ALPHANUMERIC_CHARSET.indexOf(e.charAt(a+1)),i(r,11,t)}return a<e.length&&i(o.ALPHANUMERIC_CHARSET.indexOf(e.charAt(a)),6,t),new o(o.Mode.ALPHANUMERIC,e.length,t)},o.makeSegments=function(e){return e==""?[]:o.isNumeric(e)?[o.makeNumeric(e)]:o.isAlphanumeric(e)?[o.makeAlphanumeric(e)]:[o.makeBytes(o.toUtf8ByteArray(e))]},o.makeEci=function(e){var t=[];if(e<0)throw new RangeError("ECI assignment value out of range");if(e<128)i(e,8,t);else if(e<16384)i(2,2,t),i(e,14,t);else if(e<1e6)i(6,3,t),i(e,21,t);else throw new RangeError("ECI assignment value out of range");return new o(o.Mode.ECI,0,t)},o.isNumeric=function(e){return o.NUMERIC_REGEX.test(e)},o.isAlphanumeric=function(e){return o.ALPHANUMERIC_REGEX.test(e)},o.prototype.getData=function(){return this.bitData.slice()},o.getTotalBits=function(e,t){for(var a=0,r=0,d=e;r<d.length;r++){var v=d[r],p=v.mode.numCharCountBits(t);if(v.numChars>=1<<p)return 1/0;a+=4+p+v.bitData.length}return a},o.toUtf8ByteArray=function(e){e=encodeURI(e);for(var t=[],a=0;a<e.length;a++)e.charAt(a)!="%"?t.push(e.charCodeAt(a)):(t.push(parseInt(e.substring(a+1,a+3),16)),a+=2);return t},o.NUMERIC_REGEX=/^[0-9]*$/,o.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,o.ALPHANUMERIC_CHARSET="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",o}();n.QrSegment=h})(ne||(ne={}));(function(n){(function(l){var i=function(){function s(f,h){this.ordinal=f,this.formatBits=h}return s.LOW=new s(0,1),s.MEDIUM=new s(1,0),s.QUARTILE=new s(2,3),s.HIGH=new s(3,2),s}();l.Ecc=i})(n.QrCode||(n.QrCode={}))})(ne||(ne={}));(function(n){(function(l){var i=function(){function s(f,h){this.modeBits=f,this.numBitsCharCount=h}return s.prototype.numCharCountBits=function(f){return this.numBitsCharCount[Math.floor((f+7)/17)]},s.NUMERIC=new s(1,[10,12,14]),s.ALPHANUMERIC=new s(2,[9,11,13]),s.BYTE=new s(4,[8,16,16]),s.KANJI=new s(8,[8,10,12]),s.ECI=new s(7,[0,0,0]),s}();l.Mode=i})(n.QrSegment||(n.QrSegment={}))})(ne||(ne={}));var le=ne,Ae="L",ke={L:le.QrCode.Ecc.LOW,M:le.QrCode.Ecc.MEDIUM,Q:le.QrCode.Ecc.QUARTILE,H:le.QrCode.Ecc.HIGH},Ut=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}();function Ve(n){return n in ke}function Be(n,l){l===void 0&&(l=0);var i=[];return n.forEach(function(s,f){var h=null;s.forEach(function(o,e){if(!o&&h!==null){i.push("M".concat(h+l," ").concat(f+l,"h").concat(e-h,"v1H").concat(h+l,"z")),h=null;return}if(e===s.length-1){if(!o)return;h===null?i.push("M".concat(e+l,",").concat(f+l," h1v1H").concat(e+l,"z")):i.push("M".concat(h+l,",").concat(f+l," h").concat(e+1-h,"v1H").concat(h+l,"z"));return}o&&h===null&&(h=e)})}),i.join("")}function ze(n,l,i,s){var f=s.width,h=s.height,o=s.x,e=s.y,t=n.length+i*2,a=Math.floor(l*.1),r=t/l,d=(f||a)*r,v=(h||a)*r,p=o==null?n.length/2-d/2:o*r,w=e==null?n.length/2-v/2:e*r,k=null;if(s.excavate){var N=Math.floor(p),F=Math.floor(w),R=Math.ceil(d+p-N),C=Math.ceil(v+w-F);k={x:N,y:F,w:R,h:C}}return{x:p,y:w,h:v,w:d,excavation:k}}function Qe(n,l){return n.slice().map(function(i,s){return s<l.y||s>=l.y+l.h?i:i.map(function(f,h){return h<l.x||h>=l.x+l.w?f:!1})})}var Se={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:Ae,validator:function(n){return Ve(n)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(n){return["linear","radial"].indexOf(n)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},xt=G(G({},Se),{renderAs:{type:String,required:!1,default:"canvas",validator:function(n){return["canvas","svg"].indexOf(n)>-1}}}),Dt=Ce({name:"QRCodeSvg",props:Se,setup:function(n){var l=_(0),i=_(""),s,f=function(){var o=n.value,e=n.level,t=n.margin,a=t>>>0,r=Ve(e)?e:Ae,d=le.QrCode.encodeText(o,ke[r]).getModules();if(l.value=d.length+a*2,n.imageSettings.src){var v=ze(d,n.size,a,n.imageSettings);s={x:v.x+a,y:v.y+a,width:v.w,height:v.h},v.excavation&&(d=Qe(d,v.excavation))}i.value=Be(d,a)},h=function(){if(!n.gradient)return null;var o=n.gradientType==="linear"?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return q(n.gradientType==="linear"?"linearGradient":"radialGradient",G({id:"qr-gradient"},o),[q("stop",{offset:"0%",style:{stopColor:n.gradientStartColor}}),q("stop",{offset:"100%",style:{stopColor:n.gradientEndColor}})])};return f(),Ue(f),function(){return q("svg",{width:n.size,height:n.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(l.value," ").concat(l.value)},[q("defs",{},[h()]),q("rect",{width:"100%",height:"100%",fill:n.background}),q("path",{fill:n.gradient?"url(#qr-gradient)":n.foreground,d:i.value}),n.imageSettings.src&&q("image",G({href:n.imageSettings.src},s))])}}}),$t=Ce({name:"QRCodeCanvas",props:Se,setup:function(n,l){var i=_(null),s=_(null),f=function(){var o=n.value,e=n.level,t=n.size,a=n.margin,r=n.background,d=n.foreground,v=n.gradient,p=n.gradientType,w=n.gradientStartColor,k=n.gradientEndColor,N=a>>>0,F=Ve(e)?e:Ae,R=i.value;if(R){var C=R.getContext("2d");if(C){var y=le.QrCode.encodeText(o,ke[F]).getModules(),b=y.length+N*2,V=s.value,T={x:0,y:0,width:0,height:0},E=n.imageSettings.src&&V!=null&&V.naturalWidth!==0&&V.naturalHeight!==0;if(E){var M=ze(y,n.size,N,n.imageSettings);T={x:M.x+N,y:M.y+N,width:M.w,height:M.h},M.excavation&&(y=Qe(y,M.excavation))}var $=window.devicePixelRatio||1,x=t/b*$;if(R.height=R.width=t*$,C.scale(x,x),C.fillStyle=r,C.fillRect(0,0,b,b),v){var I=void 0;p==="linear"?I=C.createLinearGradient(0,0,b,b):I=C.createRadialGradient(b/2,b/2,0,b/2,b/2,b/2),I.addColorStop(0,w),I.addColorStop(1,k),C.fillStyle=I}else C.fillStyle=d;Ut?C.fill(new Path2D(Be(y,N))):y.forEach(function(H,ye){H.forEach(function(fe,qe){fe&&C.fillRect(qe+N,ye+N,1,1)})}),E&&C.drawImage(V,T.x,T.y,T.width,T.height)}}};pe(f),Ue(f);var h=l.attrs.style;return function(){return q(B,[q("canvas",G(G({},l.attrs),{ref:i,style:G(G({},h),{width:"".concat(n.size,"px"),height:"".concat(n.size,"px")})})),n.imageSettings.src&&q("img",{ref:s,src:n.imageSettings.src,style:{display:"none"},onLoad:f})])}}}),Ot=Ce({name:"Qrcode",render:function(){var n=this.$props,l=n.renderAs,i=n.value,s=n.size,f=n.margin,h=n.level,o=n.background,e=n.foreground,t=n.imageSettings,a=n.gradient,r=n.gradientType,d=n.gradientStartColor,v=n.gradientEndColor;return q(l==="svg"?Dt:$t,{value:i,size:s,margin:f,level:h,background:o,foreground:e,imageSettings:t,gradient:a,gradientType:r,gradientStartColor:d,gradientEndColor:v})},props:xt});const Lt=Ge({autofocus:Boolean,divider:String,focusAll:Boolean,label:{type:String,default:"$vuetify.input.otp"},length:{type:[Number,String],default:6},modelValue:{type:[Number,String],default:void 0},placeholder:String,type:{type:String,default:"number"},...pt(),...ut(),...tt(dt({variant:"outlined"}),["baseColor","bgColor","class","color","disabled","error","loading","rounded","style","theme","variant"])},"VOtpInput"),Bt=Ye()({name:"VOtpInput",props:Lt(),emits:{finish:n=>!0,"update:focused":n=>!0,"update:modelValue":n=>!0},setup(n,l){let{attrs:i,emit:s,slots:f}=l;const{dimensionStyles:h}=mt(n),{isFocused:o,focus:e,blur:t}=st(n),a=We(n,"modelValue","",E=>E==null?[]:String(E).split(""),E=>E.join("")),{t:r}=Je(),d=J(()=>Number(n.length)),v=J(()=>Array(d.value).fill(0)),p=_(-1),w=_(),k=_([]),N=J(()=>k.value[p.value]);function F(){if(T(N.value.value)){N.value.value="";return}const E=a.value.slice(),M=N.value.value;E[p.value]=M;let $=null;p.value>a.value.length?$=a.value.length+1:p.value+1!==d.value&&($="next"),a.value=E,$&&Pe(w.value,$)}function R(E){const M=a.value.slice(),$=p.value;let x=null;["ArrowLeft","ArrowRight","Backspace","Delete"].includes(E.key)&&(E.preventDefault(),E.key==="ArrowLeft"?x="prev":E.key==="ArrowRight"?x="next":["Backspace","Delete"].includes(E.key)&&(M[p.value]="",a.value=M,p.value>0&&E.key==="Backspace"?x="prev":requestAnimationFrame(()=>{var I;(I=k.value[$])==null||I.select()})),requestAnimationFrame(()=>{x!=null&&Pe(w.value,x)}))}function C(E,M){var x,I;M.preventDefault(),M.stopPropagation();const $=((x=M==null?void 0:M.clipboardData)==null?void 0:x.getData("Text").trim().slice(0,d.value))??"";T($)||(a.value=$.split(""),(I=k.value)==null||I[E].blur())}function y(){a.value=[]}function b(E,M){e(),p.value=M}function V(){t(),p.value=-1}function T(E){return n.type==="number"&&/[^0-9]/g.test(E)}return Xe({VField:{color:re(()=>n.color),bgColor:re(()=>n.color),baseColor:re(()=>n.baseColor),disabled:re(()=>n.disabled),error:re(()=>n.error),variant:re(()=>n.variant)}},{scoped:!0}),_e(a,E=>{E.length===d.value&&(p.value=d.value-1,s("finish",E.join("")))},{deep:!0}),_e(p,E=>{E<0||Ze(()=>{var M;(M=k.value[E])==null||M.select()})}),ht(()=>{var $;const[E,M]=je(i);return A("div",Re({class:["v-otp-input",{"v-otp-input--divided":!!n.divider},n.class],style:[n.style]},E),[A("div",{ref:w,class:"v-otp-input__content",style:et([h.value])},[v.value.map((x,I)=>A(B,null,[n.divider&&I!==0&&A("span",{class:"v-otp-input__divider"},[n.divider]),u(it,{focused:o.value&&n.focusAll||p.value===I,key:I},{...f,loader:void 0,default:()=>A("input",{ref:H=>k.value[I]=H,"aria-label":r(n.label,I+1),autofocus:I===0&&n.autofocus,autocomplete:"one-time-code",class:at(["v-otp-input__field"]),disabled:n.disabled,inputmode:n.type==="number"?"numeric":"text",min:n.type==="number"?0:void 0,maxlength:I===0?d.value:"1",placeholder:n.placeholder,type:n.type==="number"?"text":n.type,value:a.value[I],onInput:F,onFocus:H=>b(H,I),onBlur:V,onKeydown:R,onPaste:H=>C(I,H)},null)})])),A("input",Re({class:"v-otp-input-input",type:"hidden"},M,{value:a.value.join("")}),null),u(ft,{contained:!0,"content-class":"v-otp-input__loader","model-value":!!n.loading,persistent:!0},{default:()=>{var x;return[((x=f.loader)==null?void 0:x.call(f))??u(vt,{color:typeof n.loading=="boolean"?void 0:n.loading,indeterminate:!0,size:"24",width:"2"},null)]}}),($=f.default)==null?void 0:$.call(f)])])}),{blur:()=>{var E;(E=k.value)==null||E.some(M=>M.blur())},focus:()=>{var E;(E=k.value)==null||E[0].focus()},reset:y,isFocused:o}}}),zt={class:"text-h6"},Qt={class:"m-label"},Ht={class:"mt-4"},qt={class:"m-label"},Kt={class:"mt-5"},Yt={tag:"p",class:"my-4"},Gt={__name:"TotpAuthForm",setup(n){const{$gettext:l}=j(),i=se(),s=ce(),f=_(),h=_(""),o=_([]),e=_(null),t=_(null),a=_(!1),r=_(!1),d=_(""),v=_([]),p=_([]),w=_(!1),k=J(()=>s.authUser.totp_enabled);function N(){Y.getKeyForTFASetup().then(b=>{e.value=b.data.key,t.value=b.data.url})}function F(){navigator.clipboard.writeText(e.value),a.value=!0}function R(){Y.startTFASetup().then(()=>{N()})}function C(){s.finalizeTFASetup(h.value).then(b=>{e.value=null,t.value=null,b.status===200&&(p.value=b.data.tokens),w.value=!0}).catch(b=>{b.response.status===400&&(o.value=b.response.data.pin_code)})}async function y(){if(!await f.value.validate())return;const V={password:d.value};r.value=!0,Y.disableTFA(V).then(()=>{s.fetchUser()}).catch(T=>{T.response.status===400?v.value=T.response.data.password:i.displayNotification({msg:l(T.response.data),type:"error"})}).finally(()=>{r.value=!1,f.value.reset()})}return(b,V)=>(P(),D("div",null,[u(Z,{flat:""},{default:c(()=>[u(ge,null,{default:c(()=>[A("span",zt,g(m(l)("One-time passwords")),1)]),_:1}),u(X,null,{default:c(()=>[t.value?(P(),O(ve,{key:0},{default:c(()=>[u(de,{cols:"4"},{default:c(()=>[u(ve,{rows:"2"},{default:c(()=>[u(Ot,{value:t.value,size:250,"render-as":"svg",level:"H",class:"qrcode"},null,8,["value"])]),_:1}),u(ve,null,{default:c(()=>[u(Q,{color:"primary",class:"key",onClick:F},{default:c(()=>[S(g(m(l)("Click here to copy the key"))+" ",1),a.value?(P(),O(be,{key:0,color:"success"},{default:c(()=>V[2]||(V[2]=[S(" mdi-check-all ")])),_:1,__:[2]})):W("",!0)]),_:1})]),_:1})]),_:1}),u(de,{cols:"6"},{default:c(()=>[u(ee,{type:"info",class:"ma-4"},{default:c(()=>[S(g(m(l)("Install a soft token authenticator like FreeOTP or Google Authenticator from your application repository and use that app to scan this QR code.")),1)]),_:1}),A("label",Qt,g(m(l)("Pin code")),1),u(Bt,{modelValue:h.value,"onUpdate:modelValue":V[0]||(V[0]=T=>h.value=T),error:o.value.length!==0},null,8,["modelValue","error"]),u(Q,{color:"primary",onClick:C},{default:c(()=>[S(g(m(l)("Register")),1)]),_:1})]),_:1})]),_:1})):w.value?(P(),D(B,{key:1},[u(ee,{type:"success"},{default:c(()=>[S(g(m(l)("Congratulations! Two-factor authentication using one-time passwords is now enabled for your account.")),1)]),_:1}),p.value.length?(P(),D(B,{key:0},[A("p",Ht,g(m(l)("The following recovery codes can be used one time each to let you regain access to your account, in case you lose your phone for example. Make sure to save them in a safe place, otherwise you won't be able to access your account anymore.")),1),u(De,{density:"compact"},{default:c(()=>[A("tbody",null,[(P(!0),D(B,null,xe(p.value,T=>(P(),D("tr",{key:T},[A("td",null,g(T),1)]))),128))])]),_:1})],64)):W("",!0)],64)):k.value?(P(),D(B,{key:2},[u(ee,{type:"info",class:"mb-2"},{default:c(()=>[S(g(m(l)("Two-factor authentication using one-time passwords is enabled for your account.")),1)]),_:1}),u(ae,{ref_key:"editTFAForm",ref:f},{default:c(()=>[A("label",qt,g(m(l)("Password")),1),u(K,{modelValue:d.value,"onUpdate:modelValue":V[1]||(V[1]=T=>d.value=T),autocomplete:"new-password",type:"password",variant:"outlined",density:"compact",rules:[m(oe).required],"error-messages":v.value},null,8,["modelValue","rules","error-messages"]),A("div",Kt,[u(Q,{color:"error",class:"mr-2",loading:r.value,onClick:y},{default:c(()=>[S(g(m(l)("Disable 2FA")),1)]),_:1},8,["loading"])])]),_:1},512)],64)):(P(),D(B,{key:3},[A("div",Yt,g(m(l)("Two-factor authentication (2FA) using one-time passwords is not yet activated for your account.")),1),u(Q,{color:"success",onClick:R},{default:c(()=>[S(g(m(l)("Register authenticator")),1)]),_:1})],64))]),_:1})]),_:1})]))}},Wt={class:"headline"},He={__name:"RecoveryCodesResetDialog",props:{tokens:{type:Array,default:null}},emits:["close"],setup(n,{emit:l}){const{$gettext:i}=j(),s=l;function f(){s("close")}return(h,o)=>(P(),O(Z,null,{default:c(()=>[u(ge,null,{default:c(()=>[A("span",Wt,g(m(i)("New recovery codes")),1)]),_:1}),u(X,null,{default:c(()=>[u(ee,{type:"info"},{default:c(()=>[S(g(m(i)("The following recovery codes can be used one time each to let you regain access to your account, in case you lose your phone for example. Make sure to save them in a safe place, otherwise you won't be able to access your account anymore.")),1)]),_:1}),u(De,{class:"mt-4",density:"compact"},{default:c(()=>[A("tbody",null,[(P(!0),D(B,null,xe(n.tokens,e=>(P(),D("tr",{key:e},[A("td",null,g(e),1)]))),128))])]),_:1})]),_:1}),u(Ee,null,{default:c(()=>[u(gt),u(Q,{color:"grey darken-1",text:"",onClick:f},{default:c(()=>[S(g(m(i)("Close")),1)]),_:1})]),_:1})]),_:1}))}},Jt={class:"text-h6"},Xt={class:"m-label"},Zt={class:"mt-5"},jt={key:1,tag:"p",class:"my-4"},ea={__name:"BackupCodeAuthForm",setup(n){const{$gettext:l}=j(),i=se(),s=ce(),f=J(()=>s.authUser.tfa_enabled),h=_(!1),o=_(),e=_(""),t=_([]),a=_(),r=_(!1);async function d(){if(!await o.value.validate())return;const w={password:e.value};h.value=!0,Y.resetRecoveryCodes(w).then(k=>{t.value=k.data.tokens,r.value=!0}).catch(k=>{k.response.status===400?a.value=k.response.data.password:i.displayNotification({msg:l(k.response.data),type:"error"})}).finally(()=>{h.value=!1,o.value.reset()})}function v(){t.value=[],r.value=!1}return(p,w)=>(P(),D("div",null,[u(Z,{flat:""},{default:c(()=>[u(ge,null,{default:c(()=>[A("span",Jt,g(m(l)("Backup codes")),1)]),_:1}),u(X,null,{default:c(()=>[f.value?(P(),D(B,{key:0},[u(ee,{type:"info",class:"mb-2"},{default:c(()=>[S(g(m(l)("You already have generated backup codes for this account. If you don't remember them or have used them all, you can generate new ones.")),1)]),_:1}),u(ae,{ref_key:"editTFAForm",ref:o},{default:c(()=>[A("label",Xt,g(m(l)("Password")),1),u(K,{modelValue:e.value,"onUpdate:modelValue":w[0]||(w[0]=k=>e.value=k),autocomplete:"new-password",type:"password",variant:"outlined",density:"compact",rules:[m(oe).required],"error-messages":a.value},null,8,["modelValue","rules","error-messages"]),A("div",Zt,[u(Q,{loading:h.value,color:"success",onClick:d},{default:c(()=>[S(g(m(l)("Reset recovery codes")),1)]),_:1},8,["loading"])])]),_:1},512)],64)):(P(),D("div",jt,g(m(l)("No two-factor authentificator is yet set for your account.")),1)),u($e,{modelValue:r.value,"onUpdate:modelValue":w[1]||(w[1]=k=>r.value=k),"max-width":"800px",persistent:""},{default:c(()=>[u(m(He),{tokens:t.value,onClose:v},null,8,["tokens"])]),_:1},8,["modelValue"])]),_:1})]),_:1})]))}},ta={class:"m-label"},aa={__name:"ForwardForm",setup(n){const{$gettext:l}=j(),i=se(),s=_({}),f=_(!1);function h(){f.value=!0,Y.setForward(s.value).then(()=>{f.value=!1,i.displayNotification({type:"success",msg:l("Forward updated")})})}return Y.getForward().then(o=>{s.value=o.data}),(o,e)=>(P(),O(Z,{flat:""},{default:c(()=>[u(X,null,{default:c(()=>[A("label",ta,g(m(l)("Recipient(s)")),1),u(Oe,{modelValue:s.value.recipients,"onUpdate:modelValue":e[0]||(e[0]=t=>s.value.recipients=t),hint:m(l)("Indicate one or more recipients separated by a comma (,)"),"persistent-hint":"",rows:"3",variant:"outlined"},null,8,["modelValue","hint"]),u(Le,{modelValue:s.value.keepcopies,"onUpdate:modelValue":e[1]||(e[1]=t=>s.value.keepcopies=t),label:m(l)("Keep local copies"),hint:m(l)("Forward messages and store copies into your local mailbox"),"persistent-hint":""},null,8,["modelValue","label","hint"])]),_:1}),u(Ee,{class:"pa-4"},{default:c(()=>[u(Q,{color:"success",variant:"flat",loading:f.value,onClick:h},{default:c(()=>[S(g(m(l)("Update")),1)]),_:1},8,["loading"])]),_:1})]),_:1}))}},oa={class:"m-label"},na={class:"mb-4"},ra={class:"m-label"},la={class:"mb-4"},sa={class:"m-label"},ia={class:"mb-4"},ua={class:"m-label"},da={__name:"AutoReplyForm",setup(n){const l=se(),{$gettext:i}=j(),s=_({}),f=_(),h=_(!1);async function o(){const{valid:e}=await f.value.validate();e&&(h.value=!0,s.value.fromdate===""&&(s.value.fromdate=null),s.value.untildate===""&&(s.value.untildate=null),Y.setARMessage(s.value).then(()=>{l.displayNotification({msg:i("Auto-reply message updated")}),h.value=!1}).catch(()=>{h.value=!1}))}return Y.getARMessage().then(e=>{s.value=e.data,s.value.fromdate&&(s.value.fromdate=s.value.fromdate.slice(0,-4)),s.value.untildate&&(s.value.untildate=s.value.untildate.slice(0,-4))}),(e,t)=>(P(),O(Z,{flat:""},{default:c(()=>[u(X,null,{default:c(()=>[u(ae,{ref_key:"formRef",ref:f,onSubmit:me(o,["prevent"])},{default:c(()=>[u(Le,{modelValue:s.value.enabled,"onUpdate:modelValue":t[0]||(t[0]=a=>s.value.enabled=a),label:m(i)("Enabled"),color:"primary","hide-details":"",class:"mb-4"},null,8,["modelValue","label"]),A("label",oa,g(m(i)("Subject")),1),u(K,{modelValue:s.value.subject,"onUpdate:modelValue":t[1]||(t[1]=a=>s.value.subject=a),variant:"outlined",density:"compact",rules:[m(oe).required]},null,8,["modelValue","rules"]),A("div",na,[A("label",ra,g(m(i)("Content")),1),u(Oe,{modelValue:s.value.content,"onUpdate:modelValue":t[2]||(t[2]=a=>s.value.content=a),hint:m(i)("The content of your answer. You can use the following variables, which will be automatically replaced by the appropriate value: %(name)s, %(fromdate)s, %(untildate)s"),"persistent-hint":"",variant:"outlined",rows:"3",density:"compact",rules:[m(oe).required]},null,8,["modelValue","hint","rules"])]),A("div",la,[A("label",sa,g(m(i)("From")),1),u(K,{modelValue:s.value.fromdate,"onUpdate:modelValue":t[3]||(t[3]=a=>s.value.fromdate=a),hint:m(i)("Activate your auto reply from this date"),variant:"outlined","persistent-hint":"",type:"datetime-local",density:"compact"},null,8,["modelValue","hint"])]),A("div",ia,[A("label",ua,g(m(i)("Until")),1),u(K,{modelValue:s.value.untildate,"onUpdate:modelValue":t[4]||(t[4]=a=>s.value.untildate=a),hint:m(i)("Activate your auto reply until this date"),variant:"outlined","persistent-hint":"",type:"datetime-local",density:"compact"},null,8,["modelValue","hint"])]),u(Q,{color:"success",type:"submit",loading:h.value},{default:c(()=>[S(g(m(i)("Update auto-reply")),1)]),_:1},8,["loading"])]),_:1},512)]),_:1})]),_:1}))}},ca={class:"m-label"},fa={class:"ml-5 mr-5"},va=["href"],ma={__name:"APISetupForm",setup(n){const{$gettext:l}=j(),i=se(),s=ot("$config"),f=J(()=>s.API_DOC_URL),h=_(!1),o=_(null),e=_();function t(){navigator.clipboard.writeText(o.value),i.displayNotification({msg:l("API token copied to your clipboard"),type:"success"})}function a(){h.value=!0,Y.createAPIToken().then(v=>{o.value=v.data.token,i.displayNotification({msg:l("API token created"),type:"success"})}).finally(()=>h.value=!1)}function r(){e.value.open(l("Warning"),l("You are about to delete your API access token"),{color:"error",cancelLabel:l("Cancel"),agreeLabel:l("Proceed")})}async function d(){await Y.deleteAPIToken(),i.displayNotification({msg:l("API token deleted"),type:"success"}),o.value=null}return pe(()=>{Y.getAPIToken().then(v=>{o.value=v.data.token})}),(v,p)=>(P(),D(B,null,[o.value?(P(),O(Z,{key:1,flat:""},{default:c(()=>[u(X,null,{default:c(()=>[A("label",ca,g(m(l)("Your API token is:")),1),A("code",fa,g(o.value),1),u(Q,{icon:"mdi-clipboard-plus",density:"compact",title:m(l)("Copy token to clipboard"),variant:"text",onClick:p[0]||(p[0]=w=>t())},null,8,["title"]),u(Q,{icon:"mdi-delete",density:"compact",color:"error",variant:"text",title:m(l)("Delete token"),onClick:r},null,8,["title"])]),_:1})]),_:1})):(P(),O(Z,{key:0,flat:""},{default:c(()=>[u(X,null,{default:c(()=>[S(g(m(l)("Your API token has not been generated yet.")),1)]),_:1}),u(Ee,null,{default:c(()=>[u(Q,{color:"success",variant:"flat",loading:h.value,onClick:a},{default:c(()=>[S(g(m(l)("Generate")),1)]),_:1},8,["loading"])]),_:1})]),_:1})),u(ee,{type:"info",variant:"tonal",border:"start",class:"mt-4"},{default:c(()=>[S(g(m(l)("A documentation of the API is available"))+" ",1),A("a",{href:f.value,target:"_blank"},g(m(l)("here")),9,va),p[1]||(p[1]=S(". "))]),_:1,__:[1]}),u(we,{ref_key:"confirm",ref:e,onAgree:d},null,512)],64))}};function ha(n){const l="==".slice(0,(4-n.length%4)%4),i=n.replace(/-/g,"+").replace(/_/g,"/")+l,s=atob(i),f=new ArrayBuffer(s.length),h=new Uint8Array(f);for(let o=0;o<s.length;o++)h[o]=s.charCodeAt(o);return f}function pa(n){const l=new Uint8Array(n);let i="";for(const h of l)i+=String.fromCharCode(h);return btoa(i).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}var U="copy",te="convert";function he(n,l,i){if(l===U)return i;if(l===te)return n(i);if(l instanceof Array)return i.map(s=>he(n,l[0],s));if(l instanceof Object){const s={};for(const[f,h]of Object.entries(l)){if(h.derive){const o=h.derive(i);o!==void 0&&(i[f]=o)}if(!(f in i)){if(h.required)throw new Error(`Missing key: ${f}`);continue}if(i[f]==null){s[f]=null;continue}s[f]=he(n,h.schema,i[f])}return s}}function Ie(n,l){return{required:!0,schema:n,derive:l}}function L(n){return{required:!0,schema:n}}function z(n){return{required:!1,schema:n}}var ga={type:L(U),id:L(te),transports:z(U)},ya={appid:z(U),appidExclude:z(U),credProps:z(U)},_a={appid:z(U),appidExclude:z(U),credProps:z(U)},ba={publicKey:L({rp:L(U),user:L({id:L(te),name:L(U),displayName:L(U)}),challenge:L(te),pubKeyCredParams:L(U),timeout:z(U),excludeCredentials:z([ga]),authenticatorSelection:z(U),attestation:z(U),extensions:z(ya)}),signal:z(U)},wa={type:L(U),id:L(U),rawId:L(te),authenticatorAttachment:z(U),response:L({clientDataJSON:L(te),attestationObject:L(te),transports:Ie(U,n=>{var l;return((l=n.getTransports)==null?void 0:l.call(n))||[]})}),clientExtensionResults:Ie(_a,n=>n.getClientExtensionResults())};function Ca(n){return he(ha,ba,n)}function Ea(n){return he(pa,wa,n)}async function Aa(n){const l=await navigator.credentials.create(n);return l.toJSON=()=>Ea(l),l}const ka={class:"text-h6"},Va={tag:"p",class:"my-4"},Sa={__name:"FidoAuthForm",setup(n){const l=ce(),{$gettext:i}=j(),s=_(),f=_(!1),h=!!(navigator.credentials&&navigator.credentials.create&&navigator.credentials.get&&window.PublicKeyCredential),o=_(),e=J(()=>l.fidoCreds),t=[{title:i("Name"),key:"name"},{title:i("Added On"),key:"added_on"},{title:i("Last Used"),key:"last_used"},{title:i("Use count"),key:"use_count"},{title:i("Actions"),key:"actions"}],a=_(),r=_(),d=_(),v=_(""),p=_(),w=_(!1);async function k(){const{valid:y}=await o.value.validate();if(!y)return;f.value=!0;const b=await nt.beginFidoRegistration();if(b){const V=Ca(b.data),E=(await Aa(V)).toJSON();E.name=s.value,l.addFidoCred(E).then(M=>{M.status===200&&(p.value=M.data.tokens,w.value=!0)}),o.value.reset(),f.value=!1;return}f.value=!1}function N(){p.value=[],w.value=!1}async function F(y){await a.value.open(i("Warning"),i("Do you really want to delete this WebAuthn device?"),{color:"warning",cancelLabel:i("No"),agreeLabel:i("Yes")})&&l.deleteFidoCreds(y.id)}async function R(){return(await d.value.validate()).valid}async function C(y){if(v.value=y.name,!await r.value.open(i("Edition"),i("Edit your device"),{color:"warning",cancelLabel:i("Cancel"),agreeLabel:i("Save")}))return;const V={name:v.value};await l.editFidoCred(y.id,V)}return pe(()=>{l.getFidoCreds()}),(y,b)=>(P(),D(B,null,[A("div",null,[u(Z,{flat:""},{default:c(()=>[u(ge,null,{default:c(()=>[A("span",ka,g(m(i)("WebAuthn")),1)]),_:1}),u(X,null,{default:c(()=>[u(ve,null,{default:c(()=>[e.value.length===0?(P(),O(de,{key:0,cols:"4"},{default:c(()=>[A("div",Va,g(m(i)("You don't have any WebAuthN device registered as a second authentication method.")),1)]),_:1})):(P(),O(de,{key:1,cols:"8"},{default:c(()=>[A("h3",null,g(m(i)("Registered Webauthn devices")),1),u(yt,{headers:t,items:e.value,"item-value":"id"},{"item.added_on":c(({item:V})=>[S(g(y.$date(V.added_on)),1)]),"item.last_used":c(({item:V})=>[V.last_used===null?(P(),D(B,{key:0},[S(g(m(i)("Never")),1)],64)):(P(),D(B,{key:1},[S(g(y.$date(V.last_used)),1)],64))]),"item.enabled":c(({item:V})=>[S(g(y.$yesno(V.enabled)),1)]),"item.actions":c(({item:V})=>[u(be,{class:"me-2",size:"small",onClick:T=>C(V)},{default:c(()=>b[3]||(b[3]=[S(" mdi-pencil ")])),_:2,__:[3]},1032,["onClick"]),u(be,{size:"small",onClick:T=>F(V)},{default:c(()=>b[4]||(b[4]=[S(" mdi-delete ")])),_:2,__:[4]},1032,["onClick"])]),_:2},1032,["items"])]),_:1})),u(de,{cols:"4"},{default:c(()=>[h?(P(),D(B,{key:0},[A("h3",null,g(m(i)("Enter a name to register a new webauthn device.")),1),u(ae,{ref_key:"fidoForm",ref:o,onSubmit:me(k,["prevent"])},{default:c(()=>[u(K,{modelValue:s.value,"onUpdate:modelValue":b[0]||(b[0]=V=>s.value=V),label:m(i)("New device name"),rules:[m(oe).required]},null,8,["modelValue","label","rules"]),u(Q,{color:"success",type:"submit",loading:f.value},{default:c(()=>[S(g(m(i)("Setup device")),1)]),_:1},8,["loading"])]),_:1},512)],64)):(P(),O(ee,{key:1,type:"error"},{default:c(()=>[S(g(m(i)("Your browser does not seem compatible with WebAuthN")),1)]),_:1}))]),_:1})]),_:1})]),_:1})]),_:1})]),u(we,{ref_key:"confirmDeletion",ref:a},null,512),u(we,{ref_key:"confirmEdition",ref:r,callback_agree:R},{default:c(()=>[u(ae,{ref_key:"editForm",ref:d},{default:c(()=>[u(K,{modelValue:v.value,"onUpdate:modelValue":b[1]||(b[1]=V=>v.value=V),label:m(i)("name"),rules:[m(oe).required]},null,8,["modelValue","label","rules"])]),_:1},512)]),_:1},512),u($e,{modelValue:w.value,"onUpdate:modelValue":b[2]||(b[2]=V=>w.value=V),"max-width":"800px",persistent:""},{default:c(()=>[u(He,{tokens:p.value,onClose:N},null,8,["tokens"])]),_:1},8,["modelValue"])],64))}},Ra={class:"pa-4"},Pa={__name:"SettingsView",setup(n){const l=ce(),i=_();return(s,f)=>(P(),D(B,null,[u(bt,{flat:""},{default:c(()=>[u(wt,null,{default:c(()=>[S(g(s.$gettext("Account settings")),1)]),_:1})]),_:1}),A("div",Ra,[u(Ct,{modelValue:i.value,"onUpdate:modelValue":f[0]||(f[0]=h=>i.value=h),color:"primary",class:"mb-4"},{default:c(()=>[u(ie,{value:"profile"},{default:c(()=>[S(g(s.$gettext("Profile")),1)]),_:1}),u(ie,{value:"security"},{default:c(()=>[S(g(s.$gettext("Two-factor auth")),1)]),_:1}),m(l).userHasMailbox?(P(),O(ie,{key:0,value:"forward"},{default:c(()=>[S(g(s.$gettext("Forward")),1)]),_:1})):W("",!0),m(l).userHasMailbox?(P(),O(ie,{key:1,value:"autoreply"},{default:c(()=>[S(g(s.$gettext("Auto-reply message")),1)]),_:1})):W("",!0),m(l).authUser.role===m(Me).SUPER_ADMIN?(P(),O(ie,{key:2,value:"api"},{default:c(()=>[S(g(s.$gettext("API access")),1)]),_:1})):W("",!0)]),_:1},8,["modelValue"]),u(Et,{modelValue:i.value,"onUpdate:modelValue":f[1]||(f[1]=h=>i.value=h)},{default:c(()=>[u(ue,{value:"profile"},{default:c(()=>[u(It)]),_:1}),u(ue,{value:"security"},{default:c(()=>[u(Gt),u(Sa),u(ea)]),_:1}),m(l).userHasMailbox?(P(),O(ue,{key:0,value:"forward"},{default:c(()=>[u(aa)]),_:1})):W("",!0),m(l).userHasMailbox?(P(),O(ue,{key:1,value:"autoreply"},{default:c(()=>[u(da)]),_:1})):W("",!0),m(l).authUser.role===m(Me).SUPER_ADMIN?(P(),O(ue,{key:2,value:"api"},{default:c(()=>[u(ma)]),_:1})):W("",!0)]),_:1},8,["modelValue"])])],64))}},co=_t(Pa,[["__scopeId","data-v-fc9b36ca"]]);export{co as default};
|
|
6
|
+
*/var Y=function(){return Y=Object.assign||function(l){for(var i,s=1,f=arguments.length;s<f;s++){i=arguments[s];for(var h in i)Object.prototype.hasOwnProperty.call(i,h)&&(l[h]=i[h])}return l},Y.apply(this,arguments)};var ne;(function(n){var l=function(){function o(e,t,a,r){if(this.version=e,this.errorCorrectionLevel=t,this.modules=[],this.isFunction=[],e<o.MIN_VERSION||e>o.MAX_VERSION)throw new RangeError("Version value out of range");if(r<-1||r>7)throw new RangeError("Mask value out of range");this.size=e*4+17;for(var d=[],v=0;v<this.size;v++)d.push(!1);for(var v=0;v<this.size;v++)this.modules.push(d.slice()),this.isFunction.push(d.slice());this.drawFunctionPatterns();var p=this.addEccAndInterleave(a);if(this.drawCodewords(p),r==-1)for(var w=1e9,v=0;v<8;v++){this.applyMask(v),this.drawFormatBits(v);var k=this.getPenaltyScore();k<w&&(r=v,w=k),this.applyMask(v)}f(0<=r&&r<=7),this.mask=r,this.applyMask(r),this.drawFormatBits(r),this.isFunction=[]}return o.encodeText=function(e,t){var a=n.QrSegment.makeSegments(e);return o.encodeSegments(a,t)},o.encodeBinary=function(e,t){var a=n.QrSegment.makeBytes(e);return o.encodeSegments([a],t)},o.encodeSegments=function(e,t,a,r,d,v){if(a===void 0&&(a=1),r===void 0&&(r=40),d===void 0&&(d=-1),v===void 0&&(v=!0),!(o.MIN_VERSION<=a&&a<=r&&r<=o.MAX_VERSION)||d<-1||d>7)throw new RangeError("Invalid value");var p,w;for(p=a;;p++){var k=o.getNumDataCodewords(p,t)*8,N=h.getTotalBits(e,p);if(N<=k){w=N;break}if(p>=r)throw new RangeError("Data too long")}for(var F=0,R=[o.Ecc.MEDIUM,o.Ecc.QUARTILE,o.Ecc.HIGH];F<R.length;F++){var C=R[F];v&&w<=o.getNumDataCodewords(p,C)*8&&(t=C)}for(var y=[],b=0,V=e;b<V.length;b++){var T=V[b];i(T.mode.modeBits,4,y),i(T.numChars,T.mode.numCharCountBits(p),y);for(var E=0,M=T.getData();E<M.length;E++){var $=M[E];y.push($)}}f(y.length==w);var x=o.getNumDataCodewords(p,t)*8;f(y.length<=x),i(0,Math.min(4,x-y.length),y),i(0,(8-y.length%8)%8,y),f(y.length%8==0);for(var I=236;y.length<x;I^=253)i(I,8,y);for(var q=[];q.length*8<y.length;)q.push(0);return y.forEach(function(ye,fe){return q[fe>>>3]|=ye<<7-(fe&7)}),new o(p,t,q,d)},o.prototype.getModule=function(e,t){return 0<=e&&e<this.size&&0<=t&&t<this.size&&this.modules[t][e]},o.prototype.getModules=function(){return this.modules},o.prototype.drawFunctionPatterns=function(){for(var e=0;e<this.size;e++)this.setFunctionModule(6,e,e%2==0),this.setFunctionModule(e,6,e%2==0);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);for(var t=this.getAlignmentPatternPositions(),a=t.length,e=0;e<a;e++)for(var r=0;r<a;r++)e==0&&r==0||e==0&&r==a-1||e==a-1&&r==0||this.drawAlignmentPattern(t[e],t[r]);this.drawFormatBits(0),this.drawVersion()},o.prototype.drawFormatBits=function(e){for(var t=this.errorCorrectionLevel.formatBits<<3|e,a=t,r=0;r<10;r++)a=a<<1^(a>>>9)*1335;var d=(t<<10|a)^21522;f(d>>>15==0);for(var r=0;r<=5;r++)this.setFunctionModule(8,r,s(d,r));this.setFunctionModule(8,7,s(d,6)),this.setFunctionModule(8,8,s(d,7)),this.setFunctionModule(7,8,s(d,8));for(var r=9;r<15;r++)this.setFunctionModule(14-r,8,s(d,r));for(var r=0;r<8;r++)this.setFunctionModule(this.size-1-r,8,s(d,r));for(var r=8;r<15;r++)this.setFunctionModule(8,this.size-15+r,s(d,r));this.setFunctionModule(8,this.size-8,!0)},o.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^(e>>>11)*7973;var a=this.version<<12|e;f(a>>>18==0);for(var t=0;t<18;t++){var r=s(a,t),d=this.size-11+t%3,v=Math.floor(t/3);this.setFunctionModule(d,v,r),this.setFunctionModule(v,d,r)}}},o.prototype.drawFinderPattern=function(e,t){for(var a=-4;a<=4;a++)for(var r=-4;r<=4;r++){var d=Math.max(Math.abs(r),Math.abs(a)),v=e+r,p=t+a;0<=v&&v<this.size&&0<=p&&p<this.size&&this.setFunctionModule(v,p,d!=2&&d!=4)}},o.prototype.drawAlignmentPattern=function(e,t){for(var a=-2;a<=2;a++)for(var r=-2;r<=2;r++)this.setFunctionModule(e+r,t+a,Math.max(Math.abs(r),Math.abs(a))!=1)},o.prototype.setFunctionModule=function(e,t,a){this.modules[t][e]=a,this.isFunction[t][e]=!0},o.prototype.addEccAndInterleave=function(e){var t=this.version,a=this.errorCorrectionLevel;if(e.length!=o.getNumDataCodewords(t,a))throw new RangeError("Invalid argument");for(var r=o.NUM_ERROR_CORRECTION_BLOCKS[a.ordinal][t],d=o.ECC_CODEWORDS_PER_BLOCK[a.ordinal][t],v=Math.floor(o.getNumRawDataModules(t)/8),p=r-v%r,w=Math.floor(v/r),k=[],N=o.reedSolomonComputeDivisor(d),F=0,R=0;F<r;F++){var C=e.slice(R,R+w-d+(F<p?0:1));R+=C.length;var y=o.reedSolomonComputeRemainder(C,N);F<p&&C.push(0),k.push(C.concat(y))}for(var b=[],V=function(T){k.forEach(function(E,M){(T!=w-d||M>=p)&&b.push(E[T])})},F=0;F<k[0].length;F++)V(F);return f(b.length==v),b},o.prototype.drawCodewords=function(e){if(e.length!=Math.floor(o.getNumRawDataModules(this.version)/8))throw new RangeError("Invalid argument");for(var t=0,a=this.size-1;a>=1;a-=2){a==6&&(a=5);for(var r=0;r<this.size;r++)for(var d=0;d<2;d++){var v=a-d,p=(a+1&2)==0,w=p?this.size-1-r:r;!this.isFunction[w][v]&&t<e.length*8&&(this.modules[w][v]=s(e[t>>>3],7-(t&7)),t++)}}f(t==e.length*8)},o.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t<this.size;t++)for(var a=0;a<this.size;a++){var r=void 0;switch(e){case 0:r=(a+t)%2==0;break;case 1:r=t%2==0;break;case 2:r=a%3==0;break;case 3:r=(a+t)%3==0;break;case 4:r=(Math.floor(a/3)+Math.floor(t/2))%2==0;break;case 5:r=a*t%2+a*t%3==0;break;case 6:r=(a*t%2+a*t%3)%2==0;break;case 7:r=((a+t)%2+a*t%3)%2==0;break;default:throw new Error("Unreachable")}!this.isFunction[t][a]&&r&&(this.modules[t][a]=!this.modules[t][a])}},o.prototype.getPenaltyScore=function(){for(var e=0,t=0;t<this.size;t++){for(var a=!1,r=0,d=[0,0,0,0,0,0,0],v=0;v<this.size;v++)this.modules[t][v]==a?(r++,r==5?e+=o.PENALTY_N1:r>5&&e++):(this.finderPenaltyAddHistory(r,d),a||(e+=this.finderPenaltyCountPatterns(d)*o.PENALTY_N3),a=this.modules[t][v],r=1);e+=this.finderPenaltyTerminateAndCount(a,r,d)*o.PENALTY_N3}for(var v=0;v<this.size;v++){for(var a=!1,p=0,d=[0,0,0,0,0,0,0],t=0;t<this.size;t++)this.modules[t][v]==a?(p++,p==5?e+=o.PENALTY_N1:p>5&&e++):(this.finderPenaltyAddHistory(p,d),a||(e+=this.finderPenaltyCountPatterns(d)*o.PENALTY_N3),a=this.modules[t][v],p=1);e+=this.finderPenaltyTerminateAndCount(a,p,d)*o.PENALTY_N3}for(var t=0;t<this.size-1;t++)for(var v=0;v<this.size-1;v++){var w=this.modules[t][v];w==this.modules[t][v+1]&&w==this.modules[t+1][v]&&w==this.modules[t+1][v+1]&&(e+=o.PENALTY_N2)}for(var k=0,N=0,F=this.modules;N<F.length;N++){var R=F[N];k=R.reduce(function(b,V){return b+(V?1:0)},k)}var C=this.size*this.size,y=Math.ceil(Math.abs(k*20-C*10)/C)-1;return f(0<=y&&y<=9),e+=y*o.PENALTY_N4,f(0<=e&&e<=2568888),e},o.prototype.getAlignmentPatternPositions=function(){if(this.version==1)return[];for(var e=Math.floor(this.version/7)+2,t=Math.floor((this.version*8+e*3+5)/(e*4-4))*2,a=[6],r=this.size-7;a.length<e;r-=t)a.splice(1,0,r);return a},o.getNumRawDataModules=function(e){if(e<o.MIN_VERSION||e>o.MAX_VERSION)throw new RangeError("Version number out of range");var t=(16*e+128)*e+64;if(e>=2){var a=Math.floor(e/7)+2;t-=(25*a-10)*a-55,e>=7&&(t-=36)}return f(208<=t&&t<=29648),t},o.getNumDataCodewords=function(e,t){return Math.floor(o.getNumRawDataModules(e)/8)-o.ECC_CODEWORDS_PER_BLOCK[t.ordinal][e]*o.NUM_ERROR_CORRECTION_BLOCKS[t.ordinal][e]},o.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var t=[],a=0;a<e-1;a++)t.push(0);t.push(1);for(var r=1,a=0;a<e;a++){for(var d=0;d<t.length;d++)t[d]=o.reedSolomonMultiply(t[d],r),d+1<t.length&&(t[d]^=t[d+1]);r=o.reedSolomonMultiply(r,2)}return t},o.reedSolomonComputeRemainder=function(e,t){for(var a=t.map(function(w){return 0}),r=function(w){var k=w^a.shift();a.push(0),t.forEach(function(N,F){return a[F]^=o.reedSolomonMultiply(N,k)})},d=0,v=e;d<v.length;d++){var p=v[d];r(p)}return a},o.reedSolomonMultiply=function(e,t){if(e>>>8||t>>>8)throw new RangeError("Byte out of range");for(var a=0,r=7;r>=0;r--)a=a<<1^(a>>>7)*285,a^=(t>>>r&1)*e;return f(a>>>8==0),a},o.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];f(t<=this.size*3);var a=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(a&&e[0]>=t*4&&e[6]>=t?1:0)+(a&&e[6]>=t*4&&e[0]>=t?1:0)},o.prototype.finderPenaltyTerminateAndCount=function(e,t,a){return e&&(this.finderPenaltyAddHistory(t,a),t=0),t+=this.size,this.finderPenaltyAddHistory(t,a),this.finderPenaltyCountPatterns(a)},o.prototype.finderPenaltyAddHistory=function(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)},o.MIN_VERSION=1,o.MAX_VERSION=40,o.PENALTY_N1=3,o.PENALTY_N2=3,o.PENALTY_N3=40,o.PENALTY_N4=10,o.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],o.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],o}();n.QrCode=l;function i(o,e,t){if(e<0||e>31||o>>>e)throw new RangeError("Value out of range");for(var a=e-1;a>=0;a--)t.push(o>>>a&1)}function s(o,e){return(o>>>e&1)!=0}function f(o){if(!o)throw new Error("Assertion error")}var h=function(){function o(e,t,a){if(this.mode=e,this.numChars=t,this.bitData=a,t<0)throw new RangeError("Invalid argument");this.bitData=a.slice()}return o.makeBytes=function(e){for(var t=[],a=0,r=e;a<r.length;a++){var d=r[a];i(d,8,t)}return new o(o.Mode.BYTE,e.length,t)},o.makeNumeric=function(e){if(!o.isNumeric(e))throw new RangeError("String contains non-numeric characters");for(var t=[],a=0;a<e.length;){var r=Math.min(e.length-a,3);i(parseInt(e.substring(a,a+r),10),r*3+1,t),a+=r}return new o(o.Mode.NUMERIC,e.length,t)},o.makeAlphanumeric=function(e){if(!o.isAlphanumeric(e))throw new RangeError("String contains unencodable characters in alphanumeric mode");var t=[],a;for(a=0;a+2<=e.length;a+=2){var r=o.ALPHANUMERIC_CHARSET.indexOf(e.charAt(a))*45;r+=o.ALPHANUMERIC_CHARSET.indexOf(e.charAt(a+1)),i(r,11,t)}return a<e.length&&i(o.ALPHANUMERIC_CHARSET.indexOf(e.charAt(a)),6,t),new o(o.Mode.ALPHANUMERIC,e.length,t)},o.makeSegments=function(e){return e==""?[]:o.isNumeric(e)?[o.makeNumeric(e)]:o.isAlphanumeric(e)?[o.makeAlphanumeric(e)]:[o.makeBytes(o.toUtf8ByteArray(e))]},o.makeEci=function(e){var t=[];if(e<0)throw new RangeError("ECI assignment value out of range");if(e<128)i(e,8,t);else if(e<16384)i(2,2,t),i(e,14,t);else if(e<1e6)i(6,3,t),i(e,21,t);else throw new RangeError("ECI assignment value out of range");return new o(o.Mode.ECI,0,t)},o.isNumeric=function(e){return o.NUMERIC_REGEX.test(e)},o.isAlphanumeric=function(e){return o.ALPHANUMERIC_REGEX.test(e)},o.prototype.getData=function(){return this.bitData.slice()},o.getTotalBits=function(e,t){for(var a=0,r=0,d=e;r<d.length;r++){var v=d[r],p=v.mode.numCharCountBits(t);if(v.numChars>=1<<p)return 1/0;a+=4+p+v.bitData.length}return a},o.toUtf8ByteArray=function(e){e=encodeURI(e);for(var t=[],a=0;a<e.length;a++)e.charAt(a)!="%"?t.push(e.charCodeAt(a)):(t.push(parseInt(e.substring(a+1,a+3),16)),a+=2);return t},o.NUMERIC_REGEX=/^[0-9]*$/,o.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,o.ALPHANUMERIC_CHARSET="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",o}();n.QrSegment=h})(ne||(ne={}));(function(n){(function(l){var i=function(){function s(f,h){this.ordinal=f,this.formatBits=h}return s.LOW=new s(0,1),s.MEDIUM=new s(1,0),s.QUARTILE=new s(2,3),s.HIGH=new s(3,2),s}();l.Ecc=i})(n.QrCode||(n.QrCode={}))})(ne||(ne={}));(function(n){(function(l){var i=function(){function s(f,h){this.modeBits=f,this.numBitsCharCount=h}return s.prototype.numCharCountBits=function(f){return this.numBitsCharCount[Math.floor((f+7)/17)]},s.NUMERIC=new s(1,[10,12,14]),s.ALPHANUMERIC=new s(2,[9,11,13]),s.BYTE=new s(4,[8,16,16]),s.KANJI=new s(8,[8,10,12]),s.ECI=new s(7,[0,0,0]),s}();l.Mode=i})(n.QrSegment||(n.QrSegment={}))})(ne||(ne={}));var le=ne,Ae="L",ke={L:le.QrCode.Ecc.LOW,M:le.QrCode.Ecc.MEDIUM,Q:le.QrCode.Ecc.QUARTILE,H:le.QrCode.Ecc.HIGH},Ut=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}();function Ve(n){return n in ke}function Be(n,l){l===void 0&&(l=0);var i=[];return n.forEach(function(s,f){var h=null;s.forEach(function(o,e){if(!o&&h!==null){i.push("M".concat(h+l," ").concat(f+l,"h").concat(e-h,"v1H").concat(h+l,"z")),h=null;return}if(e===s.length-1){if(!o)return;h===null?i.push("M".concat(e+l,",").concat(f+l," h1v1H").concat(e+l,"z")):i.push("M".concat(h+l,",").concat(f+l," h").concat(e+1-h,"v1H").concat(h+l,"z"));return}o&&h===null&&(h=e)})}),i.join("")}function ze(n,l,i,s){var f=s.width,h=s.height,o=s.x,e=s.y,t=n.length+i*2,a=Math.floor(l*.1),r=t/l,d=(f||a)*r,v=(h||a)*r,p=o==null?n.length/2-d/2:o*r,w=e==null?n.length/2-v/2:e*r,k=null;if(s.excavate){var N=Math.floor(p),F=Math.floor(w),R=Math.ceil(d+p-N),C=Math.ceil(v+w-F);k={x:N,y:F,w:R,h:C}}return{x:p,y:w,h:v,w:d,excavation:k}}function Qe(n,l){return n.slice().map(function(i,s){return s<l.y||s>=l.y+l.h?i:i.map(function(f,h){return h<l.x||h>=l.x+l.w?f:!1})})}var Se={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:Ae,validator:function(n){return Ve(n)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(n){return["linear","radial"].indexOf(n)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},xt=Y(Y({},Se),{renderAs:{type:String,required:!1,default:"canvas",validator:function(n){return["canvas","svg"].indexOf(n)>-1}}}),Dt=Ce({name:"QRCodeSvg",props:Se,setup:function(n){var l=_(0),i=_(""),s,f=function(){var o=n.value,e=n.level,t=n.margin,a=t>>>0,r=Ve(e)?e:Ae,d=le.QrCode.encodeText(o,ke[r]).getModules();if(l.value=d.length+a*2,n.imageSettings.src){var v=ze(d,n.size,a,n.imageSettings);s={x:v.x+a,y:v.y+a,width:v.w,height:v.h},v.excavation&&(d=Qe(d,v.excavation))}i.value=Be(d,a)},h=function(){if(!n.gradient)return null;var o=n.gradientType==="linear"?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return H(n.gradientType==="linear"?"linearGradient":"radialGradient",Y({id:"qr-gradient"},o),[H("stop",{offset:"0%",style:{stopColor:n.gradientStartColor}}),H("stop",{offset:"100%",style:{stopColor:n.gradientEndColor}})])};return f(),Ue(f),function(){return H("svg",{width:n.size,height:n.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(l.value," ").concat(l.value)},[H("defs",{},[h()]),H("rect",{width:"100%",height:"100%",fill:n.background}),H("path",{fill:n.gradient?"url(#qr-gradient)":n.foreground,d:i.value}),n.imageSettings.src&&H("image",Y({href:n.imageSettings.src},s))])}}}),$t=Ce({name:"QRCodeCanvas",props:Se,setup:function(n,l){var i=_(null),s=_(null),f=function(){var o=n.value,e=n.level,t=n.size,a=n.margin,r=n.background,d=n.foreground,v=n.gradient,p=n.gradientType,w=n.gradientStartColor,k=n.gradientEndColor,N=a>>>0,F=Ve(e)?e:Ae,R=i.value;if(R){var C=R.getContext("2d");if(C){var y=le.QrCode.encodeText(o,ke[F]).getModules(),b=y.length+N*2,V=s.value,T={x:0,y:0,width:0,height:0},E=n.imageSettings.src&&V!=null&&V.naturalWidth!==0&&V.naturalHeight!==0;if(E){var M=ze(y,n.size,N,n.imageSettings);T={x:M.x+N,y:M.y+N,width:M.w,height:M.h},M.excavation&&(y=Qe(y,M.excavation))}var $=window.devicePixelRatio||1,x=t/b*$;if(R.height=R.width=t*$,C.scale(x,x),C.fillStyle=r,C.fillRect(0,0,b,b),v){var I=void 0;p==="linear"?I=C.createLinearGradient(0,0,b,b):I=C.createRadialGradient(b/2,b/2,0,b/2,b/2,b/2),I.addColorStop(0,w),I.addColorStop(1,k),C.fillStyle=I}else C.fillStyle=d;Ut?C.fill(new Path2D(Be(y,N))):y.forEach(function(q,ye){q.forEach(function(fe,He){fe&&C.fillRect(He+N,ye+N,1,1)})}),E&&C.drawImage(V,T.x,T.y,T.width,T.height)}}};pe(f),Ue(f);var h=l.attrs.style;return function(){return H(B,[H("canvas",Y(Y({},l.attrs),{ref:i,style:Y(Y({},h),{width:"".concat(n.size,"px"),height:"".concat(n.size,"px")})})),n.imageSettings.src&&H("img",{ref:s,src:n.imageSettings.src,style:{display:"none"},onLoad:f})])}}}),Ot=Ce({name:"Qrcode",render:function(){var n=this.$props,l=n.renderAs,i=n.value,s=n.size,f=n.margin,h=n.level,o=n.background,e=n.foreground,t=n.imageSettings,a=n.gradient,r=n.gradientType,d=n.gradientStartColor,v=n.gradientEndColor;return H(l==="svg"?Dt:$t,{value:i,size:s,margin:f,level:h,background:o,foreground:e,imageSettings:t,gradient:a,gradientType:r,gradientStartColor:d,gradientEndColor:v})},props:xt});const Lt=Ye({autofocus:Boolean,divider:String,focusAll:Boolean,label:{type:String,default:"$vuetify.input.otp"},length:{type:[Number,String],default:6},modelValue:{type:[Number,String],default:void 0},placeholder:String,type:{type:String,default:"number"},...gt(),...dt(),...tt(ct({variant:"outlined"}),["baseColor","bgColor","class","color","disabled","error","loading","rounded","style","theme","variant"])},"VOtpInput"),Bt=Ge()({name:"VOtpInput",props:Lt(),emits:{finish:n=>!0,"update:focused":n=>!0,"update:modelValue":n=>!0},setup(n,l){let{attrs:i,emit:s,slots:f}=l;const{dimensionStyles:h}=ht(n),{isFocused:o,focus:e,blur:t}=it(n),a=We(n,"modelValue","",E=>E==null?[]:String(E).split(""),E=>E.join("")),{t:r}=Je(),d=J(()=>Number(n.length)),v=J(()=>Array(d.value).fill(0)),p=_(-1),w=_(),k=_([]),N=J(()=>k.value[p.value]);function F(){if(T(N.value.value)){N.value.value="";return}const E=a.value.slice(),M=N.value.value;E[p.value]=M;let $=null;p.value>a.value.length?$=a.value.length+1:p.value+1!==d.value&&($="next"),a.value=E,$&&Pe(w.value,$)}function R(E){const M=a.value.slice(),$=p.value;let x=null;["ArrowLeft","ArrowRight","Backspace","Delete"].includes(E.key)&&(E.preventDefault(),E.key==="ArrowLeft"?x="prev":E.key==="ArrowRight"?x="next":["Backspace","Delete"].includes(E.key)&&(M[p.value]="",a.value=M,p.value>0&&E.key==="Backspace"?x="prev":requestAnimationFrame(()=>{var I;(I=k.value[$])==null||I.select()})),requestAnimationFrame(()=>{x!=null&&Pe(w.value,x)}))}function C(E,M){var x,I;M.preventDefault(),M.stopPropagation();const $=((x=M==null?void 0:M.clipboardData)==null?void 0:x.getData("Text").trim().slice(0,d.value))??"";T($)||(a.value=$.split(""),(I=k.value)==null||I[E].blur())}function y(){a.value=[]}function b(E,M){e(),p.value=M}function V(){t(),p.value=-1}function T(E){return n.type==="number"&&/[^0-9]/g.test(E)}return Xe({VField:{color:re(()=>n.color),bgColor:re(()=>n.color),baseColor:re(()=>n.baseColor),disabled:re(()=>n.disabled),error:re(()=>n.error),variant:re(()=>n.variant)}},{scoped:!0}),_e(a,E=>{E.length===d.value&&(p.value=d.value-1,s("finish",E.join("")))},{deep:!0}),_e(p,E=>{E<0||je(()=>{var M;(M=k.value[E])==null||M.select()})}),pt(()=>{var $;const[E,M]=Ze(i);return A("div",Re({class:["v-otp-input",{"v-otp-input--divided":!!n.divider},n.class],style:[n.style]},E),[A("div",{ref:w,class:"v-otp-input__content",style:et([h.value])},[v.value.map((x,I)=>A(B,null,[n.divider&&I!==0&&A("span",{class:"v-otp-input__divider"},[n.divider]),u(ut,{focused:o.value&&n.focusAll||p.value===I,key:I},{...f,loader:void 0,default:()=>A("input",{ref:q=>k.value[I]=q,"aria-label":r(n.label,I+1),autofocus:I===0&&n.autofocus,autocomplete:"one-time-code",class:at(["v-otp-input__field"]),disabled:n.disabled,inputmode:n.type==="number"?"numeric":"text",min:n.type==="number"?0:void 0,maxlength:I===0?d.value:"1",placeholder:n.placeholder,type:n.type==="number"?"text":n.type,value:a.value[I],onInput:F,onFocus:q=>b(q,I),onBlur:V,onKeydown:R,onPaste:q=>C(I,q)},null)})])),A("input",Re({class:"v-otp-input-input",type:"hidden"},M,{value:a.value.join("")}),null),u(vt,{contained:!0,"content-class":"v-otp-input__loader","model-value":!!n.loading,persistent:!0},{default:()=>{var x;return[((x=f.loader)==null?void 0:x.call(f))??u(mt,{color:typeof n.loading=="boolean"?void 0:n.loading,indeterminate:!0,size:"24",width:"2"},null)]}}),($=f.default)==null?void 0:$.call(f)])])}),{blur:()=>{var E;(E=k.value)==null||E.some(M=>M.blur())},focus:()=>{var E;(E=k.value)==null||E[0].focus()},reset:y,isFocused:o}}}),zt={class:"text-h6"},Qt={class:"m-label"},qt={class:"mt-4"},Ht={class:"m-label"},Kt={class:"mt-5"},Gt={tag:"p",class:"my-4"},Yt={__name:"TotpAuthForm",setup(n){const{$gettext:l}=Z(),i=se(),s=ce(),f=_(),h=_(""),o=_([]),e=_(null),t=_(null),a=_(!1),r=_(!1),d=_(""),v=_([]),p=_([]),w=_(!1),k=J(()=>s.authUser.totp_enabled);function N(){G.getKeyForTFASetup().then(b=>{e.value=b.data.key,t.value=b.data.url})}function F(){navigator.clipboard.writeText(e.value),a.value=!0}function R(){G.startTFASetup().then(()=>{N()})}function C(){s.finalizeTFASetup(h.value).then(b=>{e.value=null,t.value=null,b.status===200&&(p.value=b.data.tokens),w.value=!0}).catch(b=>{b.response.status===400&&(o.value=b.response.data.pin_code)})}async function y(){if(!await f.value.validate())return;const V={password:d.value};r.value=!0,G.disableTFA(V).then(()=>{s.fetchUser()}).catch(T=>{T.response.status===400?v.value=T.response.data.password:i.displayNotification({msg:l(T.response.data),type:"error"})}).finally(()=>{r.value=!1,f.value.reset()})}return(b,V)=>(P(),D("div",null,[u(j,{flat:""},{default:c(()=>[u(ge,null,{default:c(()=>[A("span",zt,g(m(l)("One-time passwords")),1)]),_:1}),u(X,null,{default:c(()=>[t.value?(P(),O(ve,{key:0},{default:c(()=>[u(de,{cols:"4"},{default:c(()=>[u(ve,{rows:"2"},{default:c(()=>[u(Ot,{value:t.value,size:250,"render-as":"svg",level:"H",class:"qrcode"},null,8,["value"])]),_:1}),u(ve,null,{default:c(()=>[u(Q,{color:"primary",class:"key",onClick:F},{default:c(()=>[S(g(m(l)("Click here to copy the key"))+" ",1),a.value?(P(),O(be,{key:0,color:"success"},{default:c(()=>V[2]||(V[2]=[S(" mdi-check-all ")])),_:1,__:[2]})):W("",!0)]),_:1})]),_:1})]),_:1}),u(de,{cols:"6"},{default:c(()=>[u(ee,{type:"info",class:"ma-4"},{default:c(()=>[S(g(m(l)("Install a soft token authenticator like FreeOTP or Google Authenticator from your application repository and use that app to scan this QR code.")),1)]),_:1}),A("label",Qt,g(m(l)("Pin code")),1),u(Bt,{modelValue:h.value,"onUpdate:modelValue":V[0]||(V[0]=T=>h.value=T),error:o.value.length!==0},null,8,["modelValue","error"]),u(Q,{color:"primary",onClick:C},{default:c(()=>[S(g(m(l)("Register")),1)]),_:1})]),_:1})]),_:1})):w.value?(P(),D(B,{key:1},[u(ee,{type:"success"},{default:c(()=>[S(g(m(l)("Congratulations! Two-factor authentication using one-time passwords is now enabled for your account.")),1)]),_:1}),p.value.length?(P(),D(B,{key:0},[A("p",qt,g(m(l)("The following recovery codes can be used one time each to let you regain access to your account, in case you lose your phone for example. Make sure to save them in a safe place, otherwise you won't be able to access your account anymore.")),1),u(De,{density:"compact"},{default:c(()=>[A("tbody",null,[(P(!0),D(B,null,xe(p.value,T=>(P(),D("tr",{key:T},[A("td",null,g(T),1)]))),128))])]),_:1})],64)):W("",!0)],64)):k.value?(P(),D(B,{key:2},[u(ee,{type:"info",class:"mb-2"},{default:c(()=>[S(g(m(l)("Two-factor authentication using one-time passwords is enabled for your account.")),1)]),_:1}),u(ae,{ref_key:"editTFAForm",ref:f},{default:c(()=>[A("label",Ht,g(m(l)("Password")),1),u(K,{modelValue:d.value,"onUpdate:modelValue":V[1]||(V[1]=T=>d.value=T),autocomplete:"new-password",type:"password",variant:"outlined",density:"compact",rules:[m(oe).required],"error-messages":v.value},null,8,["modelValue","rules","error-messages"]),A("div",Kt,[u(Q,{color:"error",class:"mr-2",loading:r.value,onClick:y},{default:c(()=>[S(g(m(l)("Disable 2FA")),1)]),_:1},8,["loading"])])]),_:1},512)],64)):(P(),D(B,{key:3},[A("div",Gt,g(m(l)("Two-factor authentication (2FA) using one-time passwords is not yet activated for your account.")),1),u(Q,{color:"success",onClick:R},{default:c(()=>[S(g(m(l)("Register authenticator")),1)]),_:1})],64))]),_:1})]),_:1})]))}},Wt={class:"headline"},qe={__name:"RecoveryCodesResetDialog",props:{tokens:{type:Array,default:null}},emits:["close"],setup(n,{emit:l}){const{$gettext:i}=Z(),s=l;function f(){s("close")}return(h,o)=>(P(),O(j,null,{default:c(()=>[u(ge,null,{default:c(()=>[A("span",Wt,g(m(i)("New recovery codes")),1)]),_:1}),u(X,null,{default:c(()=>[u(ee,{type:"info"},{default:c(()=>[S(g(m(i)("The following recovery codes can be used one time each to let you regain access to your account, in case you lose your phone for example. Make sure to save them in a safe place, otherwise you won't be able to access your account anymore.")),1)]),_:1}),u(De,{class:"mt-4",density:"compact"},{default:c(()=>[A("tbody",null,[(P(!0),D(B,null,xe(n.tokens,e=>(P(),D("tr",{key:e},[A("td",null,g(e),1)]))),128))])]),_:1})]),_:1}),u(Ee,null,{default:c(()=>[u(yt),u(Q,{color:"grey darken-1",text:"",onClick:f},{default:c(()=>[S(g(m(i)("Close")),1)]),_:1})]),_:1})]),_:1}))}},Jt={class:"text-h6"},Xt={class:"m-label"},jt={class:"mt-5"},Zt={key:1,tag:"p",class:"my-4"},ea={__name:"BackupCodeAuthForm",setup(n){const{$gettext:l}=Z(),i=se(),s=ce(),f=J(()=>s.authUser.tfa_enabled),h=_(!1),o=_(),e=_(""),t=_([]),a=_(),r=_(!1);async function d(){if(!await o.value.validate())return;const w={password:e.value};h.value=!0,G.resetRecoveryCodes(w).then(k=>{t.value=k.data.tokens,r.value=!0}).catch(k=>{k.response.status===400?a.value=k.response.data.password:i.displayNotification({msg:l(k.response.data),type:"error"})}).finally(()=>{h.value=!1,o.value.reset()})}function v(){t.value=[],r.value=!1}return(p,w)=>(P(),D("div",null,[u(j,{flat:""},{default:c(()=>[u(ge,null,{default:c(()=>[A("span",Jt,g(m(l)("Backup codes")),1)]),_:1}),u(X,null,{default:c(()=>[f.value?(P(),D(B,{key:0},[u(ee,{type:"info",class:"mb-2"},{default:c(()=>[S(g(m(l)("You already have generated backup codes for this account. If you don't remember them or have used them all, you can generate new ones.")),1)]),_:1}),u(ae,{ref_key:"editTFAForm",ref:o},{default:c(()=>[A("label",Xt,g(m(l)("Password")),1),u(K,{modelValue:e.value,"onUpdate:modelValue":w[0]||(w[0]=k=>e.value=k),autocomplete:"new-password",type:"password",variant:"outlined",density:"compact",rules:[m(oe).required],"error-messages":a.value},null,8,["modelValue","rules","error-messages"]),A("div",jt,[u(Q,{loading:h.value,color:"success",onClick:d},{default:c(()=>[S(g(m(l)("Reset recovery codes")),1)]),_:1},8,["loading"])])]),_:1},512)],64)):(P(),D("div",Zt,g(m(l)("No two-factor authentificator is yet set for your account.")),1)),u($e,{modelValue:r.value,"onUpdate:modelValue":w[1]||(w[1]=k=>r.value=k),"max-width":"800px",persistent:""},{default:c(()=>[u(m(qe),{tokens:t.value,onClose:v},null,8,["tokens"])]),_:1},8,["modelValue"])]),_:1})]),_:1})]))}},ta={class:"m-label"},aa={__name:"ForwardForm",setup(n){const{$gettext:l}=Z(),i=se(),s=_({}),f=_(!1);function h(){f.value=!0,G.setForward(s.value).then(()=>{f.value=!1,i.displayNotification({type:"success",msg:l("Forward updated")})})}return G.getForward().then(o=>{s.value=o.data}),(o,e)=>(P(),O(j,{flat:""},{default:c(()=>[u(X,null,{default:c(()=>[A("label",ta,g(m(l)("Recipient(s)")),1),u(Oe,{modelValue:s.value.recipients,"onUpdate:modelValue":e[0]||(e[0]=t=>s.value.recipients=t),hint:m(l)("Indicate one or more recipients separated by a comma (,)"),"persistent-hint":"",rows:"3",variant:"outlined"},null,8,["modelValue","hint"]),u(Le,{modelValue:s.value.keepcopies,"onUpdate:modelValue":e[1]||(e[1]=t=>s.value.keepcopies=t),label:m(l)("Keep local copies"),hint:m(l)("Forward messages and store copies into your local mailbox"),"persistent-hint":""},null,8,["modelValue","label","hint"])]),_:1}),u(Ee,{class:"pa-4"},{default:c(()=>[u(Q,{color:"success",variant:"flat",loading:f.value,onClick:h},{default:c(()=>[S(g(m(l)("Update")),1)]),_:1},8,["loading"])]),_:1})]),_:1}))}},oa={class:"m-label"},na={class:"mb-4"},ra={class:"m-label"},la={class:"mb-4"},sa={class:"m-label"},ia={class:"mb-4"},ua={class:"m-label"},da={__name:"AutoReplyForm",setup(n){const l=se(),{$gettext:i}=Z(),s=_({}),f=_(),h=_(!1);async function o(){const{valid:e}=await f.value.validate();e&&(h.value=!0,s.value.fromdate===""&&(s.value.fromdate=null),s.value.untildate===""&&(s.value.untildate=null),G.setARMessage(s.value).then(()=>{l.displayNotification({msg:i("Auto-reply message updated")}),h.value=!1}).catch(()=>{h.value=!1}))}return G.getARMessage().then(e=>{s.value=e.data,s.value.fromdate&&(s.value.fromdate=s.value.fromdate.slice(0,-4)),s.value.untildate&&(s.value.untildate=s.value.untildate.slice(0,-4))}),(e,t)=>(P(),O(j,{flat:""},{default:c(()=>[u(X,null,{default:c(()=>[u(ae,{ref_key:"formRef",ref:f,onSubmit:me(o,["prevent"])},{default:c(()=>[u(Le,{modelValue:s.value.enabled,"onUpdate:modelValue":t[0]||(t[0]=a=>s.value.enabled=a),label:m(i)("Enabled"),color:"primary","hide-details":"",class:"mb-4"},null,8,["modelValue","label"]),A("label",oa,g(m(i)("Subject")),1),u(K,{modelValue:s.value.subject,"onUpdate:modelValue":t[1]||(t[1]=a=>s.value.subject=a),variant:"outlined",density:"compact",rules:[m(oe).required]},null,8,["modelValue","rules"]),A("div",na,[A("label",ra,g(m(i)("Content")),1),u(Oe,{modelValue:s.value.content,"onUpdate:modelValue":t[2]||(t[2]=a=>s.value.content=a),hint:m(i)("The content of your answer. You can use the following variables, which will be automatically replaced by the appropriate value: %(name)s, %(fromdate)s, %(untildate)s"),"persistent-hint":"",variant:"outlined",rows:"3",density:"compact",rules:[m(oe).required]},null,8,["modelValue","hint","rules"])]),A("div",la,[A("label",sa,g(m(i)("From")),1),u(K,{modelValue:s.value.fromdate,"onUpdate:modelValue":t[3]||(t[3]=a=>s.value.fromdate=a),hint:m(i)("Activate your auto reply from this date"),variant:"outlined","persistent-hint":"",type:"datetime-local",density:"compact"},null,8,["modelValue","hint"])]),A("div",ia,[A("label",ua,g(m(i)("Until")),1),u(K,{modelValue:s.value.untildate,"onUpdate:modelValue":t[4]||(t[4]=a=>s.value.untildate=a),hint:m(i)("Activate your auto reply until this date"),variant:"outlined","persistent-hint":"",type:"datetime-local",density:"compact"},null,8,["modelValue","hint"])]),u(Q,{color:"success",type:"submit",loading:h.value},{default:c(()=>[S(g(m(i)("Update auto-reply")),1)]),_:1},8,["loading"])]),_:1},512)]),_:1})]),_:1}))}},ca={class:"m-label"},fa={class:"ml-5 mr-5"},va=["href"],ma={__name:"APISetupForm",setup(n){const{$gettext:l}=Z(),i=se(),s=ot("$config"),f=J(()=>s.API_DOC_URL),h=_(!1),o=_(null),e=_();function t(){navigator.clipboard.writeText(o.value),i.displayNotification({msg:l("API token copied to your clipboard"),type:"success"})}function a(){h.value=!0,G.createAPIToken().then(v=>{o.value=v.data.token,i.displayNotification({msg:l("API token created"),type:"success"})}).finally(()=>h.value=!1)}function r(){e.value.open(l("Warning"),l("You are about to delete your API access token"),{color:"error",cancelLabel:l("Cancel"),agreeLabel:l("Proceed")})}async function d(){await G.deleteAPIToken(),i.displayNotification({msg:l("API token deleted"),type:"success"}),o.value=null}return pe(()=>{G.getAPIToken().then(v=>{o.value=v.data.token})}),(v,p)=>(P(),D(B,null,[o.value?(P(),O(j,{key:1,flat:""},{default:c(()=>[u(X,null,{default:c(()=>[A("label",ca,g(m(l)("Your API token is:")),1),A("code",fa,g(o.value),1),u(Q,{icon:"mdi-clipboard-plus",density:"compact",title:m(l)("Copy token to clipboard"),variant:"text",onClick:p[0]||(p[0]=w=>t())},null,8,["title"]),u(Q,{icon:"mdi-delete",density:"compact",color:"error",variant:"text",title:m(l)("Delete token"),onClick:r},null,8,["title"])]),_:1})]),_:1})):(P(),O(j,{key:0,flat:""},{default:c(()=>[u(X,null,{default:c(()=>[S(g(m(l)("Your API token has not been generated yet.")),1)]),_:1}),u(Ee,null,{default:c(()=>[u(Q,{color:"success",variant:"flat",loading:h.value,onClick:a},{default:c(()=>[S(g(m(l)("Generate")),1)]),_:1},8,["loading"])]),_:1})]),_:1})),u(ee,{type:"info",variant:"tonal",border:"start",class:"mt-4"},{default:c(()=>[S(g(m(l)("A documentation of the API is available"))+" ",1),A("a",{href:f.value,target:"_blank"},g(m(l)("here")),9,va),p[1]||(p[1]=S(". "))]),_:1,__:[1]}),u(we,{ref_key:"confirm",ref:e,onAgree:d},null,512)],64))}};function ha(n){const l="==".slice(0,(4-n.length%4)%4),i=n.replace(/-/g,"+").replace(/_/g,"/")+l,s=atob(i),f=new ArrayBuffer(s.length),h=new Uint8Array(f);for(let o=0;o<s.length;o++)h[o]=s.charCodeAt(o);return f}function pa(n){const l=new Uint8Array(n);let i="";for(const h of l)i+=String.fromCharCode(h);return btoa(i).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}var U="copy",te="convert";function he(n,l,i){if(l===U)return i;if(l===te)return n(i);if(l instanceof Array)return i.map(s=>he(n,l[0],s));if(l instanceof Object){const s={};for(const[f,h]of Object.entries(l)){if(h.derive){const o=h.derive(i);o!==void 0&&(i[f]=o)}if(!(f in i)){if(h.required)throw new Error(`Missing key: ${f}`);continue}if(i[f]==null){s[f]=null;continue}s[f]=he(n,h.schema,i[f])}return s}}function Ie(n,l){return{required:!0,schema:n,derive:l}}function L(n){return{required:!0,schema:n}}function z(n){return{required:!1,schema:n}}var ga={type:L(U),id:L(te),transports:z(U)},ya={appid:z(U),appidExclude:z(U),credProps:z(U)},_a={appid:z(U),appidExclude:z(U),credProps:z(U)},ba={publicKey:L({rp:L(U),user:L({id:L(te),name:L(U),displayName:L(U)}),challenge:L(te),pubKeyCredParams:L(U),timeout:z(U),excludeCredentials:z([ga]),authenticatorSelection:z(U),attestation:z(U),extensions:z(ya)}),signal:z(U)},wa={type:L(U),id:L(U),rawId:L(te),authenticatorAttachment:z(U),response:L({clientDataJSON:L(te),attestationObject:L(te),transports:Ie(U,n=>{var l;return((l=n.getTransports)==null?void 0:l.call(n))||[]})}),clientExtensionResults:Ie(_a,n=>n.getClientExtensionResults())};function Ca(n){return he(ha,ba,n)}function Ea(n){return he(pa,wa,n)}async function Aa(n){const l=await navigator.credentials.create(n);return l.toJSON=()=>Ea(l),l}const ka={class:"text-h6"},Va={tag:"p",class:"my-4"},Sa={__name:"FidoAuthForm",setup(n){const l=ce(),{$gettext:i}=Z(),s=_(),f=_(!1),h=!!(navigator.credentials&&navigator.credentials.create&&navigator.credentials.get&&window.PublicKeyCredential),o=_(),e=J(()=>l.fidoCreds),t=[{title:i("Name"),key:"name"},{title:i("Added On"),key:"added_on"},{title:i("Last Used"),key:"last_used"},{title:i("Use count"),key:"use_count"},{title:i("Actions"),key:"actions"}],a=_(),r=_(),d=_(),v=_(""),p=_(),w=_(!1);async function k(){const{valid:y}=await o.value.validate();if(!y)return;f.value=!0;const b=await nt.beginFidoRegistration();if(b){const V=Ca(b.data),E=(await Aa(V)).toJSON();E.name=s.value,l.addFidoCred(E).then(M=>{M.status===200&&(p.value=M.data.tokens,w.value=!0)}),o.value.reset(),f.value=!1;return}f.value=!1}function N(){p.value=[],w.value=!1}async function F(y){await a.value.open(i("Warning"),i("Do you really want to delete this WebAuthn device?"),{color:"warning",cancelLabel:i("No"),agreeLabel:i("Yes")})&&l.deleteFidoCreds(y.id)}async function R(){return(await d.value.validate()).valid}async function C(y){if(v.value=y.name,!await r.value.open(i("Edition"),i("Edit your device"),{color:"warning",cancelLabel:i("Cancel"),agreeLabel:i("Save")}))return;const V={name:v.value};await l.editFidoCred(y.id,V)}return pe(()=>{l.getFidoCreds()}),(y,b)=>(P(),D(B,null,[A("div",null,[u(j,{flat:""},{default:c(()=>[u(ge,null,{default:c(()=>[A("span",ka,g(m(i)("WebAuthn")),1)]),_:1}),u(X,null,{default:c(()=>[u(ve,null,{default:c(()=>[e.value.length===0?(P(),O(de,{key:0,cols:"4"},{default:c(()=>[A("div",Va,g(m(i)("You don't have any WebAuthN device registered as a second authentication method.")),1)]),_:1})):(P(),O(de,{key:1,cols:"8"},{default:c(()=>[A("h3",null,g(m(i)("Registered Webauthn devices")),1),u(_t,{headers:t,items:e.value,"item-value":"id"},{"item.added_on":c(({item:V})=>[S(g(y.$date(V.added_on)),1)]),"item.last_used":c(({item:V})=>[V.last_used===null?(P(),D(B,{key:0},[S(g(m(i)("Never")),1)],64)):(P(),D(B,{key:1},[S(g(y.$date(V.last_used)),1)],64))]),"item.enabled":c(({item:V})=>[S(g(y.$yesno(V.enabled)),1)]),"item.actions":c(({item:V})=>[u(be,{class:"me-2",size:"small",onClick:T=>C(V)},{default:c(()=>b[3]||(b[3]=[S(" mdi-pencil ")])),_:2,__:[3]},1032,["onClick"]),u(be,{size:"small",onClick:T=>F(V)},{default:c(()=>b[4]||(b[4]=[S(" mdi-delete ")])),_:2,__:[4]},1032,["onClick"])]),_:2},1032,["items"])]),_:1})),u(de,{cols:"4"},{default:c(()=>[h?(P(),D(B,{key:0},[A("h3",null,g(m(i)("Enter a name to register a new webauthn device.")),1),u(ae,{ref_key:"fidoForm",ref:o,onSubmit:me(k,["prevent"])},{default:c(()=>[u(K,{modelValue:s.value,"onUpdate:modelValue":b[0]||(b[0]=V=>s.value=V),label:m(i)("New device name"),rules:[m(oe).required]},null,8,["modelValue","label","rules"]),u(Q,{color:"success",type:"submit",loading:f.value},{default:c(()=>[S(g(m(i)("Setup device")),1)]),_:1},8,["loading"])]),_:1},512)],64)):(P(),O(ee,{key:1,type:"error"},{default:c(()=>[S(g(m(i)("Your browser does not seem compatible with WebAuthN")),1)]),_:1}))]),_:1})]),_:1})]),_:1})]),_:1})]),u(we,{ref_key:"confirmDeletion",ref:a},null,512),u(we,{ref_key:"confirmEdition",ref:r,callback_agree:R},{default:c(()=>[u(ae,{ref_key:"editForm",ref:d},{default:c(()=>[u(K,{modelValue:v.value,"onUpdate:modelValue":b[1]||(b[1]=V=>v.value=V),label:m(i)("name"),rules:[m(oe).required]},null,8,["modelValue","label","rules"])]),_:1},512)]),_:1},512),u($e,{modelValue:w.value,"onUpdate:modelValue":b[2]||(b[2]=V=>w.value=V),"max-width":"800px",persistent:""},{default:c(()=>[u(qe,{tokens:p.value,onClose:N},null,8,["tokens"])]),_:1},8,["modelValue"])],64))}},Ra={class:"pa-4"},Pa={__name:"SettingsView",setup(n){const l=ce(),i=_();return(s,f)=>(P(),D(B,null,[u(bt,{flat:""},{default:c(()=>[u(wt,null,{default:c(()=>[S(g(s.$gettext("Account settings")),1)]),_:1})]),_:1}),A("div",Ra,[u(Ct,{modelValue:i.value,"onUpdate:modelValue":f[0]||(f[0]=h=>i.value=h),color:"primary",class:"mb-4"},{default:c(()=>[u(ie,{value:"profile"},{default:c(()=>[S(g(s.$gettext("Profile")),1)]),_:1}),u(ie,{value:"security"},{default:c(()=>[S(g(s.$gettext("Two-factor auth")),1)]),_:1}),m(l).userHasMailbox?(P(),O(ie,{key:0,value:"forward"},{default:c(()=>[S(g(s.$gettext("Forward")),1)]),_:1})):W("",!0),m(l).userHasMailbox?(P(),O(ie,{key:1,value:"autoreply"},{default:c(()=>[S(g(s.$gettext("Auto-reply message")),1)]),_:1})):W("",!0),m(l).authUser.role===m(Me).SUPER_ADMIN?(P(),O(ie,{key:2,value:"api"},{default:c(()=>[S(g(s.$gettext("API access")),1)]),_:1})):W("",!0)]),_:1},8,["modelValue"]),u(Et,{modelValue:i.value,"onUpdate:modelValue":f[1]||(f[1]=h=>i.value=h)},{default:c(()=>[u(ue,{value:"profile"},{default:c(()=>[u(It)]),_:1}),u(ue,{value:"security"},{default:c(()=>[u(Yt),u(Sa),u(ea)]),_:1}),m(l).userHasMailbox?(P(),O(ue,{key:0,value:"forward"},{default:c(()=>[u(aa)]),_:1})):W("",!0),m(l).userHasMailbox?(P(),O(ue,{key:1,value:"autoreply"},{default:c(()=>[u(da)]),_:1})):W("",!0),m(l).authUser.role===m(Me).SUPER_ADMIN?(P(),O(ue,{key:2,value:"api"},{default:c(()=>[u(ma)]),_:1})):W("",!0)]),_:1},8,["modelValue"])])],64))}},uo=rt(Pa,[["__scopeId","data-v-fc9b36ca"]]);export{uo as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{T as r}from"./TimeSerieChart-CjiX490n.js";import{v as d,x as _,e as y,a6 as g,J as V,j as h,m as v,a,w as t,F as S,o as C,l as L,t as k}from"./index-CTxlYqj4.js";import{V as x,a as T}from"./VToolbar-Cd2iSn8H.js";import{b as w,u as P,c as b,a as z}from"./tag-Dx3OexMp.js";import{c as B,m as D}from"./layout-BFr6o7er.js";import{V as F,a as i}from"./VRow-B-csPNw7.js";import"./VAvatar-x_79C0tA.js";import"./VProgressCircular-ubzZW5PC.js";import"./VSpacer-BcQnH0oL.js";/* empty css */import"./VPicker-F4Rx1F-m.js";import"./VSheet-BV83IblO.js";import"./VTextField-CWm47OUI.js";import"./forwardRefs-BSESyuUp.js";import"./ssrBoot-DGgZQEVC.js";import"./VMenu-DTm7W1Hp.js";import"./VContainer-CC8lqRXa.js";import"./VCard-DRptUN8Y.js";const N=_({...z(),...b(),...D()},"VLayout"),R=d()({name:"VLayout",props:N(),setup(e,o){let{slots:s}=o;const{layoutClasses:c,layoutStyles:l,getLayoutItem:p,items:n,layoutRef:u}=B(e),{dimensionStyles:f}=w(e);return P(()=>{var m;return y("div",{ref:u,class:V([c.value,e.class]),style:g([f.value,l.value,e.style])},[(m=s.default)==null?void 0:m.call(s)])}),{getLayoutItem:p,items:n}}}),I={__name:"StatisticsView",setup(e){return(o,s)=>(C(),v(S,null,[a(x,{flat:""},{default:t(()=>[a(T,null,{default:t(()=>[L(k(o.$gettext("Statistics")),1)]),_:1})]),_:1}),a(R,{class:"pa-2"},{default:t(()=>[a(F,{class:"mt-2"},{default:t(()=>[a(i,{cols:"12"},{default:t(()=>[a(r,{"graphic-set":"mailtraffic","graphic-name":"averagetraffic"})]),_:1}),a(i,{cols:"12"},{default:t(()=>[a(r,{"graphic-set":"mailtraffic","graphic-name":"averagetrafficsize"})]),_:1}),a(i,{cols:"12"},{default:t(()=>[a(r,{"graphic-set":"accountgraphicset","graphic-name":"accountcreationgraphic"})]),_:1})]),_:1})]),_:1})],64))}},ta=h(I,[["__scopeId","data-v-e568dd55"]]);export{ta as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as Ye,v as j,x as T,h as x,e as D,a as m,a7 as ae,J,I as Q,a6 as Oe,a8 as Ie,a9 as G,T as W,aa as K,g as C,ab as X,ac as te,L as le,l as E,U as q,ad as Ne,ae as ye,af as ke,B as p,ag as We,d as ge,a5 as Te,y as Be,ah as Re,F as Ve,c as Z,o as U,w as M,j as $e,b as Ue,r as je,t as N,f as $,m as ie,G as Fe,q as oe}from"./index-CTxlYqj4.js";import{V as A,M as be,h as De,g as He}from"./VAvatar-x_79C0tA.js";import{V as xe}from"./VSpacer-BcQnH0oL.js";import{u as F}from"./tag-Dx3OexMp.js";import{u as Le}from"./VProgressCircular-ubzZW5PC.js";import{V as ue,m as ze}from"./VPicker-F4Rx1F-m.js";import{V as Ee}from"./VTextField-CWm47OUI.js";import{V as we}from"./VMenu-DTm7W1Hp.js";import{V as Je,a as qe}from"./VToolbar-Cd2iSn8H.js";import{V as Ge}from"./VContainer-CC8lqRXa.js";import{V as Qe,a as se}from"./VRow-B-csPNw7.js";import{V as Ke,a as Xe,b as Ze}from"./forwardRefs-BSESyuUp.js";import{V as et,b as tt}from"./VCard-DRptUN8Y.js";const at="statistics",lt={getStatistics({graphSet:e,period:a,graphicName:y,searchQuery:u,start:t,end:s}){const v={gset:e,period:a,graphic:y,searchquery:u,start:t,end:s};return Ye.get(`${at}/`,{params:v})}},_e=T({active:{type:[String,Array],default:void 0},controlHeight:[Number,String],disabled:{type:[Boolean,String,Array],default:null},nextIcon:{type:Q,default:"$next"},prevIcon:{type:Q,default:"$prev"},modeIcon:{type:Q,default:"$subgroup"},text:String,viewMode:{type:String,default:"month"}},"VDatePickerControls"),de=j()({name:"VDatePickerControls",props:_e(),emits:{"click:year":()=>!0,"click:month":()=>!0,"click:prev":()=>!0,"click:next":()=>!0,"click:text":()=>!0},setup(e,a){let{emit:y}=a;const u=x(()=>Array.isArray(e.disabled)?e.disabled.includes("text"):!!e.disabled),t=x(()=>Array.isArray(e.disabled)?e.disabled.includes("mode"):!!e.disabled),s=x(()=>Array.isArray(e.disabled)?e.disabled.includes("prev"):!!e.disabled),v=x(()=>Array.isArray(e.disabled)?e.disabled.includes("next"):!!e.disabled);function k(){y("click:prev")}function r(){y("click:next")}function l(){y("click:year")}function c(){y("click:month")}return F(()=>D("div",{class:J(["v-date-picker-controls"]),style:{"--v-date-picker-controls-height":ae(e.controlHeight)}},[m(A,{class:"v-date-picker-controls__month-btn","data-testid":"month-btn",disabled:u.value,text:e.text,variant:"text",rounded:!0,onClick:c},null),m(A,{class:"v-date-picker-controls__mode-btn","data-testid":"year-btn",disabled:t.value,density:"comfortable",icon:e.modeIcon,variant:"text",onClick:l},null),m(xe,null,null),D("div",{class:"v-date-picker-controls__month"},[m(A,{"data-testid":"prev-month",disabled:s.value,density:"comfortable",icon:e.prevIcon,variant:"text",onClick:k},null),m(A,{"data-testid":"next-month",disabled:v.value,icon:e.nextIcon,density:"comfortable",variant:"text",onClick:r},null)])])),{}}}),nt=T({appendIcon:Q,color:String,header:String,transition:String,onClick:Ie()},"VDatePickerHeader"),ce=j()({name:"VDatePickerHeader",props:nt(),emits:{click:()=>!0,"click:append":()=>!0},setup(e,a){let{emit:y,slots:u}=a;const{backgroundColorClasses:t,backgroundColorStyles:s}=Le(()=>e.color);function v(){y("click")}function k(){y("click:append")}return F(()=>{const r=!!(u.default||e.header),l=!!(u.append||e.appendIcon);return D("div",{class:J(["v-date-picker-header",{"v-date-picker-header--clickable":!!e.onClick},t.value]),style:Oe(s.value),onClick:v},[u.prepend&&D("div",{key:"prepend",class:"v-date-picker-header__prepend"},[u.prepend()]),r&&m(be,{key:"content",name:e.transition},{default:()=>{var c;return[D("div",{key:e.header,class:"v-date-picker-header__content"},[((c=u.default)==null?void 0:c.call(u))??e.header])]}}),l&&D("div",{class:"v-date-picker-header__append"},[u.append?m(De,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VBtn:{icon:e.appendIcon,variant:"text"}}},{default:()=>{var c;return[(c=u.append)==null?void 0:c.call(u)]}}):m(A,{key:"append-btn",icon:e.appendIcon,variant:"text",onClick:k},null)])])}),{}}}),rt=T({allowedDates:[Array,Function],disabled:{type:Boolean,default:null},displayValue:null,modelValue:Array,month:[Number,String],max:null,min:null,showAdjacentMonths:Boolean,year:[Number,String],weekdays:{type:Array,default:()=>[0,1,2,3,4,5,6]},weeksInMonth:{type:String,default:"dynamic"},firstDayOfWeek:{type:[Number,String],default:void 0}},"calendar");function it(e){const a=G(),y=W(e,"modelValue",[],n=>K(n).map(o=>a.date(o))),u=x(()=>e.displayValue?a.date(e.displayValue):y.value.length>0?a.date(y.value[0]):e.min?a.date(e.min):Array.isArray(e.allowedDates)?a.date(e.allowedDates[0]):a.date()),t=W(e,"year",void 0,n=>{const o=n!=null?Number(n):a.getYear(u.value);return a.startOfYear(a.setYear(a.date(),o))},n=>a.getYear(n)),s=W(e,"month",void 0,n=>{const o=n!=null?Number(n):a.getMonth(u.value),f=a.setYear(a.startOfMonth(a.date()),a.getYear(t.value));return a.setMonth(f,o)},n=>a.getMonth(n)),v=x(()=>{const n=a.toJsDate(a.startOfWeek(a.date(),e.firstDayOfWeek)).getDay();return[0,1,2,3,4,5,6].map(o=>(o+n)%7)}),k=x(()=>{const n=a.getWeekArray(s.value,e.firstDayOfWeek),o=n.flat(),f=6*7;if(e.weeksInMonth==="static"&&o.length<f){const b=o[o.length-1];let g=[];for(let i=1;i<=f-o.length;i++)g.push(a.addDays(b,i)),i%7===0&&(n.push(g),g=[])}return n});function r(n,o){return n.filter(f=>v.value.includes(a.toJsDate(f).getDay())).map((f,b)=>{const g=a.toISO(f),i=!a.isSameMonth(f,s.value),S=a.isSameDay(f,a.startOfMonth(s.value)),Y=a.isSameDay(f,a.endOfMonth(s.value)),B=a.isSameDay(f,s.value);return{date:f,formatted:a.format(f,"keyboardDate"),isAdjacent:i,isDisabled:V(f),isEnd:Y,isHidden:i&&!e.showAdjacentMonths,isSame:B,isSelected:y.value.some(ee=>a.isSameDay(f,ee)),isStart:S,isToday:a.isSameDay(f,o),isWeekEnd:b%7===6,isWeekStart:b%7===0,isoDate:g,localized:a.format(f,"dayOfMonth"),month:a.getMonth(f),year:a.getYear(f)}})}const l=x(()=>{const n=a.startOfWeek(u.value,e.firstDayOfWeek),o=[];for(let b=0;b<=6;b++)o.push(a.addDays(n,b));const f=a.date();return r(o,f)}),c=x(()=>{const n=k.value.flat(),o=a.date();return r(n,o)}),w=x(()=>k.value.map(n=>n.length?a.getWeek(n[0],e.firstDayOfWeek):null));function V(n){if(e.disabled)return!0;const o=a.date(n);return e.min&&a.isAfter(a.date(e.min),o)||e.max&&a.isAfter(o,a.date(e.max))?!0:Array.isArray(e.allowedDates)&&e.allowedDates.length>0?!e.allowedDates.some(f=>a.isSameDay(a.date(f),o)):typeof e.allowedDates=="function"?!e.allowedDates(o):!e.weekdays.includes(a.toJsDate(o).getDay())}return{displayValue:u,daysInMonth:c,daysInWeek:l,genDays:r,model:y,weeksInMonth:k,weekDays:v,weekNumbers:w}}const Me=T({color:String,hideWeekdays:Boolean,multiple:[Boolean,Number,String],showWeek:Boolean,transition:{type:String,default:"picker-transition"},reverseTransition:{type:String,default:"picker-reverse-transition"},...q(rt(),["displayValue"])},"VDatePickerMonth"),ve=j()({name:"VDatePickerMonth",props:Me(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0},setup(e,a){let{emit:y,slots:u}=a;const t=C(),{daysInMonth:s,model:v,weekNumbers:k}=it(e),r=G(),l=X(),c=X(),w=X(!1),V=te(()=>w.value?e.reverseTransition:e.transition);e.multiple==="range"&&v.value.length>0&&(l.value=v.value[0],v.value.length>1&&(c.value=v.value[v.value.length-1]));const n=x(()=>{const g=["number","string"].includes(typeof e.multiple)?Number(e.multiple):1/0;return v.value.length>=g});le(s,(g,i)=>{i&&(w.value=r.isBefore(g[0].date,i[0].date))});function o(g){const i=r.startOfDay(g);if(v.value.length===0?l.value=void 0:v.value.length===1&&(l.value=v.value[0],c.value=void 0),!l.value)l.value=i,v.value=[l.value];else if(c.value)l.value=g,c.value=void 0,v.value=[l.value];else{if(r.isSameDay(i,l.value)){l.value=void 0,v.value=[];return}else r.isBefore(i,l.value)?(c.value=r.endOfDay(l.value),l.value=i):c.value=r.endOfDay(i);v.value=Ne(r,l.value,c.value)}}function f(g){const i=v.value.findIndex(S=>r.isSameDay(S,g));if(i===-1)v.value=[...v.value,g];else{const S=[...v.value];S.splice(i,1),v.value=S}}function b(g){e.multiple==="range"?o(g):e.multiple?f(g):v.value=[g]}F(()=>D("div",{class:"v-date-picker-month"},[e.showWeek&&D("div",{key:"weeks",class:"v-date-picker-month__weeks"},[!e.hideWeekdays&&D("div",{key:"hide-week-days",class:"v-date-picker-month__day"},[E(" ")]),k.value.map(g=>D("div",{class:J(["v-date-picker-month__day","v-date-picker-month__day--adjacent"])},[g]))]),m(be,{name:V.value},{default:()=>{var g;return[D("div",{ref:t,key:(g=s.value[0].date)==null?void 0:g.toString(),class:"v-date-picker-month__days"},[!e.hideWeekdays&&r.getWeekdays(e.firstDayOfWeek).map(i=>D("div",{class:J(["v-date-picker-month__day","v-date-picker-month__weekday"])},[i])),s.value.map((i,S)=>{var B;const Y={props:{class:"v-date-picker-month__day-btn",color:i.isSelected||i.isToday?e.color:void 0,disabled:i.isDisabled,icon:!0,ripple:!1,text:i.localized,variant:i.isSelected?"flat":i.isToday?"outlined":"text",onClick:()=>b(i.date)},item:i,i:S};return n.value&&!i.isSelected&&(i.isDisabled=!0),D("div",{class:J(["v-date-picker-month__day",{"v-date-picker-month__day--adjacent":i.isAdjacent,"v-date-picker-month__day--hide-adjacent":i.isHidden,"v-date-picker-month__day--selected":i.isSelected,"v-date-picker-month__day--week-end":i.isWeekEnd,"v-date-picker-month__day--week-start":i.isWeekStart}]),"data-v-date":i.isDisabled?void 0:i.isoDate},[(e.showAdjacentMonths||!i.isAdjacent)&&(((B=u.day)==null?void 0:B.call(u,Y))??m(A,Y.props,null))])})])]}})]))}}),Pe=T({color:String,height:[String,Number],min:null,max:null,modelValue:Number,year:Number,allowedMonths:[Array,Function]},"VDatePickerMonths"),fe=j()({name:"VDatePickerMonths",props:Pe(),emits:{"update:modelValue":e=>!0},setup(e,a){let{emit:y,slots:u}=a;const t=G(),s=W(e,"modelValue"),v=x(()=>{let r=t.startOfYear(t.date());return e.year&&(r=t.setYear(r,e.year)),ye(12).map(l=>{const c=t.format(r,"monthShort"),w=!!(!k(l)||e.min&&t.isAfter(t.startOfMonth(t.date(e.min)),r)||e.max&&t.isAfter(r,t.startOfMonth(t.date(e.max))));return r=t.getNextMonth(r),{isDisabled:w,text:c,value:l}})});ke(()=>{s.value=s.value??t.getMonth(t.date())});function k(r){return Array.isArray(e.allowedMonths)&&e.allowedMonths.length?e.allowedMonths.includes(r):typeof e.allowedMonths=="function"?e.allowedMonths(r):!0}return F(()=>D("div",{class:"v-date-picker-months",style:{height:ae(e.height)}},[D("div",{class:"v-date-picker-months__content"},[v.value.map((r,l)=>{var V;const c={active:s.value===l,color:s.value===l?e.color:void 0,disabled:r.isDisabled,rounded:!0,text:r.text,variant:s.value===r.value?"flat":"text",onClick:()=>w(l)};function w(n){if(s.value===n){y("update:modelValue",s.value);return}s.value=n}return((V=u.month)==null?void 0:V.call(u,{month:r,i:l,props:c}))??m(A,p({key:"month"},c),null)})])])),{}}}),Se=T({color:String,height:[String,Number],min:null,max:null,modelValue:Number,allowedYears:[Array,Function]},"VDatePickerYears"),me=j()({name:"VDatePickerYears",props:Se(),emits:{"update:modelValue":e=>!0},setup(e,a){let{emit:y,slots:u}=a;const t=G(),s=W(e,"modelValue"),v=x(()=>{const l=t.getYear(t.date());let c=l-100,w=l+52;e.min&&(c=t.getYear(t.date(e.min))),e.max&&(w=t.getYear(t.date(e.max)));let V=t.startOfYear(t.date());return V=t.setYear(V,c),ye(w-c+1,c).map(n=>{const o=t.format(V,"year");return V=t.setYear(V,t.getYear(V)+1),{text:o,value:n,isDisabled:!r(n)}})});ke(()=>{s.value=s.value??t.getYear(t.date())});const k=We();ge(async()=>{var l;await Te(),(l=k.el)==null||l.scrollIntoView({block:"center"})});function r(l){return Array.isArray(e.allowedYears)&&e.allowedYears.length?e.allowedYears.includes(l):typeof e.allowedYears=="function"?e.allowedYears(l):!0}return F(()=>D("div",{class:"v-date-picker-years",style:{height:ae(e.height)}},[D("div",{class:"v-date-picker-years__content"},[v.value.map((l,c)=>{var V;const w={ref:s.value===l.value?k:void 0,active:s.value===l.value,color:s.value===l.value?e.color:void 0,rounded:!0,text:l.text,disabled:l.isDisabled,variant:s.value===l.value?"flat":"text",onClick:()=>{if(s.value===l.value){y("update:modelValue",s.value);return}s.value=l.value}};return((V=u.year)==null?void 0:V.call(u,{year:l,i:c,props:w}))??m(A,p({key:"month"},w),null)})])])),{}}}),ot=T({header:{type:String,default:"$vuetify.datePicker.header"},headerColor:String,..._e(),...Me({weeksInMonth:"static"}),...q(Pe(),["modelValue"]),...q(Se(),["modelValue"]),...ze({title:"$vuetify.datePicker.title"}),modelValue:null},"VDatePicker"),ut=j()({name:"VDatePicker",props:ot(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0,"update:viewMode":e=>!0},setup(e,a){let{emit:y,slots:u}=a;const t=G(),{t:s}=Be(),{rtlClasses:v}=Re(),k=W(e,"modelValue",void 0,d=>K(d).map(h=>t.date(h)),d=>e.multiple?d:d[0]),r=W(e,"viewMode"),l=x(()=>{const d=t.date(e.min);return e.min&&t.isValid(d)?d:null}),c=x(()=>{const d=t.date(e.max);return e.max&&t.isValid(d)?d:null}),w=x(()=>{var P;const d=t.date();let h=d;return(P=k.value)!=null&&P[0]?h=t.date(k.value[0]):l.value&&t.isBefore(d,l.value)?h=l.value:c.value&&t.isAfter(d,c.value)&&(h=c.value),h&&t.isValid(h)?h:d}),V=te(()=>e.headerColor??e.color),n=C(Number(e.month??t.getMonth(t.startOfMonth(w.value)))),o=C(Number(e.year??t.getYear(t.startOfYear(t.setMonth(w.value,n.value))))),f=X(!1),b=x(()=>e.multiple&&k.value.length>1?s("$vuetify.datePicker.itemsSelected",k.value.length):k.value[0]&&t.isValid(k.value[0])?t.format(t.date(k.value[0]),"normalDateWithWeekday"):s(e.header)),g=x(()=>{let d=t.date();return d=t.setDate(d,1),d=t.setMonth(d,n.value),d=t.setYear(d,o.value),t.format(d,"monthAndYear")}),i=te(()=>`date-picker-header${f.value?"-reverse":""}-transition`),S=x(()=>{if(e.disabled)return!0;const d=[];if(r.value!=="month")d.push("prev","next");else{let h=t.date();if(h=t.startOfMonth(h),h=t.setMonth(h,n.value),h=t.setYear(h,o.value),l.value){const P=t.addDays(t.startOfMonth(h),-1);t.isAfter(l.value,P)&&d.push("prev")}if(c.value){const P=t.addDays(t.endOfMonth(h),1);t.isAfter(P,c.value)&&d.push("next")}}return d});function Y(d,h){const P=e.allowedDates;if(typeof P!="function")return!0;const O=t.getDiff(h,d,"days");for(let I=0;I<O;I++)if(P(t.addDays(d,I)))return!0;return!1}function B(d){if(typeof e.allowedDates=="function"){const h=t.parseISO(`${d}-01-01`);return Y(h,t.endOfYear(h))}if(Array.isArray(e.allowedDates)&&e.allowedDates.length){for(const h of e.allowedDates)if(t.getYear(t.date(h))===d)return!0;return!1}return!0}function ee(d){if(typeof e.allowedDates=="function"){const h=t.parseISO(`${o.value}-${d+1}-01`);return Y(h,t.endOfMonth(h))}if(Array.isArray(e.allowedDates)&&e.allowedDates.length){for(const h of e.allowedDates)if(t.getYear(t.date(h))===o.value&&t.getMonth(t.date(h))===d)return!0;return!1}return!0}function Ce(){n.value<11?n.value++:(o.value++,n.value=0,L(o.value)),H(n.value)}function pe(){n.value>0?n.value--:(o.value--,n.value=11,L(o.value)),H(n.value)}function Ae(){r.value="month"}function ne(){r.value=r.value==="months"?"month":"months"}function re(){r.value=r.value==="year"?"month":"year"}function H(d){r.value==="months"&&ne(),y("update:month",d)}function L(d){r.value==="year"&&re(),y("update:year",d)}return le(k,(d,h)=>{const P=K(h),O=K(d);if(!O.length)return;const I=t.date(P[P.length-1]),z=t.date(O[O.length-1]),R=t.getMonth(z),_=t.getYear(z);R!==n.value&&(n.value=R,H(n.value)),_!==o.value&&(o.value=_,L(o.value)),f.value=t.isBefore(I,z)}),F(()=>{const d=ue.filterProps(e),h=de.filterProps(e),P=ce.filterProps(e),O=ve.filterProps(e),I=q(fe.filterProps(e),["modelValue"]),z=q(me.filterProps(e),["modelValue"]),R={color:V.value,header:b.value,transition:i.value};return m(ue,p(d,{color:V.value,class:["v-date-picker",`v-date-picker--${r.value}`,{"v-date-picker--show-week":e.showWeek},v.value,e.class],style:e.style}),{title:()=>{var _;return((_=u.title)==null?void 0:_.call(u))??D("div",{class:"v-date-picker__title"},[s(e.title)])},header:()=>u.header?m(De,{defaults:{VDatePickerHeader:{...R}}},{default:()=>{var _;return[(_=u.header)==null?void 0:_.call(u,R)]}}):m(ce,p({key:"header"},P,R,{onClick:r.value!=="month"?Ae:void 0}),{...u,default:void 0}),default:()=>D(Ve,null,[m(de,p(h,{disabled:S.value,text:g.value,"onClick:next":Ce,"onClick:prev":pe,"onClick:month":ne,"onClick:year":re}),null),m(He,{hideOnLeave:!0},{default:()=>[r.value==="months"?m(fe,p({key:"date-picker-months"},I,{modelValue:n.value,"onUpdate:modelValue":[_=>n.value=_,H],min:l.value,max:c.value,year:o.value,allowedMonths:ee}),null):r.value==="year"?m(me,p({key:"date-picker-years"},z,{modelValue:o.value,"onUpdate:modelValue":[_=>o.value=_,L],min:l.value,max:c.value,allowedYears:B}),null):m(ve,p({key:"date-picker-month"},O,{modelValue:k.value,"onUpdate:modelValue":_=>k.value=_,month:n.value,"onUpdate:month":[_=>n.value=_,H],year:o.value,"onUpdate:year":[_=>o.value=_,L],min:l.value,max:c.value}),null)]})]),actions:u.actions})}),{}}}),he={__name:"DateField",props:{modelValue:{type:Object,default:null},label:{type:String,default:""}},setup(e){const a=C(!1);function y(){a.value=!1}return(u,t)=>(U(),Z(we,{modelValue:a.value,"onUpdate:modelValue":t[0]||(t[0]=s=>a.value=s),"close-on-content-click":!1,transition:"scale-transition","offset-y":"","min-width":"auto"},{activator:M(({props:s})=>[m(Ee,p({value:e.modelValue,label:e.label,"prepend-icon":"mdi-calendar",readonly:"",variant:"underlined"},s),null,16,["value","label"])]),default:M(()=>[m(ut,{value:e.modelValue,"no-title":"",onInput:y},null,8,["value"])]),_:1},8,["modelValue"]))}},st={key:0},dt={class:"text-subtitle-1"},ct={class:"text-subtitle-1"},vt={__name:"TimeSerieChart",props:{domain:{type:Object,required:!1,default:null},graphicSet:{type:String,default:null},graphicName:{type:String,default:null}},setup(e){const{$gettext:a}=Ue(),y=e,u=x(()=>r.value?r.value.title:""),t=C(!1),s=C({chart:{type:"area",stacked:!1,zoom:{type:"x",enabled:!0,autoScaleYaxis:!0},toolbar:{autoSelected:"zoom"}},dataLabels:{enabled:!1},yaxis:{},xaxis:{type:"datetime"}}),v=C(null),k=C(null),r=C(null),l=C("day"),c=C([{value:"day",name:a("Day")},{value:"week",name:a("Week")},{value:"month",name:a("Month")},{value:"year",name:a("Year")}]);function w(){return y.graphicName==="averagetraffic"?["#ff6347","#ffff00","#4682B4","#7cfc00","#ffa500","#d3d3d3"]:["#ffa500","#41d1cc"]}function V(){l.value="custom",o()}function n(f){f!==l.value&&(l.value=f,o())}function o(){const f={graphSet:y.graphicSet,period:l.value,graphicName:y.graphicName};y.domain&&(f.searchQuery=y.domain.name),l.value==="custom"&&(f.start=k.value,f.end=v.value),lt.getStatistics(f).then(b=>{r.value=b.data.graphs[y.graphicName]})}return ge(()=>{o()}),le(()=>y.graphicName,()=>{s.value.colors=w()}),(f,b)=>{const g=je("apexchart");return U(),Z(tt,null,{default:M(()=>[m(Je,{dense:"",elevation:"0"},{default:M(()=>[m(qe,null,{default:M(()=>[E(N(u.value),1)]),_:1}),m(xe),m(we,{modelValue:t.value,"onUpdate:modelValue":b[2]||(b[2]=i=>t.value=i),"offset-y":""},{activator:M(({props:i})=>[m(A,p({size:"small"},i,{"prepend-icon":"mdi-calendar"}),{default:M(()=>[E(N($(a)("Period"))+" ",1),l.value?(U(),ie("span",st,": "+N(l.value),1)):oe("",!0)]),_:2},1040)]),default:M(()=>[m(Ge,{class:"bg-white",fluid:""},{default:M(()=>[m(Qe,{"no-gutters":""},{default:M(()=>[m(se,{cols:"12",md:"6",class:"pr-2"},{default:M(()=>[D("div",dt,N($(a)("Absolute time range")),1),m(he,{modelValue:k.value,"onUpdate:modelValue":b[0]||(b[0]=i=>k.value=i),label:$(a)("From")},null,8,["modelValue","label"]),m(he,{modelValue:v.value,"onUpdate:modelValue":b[1]||(b[1]=i=>v.value=i),label:$(a)("To")},null,8,["modelValue","label"]),m(A,{color:"primary",onClick:V},{default:M(()=>[E(N($(a)("Apply")),1)]),_:1})]),_:1}),m(se,{cols:"12",md:"6"},{default:M(()=>[D("div",ct,N($(a)("Relative time ranges")),1),m(Ke,null,{default:M(()=>[(U(!0),ie(Ve,null,Fe(c.value,i=>(U(),Z(Xe,{key:i.value,onClick:S=>n(i.value)},{default:M(()=>[m(Ze,null,{default:M(()=>[E(N(i.name),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1}),m(et,null,{default:M(()=>[r.value?(U(),Z(g,{key:0,type:"area",height:"350",options:s.value,series:r.value.series},null,8,["options","series"])):oe("",!0)]),_:1})]),_:1})}}},Pt=$e(vt,[["__scopeId","data-v-feec578f"]]);export{Pt as T};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as o,f as r,o as m}from"./index-CTxlYqj4.js";import{_ as p}from"./ConnectedLayout-CuQwWdiY.js";import{u as e}from"./layout.store-3tdRwdnE.js";import"./VContainer-CC8lqRXa.js";/* empty css */import"./tag-Dx3OexMp.js";import"./VApp-tsfSFSQl.js";import"./layout-BFr6o7er.js";import"./ssrBoot-DGgZQEVC.js";import"./global.store-C4iiNxy1.js";import"./admin-CjK02gmr.js";import"./VAvatar-x_79C0tA.js";import"./VProgressCircular-ubzZW5PC.js";import"./forwardRefs-BSESyuUp.js";import"./VMenu-DTm7W1Hp.js";import"./VCard-DRptUN8Y.js";import"./VRow-B-csPNw7.js";import"./VSheet-BV83IblO.js";const b={__name:"UserLayout",setup(i){const t=e();return(s,a)=>(m(),o(p,{"menu-items":r(t).leftMenuItems},null,8,["menu-items"]))}};export{b as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as L,G as $,v as F,r as w,a as R,F as E,u as
|
|
1
|
+
import{i as L,G as $,v as F,r as w,a as R,F as E,u as N,z as O,b as j,H as q,c as G,s as H,w as J,k as M,d as p,h as d,V as K}from"./VAvatar-x_79C0tA.js";import{a as Q}from"./VProgressCircular-ubzZW5PC.js";import{b as U,m as W,c as X,a as Y}from"./tag-Dx3OexMp.js";import{v as Z,x as ee,T as ae,ac as v,aq as te,y as le,a as t,a6 as m,J as y,C as se,I as ne,e as s,B as oe}from"./index-CTxlYqj4.js";const re=L("v-alert-title"),ie=["success","info","warning","error"],ce=ee({border:{type:[Boolean,String],validator:e=>typeof e=="boolean"||["top","end","bottom","start"].includes(e)},borderColor:String,closable:Boolean,closeIcon:{type:ne,default:"$close"},closeLabel:{type:String,default:"$vuetify.close"},icon:{type:[Boolean,String,Function,Object],default:null},modelValue:{type:Boolean,default:!0},prominent:Boolean,title:String,text:String,type:{type:String,validator:e=>ie.includes(e)},...Y(),...J(),...X(),...H(),...G(),...q(),...j(),...W(),...se(),...O({variant:"flat"})},"VAlert"),ye=Z()({name:"VAlert",props:ce(),emits:{"click:close":e=>!0,"update:modelValue":e=>!0},setup(e,f){let{emit:b,slots:a}=f;const r=ae(e,"modelValue"),n=v(()=>{if(e.icon!==!1)return e.type?e.icon??`$${e.type}`:e.icon}),{themeClasses:k}=te(e),{colorClasses:V,colorStyles:C,variantClasses:P}=$(()=>({color:e.color??e.type,variant:e.variant})),{densityClasses:g}=F(e),{dimensionStyles:x}=U(e),{elevationClasses:S}=w(e),{locationStyles:_}=R(e),{positionClasses:B}=E(e),{roundedClasses:T}=N(e),{textColorClasses:h,textColorStyles:z}=Q(()=>e.borderColor),{t:I}=le(),i=v(()=>({"aria-label":I(e.closeLabel),onClick(o){r.value=!1,b("click:close",o)}}));return()=>{const o=!!(a.prepend||n.value),A=!!(a.title||e.title),D=!!(a.close||e.closable);return r.value&&t(e.tag,{class:y(["v-alert",e.border&&{"v-alert--border":!!e.border,[`v-alert--border-${e.border===!0?"start":e.border}`]:!0},{"v-alert--prominent":e.prominent},k.value,V.value,g.value,S.value,B.value,T.value,P.value,e.class]),style:m([C.value,x.value,_.value,e.style]),role:"alert"},{default:()=>{var c,u;return[M(!1,"v-alert"),e.border&&s("div",{key:"border",class:y(["v-alert__border",h.value]),style:m(z.value)},null),o&&s("div",{key:"prepend",class:"v-alert__prepend"},[a.prepend?t(d,{key:"prepend-defaults",disabled:!n.value,defaults:{VIcon:{density:e.density,icon:n.value,size:e.prominent?44:28}}},a.prepend):t(p,{key:"prepend-icon",density:e.density,icon:n.value,size:e.prominent?44:28},null)]),s("div",{class:"v-alert__content"},[A&&t(re,{key:"title"},{default:()=>{var l;return[((l=a.title)==null?void 0:l.call(a))??e.title]}}),((c=a.text)==null?void 0:c.call(a))??e.text,(u=a.default)==null?void 0:u.call(a)]),a.append&&s("div",{key:"append",class:"v-alert__append"},[a.append()]),D&&s("div",{key:"close",class:"v-alert__close"},[a.close?t(d,{key:"close-defaults",defaults:{VBtn:{icon:e.closeIcon,size:"x-small",variant:"text"}}},{default:()=>{var l;return[(l=a.close)==null?void 0:l.call(a,{props:i.value})]}}):t(K,oe({key:"close-btn",icon:e.closeIcon,size:"x-small",variant:"text"},i.value),null)])]}})}}});export{ye as V};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as V,u as c,m as k,c as C,a as u}from"./tag-Dx3OexMp.js";import{b as P,c as b,m as g}from"./layout-BFr6o7er.js";import{u as h}from"./ssrBoot-DGgZQEVC.js";import{v as p,x as v,a as S,a6 as y,J as d,e as r,aq as A,ah as B,C as L}from"./index-CTxlYqj4.js";const M=v({scrollable:Boolean,...u(),...C(),...k({tag:"main"})},"VMain"),D=p()({name:"VMain",props:M(),setup(a,o){let{slots:e}=o;const{dimensionStyles:s}=V(a),{mainStyles:n}=P(),{ssrBootStyles:m}=h();return c(()=>S(a.tag,{class:d(["v-main",{"v-main--scrollable":a.scrollable},a.class]),style:y([n.value,m.value,s.value,a.style])},{default:()=>{var t,l;return[a.scrollable?r("div",{class:"v-main__scroller"},[(t=e.default)==null?void 0:t.call(e)]):(l=e.default)==null?void 0:l.call(e)]}})),{}}}),_=v({...u(),...g({fullHeight:!0}),...L()},"VApp"),N=p()({name:"VApp",props:_(),setup(a,o){let{slots:e}=o;const s=A(a),{layoutClasses:n,getLayoutItem:m,items:t,layoutRef:l}=b(a),{rtlClasses:f}=B();return c(()=>{var i;return r("div",{ref:l,class:d(["v-application",s.themeClasses.value,n.value,f.value,a.class]),style:y([a.style])},[r("div",{class:"v-application__wrap"},[(i=e.default)==null?void 0:i.call(e)])])}),{getLayoutItem:m,items:t,theme:s}}});export{D as V,N as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as
|
|
1
|
+
import{b as ke,c as Ce,d as Se}from"./VSelect-tV4GZAtn.js";import{f as we,V as j,g as be}from"./VTextField-CWm47OUI.js";import{a as Fe}from"./VProgressCircular-ubzZW5PC.js";import{u as Ie,m as Ae,h as Pe}from"./filter-DaBUD6Rp.js";import{d as De,f as Re,V as Te,a as G}from"./forwardRefs-BSESyuUp.js";import{v as Me,x as Ee,y as Le,g as R,ab as F,T as U,aa as _e,h as x,L as T,a5 as Q,ar as Be,a as h,B as w,U as Ne,as as X,at as Y,au as Ke,e as b,av as Oe,F as z,aw as Ue,a6 as ze,J as qe,l as He}from"./index-CTxlYqj4.js";import{m as Je,d as Z,f as We,h as $e}from"./VAvatar-x_79C0tA.js";import{V as je}from"./VMenu-DTm7W1Hp.js";import{V as Ge}from"./VCheckboxBtn-xrhfoOlo.js";import{V as Qe}from"./VChip-Def9BYoN.js";import{u as Xe}from"./tag-Dx3OexMp.js";const Ye=Ee({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:Boolean,search:String,...Ae({filterKeys:["title"]}),...Ce(),...Ne(be({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...Je({transition:!1})},"VAutocomplete"),cl=Me()({name:"VAutocomplete",props:Ye(),emits:{"update:focused":l=>!0,"update:search":l=>!0,"update:modelValue":l=>!0,"update:menu":l=>!0},setup(l,ee){let{slots:n}=ee;const{t:M}=Le(),p=R(),V=F(!1),k=F(!0),E=F(!1),q=R(),L=R(),i=F(-1),{items:H,transformIn:le,transformOut:te}=De(l),{textColorClasses:ae,textColorStyles:ue}=Fe(()=>{var e;return(e=p.value)==null?void 0:e.color}),f=U(l,"search",""),u=U(l,"modelValue",[],e=>le(e===null?[null]:_e(e)),e=>{const t=te(e);return l.multiple?t:t[0]??null}),ne=x(()=>typeof l.counterValue=="function"?l.counterValue(u.value):typeof l.counterValue=="number"?l.counterValue:u.value.length),I=we(l),{filteredItems:_,getMatches:oe}=Ie(l,H,()=>k.value?"":f.value),y=x(()=>l.hideSelected?_.value.filter(e=>!u.value.some(t=>t.value===e.value)):_.value),A=x(()=>!!(l.chips||n.chip)),S=x(()=>A.value||!!n.selection),ie=x(()=>u.value.map(e=>e.props.value)),B=x(()=>{var t;return(l.autoSelectFirst===!0||l.autoSelectFirst==="exact"&&f.value===((t=y.value[0])==null?void 0:t.title))&&y.value.length>0&&!k.value&&!E.value}),P=x(()=>l.hideNoData&&!y.value.length||I.isReadonly.value||I.isDisabled.value),N=U(l,"menu"),c=x({get:()=>N.value,set:e=>{var t;N.value&&!e&&((t=q.value)!=null&&t.ΨopenChildren.size)||e&&P.value||(N.value=e)}}),J=x(()=>c.value?l.closeText:l.openText),K=R(),se=ke(K,p);function re(e){l.openOnClear&&(c.value=!0),f.value=""}function ce(){P.value||(c.value=!0)}function ve(e){P.value||(V.value&&(e.preventDefault(),e.stopPropagation()),c.value=!c.value)}function de(e){var t;e.key!==" "&&X(e)&&((t=p.value)==null||t.focus())}function fe(e){var a,r,m,g,o;if(I.isReadonly.value)return;const t=(a=p.value)==null?void 0:a.selectionStart,s=u.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(e.key)&&e.preventDefault(),["Enter","ArrowDown"].includes(e.key)&&(c.value=!0),["Escape"].includes(e.key)&&(c.value=!1),B.value&&["Enter","Tab"].includes(e.key)&&!u.value.some(d=>{let{value:v}=d;return v===y.value[0].value})&&C(y.value[0]),e.key==="ArrowDown"&&B.value&&((r=K.value)==null||r.focus("next")),["Backspace","Delete"].includes(e.key)){if(!l.multiple&&S.value&&u.value.length>0&&!f.value)return C(u.value[0],!1);if(~i.value){e.preventDefault();const d=i.value;C(u.value[i.value],!1),i.value=d>=s-1?s-2:d}else e.key==="Backspace"&&!f.value&&(i.value=s-1);return}if(l.multiple)if(e.key==="ArrowLeft"){if(i.value<0&&t&&t>0)return;const d=i.value>-1?i.value-1:s-1;if(u.value[d])i.value=d;else{const v=((m=f.value)==null?void 0:m.length)??null;i.value=-1,(g=p.value)==null||g.setSelectionRange(v,v)}}else if(e.key==="ArrowRight"){if(i.value<0)return;const d=i.value+1;u.value[d]?i.value=d:(i.value=-1,(o=p.value)==null||o.setSelectionRange(0,0))}else~i.value&&X(e)&&(i.value=-1)}function me(e){if(Y(p.value,":autofill")||Y(p.value,":-webkit-autofill")){const t=H.value.find(s=>s.title===e.target.value);t&&C(t)}}function pe(){var e;l.eager&&((e=L.value)==null||e.calculateVisibleItems())}function he(){var e;V.value&&(k.value=!0,(e=p.value)==null||e.focus())}function ge(e){V.value=!0,setTimeout(()=>{E.value=!0})}function Ve(e){E.value=!1}function ye(e){(e==null||e===""&&!l.multiple&&!S.value)&&(u.value=[])}const O=F(!1);function C(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!e||e.props.disabled))if(l.multiple){const s=u.value.findIndex(r=>(l.valueComparator||Ke)(r.value,e.value)),a=t??!~s;if(~s){const r=a?[...u.value,e]:[...u.value];r.splice(s,1),u.value=r}else a&&(u.value=[...u.value,e]);l.clearOnSelect&&(f.value="")}else{const s=t!==!1;u.value=s?[e]:[],f.value=s&&!S.value?e.title:"",Q(()=>{c.value=!1,k.value=!0})}}return T(V,(e,t)=>{var s;e!==t&&(e?(O.value=!0,f.value=l.multiple||S.value?"":String(((s=u.value.at(-1))==null?void 0:s.props.title)??""),k.value=!0,Q(()=>O.value=!1)):(!l.multiple&&f.value==null&&(u.value=[]),c.value=!1,(l.multiple||S.value)&&(f.value=""),i.value=-1))}),T(f,e=>{!V.value||O.value||(e&&(c.value=!0),k.value=!e)}),T(c,()=>{if(!l.hideSelected&&c.value&&u.value.length){const e=y.value.findIndex(t=>u.value.some(s=>t.value===s.value));Be&&window.requestAnimationFrame(()=>{var t;e>=0&&((t=L.value)==null||t.scrollToIndex(e))})}}),T(()=>l.items,(e,t)=>{c.value||V.value&&!t.length&&e.length&&(c.value=!0)}),Xe(()=>{const e=!!(!l.hideNoData||y.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),t=u.value.length>0,s=j.filterProps(l);return h(j,w({ref:p},s,{modelValue:f.value,"onUpdate:modelValue":[a=>f.value=a,ye],focused:V.value,"onUpdate:focused":a=>V.value=a,validationValue:u.externalValue,counterValue:ne.value,dirty:t,onChange:me,class:["v-autocomplete",`v-autocomplete--${l.multiple?"multiple":"single"}`,{"v-autocomplete--active-menu":c.value,"v-autocomplete--chips":!!l.chips,"v-autocomplete--selection-slot":!!S.value,"v-autocomplete--selecting-index":i.value>-1},l.class],style:l.style,readonly:I.isReadonly.value,placeholder:t?void 0:l.placeholder,"onClick:clear":re,"onMousedown:control":ce,onKeydown:fe}),{...n,default:()=>b(z,null,[h(je,w({ref:q,modelValue:c.value,"onUpdate:modelValue":a=>c.value=a,activator:"parent",contentClass:"v-autocomplete__content",disabled:P.value,eager:l.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:l.transition,onAfterEnter:pe,onAfterLeave:he},l.menuProps),{default:()=>[e&&h(Te,w({ref:K,selected:ie.value,selectStrategy:l.multiple?"independent":"single-independent",onMousedown:a=>a.preventDefault(),onKeydown:de,onFocusin:ge,onFocusout:Ve,tabindex:"-1","aria-live":"polite",color:l.itemColor??l.color},se,l.listProps),{default:()=>{var a,r,m;return[(a=n["prepend-item"])==null?void 0:a.call(n),!y.value.length&&!l.hideNoData&&(((r=n["no-data"])==null?void 0:r.call(n))??h(G,{key:"no-data",title:M(l.noDataText)},null)),h(Se,{ref:L,renderless:!0,items:y.value,itemKey:"value"},{default:g=>{var $;let{item:o,index:d,itemRef:v}=g;const W=w(o.props,{ref:v,key:o.value,active:B.value&&d===0?!0:void 0,onClick:()=>C(o,null)});return(($=n.item)==null?void 0:$.call(n,{item:o,index:d,props:W}))??h(G,w(W,{role:"option"}),{prepend:D=>{let{isSelected:xe}=D;return b(z,null,[l.multiple&&!l.hideSelected?h(Ge,{key:o.value,modelValue:xe,ripple:!1,tabindex:"-1"},null):void 0,o.props.prependAvatar&&h(We,{image:o.props.prependAvatar},null),o.props.prependIcon&&h(Z,{icon:o.props.prependIcon},null)])},title:()=>{var D;return k.value?o.title:Pe("v-autocomplete",o.title,(D=oe(o))==null?void 0:D.title)}})}}),(m=n["append-item"])==null?void 0:m.call(n)]}})]}),u.value.map((a,r)=>{function m(v){v.stopPropagation(),v.preventDefault(),C(a,!1)}const g={"onClick:close":m,onKeydown(v){v.key!=="Enter"&&v.key!==" "||(v.preventDefault(),v.stopPropagation(),m(v))},onMousedown(v){v.preventDefault(),v.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},o=A.value?!!n.chip:!!n.selection,d=o?Ue(A.value?n.chip({item:a,index:r,props:g}):n.selection({item:a,index:r})):void 0;if(!(o&&!d))return b("div",{key:a.value,class:qe(["v-autocomplete__selection",r===i.value&&["v-autocomplete__selection--selected",ae.value]]),style:ze(r===i.value?ue.value:{})},[A.value?n.chip?h($e,{key:"chip-defaults",defaults:{VChip:{closable:l.closableChips,size:"small",text:a.title}}},{default:()=>[d]}):h(Qe,w({key:"chip",closable:l.closableChips,size:"small",text:a.title,disabled:a.props.disabled},g),null):d??b("span",{class:"v-autocomplete__selection-text"},[a.title,l.multiple&&r<u.value.length-1&&b("span",{class:"v-autocomplete__selection-comma"},[He(",")])])])})]),"append-inner":function(){var g,o;for(var a=arguments.length,r=new Array(a),m=0;m<a;m++)r[m]=arguments[m];return b(z,null,[(g=n["append-inner"])==null?void 0:g.call(n,...r),l.menuIcon?h(Z,{class:"v-autocomplete__menu-icon",color:(o=p.value)==null?void 0:o.fieldIconColor,icon:l.menuIcon,onMousedown:ve,onClick:Oe,"aria-label":M(J.value),title:M(J.value),tabindex:"-1"},null):void 0])}})}),Re({isFocused:V,isPristine:k,menu:c,search:f,filteredItems:_,select:C},p)}});export{cl as V};
|