From 640d688df302a08ed3d271ee39e695ebb6d98fbc Mon Sep 17 00:00:00 2001 From: Ilia Date: Sat, 28 Nov 2020 05:04:44 +0300 Subject: [PATCH 1/8] Add show image instead default marker --- web-client/src/components/App/App.tsx | 2 +- web-client/src/components/Icons/Icons.ts | 15 +++++++++++++++ web-client/src/components/img/image.png | Bin 0 -> 39335 bytes web-client/src/components/map/Map.tsx | 10 +++++++--- web-client/src/index.tsx | 2 +- 5 files changed, 24 insertions(+), 5 deletions(-) create mode 100644 web-client/src/components/Icons/Icons.ts create mode 100644 web-client/src/components/img/image.png diff --git a/web-client/src/components/App/App.tsx b/web-client/src/components/App/App.tsx index bb248b8..113f866 100644 --- a/web-client/src/components/App/App.tsx +++ b/web-client/src/components/App/App.tsx @@ -7,9 +7,9 @@ import "./App.css"; const App: React.FC = () => { return ( <> - + ); }; diff --git a/web-client/src/components/Icons/Icons.ts b/web-client/src/components/Icons/Icons.ts new file mode 100644 index 0000000..6deff3b --- /dev/null +++ b/web-client/src/components/Icons/Icons.ts @@ -0,0 +1,15 @@ +import L from 'leaflet' + +const iconPerson = new L.Icon({ + iconUrl: require('../img/image.png'), + iconRetinaUrl: require('../img/image.png'), + iconAnchor: undefined, + popupAnchor: undefined, // new L.Point(50, 50), + shadowUrl: undefined, + shadowSize: undefined, + shadowAnchor: undefined, + iconSize: new L.Point(60, 60), + className: 'leaflet-div-icon' +}); + +export { iconPerson }; diff --git a/web-client/src/components/img/image.png b/web-client/src/components/img/image.png new file mode 100644 index 0000000000000000000000000000000000000000..353137be33e310897fa960f3cf81fd8117dfa184 GIT binary patch literal 39335 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
MK9et|Zz1*7@flFNE=6M5X4_0rB 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 literal 0 HcmV?d00001 diff --git a/web-client/src/components/map/Map.tsx b/web-client/src/components/map/Map.tsx index fab8085..1135983 100644 --- a/web-client/src/components/map/Map.tsx +++ b/web-client/src/components/map/Map.tsx @@ -9,7 +9,8 @@ import { import { ApiGetPositions } from "../../api/ApiMapPoints"; import ICoordinate from "../../interfaces/ICoordinate"; import IServerResponse from "../../interfaces/IServerResponse"; -import "../app/App.css"; +import { iconPerson } from '../Icons/Icons' +import "../App/App.css"; const MapPlaceholder: React.FC = () => { return ( @@ -58,9 +59,12 @@ const Map: React.FC = () => { attribution='© OpenStreetMap contributors' url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png" /> - + - A pretty CSS3 popup.
Easily customizable. + Easy
diff --git a/web-client/src/index.tsx b/web-client/src/index.tsx index d232edb..4658287 100644 --- a/web-client/src/index.tsx +++ b/web-client/src/index.tsx @@ -1,7 +1,7 @@ import React from "react"; import ReactDOM from "react-dom"; import "./index.css"; -import App from "./components/app/App"; +import App from "./components/App/App"; import * as serviceWorker from "./serviceWorker"; ReactDOM.render(, document.getElementById("root")); From d01d9858347718d354bc9846b25be2404ab75879 Mon Sep 17 00:00:00 2001 From: Ilia Date: Sat, 28 Nov 2020 05:31:16 +0300 Subject: [PATCH 2/8] Close device block and styling --- .../Device/Device-control-panel.tsx | 5 +++-- web-client/src/components/Device/Device.css | 21 +++++++++++++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/web-client/src/components/Device/Device-control-panel.tsx b/web-client/src/components/Device/Device-control-panel.tsx index 8f620b5..4772863 100644 --- a/web-client/src/components/Device/Device-control-panel.tsx +++ b/web-client/src/components/Device/Device-control-panel.tsx @@ -59,7 +59,7 @@ const Form: React.FC = ({ submit }) => { onChange={handleChangeIMEI} /> - + ); @@ -74,7 +74,7 @@ const DeviceControlPanel: React.FC = () => { if (open === false) { return ( -
+
); @@ -82,6 +82,7 @@ const DeviceControlPanel: React.FC = () => { return (
+

Close

); } diff --git a/web-client/src/components/Device/Device.css b/web-client/src/components/Device/Device.css index 3de36d1..9464a0a 100644 --- a/web-client/src/components/Device/Device.css +++ b/web-client/src/components/Device/Device.css @@ -2,20 +2,37 @@ background-color: #fff; border-radius: 10px; bottom: 1.5em; - margin: 1em; font-size: 1.2em; + margin: 1em; opacity: 0.8; padding: 1em 2.5em; position: fixed; resize: both; right: 1.5em; + transition: all .5s ease-out; z-index: 500; } -.Device:hover { +.pointer { cursor: pointer; } +.Device:hover { + opacity: 1; + transition: all .5s ease-out; +} + +.Device > p { + border-radius: 5px; + margin: .5em auto auto; + padding: 5px 10px; + width: max-content; +} + +.Device:hover > p { + background-color: #eee; +} + .Devices-list { position: relative; border-radius: 4px; From e3d30c92a841a6f1be202d22e2ae6ba4e87ed2f6 Mon Sep 17 00:00:00 2001 From: Ilia Date: Sat, 28 Nov 2020 06:07:52 +0300 Subject: [PATCH 3/8] Image by url --- web-client/src/components/App/App.css | 23 ++--------------------- web-client/src/components/Icons/Icons.ts | 8 ++++---- web-client/src/components/img/image.png | Bin 39335 -> 0 bytes 3 files changed, 6 insertions(+), 25 deletions(-) delete mode 100644 web-client/src/components/img/image.png diff --git a/web-client/src/components/App/App.css b/web-client/src/components/App/App.css index afc3885..20d20ad 100644 --- a/web-client/src/components/App/App.css +++ b/web-client/src/components/App/App.css @@ -1,22 +1,3 @@ -.App { - text-align: center; -} - -.App-logo { - height: 40vmin; -} - -.App-header { - background-color: #282c34; - min-height: 100vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - font-size: calc(10px + 2vmin); - color: white; -} - -.App-link { - color: #09d3ac; +.leaflet-div-icon { + border-radius: 50%; } diff --git a/web-client/src/components/Icons/Icons.ts b/web-client/src/components/Icons/Icons.ts index 6deff3b..aed9696 100644 --- a/web-client/src/components/Icons/Icons.ts +++ b/web-client/src/components/Icons/Icons.ts @@ -1,14 +1,14 @@ import L from 'leaflet' const iconPerson = new L.Icon({ - iconUrl: require('../img/image.png'), - iconRetinaUrl: require('../img/image.png'), + // after delete hard-code url need delete image using link https://postimg.cc/delete/L7RpR42d/1ebed331 + iconUrl: 'https://i.postimg.cc/TYMXZ8qJ/image.png', iconAnchor: undefined, - popupAnchor: undefined, // new L.Point(50, 50), + popupAnchor: [2, -20], shadowUrl: undefined, shadowSize: undefined, shadowAnchor: undefined, - iconSize: new L.Point(60, 60), + iconSize: [50, 50], className: 'leaflet-div-icon' }); diff --git a/web-client/src/components/img/image.png b/web-client/src/components/img/image.png deleted file mode 100644 index 353137be33e310897fa960f3cf81fd8117dfa184..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39335 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
MK9et|Zz1*7@flFNE=6M5X4_0rB zGe-_Tt|bb3Ak430Sp4)(mCG%zSBGT+w<3SJ*6!aR(5rQ*8Zlact{?3J2}5d7v@n+7KmSV?aBzV%OWeDX{q00bf}Bgvw`!NT|!zdI4M1J0mnF za!X3s_^uCXWu4nIK+Sdv0+OA)W%+9lRLxz`G!mFKx^|?-q@l}A!5oA>|0o6sSa@%h z&%*EnKdqh|>-m#=?6Q`pO%+d4K>-T}aRY3mxB1~7L!a6`orI?OgrVp-fC{K98@T`v_Sa6Tzkyk(-li*D3{;)sNSJiaoHtNZKXWjK^c+GHoAW*ww zlRqrvmsT-p6L?VLzKB$6`0F?ZoG*e`N=8scRE(5)wFUaeFZ7m7@3>m`(rhPyocrG{ z7p5N(P1P{{4}x94G=IImMAVjEHO&(<-hB^{E}i1L&^r!_V&M@bzhuS7&d@3_v^Vl{->?*h6Q;8I*#wLoq%TDQpW9zUtUNYXWN8(eC;)R1michJ9yC**F`&}GTL zLK?FR!dW&4XD1o-jeNb}g5H>MS^aG?%uBPKi^%BeSyuOT-QnJSYe1Y!HfWHs__!$i z;?O83>bHX>)=pY12eR|l7xT>YKZ_PH?Or7`!G^lFfjI`g8#IR$^fis=+gp;+X-2&k zZhmr6i1^GZ)i z$7we`^Nx}48gO8~HNQAkCF5(TOb^Tpb7coKC8@c|2`ZakDAxh%xVw)G>wiXSN5WT> zNtWpZ7IdEDY%MMd_c&_ohF#co}@@3!hCrFix(8DGTicBrx*mf+) z{-&$%zQJtjtjEc?9^(IHd%Sc1S>w@q24@oRQ-M>?O*wcn@rHp-nN?{@^^s2(RHsk8 z3h2?`&mUc|lIADGdTD#R6W1Y#MZRTc4P_c+(PrzCT`HE%u5mt=0_Rv8PZ6oY-0ty> zy4Dg^cO*80VxJPBAsx-I42G4zSwC4H705e~Lbny)5)2ANehvj(e&e-(9%TJ@8D1!& z%`>E%8E^TGDG=%-EW`%d$J>~9K+|prQqISk#Ke`>q6u0MTutzxGwGhhL8 z5Ol>^A6za3JZKwu5LVWRcU!>+Wc&1?!!L}Jf1V<5k5=ZZRg+++##i2DB!)Bz_J0Ap zYB8LHc7L3ccG->nDtGBc#fUQOn=C|Xa9&l3v^*`Et}FVtLE&ih!Yui?##GKS!n0S% zcy<*h%X(x4wvLE_%XibDzk=l2XvaTXnzy zs9{$ybVCoj{(O%HlD;wp(zlH=Q|-pFwxWMtN1{c?42sO$sh(O)FYfcf*K($GhYJ|- zCGFkVzF!v;z`z9xi-?NF6e*_p$-xoi>TL1=1d>}1JrvFwTd69ZXo%FF;;)-Wy8hd)}mTK@15hr8R9uQKJ8w*QGQ_iQ-osqxAn4I>y5xpUXUkv!% zzt>puvDr9eH}km1_Aj`+BFy;{?sW4ZD5l(71jaUpEdt?*iv zM@C<*Bl-fuHXa5`&n%_&+GfLCkS$Y(7z*ZB_w44hr5R^rZGkNBvz6*!_Vq0&#(5RX zVJ^|d-p^1Of{D=~0bgV{fFKOv)U|ei!oEX3oT(UkIZ-6j-$HTPVSzXR+}uh{ybzM9q>3xeTfPEbciDi z<9m$|9_Z6FmyfeOW4@GC0qxb!Cc1O6mOzq5G;g$+6yO@7rhKj}Il{@Zb4D(}dH&Bf))O2lUJ1N+2^qb0q6s z(16>r_0e+f7-ZceQd76q8K9-{YK)+BsAZt{DT6oT_#Tr65Kp!-E7)zEgjy7B1DXK8 zLoW{2ZadpHd_gH^G2{7OoYV^~2s`!(l-0&*W1qu61oOQ3Z}+%B);%Fu#~ZA>4aBE~ zTC47N4u7dbD=Ah|Li!3095i}|Jc z-q50r_|qOB(l}heQyq>SQPqH33?4kd^lD`b@@i5f?DQ4@lOB1s-nw`my**0jm(e0h zs5N+rnBb{h7B=w1+6cHcZ;^zMfJ-ggc4+S@QkI{wwpk{mTDuHHf@ zRnMSq2)8#|Z8uja6K^K^HMRW!dY-TAfam>GTetZEVECbtd=Upft4|3vRxfO(8DKWi z%$A@7p?j^5BSk@b%uAuKdwP}%&U6-B561Tmzj{FPNJQIoN^z;d30HSq@x@I2)Goy+ z=%(M1?56^BwK}wd-dd_yfSNixf1KnSpfdx87FuI#pAY+=r%xSSdR~QVf5-mCW6Q!% z7R%qC?|F{;i7^=BLXAqXhiID!xPo4a^~xB*)wRN_sOae=}Pl=R%}^HY|2Dz*|%?}&!r8#JlnB1AUL9^ zj30ssM8o#yzGDu2Z*y{RX8y%E6hF83==AaZO8S)L?)Z@l{AfbQphw}3ScctOacQNe z(?<3-7~#R}(?u3TR-vzuCrPt3U$FIv&XK*0RPw%<`KcrmA$A9oGH!>8Ol;aCSD}GHx34VtJ`F-zbUg$3b zgR!8zUkk8Tfv|l>{@wGMREFAv%Ex30bBEagd8R%m?~7z=Jm!L*0-wZvgLCTk}LfG`ln^oc;vqGPE(nj7J1*nW~HBOy~BG;xteN-G09$@!B05f^#T0O znHcdjw473v@8_2TqL$xwhK^lQc4tE~i@qg{sEG&#g<^e1RLZD09k$`kJW#Y5ZYi)# zHdj8k9@WvwtI$SiuV#t@^3)Wp~_T<6G52CqhF7>ko-8l00f{T;l>OSO2!ymy&-Ya zq!4OCZrfvEcC=|#?RiX-elb0FSEE~@92-rD{-tt@CZF^Q8FHs*i-D-hu!h9%CMKl8 z07$f$Zf^Zg6nG*Xtv&>yFLxg#v&cJQM-ZycVi(5k`L+sI8TfN;Fc$(>I|KL~o0xe| zN~PUyVd8%`CWP1COGp`O;><-v6=>ds=#8&Pmo3xr8hJ1R>d1=bJ=5rZ6umku6f2qM zRp#vhlbW^8V%+Ta8_95EK-5t7e_u1#7c`7r1uMI-dEJjG+thg5+#(R+Vw}&-%@1#$ z_Q&oy6$KH8db3LrTYgB?a#po`XmN~gtWp^!6w-WCFdnZs)i{8(*#4G?Doebf=*_ia zU}bXim>yEl-D6{TFKzP0NBg8~ZjMEHnlxr`zFk`IX@bi#caR>fS(VyG=$@#~Vq3cT z;sw&1_vu09Zy8ZsQ$RR@{qPK@Jio5Wz4lTHFQQLz(^GREraL`9-tn|c0SJCFL}6zu zRHcEmyPAVCT{~UF8^OG<+Wz}K?#TTG?Fv+tY>8M}68kznSUHZFGogz1@O|C65dc!p1(>S`+{OcL5}q zEeR}}lUP2@o&@XilHJAik5%6zTuxKXhI##lBPe@o@kx99aJ{K!cb!wF?UH@n$qSyw zT>oWP61*x^)8r5yGl$>{1S2Cvyfa>bS_S6JVNrfJn|oC^{9D4~$Vn*O}X6cwb`Z4j{%jk##&CK>r%9>-n_1_Lfl zS&0weW14;-&jvhHvKmn7=w{p_$s*Q3~SQ`PmiP*O(%6 zkaVuE+q~7A)_$Qq4ijC#S_lQ14Ipmlccy8X*)uNO-QnuZtJjC3WEmLRWL4j5o#gN= z3VsB>==`at@w!l~{`j8@6rL+f`#gfkRF_M8b%pi+Xu9rrxW1>2#j1}!IAzBha^jN(|*+dCpi9|1ph!zAne7|^K?iHp4=5aXY zUoPoiiJ?R%K9aTRu+KM&7}Ezg91;R>J+kB6+%S$H!9}FVI>qbrM zpfw^sJ|P=JZk*<$cB{nVkx;BPtE=_fc5w6gSE2x?!#`VT^rQJfz~qqDXe0Ic$==^> zk%LMx-e(VXG7x0s;xELIVf#6^tVj>AXrrP9m-ZPQ!L+bqlRl0bbLdv&w}yF6LFK50 z8H@qx?>FJ^PvXkOGG-1dJkTf=G|@*rl1?1++c>X^ucQIs)6)^}wpccar=W_mWN(>L zW#+Od0}nk0e#@|I1esR}U4_#R#9MsyX)9U@4Ft!nj3lt-1D!%Lw<95&R0PEzLyp5k z81eXcSN2ExXe{@>+4G$fIF_G>uh3x0O)yK5qxyS};qTJB?z;@D40D@L2-Pe;ehDm5 zg{e}>sJr6p2;)jiq2>WI75wg6un3r%7nfZ1J=i@5LBhHjJU=no_}NqCnT%4`;?J)I z?w-#-lzjDbGv!%c0mKtzerfL1K1T*@F(g*(7#0v=mXm;O$AX|eLwxpV260h(e-`Cp z*M7*pWS(s@y z?ieRxnR%d;|27&ME^g!VY}eOS946B*)%u~r2aSjxkldZ4P-@9Ty_%~WOmM}!s;|O| zxCRchjNTa$?xz4je}Oq%uyRe;hq_k#*rDDJ5srL=3Uo)FzFOtZIZ!0O%`#Q5E|~0_ zL^KeP2#m+Zo^8xk8~c0@-SNkT5owY0V1C}0pMKN8KHWI>Yf48>@8b~xg#fV9i*f!pQDPP^^wBXX(*^bE#om3ECq+A?Pd z_arK>!@T}s87jKrrcGUIRU6wn&ZY)%mm$unm~S$#Cj6BAdwGMP-%-wQ%yHCiJ0ci;BbMw}OYQ-Mky6ReMT z;DD7H&e}_;D^n*|GDUeX4TN5bbJ;y_%%HHYVCO|tvh~X^bsFW#@(}p}n-xg}H%H$f z6D|A;Sr03zAgOHn9la#oZ1c(=v%6bN^bPTs3U3lxXi6H-M#!6DpP`<~Ik*r1hJ@Ro zl(U7jX#C5P3elA?7yK1S4fN>2|ECULK8fv zZl)_~&w1j#(41XiVB|4Q4O|@H=uxCNNH65AjU;mc7-skv@6;g+n3}_)Ih4&#Wk3U_ ziBd0xdVl*a*VEnk}lo&R))HuU6RL-1WS>OTrcTG{pagFGF-)A zXO|rIV!4eMP96?>e>`SAvfFT+673+7t+9O6jX|)0l&@D=3Fl_79j!$_l+%3{+E5xu zTW{L+@7*UWMQJVjB5~jNmRSO=kB}TxCH(e4X*m!vknO_N_g^H#O0%Lts`%q%>=4t1 zi*u3?hiXtU^6y83`>TE$Xk&&bw#L_HKWJ7&GSsE3yq;Nb=nqy42Up9LRMa&fnUJKb z&h8#77|m%T6ZpNkTj4R-;viLKz{@}N##J0iZ$@)n$Qr-N>2#TVxyRq;1N&qFUGhSz zO^BEXG6G%pJfb?Vd+UhB0TCIlD-ow+5+i~)3H~g*FL>|uFX=_hN-?$0DGdpln+^=m zFoEELPlBKV;)sI^c#KBgxMJTCEd!=7#+9Q>wCtNRr|E)hvLLN97$H%ay_lU#emT(DQcJB-!OgO)L{Im z-PXg?Bh}5*!@*rC@hMC_u2p9MRMHe*j*?X4`p+(PRWFk3UT<6&LlLuq^{*YAK+Xd$ zcF!3!zJF=Y0fqnX+E#+_kKsZ`gg^;|L6vp19B3xAlrLe5xuK9o6LJdw_Tz5yuxEDK z`ym5(yG=qX__xrJtw%py$QSGktjTdve2lr>RuvZddht`k>(tEW9=v*J6kUCxdQ?vT z=>v$(wkR1_<#*k3_t}5YX_Fc+Cz(*0R+;9lJF0$Vp2}kRcvyDe=|Xl$M^k~-1xS@vXClvWsNxC-m_(;D@ice`wp z5k!A_mdX|~QKTyPxim5C+cod;_RdZU~ZA+Pu9Tg{n%la|NSSm|- zV+n0wm>3PvE0s*cP{DN zx_HR-&9B6*`!4c5V4wO@=eG=1F<3;Jb%!82_QNL%LL)bJIR_61va}d%7x1>8=rU+= zDsgrzPKM&ksgSzhVilCnQeHKfna7=W`ydcU}Z{ zXLT-;Kg?o?OCZ_@68ff7z|f~tU!LU(1CexVfB>PQ4ZFv3YGzN|9sdIyUk07<_Z=GD zbf5L$cEE=lh6m>e0F!PG*`5&uaPe=3%^T%W)*RwgQI4DN*{G?!_R`Y!oYn)a*N&kK z;WX-FtIW}cU7$Y)6+X#`=+VU^P1A=|9>l)a;9C}kT2e?q08+{>+V7;bJ_N76%K?*v zIY!3dJz6w+(!^oS&ZCb_<}M3G+n7@b&l z?S<|b9P{VfEvkAlq$(UWf?UN2izj{^fKRDkO9+Oro}1;~{nu-|UU-w_mkV%KlqK+~ zh=`@U6!LfboNYMQK(gVXz}@3-w|I?UVXt1Uw>^g7RK50wPv|UK3Y;&9j}0(5_SVOw zZX|-}4FgyFbM2Q=fX|m$!BkPNr)3|+V6ji089aNw&X0*VbVAcdn0RTz!VJ4;x~Q$> zd#VotQ)yTmO>UUHKU*4}9{}tVzWyOU$rdl^Y8Uw*0vNNLtKS{Qdh#Bif+#VCMgGi`jv>t8}B$YA|vtbS>) zZL*<+92IIC*n^lyWmZW>wX!?fN|!=Yq?wV)GA;81%Yhmwjh7#Q7Kq_^ZRp6s;4#7~x5g>!n zF|Yu%jk?$oJOD8Daca}+x_ex5fB@rtGs#SqSs9H`+lj8+xzD7jN@IaM1Tu`Az^aFrl z?{yzY+~;)H2i#lNOuqVuoK*F9E5k0yy5zRzro$O-Blz!P5^v{gd%fpumc4(cLI=3? zb2L^%5C?hE2MR|LMHaT_$V*aR3c(tg53e(|CyvbS4lzLVp!3z=w~F;7J%SuEAxZQX zReJ|*75r>gI7IA{sx=Zm@BF4LOAVswCHWSSq<<+-l+YU0W#2ec)^)gn6oV<*W<##*JagrdUHG`-k5V!KwdN~M zn4MoZRcTvKQ2HrdtK2sFJs6EDVzkJok4TxN7e_q4%gP#9U;L>3k-|LSp3dWT>vo0L zOS%zhIh3g6@68NVLAyL^QtSJ_w+WqrIsN=c8~oPrPQoBU>dL_*m8bz0b1yos_i_C; zN+bBeDs9f@R7oiYWw=?zHQr!tNMa}ATcI7{A8s?T>diy+!+pD&+)BR&e?xrhDiB|ya$rkJ{@o4l&$?qZPv!H!wwJ3=DG8@nQ&0toyBw~) zzQ#QEMkl-9jufHjnl>0<(|Dax(*zMK85yT@HU>+jT@OZ=1sT z9x_&R;FuF5FG8sSVnwH>j18u0Z8m$pw_pk}O`FQQlTI-ek}mo4Co^I+eLaU zUQ&}MEyU#m5CaA(=874@j*vrLi4BSuHF9_S9sD3(G{^ZsfN{c6Plk7fw1P0{{u z2X@guM6TZbE4)!i)kigUkj_jPSgJ%P$3y$0H7qQ4jvpU#{#xVCxLMt+^WCS!u-GeY z&E^b#ZFL&8S`_s#Yk&%$ODWWK3mi3j*Jb*C^;nL_Xll?Fet^k$IRQa|M!mZ{A(vta zbSljQa*p2}Gu_`FeV-jXNPHfx0bcW$p|-5)g>dTtl)z|xfoUyiz$x#wz3H3kHDPML z?HUzFp=o-5bii-bRK~ZfpviGx0NZ`POi|JF{fk+yy6j*U(XJ26?GxtOcT2f z+eG`>Bwbp7VhU~T{gGs#hZ*$`;!YSH?c%BM@VzDz@H7862; zZc4_|HOrLM|QTTf^Z$q0h@?znef^Sw4h{?^N7a;pI^0_)1mJJ`-B` zitBuMbjcVls5jkmiafja~54058ga?ziNMBw`YfH-4b1t77f{qm>&qkYRsv& z8T$1s=_R;{hPl!Mh*s;$QzBkh_{mV{Qn@5jG^)0CO_D;%%^{m(i166}bB(q_?Kaz0TDTzHA|`DQQ1;^_$!l+re^{SD z6G8aov#3AhE2CYOpG{&kY`&B(Lsag^Xwb{+!~@V`{88TSq8AUmHxmo#cnNMFZ|`d{eYI zTyG`?pdIfkGnf+kd-TbT&frKo>X;3Ho#Q%?ctb{jl5hUeOUx);XmHA@1VScIyS|y! zHNfba8~w0#PVkCa#eFJ>NG=8_r!0^-perkXk&WZ3Uq?%ibn)=o7`zI++ur*?)f8Y< zG`ZAkzYXzB9Bv8g8;Swj@?R-^=*ETJ zxMqcYeXAK{T6i;ZT`pb{?L`25_W@~&Hu7yED3;t~hIT>#au@fU^3KPaHTr$S=x-?+ zTsn~I%SG*?M1ZB(HD<-*C1o8jJiQw z{qbAQ8czra!6E<%uaJV_a?UI&L%~|CBNoJa#M@uSTyMCVh@*~r9>X~b>5g|O^?&HWv|pU|5?iI{=BTeC zr+dr!u{@m_j5iF^0J4Lc-c~Kj=f{m#q63d$5fm=W`$C~5H-Red6Dj6QO1}tGLA%_L zk8Qcj`9_+zt7!d!SLQy}zv{-$gh@lhStk^G*?xEN$m3Ibmm%M0bN(7yMTG(NmbVXs zq|ev5PNmT(QK8T@uJ9=H)mtA}5iAk~t%`M5c5Nj^s704rw2@kUp7fV!O_wabTxC~h) zv;?YB_?b7YRX|lpgLbQtMrM5CwzXiExhcqJibPF^LbNli_3k^oqlNZr)O1#^RzJJ? zSv2;ja8f}u>K;aQl~$;c?bj7?{d-`k`BAxv?_F+vVuu@ZZ7N6P2R5IfZ#&qnK7mM3R9L zY1Nc09gUr{n}^(04_TRNT5;mxRd{l!&@XGMAQ6iKt4qc6TA5B0_|Mweu+o(8VXHEn zu(H;9`#=9|e@_=Ayu=bt7|hmuHF=H0Yo(6mO@Hh8rVR^??hzIbd_Q^CeLH>{q__Ui z7=2@HPzgUZ3)DH|lZf*A+NXyM@9VT~FrT&@GlN~Ed?5hR@Z4@Yc zVz8~?Ni}7tiJPb!7zRh`e{hVzJQqI)fM?S*fF(ExEK;1Ln~Q2u{6@0XWD2{7xc`(W zj2}oBwCtW88KVk5-Jq+jaAb1vIBtF7eRVZt(Jk|YI_PdrML8njP}q`YY!;;874k$- zPvlPc_Bn)2r16)*IM`odg+77ryaKH_$pJaC4Y;y02I4-Bzcs{p=5r7y%PkJ|dp&+s z9hQ-2)2}|2QqJx2ZzvCxpvb+)TJ1t2gmmJaV(W?1`GJaw7Ig=ZR6=do8s{|!3nbP8 z_yom|+8nMb3B5s)z(oIp=U|0aLh2C-D{MOu zt==;aO+>wK*m(KXGjvK|ebVd>M~gp?S(IBvnpuc(`AdoFd) z;C$x1?(LoxLqjh;!=zX|ImJz3@1jwlk`EBNyqIa7i*n69pS-d-Xi+MWn@{v12Mf** zC~%T7{(xx(kaj%f0|slo@4EpxEEx3R^_2}q z{U+**pn;Cl_s+&U&WSKyda8+RtBxyADf!ubxHllo42w^I+{ie6bv(R@_u=?fXsp@1 zC!=^lv&t|iyao=B4z&Zu3V30AB)`*7aDsQJ4pAAk{Il$$>_eu-=`#2Ky#N)&TFF3k zFB7r^$mg4#zWb_7rqaZ5X~dVIDOh#k%%h0N0;H2COm%0Ji`U{e*!&RXR)fllKHTm! zhQccRm;#@z(uosfwr8XjiBxj!&eV9mhF4X(;4>!Y7I}xXQIf+hF?0Pswg;&>Jj?2> z4dYG3$q~10jzkx!a1T?rF=Y<34|fKQ%nQ=EQgLJ^7_#p;EC<4lg)LU+bgakeE^ClBvihK>Q* z$;!>6H&-ps{kSBUk&qH4P|C~p)Az(d#8e4@k=&ROR+J!@%tbPkYp7E&rJGY&QQ{QV z0#`7ZJ+o`k1nLWY|Mjh{k)Af|BZjIaszlOs>TS8LjL9Oup`~(yOWVCtJNIQ#Vag@~ zUcIpM%ptXBo;JKsgD4ww?V-kr^*&1HW1{-@Co%aY&sZb~Hys^#z~j-=O%BTh9CKOU znz_pTRaJt~i!san*$ew6BLrb!n|agCrlzS4-0kBvQG5y0TcO`m^$fxL>_ti<8MnL_ z$|I`5-x}Jq44;Q~0*zZMHysEv-ydA~8Uk~-hw%NH$GrXUSMdH+&Ubh=PKm|u3nF2h zV~T3_l3H;ooL?J#b7ywDO|&JPl&dEN>Q0KVq}WK-&CN9+a0VPcTnZ=R+r49>m1jS^ zAc@QR=y%W;(MaSEF1Keq;$j$5xV(-Ijh23^i-xX;YEt$?XjwHo0K zP+k;~n-0Ih;4cu97V_=jiK;A34XSl=uzLAI!SVL_?Km?9Z}5 zh4Xo4d{vyj7{`6V_{ZS6sRwhbsh?d^d8O%Z2aywn0KkFoV%O#r~H2?eV}vb-a3KJ-tVY87^rW1n1)rOikK(TShFY*r>PQ=t0(q zCuv}hsRGw3)K`wvi+eNuGgnkv^xak=T~;FaDw4^PlQ^k>v^jLke(?oyW1C_BjYJ{s zf(Qj)DOZIdFjDghB=9WWbi02&8T*+BU;fUj*@#e#P^Ldd*Z&~Fn=5_SORF~lvXF7$ z)(X79?W4#xs4%gAdla)ALUksi#lNHbiu7SU6OqrH42^-wTBrgU_T@s@Aii#4u9dXh z6he6Ecs9C=RCNQ=8kq*3EBRDB<0|*eL=#c-uFml$XG4Ey(La6q2w|%?S0~m*can4$ zNt5DT`RUH2PnWuE%rLtLzKJ4AmX;QB$>Y>r zv^~(Nl66)kF0ui7em`$vC(wq?y%t#QGbj;}0gb^eJL4v#b=$%zV)cIrl_yEGb=BOr zqO`M+8@fZbjkP;2b^rK*<6Xm2>5hQd{HOilpsX~D+oT4 z7(Nsm7OTICZ3(ytUbv38En{C#EyWo>A|=A{OE-O0#{AiJD}C~O9psKx`<>(2ENpvu zn@mufp?ZxB=2LuIc*twhnv2`gpn_mfB`3kYVd_B#;Ss>(81Umnj%%40cHc9XCu>0K z*1LE7m&q&H@vRlqBo!bE>j?5OAm5AcfTbRZr=Nh2k8CYR^xqvES-Ma3R*XN0E46qH zO+EG!2xJ<+lX2fKhsBJCMv&B$QdX%p2P8_9; zA9YEHHcadMg;!{dYiQa7)ei`kMW+C^xsH#x-Vn9$_9$aLg7|Y%-4<|W z`M_h%#U^e%UN?1D*mu()ggFX;)-Y-Z+ZEpMZw=zaa$uGloo7-W7V^Yo>PNEKFKQMw z9uyE_-(m}z6F(49&%QYk!(K`c+0F|qG50mza7`nfUO1gDOKd+R_4$s^D4bfL3Lf>M zdiaUFk7MPlNS44)CCOI-Zdm4=OXrn2%#3g2Rb45RNUp;3wxTR|Cf6;(B~Z;3yD?=P zZ5?~T(|_+|^;zyjRew0%U>}zO{pp!H~$TZ<_2+1DjUWl#P0Q>EXWp9OnwgDAg zqD&N!9fSb@a>pu?=jRVOVls@ib4x0bI89Ufys&h_p?#`1#|vg1g_C7x* zlUI>N6ON9c^gXWQx%eDJ9^&(Hw@Ad7G4-{K6@i;vzllt2ud1=^VFc&WnOwX)?2iI$ zEV)=-1o(u{5&(Rk{>&N$qb#QJ%G303qM8*=-3IKql{TX+w`~%1zD?nKXds}IXyNDh zSNy_4|Cn~`ieQo59yCkn99+~-TBD{7URnR?@koKkp3n_!&z|lQVEdRjpD1of4dnyT z=SJXn0tX<7L_O27;?x#KVdq?q{E0l!TPHNGbVHJUXJ?*|Z5BRmp`^zWs%>e!LTNP@s zxZMd73{9vdu)J1Ny}GX<20m=xTljg=!xIX!4+&uQ>s2wFz21>0`9<72hN-Kb~W93AN- zDlq1k%ePkkgW+Z#1p z`CV&2%^x=ntMlX$@#pMHLfm=^|7^kHof$t__3%VjMx67w3>e)DEYlhyIal@W*q2-s z67K$63IB8K#);YjH)9>6uO94ebe5yOB!zN4|Bsrn_a8r#YuIC`?c0_c%z_=v45$@N zAxF&+VQan2nA@e=+L3~@k$1KUDf5Smd{0E&=?|?HTd3>E3t;3zN;fQ_1;%wQE~LwN?&I$%hm0R)OpA;tXDIBMG?{@V`iGhW^FeB$h7mQ*Fi zGESPj;e!ItMkyl7?zziI{2|eJ`NfHP*E;ENGs$0?>>#QnRl2Ps;L{mu&lm_sTf;5~ zu-fh!!rmo{WGz4ndYNxbK(o4Ldt;T{&N_m`2TM2U_PG7YtK0kX#DW)Yq+&A0N*h&w4$bb4gMkb%EjjJzw zTTzU)jrR%!kQzBR_`z$EmN#zw2A6fc+{THrbLM=wNBf0) z3-^JX&JA+ah3^$Fl$<~Db97jRNv%jR+>d>;nrGuL#cnm{=x)y*gq^5`m zP5q5KP0f6vOzAXao6L16L6wj~5*d^epu+N(`SxMtyXkDx=nIR%MOAHDrmZ(LquAnu z3Ku2RwknsLV#1BkZ)2)0hBwCPbUy*$Ko(NMmPyeFikEXwHYNpnc6r=d*M_Nn-T11A zD|EnKU>$a4h5=d@+`=*30 z^D_l=lNiTOkm_CfnysiPvXV{UYvd5y(Ss+V&|;5}pb(M` zvG5@ceFM@zcJBW|YZT!qU0$0ZX6}Vxn-~OJvV$My1&(x;n^TT46?_E7btlTl3P8fe z=lG6S?gCcF5%>`7MR*GEaAYr;ALIDOYvHiiS20QRuJ>eG9%&Ooi^{{J*p!a!!+Dmm zZ|5E{>mlyR2wFx5IPuPz`Y+gUj`W5SLY$L&Y&AW|2FUs!h3{Qdu#1CgzsIfEoBSqM z#lJqzCmK~02DU>X@ZN}|7Sib>qWBM()@NO}l)`v1)_~z`Ab5)NzhQ3L_7VkhRBdl- zZBHI%?f<^u#g`$-_|_T5mB^JFXH z4OpxQ9=3~wUq0+pQiH9&XJ#QDTF zBaGtWl)fx3&KdtCLqA~R0TnQWDXNPsD+{V$5S-WJV8RlU=K3gsU;gRUJ(7Q%_%#aE zVB@Ux@H{%e1TM(<%dsS%b@d8uwt}1g;JybcE@o>%MCA#gk;nd_W?0xkvr4`T@qHM7WN?&6+Br_2P zF2F_6#37K>H{4T{tU&;VKWKF;M?vO4)VjMF36fwqe_hf)WT$#w?wzI}jMhbsQNO%| z-Y4c>ly$HzBJjEAByuT0)!Ov%E`zJ|7ja?`u*Z6nP{k=jgVYUXkr`w?mZ>mwX ziCY+4Xtr{i>h6BrLx&4gIY*?=w(bjxpTfz2Vxl43#QQ<&B|Xb99g)gCN)4~r_jUb+ z!GJ&+D?>D{GNt0g8vhAYLp@3z-rR9v9rFe>MZIG8_)jsNz6WREK1w0L^vjE3H>TK3 zk}o0P{Q%YP^RK2H1s+_3D47|h0<2ZF6C-R=&{M3^TAsagRKZWi+#<-)!OK@CTjC8Y z`b&SotTEZ!B4n|lLkB>oDg@V@0|1M&kLNq4H`ikKShyFDl1oE z4AXInwFHu^H%8cGBMfXUN9>4azZ zu|u6Xfei?5bmOoSMQlAmTriVFa;SNqa`zh>$CLVL4SUNhSI+^rUf@-sY}8FNfw|Te6X-WM7p-d-w32;s(i5 zL!P!j`3B1Q<>GNQZu-U4tQcb484!&(2vS<-=)^G|Vpi#y|T&u0Ju#Vg{$T-N94;Fjw04 zjxj(l@77B*6=*%1&$0r1!NW~#-Lvu4M+8|WNTC7C-@odoX;p*ZE=x#z``a<$Tr2EB2P)z&%D z6U(7uwynG75ueS+8q>+`b?o1vynwdXC?#^?JKr7tREg$!oXMUn%GBH#qGl5dO@x_U zh#0RXRl!5c7Hp1}vmM0n3=@mi?Jr2(#V*&Dc5aSjQRg{7ktU`DJb|=s^R9bRmdRu@ zvZ1LYMp@|PbPmuzVo2$f8OaM&9|cv`V2~(lvU}iA`_R&%cc{(!`K^KrZP;7n9THBY z3Jh<#Dza&7=fM&&ymezbX!a*!sgcAkMyz++>Am#VNWP;A*KLbu}a-ESJEcDLJe9{-R7b71*IZu z@(nWC$u@pk*Cz3U_H2U*3KW>`M44McNo|kWE1YZMZx<4rv(+BuShIx)VdXHs4yho% zGaGF8gs?$S7rAQxJ8>M9KpDvlCWGMX*IprrWT;VCIUtz65ME*=Hfj)3lGH~}{S~l3 z_f##t~cGCd9f5%J~TF;RPS;z^)$cFl$!;AhUkUk8J`chHF z24})#F4B%n8UWufqp<8$FE`2#kjd}Cx|o-KjSwPyN$6vBrPUX7N0H}rKq7o1S66z$ujZ#W zUe8b?8p;bshktQEK#7_PRO8hWzESvcjo-?E^W_m`^KYH_t2nMX`lc;xiCFZ?0uexA zg8jTR@JH`KL1pNfM?jCc&$RZ*1EU<4bTVXp+ZJ_&6FGEbzRls@#WZ7ECNGbZ5}vby zDM;MlnPI4W-7?h$;uV^}j4&;r)x8t!a~fm>ebdl%4)$FQ0H$M<=2!w>iJ(Pef<{=V z9==)Qsc^cxVNMlbs;*IrsQU-dzq;7$Zikf#(Cb=|jyuwORbJgLR34*;pIzBJf6|urU_8`-zr0ENFn)wKs|901-{7mcvBzI)TAC#A4%d+7VYS}&gxSbb0)S9Sa zYhBB-AxRaz&SS^71&W-JGKpdZD}nLM7)w48SYAk) zm;a>!23>y|U{`{$VG(D8_(WdV>DMzImWN>j^06lxCLb)QygA7;VtDe1%}7g#5Q`?P z#ll;EPXKfKmXMi|HUzZNc0TY72gU_V5U9|&4_f8+a943XlUS#b0?5+XfG>8m#y*il z@bQ)zQ5G7Puu8-2Erq94s+3u8!675;#e@{;*|q zmGAG5?L2jp-Gyz^Tw35AGfvmA<9xuhxgQ`@1f*&~ZgL4kXSEuCO#~)MleL=}KTo2+ z&~DH~W@OW9O-5Nzl|3*eO-^1Sm?b)|N%JAc6Dw|EnDeWAduy+~AO$;-loK<{sfPs3 zf~>C3P&32kGA%Yp4lJ`3sk^@B1R^cOQ{0fRRJ`iIP%w~U+p757t0*F%2v2BcAD`II zdnlK0$e9W`=R5-5w^&cqol{Lukt6mAIH|=C#pj3rY`uqJnaaBlKhY&v ziJGJ;WgcNr^HV}`0pA-eQeHWB5xlM9gQ|K-PUyMkQ^W~HS_j%z+Rz-Gj>%i#=QqJ^M>|{5AN}J`=0nbaJ zFZpwsb{pgSc`R%(Im(o4MEW0zyi_egQlkyL1mSU8CmnfL(`2nt3&8sw!0#uSmR91c z^=1pI&;4M;YdmNsq6br4x+MC9(6%OtMrI#NHA>ZF%~PVsnCUk8`8gOaxNbPi4Q~IA zd6pTe_RD&E#%jxihvPQn@~uK%r=CW4@~$RD0`)(ci(iD29;SR2ms(0&%aBKZ_*~V- zCMI7^5mgYy6c!3Ga&fpbUxe^*+=84E=-51_OaF&_IhJ$$AB1c?!2S6ec)a}xyalq- z%*sOrq<`{6r*V-EV+t%Ru9yY)=R8R(@!VL`mJ^2&j?{80njKH zPPrAvJM?6JF%1YOKY-da1e}p4AwGl>`w-_Lmq_#Rwgn)J`85-~`uccC7VuhaUc47h zYAWmoTo8?7ejPf8aRJP`(vNXCP64gwS7~W=xh$p#%{33>PHC>M=X7TlXLg|N%S9P> zxqhk>b!v_c0gF8)J*U5<3l)Rge@NU1;!aW)lc+7eABsqoTa7pqTA8gAjs~7!9DpXY zCz74-dvusbh(T5~lHFENR`wrF$)7fHT~a+zJ)Tm@o+wY=RmLIf%A?Lt-GCNOMis)T z=kQrfOQbCf&w^rXJ^B5V`W8VNqO`P z6r$v*EKif`2-RSj%yHh#WufCsJS=FR${f@6^_M~)Y?O6)C5#e#}0!;^Zw%sQOH zD!RzOla&k1zC~Ustq7jxXww?V4LUkYd(ZR28CR;#`3F<7k(NU&$|j$&`~!1c7rvWk z0;N?{1=cu=HHSBE-;#~PEhQQoyb{z7rMpZv{@C7M7ny$fVx3@mO~33?ey_}?L8TUQ z_pR&CpmD}A={{g^7neA_T+`*tI|u^hpPdSUd0r{5C?%wxEfc?UC+Ejnh~%#ttg>9G zSHj!3EU!5Zyl~I!sytF!YdHG;jYw=vtnTnf=m_=B841L;q|7#_#<@9hyi9mx8o$Ri z3)9lnr26!}zG(%!h9+-vesuoX$<%I7*Nv+!_O4S#-ogq9CvgH2WPHKhM+94y6B zRa(!BAJptPYsI}?vE=>p?In2rea92hNit~nRPWy(Sn1L|M1vGk&j@)nnR)U4&)L^k zALlP#g^#cIx@&5xuth$?6E+3y{Z_Xw*yzjT2>t`>c28Jxmq5rZWu27gS%6uIOuuSW z9+`Zc=e?OL8{1(V$l%Ft&q~47IVo3xy{hSxe7b*nbKKB$?P%kS>v_LkHRLX_iAn#- zRr#f_4=deZ_w8rU=26%$+P^f`^F<#HM#p_W4?*vQwWYSPy4m}yoQI0WJa=b$DSJI5 zIxqPSI+D0*Ad;F^aSQT}3;_tU0a(9#;*vW#W6Gyal7Pz9cYxYqJ8Km4k#$WTDR1AJ zDfYKMUQ0UAARBd@Oj<8%GY%a3|8XEJ*(e8vw&&SJp9>r?6J-bTpUr;5i-9tsuuMt`j~{q z#f*#Zs=zCAPDB`~qlS#>*!ygh+TgV=uJI4N=2$CRyjOYiX0Af4@ivX}!z-z%1rIh# znHS|!QT40c9#TL4da{-?9&uDji}-WM-L&&`8!hsEyC`)>4gDnKV-dScq1 za%4<1xspjrwe4IMU^aEGpKHhWt~C#O_SxT{^-*a!RnCXCnIk2+T&!B@-u`DPWO)9_ zpDnJLjx8~RZJ{k@g<>Dcted>6yf;a^SxRF1pXmZ>I1)Fa4HRYC6czipBWg{hMQC7n}dJCK)anYO|a*_n&{JkB~lqv@{ZPE4*2Rjw3LqiE!v82{C~k1Y&7 zQhj$vMh&^{UNO{40gsV*T2iv52dno=xZnJ))?LQx&)nRo->KSXERP8blFPasGVI~B zuBzcI1u;FkyWf2e4`}lWbPi>f=^N}C+cD|u)Xlhrp{9*LV@XNbej1hAovog(Cv>R; zpN1I;c)#?2647MQ?y>YRRLWzaXgiy+QOZ8nHPTy0Ou zGec0$vHkj6JXE9odzov|T&i75Xs&zkr>l?vuR8^!sS(*u8P z0Nce&Pk%WS1r#M`tB;Hgh*3BvYvOGC-zW2cRH{s%hRFMaq!|-0?{H-A)D!(#TA|m) znZW^QwpKUYMxLEurQ0=E$q zGzYu>5S&$p2xcfJi@kOgK;o#Gydc8-?cLDn(A~8wy~cNYv@&+XL*u~jM|e`r5tMR{ z!=aTN4P`oe9pQS*nG?g#J3oK*J4#Askr8bAF=ilisv(suqii5OEqEss3XU%nMc!s8 zyTCZ~lyBVv6%+SD;^OWo${aRdwK=`b5R&i2JYw>;QtAT>@8%*}DCLZ^%=k=;%TdOAj zI^pHMewPQ-`8eFSOey{t8BIP^gtg75OUq>otC^GH{3?6paF$>TTR%=>pO; zjmbCeE$y$4ttItt3B$j64lbZ_Sl)BvSoW4u(=x3MYqY>g3UGy{c{uTK*^Us&rr&+r z&PnQEO4j%JDdAi4yC>~lduLFy|IG$(m$3i>C>o2R{nU87^P!IL%kOCK^sv%tX%nM>seggz zf~8o08;JQV#!A$et>9~cTfWC|uaDPaBnJ5C_0Nnr5P(SyM z+mZsIPku-7MDxQYxL{P<@?zKZxabOH+Lf+|^O2|uWDfL^TC-V)K=yBBPpphxt6q8> zQ?{v?QmOvO=`-%&joZH%WyPB!UR;OwX^K~wD;jF6n*gh{OJtd#dhJEY$jef=$;Z0f zsQwFdlAkWHGevXNk9bC`iwrQU1DMq+e;2+NBj&S~_HEJ8uoL8_b!1})l-8gB^sViB zc9`ajY;6nqsIkxBb)BVY)G>R%+(A&*IMT%zMA(^NQ=kUESeFo5bru2ct!)XCJeW?P zoEKP-cAR?X>>l{%T%V&u z7u(k5R{;G!ANXgsC9Hu98|UFulK|YpP<9V!gk} zRT$-)TlB8m=iIgqzk(v=!1ZM?gl@%P0{OoAYE`-DKD69)ZveCrR8_F&B;3-wNtauj z9~iy}LXm>KAz{hd2{My2dWb|(Z7qN4t@Y&@VavaVp}OUG*Y3rd0JmJx_YT@JZrrd>%bqo$7V zGiMEEi40jRr`tvYMb=y3|Ioew<1_;hmhPxTJ>~3wYgy^a&$Ckos0fqm_%5p7EwR+# zBUV97>K&nLiqii#4|H%{TM8l;_tXm#4O)`N($$HrIqerD`qBz@%P^H!hM@{A_-WS8 ztl@qo>2p9{kFs^=Mhx?r!9%5F*w2^obbb63T@I57NbBexcz%ww)!!HpH~0XaK$8M! z(`>dL8Em(Tp4jytbs=Aiw}^%iJn04TgWFbPMxaD^EiQHY%#pd6UEzLl?Ap0K8AQd- zmS%N2^F>n*AhendWgXhZ6jDEZaq+XTZ~FMyNIsT;0%z{Wj~1F>FVUiq$ZgRfpS&to zat|~NY#>CK(V>3Pw7CfJ;#v}tN48USPCwF42g-(wMTOIw(j&5c*}Jn%RHh%?^gAzs z|A%gYKSBjRK9cGhaT%j@6M}$1-_BZ9&dS5n5&K8k;op1c19lgaRp>XfhMPG2)0QwQ zd)job!|_1&6U*pF1$_87?-aO*F-N5J2=EV=I<>y-Y=9hxPnq0qW~uCwC!h!9eu}H! zg@gYh#wpQvd5jx!FkW<#S3;U1DF3`FR412d;4$yqG!0(IG};1!KemJ{)FPpu96L{_ z@^NCPyUW9zd`sr;=s-I0U>)+(xAiI}yS+`r*EZ4a{~{-y9!NZVH1{N>7g|_gomj3g z482&5kKo?UBsG1%>TznV5!P~WKEh?UBFl;WTBT{MwsN=&(vqRzj4rMTxK>iPLvO^h zf=Ao5i)3OYVOC{YNms1HW|5-1H)V<`+7`O~h^9*u1nK4rIaiXSx&<3fS|ut+#5*2{ zX{3vo;|7)XbXoN-#IYz9LanhftBw!o;t&aPg8p@gkE(5KY&ztnI7(A#kv# z#L_E9Rq6}-zIS9jVNS9wRb(8}n_V-{5G-oxPoo~DA|KMSb%cb3k^$4!TRDWEi7ObM z;f5`*)Sd0KQM2*mue=oHZ0sjYtYT_-V&mLA2NISZH}5;y9_!x~+&hfZJ#g5gKRdXS z_*6x9q7O7QpA1e}SSpNAmo3S?9ye;s!5Cgsn}<)PR;9|8hTgT2K-b@}s;Rp3*_|BC zZtRz|iE_SF$@eMc0I5_H<5#MC&^&CP{c@Fy?2AP2@;C2Cw%wc))RtfPYlE1(ME@>h z-#o$#{57oGpal#*t#$P>xrwuNXN}dwkgIbX^cdXAxQR~*&I?swnqPO$``wLs_qZtV z0gK7M&wNfio-H|TPfH|Yo{6pmol^06I@?Wb0&X8I6u&)s`;xN*gS>v6gEEnPCughgMhK#lm1PeYS!S&28p9{RWe{FoeS#RYJ zPXT=^@j??`5XcbQXhB;LqVC#xU4~%EUnbQv5N(y)G@D8RVhx0bTy-?UV{Oroxh%d{8@|5``494GH z&^~O<*MA>8KvoK~HY>Lww8~h`8RqubqBSxjaxH-tkVg54S=5-6bBL%%qEcAe?=h8j zC8FjZGMOAY2^h?rHO2GH)suq#hK=U}g@6j3H!_2HnVX9gybRD62<4lQjaucVG8=+# zJiL|}@xB6*veu;)g=@^iVAdtj7tqHi1Gc6%6W^W-RNTLI<7czNic5xk8@3SzEdfRZ zptFaU-oJBfY^Qd-GT$}yv)EVlP#5420Vn+h*tZIgLznu~x(Kom+yZcn%v`Zk*mxg4 z@L{Nkl!o2~jHH`s6W}^^3Q{_5im>;te}L$q99t~#OE!rgm`9o;pZA0z z>?vju9wN~31@LlZ{Z2--EL;_#R4iKy*c0X@m!!0zot;kd+!T@JX zyRW8Ix1E5$4FZ8;v5mnrJyvjEsGN?K$&;Q$*tPM78<{_>2QqhicY6MDe+<|p6YmKK z?KuIL%YV|t>2YnG`$pPZjTPU`d}1r-7^fI8&+Kb5ail@1AXtbwXX)6<>H04O>slS3 zp(jUVew>YJAQSsPtZ4#Xc7pcd^H+nW(YinM2l8CD@pIH^p7JQI_M}=BO`Zb-SLA9;N)NbZ@Z=!C#BAI(gL_6sMqs%l@P^&qrbHWy zCu115fY!{UzkHDPBVr(4_X+rFmUe1j2S!kJ>b=OQ751>K!ks15vHHkPlTQE^GxHc^ z=n3igLnoMJSD=yy349R8E^L~(e#eVT3TK2xP+EF?Jm1ZP>mFJZpq-{o5*?~#XdaYY z)xyDvMWQB;K&ZnPbr&N5sn%`E=UBLCnnySMV9G+9r~4zde@c>n@_-_w6HH3fa+j>6 zZE%IEr|^SP(^r*Yg0e~YEJ}F6TXAzc#- znpGTz_A1|ZU;{gT9Q15tHaM{UC`k1YfhV3^@0-uNITJ{nF3@|fMjr2Ryh||dg_$7) zN6&JQ>{^5TP-;5Pp9a>J{&1dBfAF(voa`AmgHzRXKRY7Q0}g`5F@%YU7&uU28F62$ zO|EMkuj|;G^bI~EMIvskNIy|1xOZi;2pYjeG@jtO-p$A)VanwIA_-Y! z;PxtoF7En72#kAf3+^{=t3FW!nYg((gQ%CC0$Kge%ARhvR(jS)w+E9zze|0SpIAJd z%}xN$EE$|S3QcMk6j;h@*@2x;>SxQT7!i)r=l1R48~mZ;TwTxMIR}? z(Jg4W?~6+Ujib%JCvbIK9-n}ElD+vD<&w#QmIJ#;b@IYXYU>sIS_k{H4Ifwb+~e41 z{z=C80~L*A)@|syX7;JaXGBKa5)IzbkhNiY_4cW?uHewuig(=``6q1iKO!5|xf^gQzl9~Sm-B)}@eUzr57=rV-tRaif2dJqI8s~KS}hjr zb_b6Wr;l7xMG&_%C108YlC5i>y|f%mzcu}+Ht93dVPCsq2v)9Ds~qPc0h@};{dt~8 z!V_?807!} From 6c74f713622300e22eff4128ba489b3af686d281 Mon Sep 17 00:00:00 2001 From: Ilia Date: Sat, 28 Nov 2020 06:37:00 +0300 Subject: [PATCH 4/8] Show tooltip with name --- web-client/src/components/App/App.css | 4 ++++ web-client/src/components/Icons/Icons.ts | 3 --- web-client/src/components/map/Map.tsx | 9 +++++++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/web-client/src/components/App/App.css b/web-client/src/components/App/App.css index 20d20ad..c74aa88 100644 --- a/web-client/src/components/App/App.css +++ b/web-client/src/components/App/App.css @@ -1,3 +1,7 @@ .leaflet-div-icon { border-radius: 50%; } + +.leaflet-popup-tip-container { + display: none !important; +} diff --git a/web-client/src/components/Icons/Icons.ts b/web-client/src/components/Icons/Icons.ts index aed9696..c219d68 100644 --- a/web-client/src/components/Icons/Icons.ts +++ b/web-client/src/components/Icons/Icons.ts @@ -5,9 +5,6 @@ const iconPerson = new L.Icon({ iconUrl: 'https://i.postimg.cc/TYMXZ8qJ/image.png', iconAnchor: undefined, popupAnchor: [2, -20], - shadowUrl: undefined, - shadowSize: undefined, - shadowAnchor: undefined, iconSize: [50, 50], className: 'leaflet-div-icon' }); diff --git a/web-client/src/components/map/Map.tsx b/web-client/src/components/map/Map.tsx index 1135983..624603b 100644 --- a/web-client/src/components/map/Map.tsx +++ b/web-client/src/components/map/Map.tsx @@ -63,8 +63,13 @@ const Map: React.FC = () => { position={startPosition} icon={iconPerson} > - - Easy + + Name very long for test From e467b4c2e0b1e62a1efc431e4f859ec7b804fba1 Mon Sep 17 00:00:00 2001 From: alexthvest Date: Sat, 28 Nov 2020 09:00:29 +0300 Subject: [PATCH 5/8] added: avatar to device --- server/src/device/models.go | 9 +++++---- server/src/device/repository.go | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/server/src/device/models.go b/server/src/device/models.go index 8f94166..18de947 100644 --- a/server/src/device/models.go +++ b/server/src/device/models.go @@ -2,7 +2,8 @@ package device // Device ... type Device struct { - Id int `json:"id"` - Name string `json:"name"` - IMEI string `json:"imei"` -} \ No newline at end of file + Id int `json:"id"` + Name string `json:"name"` + IMEI string `json:"imei"` + AvatarUrl string `json:"avatar_url" db:"avatar_url"` +} diff --git a/server/src/device/repository.go b/server/src/device/repository.go index 50d9ad4..7e8e797 100644 --- a/server/src/device/repository.go +++ b/server/src/device/repository.go @@ -40,7 +40,7 @@ func (r *DeviceRepository) GetDeviceByIMEI(imei string) (device Device, err erro // AddDevice ... func (r *DeviceRepository) AddDevice(device Device) error { - query := "INSERT INTO devices (name, imei) VALUES (:name, :imei);" + query := "INSERT INTO devices (name, imei, avatar_url) VALUES (:name, :imei, :avatar_url);" _, err := r.database.NamedQuery(query, device) return err } \ No newline at end of file From 6447be8bcf6be7c307e77acb0da7ddc4b7182343 Mon Sep 17 00:00:00 2001 From: alexthvest Date: Sat, 28 Nov 2020 10:01:01 +0300 Subject: [PATCH 6/8] added: get positions by imei --- .idea/workspace.xml | 30 +++++++++++++++++++----------- server/src/go.mod | 1 + server/src/go.sum | 22 ++++++++++++++++++++++ server/src/main.go | 16 +++++++++++++++- server/src/position/repository.go | 12 ++++++++++++ server/src/position/routes.go | 19 +++++++++++++++++++ 6 files changed, 88 insertions(+), 12 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 5aadbce..557b596 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -19,13 +19,21 @@ - + + + + + - - + + + + +