From d7d0aa97399b1de4fc5b1acb6c6155138dd87f8c Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Fri, 22 Dec 2023 13:58:19 +0700 Subject: [PATCH 1/2] feat: implement document api call --- src/api/document.ts | 80 +++++++++++++++++++++++++++++++ src/interface/response/storage.ts | 20 ++++++++ 2 files changed, 100 insertions(+) create mode 100644 src/api/document.ts create mode 100644 src/interface/response/storage.ts diff --git a/src/api/document.ts b/src/api/document.ts new file mode 100644 index 0000000..a0fe108 --- /dev/null +++ b/src/api/document.ts @@ -0,0 +1,80 @@ +import type { StorageFile } from '@/interface/response/storage' + +const API_URI = import.meta.env.VITE_API_URI_CONFIG + +export async function getDocumentList(volume: string, id: string) { + const res = await fetch(`${API_URI}/document/${volume}/${id}`, { + headers: { + Accept: 'application/json', + }, + }) + + if (res && res.ok) { + return (await res.json()) as StorageFile + } + return false +} + +export async function getDocumentInfo( + volume: string, + id: string, + file: string +) { + const res = await fetch(`${API_URI}/document/${volume}/${id}/${file}`, { + headers: { + Accept: 'application/json', + }, + }) + + if (res && res.ok) { + return (await res.json()) as StorageFile & { downloadUrl: string } + } + return false +} + +const util = { + formatBytes: (bytes: number, decimals = 2) => { + if (!+bytes) return '0 Bytes' + + const k = 1024 + const dm = decimals < 0 ? 0 : decimals + const sizes = [ + 'Bytes', + 'KiB', + 'MiB', + 'GiB', + 'TiB', + 'PiB', + 'EiB', + 'ZiB', + 'YiB', + ] + const i = Math.floor(Math.log(bytes) / Math.log(k)) + + return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}` + }, + download: async (url: string, name?: string) => { + await fetch(url, { + method: 'GET', + headers: { + 'Content-Type': 'application/json', + }, + }) + .then((res) => res.blob()) + .then((blob) => { + const a = document.createElement('a') + a.href = window.URL.createObjectURL(blob) + a.download = name ?? 'download' + a.click() + a.remove() + }) + }, +} + +const doc = { + list: getDocumentList, + info: getDocumentInfo, + util, +} + +export default doc diff --git a/src/interface/response/storage.ts b/src/interface/response/storage.ts new file mode 100644 index 0000000..b8d0c24 --- /dev/null +++ b/src/interface/response/storage.ts @@ -0,0 +1,20 @@ +export interface StorageFile { + pathname: string + + fileName: string + fileSize: number + fileType: string + + title: string + description: string + category: string[] + keyword: string[] + + path: string + upload: boolean + + updatedAt: string | Date + updatedBy: string + createdAt: string | Date + createdBy: string +} From 0f3d69800c5fdc33a9cac6543f71ff59dc8667e5 Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Fri, 22 Dec 2023 14:16:44 +0700 Subject: [PATCH 2/2] feat: get info from api --- src/assets/cover.png | Bin 0 -> 22825 bytes src/router/index.ts | 18 +++--- src/views/HomeView.vue | 125 +++++++++++++++++++++++++++++++++-------- 3 files changed, 110 insertions(+), 33 deletions(-) create mode 100644 src/assets/cover.png diff --git a/src/assets/cover.png b/src/assets/cover.png new file mode 100644 index 0000000000000000000000000000000000000000..e4df1a377cf6df4fe463dd535a5bb00a764a926b GIT binary patch literal 22825 zcmdp-RaYF(7p@1F;3UB~!}4ud-cx8N>62=4A~gTvq!90G&824|3<15AL! z|JA(Fsw&IkVv}P7003OMZ_?@j01^xUKyJoFe_f#;ct`y@ zU^#!&bprt25dZH+0%YZozAhrUsmp!=)J{)% zGer#CNt|eJ$pX2tl0_pF2{34p2xyW1zEq#LX=NV%Rq{i9Y5u-jJw1W`4`(o^mwoZ)oxp#UHd)G= zB^@SgrS>n+fzMBYw%K>RJzZV@5YMv4h?cH1-b#NjJzt>!m78G0e}4z?%~hX^#sAS? z?mP_eD$S@U_#v*8{QMu7JC>AxG!j3F4sYQH=9eu+c?d;ouMBQ*vb6v6zHT#klDws?ZBi7=y)e8*-wVHMh+bGTj>ScZ{W>u|z(tmiW-yFD! zaHy(16zoMfof);tjCeNaL??;>9Q&ZXx+Pb}3L2Lk_rx4d03@!-82A%i#Y zr6rxq>%;t^i$J*VN(>T_z83gk_hRGeq&@kE=2Fd z_+TcYa+n&hDP~YWu6Py#M>8?CU>r$3Uh)*w2)vc_yQg^)$69Rng`aOsq(hAl02?oG z2z|@f?}Aw2v^D6-I|b(*j{jcXRxDg71`6c%@$WYCLcUsa(d_T#1c=={AD~MQd_mu~>UY()RDBnF?KMHTjqP_2?DGl~rRt|@%h-|jcuRo`L*6#8|5vvbZBaiXc=uypp{@bNq?=lCHaGg%Z{6xYj(e@ z_xy`;Z=j&{-taS#85j0dK^_QLr_dWaJdx3p>-R3Tk{bjE4xB%~JXk-aE?vprI-c<1 zGH!V#xgUhDyyeYFKYU)fL^VF<>v{V7O!GkMe8U2-F&dh;(>_G}MfmPMO|QL$tx3GB ztbhN;g-^FeUei+jSR+v#ICZC+p1@twrxTN&}}t;97TkL2mXl8pJT9MenR%-8#F#v)qXTyR#75 z)~}og(-#N4l*mK6h+`((ivW%}7l=0(^Ew=!ii6nSUsG^rF|w@Z*X?Qoj$2O|_aW;3%Pxkb|MC`g04ucfiSn>T)C`7s)$XzDyn zJx#xq(XgjFS}kNI?Uv%oQ2(p{(OvE$hj!*9kZiJWVq3V*1-SMD;mwiG$oOTv%5ibk zF}nhmcVcijGtgnc4Y~mSj26QxBY~HAtw@9w99@lSDVfz|PnbK4%?T1qqI*fBH4&F3 zhFtTkOzzS%HstAO}=a1D?Kw% z#oTAW*IFUagNu?aPjzGGbp@lSZqog}FcaK9{ontBxhiIeW20z|^CwX4@Qi5lT1cA1 zMqR#lYc{*P7g_srDt}C2*U}dIPnBSz)oH8B?mN~ZBdtlXg+^W0E~yYX`=>31%?>TF zLG5ZyYOg4FL%DU;(zwbns4QjC$J%yG&fl9989dNZz? zc}kgkgze)oNCnlUu~#|p7(H~`Ys8yF8`B-q8n*7dy-=EHyu77X7#e=eyLD;D-VIse zR}Jh{4_NTjE5w{%8+L2`H9E}c)vvDoMkG4xyYv7mKmgUwB2?B3(058SuzfQ^0WHhF?}84kxWaN~NNPcMju1af>Bq?;4UEtaBNkHC$HJm& zx@&JogWK7eGq55Ga1Ag=#1m*jZgbCM(D^n+%)V0t#=q1r{&upc63sit^13Ml&>E-X zE!rW$c04~o;iMSJkK)G;#@L-AxzcNk9+GSqfhjZvUl!0|T+NQR?-zF0REyMWjQBr^ z+E`2e-r1|z{~+}#@gCKf#n|TQ-|$xVA;+w^El=vN-k|K0ASMkP6j{7klMj*>~C8>;I|nqTf% z@;tC16;k=erHxezFK!*rO)~pUt?y5RJdV3}R|i}L7B^swlLt1KJUKZBx%6|l*7#Zdcx&V6KN%3LeeoKCY=Ck_Brr}vKL%_X^ zwgkI`a^`qp_X&CE{*SmU5b-lIbZPntDl^`~g%e;cd>P)?1xKSca<3uIjrN7nbm9n= zosu1{f7|C@KSy+CT#uRhdF&*&>FDi)67%!UL0K-sUm*p27O z&w@0ph!Y$6o(?4NC=OLhaD6h0YE13f2OjRv5GCKh1rdsNd1X7f({^SK(FMm|r^8Jw zjr*GCn(3~csOk5j6+q6KPKA&RhrlEQ?feN0yS1@p(XW@RdtO(3XRevG+6|LFIA^R# zdI%ON=x+h%&F3?u5qzX~cuZ01Oy$F0Dd(2M3W9}Y&+AS_Z|ZR018dHzkMJK+OLC*I@3z=LMK-7UBj^j>%cdr+3< zLabDpihM<#IwEqWe$X*zN^wy51leWj(U57_$+0}S6)pIIoc$fRTyNs~iMd^r@HQ-c z0Q*j$_2qCm8ea)nJ~cM$14=*v{@R7^^G2lUtOKz1V5f=F+%Z(vu3j+y12Z(9$`DovUY2DE>;GtT$? zu*Qyg^Wc>Nl~tM5hL+v&xvlOIvCzqj4F{_&rkoTdSaj2c0ziaF|$pcQ~;Jl3jq zaJYI8eM#UrVjFoI^9IZ#gMTX+{f8QU2y0Krq-DGT1F3Wc%})0J`*;>6_WsXx_XG9I zuxC#B=d-Q+=e+~d%)OHc!nuL6t=`~xu_-UVH?{0fIky%#!ZkZ?<0Iy2IzOslZ2LXK zhKSk;R}83z8FqiV=D zf<}u;qlP>SEpQARb%)~Pdn5w`N78jYDG+#xDsHA&Y}X~*jAA!Ar=cdvVq3tG?0l&9 zf-|yD;!xy8lOv04EoJx_F=?Y-v7_E*?O^Ixo07cywtcJD(@=~(>yNzq4wvD!Rd26g z4*P#5{z>z=l8se%iEVfPAOQhoJAag@Ru9Z-{T|nr;&K@4!%ZCKJ~AKdsK%JTC`!A? zJJjFUYBSOF6AOKy@EelijCIC?jeUcZr1M-bIDXRBm4}>jF#v|ZsrD=p?bRQdJmkEy zCF&$dg}aIFL`dE)NkLbw1dX!?8PENx`TH67hJP%DrATSoRg=v8v}ZMAhdGbdBw^+w zB~Sxl$SJBU|}DWil~R{SRlqNG*6+t)vJ>`(ClI#N(_o|aFpqZ4>X zi2w<5RM!g1gQR>vN3iF6q=q_Q zL;Hk|{=RRNgavVb+G>}Z$>AJc;0YwDH^glGD_KuXI+gh#pEGZ6ahf#d0oS;y>W`xh zR7$5o7XUJL{R{dwb@T5t8T3%dJ;MtH_f}~N!SwF#sb!|=eH>%J$#n^#%;uXK!pt+Q z2Hjm#eIxAtM@NS?#ArAo3W#nnK_=sCJH+1>H-P~YN<1|(n!oc}RD;)+he4)I|6cmW zZi(KdNGq3>^-FK z>`$PuEukt&D4p{jW!JY8U4$rGDR2h_9t5JJ}ing~9$6PahsatiHv3a~~FR9(~aOK#%vxvdlO`U(k!?Bq)! zj%B|=Qp1$|a+H`#}R7VH>!MjP3Qnxx7V7a z?HAhBfOjOhVGnR zJte~FS0NzIFqmYcFnY*XWG*^W zY^eW)EoB^781awDtZTgK(L8C)=I(G4%qRU7U+h#<3alrmR&55dLo-LIr&CXBria^c|6uT z)6}^2gri557vNG`W`^=#OEGUywq^+Lcb4GMoDV{&Mb;hBKk^V|QbcT~j+j4tDcXt?S>4 zX^K)=sB8wf{i{g0Qaxs8**STI5oIoZT6I+J z(Y@uVTie8Aqk%V8HX35o$*C5<(8N=JD7=EfDtj8;l5rt`@u|yQ;nI2bTr_arR&98% zG&(20#p>^YD#XoB4jf0iA0Y=|E@BhK2Kf{BbP+L-2-V^o7?ardcN z4TMoi0DiX{S(ZYYo20AQQoK}qWzJButo$!wwm?iApYJ_w>H&9MPi#gHF1+WoPhg-c zd1D9HDJicQf-PprcIW_!S-c)vT5R@{KkE1=w&!&VBw6szh-;s;kt2NSTFnty!bq3k zZyS0SzD}ymYu?G)0OTGyZ$}Nejbd3JP<}X)AB**4gB9xe9t2*J?Q*2$?ZyLKLU>_iu| z!=E^7CRWy7q0NN!A8Srv`n%4{mW2s13Q6>z5qW$?#fgxK?s7a@6;xRAZ>PN~FcJeT z;9SsnJIaKLj4{7+8c`#LCDw3poTjbps<&AbuTXOXI}qC@bk_W7;!nia>0Pg#<>Dko z!9uZm+d0**$ufC#1)@md7DO%G-X;cIMdRqHC$vpeb9K3C~1gt#B0?|pc`8f6GYP<6W^boDN8H6pCEPp|;~T-KW{=9aDGb_8r{ z@kH&s1Hq>z{_UJy)Huwko;+rqN3Px-&R|JG%tuqclfXa$2AGICgDre9<+6=-2||{o zSh?>TYd@6aeCQVA=9Wh|Yxie?cDr)K%kOD&b@f7BvV|ahcENsdZZFhCDR_eq-R{F; zb;Z6jy^MeQF}UY!{2Js^Wk~Jy%dK|z`zyjbysDU7FP^wJD5vWX@)fD*AA7GE)BO~E z+GD7Kc}ls`7|UdDWbbTCH*M*=SV{3m6DSE5v1EENfgD~Q_R7X!w$Rj#QNQ7V;$V7= z+5eqK`;gO^O0jdJo5KP3ALM$Qroy=yW}~w1p|t*nWj@yaFA8foCq@6eJ438e5gSEM z!SC?6;8otHng_2h9C=**UkFKFUfAqEYaZ$!&A3+nt z0#BPa{u-eatI0|;C`KY4BYC@#k@4njSIgzqaNpKN$*jX(F)6|ggFo(%y$*{#rH=po zhOH0nU@pq8&Iq3Rr+iG4*}nL|OB*iR8i&m(i@`ky5w>{#47H$DNF!`f+p1bEN$ z8%NDa;@}HPgR0}(au=mh6#2o+*o-6Hf#@^p&rZXxp11PaV{X#i5jYcXMm8E2WwbDiE&6g*FaX$i7=_H(%}c5TouYwDBEZk_Tu(EvtG@Yx>` z=-WBPyRTJ!a+zu6DckSpy{Cn7j|10*l}HqxDxV5p=$SRnINM;sK+Bk^e3kZSieBO= z_?`h+iuhtLpdwrJm3IFnTlk2(;4f18zWTh`mMa!DGP*NOt(q>u>`CJrd4;Fq+>H|$ zakU>^fjh8Gwk?esBsknq7JtiEg$h#?#oB(@BLJZj z?__jEg1xuEoz)CO?>c)JSs^fp{L@|M!^R~V{lnYji5swkq|YvbXaMWB8DSMN`O`??lBy(5ammYsW?_m3EYYH_Xy z9tSgmgA)3|#RlgyY%n`){3@#!OBJ%;LRiddx7>5C4?XlgcGPpc3xnM)Hmi_Sn|5k3 z-(Sxj%9?h_WyDRh-}h)OL_Ff!zGo#h+kTs`vIK6&n>sf0M-Tk_lYHEBk~VJ#g3&i87fgFw#vtG>XX}Vm#cE85e^9Td8-cW($Yi3OcFuH({qB zc6YkjossT4_uSLfx=9_QMBT;(V$q#iclPF_?__3q>#`Q4BRR5FIM>q;>0l&e5p|9t`ND`vZr~FlC=xUHP=Weu`C>o&lnIq(IG= zmR=PlC|?21ZjGRo?Va%`LvPKW38>Mwsn(wEuNsu<_${@kb`2wwq|t z_qRpmF$M!dWsB<&r3vrN*a2%~2Y(%7`1*2EKR>af^rLj6CYDnx4R!tw1p*}K>x&2o zV09A)ZqOpf=k{rN2<0Jdl!n}%nCnNd1~C!gV%nNeO0K!6UtzwBljau;s^a@XHY3c` z;~E^jjJcRv;4+#&Q7<-Y6UMzqwX-;IAElz-6Kx_+&rZF;ywNS3_2%~3FJ><*C;2-Q zhHgX#LM?Z3Q=%g^N3P(j{j0Jyv-U?fJZ34CAF;{U+yJxfYT|n*(!uJfxiR_d%5gV<$` z>g`Wm8-KC@?J#G~}7<@}NK>Q;`cysrrH1H}_ z;qGdnTQFkGsXL`_A@B6$*r-Sh=r5!=x7G3TJ?lJ0ttMaza#{#0HU3^w#wbZW)a+lD z|KQl#lGOe>|2+O<_gLr9!&O0#6u~=+cEk9^_P4Cid;QD5ycos2OlbY9YV0~amE;)) zb*JV)atlhnzd!A{U^T`=UC*mlZMGb8=&3*1JTO8IRl{F(w98_nqcyF8SIumfHB}w_Ent%?}4Y#cxIfOqFqV;4yk)rF^ zYco#VlKwTQZE;O4O>fBAnqxb?IL=E#RIx@Sx~5ueUl8qnLDErmfcn@rBj^ZQp)9c- zY-D4tlEPJlE7vu61-KiTiJ%%^$`{ghvfep`OK@rM2Iun6g74ZTHH z5wlu|z;0it=WFC;*YRB+TG{-E&Ms#11-g3JRbg+p@Z$m>BxR$P5@*tl0+mHponiUP zjB2OSVpO}75b||4^cTfvh7pvc>Q?JBa=)^i zs$&=G2_fqfHK*Ky#o5%2j40OCvJLm7HF*-T0M)_V&0$`@iSn$n2H}^{Gqb5kS-UO$ z?9KX(j#`mD{@4lc1XrP{ws%8poRl>u_J0Ya27nd``b|77W9J=3jvuU$>wqZPZR$%i zS@$!KXLXVCM#FgXvi{-+ezs@+v(>|dr05vT(mUzRnA3vfSXL6HUIthd7(l!24@bDj z`&Av*4h}g6)cujEA|HT<6ufV25dXn{+}OM674~@e7U{jD>ZXz#9vPPz6Y0UYiKm70D;Ey=Iov}zrQk&=p%ms#s{!m-E z(e^V9uGGqM;Q6vP)1)QQZ@>H(tzMmu>RJI#GHBrC-Jf_OXT0!A_fEq)>l$3$;}K0Lg_|Wrn)u5Is>XK?|RS29vKM#nz zpd)}hudEbauU_Y7;5yaFMSotLXx`|C%M{HC^1h+`D~ZNK`+?jV@R*q3O8nc|s=uGkp@s8~u11fM4Iqz!Us%8W-?n|AW zw%Dtz(VO%@{W?Ah?~{HkyKQxdFcm4&b2KL^bcTjQEq(R!jS>(L!VXl5AJoQdLXjU>#=}w0G_20qZp9yMlr?(`gTIZTZiIv+=y?ruojrK5M zc|&gQ0zz%pxNmK}_&4tSgo8Q=z-UsYOcQ=I+PpV-!O?A+^_#3h%U#_tkUz=IeRXV5 zkJd1^bQMu#!(po@nM0(Pt*h!NuR~?tyma(zof|7aoE z&ri&7s?Nt}t-xo_I;uHz^!27V)>flO-FW62v{k9i#uTLVGh(x;W*Y7jgt)_+4~OiD z;=h`FV8Xcy=AhAC&FN#p7MEVcGAa6q<-)WZna>hKZNxFd=TbC5WWG3QD0veLFSm6~ z@!877^s(abW`(^pUTbalRP_YrUODjeH#F$5CC^-PnWIRaL?`f#<--jN} zRu`;AfHMIy?-xRFa7gSscm+P5<^?xY*C{P?y^Wz}(KIeorVG9?X#Lr=-R@#21@z6L z{+8Nn?cz?6glS_xs)&^+c#%7i;!K2agw}u}c_VWSZ;NKpz1qO?x21D#{zZoh2|nN3 zBEggP4Umi?q-<9sjbFPjH;!vbEuz7%dgntZuob#CP;5y#ECO4rg6{$u4yDLusIY8mudkKg(`zr4*!0XV`EI|G%q zbm~(k+`d)R%b@a?e8(-Ge-S3C(J4c3jRY5DI(=`PNJW`g%M0n6g`n={wgx5v{RzPu+0QWIFTI>m?X?Z%#arZ&5ETod5!NZ$dI%{`ulf3b{UBwD#)j;* z{5Iib1eO$0?tI|LINoNHkw!5YOMm5{(aH&8lO7|b$Q4DM?IZ;uX(=uEDph<7R~|-5 zbH`@9x?D$pA;G~MtcQxGA?L5DGT8kFoS3?8oooX`(u^@NWV+3xDJ9z7fScaHT(XrJggWLDce6`mes1+sFliHEF>OK!jZ0r>_+g|W1%mkC0ORz;D-;WJSiWbw&#BjviqdxBN}nF7=gvP?n+Xl_5WZf$o!7TCz#mv&p(>c0rbU-7^bsj`_=p|p_E{WzuHR%C66r0fOA(DF78 zHZiQ9Z7gfA03_(qXY1&iegO2715{HF4-a3<-V>9vq>p=7nKJPSQ#+xWks#U8CuGrK z1SFW{SbE9t{N?9(f{Dixzta-iHKH&gso0FH!hwNDBPusG&ny!M_iu6EEkXX9@Q7+>TL||IAc6c<>2UpAeB8MX z*&yZ-n?#FgC~KfGUOFE7|Iy0}%T@qy3uI))n4TqVw&M372Gji~sW zIKYG>#9cm?V9*xOXM_q1D>LF7_{sEcggqhR75pPRP04W1}(OFuprsIQDU)^XR?mVN-eVUR4nJgt-#rkqa}x#Qwz0G&BV%aKAo(JduS)M*X`po)P%uinWX;PxchvU^6$({D^&F7C80Tlyjs4IE>^!joCCLkq zbj_0|ntqL?@BE21aNhpJ|1tGs#a}`e+Tq$I1okTo&aw`S@AsI3z8ZVKak6MtA#@wU zt);3{9ike%{-e1oO$(Z5nNb_RQgVcYv1T7KW+`PXtIl<+OGTW->jUrTnl!~PDNI=< z$wN2YqB4J%rgP!Ca+upFgiLg-t~&SnjuOQ+|CGHcx;c(R{C)P){zkMy82O(p588pL zxXK!1>;9(**w_kwq2FbexbOs78}lVP!d7)QH5++n}+}&1+M@ zN|K=5Tyllocf5wE1a@_4?vG`)-ZWfE&5o(8i^-jjv={5UD5&!3QVoCprV+3gZW24U zH=WJEiNb``|7a4CE*-jMJ(y z1LkK&SqJeR1Uatp*4|_5P*!)CJRJr;AF4yHnmg*nVt=Vg)mMgRL#e+^Sz?N4l{LY6 zaqGC1$Uqu@?ojJB4eOt?dmkw1jAS5jj$sCQoiYr|P&pSQwK!S4QHZ6MtPw1KZuR1R3Ygu0#=BB4vBxJUgLN=Z#2Sf#ptzxQ z3i^C6zE0ZB<#W}(4BJg&g$!Z}8&ejMjFm+PicQ}AG|drJA+zngmM<4_2o(uH z8z(Z4Ivt3GywF1V&~*wI=*^bN(n9Wg-A5)EPw)l~=8M)jw{$L|GP*pC`-<*70JNnH zHtGHa{}|&xo40|91ILASya*VVtXF$ceH!kHGqNff>XAlgrvTIBx%Z@F<%Wc1Jpe7k zvqP+7;D*`AAR8Un$<G0dC~nk zW4Vf4Azbjo>*p%32H4ld=emyGj}OcYzo|+Nn;QTg$Ul>{j`bj`S_qB$gG3 zYOAJ9mo`h`jJ*kX*vaGb!1^pe&iz!px2Z3N+Tats$>aKZhMrIy?MVsj%_(#Lh&)HM zhSE+8x=0cB-UAP&xO5A*x+}~SRIas@q4UU?Y5q2arC6%8meo85_(cc@>9)YZZjJ;a z$3l2CYf0bjFWC5%1b*n_$hqru2WDPPns9A-=AAgGijl}qU0;Dd&S{YKrOq@>y&Z5m zG((KM)BDvrNRkNnoPgUiSA?-vcI-c3zbS?r58eOm`O(y^xl$Z@kSDO>+=dzAj-&L5 zo*QH;8=9N1>2yafx6d!L`(Rk0iW4g9y!VFRc3Yjn9u8c}v6D6`ptL!1UsxVJ0Vj&JC>@>8 zFMD%3#Cady)TE{$GUKoUvyL*H zyh7N<2kfz0h_u@q+c9u7_;EZ?bKPC@#scS7!0a9ptd%=dlRdC{Uw_NYfhV*oS9)V^ zP-mK|fuC|M&aMwNx!pCi&@5T34&sn5ZudJsdaRkskD|jRuw}B=8vK=EmBYckp=R7<13sD+@b+Wd@l5sS8mo=X z7n)U;86IClpJel2n(1ZsWj*IT^A@!>dXG@QvQiHHpWVP=n+KW$4jP^)^Ozn7wz@|I zNOy&94HBLh4}_Vl-RbK-T7;D^T%_LZj>H%7YkkUaZ-fmZnOPEaK8x{ni<(8zn&9|g zmH4cR42_q?KQS*7oD5n1-ges)a{Wr>?0812nF@rJ-^t+}Baj!yi)MI4f4$#b zNVw@5HyN)s*`iBj4!yOzmaoOZBNS0B_CvKVkq9A+a{Eyxn0XAC`dZHp8fUq0v5COZ zAEZ8*tc0sesYGoS^peZh7Ez{Gn;fX0xXFj8zeMjI0asdP^B%?Y5q_htZO@_}f7Z2~ z#O^xq>|q2V8eJ)BQOhvgQ%UG55+f~ucs2ZAvl2qjyj{&Uv<`%`fgRpuD-#+`03m$8 zcHtaTI2?YuM;CuV9hrBFt}Lu1lO5{+rr<5AonYogqV}Dl0R$-CNR{JHxbqnILq|$zrF$g)q9!}Rf%Gcw zvS14f;S1Jy`^j{^)I=$lL-{qKj5kJ)BpVBP=5h~Ob`Tr&*8k)J_Htk*ZXBC{{wpS5 zUk-l65lZdg3#6@k!lI1Lb1&cmMa3G0yx&IBk&Vv*j8gRb#DDthN%Ex+Dd>q5UFFQI zA!-{3a5>Yo_$@uVVe-!#3K}JXt`bNNTDit(*qdI@)vIR=Q~p-N+H8-r+md&Cj0KA6 zn2YRKy5@IxY}iv={>AE&oT@|wBx(d&-AY56~gg&S~go;Sq85eBUh^NUUHk+%ct&&T@5P`=72NAf=q+qq5S z+%%+zBEmWh_h&WokQS>J$+SonS2M{}%qwrxzyfJh7_OVMw%LugWXi_1@K2qGiO~x? z>O+oGc$mh=gX8O{_U>Y>f6K~dSNYp?V*(iUA^yfsXEiW_G8^XkPl9e#z~1Xbq2_M`1?n` zDsU=`n7n@XA7ETH5V~s3yI#1#T;(#i=+9Tk{I^!}=q$Y5%;00G_+8qNL-w0ZA@!|? z$^YKCYWvrFIG~OYYq4+$z4$#xVE$Rfy!WehSet}a<0d})KXpEOWCirKbq}FQgi%+Br-{zAbA^1cuipKN_aHmVPF}Z5_wv5M%iRrTG@@`~UPW1o?~# zvzQWqkpNoW0Rgq_hK-xDttG~hishbCj6Ftfx|VUt*xdz zY;8E$V9qlfz4)EOv|L7&OEg(UlcT|hUI~UhuDasZc+F?UYp5wrZX=Gvveeqz?5ViU3nlxjWC=;}=xw(> z#n@IVy=eLbqW`VgnH6(1SHFQ2Du1ENgF|f#rJeZiS~rfFC(BZ34iueYws0O_y3g-Z z(evr8v(_#Urf>_c0VbMC>ue^s4RVv&vx`(&#EmPT`+W71x5`c`fFwc7EVr`qFM;ck zzCE=UivfsVzy{V|ER?tVAdAO4#5e!$64(#FzzcKviU~{M>znyXT% zCM+-Z!{|9~>9*8?BlNg0&_`rf7@Of!_bBh*wMBO2m4LPnA-6+08`Cq>2P{kfLXZEW z?n_NH@u2H6yY$mVm%77E0QxMZPMBhf4#C(J7Jr`oLs@_IE~K^UA-y&PbjKEE36^4X zwfB#*`g+v-Fss`CK_;w~KG7Ug=8#hiD*fEboinoK!Pq6xuNTh`5#Yuiqe3G3F-I%RbQ7TRJTlsWwPS~)!} z(c`JRa8^GuV`&xq3QIBmXJWGh$W61L{dqm;1-$kLw1mC|hVl4N2{F2;sW;+j5K(vA z($+E){|-Me8-2NYjO$7*&!Hyv{&vEZ@+oILA*-!N#FO3nL?1Gz@%=-><8`;3aP^iB zzj=&9;)l-@Hoy-VTTX`CyM~`zaY+Dejlxa+uhy02*c*F%`<35Zs49%6*=a?1KTeNR z6O?)^o!;|1Tk`clJH}1_-c_cy^vpG*^Py@0GRb{xX<%;_weG+oGkmC_eu^aR4s*iY zSZ@IJ(jjDcJl$4r0o&zMCQpy|^oQz+vrhp9P7h`iy-}J)t!dZ;*U!hoGqz^nfBlm`get^FU5}S^{GK}$Z0ex_=vHy{pK{lY?(KcS zwl=b`tSee5dSZHmWmW3Md`-5Hq=p%aZkXz)pL0(sj1Y25J2_ z`Cjbg0Z=i8U<~>Q~60Y`Ss%Tjkr& zPpd;@s=^_B&PmfI(geu05hl2A!z6GGG;%qv2-wKXMyI5Z-kp@7IBQx%eZY8L_VS)` zWP8@>rCm`8douF+$efkeLa^dF+0u-OxQ-No`KBZde21#*(H)_y%C|@No|Y?$YmD=Y z$rQ4iEO&-=Tp)qg)|6a_8eW@ky2~}tQdWEz^MMQIp!#e3$`sGrZ%|F2 zU2A~W=Lexc#|uOQRZm?ywqdRj>f#`sY3*d*2l`d_4l!64pHd62HJk2c0R zqi4E#(C;V3+s^ay{D432GCAG6trmq?Jgk?-_Yp!j%{S!JErkLUSoFAm>Ads#m=jI{ zzRP{DfSV$^P4%~#P+>p4#E3ie;<4gfAd*vA(AzW0b6s=kfn>b3_k!BjRQ=>kUz8cN zj7eeF|($09lU5JdGX?4SQ%B#Xe6IJ}UdxP?kLJX3%fK*T3z;krN-^pI3Yp!Urf|{vR3Y zrYzbtVcTeOCb>vovu?O3T_Tco> zN1q;IzT$h|fLk74yS?aplC_WM?+ctDf$znybNI%Ii_1{~g82O%uC-1(KKIHy;fERV zdic~Zlmxxpe&Iuk-x%1R{}Ns0uD5j|v7O_j_WJJ0&xfm#S`<3Hh)1d{bBFJCB%U9z!WxC@daI@a>m zOdX6)Tx0c@xugOTcQ(9?DsZCfL@mtTs4~Fy7W^&9Z!-e;sn+Nq<2~V4J3M--C13rB z7AmK>>-x)exb0UpkTn zv5r&?+MkbRp^&1q?#nIy7WfZa9O-@@)>yVXXgsg%}#VUDt-OxMo?do`5 zUbDddjHX`vl3&I89bcvvm>VHL4&ExKZyeN&^J>LBcdv#6A$pMAL6qf{cDKDUchaxT zjN1Rx&2_LP!G>M6(kw^yR_1PMj@)TZEK}=sYq=FiY7Sg!PN4El%bAs$lN^bA3vM!V zVp6$9B|}_@sGtZae0<-}`2NB3T+e+y=RW5?=PtmTe$;OHfv-82(v!B>lDe^*S8hW* z>Ql|FRe(##+!b^RjE<(T$+u(Bm?qLUC5}7-~s(4@smDHKfd>iP-i%-oR;Rtewnm z_ab7B>jyu;c2tyO@OV=BDsDUOm4iY4Mmwo;v_c1rWfttk=+>@+=c)FzfPO3PQ} zUD9x`wO)$(d0(36mX)^#B=%=E%O|u3`N&?yJ8|@Hr!^-I5Vo5+sE8{jwoRV$5xVA8 z_tq+|r(U60@k=dry$_X7A}4-S5(LXOjoI%;SgkZc^vuz^S;*U9OP~-e2Bv?trIlSy zaB;KDT|KksM2HWw;6ObB)SdWk&%}E~Xxbn`;ne!GS0=#<7B}Rkvt{8-5`(A@5^Ql$ zQ9It`FaBDyEKc0R#h!6M+24tx?4BanRGjR*H5GAhwOh1;jP*W@!xlhl=2oo6{&flf zk1?8N|5&QcFL;;A$d8Ones|32&VbdP$U86kODUs}J5=2@2zq#+8oT&=_T<#XcFh8Z z2N7nCBqOQPaLI2A_|Zk>eLRnXQCfwPweZQQp^-&egfv4j^!vl{HF6)bUR5;s5$gcY zVeC0$ynx-T|HcpZdrs}F`MBfbLZ%6nl)cl@l4y;BuFfm^4U%;MEz4zn>Tn9rDs!uo zT%~)NLv3_@63~Q)Jx?{Rbs-s7JQV-F6By%_u2wegsshv`snnpFHobXU{KbDDd-Hmpo@^bX|+) z{M^;>7lk|2=P@twO0VG?oe-~9PpZ>|M@vue}buSWU!V34D3S)+$FB?qLn!{iLd~r-?Ye8BkB*36G0c5h|!{|XK|~69bBI0`Pw}$ zN!;B(uUO1|oD1+I0e{AcZ)2s*FM<2(*b{!6?#xoWi}KBa#{oiIOrMm^L4 zACt4NFx+i`T$I(dLB30?q?>6dJ;^U-nWY?g1C36(RBf#DNj#hP|TL$2M z$lIflgsfolLQxVNocJ;-!elb>=k3zyIab}<7lHgXN;O9N433{x^MUSo_Bp(T{xTzc9Ve#E&`j>JtSiq4m-6vwc~5dMhil4@~$=cIOA2 zaAZ?OGr8WI1KuHAn^gi+KZrA8_XE$a@H*!P@ON)GijJxBfIgD4dS&3#ZDR^gk=RzA zbmxngqaycfuGK%@{1f$`qu}Gz^;G;hjRNav+#sJ)-Q00?tOfDW-D?ri(V*CX_n$(- zKZa;qV^_iNC(G&5`uDf4ZIDij#>7@#%D;|xT$`*Ga?N=6zO4s!EZx?pfwjG4G|h&O zLwlTU!#0jC#5clR$gTT}5mkyN`lepw7R}YjZOADntzf{PjjGdA(4%S20uK0rnWw%& zF7NTyKia-ufrZ94?)QJ`FY|MYIrKIP)l@4vvI#)em*@-ieYwCN1mqdZ4jA25v-@d)uYmKLtS*?0#;|y^zMxOu1QZgsNkeum(S zYI#_*)RxYkpy&M4INMI03qzkh>(Lvmpp(mAr2zZT06T)p!9nuq$$N3Ds&NEu>h`41 zjI-1@d5>m5cH`aiV_?AOX2z%$yFEnC-l2VZbj)W$&Ys76jhYF!N9@|sD)X?PKXCeg zAW(YDmi&(c`(PlZ+6os@LZkgQK8f?lDajo6%yW6ETBg*I^3xA(MwWzE>=?w$Q1#w` zAV;;?8bcK(^f_0drZ-hxev;LGX{LS}PXZ7OQPHoas6L%2hnp|a5R>4I_=v!ug$!x4 zn%1-GCzP-{8vxAuw276HYWycCmiD5BiZ}puxH{uLZVy?3ISz3 zYunHAa!374NofV+KhEC5rKj0e#fpM%c$UvBy{`c&-gYbOGkDw+Ni4+IMt5(PH*{5_ z?K{G6J=0j}o@>kuoB}lK2sQ$^6c;-P+WOdMf3@{Xmh*-;_1&s4-Tru>`OMhe#P#~x zfuL>ql#=)lxUxWzVeNzC1xyD>Z5ffV!ZKIoTK+sx)EXa)jE_*Diq0mDuB7l~|0K1s zxWlT#=wc+?O&;bc2V1`r&HMhAN})Q%tr;~vKi(F3M9#noSFG^?N`)SpG8gpkZ|sr( z6YwX?JrunbBeUO`>77M&%}?@&AfP$lT7#-Pz=4)US5*Z27NV&L2BB#r7Nv@-9@dJc={t7!}^Qpa{@4Jrw_$&X%Nl*Sf zl4_DT9y=4U*CiQKJm&Bu@x79?Ty>`7=|6X->|a$$8S+2ilDX}hpjE%1(C>bnTgPux z{BjzC-KU^-`rHwC%Fye}@lYj=cb(+rs0m)>UM9;5@ZW=!a8rD;yI7`vog(<(%C zWXDI%{=i=K#PI#Siw@?zI}PkG4JS_-kE~t>f#9(t9DQaL$5~p*_tk{^l^ma8ov?$^~v$n)!vb)DFG(# ze1l!8<;(~vcuU>n-*=51rNiAHWKHuPGensL_4D4o?$vpl7ndio|lmj@Rq8S22|8v$6=+j{dv%$@i);<{>I1> zdiOzhg+*a6!v}cJZY|2zQZ~EwvZl<^{kCZoabfoNE~S>d4!d^pjySDzl~){fHWvAC zaSXGhzw7$wN{9UrFd3LU=UQ@e#QtkR!uM^qZ>K?M4L$KUJZ|8`-KXWxHW*8dgd+I4 z_r)Yzk;?(TjBQiN^|`Y!T8&FG`HI=&=l7~zD`n}|nFF4|=L+Ju3hIqZif{eH6qM6& zE9A4EJ6dzUl-6;^?f|>%}Ong1XCcCv%@6WH+JtY_1PY3i0`i0wrRtd zbye~cKh1ZQ(%`6eVVBbPW~Y`LfH#L<*iJCkvd2XaLSLhHYE2ZA(00@_1M4ve=}IvP zY{#ud?nSo#)Vp$!SgfeIbfAySvkfqIidkV>Z5ooG$kVE#XUz4aYV4G+x1c&kz2VQ8 zh*2_^HBu)q0UhNk?=VW+QQpernf^6wIk9#Q<1}5)*xb6HWHfzzh3EXjvoMhJ}X#%ZU@hIL?J{sglh?J8H#b9+H3H@omOazwy}1T>D^ z=<=&g-O|kxb2~Jw`49pN8+PZ|C%_hV%VrOzc$OR7LE@{{E~Bdk!$BKnNTkS64GG}# z4pW49Lm|C+;XO$>yd(eOTm^9gsWnNO(IGpbq{YvQHcwOc&2|pjL{^zP@~JoapP$%p z@WF7Z{L6Zr%P$udJK>4}Byay%k<6#EKE#Q-;tmh6viv#yS99*y99_I~8ENjvMPAQG z!C)YMSJO28Kzi}f&!}2)Z-olJ`2|7uP4ugNh1?^Ys)PoLIi1KHDL-CN(6&{7%~bE+ zYUFpd@*>l!^*AdB?ev#old+gNi3+&8xwk*nVGDqnE&B_46P;HiHnGpkF3!v=m(?mV zi2jt*1;sT9OzjrWt=J+z)N&V$q}EwP3FG{REwEnX)ydi?%!bBR1AsT^#t zWw%|5Rcn(^2T#;-3IsP0S5?r>^+JAvo;(UU-vx4kJJeUawapi;5LvGtgp4^q-s?;t zFqqAOHWY@NC%f1@CzhB!o}afIJJllgGeatNd=>8gv@L$|u-FGo{^_$rKb#6@{zQM0 zavS;Gvfw(cJPpM{M4;#_+Vi z&k{!PLr67b+y+O7z4{nyf$4qeDjZqA10m^e;%rnd5`O*(&OIIC!8EBswXD*DdBxvDFlE}efTg&q_IOUmQc4t zqeaPM7i;xo8!SHfBXDQCA~8-yTmd*f;wSa)d70cZy|HQACzC8*3rlUsH4 zv3gY8?E4|9#rFBG+P=T5QWuHH{k^n3fg(8kCzD#aMf{*_4etTh1P|ID6|~-(sp|E3 zdRcdN!E$b3@r)G;WihX2)u((>up$27i=!K>)kE97`U2YDQn0B@+06SSmo2|o6OdMy z|6wLErb>hx5mPO=#Zm7J82kBb{eIa zF+(hcNQUrBpi)NePP0PpE+V{{!Wc$=1t{B5+9WnquZg#}c{tWh;rCq@WN5=k3th~( zMmJNr7N>O-4{}Z+UHvhx4o0r-uk`U=?C-0aB3v5_4$R`65xEs@88*ij$W z0L~v96{sUTm>ci9f&|u)fs+w6=};&Wy{qnZ^hJ9-jCLn%JVRp6%O^iy=_9hd_k)0s z*q|x4yra;;ry;oKHXuHlwJlt~K$M0u86@0rv2nn6yf~sfvCc;95Rn_F?~M-wR3Xv_Y;)C2=reP-#49CO`2}!eb@Rl3JrH`Q9`N1KU+i!|Rz0UobU*6No^rW!263&?ir18~S3NrUX`n%78Fi|=7) zeLU(K@J~Z)o6{;`cc+J#YRLNC$b-Uy6|F-**L_y~ks5Bwg+HD4_tq|AsHqUKBhi3U ziU=;OVY1rTn+W|x&`%`*0ArRaV)sK&u)jg_JIH$;QLk1H@g+0%qNmx13kRA1dn~d| z689p`^n}R0 zu`|I(D6Bs_gZRwFKpRx;-?^CamhO0IB?egJd-ih3uYfxSb4*X%$s>>A=m!qaJqMCBdq)~@Gz&Y*9oK;z zYyPF&D^1kRu`x4Q0Tgc>o#{$L_fREi?baUSP+uXPMBL zkU}yBz@CRN30m~(9N-VXAry;<(j?x0+yW2nuXb=f{OFyN3JM~q-bf((w9WaS_#hfT1_ z92lwv#;9&yf^j%<56Z&2i@CeCj_nK~F9P<&4+5c*yF1TsZ_n##0Z|ap_oT-Aq=RM% zJ2@vrnM6InAt9f9yN1?X2K{j~nB;y|8yg&S7l`Uc7=4YWu?i(v28Wx4@v^|YoE_ah zDg%Wi;})b9Hla9--yyL9$3z>_Sw4s4gXZZRtVSYvnB`m-16pLv_ube>ceg^OtyT$y z=k2O2%ECeO67IF$Dlys7}Xe$m={v3#jd#sIqWg zRC?yBk1KGej{PnAE^`j(M$575Lr6g&KmoXH;J{v76zXyT^iEOfE(umYMcAMXZ^tbW zTFJ-W$YPI&jK@b7__FC+F4IET@Wa)H`T9hKBzTzHDo8DU%OE2uGJgs@N9*HAu7%_i z*5j}$T+eU_8%~;ou3@*J{z6q={9IfTptOJgAMN6`q_Mfred&z5aw2Tzf3Nk>*z$he IJꄶz5c>n+a literal 0 HcmV?d00001 diff --git a/src/router/index.ts b/src/router/index.ts index 172b1ec..9d3da1b 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -2,23 +2,23 @@ import { createRouter, createWebHistory } from 'vue-router' /* import HomeView from '@/views/HomeView.vue' */ -const MainLayout = () => import("@/views/MainLayout.vue"); -const HomeView = () => import("@/views/HomeView.vue"); +const MainLayout = () => import('@/views/MainLayout.vue') +const HomeView = () => import('@/views/HomeView.vue') const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), routes: [ { - path: '/', + path: '/:id', name: 'home', component: MainLayout, - children:[ + children: [ { - path: "/", - name: "HomeView", + path: '/:id', + name: 'HomeView', component: HomeView, }, - ] + ], }, { path: '/:pathMatch(.*)*', @@ -31,8 +31,8 @@ const router = createRouter({ ], }) -router.beforeEach((to, from, next) => { - next(); +router.beforeEach((_to, _from, next) => { + next() }) export default router diff --git a/src/views/HomeView.vue b/src/views/HomeView.vue index 2da31b8..cc2df7e 100644 --- a/src/views/HomeView.vue +++ b/src/views/HomeView.vue @@ -1,51 +1,128 @@ - + -