From 0d3c058137b5ab459ebcb38867c027bbb19cdb20 Mon Sep 17 00:00:00 2001 From: William Grant Date: Fri, 26 Apr 2024 17:26:32 +1000 Subject: [PATCH] feat: new sessionqrcode component updated account id and recovery password qr codes with logos --- images/session/brand/classic-dark.png | Bin 0 -> 14331 bytes images/session/brand/classic-light.png | Bin 0 -> 12658 bytes images/session/brand/ocean-dark.png | Bin 0 -> 15043 bytes images/session/brand/ocean-light.png | Bin 0 -> 15675 bytes images/session/shield/classic-dark.png | Bin 0 -> 5274 bytes images/session/shield/classic-light.png | Bin 0 -> 4679 bytes images/session/shield/ocean-dark.png | Bin 0 -> 4937 bytes images/session/shield/ocean-light.png | Bin 0 -> 5342 bytes ts/components/SessionInboxView.tsx | 15 +++-- ts/components/SessionQRCode.tsx | 69 +++++++++++++++++++++ ts/components/basic/Flex.tsx | 19 ++++++ ts/components/dialog/EditProfileDialog.tsx | 46 +++++++------- ts/components/dialog/SessionSeedModal.tsx | 46 +++++++------- ts/themes/globals.tsx | 6 ++ 14 files changed, 145 insertions(+), 56 deletions(-) create mode 100644 images/session/brand/classic-dark.png create mode 100644 images/session/brand/classic-light.png create mode 100644 images/session/brand/ocean-dark.png create mode 100644 images/session/brand/ocean-light.png create mode 100644 images/session/shield/classic-dark.png create mode 100644 images/session/shield/classic-light.png create mode 100644 images/session/shield/ocean-dark.png create mode 100644 images/session/shield/ocean-light.png create mode 100644 ts/components/SessionQRCode.tsx diff --git a/images/session/brand/classic-dark.png b/images/session/brand/classic-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..d056c2113f49a890b8ec3d2751008c14ddeb1f38 GIT binary patch literal 14331 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 Cf-3X? literal 0 HcmV?d00001 diff --git a/images/session/brand/classic-light.png b/images/session/brand/classic-light.png new file mode 100644 index 0000000000000000000000000000000000000000..0ee64cbdec0423303682406287e55c0268d3e3da GIT binary patch literal 12658 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 z zzeXfhz!s8LQwune(Ntq2CD%;3H4T#%+%|A+WLHBI0pBq-i#HXBDG9*u-CG#WsvOZI zw)Ypf$aE}(0->cgyvY}|LPY3YO|Cekq5Wf-Vf^m8^i<|Cku4|J7n5M%FbMyhUTh5^ zv|xkBa+S7)$b`cvhn+a>5m2%TG$dm5=Mr}W4YcmtF1iVoPxOO^>1y!L#QUyFtvUHK z=1tmmWyJvG)6Z~Pj{#88>70bIk`$il#*be)GdDL$-T$4M;>=58bt`RpG&;MIOtI7A zcOjpThZoP!cw`PoJZ!#CXGXHmzW7qY?6uOs^oR?gBqODdDM+X8a9cQvyZ!dfl3oAqxF5&}J0Gd~~F(534m@3OrR9<1U7s>#Z8Rgnh zDaLKzRn5w5aim8lLWfWA`a0ePoY{+mT_ThsRdF$fo{@Vix;`)Yu%u^YNmOT#B*MWN z7;gO;B0?341|7f(4|qYCmYlxV+Btl=U_|H8)LKZI5R68zdq~%cEOKjRY7@%M6UfCd zA>z?q;=T$KJ8?9kC1IH9M2cj2h-N*sx~Ce=ijq@WNJ|XjX$lOv4aT!81O17RKT;Sh z66!p#HnbL)pS@y{NiHaDX;%jf$V77HE5~BzO3AOiffp!FcopQOgpmg?rRg;!#(#$s z)-IipGf`gq;ajLp6#q~kLyx*9SZGhNzs!=xAZhLWd6%GDe2C6%>jhEvWYqW0vUTA6 zTy2F#U@jVZ9$Xnp|2?5%E*%TwG{R#{s`=91Y#^I{yPo`h3ho3wOjG+w1 zak5mYg%-XlQrrtwOH<@%Kj;Ww2} zTQ89NB>_)!cjgXrIWK5)p{*|R2D#C@Ky{p2Ut=L4KZ+j1BS_R7suzW)jXIJks{E_U zZ-rw9^?~?G6TcfKr@9^8+b?EdU`TBL%L4eG%7_1=6@~b6QJ_^D6A3IRT9E31Q1D;F z;8gdWw@od16~3R-B3~w6P_VV1BZ4JWxhHR1n#xBa zd0k}8$upHH?t7^v7IkP^H9{-J7;AL7bA?r`A6SKJ+k|RX8c$t-$o4_1@&Io=3sb9u? zgL1Mlg%2h*Kah3>lx!Q>z0GfP4Q{CH7JmuYpr<`vd(f=^K1!z^{wY1wR15flg!O?` z>CzuawL;^xxk*!hN>s$q2JwF2XG%c3-?A#{yZoa*H*fI64zV1T75DH=%8~@CK&e0} z6YZS^8I^S+aBNQpjQF1X_c8U(!;~AwMrWn4k(WkdfPj?gQLBlb+9w)54b7kx00qbdy$Bif(k#I-urO+ zmDDBx)NCOi+$x%hEd^C@)32}ogZCbYKrW7#&Z;Hmt5XTVeZF=3 zl%Dn&Eb!X&gE4oF(6_4;hYYq;e7Fnw!RVv5768gKb`L1gwlIO5_^0|qP(U?hN}Y8$ zg7~U&^~c1SLI^8S7IFK~I9%EwgCx9j^|3duxNlA+wsn~p&!~MJbyT{mdfuWVOGQcN zKNR*Q^}ED>!PWnZOPNhDpJ4?Xf%=eC!;+PySq5GEIv1)*!BaiBIr<1GIGSoE!>1c_ zlfD!R!c1K$_A=w5(MnY*_|x89=l5r)&-b2YMVor>=@=s|&LL1pIP6D*E@mUF{7n>{*X|lqJ5v=dyGVC#)DxYZDz$D?js0g4B-;Htcre#4Cob>Jxe?U>?R^W<{gvTgCmn;B0_s*e~^T-^U zDoQ~B&NaWV7B+dq3R7j4ZWP*%E%rT3krG1^>x{OkD^q)`qv7D{g47{YDYF{e7gTKe z+K5OHx3bcT*1@8#jVdjARUjdXm|MAd7kxB&(5@Qndhm&NMb~BTm`B!EitFNF- zczA>iAJ#r2g`($)Vo@nJ3TED2uCMRu4-M~(x}va;X#-yj0F`h$=)n){#mrzZaMwyt z&fkf?UV#>ij84rHtg26h%fwjOgG$klm}UW@DY|?oC2PHnX}9=hoj>$EO=RrnME|3e zaS>l%)WKfgxZ3929P*&l8^=7bUR`4rTX7LB^^KhF+4G~gDLqA#N%10Zmtc;sjrlh#N*`#>lq zjBOqXEN)ry?$qE6N=7}NX35AQ>+m%*bBW$oU3Ddhc4u4nVe`hz3!U~Eib8nKq8zuz zp!Kv<-iezF6GIOdP{u`=v0694ohQ3)tlCS4A{5v*N2_nAZcs$vRF1>M38y5+@bH5gHy8LP zVkmI_vnQs`rzabbNF#I^GzldT^^@O1PtabTSt4kigOBg_D5FB{{5(pR9Dx3)W;nN3 zeZ3@vI&3JV#VvpSxb$kBO}zTz$ch%y2Sdb)!m=6S(pKXw_2;_?7vD>bEk1%I*`@^j z`lGQXz=@vrBg~XPC*e{1{P{m+YOGAY7AOCR2(;oTBNaw7Kp3U)UI&CmN8nSnnUQf7 zA`^ahi{qdvsrv~F(4uWiqR+|2ckL#yBvghHLRgL+kfaXjA6$nQZk0mz>|{vI)}B!i z#izhhnP23_eU*;()PAxfhhpZ2<c_DBML%9!Fq}_^^k-d0bSN)h1^;jH@a}ID z3k#Qc6A3CXf}#>ug4jlP&Bv|DDFW$`)mO`nO*jhdfkIz$nl^l1u%u|Yyc+P6r1{)x z^JTMGZFza-Q+oT#6?HfOrE$B~2}PChJ5pGmcw}J}=5dpe=`x>i+5_~PUL!)GA=fLd%`M=p|lW(jzC%&P}P3Rjf;C$OkC;N-5 zwz)YCDiT*BQ^HPy?|HiGvIgM=p;+aW>J|52q||0*4MX*SmY;~r(fx7l?yR~B^DB>e z)PTRRXSL0HF#oE`;YnY&)oCyGd<#IU6*StvG+jJ;T)yz#rA1>{(DT zjo4WJPi=bc_Kd4@-{P6^og+a>;kgSaC++KsXXuP<_!s_Z0;wgD7yx3R=YmOR-o=-F zG1I!$H9(1q_7fb}zyYQpiZw`e2@F-rZxQN{gPrpMGIgzgCj+n>e_IHU^m2V*Ij)WQ zS)Hq^oP~b~V9VM|;>hwutYTM|-`*T8Trgc5NmN$)@#37Q;2^sft!V?L!_9XuxoU1) z(?OBLPnB@IA4v+3D@@wll-Sm0@pmkHe^!_!CCS76 zpq0+!$4Y&J$?tqM@b|L!Bze?U<_s>hj`qv`9eihS{KU}k#bFBP9nR^UJI7-b1hNsk zP3SRXwh=B7uTYlS^Vd@V!SxE-yWOH}`=+67f22AceUrZLLuPAx=8Z^DOsIyhf~?#X zqCRV({yY4$lE1GYe@{g<6%k597u)A~or>JCMPDFQ*>N+5s_daC#cT3*apfy?lK2-x zI$qS|kJw}DL$*6`8V6D6f;Q3=C;iX_wT69A<8hJV7rC;y#nj1XKWi7=5blPK(n(Ui zvL-Kd{rgx|SZpN0H&1YxfeId%{GJ&%T1mQ2UM1!TI)(g{Am$v$= zNo%RA+SnWFeKtq{VZi9%`dfsATdtWP(n%0nlqI^n$iA2f)1BB6yQ(Kj#Aq!F~Fke&!^7}johE;k_J+FK7lq1zt5gt*CJVjsg@n7Md6YO@fgJh$#=A3 z`R|N7+_)vTb^%Je{aisHR?Y0MVIxRnWPV<*t|RE1ef*bL-{A{;WiwdWPI+5h?`t+! z4*rB=M;AV`KQxv`>XV+`EW~STFB%AP3VrL}8vxvsx%`3;M(<+ed7F38aL5*@Q(bnhlm*WyMkc30wFi8G0D<^vjIIgvYwX18oU2bnvefiB_Bz%c?E??gX8hgxv%HbLg>Imkr zAa+mA;-gx{ImX!E){H{WFAp{jbRR2Sod1bTt3%j7wfE`|g)h6}hhsFUDhzip5L~cb z=GuZzOLom?P7bWf1~^dJPtVy0K-1G953i8=q{vuPQnV0?9o4P2p^Gccmzn%OW)!(I zpa1npBYBC?UFgdv7qb1t5{CR;tf)wGR#L(kwfwkQz@{7O&NlzG1r+Tk7Ds}2{tltAxM- z>z@zV_>ltyiW<&Q!%wuNAlyNe{?pTmfvVwQGXai*HAo87iu0ce?t$0-7Jk{D$9|Rx zRiSqA#P@a@9XJn2 zbhP|CfoO@F()Db^N}w+>70<+^q9DI8nNFP{Tv!1psJzD3;Z_Ur945#+L@KmPW3K6g zO!&PpYuOJ^+jO=sz%(2g$}2<-io8cotd@r^Q&(GH> zYTr`|(_{DmxV1Fa43H^?rBst1;)ldy=IRKNuU?_4V$uu_+;LSP7Rr_PX2chMADzDm z3Lsp(Z8-x@9)W)$SM`5y?VQs^O-HDt|LH7s_-T2Rp$0$rKL}V{-S}?1Eu2m~Z0wp} ztx%%adztDo;<~!o>_Q6Z{RwTJjACvC;WpRkc4u<8su#IY@x#GvJ((Q3%^JOxhA6|e zbc>!bO2Jwk?5Wx9cJ3A?;rK1Gkv~EqFxWNS1wBaPyfTsOH#*_`|#?X}@^{sMM^g%)OQCRsGDWl*PO9B10Psr61QUc6Vv88n!d$pbTDs?5wLb8xbz7?;|ynzenzIW;hR8unT&9_mwM= zH?DC`=EtXv+xfo^($r&WKrEYd8;4Do$Z@VMf+uCS94^n=Y~{BeNWsQn({nzXNr&X& z2?Iel%CK|Y!=t(AF1b=HUALy;oF67ie;IVK{_pd@EK#=$l1F&Gaj;h~qaf^fRm`9A z74`eh6~`_HNt)8bn)bQ2!s_)X-<_rZMc`F}PJqwvdRw8$&}X3xw%YM+Yeg~dt6Wz! zR#l+rBRbC(nfRcq~HYdKZL7;H^re=WutkE;O*gS`Z5iD=SI;b02}1t^*xQZ-JN>>*d0PsbnDjOe0gk18v#7a~bi$#qKDPGz9CvQfa&dXGwVj97A-J+gV8$6p^`O>6q| z9wk%aOkWhGCS+H~++W627Z#fH`Y#JrL(iS<)-mYjdA5GQ`<31cIurxsBtp33c}~l1 zPAX$Mf@i036OJ{y|2-O?k4umfbeyhi=SIKudcTKejEULoz5#UF7=R}GWYpLsEp+e( zph=w^ydM%u7T;U!ad>b`vc#D`_z+dZf>kMr0G%OJVi=S`qBd#j-^doN%>@Sq$6G(0%Vjt}=VC*dxgj*QfV{1G?_>>Ccu`W{0!;7kkm%4u2r*iF^Z>=iS-EoVo9c?+ z*3UZ*lI6OGDL;_M2xVqx<&J6se}hEs$xW^)0dsDYzSCe*LxJR&GR(<7BnK? zD!cZ^bDB>7(4#OnzqT{8NtzMRpBjeq+_zT0iAZsxa{I+!t@!ZtzW}7?9Z5DV1_qiX zIzF1$VC=`RwjbRSMSB4iQ(904i)k!KB0N(#lLbgwvSVXRpH1aA3v2s{(oq!h=?j zyz?ipJ`901&)88rbziu2sNAIv4}#>32L)P4s`$h*j+8-;(ptZm0?Hik>K|2B zb@^tFUjh4k=E}HXC&_MjKmIa<6eaCgD!TA6bgOEj=@NaJUSwPWPHH-nhI!s=zVG#Zdb!Xk^T< zx^>OK#=k^pdZwk7x&`GsGEtL<3@gj#CaChZlJ_yFJBUG<(V(v*t{W)&RC+pFXoaFN zIEcdX*VmE`bjIPEcST5!s!i<5EcG{7<2fJ{NU(f&T*M*RNkjOn>G#MlIw)yxXWrA}J>2 zyO+^uB3s*cejD+{v8AQ{E^gM^<0Eu21+tS zj00$Q=$ktPt*>0t_{({vrL;?d^cVs&06we72WZoeTh8@n#!UK@E=iHbT7{H&vtK7_ zNXk@)Zm+VEf7E!+y9km+&gp5$!F4k@1A*PqbmFt?&xqv({@O_ zZ{i#jd^Xhwz5W~y8+z6oslep_3l}YXd78x z`OS)w`+_EA5-h5`d6o%_I&gd({;asV?)ivObn7EO`bn3(yNIBo{PMQe*1kQ!lVvn{ zv^Y(^M3AmA)6>Cu}8*GEZcGcbM z;l-n1#=F1|RuY18+9=$w?HdDUu4=8rO3;{O=GfkJ&Jl@_BUi#ur~*nygcdA_q@3#(>TvalwIt5ZEf_wWlODx6{O*8( z%A;mR8B=dP5ERL4aioq&c)xS?)uTne^dk2NRWe>nMR~u!Wh7R`3+#Wwczh6SxDL>1uYegYfJKOqq>>1EU7ghB z(#`_>;YI1=R?_If7I$$TQt0h-tkMOh5ky1Rn@)7FJ1;>fcK_Ddz)#fAk+Z&VYC{KI zu-z%E{ZP#(0Ya+4xKKk;1){~XKU#MubTwDsm`KrN`AFL;Rw1bDN|=1DWXqDrF5e5l zMKG-@J^MgKiL%N$6C_NAb{VA7Sr3q@E&R_0FA9|K#rgl6j^ Sm(ZtDVdSKgC2Pb@g8vsv-crK0o^1C0m`003af%1EjL0B}gK1BCM5nWpoY8Fm5H zQAWoF0C-RR-vO76KZpkaPyl2l#ne4l&is&#NPaEfjh`E+U3et3w0h`h*2mc?U>HG- zdPv9q;ov0uQbU5MK{(emmvnIA;`Fj*sBmV)1hJ;UN8dx>+(y<1rM}k4)GfGqvlwimQXN9oA!ts#h4SfC)Ig3Chz;D zj%fj&qKC9A!B-{BD9(vowp&@F1Nx~~ykq-`URse3WTg2hob|UbBNW}jmwX* zUKZDo$OQLHgk9wXMQU8SO|$3tXHh(E|9;3}CTWvNv~SIXMthZzwtQ$gi$BZE*>BFK znh_%Ac+oF(ygZo9;D1M|MIchT3f-wzPg$LHl!$u2_dO5!7H@a>pHV6yV&0m2!5>H1 zRs-pHW&9Ro5Xr3hmvc~xxnmu1CFAcA8D*fD(b=C-#ugw)g9vEx;e`O)!yoD~mAugID!pdunf=bMOz5>l)lR z!Qkqe&+nY+c^M3ZUNQ%VCn4Ixq(9hmyUkNU;=vIFojLqgHqdvdr#i-;ZEBcB zluO{4d$nDtOZQJx(2Vi6m~IEQo z+eY-`I~zPw01iL?MLSOKkgL~Elb zu*;BLPld}oV(U(a`|T}xwys-Fn^@)gtpf*Bwf`SUxSmnQB zB~zb<)O51f(YoJKd1N6CtV5jQ*b(pk(HfLlxx8dvS2BR>kCvy5<}X=7a7Z&0FQ`va zcy>36al&OBnb_wXOWv&Yb(3|DbP$$-{uUjorA7-ba1A5|*IPvyJV2A^~+9LL)9FSq?q7AOT+7!tQ9_J0V2u9zh3k7qNmsgrWJE;l11-xySl zTZ-^Y=s9dWEiejsBgg!5%Q4fc92b0tGdJd}Zz5Y_ax*xyWrrC~7p1j=E@%w){B%*< z5I47g>i=rjMZ+Ew<{>XBXqAf2mu_)vvSX54^OGWtSHe(8!@jA^bE- zMa|Py|NBn^y0M{h6e~x2(dnDa$a%DhdDFuevwlnPb`HPVjO6Of`ryW*gzZ2qXq2ce za!|9tqqfl7CG0rMh{@oF&LmLp8SfA7%-mm#SjkCCBmQBc^$rv>&hVf;dmu+t$0~DV z4+5dmmcmtcA7GNdR8wa+Lb#Xr#~`B3b~$A@rys|7h}J68D1jtJ0ZHY@V)JgQ<_@8p zTBPEA0Z9R*q_0gF-Y*H*ZJVDOx5<9Jgu*e+A`|tL1yPKLdfo?%HI6|=wEA^ESkyX= zz3OLW@*P*M>vEDv;BmuWz1skrq)7N`Rg}=iahOc)h&^&!EZ~@D0=C0Kvc>)}SGgr9 zF0h@Eshdq+hOX3x?3Z9-on3!tGcKo;mf7yviqevK5RQZ(nj_9t;)iT}_ERA?d%T00Bbr}9`P{?K3Zb>B(|Z;Z-wl{p4z5sMix;m6VYg<7m4SIl1>3LmSa{#AXq*RIM}4^Er~m>35(5p*KE{WEl|d%MLW`XB>N3OREs8%DTVJvG1NHw51Mzz^Zx$K-kS%JEg6SkyXOwr;XqivRriJp6rGM*6*X|p! z=-w2~B5f%|)k&OeEK;EWm*H93J=a6Zt%9pO&sKpp4{fsx%idcPB~We?$IvlobNMWZ zZCC|?Shyb7xK^nQ#91uBACJ%I=ezJSWn-lN8l-N)s9+gtW5|O{g^;Z~C zqeR{21|5)Lx}-hqfJaah_S!+)60@1M0TYtUXf~UW<0R-~yv96A zKe8&X^)Kbi0Sm>yh^{$!MCycJF5$UXn0OW97U%TPwG>VH)FzifN-$TA zoC*{)mrBONnXwxKsJt6+q#g~H2>0^H&n;cJQVwIfAReZ_^Gbq4D9g>-BM1B}UlB!@ z&x9Eo<{s5@epP{!(y+F;Ie6y?G zbV3PbcLbwQz>9_AibZmfY* z%znPF^3E_;+$>%oA?na)L9Kc+#5D~D!m214AQ6?l7E=8s@m@etL$7EcWDp$fU&KHc zTxB_-J4_U;yd5&*11rq(^UjhQbP}VXQb_WT19wK`0IJ&IPmNCbi$V^?#&VNlR%)#L zvSb3B)3w&cQtD~I0k)RVhj(xX#3r$MuIly=km)aN^^ufb&t6bgQ@M}dWRxc>bIX!? zHGOy4DEeO+dyG{V0|meJsE2AxxF302IZuu!F=2N5mlr&HPozL>?l9g}GQ4sI3`P20 z6j!g<|IR6qfo(vNvoBKS+Lhorxdw&op&RVXNL^Mt?3MuEWVe+6z{h(0hp z(a>C!@)6d_k2XC%Z2-L4te>v?S#=kJX3nkB+oqB%-b>J*fi4yq384&Ijs9IC{skth z_PP_0Vde{eF4cS0RNx{%6WgUvy}?t#%zKV-eKDk)sy6D7hQ)D*!=DFdw7Q+W{h)MO zmUl!4bhMkrW`J+>gby2>KN`@|BnHQex&4`H&i3Rc7(;rKy~8!XbASar)sL0#?nbYF$vqj$VST{pj=BxB>@&FP<2sg% zmw{)91-7(D=w8sK<{csOBR%VjZs}3^im;k4a;NCsbvTDE3OQO#cG`$0U5L)*&OMG}P?HlND<&1A~n`r+mLYs0^-B*&eN%(^Z@W*EdTq*N`d zH`&DQ(uHG@`vq4<1AjSvr2ctPeBBp~XVH0a!zRiHI%YJC1*X~$L%l}=nIt#-QYze6 z4M1b{h4t6zai$ZpPYA0BOI#N(_g>--#PfuN@lofKVb$TJcNFoYSy<|7k@F-n4EnED z*8=Qi?!lq$BpTUd>a}Tz6bR>(B}t9>L<~=9MW+|X?7s1br-!#z=|jZ0RV(|s!n?& zuecf5S81dT8P3d~F#-Ib;bZ=9LA3uLw4k#dU#5G%Q3VfzeS@ekLWd+@ZQIXMqXY}NZxrn!5=*@BX2%x9sqVq#tr>+Ert z$It%#Y#4bx71$rrjKArLZ}vNvW6I&g>5O>JzW`n;5-8E$J5faZ8UHv+X0OIWv-{x# zO-O!83ct;dxcVYl8#FUJC3^4ngZAU505S*%P%}2!tr=tzn(Cf^VWnul+&(5h0vetI z>j7~qISpz22Y<;KXwh&0cgzMWE9eNBe>?@>MhH{APMdtYZpW)i67ycQ0;{#ywgD#o zL4+f+jpG8SyXg)CfgwZz?p8V&UZH_gCujDuw(IvE!Oy~oq6gYbGf!xx$X^bxkaOsvdL!_mazIKKIp zMQeTRParKF>3b)gdfMMDn*x)D~U2)7cdV zD2M3i$)3$6f6vGIE0Dj~oE(X-=qm^ku%`w!W7-Hi*`gqZ4q??!LfHl*nQqm|?^u%i%u~fMqN^v4^K?l?6R_-A;%Y zQQp!)vTrQ5-Cw!zufJ>pcD1-e=bEiG2`S8;y_-;%|H(E)hXAMO3=$E+=S#2ZEw%1T z=~*-gPVTQ;7f%E1QWpp>=lIy{MT%W~GdVnyM;G9kRTjlRyjEX^gxDYCtI><8Gu9%=vtu1fi{ShC zfPeS_eg!5c#N|M10DgF(-LI2Zax?fEHp}Jiv0;zK_+#IhuMJM0M+bgI$Z8<^7RGqq zn@jqMs8%qScb3(?uWqCKJs~CYrX^=qgA|+mX{6;A_49S86gkcf0g_L=?y@eWI1=i} z?mqDjN2zto`8b>lLwiQw#OYQGEvEzuDfLMb#JgjPwuF$u5Gk@=R4yTgAz4^ z>oa{BVH-c-f)WT{G?~~vU`7q|Azn$V_bD*qEG+a9)!^L%`z24!a0{@>eA5`>hR8(x_|2V#5AG+BU8EBb{ z$su_qYErl?OI3V@GB<mDJ;y!Fj{>8 zn=-XtErIH~!8FIGeFgVJFsPngpiiI+2{Fp8=SX1B5P|zJg8xJH;y$sn;F)fwJjF5v z4i{$+2S=u&-lYtE2`lMBXbL9e(as7>a}}ZnxgvMdNb*TWLBW;1b*q|n=gM1aX=cY8 zydNgf5n+5E8Ddslpdpgnje79QLUHWO{dAq|$A@T7-lQDfgqX3cMcE1gOTJTlwms=! z5Vl4*;)#Nb_~fa(Zuj?0mfjCcrDHQcv_HRKmE^_9)hsz|LkaotgT}p)iMts5 zkvIC2-yQV@3fHwP=-3sx6ipW!pDk2p0aDQ}@$Pz7pIE(iAT8 znyjedC@{g5MX36vFbgpR37?TyM&~;I(XJP1ms7OYk9M9mgkIF8N5O$|v;F7ljA#_J zsM<%FoaOI@o){Bqo|JxKuWrk69YxMBy3dWPeD$puK=gd5KCTASa{IiNX5 zX@Ce<9RBBR%X@722P}ezCo-}Agup(|E<8F3ReJ{F!?u!*!W6jm&;hoUgp038N75v1 zLjXCmE6XgPQ>Ge1F{-em?bJuRhBky?&f3EynGF>u4$<(=RW=>OCz`;?QA{+!3;(Ij z`^@_4+%j{H$k)AmJ`~cA)*J5A)|j(N4dmA+MiPsORXQBM_nAee-mv?~#caE5RNjH8 zn(fgTeN5VOO@DcC|cE^VJ z>^{;+0B+$w4CCQ&+Ir-8a@eT9iBw91n_;CKfRc*! zPnpzZQ!rl?{3RAlt}m7M(JYBQR02E)%?fJ|4EL~`z*p^T8ILe{jc?vF?~`k`y;4de zVI_E5;Uh=PJKYpl6?JcK=JlPloza39wUG`Nhk8Y!7E0^HhZI`t^7iY=a2yIBXe5k& zM=$zjKWA+%;S&gs1@=7|F)1NMUPaD^v4h$EB{j5tl-BIMwo2p{Bs=7@nE0BTl|Ty} z^xxfhxV@T>BI$M2anT%y3I5zcRIaY%Dpp=0b?c$OU$6oU>EZ+~+8Z{ef*PuJpDKG* z@yC1b$}!4|d0|NUZiV#k>&2HA+}i^?qO-)3)^?YJYW)=bw!DW=uS>GNe{|YbuLGlF z@>266hQ$GsiKX(S+fNGeD~J*oM}@jh)IwHj-8^%k^sLh1e$D~K@PQI=t;`-q0X?)J z(rfr9<<&QAR08ZM!Z|+EXNduTl{kuKkIaL zWmz0vIYr0WMZBKj@f0bG6h4nLC?euJC4;uJt#QThIp#@R<<1HgHrb;xao>m(PqNgU z9cIw6eHnZyualM2#ONq(MDB=PjrR9buh0wc-{bZPR@DPcZ}}j7e4t)xn)1Y;;gx;S zA#Dy??%83Jha|)#4>o6Y`xXpI&o3Fe{WGctg+uVI1Wg6p%?KYPg;cP}XsmnMteZ8Z z`g=9c)bxv(|y(EM$5ma^sb~CAd`Z_GaY)m zTN=)OV{%H4 zNN+YtzfLKub?>_wc(Bl2y}Jd`lzkwx(-FzaO5FXbO+a+7bdvBijo99)nKYfUV44$# zdx(ophc!FgAvFDtp=E2HET1+>zo&m~jR0#lOzN<+_nC)VU4pAN7QTGj0-IZZbMqMr( z?$An@f@W~?mrRE)S#girz|YdEcVkq!a*1x54jZfK^ThWP+L-tx7D^wa#4W94Ruo5| zJy4j8esOCdKeTF=livg0{SbBVs*MMK)H;(jcPgSLxSG zP4{a5yc^UY<#=eY(oEC;WkQD?SMp)ObL@4=2PLx_Az-(Usj~dLCxhF!@N*aN2^F_z#}1O0Ez=e|MWtxcS#)L&W1zyx zC7~m?YcQ#zlCJ213(XXl*5}V4-Qy5#PZy{ywzVnQZI$v!Lej_7Rp)1s@)uQF=ESBy zwWIvxrq9Bmmwnh>H1S5QT(^~j^0YI$Ep4gWvH6I8@S8q`Fm^na3Vhve#NTYe1duF`|rW7K~LNY+XsVL^HkVEWJ*nz`DgHu6;f8D+WpnW1!Ma%`qN2D=yx z!2zec916KTi|&c1*gRy6I*zqq)RGj{8_a z!W2#Um3o*30j=CUVQ!sNj)@s&Y3dycy?oX-eKu&9@ zui<2!<7uXdm^dBaOm7*ScFw1VTVg(X?;f*toaLhw+3GChFovUIV}{OCgD(lDbzjC( zJ`#O6Ln0{y07$m~^8)ypg7)EdvHP)gtSrp|lhkMUn2?+Pq#@d`Y_1EP>c!~h!>k4# zSVkEF!6y|17Fmou8^GJAJjs8ON5p9Cz{H2C;qV2y3UO!q9?7MGW}n)_qa91Pr=fxQysFnO zay=NKFBt(4(oVaKz>|QGCPweYWNSnZ7T|8g|1C zrYm^zX3%9QX^0B?I=tY@r8ylp7A)Cp)BUm8%n^N@11l{(#V{SWY=AhiGpBDLAn z*S^u5q%+ibgs^5t)nuT*p0Js=WCfq+fVomCZ`i zstvfPbogE?J7$)M_OGP7X6^=UX{P)xp^~4eXoNZC#RFTv84f?Z9Df76{^Ha9Iq39- z;yP397Lm>7X9w}&xBW-b^4Mkic6RTHCcp`mk+c2Cby&k>gagwujk%s^VCy$<)ElyT z7F)S17v!w}&|{Y!Zcz3mH+%6V@f;GcY_emHoO5eg+zjEW-uq%=Uz@H2H9DfAC;@G#-OCOFZVK5T*g{SeOiDpY2# z9j2jP&WMm0E`#k2r9g+=sGa2C^TwKlIj%-K_%do!<_KRy(A5p}3f|8Jt0L!1o;GQH zWrML7?6@V(hA%LQ@C~RdoaoqGXg!xd&zfOfC-KueMMod@elhZ30pRg$vLS+)gf|K|n2}42dx+7u?eaK0tM3jo*^`VId z#=J8tcl`)~0rGg;b(Z`yNs}NZSiKcOg4_t{{tcOyp$w0rc8)wY*|RJ{A6zV0NFiK& zz)WnF5(SEx{hGW{(!B2si+wD=wcL;2uac@L;jFa6ONQ6V)cJmTXu)=lKt!Z9Bd+xW}gGO|y(ux)E6hJV}sa*g#vTl3K{`VgKs@!0lP!97EghZZmIvrV@$AKwb= zA!T_I#b3r?x5?3{L~eg#j!QI?aue&XpWq039=t+3ruZtFNx)U&VqwNVK?+8EbIov} zyh+`5^UQdNrF_G0m9-`}Jd|J@~BvCGj_uKw9Q&5n;cF z^#C7%+*v*(i7<%!Ku?N>qaUhGqz_nh-*?mvO-E9^4;R)Od1K#n2~Ut>Gig9U2(J`t zcwg-e5Z`x~vq7Vgzeg$q-lTaC^L~}dJxB`rKvEPoz1J~>rfVmR9;gf8sDxV{a^D}FwRK|$JVaKjb6VX> z{(?mavNDs|&A>X6BT1tlI}m`hGRk>;KF@`h)O7Ye2)8eh!x&;JoBfkibRSJ)o;=Fq zFBkdR#*Fq1>Y@6IHa=Pn3_3Fp{}c&K?9^dT>Uj{6B&oLFsK-5u;`Js#GGqDd#onKp zc88M%#qnSE_r3qRu~s^{4*xH3Qbx6QRm4 z4O{wsIT;c$noiST(>-yd1m?J@X>{7(^B5VrGG5}td0kjmZ*NqDZ@({ zIqJuUPvO{d>VxX!_ngDcGZ=m>Uez=RU^ZB`a?ZvC#GhQ-f5rmbv4f*6s}mQW9uN%xC?)hJCgi97S={)RDP08 z@hQ*HD7=h%8+ z44#zuhJw65X__x6Dbt{A-)@TWRiN=XFpD6(sP-2#`woKffGK59pYne#76dK^j4*La z2mXz?#LI?fCZl*X3BEp~Y-d8JPS!*_|JddxU!8w^q{`n^R&2H==S9%rgjv~gjK1P1 zd$K<`P#QA=dnrAf;UWUJd0G$TtH}b6=d%BCBEw;j)8pL}2{I1=!sl+Nj@gH!;BZRc z`{6G0zf&HiIEa#^W5#sZ4MMH&O*IEF8eOLgi|F<#Fr|e6ungK&AfzQhxAUkPv@#-@8qow1jl|Fj}L@pgyV2fTnjllPvJ|R7S9)} zpnrtA((HM=mKp zKj+c61faWK66x3XQ8bX+0kkU zPkJyUNcJsc=`agFd~r9;uE^7lLzx!}Y^Rv{kgF6?l8BJd=;)RQOBUVQ5})y{hH(4v z-}TP%Z)$9&3mXtD4{_%L7e841`aEd#PjoRvY&ysCmX-hVYX5`ilDrDyc2O2i71Zw7 z{2u3eP4ab8b+4S-_tL$Y*=qgm1HiSP&^*x!K&hqD6r(=BWVSeZ&Ka@UJ+Qu5R-qqA zPYG`|rvoEW)^cxyLzgEwfABgHq~9*xxdXcY_GE*nS&mbGJ$Tu?_e$Kh`&XOnXrcD2 zLg&D^W9lR@? zJg4T>0MGr)0M`SWLpd;YEJK^|hpnAW2{83oha|CM^JgOmPdhg7y57`w!w3Ogmg=C~ z#SGoFW@VX`e%@V)S1DGf5664HlJwj%$Bnhd6VLG%p;(&+xT#F}v%ha-jUh>doay^S zJF|E2AHWsVO0Zt-AdCj@YNKiW<>*DtdoY=E0qh2ZImO`_$*tS5=+=k(-o=W;xAV)7 zo~h%d9+g3HUV{>$a|T!9WY}SHAX8IqZ_23Nb^q&t@e$Ka0BADZ2P2$Y(1xjty>!gr z4dox9ode^c`qkwvOncjCUy1jtTc5jID3N04w=b?>n6bd@K45QA{`^byGxnf4-|$Z? z>iEnX|Lc~2s>QSTT6nKp)WMf3LnCr95a=s-g=s)p5GWQ)2VPvaU&5*TVkiQe(=zP( z&Kc?A;3yCG_B)XkuR65g-+3onO)&8Z9VR|m>0wbIf*qtI16Fi8Tj6dUT)B>sD%}`> zI2YbknPX;3 zJuuxiWHcnxvJ8vuOA{6Ob)b@QY2UX{KA3DLIFph1kMYQFpUL-(k=paM88&kpVLkC_ zcH_TzaygXS>vOR3BI3%kaLG=x@yR$6)Unv7!9+OuK<(9FhF`rI$nL-PN$0gFp>q5X zgtR6rc}2UJPZ8Zs#r|6fA%-#jers|}U^sSE~TZXW{T4{frAs_-|P_^SH2#C6; zoOw#Ech`%+l%ymvK0LDG=V*o*sGj`3>tUM#n*k{4Dcx#RM}#=aI~cLQkV!SNH{Q7# zli(u}f?zf#IquT^G>Pzb1v}+1kbBJV{qv+ovtPHgU3n;!1n}nPM%Ot;ph}zPP+Jr) zlHE_iU!WX%#Tq+Pc)nOj-bnhU{%sdW9W0I$2`fdJFkL@Cq;lIP3Bv51*V2`cD}3uN zwCShIw2LE$-ru@|0a#!2#QyD|Hl-=6zaL^^pyj0~$jsFIKK zW67~miw80nO z_o1;@nv|nV!<(|$zV>;kZy2%DR4|=PwT~PZgTD-lXv+*!MP%7&{s_vW_~1v{Hsu=Z z$aX{`UXbTD>fK3yBP*Z*hOkm|&yPRb?C`10)`$k^>`)1^UX|}DCOYo+PnK9`T_>PP zi1wlB)YnXXiMvVwCAA<)dix6w27HWstEhM_Mq);ZMGIXBhUQS=%toBfx^2>Y`l?>7 zgI#@}!hH8!)M>Rjsq|3@OWFg69QJsi#gtTDHWpTw>od^ZnWb%vBVjq5ctE3;o#&+1 zM_V9TKR+bTl}c|Wi*lGKFD_W70atmacVlkoZPEX>uzE(ARV)k=3Fd|fY=Rtey=eL~ zUm4vTu@`@Y3}m--m;SxHyED!I8!DziBUJJgdGdHd zK>8#D5kGu-I$d!Y<`2S8G`6SOZ^x6oYt%+QS|Gb=;N1w=zeHZAXrP98FomJ`52QAw9A zFbSEA+{zgCSSs1~ie{s%2KNX((B{M`HA-jGq=1;U3;&OQ20eP|hk2C3#0YOYlk1E2 zX{eP2-v~f;n+Qp{jKIgQu|93~?h6-Xcc^#-A$^WY8FWs+VReVBpRo8J4kxAK6f3p& zQX@{9-F*lUP6ybchb8mL7NzD{ls~ zNp8L|;#I3I>EL=?303hXgQ#+xV1JV9XOpwyfs}{V=d(Mr-Pl{khL?eJL+U>h0f{L6 z2`1{`Ny7Bu951)`HcF3VX1@*L(guT}(gF{dLywCR7oK9kKS4!(pm%*M(Mx+cNe?W6 z<4bO;ww};x;VFdbhhB3^%&*%BG zBd;B=&sfl9D@mwM{;?RE6UGaB_o5!->Zm=n?(Xnk#5F^H^534O;#h|etIz|kH;Cd zUc|>?d9aJm8=hHN*Mc)jBV^KZTvn{0^lMvlHCpEgpu z3;fhF`g5!cnH^~?>`I4oBb^Czz)sP4VuZMKZ>sxHrQgE-TZmR>Er*&sjIU;8>$h!) zNp4FpqD8|;ZJdwk-F3PHV`mX7Na+|K><>23M}`=er3ZeNjd4j4*<8-5P{PaPx&|$$ z3f>tH|9q2J{aIi+02VnYUv+2OSqBX~G+p#kIN8=hdUzG$=>W%%ZvckHm2dE1|FHeCj~lmPQR00?L?+)zGCx1Yp7Fa#?QUrK zG%`1};e|Iaq!TH~F4rVad(@((H>bGQVn;o5!m`Gb-`=ykZyxFcR$e^L-W!B zpu4Mf=NE?V9nmc<5Vk74A^n6jS_&gNk%lJJYe(fP4Y+@&JfNztYO$fAIq<1DoKK$+ zGcHE0T|pN-w@sg&I=0;=FeQ&=!PK9$B{nCB>t9mZQnEG& znm16v+zSSB1<_iK|7^1Y-f=?$oI1Wc*hzT0$#jH@tT2tmMA9Fc1fz!S8^f%(n_`mR zWerHs*_wG+Me==J)e^+QUj|yP-XcKs81i_MuTSyE1o__$;KK^85Y0q0jOk~O>#f=j z#$hJlz>ixI#!>J)4&MtzzaxE6UT8u+kN;?TwcNlAjO5fl2N;i&!}_XWh0)RQVbK_o zoY62ogQB+`Ed}ml`eO*UlqdXfXZV9&r3^JzQYH)%eD_6r_m8nBI%Us}=|=Sz-fx`m z8Pvs1CUevm!2!hh;V5VbND5Bi1KvFTPc(m43sb(*tM6J$>*ApI6N{RaK_x*Xcx3Lp zM&q?0M2xK0VxvNl*4{}Ov#w!oUZqj*=FvOCy z`p+nC(r~&13Yr`77dgci<1Jtx1auDD}I+b!0sXpb9yMxrF;s-P;-vwb=%n?7Y~1O z0e5!7Y~)-nU+UP@vMBA(==N$t;f ztOG`s2`>6&dsqGZTwcaVMd_CNxbkmiG+VqG_F}h7A~#p(d@VmcU9AfR(pr5-349p0 z;$yG5{e+TvLGRc~3*#9EF8xZ#)1N;03sHys#nC!9FIZU$_sV6H>hdVAaMvUK_C%us z#DdYw1@V%A7>R5g?Aqy7;To?grP2+)(irBM-7n*u=%{L&l6nKP)uy&qEK!FsnDI|2o!SH>QtHwPA&T?n_MEc$kQyST_wyj3)01Nll9 z0lTaY9x=E3eWI)KwmwL*UN_8FI%;pCW!>@5x#gEaS&3V%lREXqx)+~k*WbG_;7(bv z{Ma>AGxllw(w9q+c<48()A=Wmjkd@X`vU>|b$={V*LQ6r77?ioovMxXfsfw0-5nvJ zn9%ovDxLP$@+N(0OB_fynD`envvhdD_p-AHB;d=7S#{0FFA@TA`N%If>J+FLIJ@;X z1Vfn^yKC^zWdBN+vFSthXqa!jP}x(!GE?pPyP>B#wkAs3CjgEZDhudmEXb)CI3{Cy z*2FA+&%Cr_X7~Nip(ffWSFj~v8p z2k!-tA_Snpd;bXYNrxSL?;PHnGQWiT-37kzZ1G`&F{F*4&eLXGaw4`hLju)RdM%F? z-hrws7(G#xdD4?{&(^xJ%26BD#Gn5P2+uhYN6Q*N)ZDAITnE2uDL_Nq3-GMb;Wt;C z3d}FMMdGByB592I&>bFcY2;(Cj{X!O%N7GmRKRqgi>_XnjhEx=JIMR6ZKj~%oX%76 z$<$lH#LR?*;67v=)@Us5rLz{jJ)fc%D(MNm3T?db8bnH)$>4gZ`yZu&gx7u_2NSY=0=g7n^a z;4qRPxz4VZfx?3l4eX*|&47CF;w9o@TlO0iE>@A2d5_Bq7a9;x}V(pKeh#y+* zxX}B5iYH|TtdlGnu?AOe>+M~Ph-SXy!keMHX8;1OkOrDZ3@_TPn>#;tz$YZ!tE0d$ zE|KZoi_8sX27B1j1kQJ_lG}GU|M&)tUTH(2L0Jrs6mieo;oO?0^UV~PqO}#H2KNpO zc!{*avLRuvcZ~mA_b(PLy;J@F>iz$h#(?GfH*(b{x)IWYHznBH&;VH}CCO@Wqu~Dq D1ij27 literal 0 HcmV?d00001 diff --git a/images/session/shield/classic-dark.png b/images/session/shield/classic-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..9726ed823374a2dcf7ac7bff066c6e2c01474714 GIT binary patch literal 5274 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 Zcl(MQSjtMAIT_|4BmGO*3SAfC{{Y0^g604K literal 0 HcmV?d00001 diff --git a/images/session/shield/classic-light.png b/images/session/shield/classic-light.png new file mode 100644 index 0000000000000000000000000000000000000000..9780c124301b1418a5f85248ce376c96ad4a42eb GIT binary patch literal 4679 zcmV-N61eS&P)R*)r>OkM)=YGKt zGa|C-$M>4DNKuh7SMOp}WKQ^9h>G}tnsj3;;v;vG-KL!PRm3OkwJvn`72_jiS7d)c zcXVSsq-AG9MLrJ@w2vJT7t2{=YUI|KN{?+CKljQ*YNW4ue5zjKH$=f-l=kn}QbeTt z!>*^IK6cXtPaAd;bl*V&uVeH8X=9Cx?IR&H;>M(kK611MH_dUXN(@P!eX5Gofjncj z2i0>v9MTBu5ML7F^L5BCoAbFk#+P33bF8`VEW?Ufk)VjFNQgntS3*~eT&jxr7~Oqn zMdpP5MpI7bRwVSGCvL@PP(G4k#mM(n#B25uDl%j>$i=RR8))f%Y-P|$$YqH>P577* z>01-=Q`3T}D@N;jPW$)WkZHi!^^f*qPA04bxVaixz2fsNQH!=L;i^dEk!T-Dv2^9; zHchA%qacRnLq}tqMw|qV#H@^y&}**E>AoSOayHjTT+Ak!GUfC!Dxh}mD{?g;3Suf^ zEq9*6gQonN*w{rWBt%~4vCT8#K`78s9|EiV64J7=6Z;;8jLxn z+WyEh1%b%&6u#H4iqHX(6qwoFImVqkuQ3oY1ClB@QOup2-5CQiHbCYdhfo0lF*Mta zf`nCfFKJqUsR{_l*x@&6U{ZO=&1(94wn5&{wVbJjSZqojkW?+|qz5F|j5k1wngS>?}uoAA~D!)h+-bv9b&4Njm_Qs+<<&CIH8^OBy({P z5CTF#2*?~#Eg`nMKK`O%@|YqZp&qI1-p%(~yNnAs8*M*-N3(~-XwBcIOxUcOs@JLz zl@mja3fUtd-?AVeag91@9un&1Arqz=`qAzrEBmn(a;f^?>i3lA)3c0Fu|4EVQyzDe zvNu8nuFCKPK+27Px6Nr>&);L#CEF-7rS+35CdaTlH84{~B$3nqP#56?ea~L*>3_(r zEkg|Di#ZCJ^E%h=#XsAdT_Nx9EQfM+9T$Qt&dlUIA~Q}Fs1~=S&yFecmG|A zfM{ViWgenICFiLVGiRx*gz7TaECnM(K+Y@$Bb2E+E5Qgk$~X(b2tDk!mAauh7%}pY z)5K~C{#&({imvdiQoNyx*A(njuez()T_$Bf<^(3`2*&OZf&wBEUJpSbK#zf7>=bc=C zy`_tu1YEChLdBANh*?y+_|zFDo^<|x9(agY{>Jr)vm+HljFg_S7fGx!rp}>HuZuo? z-wDt-xrQ03R=%!I%etOwbC9{Sn1ujwT(0Eb@=tcm>lzN`d|2Z`nd*BR8F-)5K~yJT z1t8*(6hva!^|;-ypcm)--CAKFRueuaSQy>9Jxu5x!D6x#p<+IfNF=^iAYs}4FyxoT z+JY)&Kw>SFX^KHKCuff`@||o+Dl;1c$#AW)((nyWW5!w2F@BJt1J+h91aatg5Zpv* zhs(8BJ0ely#BAn|I7H+i+b;T$w(pHmF{eG?Cdv|f4irKdqKBAmmU_fcf`gRqD!I1m zG$#;iLQ%7DsQKJnk0=nxP#!epS44q8q`M18vnwUmi{|EULY5+sxlU8;-RRN<0zL3v z4B#Mug8%{n1Of;|AeX9dx4B%F2ZW~VBz4ScE9)Q#V-TCR(nKHzhSHP3-&usKSkFP0 zdvcsa_-^SN=iwlch7laau!H36)yv<$ii6-7#kh)Q2f114*g#ixo}$q~GzZ)v5QH%V zHR~z05@A@IPA-oo`3VP^Mtj!EyQ(Z40x4@4F(DKw0znwxv*|R?qH++AI5x68&GSiV z4pL%%p?3I5DG;1Op-@r?1Ys!7Q|idVKpbiEl*d{eB-gQ@5NY@c=^!3)h@fqUE7BZ< zp~R@0)QH104|6*R;xO(aa~$L*Vs9T_y~ITj2;d-qKmdUN0s#a92m}xa z00MzNb_`!zuJ=nk0zni*>JVewD~6aEjUw&U#q-L*{vbO>#IZ^IseABVQx;<_`$MB-_+{@E0@3wqk02MPJC#jU1%E!_1?I7qC3BMw6j(hB=L zf{P#uBLX>D8Rt`pq_~@dnv>LZPi*Z6{O%t&~}r46f0~BW(fJe4vn9 zBlZ&oLiU#NO!7uoA&SJ4+#Q!n(5-- z(Ed7xnBNH_0s;NAy{rPsvAyGcg$;G7R0m15y<_*Z?~e+5^%sVixM;f@>N3UJNfgK} zt>bK>x~V)GB&0yTCaSaahjI3+yte~xNfk&+)`=vyQ0`yU;d4fD1n;PGZ}$&ryi$jl z9O4Kb6Sm@x!)*)Vh~*%amEb58Z15OZdT6=yTmMlyNNu<`133u9?vS;{N&^l8LONot zx$+SI5zG`0vQIlkV_`ucpJ_+E?p#~C7|@-h-X+}nI$W%!_D%4jlQK81Enl2LZde{- z5XpQ_OAtuQQ`%Zb$4Z@pkdG*H-MYk!MjSc>f=K$gmb(IV={-a+2i5vxNQ%ip$Vn7* zoSJ|j4lM#fBvo}REe4W?n9_%vc5O)9UMo@sQkqEGCG=B?6_fnPVJX9nlPV7B0x3Zx z;;*k(62v{kfk3vgFytopHC>D3B-LW_s!rq@1)^0bDjiU>K(vTN_0XtYAd-b5c5S0X zfk+dInd!MTfwWw1$|r<@KqNVe*#$l80*NV7-0Ya0|5XG1OQ+XJA|NULOcTTs40IE$}(XQwH&TD zOnmV$whT>x1M210fLU^`3EVjx4$2?HQY!9Xw!01bvB?Lo5TLp+!V!1})NkPKvf zZ~#DAR+2jd@t6m|tp0Pk)C>gU08pNdN^yeH?7_tulBU2gn z0|5XG1OPA)0Kh;100RL4z(4>10|5XG1OPA)04SUtLZE^hO*thD|9$iH6JfwWU^^UO zw4T$I*j#PO2f~7Z0H!g8MJH~&V}*e*H6eZ9$Zk{42N*C$f`OQ4?_%`a1{+I%OE(s` zn(}pvkr2B?@H)S|sR|?LaPBwdBeBdk73MZ>I-d44F8jld=S@${SXaV8%#4)3Z}@Ll zFpj8M?H=L5K(wfxtEv6Xxsy z7zhAhAOKp}wAOT$&|n|{Q_Q1nDGmFCu<9NMA z*O*5Fco!yLdd=oI;~4S+B3Vb`$M<;~H;rMgYt;5N{`L{~H$v;Z?TuHdaR#O^W=&)r zA1^wp#8FIxd0ee{2{9{VAo(+quNQx(6ZCVbDPIT!27-xfp1WEwlIu-*M{_fUfjA~| zy=VI1lt=4DGbcyWM!H#cDi#Ybh`6!!2jR9v%^No1y5nxxiNczhUacm z{tlE4rpQ3HG3GIPGTP}Gs!9W)(PfIM`*NQX)NaR3`2|hMo4#Nmh)Y|$^<^gQ89RT` z#ux}ppO%!+ZheQ6m#VK~41~Qf1T?+@<7YRr%=*c77v>bd__dWqEDC7gO-DFfBI5uukoi0^9N%rD1ABXd>g+>`f&9sQ9e@l( zwUYvnedsli7B=677#-@0!E3!Hr6ReX1F@dkyF#v0LWeplDAr;!_L{(Ooyyt8JTQ6cc$}#%tM@JBpS$jV~ze~!{5)zL}nRBX>Z~lRf%^S8-lbo5X&NPJw|?l zFU(HgEuWn$a+{y;aEV$T{;aJ$dY?ad0AM;IjHR2mDFqZhbHg1HnW9^qYs4DNL6?D%-FBL)q+VG7pUz$Px}(25YEXP}gc8Ev4Mv1k8ge zOa#s=!IR`VLjI@qWOq| z7y)u9wl4N7);GvN$Vz~00|T*)<%7X74ZuJW!nv>MP<1>c1_EQb-IOBM!9a?H zjgFX}U?30-7GO8iZch9MVZcCO7@Yr0mVto)hB5-yGB6Ne$}@ z43qM159<~f2o%J1;? z-77ak+-_cBr7AZ3Y749#)>Kz-Q9t_NRDH0Z1(uFuot{0}8=D(G@T}1N-FCdQv>&fk(OB#`&3<3>zj_KB{cGOo{sgNJ;(k(VnxCYXZM1DWlwk;dwW6wTqf%0nNy z>t7q6g#8)Y&3^qAW%XyNO592b&8yqJ<#>zzf^*11KJ2&s{Wux87r3!gloIA?2Qco)9ZVIeyg4#JBoG;g2yM%Mne(p{!==;bq5vFMhe>Q**?EUt;557zv6hZ&P zl{JuQ?b{}9UzhcdK$>mIuLAq;koCLMHtz@lBjtqP1w9&)t#hM!gGZeOk<8QWnRf6} zJtVfI;V`8ab>l(pgpzGYxWlDrF?nJAh^iW5kB;kL39mwsvy-9!a9iI@s?XqPip{!M z`6x?Z&4xt8g)4XcqoQ!*!TG8(T-IfypOA4IGHn4_o${&8T(`ZIe|c#BVu_O@pj)Oc z&tf-T;Vi){+X}OZ(ci81+sqvOZO;;ORgO!74W(lT=L0kQn!b8ahCgNzxN1?P9ZzJ|sLWwON%Nz8* zwbNGWj|`wJZ-i8!v4hxD4ky!J{=sj$ION|eL@44L%&NGEackMq(TbuhAawglt`&1! zo!HNear8oBS@*=l{+ew$m+iyfZ2UEp^ZabYvb1g?N^I=+2Nk;$K5Lx`O~N0ZZv`s4 z-oI0YkluTFmj~5zK7ap>F_&SJa(7f&4EMdZ(HRSzokFQ|YNCRvokFa0Dr<|WfTAmY z^a<Yy*p=MdJ+|;F*5?)Ww4Hnu8a|h0wU}r4WL*;yqtoiW6 zT>9dT`mYJ^S*n8vFZW40_es6qoR^<44^Hb6(yDNlMibOM_m$PHnTJXU*+Dp-x}ns*CRA3HC^xz+^HhY!H<@_=+CuWTPWyqEtFWv z5UZ!!)z#<2&_lX>bY(_0eU1o8itT`7lEF@vT*n*M&cQk9FXxSS;m+P#bl3z$f!Syy zK%HP_K*5|-ftZjoD*s+Az|#9k+jSgKM0;#)9TnG5=ad8#r@f){m)R$RbE6K0H0*N3 zVJ=(w3aL<4#-fAhk{xYi)_xFJwZJT;Q+c(4NT&)A&~)H`z*rCz42R+=vjVPCwTTz* zg;+@NQdDv_&n>ljKlseEFsdTeym948*kTdd(bSAU0r)s@kAGTxWBl-0(r5ElgHCF{ znyLwBc^)>s{q1tw+x!s;Y*AG)!7%ko_9`Tc43ydNjM)^^4xG5vYqQaf+~Jy@xtzOn z`PT!5#5cW@mAW$W9NmSx#zPcUX?0%Q5{CH8Obgr1MUJCIl)5`Qw&We1w{2|>qn$5_ z>6AL&wVDBj3$agPPWIDi#t6-QNsV{TEVm`8qh$a7pz-)-L-Q2XmYGfKe)yiu_dm}I zuBzFH+Q0t*=j~061Tu}LeKk(h_CLN2(O^tIccD!>6BrT*TjG|}%~6wh(WVjdyY0!W zN>dEabCY@3vH0hc6XU@fHwH5x0k`-pcZ`CEykcJ@tsb{Ec~pIleqpFGTn=<)#@0V0t2qo!`w72;a|zyl0RCnF_i>W80| zXFZNhUEfgtes6vjz?=syc!CAzZa>aBax!MmjkwIsh-I>dTD|cH1_G&IY`l3!La|yH zg2qRb5n~yef9#bgbG^3D&SzeeDJm2!1yDV2FM0;IPy}a54o1g8(pNde3@UF6(E-Xp52tVlq3tNV+Hc*7;C4RX$xZtQajs{guC4#Z|$f zPvqQ$#@VHHsuL}Tq9s4WX@QRRFsCO-JM%6Dtl8YlAGwmNFsIPv8tsB?A!=zMYvzvB zH-@FdBHN=GGnfMZQ3TSLn=T^lcJ#Ao^MWz}M*AwN|HV5`8v%7<67KI_A8SPvH6Fa( z*-A?Q%A&6p80%%Jh_PY;9g_n5GezO6DKeAc6jEn05^Kz4E_x`gp;;jWTiJRh&bi{3 zSlA@!@Q-IO+(LU*vNvq*g2&NIFN0%co`Ova_{AUX29SW3uc$G*2Ib>WfzD24G*iJRzG%$_j(!)hXms$rre& zkHhai>4@j6w;H+3GdXfC%5PlzdLdDnI%RjRujZ;XmTIch}8f?ekH(Q+YMyovb8|Ll{eIPH^+F$x#`v+XQEzAk+ zp7DKc@u%$Fn9SMLyGa0*IrWK-cz-FX;K^N7u%X~x z!1o#$T_5(AY|lmRbGie6W_a_(30|t7I-J6e`tL-#=PA{tuf$s!E>_5Q*ahA-$x7Q2~_qt5?nM{dt#DyUskqB=0Y9%TuYY z7&TzH@GKG-y6Kp| zRG_BD9gV?~QalKqPHO9&e?|Xrk!1d4!;y$y&Yu8?7E+n zoBXE7jk}&Uq2a2rD+e<_;AaSUzaM!3GvS(t7oWg+3-OH3>pEtyq_>NOV!;$lD)yi0 z0dJi79af@Y(r>P~$4d+l!X5vrH&lIMa)c;j7{YaIhd;gb6&k*5MQR;!NmHYw>!-FE zJQ9M5HW}pGd(}NR`CgZ+)mvSd!C%2(0wKt>{%=O8B>ITUSAPo=eje)2o`o*19W>Kb z(1x#zR;#$=h)~T7EE7uy*=US}O8S`+hJr_uIe~m#2s|HA(S6o(I!F85wb`?{%{MQ@E=nAD6An*!CDle%kcGj3<`jMR+L?xH@(jKo0xkN}s-5 ziX@Xc2Q`6&vcD?a7Nm-G?4kz?HG}X{FxY##5h=+M#-}0xo|`O5_unz-|5>T>4r(C{B>2p0gd_!0WA>YIl(+ZM#z6%Qov*cmM8|~^lyQm zn(5`m^qhx67eO8O%u>xUa2C+b2fdSv{tR!A3eT77b67YHa?==T-@amxxDguHUQYL%n(oMG9dt`d^vo ze|>E#_m-6TBYQmzalC((bk9aa^xz^w<=u;06>ni`{aLY#+bs60j~PXPHQqh6hTU>j zU2X}w-Gr64sW&Zw+J`5TB25%+p)jh)ZuE3d#PR*5yfWc{=nyzOS?F^b=Jyv83;-O0 z4)|%yOsrriw6gQVl&U)DzrZ?1f~sXFg9JBE12jY=)5ZQcy%u!>mZctSOFi!0q14Lx z`?G~NU$?ef%CUM&Jo+`HW*5jM&OFthC)--0@=oOniz>O->KV;?Iu64IyJ=K7(dEz5 z+1`F#pEl3_;>I7Q+0jUTJ-dK*FSUwp;vj`I&e^9aggV4PQ?IZcTAp0ab$~Ze{&&&; z41_}69kk7b^@Wp?U)8CYBH?aowe3E?pEhcK8v%b=+PG|4v&Vehac7lxV&ZV{bFC)W zYgRtUHEM5oAs9y8)Dav*6n+86Fj7IGO_^XY7Nfxa>FCo~meeieSn$xeYo)EkqI!4? z9SjB$#>LcYM>-!`Xkl*ZSozU`BRCMf@{(=}AoWCpf6Hr30%@pOmw7o1`=je2s>y^~MgyG(ku!e(g@t-^KDu`iurO>{-S zP{VJR>7I;ohXFv!fLRMO)o>%@-c=nIu;clbT8}ulxwy_8gFaOYGc9P%Q?8i!_nmiE z^pt9jkNa+Ot@8FA?9V-*+kPqTelQ*aH3>qwh&BmA?f)>E$KfYhPo`Y`jv!juaYk&1 zdy)sc+-F7YO_8vF#L6l;edX>%hb%chYBCidEf5>mjCl&cl{$jF!YR)nGmSGIU!d#;>r)Zg#Mg_J-4{RF7b$+^5=DJeDfE~4 z)>IpOW$p0DTKM7GTjI=NmbfnI*-%xbn`24RJPU5vm9)^F5;MKnGTRbZ&vMC=t_XuT zIUE z0#KQbp^QK2B-vq13_Z15q{T(sIT%bBl0em6==ubMX+bbnW8PV(kOsNFB~C_#E^mLF zW7LcM0f-7dl>@$EFjO6~*rMg#Vkw9g8iIL9)Ghz3IGxk=C@mdehetu-w*kQ9lQ9aT z0#BJ%VbY;!9IulA literal 0 HcmV?d00001 diff --git a/images/session/shield/ocean-light.png b/images/session/shield/ocean-light.png new file mode 100644 index 0000000000000000000000000000000000000000..5920d96f5211a479f407affbaa2a444ded300a5c GIT binary patch literal 5342 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 e{~LYKuS;XMjym4X>Rty { - - - - - - + + + + + + + + diff --git a/ts/components/SessionQRCode.tsx b/ts/components/SessionQRCode.tsx new file mode 100644 index 000000000..ade25f033 --- /dev/null +++ b/ts/components/SessionQRCode.tsx @@ -0,0 +1,69 @@ +import { isEmpty } from 'lodash'; +import { MouseEvent } from 'react'; +import { QRCode } from 'react-qrcode-logo'; +import styled, { CSSProperties } from 'styled-components'; +import { THEME_GLOBALS } from '../themes/globals'; +import { saveQRCode } from '../util/saveQRCode'; +import { AnimatedFlex } from './basic/Flex'; + +// We fade in the QR code to hide the logo flickering on first render +const StyledQRView = styled(AnimatedFlex)` + cursor: pointer; + border-radius: var(--border-radius); + overflow: hidden; +`; + +type Props = { + id: string; + value: string; + size: number; + backgroundColor?: string; + foregroundColor?: string; + logoImage?: string; + logoWidth?: number; + logoHeight?: number; + style?: CSSProperties; +}; + +export function SessionQRCode(props: Props) { + const { + id, + value, + size, + backgroundColor = '#FFF', + foregroundColor = '#000', + logoImage, + logoWidth, + logoHeight, + style, + } = props; + return ( + { + event.preventDefault(); + saveQRCode(id); + }} + initial={{ opacity: 0 }} + animate={{ opacity: 1 }} + transition={{ duration: THEME_GLOBALS['--default-duration-seconds'] }} + style={style} + > + + + ); +} diff --git a/ts/components/basic/Flex.tsx b/ts/components/basic/Flex.tsx index 650e66982..3912d82da 100644 --- a/ts/components/basic/Flex.tsx +++ b/ts/components/basic/Flex.tsx @@ -1,3 +1,4 @@ +import { motion } from 'framer-motion'; import styled from 'styled-components'; import { HTMLDirection } from '../../util/i18n'; @@ -58,3 +59,21 @@ export const Flex = styled.div` min-width: ${props => props.minWidth || 'none'}; direction: ${props => props.dir || undefined}; `; + +export const AnimatedFlex = styled(motion.div)` + display: ${props => (props.container ? 'flex' : 'block')}; + justify-content: ${props => props.justifyContent || 'flex-start'}; + flex-direction: ${props => props.flexDirection || 'row'}; + flex-grow: ${props => (props.flexGrow !== undefined ? props.flexGrow : '0')}; + flex-basis: ${props => (props.flexBasis !== undefined ? props.flexBasis : 'auto')}; + flex-shrink: ${props => (props.flexShrink !== undefined ? props.flexShrink : '1')}; + flex-wrap: ${props => (props.flexWrap !== undefined ? props.flexWrap : 'nowrap')}; + align-items: ${props => props.alignItems || 'stretch'}; + margin: ${props => props.margin || '0'}; + padding: ${props => props.padding || '0'}; + width: ${props => props.width || 'auto'}; + height: ${props => props.height || 'auto'}; + max-width: ${props => props.maxWidth || 'none'}; + min-width: ${props => props.minWidth || 'none'}; + direction: ${props => props.dir || undefined}; +`; diff --git a/ts/components/dialog/EditProfileDialog.tsx b/ts/components/dialog/EditProfileDialog.tsx index 5e18e5bfb..b28a265a4 100644 --- a/ts/components/dialog/EditProfileDialog.tsx +++ b/ts/components/dialog/EditProfileDialog.tsx @@ -1,7 +1,5 @@ -import { ChangeEvent, MouseEvent, useState } from 'react'; -import { QRCode } from 'react-qrcode-logo'; -import { useDispatch } from 'react-redux'; -import styled from 'styled-components'; +import { ChangeEvent, useState } from 'react'; +import { useDispatch, useSelector } from 'react-redux'; import { Avatar, AvatarSize } from '../avatar/Avatar'; import { SyncUtils, ToastUtils, UserUtils } from '../../session/utils'; @@ -13,35 +11,33 @@ import { MAX_NAME_LENGTH_BYTES } from '../../session/constants'; import { getConversationController } from '../../session/conversations'; import { sanitizeSessionUsername } from '../../session/utils/String'; import { editProfileModal, updateEditProfilePictureModel } from '../../state/ducks/modalDialog'; -import { saveQRCode } from '../../util/saveQRCode'; +import { getTheme } from '../../state/selectors/theme'; +import { getThemeValue } from '../../themes/globals'; import { setLastProfileUpdateTimestamp } from '../../util/storage'; +import { SessionQRCode } from '../SessionQRCode'; import { SessionWrapperModal } from '../SessionWrapperModal'; -import { Flex } from '../basic/Flex'; import { SessionButton, SessionButtonType } from '../basic/SessionButton'; import { SessionIconButton } from '../icon'; import { SessionSpinner } from '../loading'; -const qrCodeId = 'session-account-id'; -const handleSaveQRCode = (event: MouseEvent) => { - event.preventDefault(); - saveQRCode(qrCodeId); -}; - -const StyledQRView = styled(Flex)` - cursor: pointer; -`; - const QRView = ({ sessionID }: { sessionID: string }) => { + const theme = useSelector(getTheme); + return ( - - - + ); }; diff --git a/ts/components/dialog/SessionSeedModal.tsx b/ts/components/dialog/SessionSeedModal.tsx index d0411ff98..59f25b304 100644 --- a/ts/components/dialog/SessionSeedModal.tsx +++ b/ts/components/dialog/SessionSeedModal.tsx @@ -1,9 +1,8 @@ -import { MouseEvent, useState } from 'react'; -import { useDispatch } from 'react-redux'; +import { useState } from 'react'; +import { useDispatch, useSelector } from 'react-redux'; import useMount from 'react-use/lib/useMount'; import styled from 'styled-components'; -import { QRCode } from 'react-qrcode-logo'; import { Data } from '../../data/data'; import { ToastUtils } from '../../session/utils'; import { matchesHash } from '../../util/passwordUtils'; @@ -12,10 +11,11 @@ import { mnDecode } from '../../session/crypto/mnemonic'; import { recoveryPhraseModal } from '../../state/ducks/modalDialog'; import { SpacerSM } from '../basic/Text'; -import { saveQRCode } from '../../util/saveQRCode'; +import { getTheme } from '../../state/selectors/theme'; +import { getThemeValue } from '../../themes/globals'; import { getCurrentRecoveryPhrase } from '../../util/storage'; +import { SessionQRCode } from '../SessionQRCode'; import { SessionWrapperModal } from '../SessionWrapperModal'; -import { Flex } from '../basic/Flex'; import { SessionButton, SessionButtonColor, SessionButtonType } from '../basic/SessionButton'; interface PasswordProps { @@ -100,21 +100,11 @@ interface SeedProps { const StyledRecoveryPhrase = styled.i``; -const StyledQRImage = styled(Flex)` - margin: 0 auto var(--margins-lg); - cursor: pointer; -`; - -const qrCodeId = 'session-recovery-password'; -const handleSaveQRCode = (event: MouseEvent) => { - event.preventDefault(); - saveQRCode(qrCodeId); -}; - const Seed = (props: SeedProps) => { const { recoveryPhrase, onClickCopy } = props; const i18n = window.i18n; const dispatch = useDispatch(); + const theme = useSelector(getTheme); const hexEncodedSeed = mnDecode(recoveryPhrase, 'english'); @@ -142,15 +132,21 @@ const Seed = (props: SeedProps) => { {i18n('recoveryPhraseSavePromptMain')}

- - - + ) { return output; } + +type ThemeKeys = ThemeGlobals & ThemeColorVariables; +export function getThemeValue(key: keyof ThemeKeys) { + return getComputedStyle(document.documentElement).getPropertyValue(key); +}