From 17368e79d6b2bec174ba862409170f5e3a41b74e Mon Sep 17 00:00:00 2001 From: Kiet <31864905+Kitenite@users.noreply.github.com> Date: Tue, 16 Jul 2024 13:39:47 -0400 Subject: [PATCH] Add feedback popup (#63) * Add feedback popup --- app/bun.lockb | Bin 292616 -> 298256 bytes app/package.json | 5 +- app/src/AppBar.tsx | 2 + app/src/components/FeedbackDialog.tsx | 87 +++++++++++++++++++ app/src/components/ui/alert-dialog.tsx | 115 +++++++++++++++++++++++++ demos/next/components/ui/button.tsx | 4 +- 6 files changed, 209 insertions(+), 4 deletions(-) create mode 100644 app/src/components/FeedbackDialog.tsx create mode 100644 app/src/components/ui/alert-dialog.tsx diff --git a/app/bun.lockb b/app/bun.lockb index 554b146b7fd39a3d03588fb8d4fa4e1a3691e580..b5c494129c1a0cd2537211f7040dfd8b2215ac4c 100755 GIT binary patch delta 56675 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�QR} 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 s_c=og& zV4Ziods$;10BjmkOpIbGS7N!oDp@1hS_aj4Zb}of)k0IgRhBkYBCV#Cj}EZ%IA=CF zz^U$|SMm4P2@yVTlkRufCn>^~Cwj#w5DgIH?!GB@4y*s|00`SAbHz(q2Bl)GCY=91 zK#r}V^Wj)_RR;4c_$z@G?<-T0;$W`6jwr;grLq7Jg^DwB z$uks8+rtQK4h;6YKloWdJ8#L|Qu|6N?RRo1n_=q6SX86(TsjO4!EiN|hN6VXYXoXD z7S5HYCc%6)1&syLh6OZbEZ(}~S99yGwW#K6j=V+ zI(fZVy3?vx@~pdpzB3Y!Mfjt26vZ(4J~cKj*HPYhcp!g0U1isu>#0tJxKjP=2ELBU zstn)Rf8I(f^jDnG#)9wa<`e#{hpD?7XPu1^2VDnu=~`z*XbaZS=I0+B0BH=!)~V^e z670Rv(m;5ydZ6c>PxT{NWB`NpW_*nHTICitM7PNUW1WylP^Dq#=Cd6TY(5gpz!6n5eal`Vg$hrszE;Ydi{C?0uxtSn**#rA`D*-FB8~QsqRv z>VLnH_eRQlgxoMm{9%n;2eCLj2naL8&FQ~I>}uWYoPhqh)Oyn625^>|e^D^N`Hggu z8Ki6@J;lBHB}OvyFIS~|yNue}3p8PU2PY4`_Z!JS8b;Qwu;P5#*t9!ZG*>s;%(cyU zzbp3-QO za5(!pRX`On=!sneMtw+p;LO$V2je@iWh*~Bz}Zf!}MqzDjOuoOT--Zn%&4JM1)I))P54gyH!YW zlW~1oNMmrX{;iOUMYor)c#!eQHi@*<;jF!l4lzuNZL}4b@@Zj(6}wh4f(^D)(|AOR z*>*lZpX<`Q3r*XAZY5G#3bI#QC@mfqSPMNR+m$>H-ITC%E->Ub;*V_uh}2TR*z@t? zINm61%9ev0c935J_-@-l5eZ_ty2UO&`?u9!-#cZO=P#07QHF5(bQc*UBA_5?r$ijQ zk?kUw?WTQr4w^3$aZraJ7AC97|4-JcKLs)zEg~;m|2~zKlBrhy_-R|~{8KkpElt{e7}Lo&ur z-N&iFNNktlF~9WyU?9s_u4Dqj{A~L4okRaclTS)x-P!u3*?vmJSbm1ejJKNE!E+26 zwV#vw(b=nB=j%R8C2|sECH6(H$Z15o}NkQ1SALg@%snwvN?MCfQmxPq~(P4_21|i4L+-c$f z^|K?qb`DIkUF~+c@SThZ8@)Y371JQmfum%TDyGZLY+Qaw6~_z7$En?PKu4XRpy}{d zO-HrV6(_i<9M29ouqOAXHXtq^6n%Gs?y})#C&@TX3f4c;&|VKt6U{9`Pjc1Ejqdh* z7ur2REBhN_Sehf)NP>ZMDh)?5WPs^uYB~cUgLy4%229lM3_YHK)UZ2Ce(B=4e{}rq zSvtJY$CFyj)Ou1rb1t29Goy@|NTp%tC=VDy$T`|K6N==Yqw<+xS$K}(X5snXb2M)j zo*SO0L$koT;dyT7N!@nUe-^jI6H4J&9?Rpg=gDg}a;Fp+Y@)oV`p>?HJwjZ7!72=D zFWOKGXCo&61q`+%usGD9+sjvJM}Z-KjPVu_7Lyql{ur~g?TFV}lhwLFWf&`Odr`v- z(cC}$5;t(j^#>)jQXd4!oDimyWQfa~=Rt+~n`&zz*?_RO5a0G~cC2e-jgz?3@uU%+ ze07P^=OAJ?;-1Cl_|BewR}(7xV5~e17hR%)3}BoBh7mAwn>2`TICsu&U@#k?&fmO5 z_krR56EK*D4JIw@Vg6(GTVTk$Nbdl_DkZ&<*-Hnv6`yyKsbeYCxR@L=K|QsY9}bx9 z|4GZ_+$3ywDRUGNY=8 z-N@Z=!_EX4a)oIK2%AXT{e1V|3C${4e~f)m0Rx&|A>TP*B^$-PJusQs$_?}iPL+SY z6`1m8K)OvWkEO?R5N9oRkuVq05mv&5*fkaCf%f% zEW|bD?5r%zhwKkcGR5q!t&6`raeI)=4e`9?7F7V#{p2mq!)3|Xlq28dO&9d{;t3m5 zf-8%3pTog4&BQJqW7%#UI-+-Ok>?kPR({@`?ZCu;0p&j?^|q9gGQ3TPF+gp0o8K3i zo+v9We)k9@nKzwW_1fH~SD@i;Z@_()@I{|@J2%**Ruz~F8oT0BqqHnvQt2-SHMYu4 zDx;uzpgyY%-xTBi+z!ir-6!;&jjtud@E+7;Gi~ zu#Aq+6Ky~FH!xUwNT9lo{S?PQ&HgX^5yr48VncW4YS z_yKbE-4Wbgg^u*A{8*ydq_*VCw)ZG*5qt(UD(8#IpG>{Sjr73*bxU?oehwfk)O{XC z^|C!u#6HiH6zqsk4Wu*e{G2^Lx~OuXUi|3(h(;X@Of(%MDnI)DF&ZZ1O3{P8cUp9A}Me@tz1a4*m8G$;#+ zjlZ70kO4bCp-lkREnX|Kb-tczJw3`1y^In=BBPQbW5Rq!mb59i`@ZcDySXr+);NZpnP$Yhmvyo-^soQmOCr>LUtAxmu@Yr$fY11!)s)&|| zEA0Bg+&*Dy%vk&IgpcsgjtzF_lTa*qK4o{5PK(A3aD++s+00*0Z^4+0b|vT z@%7T^?ii8~5?AGx?Cy&;)iiQtveevFvJfT5M&ac_z^TGe(a5uZXQB1Iz&L z4}_IOaH}RlLPSVZRBTfCq{$&s<3bV=?Zd*uA`K$t?1EX@%P3>FMk&=)ZQ%`3~oRZR0h54L`8-= UhDOHVpE|A(n-|#`8Qcl~AA;BC@c;k- delta 53526 zcmeFad7O>qAOC+AhdK7$$QB~o3}c&NIAf0x%D&ZLFk==BqGCoROG&!ZMOh0mvL#z6 zl(HmIL{hW}rP4~Je$Ur^--r41@!5Xg@8kFTr&F(aUGLZRzOL(it@nNIIcGfaOz~;o z6ni4N<_l|geXxDl<1-Wc7Opg{?)H&?7A?{{U-$I-hvR?yJhkU91;>xe|T|! z3hndRhV!F@$CF*z@9~JsdOe;3a4Ozq;1h6RcyMNBQs!Wfrw_LLMrLG=LGyeQ@OTPg z`_c2m>51tX$wNGzv(y*Fo{*T9s#ZFXUlcnYEG0;{3niJ2Mq zrh7a~C~a5l=8sGsIzbhEo6qAZiC>f|f~&v^xQxrmnNh=1GX{B{LsY$m(8aeDbn3f8 zVAxsNYY`OTpwWqglQKP?>a-@uR9F?i3M>Cxr$BbNN2lDLr6r9XmQ{)OTkKdEM-U|9E1^X3qnyX;N_{wA@Ft+O5$mG$9 zV~8s4KK0q-sfegvjv1bmu1fQ|b}?9^6iqoQ%C@_X|JS7)|Fq=vm5%j|;cHN0B|4ndycyg4-!+>WejUJsbIw~t^ zd|b3sU?dq@czdulJ!R^8JPcX(;Ngj>Bk1X2Y>gw^I%;TY;;?W4;c5Nr`pBWdg8082 zSB%qOl|S3oiM44v zXMlS;<+8F9NNA_Mje`P-^*L*@MSJJuuK_Ed;;CxRG!j-1 zM|HPa1*>O8^mdl$*S(zh4#8Ton_#)kg*oN2$G{vs+1+8yTw_-+0drhsU+U=$JU%kdz_9|g*Ej>V9m_cyB+;JEc+O& z{5M>EovS|smqvfYwKL!{*nM2R9jtQo?R;kLW)d3Ng0{dC80b{+87#+lU=8Feuo_L%|~0f4zP#7~%LoM}9%_C&HZV*%`3b<`B35oIET&V>AcA(B$+XQDaAX9!qoA zu*)N(QZup!b4HLzPD>u+nM_hNGMgCJxRRts$sBoS9M&`i*unt{vpo zr2@BR&B=5I{C-$_x;WKn0)8CkEUC&=p>g{hTj3rU>olYLl0?FJ7hV1@61*mGGq#rW zJhyx}tT^nO(JQ(6jVIVky6R*b4U+W?Buap+V#ox!)O=A<3id`@ziA z#7tuKY{Fj^-v?_?<)Z=BlQiD?zF_sNZ4;f9Iecv92x{?!<33GV!&N%liMPRIr`ar6 z^ZO;bcFd2krlaJ8&gdP&*80hDx!gleJx{=DHVA8>4$Bxh#KYF}Jb<79szSwDxuvH# zc0p`yp$$|dJ@OH!p+B+J@Nro4{syc7+D>=;mcY`7a@po)WO(suPJX|sPJKIPI1|~} z_G9Z!ebkwm$j6+>yHG$qh``p2{zAS2_y(5#09*jRg$mS@-uP=o3Sn!H|BNmE99I5* zSS#lxSR=3i)=GFBE~2f+4gBb&VM*gBBB-I{%*4^76DN2^VymY^Va;?CSR+ysR$vui ztpq=;9$%q{^83u~>D#aZ*#Rs6vgHK23R{6a4QDBm$t1+1U{%}#*0Ej#R>YY}Y2%Vc z>jpnFBXwMo=Xau3VBflY3RZ=OV2#9XSO3#EQ#p99vj*z9`HNt!tzPq(e-+#~&*@pE zXPk;&ffY#kXPq7ucbSpOOyX37(-KE|Jj?L2hZ0s#C&C)RAsK_mj80BZno2|JKpK1# z+!K~x$kq4LzCEO`c$@~GTIARd!wNvR8;!{8zS!yUkc=@&>Fnfo*y`z6{4}%=KIdG? zld&}=$=F&e`C#QQdfu^T!s>ANE_H3zQfD#Iqru5EG&ngbIeln`=K&nmle5d55lF>W zKx39WdTAx*8Y;YXr8fa_kpiZR2^c z^l7j-xM8>52HD|;x2|?72(SLt*mgsDZ_BIeS|^~kYpqv`RV+TA_Eq13 zb&lJs>#PgKDrRk6@AUf#H_Y&5D=~9I`e14ahdq#qDnRkn4GuFj+~<2dEnjx3Z44{_ zC-N1=NZxF)@H}ldI{C4%x_O3tb-UUo+s?`^OF{)U!;0^!Ycqc8h39<=Xz%QGE6zky zL)Eu9!38 zY_r(yP8FTpHPal{l!V_RH^kOrox8(nT1`a_8RVIcEx-P+S`U_}Uc3r!TDxb6K$|FX zr}avSidk28IvsikxdigoT~0v0-A;!VVwXdI0@jFy-u-Imv#R&(6^ zy>B@6k4_rHRo&xZqM`<83`v?pK6^ha`@kNjp})RU8JwCtR$D45HHp(8Bi;L!Q&AsS zGqeU)_xyXE?vKvk*u{T2wq{^1tbnJ$>ezj-W@=DIMru-Gx+g7h%;4ckS))D6s7T}2 z1y;e4qcetaRAvs#(2DVRHXLwHq4BUPihbLus64EZS%^+gvIib?=IK$_FV8zp0K>2~ zpT%GW-UL=)Z%dxz>kc~=zW}Qv z0dzI=uikvMb36R=o1B&fa9sGFQ(!{k*!xmxxXk<3g;LeCCLVQ0cr+}xp|I-h?DCt( zoYQtItT>jz>IbK|%?}=T^pUWZO7|1)@eP;8uHkZf@@rt1fz{6NllEzxmHj7)iU=2B zRS;hB6B1MH{oDb)68h{@&P+7KE`=R_SWq2X12`-x-9A6w`p~(KRH32j=ragZ13C#- z$GV+%W-1Z8xW_77=BE13o^i%B6G^ds;@Y*bRkY`)&YTU+Od6MzJ|^?SPdD@}vnjA4 zyTW4Mh8i~y_eGT5J3Dx4%DPn>o~Sb38?m8H#amY#$@*|Z#4U^SdmCCSqZ7P~tn<+c z!H4pAJUyu~uN6~2*7s!|E2VBI&?w;XG_+PXj1MN0x`XUI)~LF%-py9cdI`SY0#-`B zkhi(DvR;CBs&$^9+pL-~3BI55S}8H1V6}Xlh?EIfqw2*5hhnv{8(3d2)|+G1te@bG zw36#51Rsgu2A>?SwZ36&;A^aA*6QeZZw;$vgM?rjYpNl+KD8WNgVoCRjfsg3euvd8 zT+&;|s@X6h*q=4r6^%$~=S6E}!-T+hXd$~F(Trk<+`M)_Qmy1h3G!)_5IjeY>dIrq zOpl9TKGclQBG_OimXozUI@Y_zTG==u_&u7!@>`=C#RluK0OgU-ib;!$z)(*E)}@WM z(bUeNb6&4?J~koPoK+#sr?K|lYbD1ecn@1E;}U`ajueF#u;`w*wNO)aX2tE z%-C$Kc&z-^rP$cu+gRPP?3oYV%ymJ-613J&h>O5zhhfivZ$}xeM}}`@iv(|P>wJrZ z;4_hqcZ9tz29|ZKd|E@n=dm;$dF|;t?^*%ds&*4&M;_~=X>4FBR!@6noFb(zN7yx# zE9Y3O2I?D%b!|C#U$T;0Cj`GiQ?wD9#9)o`*A@WQ5Z7|rUyP*|?MV%OgQa$Y_6XFe z;7pLmUacdonr#z;YtY)`;kRPi#s&*kycP*H-|kxZ>}9tet3IC2-uUdAr7fzVg<}+Y-EMt@Hf!SvA`y1cq0(mrP82@Fh~J&#S1s ze(QYugkZxe9#6ERHH!@naxM0I-PphrSZ%b}e4kdaE_4Wa8(1}OPY6C()#K?z5r(-* zZ15{AEr;Uv%8I|m<7sfsO2^W$u{c`92H(PR1GV?j%8m(vX4O2Nf!694@xF`ItXiEy z-da|2r-a~;>duHU`i#SKSoNsJK83tTteTw@yoIgg&I!S}w>pj6Jqo-h%eojFA1KV# zptY6OIzEs^s<9Q-EIzoAl+H4b71Jp;_%l{Q*zz{AYIaEorq}d%nxhr4E)nidtcFtAp*Y4b;4r$I~(F>HDshmC`j7tizG6{t*n*JQT}0#OQ)|lU1`@LeN*oIf7Xh zc=W>x;m@|>4B2O$$KzMDYhx5_809QUyW@d{Sc9z9jpKuwF)aYEH7YJP*cwaq(6P3$ zfyr2HtcxAu14l`*mc8n7fy=1`*!_o}n!bI(KEtVn+Rt>RW>%|8;l4@$Db!!$uqBZXJ zH7KwbtFIkkbJk1?J5`n;Pq$N3Nj0@o-;nBUr`k1Q=~=7WHOoU{h%Nn0s=uAOlLO9i z+e*r*u5c{T+PSxrvPXl{xMtr3?^{-K--O_ws6?U7b6adMhCyWlbk=fq53p+XV=JR+ z8F2JOv)ZvVB+hoN*~D4x#k3K9)0$X0cZYoYnphX^4h64}cf0L*DKjn)bK1^Y-84Qh zom89^#cte1N=}gUYbiiw*3?>Tg9gi4Rm{gVwWFH;ND5L8><%Eb8X5!R6AO zN?2ycuzF%S8|`u{k0-^p)^Cf8V08_=mUS9Sb6`6LYSF>2*6M-HB1pLBAOU`ab-lLw zZJmK|>K=!6J?}CWjk)diql$a3S=+Fjouf_{xXl?`rciPhe*xHjBPvj4Tb zZCIKir(BQ&#|=Lemj~k>YxRg`5hMm(^NGdbdS51DU5g@c5bJh(G}mxgsa}?CR}KuO zojFx2tb-S^7y`G=@35TcbhN~Eb|Pm(5bJy_mZ@rCT^*C9?d>aihgB;h6c|biAuBBu zA6!c6+OP$F#kyU$I>FUloC=)oeTk)@xIj&wt$SD(#)N{4dW0`pTrhlBdsr!B zLxE~6>3&w)*!Vy;sXlh<#5Jv9ACKoQTboL1fSvlBRI;7w+}Gntv{P$HIk^S;@kGPc zMw3diQy-AJ+fFrRVL7Qeq?{7pU(>n`2uF}Zs+URxz3d&19t}y;Sl?{}tqT)Ef%dF& zt|$}Y1CNnvXQz&kYHz1*N(|=?B;{z!NjZLBU(2n>nssu=lj>xbedC%|a4^$vYkf&M zxywnpwUBbkHXIUeZ9FMQ+eykPQ7}m*R^Q(&4~g6D>gJPj+&(AexYZjP*2a^vyXMm+qt7!bBbX(J6AVHV>y+vF9P{SYQ}VX)|r%a4i|RgL$2k#dwCs813@@1#YJFn&F6BY_M4A#&JCv* zk7DVB;)aRq=DAVUg=wK+xzWzR5hCpm!IF#fwqPMveaGS`d>2bY$*nn_B{Q8tu&efU z%Cu5ugn}y(8`=e!@4zX!*tcY*#yBUhvkvr(nvF(h6yq+emRMZNxGnOH^>}*NGuMlh z>T(v_qga|>XOut2y2G|~IMo^F@o=Y-U05^c8$8acH8T|4g{V`B5o4+g-0R$+=CN;H zyJOu+9;7UK5&c_yMk2T3AzDSY743EcBi zF*(QJLM&$*V*17gKg4Q89(T)w6=atT-!;JC=GAdE$y*)Vh=s7lEM-L!Y8~zA@3d@MI_uImxa! zHa<9>l%|q*liZBuOtMm}knhYSD+lV5ZC$WJ!Gy`-?yz-zGbdXqPlW%VINoK|nquosTZ|R_`ZWBFUFp0Z`DV_v9TTkiCElPN5==B zC#6B*#Aaojf5f^lH{|O%-KsS&6j(Q1 zB+&R#w^(34sXJ9cpz>pOkGVzb=cMTS98&G=@~23-p~l1pZk-wSO(ew~0Rb!`)yZx_ zhvrvUnpT2t78|JdxTY}eg=P^-*m6wkxI7r0?6Ngxg`>N4cWm%stlmydSRY|&ol_H5 z^b_I1V9EkxuvkV6_=}{j$M-W&$j;=-4w&Vgu<|&FmI)NI4Usss97ZIq+3$ zyC+#g_V#^*l!l(APU*L?c<99lMOYeFdhP3PSvgBW!Iu!6Inqq#eabmx>}zcBb}S8y zbL>5h<#va)b554McACzyhnmy=K~e+l4l9_`SiS9F;+}TS63%aKH&UOrYAp@{aaz#LhRdAjoJ;Odtj2cDG2OU} z$I`G7>wvfj3{_%3Obymq?sU<)>`%dJPM+O;-|ppB%DRxx_kxwPE);C~f)k%}ZOneb zs92+?uu&`!?q4f?XlxV$3JLxc*fXcFoXH(^dt5}06D4gw7?%fw=ctY11Di-S)YBi|g&eEa%RH%A6<)D=gZ&nk zE@iaLL&JP8+7}`2J9?37W9zyNdlpNB!vl)$tQITn-)n0Ao)C>8Bt+r}y3Iz|Y z4u`v*GosjtN_5w$-2$=O-YOQnY$lV4J-Gjwx`cSh763$F& zS)avH&$$s|7gb!RKC1AYr0O}9wupZP@Sk7fHrgLnt{!8JyV%XB7v6RR9Si&1etom3i*vYZMkFhk4 z_AO7K$_DjPi+nmM9tfxdR;=kF8*$Wx5!7*5x5_@|EbKE>U zY2;JavNvhqmTg)QTy}!Jm9pzozaGQVLbl%&2hL+T$M|jAoz3H1eP&@Pe6}j5?;$K_ zx$CaA)DCB|op%IXT+7+;&+V{s_Jn+&?65BE2?a~P>Xc)Oxd^9VX(2evZw;2#FZadV zh@O4by6|QwSn4&8CkByQ_%2*gvABt*3zJB7vYj>k`?2l_7Y$b3=?s_iHYX8F)5a_? zwzGCxIeSCFJ&0=CS1nh#9*_ONoQ`nMcRQAPU|;`y5ALxpyd4UDfT&3#T3pJ!=@j6ZBa8fYEHzuo z-W88xX-7Kmbar4h!K!3k`XDaitz0z+lCbD9yI}{Zb~y1Al4uI9CIO()*}@3m46 zg@Wr4b-HkA;SBg1%Na?HYrTEW9I+TFJ_$?X%8KWAXc$_AjzL#aUSYy94o{SU+ z=O8Rq?p&!BVukx3=iP5zI2;NdIN_Lps0N-;o;%b z2qs~v8K=A3u@sQ=mf&~SlXBG8_=r8FJUSgmN`vV9T5FATEN3Zx4+~@)bC0 z<$M?lK6W(s1~`JHnz{B;bJ1f~%E^$g*D)&x`skQ-0c!ezRqLaWZ{i15%15E#p%0uP zAx!RO7ag}QkoW0vtJbNIZ^Q{J1$yO#m2)Z-jQG&w=}gu6ba@N(z#45o?mt5+&Q47~ z8U9s4g^%p_y8LS7ep0;i)9D#o5%X*e`e);(KL(3)S$-; znt{^bPT&LGfnK>e4|Z?h2mOFv{|l?$0YLR6>T}zwXb8|NH!Gkd;I-1umZ_}VVfw-A zM(nj_o-M=gKKGohl%?2ST>m()mGf18`(SJ8N@7(Va_!u#^QRrULTT^j z|2M2AJG%a2mGA7@aF#vjceuiT!*cE7`ir&J`od~x0IUY?hBY=rVXdtZZhpF(uP+Vh zHPXw%E<|FY>yYg_Jm~VnE#0Nc9)R@N2$a9RFWUHuPOJ=TxHP+{9}SoIXc7MFxoUs=~K z5A(k#tD=7L6040$up+AtE31ZnxLg8`$5urxVEMO%i^F%p8p(TL^*9yQODw-MSW`6~ zmj4VVKP#O0|B0D@MN)={mN*gpf6KK0f2BdKiDh)43jCJa5wRAhzJRHhSjj{D(3HFj zt9?81uUL+U-Gc9_G_U`KRph8!POSQlx%`38-T(T^s9s_@oPZ^rbnTC1@cMVGa;IEB zu~z+Q*A^@PjBAUP{LDxHmGQYNoP}k7sa%&ev|qXU*RKA*u+D>@+;X{D0bVZXW?U9q zY2TH}(k2Ozr)6pZs^w5hWn5O6rCnPr|MIRaR(=K77OQ+ESey42mutHDx!AcV zMUkPrdai?56~?%BZq}*L23@ z*WXmoODw+&uzLEH%U`?sV(AxQmH*b|OECX?e&mPBUv}&)&u=7D;CDyx{OPg}FOr^s z%Mq{^XHi%c7l-u{%deEnkuH~m`QKB?wX3*xb(d?wx*_n?CZQpVfptwwfHhQYU|pIz z!dh&-VE*^? z-TbMrUN>R|Hl6$m@N!tLIsDLF#4E7!w@Y+c?c0JfUUf5avjTa|)y4AL1xw!zYv}j5 z`C{pBx^`}s{+6rf;w*cJ-yuU49d`MBSOt!{1#+__{izcLa?;Ju&AMy;!qxvXyZiqv z1vJ+eVKw}XTfx6$P1TRCUv5@lKfAhE_5A{C&VP4xvGl81B-C@|s-RC^e_=WL(ZzY( ze6f037*^n=VC{|yuffd00u)Y74Pz94*o(yX-O^4O+ELa7f zfb|kff7-SG8&-Ma`io`H4LI#9VV`u*!y2j=T!$4duY~myt6+|6i)F8JZLxaxlB;iU z^&7Fuy&UN14A~~Pz-G6=jaWmt)y=;V`>krfR?>d<>~d?{4Xe}}uD!=CEtdY4Yl{{3 zJFa~rR=r2a*E}6{{c^MB<7B{o?rA4gr5ASni@JWr^0G{nQQQ?u zxDKUYz5W#|FW!a9Hv^@?oj?KRekhD-+ZyNIK;zsG=+!Trx-Nt>{+U(r0HBHzfhrmT z^vcZ&C<*-iaM+$(OG5!}^iUYt)-~OKKOFx1;jrhlRs^rp_D_d(bbaC4xmkD6|L&o% ziYQI!(r`_zaI|&{c!m2hr_ua3hR83{rAIRz0J8<@0I=q zE5E9n|M$b;zaI|UPl>fC{(d-oqld!UM$&cHdZUNJ%9sB4!(sPXtsW9LPT9FG3q z9u9BbTEhE#b2Fu7s3}3wwjpU2wNn~>5Z_> zoRKiRJ3`w&2s_N|J_wOL5Pp*InrYb=VXuT`eGzt>&t|_aOWv;Sp1`-D>)XYMAw+nkJY9)iQ~q+GeY$ zjwzN6MVVw#wAm%9YsyZB>X}iZ7_(1Q-&B4OYG5Xa8k)nRMyBRNP-8P$6l+e1;!MoL zP!ls<)YP02#hWHmpk`*asJS^W3YnIVKnZ4^sD-&CYH2!5g<6>Ow4Vj&veb@!w5ShbTGjgn#(B&X)_QynynJfNvQBBLT8iwD8k%F5DrS{ zV#+>-(0(ey#K#c2nSBy2ONg3@aF>}d6JfAaew-f> zGZ4Oz(8t8gLf9f<&Mbs}=8S~lk0P{v0%3re{RBefV+cPgt#XVO3gtSVG`#c zoRhFeLYgV|G{W532xFf{$S}Jkw0{zznn4(4Mj3?55{^p9G?nKftgsNK%taV$4om3$ z6hfnU2=|)F^AIBDAbcTVf{A$sVT*)0&mi1y&PW*kG(y{F5hj}1&mu$`gr6j2nU?br z_DWbbA7Qe&Bw_qqgdPhJ9x_W7Ak>(L5Ln2>Oz|4uolMMeDFaZvQ_aeSxJ-Knq0l0P z>88&jgt%uBc1U>C1Q#QmlaRI;VW!zCVeWi{3QG`XndBu1?H3>%lrY6(5SEyEFCdJ69^tBl=S_zd2sM@>tX_ez%v_OhT*82r z2rrnGD-otGLnxGku+sF&L5N$9utUNs6I_LGPD0u$gws5J;1&4e`wy>k#wN!V;^u0@Dgg)nn1!d7!a!WIe5 z*CA{()7K#ke-YuLgdL{IdW6W;2n*IDyk^cz*ejv)O9;Enyq6HhuR*vf;dRqt1450p z2&*?B>@im)9G5WQWrVlP%9jzQtwSiZ5n-R{vk@U~J;DwN2TX7i!Z`_Pn-C6~trF(G zgiv8K!XcBq8KM0Kgo6?eo3dLFE=!oW1>rrjPr{0q5u&yt95oZRBJ|#fa7w}lrsgXM z5t|TZzJhSVoRF|ZLi241C(ZP22*WocT$FIiG}(?2xdmatc7#vNc?o+Zbl!n*#?0G+ zFn%k-RSBP&4zD8Acm-kgs|a71D-w=N81NdxmuBT_2-CJ96xxY!-t^gt5Vsv+hlH<8 za2LWk32D0!E}E?p=I%hKup8l9le`2m-f?k$8J5(=2$+X&|*q`i$$$ZVA`cQ2_52N8;x&0LXiT*82(2)CM*M-iqSMksU)p{D6`j4O04vtCr&1V14A+!3r@U#*{rl$@*rLsDarBnH5LLj{1=7MrOi?2)&OXoRSc0YMw-h z_yA$%NrWcmgoG^;nty~4Z>E2QF#I^eMG4JKlT!$hC%BVac*=V_cOK^@>^*@;=a2Dd zY36;5F#bb?s}fq94xb>@IEk?O6NI+riiG152AoE?&8$3)Fzq9RLT3;{U-R-8tN z`U0VcneYWd?=uLeB=j;h&+;SUQ-qmk5&D=D61GTa{v|>`GyO}1;h!N~lrX?FIfoGW zIl_W-2zQ(F681{yd>$du%sY=T{tJYw5(b+N7Z7TkMOb|SA<0~ka9qNGuMmcrm0uxD z`x2qh*9gg`&({cX=MZ*C7-51J5za|SyNHlxwn~_L9-+cF2pJ~%8-(^35DrQhWy*ew za9P5{ZxJ%hJ_#$nLWuefVXT?(9YXJ~5l%_C*VMd(5OEP<<|Tv)=7fYT5}JRHaKD-U zJ;LyB5H3oXXqxy{F&47do3a7y%h(eG*c;3~Y_r0P5S15UqnVHw zp|=m=l!VQuW2wTkw30ovIk3iUFrbi$Q&x3GL!Vc3Uh!7b-SP(>b&77C8 zS3>9f2)oR@{0QUoB3za5y6I2=p+-K0)ddjtm@5*FOBhfP;VrYWAi}f=ghGW7_L)9~ z5aNOeJ0u)1!NLgVB%~EaIB2#?n42G=LJ@>RCb+Wizmt zZ@C0--Oa_y`ljXyTxrbb2IW`D_S;#(7ZG?YmgiE^?y|Lyit;z?m&7@L%3sf{Qpf0V z9^Z*T3vR~m7q1)(r8xhVo9A%CKg5|`nL0bSpuBvG_%~-a^F3gfF!ieYB1%8i!~WE3 zwyGYTk($asGUfTE$L2e#`-Xab%?55J=Ch9b;+oXddzf3(Yd$-?{&f&P8Rdpj$!A8E z^yM*+Mff)I`i2=GENVeCEtnQm{*Q7v8*@1favjB?5{r7V0LH^B- zq1b+OK0KLi@hxk9jiSGa@MK+UWOPAQ5e)x(Gjle#jP+T*z{(sq*oW+33x)r=l6yDs zF-}EcIX%l0@~!aQv~Ba6kgv42Y`AX4kdine3G&#Qp~MerD1RdV#*pNtyElK_!Z#_8 z@8>toz_z|81HZlR_Bla*rNjSJ1OJ#tbV{c4%<;`*o9}4nTkb2{^HZk}xif9eB(`-H zMBqbQipU(id2R>a;pzFiy8jSsjd#pcg~pg>7|2pE%WP zq3ffE>G}eoUW?4AW4;nui^-C!e(w?`o!4`&yPliI*b3kObTxfgxS^{pb<64l+xmd4 zUdvrSeHSeJ>Dm`uO}_%mRztj2I9itd;p+$ViB(=J-3s-c7yIMP@G7^kzH+JW{pt0h ztLZy4sz|TZuBLHlZ7Y1o$<_1~ls2xm*42t(cXdAmZvRt@8bp0xGm3|!!0R2I5dON*`)K@c?~nuT@Q1(KsW00dbTz)`X_u{w#$jc@^i@waTn}7w zq-$UIjNyY<_Sg9pslM~6hU32CQXtpRC$`$K_#>}uMEdEKBtakWNhh0qlIX*B-V zUuW?gaRdC+_2Y75f8i%fd;T+5@yB00&$(Lod!+iX z`%+iacS==OA9~M6LTAW1S8GmM-;Gl6=Y5=7=$_u1FkX2+++6>puedi$r-@DveYHoQ z;V%I6m4jp818^Li0Q&mEUa$}B2M560Kwoos6J!CMIQl-D{%Pxb!FVtM+z0LlI(#OA zNkE4VhfG!b7}K$((e982j2N%Fs;A=DLBVW0!A4vWP z^h>)_@WWVkS;6vzaPv=JJEIM4(%1@WL6XbwW4 zD!2u_PlZQ;KKWDvlmxf4o;!m(Ko>BS{QY1Wm=1JpdK5ecW`f7T17IT1nV9t;Ke#FN zaR1~<1<9a0&=+V}b@ms#t5dNqXu5v=M$di+I%@S%)?N@$oMoK1*Ug(EXI|pB90|V7$3>%6DtlLnI#tQ@|r&DwqbQgAL4#{_e$D za1NXYI_JC~ABX@!puY~%1n64(0XPm$fDggzK!17VCQuHP1f@V}P)1)K)}L3Y4s=oe zjYa!A(8c&NxB~RWGkpu}b)YY~%>&PXXTf~104xNHz+$ijJO`$O8Q@Xy7j{3$22TPDJO!Qx2FwKuz(TMHECx%! zbKrTf6f6VF!B)_U;J<)V!486b4Lk+rfVn`oKeNDWkOrn`j}*lDM|%4c_!^X@M_-b8 z4qN~i!METua0=`MFEdgbfxZ=}kB)2sx))jv)`1+LFFHOCmV(*90#AWCK;On(Lp`+v z%zrHmeO&7na5Jb3Du9Zh66gUkz({Zp=ngsp-DhBL-An0j6x~ll zC+U>#v-C#`u7F>`+hCpMXatFM+in0%zL^y`DBbuZO=k+*wx1(#7x) z&^w8@z?)zXcmp&Adb^{yLAuvl3UnJa8t6FJ-;??rOaoJa{#26wY|=wOZy5EblqLg> z@+d$t&v@)uP!O=F@3apn1sLv?MnWT^?fNzN2xw%#0J;w7x}b}zF0$`|Bj642I@kp^ zZf<$b_kq99YouQVIzKjn?LY_LD?oP)UBDKg&7w4G$i8>fpzQ>^f%{a!ro-5WzyUM+ zYhQ_$dq}PaZ-RHgL7=-jLH4^qm$8q*XW&zC5_|&GjpHWfqOSzMjXMkl<)vI#{m98Y zWoK4a=I20%R=BFuq*XvyN4L-!c~>nI_EN4>PtCtpaGorkiaH&yRYLlVIrELL48IUm zXaQAp#!1S_NfuIF%CXCtQ5St>YAOZ|k)~PMxnm4Bp>DfzI@Ozz-}>@&{%d3!B}M0B z0eHb_(wBjvwL1jcU53v9ZHKeqXYh?3YnING?}6q|2i&(H9Nl-W9=5}CtjLxA5$IeB z=Vy`**A>=sm$^#*?;zKh7q{b6Y`=kD!4*5MvXa7eT*;MohNJQyND4#yMDG=KhzQrm zI`KPSxhCP^*BJk+feMegcFu8deQ?~VZK8($T}`sRZ&N6*9Xn`Knf^h}i(M0<6ERr+Yo!^Xc9%(wzU&SFTVol0|_|>%u1K zdtcSOI>4j&h3q9?<1GDQwM;M?=!nvve9Hi7AO$3Y;b0i3O-qB|yTL%x+S0leAAsE# z^Z~sZ_pp~0}8mm{;u6X63P(nq_TV9M4%oF z1xa8q7y{IL^;$hm1?ts8Y@K!L#0ZcM_SG9wJphj!rb3a@Iz7L)Shy7JwmMTyX;YO6HHK2gP zS|pC8K~bQ^H-$W1y0kNdBcwkApMo>sH24I(2Q;dOfJWmTa1gu=4uE@gC$gW!J}@0< z1fBr%zydG}%mGGQm=GYqZFXwOr zPa?`$wh%6;#+?G(%8-^{I8ZgNV3aTY86Zs!D?p|9g15kPK;_;9d%znS`fwxa>FZz@ z*a;NCYv5I&091MIUTGwDfF)o%*akL&SHKHkHP{L?Dhg@~(8z59FM|yr>m`1y2kXFE zum-#cmV$*K9Pwh(3Stq^u&UALfqJtFNLvPSz)G+JD2U}ic`7H!U#v2uvpnI7)iXt` zN^jI~IA0a~wTv_kv&t*2^`p_eQCjONoHtARUqdFxaC91WMZDS7RheuJq5On!L-JL= zMn<}VkfyYBHKz5V(b^3(8fr&A;*zv~t)S*GT*+V4T0prg4L79u*L*8a=@Qge929fw z4Ua@Pm~hX-c2;gd=_BA>pv7_kXffu>H2@dKc>bP{|BPJrV;bvskQ z_{&gbJ>87((5MIMaqd9=ldUou5&6Y|yTMN&!^dbca{EC|(%+zc4Zh6chwhHg!aCQ# zf-ivcKo^yBunM&V<4Nm*Y%)j!cLP0qZ2`U`?>C?avO3rGkhTj@qj~_VAUeUSQ}tCR z{Uusf2NG(yCHyUdA`6jLP>S>-ww^qxB1Noxy*K#-z6#W+dKtbSklz*TUw|4_gWtoK zfa+Jh3RZqUYW{z~_!(RVid^_Lm;F2GKS2!|y%ppKeozfm1U^sz=+T(;ydaN2Jpow$ zdSq4>TlqmCjs)+}zWt|Pi((W3g+U=u5QGa9CtU`p;?kfLC<#gcHKMd05R?P*X+^L% z!Fr@3T@Mh1%HU>D3CK@DRLJ5-m0ZFtq^pAJ;5I6EqWt$kDnJcqGg!kNo+b@-Ewm;e z4h$l&Shzl@3!*_*ZGJ=n^{@_z0SclXXb2jBMxYCo>F%g8>8`MXmXF@{#)IZS3sGx9 z!Dx{sU@Hi%8Tqvbw}CdG9cZh+YubuLYgY{O?bsc`9j@LTz7uo>-N0R-C(wFOgS}u4 zyGBjxX8_zE^acIEK#====V0tXV7=!59ug{`3N$Q8 zxWN?CsbB=qP^Y^*3f@MUzrL3qiQYx$fB4O`hG+rE1gdmCJP%9;*+6$mS}$Y317H%E z2<`=k@gED11IoJ}=(M~Ko&d&!8ThE)xuhQjb3oQ({CEmjU#H z6AM$pbTAvt0*`|`X;Age1ZqI(C&1010(cS_@HEhLJgfPC#x)d~Dp~{<0yVN2T&)nGlsITfxgfZku7XzX@yvTfi&ed5WzBPlIJ( z!yK=_T&r+HyYa|IeI3?F>;?P5J`fM2y$#+02f>!_`N8YMCpHfBKj$yQ?Rs|6D{CJp zbhblPpLbwPH2*QSCMJ)+toLQp5h|zX%HX&Dhm#MjJ$o+wy5DJ&g+n79%bbGQdB^mg z-MP-u)2>53=d9#TAp8D_Cl3uP`Bu*LoT_{tjJjh9hf9C<(W&nr9NDVIDchmGV(4VN z0b&?r%84eKMge~V@6#q(w9YIL?KFp#chG!=m3*A43RBgQ%Fmq47!tXasv1Q%R#j)o z;k{+{XD7N}Z1eNoGs$TX-7uQ?yng#ODEp(;5A+*3_Jj34XLJ~#66C11HA$xM)tN^s zQ>K1&1C^<4mgM!<_C9D1=JkJ2{uF*Jo$Q!|rPUsIsMt+*-L~IZzuB43AKB@c^Hx<=FBL}$O8U`-seo`0(jhFh83WuwFRAl?s3o8fByPJ;?H(X z4b-pd<`903Qi)4V<>_6&`@y_9d+hGn9e-y`yN9MmhGn3OTy3i=!PuK3L(1^xAz^sNPnWxebF=#Zz@Z~t)LCq6Gj zpn3DOHkAtz^DGlz2){Cncme8N_{g@_E3Ot^?(W3=mZ`_ZIQj4i3YYan5!!%e~Cj)VP!_UOcsX)gtdxni1E)yGS&Tg+&$zeBNRxgr40H z)mr=Bj-KyQ+ZsaJQnEaQ%s@1M!9-p^4ibi&>={JLsc;B>~;V+rjcFt!e zck-96$S{3^lQwW)@BEYPepxh<3L827Ofuf$6dP$~skB|9thbNpg4k#Uhm}el?w#{) zhaVSx!Lrf8%rwuXJ`M04b$35kcK_=osgDy*6Y{=Up!%FHmcK!}?jdlxy!pB~Q)? zmAeEpxw^kpRXa&1s^8+w+nt{+AMwa8a#h`S#S6%0GD`pfqb}TP*vIa#<%5`|AnzIRhZg*3!!uOqLcMsGWX5TJ1 zvr73Jlv{^`#;#Mbj*qYSGlRuoAF*_Kn>kgA5cl9v!wxZMC+)gxm!=QJOxx1_290jJ z)md=EJfXuEYMjtKI!)B;PmUJn&UM+XDt2%C-u0Xmvzi*pJ>WXDpZ;v2PhW5LksO?f zn_uC;TgOnRL#&vgP8UooV?w{pklw z=3lP+8CHR6a4uearhEEL)bOg=p;E3`#$1v$*Ays66#Hs9yZZ4ZFZH-O@lX$YbnT=4 zut_M#-1lK`>L3_2>Xzm$3KWU69hzvluP`%J!wa-0hgFq(KlkgDKW}ksz~N=H3kSX| zds0-ztgQe=o7oFlpf$>K!E>Z?6S?lFh9a%ooh;J)qMC?}uHP^^)-%J*E>9VI2+Edw z20z`_>@WRmsr*GQ9lh?i(R_km`6D<~#^IOwMb133Wxwuw+=_l^U^*@4D($woi=(AD zjx9^BO1^1r&--!IaZJqbnM6hD4w4)5KT?kIF1gm9e-peNb%Suf?F*KBIFvE#D*C&c zS1bGH`}#LA{j0EGMl>-GJV}K1xyt=P75`1;9%$k$k>cRk<)d9&g%J^$+#cZf4e0^=JFOZD#7-;*V^6wVBi5f{phl+&+D;u{&&^ zqeYtA56800WxZaY-{T!0B!@#v7oIB3O}#9CqkR;EQO@)BB^o$+wbR%T>NIHQ$$mokl~wX&blXYb78ee?9#p~rn* zo%D3TehQ1PjWZ5CJew~@ZM zhQIzbJsgAErtdH1gW>W;%!n5LyZ@=$oo!6fn)GK&b$^|IRd@Nf+d3EaFK3kN@4dTv zsq4|Y#s6sp&bBoJsWv{fqQD{fYFo zXm9dH-C#D|a%ORqzumu@6StCoUJBtxokspSKfENu;}rG}2f3kx$*FsTpxh;PZJfjP z{B?P|llz~CrTo9%0DoDg*V??%z}ymE!(}=;m-2E&@4Ec(OV3ZcJ`ex<9EbO6c&=~l zXeNc2^VS_rVdmTy?&Lt))J}czwwK$SyS2bxwQ0X4^0=!byvCj7SN1PU{rXZE)6sm> zfW_2;#l&4z_Ug`KrhnJyE#4G|4}~W>nvd1=vmH&dhBug>-#eOD8DmV65HkTXwi@V;g zRDMQh=O(M-ypK+g-&X28CnG17&MK?38QAz*?ZI&EbK_5Qtt~C?hec{64A^AUEu>X1A zhL^IlNh5v#X<^=IxB~X3wU=G~op(8J(f(g{>AydR|JT6XfEthL?%ZtUJ@N7UM~9Re zcYQhipI`d^)k*iS1|xj%{O5~KczXVF9neY|+1me%?@$j@u#Nv_-={rHbQ|uE>i0D3 z+W702Pw46Nc3a8P#Rtrq_h23`H$l7s=TUi2^G6$QT*l#{GpgG&-+a?z@!>zNd(0uH zA~|`-92t`O&JVupIU9PKPHoxTN8GY;-`(G(aM7uUuX|kTX|nNXT%s4h-k^@l1LsX@ zIDh}2*F74OquS55tQPT8>o#v(&*|RFyrZ&X@Zb$y_LGy#_n9>AryAEi=DKCOfBf2# zsXtD>>3YtlUZ(v2)7#Yt?)y4#*SXF) z*SXGho`)ACy8sBBdv%@T#~A;Ra8YM~sGC6kfY6!-aR~j~te)TMecBozl5i2glIZK# zKiOL3dTfx1F>+HERuxJQrW}S_00=8UjCHT>EqCs)%K-5)Mp!Yy=8r#I#-7p6FpQiJ zraC6sEkJYxM86T4A!RMwL8~hD2f^gv4eD(|IE@oV_1=y@O2Z5g4j5sQ%`6{M*uUlM z+lCR>5Q<{BUVvcK^LHoBsyFRXV}O{55hiny*UTw%J$hyvMxsOLC~)N!g0GW#FE`^= zxAF`SnIUwKQ7;h?)2tr1YG-fpzyNU)BTTY8o9F+U=kef(VdPQ>xxWqE9|i7)H|k!Q zwK`L8fOsNsD}Pv5*wNbip<$$5D5U{cekGL8%Cv)f@59C$&l(`Kp;Q3~>7{V;9ScbN za9+UB+1PD~LP%|<5KAh4Sjr)SeV3$#Wol^eAN-Asz#eva0g06#xaV0(U z(TtWJbSAHnI4$!-wCotc&plaNx*s3CVb^`&v0@nTTqCG>q$W)E1O%(6*`8k4>f7Zd zMSx(1I-LIkBdFgfkm3bnN*IOO?(_)Cz&j~Ag3gYD77`=qHlFSB1)r!#gBnK98fynC z{ZT>3+2|XHAS+NgEErib*J5M^0Q)%)V(fS!OF9)n*#MM$X3`;F z%zWHTo;y^S-P!G3I-O~c-(J27poJ@tfh-_5`0KeqfyFiss|-0 zZ8n+uVdGAT;-!SXyWA^oFQ1mEOi($OnMYF$AS8V>9rpu9c?@0ggD(5ep*Cai%vZ#Q z+{b9lyMH!^pNig{%cno}MAy%}Gi-kcx&Hhz0qAQOn)tM9qQJ+FpD@HPsd9|Qt+|zk zHWtsL_WmHXX&yQGYt9?*p-29xcJQT>t75q?jM?|)!n>Dk2S5a7A;8;r{ zL~)ch9-oKe$bTFTl4r-l2JOS?|HeXZT^5mymoEZI+C?;LoF-E~hb*uaR^MLwE;yjR zo>fp$ZDF-gRiGCsU;fr4blRKo7D^P!8jEb)vsp~qg54*@= zmod=%^9)=YH6enB5VdhCO@|8Qx=CoD5##yG66r`HnNL7EUXzIAmsmR9n5p+mrqBrp zhwjNdtEE>w`g{{L)D}_-M|uY%){y`1@OOg-jIkJ`jIa`@(d=X@2CkHvOs6M6<+;i9 z7|#RBW4JrKKXjvh&R5q?0b>BS$`hc)Do}y7@x6M>uZKy-AK?viPhm|L@W`r^4-2RH zF1u>4Q<%9pzm680WJ(HRw_buo-JKDwUh#=96cAXq$6}TFCBHkxZEa%?`*Fmd%gNwor6+?b;gAlDm^K5V~WPI z1^(%lLXnJ^%1kBBiQ34?Ai@;kxoAY@kxI|De40#N0f}GTU^iNl#gffoAPIjHa?qhr zjdcr{SF5EI^DbDtfFL+%?Ur)Ky;r7B-(va$FE}by%><0F4d zN?%I-=7N*TQJuscq3gQ+L-Q;Sj_)N1A)Kp_f*_eq(R7mkmak;BoPwu-k;;&3&$0!g zxw=|{qQrG=(=<^fICCPFOjR~3=-yO=swgxVkpxSW5NvoU^-84@Jj=sUc@BF|SLN^I z_$X7ERX?^#y_-st-vfqNRP7uZghh6}Aj zM`B&1Td5?6g2$s&s-B0y=@*LWsybB+%0{(nW=)+`)0Q-Pa)2wy=6b%3y?pilrl3PF z&rw*oqL6IV84yg9uj*;=R5-^VJw@SJ9s>*(1uec#d-M3ts=GoJzzEV)@GM}2>FFqg zY~J$4DrsXti$xKwZ+vg(+6`D3&J!gD40 zh2au*z>5Y(Yu-aCIBzBOo57=s2m#tA*GEa)Dn8(II1=|$z!k429)b&eK=_h9L`qo2 zm)B^}{RR2nt615d<&zjuV_oVhs-F*`>jBA@^{1)DEr!nD$*u}S=J{|H6(cHYP1Cp! zXvQ!6;Pz&jU9U3;#Or2E0?TNVMvqxU<=m8b$tP(eCab#GvqN$-QbYN|AGx}OeG9Xb zn^y=|yN&dMS2smP_4xlarp94OHFzOa<36MAEC2L8-zQz0v9xU8 zQT3=YQA2{ddF&MMH<(MRF;!i4HB3H3Po?wxq?C2xq?N5n5TcW_xHJlNHBzf0JVO=m zlVczNpQ1%ewk?U+-*oIzF0mUnP|5o+N*kCQGs5>OW`{7TBN3P zqm~dTRngRFrp~hI_s=R^Qc=Wi!Kgl`OT(1h7@M5gn5L>JL?IDjS=_8+Ln^v>|4;i~ z#AFOhsG5knq-s*5zE@}XPsdd}o zG$x9|x*B(Tt$ijJ==58kTqs-X?k5C-@imh*YExsB-W!CqwDn4GKWohkr+GF+1@2j}vA_^@T(puJtnzehV55*;@rdoy#XA^|Fn z%_RptK9}W^J9`#)$TOq`|6r*A%8!uzJq>#XGs_M*-`D4&87067ypSomLeJD|ndz5%Q?O>|`nt;ur%!E7&} zuHb2U#>tJUUR~6?cqurS%o3r`CHd4V5mKpo28HxQ)SUvh^Lf<2IrXyT{7>@0gQcK| zWK*`&b%tq`PYr-%CAU6FkSY=wjHj#hUdMQsgj8U#jxA^{VLNSP5UT-U4v5X|b;I4J z6ng>!ig$JyWR$y|9w$M2&Cg6-ccEvRmJD;>UqDG{EMPq{8Oadk_6|Cm3`XDTPb-{vfT@$Qf;q6C9bkm=-7fj% z?szm%8BvZ_8+TJZBgDnF>g;ATWe*p4@3EE#Cw4l)#ZeMn-Wb`)GinL+iD~+-z;P*` zJ@7^i8#%g&&uBsRpv+fK#u^KDn9-sll2gG>Uqo%79cfDu`LpL;MKlc0c1M8O27<1* zc_wklw1=aB$*Q8je4e?S0@X0Ls=C`EXt?7iS^%;mA0q9(eRN_e%(HwSwOWs4ofzt_1DGEki@DQi-v$2ae}{POZhAP1>l8;x>k< z`R^x-UP|3pqWG*mz%}UD?Yn}CokN!yG`Mdcr*$Yb@33dI9v!?a z%rZY5et^RGzhw0Oje0BgAXH9n6gbphJq4fj=bEbzWt*brS4^L;*c}%oD z#HrWK?-f62RS$NSM097`?Qw|AK7jF+0fONU5ApCeDav9wvgoc9El<4t)b5F(bjx+v z%Y!d@Z%`;HVN2;Sb(1^~(#a1nRma1eWvl2RpZ^q)c|EJ3-{JaO zPp5gzGZ0e%Y@6$Xg)Q}p1{Wc)1;YUGzH(*})S=z7-n3vZn%G?0HV@{F0 z5$`9SBJD=J-*Jj&ZNvpp@hPtLIYSS&`7vg_J0{Ayc`*;oX{uw8@u$gQ6EJzYY{>%4 z^3%NZXm`Br(7X4OP5?=CFK3*lC;;2-1OzkB4e#tSetU=UQAK~sPNH00xydc6xPqr% zx>?gQ;bs5;SWLufb*Q3yAR+ew1gjGH_HiuT?%35;GVY8wERGJUqCOdr$h(T%H^Yx6 z;5{?Pl&l-{tJC#Ag*ZrC!ZFeTBRLjr=bELiID`>4JGg0F6{P`JUImDbfM`2s&6}NW zr8NM8HAF*>oGPkd)Jp+j1Biyb*Oo0A@VZ_=Kn?O)UPxT(->O?&&O%&GIr06~Xy92g zBj`?Wp-F@~Pw+WPClE9_FSfqNMIAi)7leZ#yKw=_ZDK@z=W@=D%e~Por}zlOEj~}z zfh!$8PYsN)P=S0F7)(j^CPsTt)lVok2q)C2LelySSjX`aD$anfG$8_WMu@QMOL`35 z$|Ya&^|6R*>MfXaE9@j;@jrn$Bzi>zuFX zHeSlsU-PWwt#zG`ISt9!EPB|1hHbrnCeoWGze=K*E^^jx>)(s7+`0|7 za1-%{>0$0gss@BzBA%J4B)U4=pXjLRCWM0~mG0h7=!fr;1!?}9QpP1tX~!js%mS}+ z@myx}*|qBGr^w+ILv`tI^!X*)1{%Cy*lHXMLjCF8=!^^PlJvgR-q__bpRM&3zL6Yw z)a9FWUCv=pQ95o17@pq+{6{TWzna{Os9gy=P#DWmmin=IJg*hJJ3^YnEEtYcq#_Md1#vlXtGOLv5QmR&>9eztglevR!v+h z+gh$_-Zm^ZiKw(UJJwQg4sO9kM=@`WM(g@BP0wgA{}=kDwf#ZU5`r6r9Y1+D9lzzs zmP@%r^1+BbMkdA=9Q)n!I&&4#^c+!3&be4fd>17bAsbefkPE%v1p?Fi=W@rVTYqea zn5rWDRZAs6uv_;n4*=0g8$7S>ayn;#(9;u;vTMH4nm0~MqTkx?Mf+&a0~NeN^i+#E zKieJM*ecG|B0ZyCZ63CqfE%q24liT3py6|&)^Pk}h$|f=p-$J=bHGq&D4^zv0 zK)&-GkJ|gE7X}xE{<)h$_D5vL*8;zzKtQza#eQ@Se-Y~`Jzp~nn#R{jr_PLAI5TRx z_q#QY^}RprxruJ(qX&Nz8E@CvcP)VmUxpTI$1g6JP~>2H1kcQ}Qmn_D{bkYr`Y9T| zUE?9GkEbQuHO|SuAw-vZ4ZV|=qu)3WT(9U2c~)AynyqvwXjMpES$8oRRhcWJf_DBE{a zv)8U{{}aulj%HKm&3|qBj2SVn&6pEAHL`412b1$J(ZHJ;ud-NMlX3Xb_-{4VblTCx Ti^^h6?AYTQWoA81q_F=0J(a0M diff --git a/app/package.json b/app/package.json index 6fbaf79a6..1a38ac4de 100644 --- a/app/package.json +++ b/app/package.json @@ -29,6 +29,7 @@ }, "dependencies": { "@radix-ui/react-accordion": "^1.2.0", + "@radix-ui/react-alert-dialog": "^1.1.1", "@radix-ui/react-dialog": "^1.1.1", "@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-label": "^2.1.0", @@ -49,12 +50,12 @@ "framer-motion": "^11.2.12", "localtunnel": "^2.0.2", "nanoid": "^5.0.7", + "react-arborist": "^3.4.0", "react-colorful": "^5.6.1", "react-diff-viewer-continued": "^3.4.0", "react-tiny-popover": "^8.0.4", "tailwind-merge": "^2.3.0", - "tailwindcss-animate": "^1.0.7", - "react-arborist": "^3.4.0" + "tailwindcss-animate": "^1.0.7" }, "devDependencies": { "@eslint/compat": "^1.1.1", diff --git a/app/src/AppBar.tsx b/app/src/AppBar.tsx index 102dee791..c4839524c 100644 --- a/app/src/AppBar.tsx +++ b/app/src/AppBar.tsx @@ -1,3 +1,4 @@ +import FeedbackDialog from '@/components/FeedbackDialog'; import { HomeIcon, PlusIcon } from '@radix-ui/react-icons'; function AppBar() { @@ -16,6 +17,7 @@ function AppBar() {
+ ); } diff --git a/app/src/components/FeedbackDialog.tsx b/app/src/components/FeedbackDialog.tsx new file mode 100644 index 000000000..e1838a1d3 --- /dev/null +++ b/app/src/components/FeedbackDialog.tsx @@ -0,0 +1,87 @@ +import { FaceIcon } from '@radix-ui/react-icons'; +import { useState } from 'react'; +import { + AlertDialog, + AlertDialogAction, + AlertDialogCancel, + AlertDialogContent, + AlertDialogDescription, + AlertDialogFooter, + AlertDialogHeader, + AlertDialogTitle, + AlertDialogTrigger, +} from './ui/alert-dialog'; +import { Button } from './ui/button'; +import { Textarea } from './ui/textarea'; +import { ToggleGroup, ToggleGroupItem } from './ui/toggle-group'; + +function FeedbackDialog() { + const [mood, setMood] = useState(''); + const [feedback, setFeedback] = useState(''); + + return ( + + +
+ +
+
+ + + + Tell us what you think + + + Thank you for helping us improve the product! +
+ We read every feedback carefully. +
+
+ + setMood(value)} + > + + 😀

I like something

+
+ + 😠

{"I don't like something"}

+
+ + 💡

I have a suggestion

+
+
+ + + Cancel + { + console.log({ mood, feedback }); + }} + > + Submit + + +
+
+ ); +} + +export default FeedbackDialog; diff --git a/app/src/components/ui/alert-dialog.tsx b/app/src/components/ui/alert-dialog.tsx new file mode 100644 index 000000000..ad1aa7438 --- /dev/null +++ b/app/src/components/ui/alert-dialog.tsx @@ -0,0 +1,115 @@ +import * as React from 'react'; +import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog'; + +import { cn } from '@/lib/utils'; +import { buttonVariants } from '@/components/ui/button'; + +const AlertDialog = AlertDialogPrimitive.Root; + +const AlertDialogTrigger = AlertDialogPrimitive.Trigger; + +const AlertDialogPortal = AlertDialogPrimitive.Portal; + +const AlertDialogOverlay = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName; + +const AlertDialogContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + + + + +)); +AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName; + +const AlertDialogHeader = ({ className, ...props }: React.HTMLAttributes) => ( +
+); +AlertDialogHeader.displayName = 'AlertDialogHeader'; + +const AlertDialogFooter = ({ className, ...props }: React.HTMLAttributes) => ( +
+); +AlertDialogFooter.displayName = 'AlertDialogFooter'; + +const AlertDialogTitle = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName; + +const AlertDialogDescription = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName; + +const AlertDialogAction = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName; + +const AlertDialogCancel = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName; + +export { + AlertDialog, + AlertDialogPortal, + AlertDialogOverlay, + AlertDialogTrigger, + AlertDialogContent, + AlertDialogHeader, + AlertDialogFooter, + AlertDialogTitle, + AlertDialogDescription, + AlertDialogAction, + AlertDialogCancel, +}; diff --git a/demos/next/components/ui/button.tsx b/demos/next/components/ui/button.tsx index bb9b91a83..0c0c72117 100644 --- a/demos/next/components/ui/button.tsx +++ b/demos/next/components/ui/button.tsx @@ -1,6 +1,6 @@ -import * as React from "react" import { Slot } from "@radix-ui/react-slot" import { cva, type VariantProps } from "class-variance-authority" +import * as React from "react" import { cn } from "@/lib/utils" @@ -35,7 +35,7 @@ const buttonVariants = cva( export interface ButtonProps extends React.ButtonHTMLAttributes, - VariantProps { + VariantProps { asChild?: boolean }