From f9f263171ba3272abf918d74177298001915754c Mon Sep 17 00:00:00 2001 From: Leo Vasanko Date: Sun, 13 Jul 2025 14:03:15 -0600 Subject: [PATCH] Move the whole app under /auth/, fix static build. --- .gitignore | 3 ++- frontend/bun.lockb | Bin 88484 -> 0 bytes frontend/index.html | 4 ++-- frontend/package.json | 3 +-- frontend/src/assets/icon.webp | Bin 0 -> 88522 bytes frontend/src/stores/auth.js | 32 -------------------------------- frontend/src/utils/passkey.js | 2 +- frontend/vite.config.js | 5 ++--- passkeyauth/main.py | 19 ++++++++++++++----- 9 files changed, 22 insertions(+), 46 deletions(-) delete mode 100755 frontend/bun.lockb create mode 100644 frontend/src/assets/icon.webp diff --git a/.gitignore b/.gitignore index 136e5a0..e1e7a1b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ dist/ !.gitignore *.lock *.db -server-secret.bin \ No newline at end of file +server-secret.bin +/passkeyauth/frontend-static diff --git a/frontend/bun.lockb b/frontend/bun.lockb deleted file mode 100755 index b188daaf30aa0142b6616da8013536aaf362ac8a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88484 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 - + - Vite App + Passkey Authentication
diff --git a/frontend/package.json b/frontend/package.json index ba4d74d..2d61b90 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -16,7 +16,6 @@ }, "devDependencies": { "@vitejs/plugin-vue": "^6.0.0", - "vite": "^7.0.4", - "vite-plugin-vue-devtools": "^7.7.7" + "vite": "^7.0.4" } } diff --git a/frontend/src/assets/icon.webp b/frontend/src/assets/icon.webp new file mode 100644 index 0000000000000000000000000000000000000000..9983df6b8b97d1349a18f2e1af2ad461e88765e3 GIT binary patch literal 88522 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%0AEc=IPVgy{`(U>hc~DZ3pZ5*v+H) z)sO8#{_|6RbWT<(|4lxte!u$q#6(~tLNiw~zm7Y;Fy_yhycN&ObW}cDbuLNl%zyVb ze}U-P=5G=w8uJ&=xwk#K`%*$YQ)b|g16Q9vW^(Vixk6~}l*PHtoew8%l|JKfC)oVM znO{eatNUJ9w{$|l*Znu{G0r-}W&YvgQopKS6N`BwFZ~U0-mOAuqU7^mUZ49o{Bpc&pdl4A~9j@z6rM!egrKKcJ$&Y?%Kkza`!71O?8urv;R2%Rw*{n zy3ujhF0)PYUq<=I!`nNvSIOr}@ZIaVwROUwpRH@3JkR=VJ@3BfE+K`;FxfvAXOAki zz0_p2emhV2;Zu&}NbMIAfhFg>O8$6@uhE*w_hZLZ^FEu;D<9v}d3JI6rO$s>TZ9Om z5zqc`!7zEjgyQ)3#d%-0Ty=W>nfV%9!K}YuR-9I{^xmg)e(&p}N3Q>wXQlL(XH}$( z+LOQWe}Ampm#)YhB{1zv9G{m%z{}VGi-Vm3VfI?>TBqjLGP(NkJ-g3;dw=mWvH86s zi>jm7O*zvgp&_)rqcLJr<8M}v1?;AOUfTXo`|bXW#j|13UYp;y7SDgH;8p%sW!KTj z>uJm6x({yF>h*B%m*xGUv0FsDamv=z@6Q60>s=4?ntgS>^D4L?`101?=}Q!rZTR>i zFWNFJb>Y5qk3Ej>+Z~ha>iRk1z?$vMVF#}~TKje7nMkiJnTTG4%kFMFbM=m#!C^&>BkRsT_WFBW zJZZmo`LX-W`a84^PI9Q)&)Pe4+WY-4)tYWx`@>z`q0n*KV##umolW!YMrsrLYF>B;gn2>kV?E4-A-nQSq&qd!=O`8>^aQ@t_#VUg7 z!I$>broFnOmEhK~_r>K$89kpKeszAa*TUmt-)CFXTOS{Ox^-2k=;*1d$w@~Xc3FJ* z%E5fo!8+UNG+$xooDz3GM@OX?SHtGzY*)OO3zfUC3{jKPnR5Qm`sE6r?_KbjUgL4w z7dk8JH2AwX zPX67g6~iNS@gZO1g2fvzhJRyV-d2+M_1mibL8p#gZ9S{JUVh!(lh^(&npQd0bLzi^ z2EC>FZ?cT;KdIGqyQXdOxMK3DH`C3Z9-ihup+&@`FGYccVNuDV>)F5f&IeucVE>j7 zVaKwe-2X{_Md89z{2z~@NU0AgG8XT#o2qE$=9!Y>p#=f zyTwx&5|w{@l4$L|qI-*HU#*MHe3Cd(hvRZffZyDY+~-;Y?lJ$(>Y8<+Uw?0I-m=gL z$u;#8mBTGq^jxxxHb>jYcp8WHTE5wskow1+r-xf_+V6=H9EWc7df)4)WW9W2jnJ>s z&V1YI|39x*Oiw@2IrA%1--G89xAfTNe_^UMTwBDUcENRzlSDa&@ZPO5vlp_k=si5o!coj`);8e=lR#ImN!L=4kj&*V1$H!3A--W==dy9rIk= zR=?TxQ|jvHMW%8NFyoYkuA z>yZ2OgS^y&gAAqI6GZek@#~&kJ}a}{?b8>w(6qXMMZtB;W)*7-T$1%{`@Z}6T{|bw zZ;May@YY{i{?6ftrApMOd(H)bzh_~c!YR>m}`?l;cD z25mQT;)g4~Ea1Lu}jMsU!;dXdL(d%p5Ab-TO*i&Rgx1s{d_k-DQMlKDb%u zbNcqfVy(rSz9hMr&*{1|@y^!v5KnV~N$Z2&tDUekywS5$>s`zK7E9|r6sgKPuJtg0^VPfBXIEDziF4lW(R}T|dZYC3w5du8 z5gfG#FDEFsDe}L6zT>=|$@z{wo7K7m`b`zTd@PxLOyG{x70-Eh%vuDuY%t%QBEC?s z$WZyw%hXqbiHUz_$Isaqd+SKj&Y7Lho+yB;)EL1t_iMuV4U$d z$yz>?-z7pvqkFEU=;s5ax1JrHy~Hr=-|Ai?kV=+a%iE=PR4ZKFD@1P|Dg= zyKmYl3&GV2!8_jmt~fp;#!Vn&jwq-3-Qccd#y*kHSC&k(aS>VswZ1`qJ zTINi?7w?)-voKU(TXwGOycr93a7wjr-2Tq5=s~{D8gGsiJ?7V!jxt_x-=gCYGew0v z?VsqoDOCa2KJi)}JM+J1O)1Ajr~YC!CZ#ya=N9jgo><*JtK&PmQ}1@rbi*u1@HI z)hss-7@WMj@_dN#-Q9w(~2wqepw$0ySh1lEh`Wf*<&z3^RsO3RTy?&=$D zSw9BH=1qE$rFQhQMcmB&0$-&ZJ*zN{-{>+QGYN0g_+N!{{QDoR~I;EGVjEig>E_>4(*5E?Y|yccS`@0 zXhn=%p=4j8>LT_xFZ5ithd0FRiu?qD(LM5*_4 zD}C+5igt$#TDiWS^GbZxyEc3KZ{-I)dJne$S6p3Jz&}r)@<&k|6EAP$aiH8bH?Hu zxA*Re-#>l+$Gtrlk5@^`YIzsfX8c_xox5h!x9umgvuCq^~fojP$Sv3uFUAJ1dfWKU@IVKxols(bdA8~e8S#OeSp2>D zq_WtO`*RF$=&zdbuukjk{UbfRm)d+xmOVP{Bl|Z0c>aqkqNcVsn|yPwaxnUDmsUD+ z>gUv~sE_M^t~NZy=W~SL=JRFA<=y3d-|BZYn$|`vo&9u{rH|;cgU`efo7(u??!#>U$01z`?V)$KbY5@nW}SLWc+v&6l@tH@zGs?!gGtq5VrqQF+L~-G z#&a2NUZ=$)XPI);n$^@VT*B{{FA=o$!Jl^*9h_$8N@*+%zqZ>laFNRT+H&8QLGE!H zhf^=QCEHnXJ2I!1?AO%y;&&{WH?_y^tL9YxBXczN$K^7YpO`+YTU2H4c_aVUhS@!4J{Iz#4ewZeisT|+^^XKv2d~S~3&Z(!*?J&OY)4TPf$*HH)ez@(d zdwcb9z=9(_pCkG7_FO;p_2!x*?@b?j1v09vng3~tar=~CDuK_;kFYk}Qj(m^@$O2> z@s(dxq_S_fI;vcjsrekTyML+h7LU38b;9S*eKPpx$iR9-SXZp?wecyp42${oNzYe{ za&34$pCi@nM2u6D<&L?lTPn(ew>mVTB|ZK{8J;>7Kx zxjnuI{iIzFl!iQCDn8@Ty->+7tA4Lfbj`5#e$HB>q-g1?x%2a*bD>3^3MI^C31HAOqa#$ zeMMiXNNaJ}{q{3W{&vv!{H!tou^WN!*72?NOFSnNv#dR7!o5bPeWHgf3_On13GYpE zJ|=mhsMhgLSW}oo!HPxJ`N2$2-Y7j_-FIMvbB0B}#`~@v%O6_@?|j^n)xF8h`mKxk z?xT5k_HoVX`g@e)CjZ*dD>|RUn6q~6l$vzTSpBm8hC*lUg3`qM=70SAQtZ5o3}lU` zR2xWie(wz|f5i9tm-!RfM{;eN3unzpzhdC@Vrj%z{{YRC?EAbfv`mON8sy6ATgkrv zq(ZXyKG{VFHvQc?QKYWAfaftYw{o)5&WzOVsWSRk3vOt2-g-L2F3EiH%oE2Z1b7WV!5@FByW_-W%^wc1jnL`F==DXXl5+f^EwL+7`Y) zvUKHq<;Ehnrv{x{S-e``D#_mewx~~(@#Q|Bpb2bCwBBua;jr4TXrsO%zwrB8mn@q8 zwAt$kn18>^*LUj+igNbV z^uBhM*w@egH2S!{v-}(8<8N<0KDtDo^K#^l{P(Z&f~Rh6*{;|ry1_eWV>@rd_f;=M zk9bQ=O?$`uL~L*wU=#JWpq} zra-pW`J)oM?J~aKtv|tZ*CX!C{hqaNH&wfuRmyhn`O}^hGxx*pr4=PUvSfm!Y4E2NQ!H1?uR6D?S>eViZjl(@r_Msl%_nVJE5Bg3+2VeF!Plqzo_@Oc zdwY1<`wj0LBp&pNGOx7Q=a|iS!2A5(vdThbeSYN?iz9gV?09dK8$bPnp6%q72kaug zr=*`Z-_^G41Zz;mPt6(HrDY29S|{c|)!h-}dT!yFJsRF_Eb+^a9rKqtB-rqNzWLh? zbN4pPH)?!h?7URJ-8p{m52dB{j0R#|wK=l$opecYvVeAml^_isjCdNrr>fS!Z+ zj+TWrwHE|ppFOyCBeGW4ZE3BEz_a??S7yIvm1Xhf^X&D`(L1vHhQ0Sz9_9R93BHTe zP86QIIcb+$pLMEx&4Jkex67i%Wu;5KrfRJ1)|Nf$vZz(0M|M(5@}H(gTZL^UyWjsf z>pB1UZlwgdb61ZhNPjqQf9^@|w%PAz++Dcnd3|faqT9c1^TXWjCVrb9z0k|}Wq$Hc zDYo@GO~w+wn~Nc zx@}eSR{k-4{>9|a){Y|mGjBP5g)Za_TAs7s?wJ^R_NMQej5#@^XlY$x<@eZiZ^Mf-R) zCcOKxCx+kQl}hy-p7)}+0Jkt`<3_E{8Fc{dML)dZg%CH>a>*JpHF`YPt?ic zob{h$nxiIro=Q((RaO1XGwxis7u}9-DV`V5bhmN4;?Gaq%XBYQKXr<*x|+A}fH+rn zQ^p39aPuY;rxm${Xt{{jxjKfa zzv_8t=h%hsOG zVavKMblf7h{qpmusSl6#d#P~Edv^TEmaM5aPp|4ocNBQvJ$HHjR`Hspku43ctnTNA zt-bJ5bN$xCxcHp6^7+ct`mejJ=SbcSh@TR-RRKv1v zT3i*4?@gTXZhy5?`BvU#yVWn={jp}zaYc1`tJbdQ$NsGd`>Hjxq*&VZrn7;S+)3x{Ha)UFz=@E+wDH%0B(zyqw^1C8m>~-+yCidBC#naL|rfhi{fgd|C4? zQ7HP<+=xFDHf*TZoA}85V_S~dyRBYt)GmH>TPe|4Y4d;X_X)cqbte_a-dS~J^6bS& z>P~VUSjhG5bNey3bFusPz0=LGf00nOo=uSbLc@kG@$}g;Tc@ghmI)7<^2_n;1P9f= zfaX67^To@4<(b=`2>BT>Yp&g*tmG&DZTHfOV}rFxcwE zy9pvc_*jUr9;X@< zg1nX(81X!lUaP2mFfqjPY3OQ2=?_XXWR7J&hrb-Yn3$nRUYwq-W1&ZtI=<3|IdqSPc6UIqwapBVA+qB z3C;`t+f;n(ye?98)1V(sMrU3-qDotX3L?8n(bnKQM&#w(fSOyYUys&bh(FTTrN ze!{E8Z)b;nuXuDrr2og1EgH+dgcYt>TDz+^+g80kUfJN)elBm>Yt>R-d-Mf4JaUw~ ze;Pi2wd8wxQrz!}g8MgChMn%KT>4^0L8)J|<80<*CwDM^dw6x>ldW&3rrfp7SlXuU z|78QaLx!(t^}f1aGMsXkTg|@C?T8RjXNa?1d63`J##KI9ZC%!f9p)}3x!?HLO>pOB z|2QY*#+f^Re6_QkLKE%&9@#wE=5O4i=Tb~r%{C|UwjRs;@9^+kyy)lqZSFal&Eh)J z>Uul5cN~0Lq4{LaQ|7m}3ml_AGu?|<{-6Hz{+xFTW(udRe%o9Q5?(3f(e&14`|IzT zdmR6t{k>$W(yDo%gP$E<#?>otF=@w!6Wr{Vavc>L+kA90^+GK7p7|wyaN5M|(1*qK z=Z{4(Xvr8^Oxx;me*1k9^Zoua>l*J|$)En%ufIyWT6@ zcvJhM$So~jzHWZ$#j>nM*L*nCd37#`g?W69QC<4`@JV;;^7|K()_yv_nlmFamSL?H zhr-iCDmWAwF`3ROA>LlR3a6#6i_Y`fPaoGm<^@%$Ix>Zb=7Ln<|& zq_ME)A3K%gu&_;TlC#UBM(v1@p8NH=orRAdSWg$<_DOK_b9wIQDY-xV?Vab9eG9p+ z+p{smN?33u*FVqHpKKA*J@r$spwaPYm^=xS_v#$X#nt7xS|Rsi2h-*k_n(wZzMQHqam?*$isfI$7gx5G87(N>(N#OCY0cgb_AaaT zw_N#Qd`<91bD5Xo{DTXYe~X$M&(huSb+^sB;Jh;{BmD%vq(1z$*K>_u&E)S~K?@cx zN~%dvz8RK>Jna5-%! z5th1h-lJ6tzK)Wui*9#L67})=Eq1Wv&CE$3mX`dBw@BOB;e6+fJVR!mV)=sWlNkj5 zMKf>Sr57r_H@$UpQ?td5(}6aY6a6(*nl3JuE^zr#p|$E@oNV|s8);@Z=2MS z3LX`8$Chr(huMX9*QdVV@pd_Wqa^3Sq%6gKi;T49XV|S+Yi2LZRUh%z!PS1|MKc9H zI|+AnxryJt>Mk+it9tXMdAbN6UrL2>l7yZ^Zmq*vPUa5gmigWyXPtkQI31t6MdK!; z^L)l98WO(S*7G$_bY^(Fj_v#8`n~7n{knbUEqnhl?$i^hpHoXve)UHy8X zl%Lb=@SMN*@5Z0x(O|W5o#Axp#xA%1v`cLvkw;8zZYRxl$Y?!%{?db`Z#Y=>QkmQL zc=}8D%2s+lJYm(d`)kdIzYY8D?E5rnZ~n{)8eU7|`yF<#aM+h{hbh#I=V{hq`K+TI zt55%3a-cMPv?x8- z?Pa-hjjH{&U1wd)*)Ua2^N7L;<%-J>rdmE;mAJj-_O=ttqkgfK+D~eJHoK;u<4oR9 zHqYiMHzpZW1`w_({ zRXPo8gD_4UG3mV&OgPKq+8|J*q|H*wv5jwsuz z#n*-3oQ=*4lH1=BfAsBU>Ff(ZUefEPTs&6tZC~Y?|EH?{a@?}i{`vbugkDhP9$}rY zA38%^F3)=1+T3+{@#CtxMi%Qh-~Dd?MfH!)Gupb~Tf89i`=0VYb9^n5+WZB79Ay`* z?s5*1JLo-wZ}VK`=?u))!otUw1(N zcrB)4OJ(lUoLlxs3prd$9%L`eO*pfU&*X}*$=nC_pDyf(ToGYBw^I3qqS2D4Qw!&9 zjY!H9n$fu4gZ)}ZuufrXSy1xw`oHNR(tWNuQsEV{iPH-{COoOyR`tvNpssmFY|!~fp^xR6-@NPS6SYr@ zlS%FJY5$m7@KDEAbLTQO9X`S5fpjEXD;yrF9o?YU-7%n$JoxaP_n=lN-+ zH$%qX7gIT9R!E9Di2J{0_;PuLczgPm%4yq^JQRZ6pDp)>OtZNW2UJ`CiroSZ85!&9lew?LxY;yi%_G4cDOj2`JLbC zb`B9v_5Xexb9)3n2EV>}?X{WgN|DbEzQz+CFLCM4p30{in0j*M?l#fhtdowp|2egf zm)CplOm{Oqb3KtUnk~Ec%4RQi$6(++}c;HuWTu)zWCSPh37uh-E8@3!D+^hqdboq-lMdG18S?{9e_biz^YrvXzc1}Ggs$b5 zB%fjMW;yz9I-f`=tMrKrdizYSu-7s?IPmA4!FjQ>Tt{{pCf-=vw{x=<&y7tpj&rA8 zd3H&BOHanSrw^@IS9_^%n*Z~Imdv3Ae*`>|<-7z>epH#`R{S#S%T3`YOPM2ocW%1- zP)E`<+wSPQUTxEeOIeGgp7<}{xyoRn|6|CB;3^R~^W z8c*%Km%Z!ayj}ZtTGmxs{W+`OEK~exPwBMao&J|yj?`uU{kYvj{dB-h4@M~qm8*4o zO{6qGc%OYJnX+$=scPGc2>*tC9JT8nu3wVKy(d{9!0Wou4@=QN^DO~$?DTS+Bu_Nf zm2TDwC}=Xt;PGTNgNU0+-X#W)*D8r~8XMmIp6qx2<*(oI(em-LD_8nQ{d|+Cn^lvg zcg}O#^c6D{%683PJ85H2;UT8sQ;my*xHu-de)-5UYHg1$a=Nv%kNIRmfbYkE^wPQ;f0T@ zsoE*G9o;rlXGR@&kxwY(b5D(aT=VYpPk(zXx_9Yh;BI~I z+u64#R3)Uk9F47iTRd&@WXUF{!^f}R$vdhgz%w~hE8yO?lPklg&it4f@<5eS&Eb;y zEpauL1h)w~Gwz(en$jD3KC{sKw4|#;9kV>mD>;3XCEjMv zUS^uPLdNbgtD^h)+tUwzGn>2I%;tNhhSdwB>IMIPw5?Dy=S*$*{LOxPkZD-|qNOgL zv--Q2@!dBJ@-m)2Jt}i{cX`xhp9-(ze7-(=_k^=uRe7JL7P(FD?m2J1KZoW=Of~f^ zVGf8ZdC_s|SmK_yKQ{)JhpR^VMy*wPz?kTN?5{uL=C4LM&*OH~{jhVZo%_*FZ~FT5 z)r$pXW~6H|&nSY$ULcG1tI_xVs9`Mm< zft$+I`KPyBv*KT!cWLRVg?vGO&404wtO-eQ%Q>0Qwyl9_7gNpiz~#Czsut;!T>pE| zIQ`ahn?P=sr>kj5hpeE~xi=p*=lb3@nP7h(Ypx*@z@u6Xj@;>1uT&)Y2%cxJweWbR*m`jz^j!#-D%y08sol1c2s;q#sI6`6!JH*WS8W|;PK+Z)as>~qVf zoc;N2`VQ5bZRdKF?!B*^`{mQ)DEI%$jU|GMGY)N!d;g^Jb`IY$o@CAL`!Uu}%_p4g zjNPLf-L$jbkZb28!>K=dPD$#;q<4wOM@^mdUaoF=!kI*iDP{XS?oC|0{7sjS(gcQs zL6_y~ZQB&&IldhJXofnfBW3b+!7)EgD+msXXU@bbm4z!!pwZTB5lHZ$H}*PUkDzaGo^Fom%anP&v=%fc^3R>N^sSR=anlL z_UrsHyt~TnLB+OX$?RI6uD!ZwZ`x%yyJF*VGloSwH*I|L#-Uq&MTPcEC*L~u%gOq8 zFDlhXU7eqIVd3x7*?%OD`{eI>{Zga8h@WG1x1FBcyW?&&^PykCo3#3 z-?$Qd@M>qJp9Jr>8O6(I&z{QWk+JKcWSNxhx%?MDkI2NNpDS8xuenp-)$jGM3)2KN zOZ4L9*`G|``^#bOf`Z`RmB%;#SQx6es;Q^jWd5DE3bxr>`d-H!(-nSnJmg^IrD@-S zQ={2!Jfa(NXNWI(^!mHD^c~53Z=Fw(3qH7AS+UklC*}6HK%4uSQTd##0Xr64s29uE zHS`U+xAo^wo!JkMo=+B)I)0(x!{YXw*Y-C5a*oHvX~+fb4>=fqwC>n8PY03Jvq~@Y z?0$P(#NpwUYP(m8a}F5D^*?udliCvff>Y+==@9c;|C`}nT#>$-E8PP=l`>C%R%=!@ zQ@mr1yOgYVMOP!|{uMcHZ$kE4#!jnBecSi_!@*UZiWho*u08i9q{Oq;C?JSs*2-?4 zd})_SeI@sz`CGLVuBa_uUD(r!`b{Kf!~XF#Rs>REmLMyb-NZgG8_soQPmAQ=M}y};z#0*-f5pVl#67S zIsJ~eYO`mQi?KeeICsY41$#}79xODDV7jupD@yQ$`1OU4%5vm?1poXof3E$KmthZU z)-gt>Hvaq8u-w;Z;``-cHxib;5Pa+E8+eodyy&ckn==%-Lj%K;+4>KB*q`N~f9U*^ z#fFjcYipbMT#9a6{hQl%d$rq~V>6@9?_;Uo?AGFcFF@~IVM_LC#-BUC&J;T!aYo?C zp6SltExqqfo8i6XhOyGZd3p)vtAv|3_A&8yxKzgf|G6u2Cg0?BU7w?*CeFVbd-Dd9 z*r#3Iw*~C;q)$umSrq@>dFOgqYWnj%XZ{F#&lhl%*0AQ8cl6Lnl`hBQ5qXiPpU$|x zr@2Z$o}IF_ zRP#X4@=Lv__5>uwcgtQJ0I;ko&EOL;?;9s24_Cg*fv|+ zxvMjN^?@+A+4?hQ%v-~qVQEs6s#mtm=)dO@-G|K{r!V|_nXSmSZEDI=eF?X?4WEw* z%}xBSY%(`6&iuXf%K8cWcl~H&=e?TpKt^R@^1CB%H&tewJ8jCb+tfu)i<_}?8besX z>M)tvcO%TBd|l=Ej(u-frFN}Wz*Qved_NaY6K@s6{jQz0i+>)QVshny`q7Mui#G}_ zNxZe-mQhan_23T25YfiPwX0HJz85onmCa`9%fFJ{5`AFR(b1)I~s4dxd!d{eplpfPPFsMsh>)} z%1ixpnm?&~nN!R+$5wXVwhH^!IeCvlinY?7m;Vyb-E=AT;TCC!J8M~z3&m{w9Zx=4 zeE011iT|f7{;_Wh`<}j1WJ&3p8%+M`*&M|EJTeR%`F{}6q7N)580?`En^I-f!oYz0CUQY8c{vcJs#=_9=d!N)=WYw8zCL z?0UYuy=dL;!bgIcynE&soOv9Rbb)b8^X)|r+uk2kocmAub^FUS(U$HIPhpc4^L;k1 zf75t5RUukX;PNs16TKFzqJpgY7}P!%^9LS&CC#zM`oeGCnU$*+nVH*Ir%0{8opE7dREg5oV9+dl+8IV!f3X%aE^KM8KY8JyTAuN z5ps{Ftlqr;UsKmj&U0?95&5syu_zzPSSlebvtDP;yN7+B^Z4x>8>b#R6Mb|3+rOXB z1~N$%d~laG3ty6=x$kkYjJm?^M?Y<%XRrO+vuk&ciaO)pS93RKuCG1#adUWMxrS?q z-tNrQ+0W_I*HX2OF3&s`UiWKpoW^%ft7hu& zzw-kwNG(=dwsU#=$1h827-l3K+Gsgv-#3$es-n}4*LfCj>N78J-D})D;Xc>?YYqnM za+#Z%1m&|I#;P!z&f!#Co-x~cJ+D?oLf?z3&*dy4PBCo4$RYvbZtg>9U!E8k-pYa0z54E^NuV&cK^G?_uY}!{ue& zSECFLI9$FL9JZIO{%qIfRddx<|GFFOI&he;Nm!EOy}MfS?Ol&;Q$5QB1W#sN{nKG) zrr#?teZSvd0jHa3=XX@r>(zuFIpLp}8~E(KMm)1xLqqlVi{IYtn^Gr~Wj4*`^v>RY zd%O-_`@iXCdi+!~*|&4*_Zl3(+4Szvh9!;}aTHnKQ?&_jP zvvQ9dx_s@{tnN?EcQmg*{qR%UMEJm=zJCX1EJ%2w{r1T-kvr2~XbT*9*K#A)!t;L= z(?`C8&jT}Fy6cF(-@769p4#G{GuK|TcA74~n_GR(5(US48J~+XdIugP6fL)qc)DPxT+z#LMZ$wfc(8qvDrIEqwp2_+Kir zGF<(n7RUa-H0@{Ap%0a&_il^zZTTTLQ^bcaxH3oo+4y|T(P!r2JxW{kpRJNJ_wedTJK$J6wWEE5 z@Py7)OBo*BSeLbC#WH#46YE>Wbg#P}*w1&Qeah9TlHPNl+oT@3B5JuYp}Xi%yIF6= zL#1V{w@>pq9n#Cxe|l*rv%8h2m(oq~8I_8SIiKh1MY+5@*OnM}Wv-{u^#={z9*PGu zo*G2iEisH|ZH_n`xbv0s@%DoUZl>Fwxcon};n4aS3(g(W`{^cB*A(}=+~4x+K|%h; zH_WxqceecU<gu%$!^O;U2N{$N!?Fc!s(ON^<((`{OHi2mw|EBgc{?T51$WxF>0Rhp>?Fb(CB2q)oQR zc>=%vS(Zf|%1i2IuWPgo()u{@>R0u7>+Ui8x5F3z<5CY6WxIe$1O!0@B)-AS9E`31_WKXk=+W=#%%RN}y~`(bE7 zg|lkq;-xCfPkLXu`ZqC7BnJ1ZZyO_Vrz!YqIHP%#%mYjve{4PNMWs=HdIfDc`>)`EOtUPU8n- zlJfM(W08|>&or3du$n$&tAIZbYn4m8kQ(1f4mRIj?k)Rx zJV0=s^0^#U)r_L96JDoM^c3t0_bHbYe(s4C;E}p|v2Hu_5vG~3efxY^kKZ^V^Qh^> z>SLcm_v~T3ZtuYEd+!Xhu=S5!3td@e>L0ad*YDq%{nBFc#CHrqT9rH4?uH-y+iv*d zQNn_?d!=R;KInL8)+nfqdrD`r!nRu}>^6e#ok47v4 z&!Yb7Ms7>;yg0RN-Q)+Mf}0M-R-B(1!r9}yw>aX;zV(N9%x;qDiOBL`P}=z3^w4hi zrPJJximvUKU%7IbW!4Of)p=c!9)%RvI#pYpl5wsG1Wf3hXkP(dPBN03KTsq*oZ zx6|fq6koqFZvW4|fJt-LoHWXm)Kpb>c+3|%i;3xtn67h1+cWF?+gz=e=%25!yK1^5 zoJ+m&Ueljyr$UYAZmS;$%@wgbvZ!ljv4_ZTXl5qf+R=o*-5iMyz{jVQsqDG zSQeCe);WISx+X&_hqLk1Z`?i5{NjTp-;Ar2L4K~w*H z$>jKIf4fPtXW_Pv3;E)!N*N<1v!2y(1d6a$aQ$6ic~%bj7o-F;>1 z%*RWoEzM7R`$&#q`Ya94S@Mc{zb~{0Pb@qCj78{6b(OaN#w4YEmlQ3EL~7Zp3i6(x za^~T_$Ms11)=N@O5z);br;NGop)AR&t#0zhZlcy&}KD;fuzN z>FUx-@%4O{%_bD>aQyuJ1^=o2$%_x~`!tbd?c;AU=WO4INhuRe{beZ56Df%~KJiG9i~XBv!uug?)`5x*1JqV~W2y@L4B{$oAQ)xJn= z*SWW$BqilwQc=V2kvjQqwhzucw}L61$kRbkg#>i|zeyugF_qM^Fp)L z9*3zl{ag1URpyO-X>P=~HkbcLd0!phd;G-P_`e~o5uypkVmHE0-2D0W_t^=d`-D{H zZ!_uE&pmDG)xypyc;cAwylW9!I(s#rtA2NOUz%CMu`=OzhT?6VFsXRg!h)%PZ#nd> zlCyA|?q;WTy1{w5Jo{^H(d{?h8DCp>DlO-0xjRGQWVa8t*2^?le2QnSO`aEeOQJTe zr})f-(>Zh99&U_nfA{djt*J@ZOAizs+1vO}#pP>5)^Gnm+Q)RCUr74%!y)dkzSGC4 zGu|ZyC5U|PNL1W>pf#lN@S1Nsf~-VV*1dWVxb1SxMni>#SO0L|I-4Eq71{S?^F6!j z##N_{Y!4rJx2LY;_(DU!V3sB8#8&TcVeB@kG7U&xvx9$Pi(+9Cor-^;ab`pt#D z2l>A9OYAo=aZ9lO%`I^*m*WGw^%s3P{u}R4Uo;b3tCZpQ>V67u>Ysq*e!Iqh51wB7 z{nF*Z+bX6RNqj$Sw};fp?09Eiqo;DQb+znv718qeisg^zW*-S034_PJrRxn72sNGMPy>{hK`L5I{nHdM)E}Rl|*|W6#xc*zdpX)V@nd%oF*mZUm%bClrY^Teu zv=!oiNv;+U|55l}W4FeyQ#$N#c$;UQSy~mu;9GQwEA^|(>_5K@oi6Nq<-zekV8X|U z)SXIS@1L5x-Jwi+Uh1wz`+4LXHf#~n2<=I+HaM|XZCkIyw%}JMzfAD+K3?T(v1O~r zjt}#$`+d3Em1w`vk5^>bQf_^=t~r$jm-L&KF()nLo)*);@pI}>qhuws0*QT+h zY@DsIr{~Fw1k-7vv2P9j+Wcjg3sPl%qNXl+bNNZejBhKLj#YoTEsG;6xa-Q#*&?&H-SMQxi^g2lpa#fRTA+Uhy`s_%Ve#?yH} zbA{4Iv!0LkXRiL1pSN}st|o}ybIb#cw7I4wi|I)w>7w|-vuRLJyFXaAdh%!gJTNJ;1E z%KNb-sej#~+-WKI?zyPse6g>e6u$Y@{JqgOI~V+)ID7F|=`CG}YuUFcpJBIRY&F@i zZQVO1{%ni9*tIo#6)V@A=a+x*DQr`Fl(3|1A*cFxosgMgJev1@**yJNt1Gqd-uA7b zOf0(@cP&}|aJ`mv(4utj!+WnD_Rq`Uvp!&4B4blzgMUxXEd$pZ$JU(^pTlP2Pxq zyEH}h?^aXJ+{003>{^-9M~@zy(zJQsS4pXjWLJQ^i>-SFz zo%5J`&R93_AKRj*0gS8;H?0@?{f{iLlb3Nm>wC<)e1n-Wn?wi4`l2fgy_J46mMpM&oE%QW4)!kD>Kh}Two5b75vWb10d3n{F`I}#T`f>SWRm#1L zOf#0$bH4?z{g3%Ri(#*9nY`JCmRVL=o)Xupw^}>Q;4oXw>-Jvw(#M1AN~T9>+vv}l z@g`ZGDfQITnavC5Z0Ecrq3~fnH`lJdh0iqpnM9vqc2`-)KJ(`;&quevdK?v+Zy;Z& z79q1e;a5}53AvMhO*tmEoW4Kz>m{vooR3tGT$$|<#JuWmXvv&if7`Z)9eVSH>FIi1 z?-^f<!>!hr^hSK-bvR2rT!>`M;iZ*RM0CQ4(7>=RI}`m~mj@BNx-xamptGJXrPw?&B8a z-u9@GQRdyGp7>RBazo06V;-LTdshCo3Lo?On1aZSA3u5Yy4#ouXWiISpO+Txw?fxq zk(R`r7yKW41NJf*#0jo#5nxTe_pSfC=7v(g`#S1@8_J$C_x$)6`g+xcOVi6&NZ8%I zt?}1wnaAHZRWmgmCgk+Id}MK%Cw|fI6I!hgXJq?Hx3X4k7>i+Hjc-7A9eRq|UzHh#A2_I)reS<|V?>@8Mmo^#)SWZmIk<7l3efCiLC!0vK zaO)YfWEK>EQr`5Z^Ue{@W*x_$5-(-6*n4Bn7Ba_Y%1OKMJg;?7v5Khaxj&J$nJ0bT z-GVS}LFpIX^W#@_&pNfNCT>%q=#@;>Lfh`lsxxZ+$rJO`6IJ4_?6Uu*>C7**=!IBv zj93@XjAfy~xmWevX ({ @@ -102,18 +101,6 @@ export const useAuthStore = defineStore('auth', { this.isLoading = false } }, - async addNewCredential() { - this.isLoading = true; - try { - const result = await registerWithToken() - await this.loadCredentials() - return result; - } catch (error) { - throw new Error(`Failed to add new credential: ${error.message}`) - } finally { - this.isLoading = false - } - }, async deleteCredential(credentialId) { const response = await fetch('/auth/delete-credential', { method: 'POST', @@ -138,24 +125,5 @@ export const useAuthStore = defineStore('auth', { this.currentCredentials = [] this.aaguidInfo = {} }, - async checkResetCookieAndRegister() { - const passphrase = getCookie('reset') - if (passphrase) { - // Abandon existing session - await fetch('/auth/logout', { method: 'POST', credentials: 'include' }) - - // Register additional token for the user - try { - const result = await registerUserFromCookie() - await this.setSessionCookie(result.session_token) - this.currentUser = { - user_id: result.user_id, - user_name: result.user_name, - } - } catch (error) { - console.error('Failed to register additional token:', error) - } - } - }, } }) diff --git a/frontend/src/utils/passkey.js b/frontend/src/utils/passkey.js index 0a74dea..0d98e3e 100644 --- a/frontend/src/utils/passkey.js +++ b/frontend/src/utils/passkey.js @@ -22,7 +22,7 @@ export async function registerCredential() { return register('/auth/ws/add_credential') } export async function registerWithToken(token) { - return register('/auth/ws/add_device_credential', {token}) + return register('/auth/ws/add_device_credential', { token }) } export async function authenticateUser() { diff --git a/frontend/vite.config.js b/frontend/vite.config.js index dad8e01..0749d1e 100644 --- a/frontend/vite.config.js +++ b/frontend/vite.config.js @@ -2,19 +2,18 @@ import { fileURLToPath, URL } from 'node:url' import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' -import vueDevTools from 'vite-plugin-vue-devtools' // https://vite.dev/config/ export default defineConfig({ plugins: [ vue(), - vueDevTools(), ], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) }, }, + base: '/auth/', server: { port: 3000, proxy: { @@ -26,7 +25,7 @@ export default defineConfig({ } }, build: { - outDir: '../static/dist', + outDir: '../passkeyauth/frontend-static', emptyOutDir: true, assetsDir: 'assets' } diff --git a/passkeyauth/main.py b/passkeyauth/main.py index 970d9ce..5e9c339 100644 --- a/passkeyauth/main.py +++ b/passkeyauth/main.py @@ -39,8 +39,7 @@ from .passkey import Passkey from .reset_handlers import create_device_addition_link, validate_device_addition_token from .session_manager import get_user_from_cookie_string -STATIC_DIR = Path(__file__).parent.parent / "static" - +STATIC_DIR = Path(__file__).parent / "frontend-static" passkey = Passkey( rp_id="localhost", @@ -213,7 +212,7 @@ async def websocket_authenticate(ws: WebSocket): await ws.accept() origin = ws.headers.get("origin") try: - options, challenge = passkey.auth_generate_options(origin=origin) + options, challenge = passkey.auth_generate_options() await ws.send_json(options) # Wait for the client to use his authenticator to authenticate credential = passkey.auth_parse(await ws.receive_json()) @@ -331,13 +330,23 @@ async def api_get_user_info_by_passphrase(token: str): # Serve static files -app.mount("/static", StaticFiles(directory=str(STATIC_DIR)), name="static") +app.mount( + "/auth/assets", StaticFiles(directory=STATIC_DIR / "assets"), name="static assets" +) + + +@app.get("/auth") +async def redirect_to_index(): + """Serve the main authentication app.""" + return FileResponse(STATIC_DIR / "index.html") # Catch-all route for SPA - serve index.html for all non-API routes @app.get("/{path:path}") -async def spa_handler(path: str): +async def spa_handler(request: Request, path: str): """Serve the Vue SPA for all routes (except API and static)""" + if "text/html" not in request.headers.get("accept", ""): + return Response(content="Not Found", status_code=404) return FileResponse(STATIC_DIR / "index.html")