Files
nextcloud-server-mirror/dist/twofactor_backupcodes-settings-personal.mjs
2026-10-05 10:10:14 +00:00

4 lines
4.4 KiB
JavaScript

import{d as U,c as A}from"./pinia-BQvrkX0t.chunk.mjs";import{p as _,b as B,o as n,f as p,u as a,c as x,w as k,j as i,t as d,h as E,F as m,g as f,B as I,n as g,k as y,l as N,e as M}from"./preload-helper-CseRDAJ7.chunk.mjs";import{g as $,t as o}from"./fileSize-G68jp3EG.chunk.mjs";import{a as P}from"./index-Cc_UePRz.chunk.mjs";import{c as R}from"./index-CkjJ6CBQ.chunk.mjs";import{N as w}from"./ArrowRight-gS7jb_sQ.chunk.mjs";import{N as j}from"./PencilOutline-Cfr8gsXf.chunk.mjs";import{g as F,b as G}from"./formatRelative-CRa9J-kT.chunk.mjs";import{l as H,_ as q}from"./public-Cpb8_kIm.chunk.mjs";import{c as z}from"./TrashCanOutline-DwcDrXRM.chunk.mjs";import"./index-C34MMVmr.chunk.mjs";import"./NcModal-71nQ0O0g.chunk.mjs";import"./createElementId-Dh4E-ofN.chunk.mjs";import"./NcNoteCard-RF8V1iI7.chunk.mjs";import"./NcPasswordField-BX7X04-n.chunk.mjs";import"./Web-B-Jofi4I.chunk.mjs";const D=F().detectLogLevel().setApp("twofactor_backupcodes").build();function J(r){const c=$().theming.name||"Nextcloud",e=window.open("",o("twofactor_backupcodes","{name} backup codes",{name:c}));if(!e)throw P(o("twofactor_backupcodes","Unable to open a new tab for printing")),new Error("Unable to open a new tab for printing");const t=e.document.createElement("h1");t.textContent=o("twofactor_backupcodes","{name} backup codes",{name:c});const s=e.document.createElement("pre");for(const b of r){const u=e.document.createTextNode(b);s.appendChild(u),s.appendChild(e.document.createElement("br"))}e.document.body.innerHTML="",e.document.body.appendChild(t),e.document.body.appendChild(s),e.print(),e.close()}async function K(){const r=G("/apps/twofactor_backupcodes/settings/create"),{data:c}=await z.post(r);return c}const v=H("twofactor_backupcodes","state"),O=U("twofactor_backupcodes",()=>{const r=_(v.enabled),c=_(v.total),e=_(v.used),t=_([]);async function s(){r.value=!1;const{codes:b,state:u}=await K();r.value=u.enabled,c.value=u.total,e.value=u.used,t.value=b}return{enabled:r,total:c,used:e,codes:t,generate:s}}),Q=["aria-label"],V=B({__name:"PersonalSettings",setup(r){const c=$().theming.name??"Nextcloud",e=O(),t=_(!1),s=N(()=>e.codes&&e.codes.length>0),b=c+"-backup-codes.txt",u=N(()=>s.value?"data:text/plain,"+encodeURIComponent(e.codes.reduce((l,C)=>l+C+`
`,"")):"");async function h(){await R(),t.value=!0;try{await e.generate()}catch(l){D.error("Error generating backup codes",{error:l}),P(o("twofactor_backupcodes","An error occurred while generating your backup codes"))}finally{t.value=!1}}function T(){J(!e.codes||e.codes.length===0?[]:e.codes)}return(l,C)=>(n(),p("div",{class:g(l.$style.backupcodesSettings)},[a(e).enabled?(n(),p(m,{key:1},[f("p",null,[s.value?(n(),p(m,{key:1},[i(d(a(o)("twofactor_backupcodes","These are your backup codes. Please save and/or print them as you will not be able to read the codes again later."))+" ",1),f("ul",{"aria-label":a(o)("twofactor_backupcodes","List of backup codes")},[(n(!0),p(m,null,I(a(e).codes,S=>(n(),p("li",{key:S,class:g(l.$style.backupcodesSettings__code)},d(S),3))),128))],8,Q)],64)):(n(),p(m,{key:0},[i(d(a(o)("twofactor_backupcodes","Backup codes have been generated. {used} of {total} codes have been used.",{used:a(e).used,total:a(e).total})),1)],64))]),f("p",{class:g(l.$style.backupcodesSettings__actions)},[y(a(w),{id:"generate-backup-codes",variant:"error",onClick:h},{default:k(()=>[i(d(a(o)("twofactor_backupcodes","Regenerate backup codes")),1)]),_:1}),s.value?(n(),p(m,{key:0},[y(a(w),{onClick:T},{default:k(()=>[i(d(a(o)("twofactor_backupcodes","Print backup codes")),1)]),_:1}),y(a(w),{href:u.value,download:b,variant:"primary"},{default:k(()=>[i(d(a(o)("twofactor_backupcodes","Save backup codes")),1)]),_:1},8,["href"])],64)):E("",!0)],2),f("p",null,[f("em",null,d(a(o)("twofactor_backupcodes","If you regenerate backup codes, you automatically invalidate old codes.")),1)])],64)):(n(),x(a(w),{key:0,disabled:t.value,variant:"primary",onClick:h},{icon:k(()=>[t.value?(n(),x(a(j),{key:0})):E("",!0)]),default:k(()=>[i(" "+d(a(o)("twofactor_backupcodes","Generate backup codes")),1)]),_:1},8,["disabled"]))],2))}}),W="_backupcodesSettings_bnkw8_2",X="_backupcodesSettings__code_bnkw8_7",Y="_backupcodesSettings__actions_bnkw8_13",Z={backupcodesSettings:W,backupcodesSettings__code:X,backupcodesSettings__actions:Y},ee={$style:Z},ae=q(V,[["__cssModules",ee]]),oe=A(),L=M(ae);L.use(oe),L.mount("#twofactor-backupcodes-settings");
//# sourceMappingURL=twofactor_backupcodes-settings-personal.mjs.map