From 96c8c55c87d6e735c66c386471cfd255aedce58c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=87=E5=A4=A9?= Date: Thu, 23 Jul 2020 19:15:46 +0800 Subject: [PATCH] init --- .gitignore | 16 +++ .vscode/launch.json | 16 +++ LICENSE | 21 ++++ README.md | 9 ++ icons/128x128.png | Bin 0 -> 4587 bytes icons/256x256.png | Bin 0 -> 9653 bytes icons/512x512.png | Bin 0 -> 13266 bytes icons/512x512.psd | Bin 0 -> 110990 bytes icons/app.icns | Bin 0 -> 58951 bytes package.json | 40 +++++++ src/css/app.css | 1 + src/css/app.scss | 19 +++ src/css/var.scss | 18 +++ .../6EA1EDBC-2C8A-4360-BF52-2BEB82A6B68B.png | Bin 0 -> 28160 bytes src/images/app.png | Bin 0 -> 9653 bytes src/images/tray@1x.png | Bin 0 -> 257 bytes src/images/tray@2x.png | Bin 0 -> 229 bytes src/index.html | 17 +++ src/js/app.js | 64 ++++++++++ src/lib/anot.js | 8 ++ src/lib/css/reset-basic.css | 60 ++++++++++ src/lib/drag/core.js | 1 + src/lib/drag/index.js | 1 + src/lib/form/button.js | 15 +++ src/lib/form/checkbox.js | 15 +++ src/lib/form/input.js | 15 +++ src/lib/form/number.js | 15 +++ src/lib/form/progress.js | 15 +++ src/lib/form/radio.js | 15 +++ src/lib/form/select.js | 15 +++ src/lib/form/star.js | 15 +++ src/lib/form/switch.js | 15 +++ src/lib/icon/index.js | 15 +++ src/lib/icon/svg.js | 1 + src/lib/layer/index.js | 15 +++ src/lib/scroll/index.js | 15 +++ src/lib/utils.js | 1 + src/main.js | 109 ++++++++++++++++++ src/tools/menu.js | 32 +++++ src/tools/tray.js | 21 ++++ 40 files changed, 635 insertions(+) create mode 100644 .gitignore create mode 100644 .vscode/launch.json create mode 100644 LICENSE create mode 100644 README.md create mode 100644 icons/128x128.png create mode 100644 icons/256x256.png create mode 100644 icons/512x512.png create mode 100644 icons/512x512.psd create mode 100644 icons/app.icns create mode 100644 package.json create mode 100644 src/css/app.css create mode 100644 src/css/app.scss create mode 100644 src/css/var.scss create mode 100644 src/images/6EA1EDBC-2C8A-4360-BF52-2BEB82A6B68B.png create mode 100644 src/images/app.png create mode 100644 src/images/tray@1x.png create mode 100644 src/images/tray@2x.png create mode 100644 src/index.html create mode 100644 src/js/app.js create mode 100644 src/lib/anot.js create mode 100644 src/lib/css/reset-basic.css create mode 100644 src/lib/drag/core.js create mode 100644 src/lib/drag/index.js create mode 100644 src/lib/form/button.js create mode 100644 src/lib/form/checkbox.js create mode 100644 src/lib/form/input.js create mode 100644 src/lib/form/number.js create mode 100644 src/lib/form/progress.js create mode 100644 src/lib/form/radio.js create mode 100644 src/lib/form/select.js create mode 100644 src/lib/form/star.js create mode 100644 src/lib/form/switch.js create mode 100644 src/lib/icon/index.js create mode 100644 src/lib/icon/svg.js create mode 100644 src/lib/layer/index.js create mode 100644 src/lib/scroll/index.js create mode 100644 src/lib/utils.js create mode 100644 src/main.js create mode 100644 src/tools/menu.js create mode 100644 src/tools/tray.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1f66ccf --- /dev/null +++ b/.gitignore @@ -0,0 +1,16 @@ +.DS_Store +.AppleDouble +.LSOverride +.idea +._* +.Spotlight-V100 +.Trashes + + +build +build/** + +node_modules +node_modules/** + +package-lock.json \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..473f63e --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,16 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "name": "Debug Main Process", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}", + "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron", + "windows": { + "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron.cmd" + }, + "args": ["."] + } + ] +} diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ab60297 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..58b3ed7 --- /dev/null +++ b/README.md @@ -0,0 +1,9 @@ +# 小说编辑器 +> 小说编辑器。 + + +## Update Logs + + +# v0.0.1 - 2020-06-01 +- 立项 \ No newline at end of file diff --git a/icons/128x128.png b/icons/128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..0a829f3ea3f1ff2565dbff31d8ee53bda08d06f7 GIT binary patch literal 4587 zcmZ`-XHb(}w|x>q2}nym5qX33Dv+Q^H$mwgL8;P2ih%SELg*?=uOb~miiD;}51jUEFIRgNSe*{4Om7Ig?8~{L52m)x%8T9X6 zA^88g*g~5B&;J!_B|-uLfc>7f+O4}mpe^grfxDkCVh*+wSpUOQ2nEBYk;puDBPub3sKe76W8!Q$d_A4Jx7~ZUvZ>_ON(Py83)yX{6__ZaP zr$r`X(CO=AStZ{HK`uL$zS!H53qb=#l&#L=-SKxVM=tRBmd! zl^~g~cZD?#n&n*-8oiFpG}_Dh@TN0({TZLvyVe!%2H2#Nl$0aCd=@M-muM~63D2_1 zCA7>uXQdz`vRp=8ZZU|Xl}&Z5@qbSDQK?p<)%=4FQ+Rujo+`oU5oj~jUs@^ba)6xD zn~*YuI5Wx=KM+uzaIdNCo?LB_QnO;;b%aq>mB}`~ce>8N_@d?`(9`M>alVz1a##E^ zr~XoDBM|P4s}uEopC-fWZIYqg1AeQPy)jb_QpI{`AY8orfo`*4Z2+JTLJ6^BRnRZY#N&w3oF@n$3Tx1+@9SFfyiWDjW(O z&S4~V#quBIqP`Rh?fLj^7IAcm`?+3&Fo1GyzgecCxVx&&e^Qlbsq4``e_HR^5o809 zq~4c3c|WhqrMH_>XjBLBUN^}USbHm|G9104%x)Pju=6HSB}!4r`d8VHl_f z7&^>dTio+AmIap%Nsiqj3Rs>Uv15_@P~F;eZJ>Y`s%yu_WR3wLkSo(9E45@9`Fe41 z{m9|u4)F;rkVbdtIT6MQ{!z%4HG%v3;TS2=H7K2`k^tC;mgkAH&Y}_MfmOo9Zq=Gu z2VUf3tTt*Nm7ud0aujy8z_NM&jL5IjP9M7U8g;@Abo|)(IKsiLV5feDuJKV%mM}u{ zurI)$g!e8{O#SKTNm(0=q+J#fAKg+x0HMv~#31{Y-b6F1^MeYq!;E9TsWMQxT$+Kc z|1^Znv|SuT*@N$pqjf|qJ6I`&C*8_(O=#dYZZCL$n-vytD3}eSToRYG%}+Xhy9uVu zI{%1$ri+dej9-;F{vTqEtKwDe5g0)EgLVYm5HFn(N z!7I+A-VSLu!g~-4&7O}_Y{s{9PK`D@Y*%4&)MmxGG059JBe{axRE+a&@sV~G&{;e3 z`e6ndqy0o2imek2>9aurZ+l#1sSQawHT!>XAdGnXZK+z5H@{?x#4RAik>iC!dwm;N zg)3R9aJm2ZswB3p?o#3!)lh!g;Ne<)W)hkjJh2-1^mYaWE0$8gBIaxLIXhg9@{R|t zf8bp}Mc|!ZsutW4u^vc=uyH@DX?*K8Rz{Ij^+jg<$a4K^L3*kZPCPfHtkxR zIVeI2w@~$B&#gc22UUDm6gm&psyq}pYH>H*yAUR|_1&zz{LuuhLW^sFhJ0wHP86ic zE6|HvC&nk>(5eTHZ;cL{%CwtuW|{fwqwE<`+V*uSB3(T%-GEoE*R|rax-b3DZTmL^ z#Y>~48y;H>tFpNo4Y7FiO{rieDLzlO8Bp{=T7$35JMA3cjAu%RG%)2jIoLTK@7 zaADiuWiOuP=1`hKE=FS1M)q{)Dr}1Rhi&uZpH~-*;6T)`a@n+}XIV=JCP9;AM!K_s zXVY!Bb+TD(`m7qK9WJgF?EJLwy9vWrOnsjDG}ShR23U#^v3UhD?6KB`VJ|V+?2tu&Gh0NtW5Lsg9!ql zmgv@xO27o_{&ZJCQam@;qA3dj4iXHb@XZ)}vR-F&9KF0M3gxBMcoNf0n5xSf?0wo1 z&bydev`k$aK*-r7K}y6k=ZA0^pZa04aMtM!t-UM!oa|K=xKf5WDYUe{SwZSENzil7iG!041~wkA1)!ialBGZ(b(cxU+<#2k4>S1M>5ySN!SEHfD~k zFI^V`sc9BpeMkGaYa#b@mET_-KVzsQm2R8GJ>WvYVv#ihu8~5#nEgl|WGR*T3G-aw zHCo>0tYWG+!$gFJw4ac;I@UeVBf6dwGoU!8yq3-ZVhIs1g$G4nL_Qi=cAV4}d7*M; z;=ZySqr&fNpHm`=A@lyJ{9rkSg)Esum$t zk(t#8AVSadu_O1g^ycvwF;@R!FOZft_ATQ}aN^3ee{ong(|8A=$S~eIe|!JuKKJLn zQ~NiaofgH^C$Liwgnfpbov4JL~a zqnM1wa$R0(t#vxnfhNNzTlnz*H^TzU{Ecgmfn)0nDQUljG z%&QkCWc}E)|C1^}JJ7K}nY^W04Yrh5w|I&7;oFTzp%y{*L}}D0rF z1arF;yBiIcj}De-Y`%|wmE48Oo-z!}^ubL*X*W72%v~NGl2K`!4QoSyl*<_Z}>L`I^v>aY>f9+}30h zf~}VxmFtW=ipVvaT8oOR0WqPQcEj2|z#yLKyRf07R*sp~(BJ4c2Qke%r~_!s5hjwj zEoT`;+welPX!}a=_(+(cP1ZHRfMs*JUYwisssG-Z?C>3=UAa!36<~iRG9J0YL+c@g zipfALLazpyxi4abq0FCj05%vCk^?a{zVl+~{n?=4A*coS1oPK4#l|^;ub1i~JZJN< zNg8(l-2P#~+?-ch8&Fc>9z82l5duM5wN>#T1W&}}@*V7aml z!j}Y>l$#{#j3`iY(VDw%^NPRu0w`#1GXK-|^`n!0-t}HZGoc%xyD%ACPvel|9;=sI z8hv=m*~baiaGkcV(I?0S+7g$eWYFGAXpz%*4VH_zmF2npT@MWdY@A9Km|7(}!3z@SijXT+M~;V=Su0!H1l1kBmj5R$cHF_{U2 zIZnGI9Ol-_>4h_%AZa?hrW)(~Tnn#eNxIOUuHxZI{Ip~BvK_1CSsZKI&5+58o-PGH z^5q{F$199;T}_`I)Ra&Q`f<)D#OYAUPW*g>gXyEAOO4Pok3>3;@vncj+pS=l$-q}n z?KW6Wr!h?(8vr7)bW^u8i&kc;M zAg1d<6b?@@T(IrUjN~GH-68YD^$>Wwrs5|&>B8DHKE#Sdg@XU(o=$<|pi2tZai zqm)x!MFTs9|JRZ*{>U)Zoa(0R)q4&Aj18R~c$NZZ@?W~`Sd)D`z4z=qo0RFF#puC& zl`HabK>K7n>H2#3soVOkBp|#?KRjOS%QuA9!3mx|NO4{OyXQ%V7`gRn=iu+gL~#ZU zsaJRIp=0X~S?k`@pP1N))7@Wx#X{_E#)Sy5*a|cx9qbd^Y&k+V9tgzETu|hXblIXK zd0Cu~tZ68KBo`FZ2mc;pJi8ko;!gIg@;*e}X~@46jPAcei5O2KP_^EFdtK(pWTtB^ zs&8g!32}LUw$sfX+mq?;^OnAWI*Rs?1`J*oX=3$<)dvpOd(?j{t^!@C# zZwd@h@3Op^?HS)nvkBViQMi1JZ1QR(-B9Wyon0}bs9dvDL<@he0ttaQn?CSIg2Oz< z(t<^UIR6a!ZHxvlbS=gI^M=0Q-46?*`{%0S?E&T%NI+$&AXW$a%|96camhz!_jbh? z_>Y$f;HTj^bUz?K#;@|159|;T*k|#2X~m;hVW%?UOO~jb4l_LfuaPSJP&tXFI_h)H5MT29)GjO6Z4 zrF*NaEL{SgrF@)k6Gceb{N2 zm{$(}qGM<3Q{bKp7)FGWLVWTF#uK0n3Ey^A8Q$6l1CW5{*D55jpId24jhiwOdZGj9 zIzQMOi?{)tpsRLY;7A?Y}mRmn} zC)RJ=Z(g^esq%-o!GUg$(|`lLt9k9`>wxr}I9t1@@`|*iW)Xg7^NfREuOH-R5r-W- zD!fiAs|X%rgEeAct)hf*j12KZbwbe7pldiXXUUDf5Y7(0Crc$JfQWT{c6e)>F zlPXn2sfI4nqy$28<9u`H{(JxV&diy!yXQSS`<{9C*?rz;lT3~ESef~l0RUh%(APEx z01&MR0-y}Ehy8z59{*~A=6aey&5*zvt)lI2Yv5sI1W3}#Pym#04}knLq1}A68vy7^ zK>!`?3HsMo3jV)uK|m?p|11A9^jzmN0Dy~d18ohJ}a*dL{<5#GTFrl6SA zOo9N{M_4abuBl&f{>9_h%1f5t-LHV^Swke5+AV~ZZmP83MNI{ir(Uj6PTHKZ1fPZd zNZ$0{m}d~`6cQEX4Ki$*{{AeCgfHH72?_By91OyLe;Da-O-=3U*8T?NBOXtsoNVE< zU4_BgSSSo6jDjQr9Eks=O4%dqw;^y;$b9>@ zHbNNc_EMmo?=ilXMZAecT=23xvmH9L>#6Uiq{}LJ{?Y!A7KWR9HRjI-CU}SKHkVXA zR{Kckmi68hSoEsMeD&4GNQ=+kMg3L?`4l1O-QP)DUZOB83nbqkEB#R{CV+=F+HJ#Jib+^`igqeTr*qE zLgEzIcW64dcT)yj#!6Iev2v-S9*}w>sN@RvurM2E0^8aZqfNDdyG@M=#D|Y0t_p)= zu(wL&N@MI=;_gbz1yq3Ev<1$a%M>*0-9J%R_}hG6cv%P12X$6O#9i1m|WPVP)NZ?6-|Egs`(n$aZarvpg2c#uMi3ZYZh~f zPDGu+N&zqUWaQcZFH;fIle*<6iP)=q@aS2C! z`bIVQrtShpObKf119-9Mb4UUY_~M#Vb)EH%pW^);tsNTQS!}{3UIiEIt!In0_mzhp zf#>XdKb_N3{`g|2U{%Pu7r#t4o{;)H(fWmVKWVARo8p#{kBwa}1N;HuMkpgF6EpGi z&GCm!{Cml5feKKG?Z~ALtR{ggj2WA!1Q5OE-I}BWM z)(EQ@ea9^(sseyM;;i+i1Lu=nHxs7kzVVWyVc=;o*?7h1`Ks*Nmw*?Soa2@N=*m5- z4D$Xm`Iow-38P!EvtT?S)HLmAW||#nR{8HHpP4LLpAo#OM*n8dC)P>NA=b%M^luO< zj_^?`40m|}4JHiglrhYMb(Tlu!3gA=Q=i-z^1+RETVb-O0*H@+4#z}~Lga;J`9LH^ z@B<_biX$UY$^E6vSA-lzjh=ACvy%*i$%;_(_hwSbIGu4t&@t0^hy40gdV+-hkc=(rw>!}#iZV?+}7gHUH;-zUSSq7-;rpsZVb6Dq5Rg!{*5p_ch7IruSvGjXs~L-CgkRIkSdGST|JO#8UvM`9;8fiCgOE_=afK1 zrEK}JXwo?_!&wIUw}?*|O%2r6`e*Z!s#EFQ<2zDU$dDU4$Y|!saX`{^8~zRIg~Nmr zOQ1NsS=2xfHXo&uZzEE8q|V{R3sT?h&v8^=dALd(`!Cx2fx=kyI~fjhx~erEvR4A| zW-OmvcW`$IuCZIdrwJv<=6M)l`>_>D+cQky^EkL+6sOlV%N^bqOg|egIU2^Xq8Q=(L?|GF`R`tH*V3AJ(=h_gmK@5Dlqe+IU*ouNaCuGoGhcS zE38%rH$)vh`(`M~y(grw+?Ce9~xD@RI856NvB`CfOB}{Ani#Lq1UTi2ipf0y#;NTcP!=gdY8p!Dm6oGxO)w5d#B$ zsj+eWRvuwSqa5VBisK@AV;o=2nL!Yf_q@T=h?Qv9lai## zM#S%DwaN!lk`xZEb&0ui&w?rMGU2R-pv?R~4mDoJ0=Ba)vfL5e*53xL zg{bXBsr|J0^YjGURngx{JQU-S95X{>gGBy<7Y87c%XY+dcOqltIUrrtY`k&g(UoVr zPXBpZ2S27}FTbWiNyyVCH(!XtWUs`Xn`4uCcPHM9vMRLoSaA1_!Yz2C`+A+07PxcK z_d`8@&^$(Q6Rhst_xXInFN`h62Ud8F-?~G&rW;PIwLbaP5job8-nXF(^AfN);b@f0wMV`EMBe*> zlPW#ReaHzn{!Jl~sa>e3P52Y*9lL8#EWL&LM7E|`tsdI!1YVBAH`!UEXY8#Hnum0IdBg;6_*X=YaxRmhGi_G1xkO%9^)>ETIybcH#z5y>Qn;@6UgkR= zR`Dq5$#9OkDCTn8@Etl?i!4!-_jf=cWn0k&66tltLb`;PVm##b%NykG`P_;dUbHx9 zngkP?fL5dcq!d(mg}7zx#Zpk--cx!Im>bw%B=LOah5Plh!M|F+6!(exGXT37n{o8j zUGdi=)ArAZ>j}OL4Hq(ErxOUpJTpCp+dyFvfrNjy_k{dwAM1>_03e_5Y1V@00@C67 zX})bwx;`YRQ_{|&JD3TDalU}O2r}w~9~ZedXJ-QX`hB39)U%hq10y7|FP5l_yqJA2 zQEC0frP%I(Yr@wqVVpyygBd?z2;(_yGq?2oasw-R)bZ^x<_yV(J-st(uvDHY+pMdDBHTinUj5LVuj5)2r+Y^6q=; z3sCFNrXRLD(zYst``17}(_&FuVHye`5_LU~3Dh>k?t}apk;V{9=_aNI9)PiFF7bfw zN=$1-P}q9ISVP&LmHge=v3$bK@(1UQfSx^A#5Mo!y2ON;cCcwiJvb&&) zx1#cGc`##lV9aX|jUrv#YJZQnXfOYT+ZT?l9N>19-!dh_KDgUL&lE80y16TW&XoFS zb0#*xss>2adK3=a0;3JomIX+aLppMumLMc|zTjjN9vX@vnWmc0K38f4+hTnT^pOauo-mInwmW>=hppT={Ax`|6qM*b*5%%v@+z zW&7!N>2%aM9H-9pE+%9fS;mBL?#1=jsmkuSMf^b-L}7d!HaWM&|rGUF^k<8m6=0 zQ?2%oHstevLTgH$_gB!A1NrVGz+WU~+HOa-#A9-IB}s;I-ZQA`eM&Igni5iRRU1k! zhemrF0h^XZsV=a&PqI_SM$V>St{Y@;vl$XOvtu;_^4!u+_mqyBs!2F+Ok;0Vqvd~D zU~q;TZIMk@P`0YqLuDderHRI%+rIfdxdOg6)~Rnw)3Xn*?i%OrND9ZXAO=|q&5 zLAUeTYm0=Wd!xG*fdAJr4+Fo3)ZOi$E#`?xzXsXMV5WRR8h6Mmzw6^uV$KR6*mgcl zA)0e>bvv(cVDD=+{r-nmytF1T4Bpw0x~&T|ji3AE2%sXgd@4*MU-a?pa74h3uiHqi zoALy|$f+xtuhoG@ZhX?fu{_cUov^}jcSpi@90T}sx|QU$+5u;gQ$<7!D9OepJ6GN|Gb~(%agUBcqYx`?He}8wKHJ$&_A21cg%kr=8j+84JY{(iD}N!>KeYL6 zdP7+y-IR_5{_WeV7qI?3FsHI_$AxOP8-?$!PFd?^>5q1BaupUGa@ z0}DAz0f^JV%U?O~hG)$dUq0_3da{8;7>0AxHZDyo-LGycU*u7Y_DeQ$R-61u1Ek-= z=P0k)6GLM2P9nPMy(&}Jx22{cetvU9<{zGq6!=Pk#UQRj^n*M6ZvEl#?^5xhZEC$o z`bMs-6)ARE*z`S~b$2Ch_*qJ%N8%w++CT7;*COBk?;Tgp-t49RaPi<+zAyTLoq7w6WlWJ)ae!rL)KhD# zi6EmT_VIAog>}@xlB3n;QLP3ROhCwy(^aH9?nVFJQdPf9+%koM4Q>T$a~}Ps0i+4E zbm-a-rpHjN*Bja((+M&HnQFb2IU*Q1M{nUH_Ri{?*wP$H7;-~gbKZwlA^PR`ll`g; zEDn(EPFz@XIj!uRw@cm0`$ZX9WZNIvb8|uJFs(2~(lAp=8+t!?4W<6sIe9)&$BK39 zK1%^vNE)G;xA*H@k=0ornKY(HpJW_=mcL;CJm2$_jmE(r{ow77tV}+6z&B3ObvSYR z{uwABs9e1&DH8&#Ac~+svOl{`U*+7yrVDNun6;{#ASS>b>Da7&$|f7ytsd{7xk9YFNCAEE7GyYjK~ihu<# z2pY{^GWJ}F?c(#aCwCZsQ2GRApk;xGr`9GPQ>k|kE;u&?c$yW#=Fk;H;mmMQ=>%qk zoI6}`>@+jTk+;|GK(7k6ihWF=TF3y-rwMjfCa6l`4;@jYVPE=dvf3sDB~ycC%qwod zG&nc$7@4$=DNjItXc5hdNS4es&P`-yyLTi$0S1T(8(TNOj}2Su0%}w=>1XEba>2j_ z*!?wc$Q$u?+l!idpl6FYb-AbG_loaakEJn{3z|V9H)Wbg-StLB>W?YuO`ya37O$@X z1Jqo7iP{^lsUP7&wkt)$xpdJ}Ay;PM>=5(I079chn|fQN=MGb{o*|>e62>5vVw16O z)BterJ=R8KPS0ixBKNuuskfMRmL!F&XRFWhvkNu)TPk(9h=jw2n3Q!~nFpRdO}Y=c zpuKsTT}2H@@>_j9I9i<11`tfW9pyAR_o#uLb8RN+D@{f+25+tl1l3!mH|h?wYCN+; z5df}4ZpcL5_}VKaqc2rfd-Cg}7UBnl%<1C}?!}d1F45x*9vw61bA^|tp`~d8@1C>) zJkklV4e!qTcYeZ~(mFLrxM)8)Tynu2k8ZYQE4ujX*?itaRuFd3Yy>KpU5@J^2Imem za+vWv?=FK`usm^O84~T(rr$XgZUs-!KpOQE+qsH#(*4!w*(43XG&d%V!uJ1e zxTlapH57t?!G&PljQlWVHmB9m2On~~GXMKk@@EK;wC#zXQhccum0^>>Bq0drl?Sh# z1B7qn>f2MTC#ahZw+`6Zd(G@LiPnp=S|?ZtwdiOXF2G}{RP)EYGO@^6c=WWT?+()! zB*&@=`RdGVf>^tB^i5zf`W^Q>9ulKBQWrh2?<2CtAW7KPDOKy+>GZi6yeAU7{y};E zo!X~0#uvyCE%|cJ=y4|Cw_nc!k7p97E<32_AZA*O4|Q1t)3zd1GU$4pd|3Gdzxm+B zl(fGz>fCSGe%->u1(C0OEFCg7UMASRVLR>95=n8AV!=UTUu|xmzzc@Y3o~ku{yqyI z%y~7j;gs7*{sYT(st6Ks_NBuvdOMmWoL%Z<$SrRqny@haxEru8W&BOYvF7ZVI6dN# z)ElqS3+U|GuSM<^$J}tcN?5YaZT;`%OU1-)jY{}s9?pQky<3R^IF}7o zo5i0+;~fqBx@dvw3tac+mHfR-;|AcSeg0!IC6}vC7ynvpR>S^qK8vvA&`$%tuH(m> zCO%M=*-r9o2lrLNgm7Z5j3qPh2d0$DPCu7l{q%wq4s-r)sUPD|;4Q_FSkh?n;BDVY zCmtiw%8UJ@#FORX6&GmC!!(vh+v^%5T~D6q(GsrievqeTEbYWl9hFbVn3~@we*1BA zXd%|?(6&jUp0ihae;{)ib5LAq39_NGYI`)|RAkmM8f3T@U!%z<{AoVsGr%ImLTT+J7~m^>wL52;>1h!FWM_^W5UxX^i%9< z?OL#N7jtrOp2!QMK<71>tUT$4egHh{=*SiG_E!`yVvAdiMx8V)*mDqBDcV)~E#q#!OdH0p9+El_V}97mB9gRt{7{nq4AH zHx*62{Jbxepyy@8b&|>{1(Z@uxZlqy+1XN!Sm0Tij$bZZ)(%aG%JAQIfJxO$y0eYj+^!_O*HVE?!W7O3NYD>9c9ddvz|YhB$%_Y$u${87 zx38!Os;Usub$Nnc=lMsG*V`)>^Zhbl$IW!@)9BKw5W$^&640}UzW7ya^5BGM3WJu# z3(Io#8)#RW3@WEwvQ6PDV|LlZJ2v~&E_n)P>VtrNc;LqScXbsvly9MxhY45)4f7(| zTHRZpWLk06i+5UGn<}jbqzf!cc~Piy2?reAEah{<_WZ*GsxW^-Es6k4me-` zAzOaCI8=x>jIYW2w8Y`vEb1Av1*BSZLTKs)t~l~-6`Hmh9>2Q#MquLxCFcR8FWe_a z7JJNI+ve`-!k&+!{BRqZOC%>kAiJ2gMQIhY52qq0q5G&JjARyi_3u?db8;IO$cGh} z^xb{mzEa{IdoLy>l{`VLMXTNiPnGWJ@RD9= zqdUbT?TvZS&JWGt#>wT#aiu$pulNioa4X2!i$Hz=B^n3cARj8!9q{9jl0>A0DCXu6 zN2lCuhT-aV)LA0ketcJnHMMH=^6}EmrvP?~DqK$)=IuFVue^|nA1S2$C8y%~ENb2n z=k-f3^$^2vPi}f|)jtl|>hdyK)GM(MkZ>u30G9LFu4I0n!3*A}s?YZHvdMI1&*lk3 zj6|LWDf!yDOFk!IB(|3c{c;x~7g5zmPvzujIJd39^aB@U{VSfeas2)B=;@3s_-y#5 zASr;2z>?4>a;ha?i@9x|auWX+<^}VxpH5+azGyw#2?eUCo{7hp^{2;RLe(h(scV*5 zt%|eTOn5ObZMFuVb}(mezw`A4MNS3rPV@M9qDoqxDh{6fN0`@ovTifjU$Vmtnmb;T z4}WE{O!gr5_({AsKp+(l-rXh6UFIUcjYwHX^RAVIw^gzA^F}#GvDHeB+T;#DeX^xZ zKsbkb-gtlfKnjrjT|y9K*~h%T|KYZy-f2%E-v&8b1!JVbO2Uh_pSnoxe^NhWs{i>b zG{AP3qr&bT+US@g@HoE#H(k{#Lk}&jRbG`j03*P*TBiwH)O**~Y1tW@UMCA{EsBiO zVlg@K;`U2{PEu(m#f(M_8tKamdDi4=+5c49T6m#F!E7A*aR4AFOR=i{>W;&h`c9dp z6Jwi$gPCK=Jr~ci8_z`x`E9h9r6bN@=!`-yVI?lz(ngp=I~@T+p5pDicoN>gcD+Ss zoWd&e^lYzOMgfqC0O93`IK;plB!fo7Ng>Qb@xTJzS;BOT*3@$jp9?`eOJrv-I%u)#dUSt1M zqDiS=8={MVMS!qcs`DoqxZPwNMlaS`(1VEQA^H`Uw{%@v;V?Qbn{L8arRTY;U84K8 zuJ`vcI*|$dFA1!_=l!tgIYs0rmoT;CA^cCZ23`QRvWq$NIL(@;< zer3V={ffIAiUca^bp(PBpld?PvX$a%cc&U}6H)&@ah_$(P(2!neL0v;_CGr<)*mwE z>v`o!BxiHh))op8lMx07Xd!6sDFRnMO|Vd0a*n-M$VU{N`uV$W1v@cjaeBz1Va~Pa zk>dW4fQ^nTwX9&87+e)9vitcxwZc&CpN@DznXZ0UiDh9ccTh=Q~5-*alS5!+riL!~Uk6ZR75w_^C+HJ#Q?|CY=fe4C}(&A1=m2E z!xe)mML>~$@F{1gba9Cl5-nLv=j|-Q*4OQ>W)~EOc?v_7FdY6*CK%g)B6nex8$-rK zdFu~vG~Zu2>#&@y4fzQL5=B~tGv`?o}NoS;&Ag?{9BM9a_1JCiUuD1~$lRm#WbCVgBb78_sBLniQN_we04ehzf)%%Yk*h zI7*wR_q>H+77zg`@M^D>Ts*c*46IGy0vUtua}ZCp5#2Nr-T7h1Hb~exg(m$-#k7_{ zJ9%i*5RZ~ziZSFqM=4OJlX=J)%|m0EuwUJGN0P8o;7K&l%}AK|_|i8%6v?4a2Y&Rh zDHt~iL@pUTcb_jUaUVuW9|1LA zChfs#)|whXmP{-6{l+FP!0}Q`R}+jj3Rv_q$M*H%{D=cxLgD)_!|VbF^3AW%1~GrG z{uA{j!H#0pH#=0a2Ynl&GI0$4Yb7D-GCKf#`@aiK?*F5oqfmiH%9YLB^T+kl|4s&k z6>I;JJ|)O3RvG^rWQQ(6hHJ_6%_uuT{fFmm7T{dz27$O=?z;2v+0cU@yW41*Q8x-P zHu9G2N;z~G6R(B;Y9Jt0SjtX@F#I1Zi^FRxTOUk=!M}!Cl2FbN*~8qs59$u6f1EHM zRt}^61b%6X^8veh(PZkT~-9bU~|u!#TEe+*7^Sg2H=1FVz#iyW6}t!k74dlOzg?cKO`w)C=D>q@1=(&d#>sw`y2R4z#1#Wa6cP*C}XHhDl*| ze@;$6sNJwD%By~W#iK7d+Cs~1fA0v%k$3}Kd}ZT2`?2Fem{7-ycvp}9?u;P66m;`# mO`7}vi>HPDr)$I&2nB9{vvn1F(eo0ZT?RVF+BKTaG5-g)o(7cw literal 0 HcmV?d00001 diff --git a/icons/512x512.png b/icons/512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..5b262142a5c9d60c75c6ff954f8665e3da39d459 GIT binary patch literal 13266 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 literal 0 HcmV?d00001 diff --git a/icons/512x512.psd b/icons/512x512.psd new file mode 100644 index 0000000000000000000000000000000000000000..1f9d8c1a6755e90c5f7b7f1c9fce15e7b38dd97f GIT binary patch literal 110990 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 `,this.props.type=t,this.__OUTER__=this.root.children[1],this.__PREPEND__=this.__OUTER__.children[0],this.__INPUT__=this.__OUTER__.children[1],this.__ICO__=this.__OUTER__.children[2],this.__APPEND__=this.__OUTER__.children[3],this.__LIST__=this.__OUTER__.children[4]}get readOnly(){return this.props.readonly}set readOnly(e){var t=typeof e;e!==this.props.readonly&&("boolean"===t&&e||"boolean"!==t?(this.props.readonly=!0,this.setAttribute("readonly",""),this.__INPUT__.setAttribute("readonly","")):(this.props.readonly=!1,this.removeAttribute("readonly"),this.__INPUT__.removeAttribute("readonly")))}get disabled(){return this.props.disabled}set disabled(e){var t=typeof e;e!==this.props.disabled&&("boolean"===t&&e||"boolean"!==t?(this.props.disabled=!0,this.setAttribute("disabled",""),this.__INPUT__.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled"),this.__INPUT__.removeAttribute("disabled")))}get value(){return this.__INPUT__.value}set value(e){this.__INPUT__.value=e}get type(){return this.__INPUT__.type}set type(e){"textarea"!==e&&(this.__INPUT__.type=e)}_moveSelect(e){var{list:t}=this.props;if(t&&t.length){e.preventDefault();var i=38===e.keyCode?-1:1,s=Array.from(this.__LIST__.firstElementChild.firstElementChild.children);null===this.props.mvidx?this.props.mvidx=0:this.props.mvidx+=i,this.props.mvidx<0?this.props.mvidx=0:this.props.mvidx>s.length-1&&(this.props.mvidx=s.length-1),s.forEach((e,t)=>{t===this.props.mvidx?(this.__LIST__.firstElementChild.scrollTop=e.offsetTop-150,e.setAttribute("focus","")):e.removeAttribute("focus")})}}_fetchSelect(e,t){var i=this.props.list[e];this.value=i.value,this.dispatchEvent(new CustomEvent("select",{detail:i})),this._handleChange(t),this.__LIST__.classList.remove("show"),this.props.mvidx=null}connectedCallback(){for(var e=this.__PREPEND__.assignedNodes(),t=this.__APPEND__.assignedNodes();e.length>1;)this.removeChild(e.pop());for(;t.length>1;)this.removeChild(t.pop());e.length&&"textarea"!==this.props.type&&this.__OUTER__.setAttribute("prepend",""),t.length&&"textarea"!==this.props.type&&this.__OUTER__.setAttribute("append","");var{type:i}=this.props;this._handleSubmit=$.catch(this.__INPUT__,"keydown",e=>{if(!this.disabled&&!this.readOnly){if((38===e.keyCode||40===e.keyCode)&&"text"===this.type)return this._moveSelect(e);if(13===e.keyCode){if("text"===this.type&&null!==this.props.mvidx)return this._fetchSelect(this.props.mvidx,e);("text"===i||"textarea"===i&&(e.ctrlKey||e.metaKey))&&this.dispatchEvent(new CustomEvent("submit",{detail:this.value}))}}}),"text"===i?(this._handleChange=$.bind(this.__INPUT__,"input",e=>{e.preventDefault(),this.dispatchEvent(new CustomEvent("fetch-suggest",{detail:{value:this.value,send:e=>{this.props.list=e,this._parseSuggestion()}}}))}),this._parseSuggestion=$.bind(this.__INPUT__,"click",e=>{var{list:t}=this.props;let{x:i,y:s,width:o}=this.getBoundingClientRect();if(t&&t.length){var r=t.map((e,t)=>`
  • ${e.value}
  • `).join("");this.__LIST__.firstElementChild.firstElementChild.innerHTML=r,this.__LIST__.classList.toggle("show",!0),this.__LIST__.style.cssText=`left:${i}px;top:${s+50}px;width:${o}px;`}else this.__LIST__.classList.toggle("show",!1)}),this._inactiveFn=$.outside(this,e=>{this.__LIST__.classList.remove("show")}),this._handleSelect=$.bind(this.__LIST__,"click",e=>{"LI"===e.target.tagName&&(this._fetchSelect(e.target.dataset.idx,e),this.dispatchEvent(new CustomEvent("input")))})):this._handleWheel=$.catch(this.__INPUT__,"wheel")}disconnectedCallback(){$.unbind(this.__INPUT__,"wheel",this._handleWheel),$.unbind(this.__INPUT__,"keydown",this._handleSubmit),$.unbind(this.__INPUT__,"input",this._handleChange),$.unbind(this.__LIST__,"click",this._handleSelect),$.clearOutside(this._inactiveFn)}attributeChangedCallback(e,t,i){if(null!==i&&t!==i)switch(e){case"icon":this.props.icon=i,i?this.__ICO__.setAttribute("is",i):(this.removeAttribute("icon"),this.__ICO__.removeAttribute("is"));break;case"autofocus":this.__INPUT__.setAttribute("autofocus",""),setTimeout(e=>{this.__INPUT__.focus()},10);break;case"label":case"placeholder":this.__INPUT__.setAttribute("placeholder",i);break;case"type":~TYPES.indexOf(i)?this.type=i:this.type="text";break;case"value":this.value=i;break;case"readonly":case"disabled":var s=e;"readonly"===s&&(s="readOnly"),this[s]=!0}}}; + +if(!customElements.get('wc-input')){ + customElements.define('wc-input', Input) +} diff --git a/src/lib/form/number.js b/src/lib/form/number.js new file mode 100644 index 0000000..dabd15a --- /dev/null +++ b/src/lib/form/number.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +import"../scroll/index.js";import"../icon/index.js";import $ from"../utils.js";export default class Number extends HTMLElement{static get observedAttributes(){return["value","max","min","step","autofocus","readonly","disabled"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{value:0,max:null,min:null,step:1,autofocus:!1,readonly:!1,disabled:!1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML="
    - \x3c!-- --\x3e + \x3c!-- --\x3e
    ",this.__OUTER__=this.root.children[1],this.__INPUT__=this.__OUTER__.children[1]}get readOnly(){return this.props.readonly}set readOnly(e){var t=typeof e;e!==this.props.readonly&&("boolean"===t&&e||"boolean"!==t?(this.props.readonly=!0,this.setAttribute("readonly",""),this.__INPUT__.setAttribute("readonly","")):(this.props.readonly=!1,this.removeAttribute("readonly"),this.__INPUT__.removeAttribute("readonly")))}get disabled(){return this.props.disabled}set disabled(e){var t=typeof e;e!==this.props.disabled&&("boolean"===t&&e||"boolean"!==t?(this.props.disabled=!0,this.setAttribute("disabled",""),this.__INPUT__.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled"),this.__INPUT__.removeAttribute("disabled")))}get value(){return this.props.value}set value(e){var t=+e;e=t==t?t:0,this.props.value=e,this.__INPUT__.value=e,this._checkActionEnable()}_checkActionEnable(){var{max:e,min:t,value:i}=this.props,s=i;null!==t&&(t>s&&(s=t),this.__OUTER__.children[0].classList.toggle("disabled",i<=t)),null!==e&&(e=e)),s!==i&&(this.props.value=s,this.__INPUT__.value=s,this.dispatchEvent(new CustomEvent("input")))}_updateValue(e){var{max:t,min:i,value:s,step:a}=this.props;if("+"===e){if(null!==t&&ts-a)return;s-=a}this.props.value=+s.toFixed(2),this.__INPUT__.value=this.props.value,this._checkActionEnable(),this.dispatchEvent(new CustomEvent("input"))}connectedCallback(){this._handleSubmit=$.catch(this.__INPUT__,"keydown",e=>{if(!this.disabled&&!this.readOnly)return 38===e.keyCode||40===e.keyCode?(e.preventDefault(),this._updateValue(38===e.keyCode?"+":"-")):void(13===e.keyCode&&(e.preventDefault(),this.dispatchEvent(new CustomEvent("submit",{detail:this.value}))))}),this._handleChange=$.catch(this.__INPUT__,"change",e=>{isFinite(this.__INPUT__.value)?(this.props.value=+this.__INPUT__.value,this.__INPUT__.value.endsWith(".")||(this.__INPUT__.value=this.props.value)):this.__INPUT__.value=this.props.value=0,this.dispatchEvent(new CustomEvent("input"))}),this._handleAction=$.bind(this.__OUTER__,"click",e=>{if(!this.disabled&&!this.readOnly){var t=e.target;if("SPAN"===t.tagName||"SPAN"===t.parentNode){var i=t.dataset.act||t.parentNode.dataset.act;this._updateValue(i)}}})}disconnectedCallback(){$.unbind(this.__INPUT__,"keydown",this._handleSubmit)}attributeChangedCallback(e,t,i){if(null!==i&&t!==i)switch(e){case"autofocus":this.__INPUT__.setAttribute("autofocus",""),setTimeout(e=>{this.__INPUT__.focus()},10);break;case"value":this.value=i>>0;break;case"step":case"max":case"min":var s=+i;s==s&&(this.props[e]=s),this._checkActionEnable();break;case"readonly":case"disabled":var a=e;"readonly"===a&&(a="readOnly"),this[a]=!0}}}; + +if(!customElements.get('wc-number')){ + customElements.define('wc-number', Number) +} diff --git a/src/lib/form/progress.js b/src/lib/form/progress.js new file mode 100644 index 0000000..b36397e --- /dev/null +++ b/src/lib/form/progress.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +export default class Progress extends HTMLElement{static get observedAttributes(){return["value","max"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{value:0,max:1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML=" ",this.__THUMB__=this.root.children[1].lastElementChild}get value(){return this.props.value}set value(e){this.props.value=+e,this.calculate()}calculate(){var{max:e,value:a}=this.props;this.__THUMB__.style.width=`${100*a/e}%`}connectedCallback(){this.calculate()}attributeChangedCallback(e,a,l){if(null!==l&&a!==l)switch(e){case"max":var t=+l;(t!=t||t<1)&&(t=1),this.props.max=t,this.calculate();break;case"value":var r=+l;r==r&&(this.props.value=r,this.calculate())}}}; + +if(!customElements.get('wc-progress')){ + customElements.define('wc-progress', Progress) +} diff --git a/src/lib/form/radio.js b/src/lib/form/radio.js new file mode 100644 index 0000000..4369942 --- /dev/null +++ b/src/lib/form/radio.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +import $ from"../utils.js";export default class Radio extends HTMLElement{static get observedAttributes(){return["label","checked","readonly","disabled"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{label:"",checked:!1,readonly:!1,disabled:!1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML=" ",this.__SWITCH__=this.root.lastElementChild}get value(){return this.props.label}set value(e){this.checked=this.props.label===e}get checked(){return this.props.checked}set checked(e){this.props.checked=!!e,this.__SWITCH__.classList.toggle("checked",this.props.checked)}get readOnly(){return this.props.readonly}set readOnly(e){var o=typeof e;e!==this.props.readonly&&("boolean"===o&&e||"boolean"!==o?(this.props.readonly=!0,this.setAttribute("readonly","")):(this.props.readonly=!1,this.removeAttribute("readonly")))}get disabled(){return this.props.disabled}set disabled(e){var o=typeof e;e!==this.props.disabled&&("boolean"===o&&e||"boolean"!==o?(this.props.disabled=!0,this.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled")))}connectedCallback(){this._handleClick=$.catch(this,"click",e=>{this.disabled||this.readOnly||this.checked||(this.checked=!0,this.dispatchEvent(new CustomEvent("input")))})}disconnectedCallback(){$.unbind(this,"click",this._handleClick)}attributeChangedCallback(e,o,t){if(null!==t&&o!==t)switch(e){case"label":this.props.label=t;break;case"checked":case"readonly":case"disabled":var l=e;"readonly"===l&&(l="readOnly"),this[l]=!0}}}; + +if(!customElements.get('wc-radio')){ + customElements.define('wc-radio', Radio) +} diff --git a/src/lib/form/select.js b/src/lib/form/select.js new file mode 100644 index 0000000..a0c547e --- /dev/null +++ b/src/lib/form/select.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +import"../scroll/index.js";import"../icon/index.js";import $ from"../utils.js";function parseOptions(e,t){let i="";for(let s of e)if(s.list){i+=`
    ${s.name}
    `;for(let e of s.list)t.DICT[e.value]=e,e.disabled||t.LIST.push(e),i+=`
    ${e.label}
    `}else s.disabled||t.LIST.push(s),t.DICT[s.value]=s,i+=`
    ${s.label}
    `;return i}export default class Select extends HTMLElement{static get observedAttributes(){return["label","placeholder","multi","value","options","mvidx","readonly","disabled"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{label:"",placeholder:"",multi:"",value:"",options:"",mvidx:null,readonly:!1,disabled:!1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML="
    ",this.__OUTER__=this.root.children[1],this.__PREPEND__=this.__OUTER__.children[0],this.__INPUT__=this.__OUTER__.children[1],this.__APPEND__=this.__OUTER__.children[3],this.__OPTG__=this.__OUTER__.children[4]}get readOnly(){return this.props.readonly}set readOnly(e){var t=typeof e;e!==this.props.readonly&&("boolean"===t&&e||"boolean"!==t?(this.props.readonly=!0,this.setAttribute("readonly","")):(this.props.readonly=!1,this.removeAttribute("readonly")))}get disabled(){return this.props.disabled}set disabled(e){var t=typeof e;e!==this.props.disabled&&("boolean"===t&&e||"boolean"!==t?(this.props.disabled=!0,this.setAttribute("disabled",""),this.__INPUT__.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled"),this.__INPUT__.removeAttribute("disabled")))}get value(){return this.props.value}set value(e){var{DICT:t,active:i}=this.props;this.props.value=e,this.__INPUT__.value=t&&t[e]&&t[e].label||e,i||this._updateStyle()}_renderOptions(e){this.props.DICT={},this.props.LIST=[];var t=this.__OPTG__.firstElementChild.firstElementChild;t.innerHTML=parseOptions(e,this.props),this.props.ITEMS=Array.from(t.children).filter(e=>"DD"===e.tagName&&!e.hasAttribute("disabled")),this.value=this.props.value}_moveSelect(e){var{LIST:t,DICT:i,ITEMS:s}=this.props;if(t&&t.length){e.preventDefault();var o=38===e.keyCode?-1:1;null===this.props.mvidx?this.props.mvidx=0:this.props.mvidx+=o,this.props.mvidx<0?this.props.mvidx=0:this.props.mvidx>s.length-1&&(this.props.mvidx=s.length-1),s.forEach((e,t)=>{t===this.props.mvidx?(this.__OPTG__.firstElementChild.scrollTop=e.offsetTop-150,e.setAttribute("focus","")):e.removeAttribute("focus")})}}_updateStyle(e){var{LIST:t,ITEMS:i,value:s}=this.props;if(t&&t.length){if(void 0===e)for(let i,o=-1;i=t[++o];)if(s===i.value){e=o;break}this.props.mvidx=e,i.forEach((t,i)=>{i===e?t.setAttribute("focus",""):t.removeAttribute("focus")})}}_fetchSelect(e,t){var i=this.props.LIST[e];this.value=i.value,this.dispatchEvent(new CustomEvent("select",{detail:i})),t&&this._updateStyle(e),this.props.active=!1,this.__OPTG__.classList.remove("show")}connectedCallback(){for(var e=this.__PREPEND__.assignedNodes(),t=this.__APPEND__.assignedNodes();e.length>1;)this.removeChild(e.pop());for(;t.length>1;)this.removeChild(t.pop());function i(){var{x:e,y:t,width:i}=this.getBoundingClientRect(),s=this.getAttribute("size");this.props.active=!0,t+=s&&"mini"===s?32:50,this.__OPTG__.style.cssText=`left:${e}px;top:${t}px;width:${i}px;`}e.length&&"textarea"!==this.props.type&&this.__OUTER__.setAttribute("prepend",""),t.length&&"textarea"!==this.props.type&&this.__OUTER__.setAttribute("append",""),this._handleKeydown=$.catch(this.__INPUT__,"keydown",e=>{if(!this.disabled&&!this.readOnly)return 38===e.keyCode||40===e.keyCode?this.props.active?this._moveSelect(e):(i.call(this),void this.__OPTG__.classList.toggle("show",!0)):13===e.keyCode&&null!==this.props.mvidx&&this.props.active?this._fetchSelect(this.props.mvidx):void 0}),this._activeFn=$.bind(this.__INPUT__,"click",e=>{var{options:t}=this.props;this.disabled||this.readOnly||(i.call(this),this.__OPTG__.classList.toggle("show"))}),this._handleSelect=$.bind(this.__OPTG__,"click",e=>{"DD"!==e.target.tagName||e.target.hasAttribute("disabled")||(this._fetchSelect(+e.target.dataset.idx,!0),this.dispatchEvent(new CustomEvent("input")))}),this._inactiveFn=$.outside(this,e=>{this.__OPTG__.classList.toggle("show",!1),this.props.active=!1})}attributeChangedCallback(e,t,i){if(null!==i&&t!==i)switch(e){case"label":case"placeholder":this.__INPUT__.setAttribute("placeholder",i);break;case"options":if(i){try{this._renderOptions(JSON.parse(i))}catch(e){}this.removeAttribute("options")}break;case"value":this.value=i;break;case"readonly":case"disabled":var s=e;"readonly"===s&&(s="readOnly"),this[s]=!0}}disconnectedCallback(){$.unbind(this.__INPUT__,"keydown",this._handleKeydown),$.unbind(this.__INPUT__,"click",this._activeFn),$.unbind(this.__OPTG__,"click",this._handleSelect),$.clearOutside(this._inactiveFn)}}; + +if(!customElements.get('wc-select')){ + customElements.define('wc-select', Select) +} diff --git a/src/lib/form/star.js b/src/lib/form/star.js new file mode 100644 index 0000000..cf252ba --- /dev/null +++ b/src/lib/form/star.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +import $ from"../utils.js";export default class Star extends HTMLElement{static get observedAttributes(){return["value","text","size","color","allow-half","show-value","starSize","disabled"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{value:0,text:[],size:"",color:"","allow-half":!1,"show-value":!1,starSize:32,disabled:!1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML=' ',this.__BOX__=this.root.children[1],this.__STARS__=Array.from(this.__BOX__.children),this.__TEXT__=this.__STARS__.pop()}get value(){return this.props.value}set value(t){var e=+t;(t=e==e&&e>0?e:0)>5&&(t=5),this.props.value=t,this._updateDraw(-1)}_updateDraw(t,e=0){var s="star-half",{value:o,tmp:a={i:0,f:0}}=this.props;-1===t&&(t=Math.floor(o),e=+(o%1).toFixed(1),t>0&&t===o&&(t--,e=1)),this.props["allow-half"]||(e=e>0?1:0),t===a.i&&e===a.f||(e>.5&&(s="star-full"),this.__STARS__.forEach((e,s)=>{e.setAttribute("is",s0&&(this.__STARS__[t].setAttribute("is",s),this.__STARS__[t].setAttribute("color",this.props.color)),this.props.tmp={i:t,f:e},0===t&&0===e?this.__TEXT__.textContent="":5===this.props.text.length?this.__TEXT__.textContent=this.props.text[t]:this.props["show-value"]&&(this.__TEXT__.textContent=t+e))}connectedCallback(){$.catch(this.__BOX__,"mousemove",t=>{if(!this.props.disabled&&"WC-ICON"===t.target.tagName){let e=+t.target.dataset.idx;this._updateDraw(e,+(t.offsetX/this.props.starSize).toFixed(1))}}),$.catch(this.__BOX__,"click",t=>{var{tmp:e,disabled:s}=this.props;s||"WC-ICON"===t.target.tagName&&(this.props.value=e.i+e.f,this.dispatchEvent(new CustomEvent("input")))}),$.catch(this.__BOX__,"mouseleave",t=>{this.props.disabled||this._updateDraw(-1)})}attributeChangedCallback(t,e,s){if(null!==s&&e!==s)switch(t){case"size":this.props.starSize=this.__STARS__[0].clientWidth;break;case"allow-half":case"show-value":case"disabled":this.props[t]=!0;break;case"color":s&&(this.props.color=s);break;case"text":s&&5===(s=s.split("|")).length&&(this.props.text=s.map(t=>t.trim()));break;case"value":this.value=s}}}; + +if(!customElements.get('wc-star')){ + customElements.define('wc-star', Star) +} diff --git a/src/lib/form/switch.js b/src/lib/form/switch.js new file mode 100644 index 0000000..5d2dc55 --- /dev/null +++ b/src/lib/form/switch.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +import $ from"../utils.js";export default class Switch extends HTMLElement{static get observedAttributes(){return["active-text","inactive-text","checked","disabled"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{"active-text":null,"inactive-text":null,checked:!1,disabled:!1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML="
    ",this.__SWITCH__=this.root.lastElementChild.firstElementChild}get value(){return this.props.checked}set value(e){this.checked=e}get checked(){return this.props.checked}set checked(e){this.props.checked=!!e,this.__SWITCH__.classList.toggle("checked",this.props.checked)}get disabled(){return this.props.disabled}set disabled(e){var t=typeof e;e!==this.props.disabled&&("boolean"===t&&e||"boolean"!==t?(this.props.disabled=!0,this.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled")))}connectedCallback(){this._handleClick=$.bind(this,"click",e=>{this.disabled||(this.checked=!this.checked,this.checked?null!==this.props["active-text"]&&(this.textContent=this.props["active-text"]):null!==this.props["inactive-text"]&&(this.textContent=this.props["inactive-text"]),this.dispatchEvent(new CustomEvent("input")))})}disconnectedCallback(){$.unbind(this,"click",this._handleClick)}attributeChangedCallback(e,t,i){if(null!==i&&t!==i)switch(e){case"checked":case"disabled":this[e]=!0;break;case"active-text":case"inactive-text":this.props[e]=i+""}}}; + +if(!customElements.get('wc-switch')){ + customElements.define('wc-switch', Switch) +} diff --git a/src/lib/icon/index.js b/src/lib/icon/index.js new file mode 100644 index 0000000..7f1e547 --- /dev/null +++ b/src/lib/icon/index.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent@doui.cc) + * @date 2020-07-07 16:27:17 + * @version v2.0.1 + * + */ + +'use strict' + +import SVG_DICT from"./svg.js";let dict=SVG_DICT;window.EXT_SVG_DICT&&Object.assign(dict,EXT_SVG_DICT);export default class Icon extends HTMLElement{static get observedAttributes(){return["is"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{is:""},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML=" ",this.__ICO__=this.root.lastElementChild,this.drawPath()}get is(){return this.props.is}set is(o){o&&this.setAttribute("is",o)}drawPath(){var{is:o}=this.props,t=dict[o];this.__ICO__&&o&&t&&(this.__ICO__.innerHTML="loading"===o?t:``,this.__ICO__.classList.toggle("load","loading"===o))}attributeChangedCallback(o,t,e){if(null!==e&&t!==e)switch(o){case"is":this.props.is=e,e?this.drawPath():this.removeAttribute("is")}}}; + +if(!customElements.get('wc-icon')){ + customElements.define('wc-icon', Icon) +} diff --git a/src/lib/icon/svg.js b/src/lib/icon/svg.js new file mode 100644 index 0000000..9da6381 --- /dev/null +++ b/src/lib/icon/svg.js @@ -0,0 +1 @@ +"use strict";const SVG_PATH={android:"M733.9 338.6C723.1 214.3 628.3 117 512.9 117s-210.2 97.3-221 221.6h442zM393 232.6c0-12.4 8.9-22.4 20-22.4 11 0 19.9 10.1 19.9 22.4 0 12.4-8.9 22.4-19.9 22.4-11.1 0-20-10-20-22.4m199.4 0c0-12.4 8.9-22.4 19.9-22.4 11 0 20 10.1 20 22.4 0 12.4-9 22.4-20 22.4s-19.9-10-19.9-22.4m-173.6-92c-4.7 2.4-9.6 5.2-13 7.2l-36-71.6c-2-3.9-0.8-8.9 2.7-11.1 3.5-2.3 7.9-0.9 9.9 3.1l36.4 72.4m187.7 0L643 68.2c2-3.9 6.4-5.3 9.9-3.1 3.5 2.2 4.7 7.2 2.8 11.1l-36.1 71.6c-3.4-1.9-8.4-4.7-13.1-7.2m-332 495.1c0 31.8-22.3 57.8-49.5 57.8-27.3 0-49.6-26-49.6-57.8V411.4c0-31.8 22.3-57.8 49.6-57.8 27.2 0 49.5 26 49.5 57.8v224.3z m574.1 0c0 31.8-22.3 57.8-49.5 57.8s-49.6-26-49.6-57.8V411.4c0-31.8 22.3-57.8 49.6-57.8 27.2 0 49.5 26 49.5 57.8v224.3zM293.8 363.1V722c0 31.8 23.2 57.8 51.4 57.8h35.6v122.3c0 31.8 22.3 57.8 49.6 57.8 27.2 0 49.5-26 49.5-57.8V779.9h64.6v122.3c0 31.8 22.3 57.8 49.5 57.8 27.3 0 49.6-26 49.6-57.8V779.9h36.2c28.3 0 51.4-26 51.4-57.8v-359H293.8z",app:"M834.6 960H564.3c-30.4 0-55.1-24.7-55.1-55V635c0-30.3 24.7-55 55.1-55h270.3c30.4 0 55.1 24.7 55.1 55v270c-0.1 30.3-24.8 55-55.1 55z m-445.3 0H119.1C88.7 960 64 935.3 64 905V635c0-30.3 24.7-55 55.1-55h270.3c30.4 0 55.1 24.7 55.1 55v270c-0.1 30.3-24.8 55-55.2 55z m177.9-61h258.4V640.8H567.2V899zM125 899h258.4V640.8H125V899z m595.6-356.7c-12.9 0-25.8-4.9-35.7-14.7L496.1 338.8c-9.5-9.5-14.8-22.2-14.8-35.6 0-13.5 5.2-26.1 14.8-35.6L685 78.8c19.7-19.7 51.7-19.7 71.3 0l188.9 188.8c9.5 9.5 14.8 22.2 14.8 35.6 0 13.5-5.3 26.1-14.8 35.6L756.3 527.6c-9.8 9.8-22.7 14.7-35.7 14.7zM543 303.5l178 177.9 178-177.9-178-177.9-178 177.9zM389.3 515.1H119.1c-30.4 0-55.1-24.7-55.1-55V190c0-30.3 24.7-55 55.1-55h270.3c30.4 0 55.1 24.7 55.1 55v270c-0.1 30.4-24.8 55.1-55.2 55.1z m-264.3-58h258.4V198.9H125v258.2z",apple:"M512.1 269c-1.3-2-1.6-19.8-0.5-30.5 2.3-22.4 7.5-40.1 17.6-60.2 9.4-18.5 24-38.6 39.7-54.8 22.7-23.3 61.8-45.2 97.4-54.7 12.1-3.2 30.1-5.9 31.4-4.6 1.2 1.2 1.4 24.1 0.3 34.8-4.9 45.1-27.1 88.3-63.2 123.1-28.1 27.1-57.6 42-91.7 46.5-12.1 1.7-30.1 1.9-31 0.4zM356.3 959c-33.9-7.5-66.3-32.7-104.1-81.2-37.7-48.3-59.2-84.4-79.3-133-20.5-49.4-33.3-97.8-39.2-147-1.4-11.5-1.7-21.6-1.7-47.4 0-36 0.9-46.1 6.2-71.6 10.5-50.4 34.1-95.6 67.5-128.9 20.3-20.3 39.3-33.6 66-46.2 29.9-14.1 60.4-21.1 92.2-21.1 25.8 0 44 4.5 104 25.7 22.1 7.8 38.6 12.5 46.8 13.3 4.5 0.4 7.9 0.1 13.8-1.4 8.3-2 38.3-11.9 63-20.6 53.4-18.9 88.9-23.4 130.9-16.4 50.9 8.4 89.7 26.7 121.4 57.4 9.6 9.3 24.2 26.1 24.2 28 0 0.3-3.7 3-8.3 5.9-18.4 12-41.3 32.1-52.6 46.4-36.5 46-48.6 108-33.1 169 13.7 53.7 53.1 100.6 107.4 127.7 8.9 4.4 10.9 5.8 10.7 7.3-0.3 2.5-11.5 31.3-17 43.6-11.1 25.1-28.8 56.1-45.8 80.4-29.8 42.7-57.9 73.8-80.6 89.3-10.9 7.4-26.8 14.8-38.9 18.1-8.6 2.3-11 2.5-25.2 2.5-12.9 0-17.6-0.4-26.1-2.1-11.8-2.4-32.8-9.1-54.8-17.3-26-9.8-50.3-14.7-72.7-14.7-26.6 0-48.5 4.6-83 17.5-20.3 7.6-31.8 11.3-45.1 14.5-9.7 2.3-13.6 2.8-26.1 3.1-10.4 0.4-16.5 0.1-20.5-0.8z",at:"M532.7 417.9c-22.6 0-39.8 9.5-51.7 28.4-11.8 19-19.6 47.4-23.3 85.3-1.9 25.2 0 44.2 5.8 57.1 5.8 12.9 15.3 19.4 28.2 19.4 11.8 0 22.2-3.2 31.4-9.5s17.4-17.9 24.3-34.9l13.1-142.2c-4.7-1.1-9.5-1.9-14-2.6-4.8-0.8-9.3-1-13.8-1zM512 64C264.5 64 64 264.5 64 512s200.5 448 448 448 448-200.5 448-448S759.5 64 512 64z m275.3 434.9c-1.9 46.1-16.4 85.9-43.1 119.8-26.7 33.6-66.8 50.4-119.8 50.4-17.7 0-33-4.7-45.7-14.2-12.9-9.5-22-23-27.1-40.5-8.8 17.9-20.2 31.2-33.8 40.1-13.6 8.8-29.5 13.4-47.8 13.4-32.5 0-57.3-12.5-74.5-37.3s-23.5-57.7-19-98.9c5.6-52.6 21.5-94.8 47.8-126.4s58.2-47.4 95.6-47.4c26.3 0 47.6 2.8 63.5 8.2 15.9 5.4 33.6 12.3 52.8 23.7l-1.1-0.2h1.7l-16.6 179.6c-1.1 18.3 0.2 31.4 3.7 38.3 3.7 6.9 8.4 10.6 14.4 10.6 24.3 0 43.9-11 58.6-33.6 14.6-22.6 22.8-50.8 24.6-85.3 3.4-71.1-11-126.4-43.5-166.1-32.5-39.6-82.5-59.7-150.1-59.7-65.7 0-118 21.3-156.8 64.2s-59.7 101-63.1 174.9c-3.7 71.9 12.1 128.8 47.2 170.4 35.1 41.8 85.5 62.7 151.4 62.7 18.3 0 37.3-1.9 57.1-5.8 19.6-3.9 36.8-8.8 51-14.6l12.5 52.1c-14.6 8.8-33.2 15.7-55.8 20.7-22.6 5-44.6 7.3-66.1 7.3-87.9 0-155.7-26.1-203.1-78.4-47.4-52.1-69.4-123.6-65.7-214.5 3.9-90 32.1-161.3 84.2-214.1 52.3-52.8 121.7-79 208.3-79 85.1 0 150.3 25 195.4 74.7 45.6 49.8 66.3 118.1 62.9 204.9z",attach:"M872.7 458.8L499.9 831.6c-74.6 74.6-196.6 74.6-271.1 0-74.6-74.6-74.6-196.6 0-271.1l389.7-389.7c47.4-47.4 122-47.4 169.5 0 47.4 47.4 47.4 122 0 169.5L398.2 730c-18.6 18.6-49.1 18.6-67.8 0-18.6-18.6-18.6-49.1 0-67.8l322-322-50.8-50.8-322 322c-47.4 47.4-47.4 122 0 169.5 47.4 47.4 122 47.4 169.5 0l389.7-389.7c74.6-74.6 74.6-196.6 0-271.1s-196.6-74.6-271.1 0L178 509.7C74.6 613 74.6 779.1 178 882.5s269.4 103.4 372.8 0l372.8-372.8-50.9-50.9z",backward:"M952.7 732c-19.3-108-78-244.6-175.4-336.6-48.6-46-102-75.5-156.7-91.3-6.8-2-13.7-3.8-20.6-5.4-6.9-1.6-13.8-3-20.7-4.2-13.8-2.4-27.6-4.1-41.4-5-9.7-0.7-19.4-1-29-1.1V124.7c0-0.1 0.2-1.6-0.9-2.5-0.9-0.7-2.2-0.8-3.2-0.2L68 420.6c-0.2 0.1-4.2 2.8-4 7.7 0.2 4.7 4.1 7 4.3 7.2l436.8 338.3c1.8 1.1 2.5 1.1 2.8 0.8 0.7-0.5 0.9-2.5 0.9-2.5V552.4c51.6 2.8 127.6 10.1 184.3 29.1C815.1 622.3 894 733 927.3 836.8c8.2 25.6 12.3 47.7 14.5 63.5 0.4 1.4 1.8 2.2 3 2 1-0.2 1.8-1 2-2 0.7-2.6 1.6-6.4 2.9-11.2 1.6-6.3 2.8-10.9 2.9-11.1 4.9-21.3 7.4-44 7.4-68.4 0-24.3-2.4-50.3-7.3-77.6z",bell:"M512 911.1c-37.2 0-69.8-25.6-79.1-60.5H384c9.3 62.8 62.8 109.4 128 109.4s118.7-48.9 128-109.4h-48.9c-9.3 34.9-41.9 60.5-79.1 60.5z m336-238.2c0-9-4.5-18-13.5-20.3-2.3 0-121.8-65.4-121.8-241.3 2.3-51.9-20.3-162.4-124-196.2-2.3 0-2.3 0-4.5-2.3 11.3-15.8 20.3-36.1 20.3-56.4 0-49.6-40.6-92.5-92.5-92.5s-92.5 40.6-92.5 92.5c0 20.3 6.8 40.6 20.3 56.4-2.3 0-4.5 0-4.5 2.3C331.6 248.9 309 357.2 311.3 409c0 175.9-115 239-121.8 243.5-6.8 4.5-13.5 11.3-13.5 20.3v121.8c0 6.8 2.3 13.5 6.8 18s11.3 6.8 15.8 6.8h626.9c6.8 0 13.5-2.3 15.8-6.8 4.5-4.5 6.8-11.3 6.8-18V672.9zM512 111c24.6 0 44.8 20.2 44.8 44.8 0 24.6-20.2 44.8-44.8 44.8-24.6 0-44.8-20.2-44.8-44.8 0-24.6 20.2-44.8 44.8-44.8zM242 761v-80.1c33.8-23.8 124.5-101.8 124.5-266.3 0-4.3-2.1-112.6 86.5-142.9 6.3-2.2 27.4-8.7 59.1-8.7 31.6 0 52.7 6.5 59.1 8.7 88.6 30.3 86.5 138.6 86.5 142.9 0 164.6 90.7 242.5 124.5 266.3V761H242z",calendar:"M315.3 323.8c-18 0-32.7-14.1-32.7-31.3V128.2c0-17.3 14.7-31.3 32.7-31.3 18 0 32.7 14.1 32.7 31.3v164.3c-0.1 17.2-14.7 31.3-32.7 31.3z m528.5 603.4H180.2C116.1 927.2 64 876 64 813.2V300.8c0-62.9 52.1-114 116.2-114h38.9c18 0 32.7 14.1 32.7 31.3 0 17.3-14.7 31.3-32.7 31.3h-38.9c-28.1 0-50.9 23-50.9 51.3v512.4c0 28.3 22.8 51.3 50.9 51.3h663.5c28.1 0 50.9-23 50.9-51.3V300.8c0-28.3-22.8-51.3-50.9-51.3H810c-18 0-32.7-14.1-32.7-31.3 0-17.3 14.7-31.3 32.7-31.3h33.7c64.1 0 116.2 51.1 116.2 114v512.4c0.1 62.7-52 113.9-116.1 113.9zM708.7 323.8c-18 0-32.7-14.1-32.7-31.3V128.2c0-17.3 14.7-31.3 32.7-31.3 18 0 32.7 14.1 32.7 31.3v164.3c0 17.2-14.7 31.3-32.7 31.3z m43.8 393.1h-481c-18 0-32.7-14.1-32.7-31.3 0-17.3 14.7-31.3 32.7-31.3h480.9c18 0 32.7 14.1 32.7 31.3 0 17.3-14.6 31.3-32.6 31.3z m0-205.3h-481c-18 0-32.7-14.1-32.7-31.3 0-17.3 14.7-31.3 32.7-31.3h480.9c18 0 32.7 14.1 32.7 31.3 0 17.2-14.6 31.3-32.6 31.3z m-131.2-267H399.9c-18 0-32.7-14.1-32.7-31.3 0-17.3 14.7-31.3 32.7-31.3h221.4c18 0 32.7 14.1 32.7 31.3 0 17.2-14.7 31.3-32.7 31.3z",camera:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64z m271.5 719.5C711 856.1 614.6 896 512 896s-199-39.9-271.5-112.5C167.9 711 128 614.6 128 512s39.9-199 112.5-271.5C313 167.9 409.4 128 512 128s199 39.9 271.5 112.5C856.1 313 896 409.4 896 512s-39.9 199-112.5 271.5zM400.1 212.1c-81.3 30.3-146.9 92.8-181.4 171.9H512L400.1 212.1zM825.6 576c4.3-21.1 6.4-42.5 6.4-64 0-73.2-24.6-140.7-66-194.7L622 576h203.6zM719.9 268.8C664 220.9 591.4 192 512 192c-15.9 0-31.6 1.2-46.9 3.4L621.7 448l98.2-179.2zM198.4 448c-4.3 21.1-6.4 42.5-6.4 64 0 73.3 24.6 140.8 66.1 194.7L402 448H198.4z m425.5 363.9c81.3-30.3 146.9-92.8 181.4-171.9H512l111.9 171.9z m-319.8-56.7C360 803.1 432.6 832 512 832c15.9 0 31.6-1.2 46.9-3.4L402.3 576l-98.2 179.2z",chart:"M321.4 812.4h-108V548h108v264.4z m165.2 0h-108V283.6h108v528.8z m165.2 0h-108V415.8h108v396.6z m158.9 0h-108V213.6h108v598.8zM960 876.8c0-10.6-8.4-19.2-18.7-19.2H82.7c-10.3 0-18.7 8.6-18.7 19.2S72.4 896 82.7 896h858.7c10.2 0 18.6-8.6 18.6-19.2zM85.3 128H80c-8.8 0-16 7.2-16 16v736c0 8.8 7.2 16 16 16h5.3c8.8 0 16-7.2 16-16V144c0-8.8-7.2-16-16-16z","checkbox-on":"M860.4 64H163.6C108.8 64 64 108.8 64 163.6v696.9c0 54.8 44.8 99.6 99.6 99.6h696.9c54.8 0 99.6-44.8 99.6-99.6V163.6C960 108.8 915.2 64 860.4 64z m-448 696.9L163.6 512l69.7-69.7 179.2 179.2 378.3-378.3 69.7 69.7-448.1 448z","checkbox-off":"M860.2 163.6v696.8H163.6V163.6h696.6m0-99.6H163.6C108.8 64 64 108.8 64 163.6v696.8c0 54.8 44.8 99.6 99.6 99.6h696.8c54.8 0 99.6-44.8 99.6-99.6V163.6c-0.2-54.8-45-99.6-99.8-99.6z",client:"M578 886.6H137.9c-40.7 0-73.9-35.1-73.9-78.3v-46.9c0-17.3 13.4-31.3 29.9-31.3H578c16.5 0 29.9 14.1 29.9 31.3 0 17.3-13.4 31.3-29.9 31.3H123.7v15.6c0 8.6 6.3 15.6 14.1 15.6H578c16.5 0 29.9 14.1 29.9 31.3 0 17.4-13.4 31.4-29.9 31.4z m308.1 0h-176c-40.7 0-73.9-35.1-73.9-78.3V432.8c0-43.2 33.1-78.3 73.9-78.3h176.1c40.7 0 73.9 35.1 73.9 78.3v375.6c-0.1 43.1-33.2 78.2-74 78.2z m-176-469.4c-7.8 0-14.2 7-14.2 15.6v375.6c0 8.6 6.3 15.6 14.2 15.6h176.1c7.8 0 14.1-7 14.1-15.6V432.8c0-8.6-6.3-15.6-14.1-15.6H710.1z m88 374.1c-7.9 0-15.6-3.2-21.1-8.8-5.6-5.6-8.7-13.3-8.7-21.1 0-7.9 3.2-15.7 8.8-21.1 5.5-5.5 13.2-8.7 21-8.7 8 0 15.7 3.2 21.2 8.8 5.5 5.5 8.7 13.2 8.7 21 0 8-3.2 15.7-8.8 21.2-5.6 5.5-13.3 8.7-21.1 8.7zM578 669.5H225.9c-40.7 0-73.9-35.1-73.9-78.3V215.6c0-43.2 33.1-78.3 73.9-78.3h572.2c40.7 0 73.9 35.1 73.9 78.3v46.9c0 17.3-13.4 31.3-29.9 31.3s-29.9-14.1-29.9-31.3v-46.9c0-8.6-6.3-15.6-14.2-15.6H225.9c-7.8 0-14.1 7-14.1 15.6v375.6c0 8.6 6.3 15.6 14.1 15.6H578c16.5 0 29.9 14.1 29.9 31.3 0 17.3-13.4 31.4-29.9 31.4z",close:"M925.9 960c-9.1 0-17.7-3.5-24.1-10L512 560.2 122.2 950c-6.4 6.4-15 10-24.1 10-9.1 0-17.7-3.5-24.1-10-13.3-13.3-13.3-34.9 0-48.2L463.8 512 74 122.2C60.7 108.9 60.7 87.3 74 74c13.3-13.3 34.9-13.3 48.2 0L512 463.8 901.8 74c13.3-13.3 34.9-13.3 48.2 0 13.3 13.3 13.3 34.9 0 48.2L560.2 512 950 901.8c13.3 13.3 13.3 34.9 0 48.2-6.4 6.5-15 10-24.1 10z",color:"M512 64C283.2 64 96 265.6 96 512s187.2 448 416 448c39.3 0 69.3-32.3 69.3-74.7 0-19.9-6.9-37.3-18.5-49.8-11.6-12.4-18.5-29.9-18.5-49.8 0-42.3 30-74.7 69.3-74.7h83.2c127.1 0 231.1-112 231.1-248.9C928 243.2 740.8 64 512 64zM256 512c-36.3 0-64-27.7-64-64s27.7-64 64-64 64 27.7 64 64-27.7 64-64 64z m128-192c-36.3 0-64-27.7-64-64s27.7-64 64-64 64 27.7 64 64-27.7 64-64 64z m256 0c-36.3 0-64-27.7-64-64s27.7-64 64-64 64 27.7 64 64-27.7 64-64 64z m128 192c-36.3 0-64-27.7-64-64s27.7-64 64-64 64 27.7 64 64-27.7 64-64 64z","dbl-left":"M536.2 948.6L76.3 539.7l-0.3-0.3c-7.7-7.4-12-17.2-12-27.6 0-12.4 6.1-23.9 16.8-31.6L536.3 75.3c8.1-7.3 19-11.3 30.5-11.3 24.2 0 43.9 18.1 43.9 40.3 0 11.1-4.8 21.4-13.4 29L171.2 512l426.1 378.7c8.5 7.6 13.4 18.1 13.4 29 0 22.2-19.7 40.3-43.9 40.3-11.3 0-22.2-4-30.6-11.4z m349.4 0l-460-408.9-0.3-0.3c-7.7-7.4-12-17.2-12-27.6 0-12.4 6.1-23.9 16.8-31.6L885.6 75.3c8.2-7.3 19-11.3 30.5-11.3 24.2 0 43.9 18.1 43.9 40.3 0 11.1-4.8 21.4-13.4 29L520.5 512l426.1 378.7c8.5 7.6 13.4 18.1 13.4 29 0 22.2-19.7 40.3-43.9 40.3-11.3 0-22.2-4-30.5-11.4z","dbl-right":"M457.2 960c-24.2 0-43.9-18.1-43.9-40.3 0-10.9 4.9-21.4 13.4-29L852.8 512 426.7 133.2c-8.6-7.5-13.4-17.8-13.4-29 0-22.2 19.7-40.3 43.9-40.3 11.5 0 22.4 4 30.6 11.3l455.5 404.9c10.7 7.7 16.8 19.2 16.8 31.6 0 10.4-4.3 20.2-12 27.6l-0.3 0.3-460 409c-8.4 7.4-19.3 11.4-30.6 11.4z m-349.3 0C83.7 960 64 941.9 64 919.7c0-10.9 4.9-21.4 13.4-29L503.5 512 77.4 133.2c-8.6-7.5-13.4-17.8-13.4-29C64 82.1 83.7 64 107.9 64c11.5 0 22.4 4 30.6 11.3L594 480.2c10.7 7.7 16.8 19.2 16.8 31.6 0 10.4-4.3 20.2-12 27.6l-0.3 0.3-460.1 408.9c-8.3 7.4-19.2 11.4-30.5 11.4z",deny:"M321.8 540.6c-22.2 0.1-33.4-8.7-33.5-26.5-0.1-18.2 11-27.4 33.2-27.5l380.2-2.1c12.8-0.1 21.8 2.4 27.1 7.6 5.3 5.1 8 11.6 8 19.6 0 7.9-2.4 14.4-7.4 19.3s-14.1 7.4-27.5 7.5l-380.1 2.1zM512 120c216.5 0 392 175.5 392 392 0 78.5-23.1 151.5-62.8 212.8-0.6 12.9 6.4 24.8 17.8 30.2 10 4.7 22 3.6 31.3-2.9C934.4 682.7 960 600.3 960 512c0-247.4-200.6-448-448-448S64 264.6 64 512s200.6 448 448 448c83.3 0 161.3-22.7 228.1-62.4 9.5-9.6 11.4-24.3 4.9-35.6-6-10.5-18.1-16.2-30.3-14.4C655.5 883.4 586.2 904 512 904c-216.5 0-392-175.5-392-392s175.5-392 392-392z",doc:"M646.4 960H243.2C182.9 960 128 903.8 128 842.1V291.9c0-29.4 11.8-59 32.5-81.3 21.4-23.1 49.2-35.8 78.4-35.8l23.9-0.6c0.3-29 12.6-56.6 34.7-77.7C319.2 75.9 348.4 64 377.6 64c3.2 0 319.3 0.9 322.6 0.9h3.4L896 289.6v442.5c0 61.7-54.9 117.9-115.1 117.9l-19.3-0.2c-0.2 29.2-12.5 56.8-34.9 78-21.8 20.4-51 32.2-80.3 32.2zM240.6 232.3c-23.3 0-56.6 35.1-56.6 59.6v550.2c0 10.9 8.1 26.2 20.6 39.1 12.8 13.2 27.6 21.4 38.6 21.4h403.3c19.1 0 44.5-25.7 46.3-52.9l-315.2 0.3c-60.3 0-115.2-56.2-115.2-117.9V231.7l-21.8 0.6z m124-110.9c-22.9 0-46.2 35.2-46.2 60.5v550.2c0 25.3 23.3 60.5 46.2 60.5h416.3c11 0 25.8-8.2 38.6-21.4 12.5-12.9 20.6-28.3 20.6-39.1V341.5h-86c-61.1 0-102.2-41.7-102.2-103.9 0-0.5-0.4-56.4 0-116.2H364.6z m335.6 536.3h-242c-19 0-34.5-15.9-34.5-35.3 0-19.5 15.5-35.3 34.5-35.3h242c19 0 34.5 15.9 34.5 35.3s-15.5 35.3-34.5 35.3z m0-137.4h-242c-19 0-34.5-15.9-34.5-35.3 0-19.5 15.5-35.3 34.5-35.3h242c19 0 34.5 15.9 34.5 35.3s-15.5 35.3-34.5 35.3z m7.6-310.2c0 26.1 23.7 74.6 46.2 74.6h64.3L707.8 149.2v60.9z",download:"M639.8 187.8H384.2v60.8h255.7v-60.8z m0-59.4H384.2v31.8h255.7v-31.8z m224.6 237.3H639.8v-87.3H384.2v87.3H161.8l349 340.1 353.6-340.1z m19.4 289.6l-30.7 151.2H170.8l-30.6-151.2H64v240.3h896V655.3h-76.2z",edit:"M835 298.7L685.5 154.2l74.8-72.3c24.8-23.9 64.9-23.9 89.6 0l59.8 57.8c24.8 24 24.8 62.8 0 86.8L835 298.7zM400.8 718.5L251.4 574l406.3-389.8 149.4 144.5-406.3 389.8zM131.3 837l90.9-234.9 148.2 143.3L131.3 837z m791.4 123H101.3C80.8 960 64 943.2 64 922.7c0-20.5 16.8-37.3 37.3-37.3h821.3c20.5 0 37.3 16.8 37.3 37.3 0.1 20.5-16.7 37.3-37.2 37.3z",eye:"M512 210c-203.6 0-376.8 124.8-448 302 71.2 177.2 244.4 302 448 302s376.8-124.8 448-302c-71.2-177.2-244.4-302-448-302z m0 503.4c-112 0-203.6-90.6-203.6-201.4S400 310.6 512 310.6 715.6 401.2 715.6 512 624 713.4 512 713.4z m0-322.2c-67.2 0-122.2 54.4-122.2 120.8s55 120.8 122.2 120.8S634.2 578.4 634.2 512s-55-120.8-122.2-120.8z","eye-off":"M512.1 289.6c112.4 0 203.8 90.6 203.8 202.2 0 26.2-5.2 51-14.6 74l119 118c61.6-51 110-116.8 139.8-192-70.6-177.4-244.5-303.1-448.3-303.1-57 0-111.6 10.2-162.2 28.2l88 87.4c23.1-9.3 48.1-14.7 74.5-14.7zM104.8 179.5l93 92.2 18.8 18.6C148.8 342.2 95.8 411.8 64 491.8c70.4 177.4 244.3 303.1 448.1 303.1 63.2 0 123.4-12.2 178.4-34l17.2 17 119.4 118 51.8-51.4-722.5-716.4-51.6 51.4z m225.1 223.3l63.2 62.6c-2 8.4-3.2 17.4-3.2 26.2 0 67 54.6 121.2 122.2 121.2 9 0 18-1.2 26.4-3.2l63.2 62.6c-27.2 13.4-57.4 21.4-89.6 21.4-112.4 0-203.8-90.6-203.8-202.2 0-31.6 8.2-61.4 21.6-88.6z m175.6-31.4l128.4 127.4 0.8-6.4c0-67-54.6-121.2-122.2-121.2l-7 0.2z",face:"M327.9 690.6c-6.5-3.9-12.4-11.6-12.4-19.7 0-12.3 9.9-22.2 22.2-22.2 2 0 3.7 0.6 5.5 1.1h0.5c51.5 23.7 108.7 36.1 169.1 36.1 59.5 0 115.8-12.7 166.7-35.7h0.2c2.4-0.8 4.9-1.5 7.6-1.5 12.3 0 22.4 10 22.4 22.4 0 8.5-4.7 15.8-11.6 19.6-56.4 25.7-118.8 40.6-184.8 40.6-65.7 0-129.2-15.3-185.4-40.7-0.3-0.1-0.2-0.1 0 0zM512 120c216.5 0 392 175.5 392 392 0 78.5-23.1 151.5-62.8 212.8-0.6 12.9 6.4 24.8 17.8 30.2 10 4.7 22 3.6 31.3-2.9C934.4 682.7 960 600.3 960 512c0-247.4-200.6-448-448-448S64 264.6 64 512s200.6 448 448 448c83.3 0 161.3-22.7 228.1-62.4 9.5-9.6 11.4-24.3 4.9-35.6-6-10.5-18.1-16.2-30.3-14.4C655.5 883.4 586.2 904 512 904c-216.5 0-392-175.5-392-392s175.5-392 392-392zM394.6 391.6c0-25-20.3-45.3-45.3-45.3-25 0-45.3 20.3-45.3 45.3 0 25 20.3 45.3 45.3 45.3 25 0 45.3-20.3 45.3-45.3z m281.3-45.2c-25 0-45.3 20.3-45.3 45.3 0 25 20.3 45.3 45.3 45.3 25 0 45.3-20.3 45.3-45.3 0-25.1-20.3-45.3-45.3-45.3z","finger-print":"M156.2 411.2c-4.8 0-9.8-1.2-14.2-3.8-13.4-7.8-18-24.8-10.2-38.2C167.4 309.2 275.6 169 512 169c102.4 0 192.2 27.2 266.8 80.8 61.4 44 95.8 93.8 112.2 117.8 8.8 12.8 5.4 30-7.4 38.8-12.8 8.6-30.4 5.4-39.2-7.4-29.8-43.2-120.2-174.4-332.4-174.4-207.2 0-300.8 120.8-331.4 172.6-5.2 9.2-14.6 14-24.4 14zM631 960c12.6 0 24-8.4 27.4-21 3.8-14.8-5.2-30-20.4-33.8C501 870.8 443.8 729 439.4 717.8c-1.4-4.6-7.4-27.4-9.4-55.6-2-27-0.6-64.2 17.4-88 13.2-17.4 34.4-25.8 64.6-25.8 55 0 64.2 27.2 78.6 83.6 14 55 33.2 130.4 140 135.8 41 2 78-16.4 104-51.6 39-52.8 46.4-133.6 18.8-205.6-21.6-56.4-63.2-112.8-114-154.8-65.6-54-144.2-82.6-227.4-82.6-180 0-299.6 123.2-338.4 245.4C138 631.4 181.2 795 183 802c4 14.8 19.6 23.8 34.6 19.8 15-3.8 24-19.2 20-34-0.4-1.4-40.8-154.8-10-252.4 16.6-52.4 51.2-103.4 94.8-139.6C375 352.2 440.6 329 512 329c167.2 0 262 131.8 288.8 201.8 20.8 54 16 115.4-11.6 153-10.2 13.8-28.2 30-55.6 28.6-62.4-3.2-73.2-34.4-88.2-93.8-7.2-28.6-14.6-58.2-33-82.2-22.4-29.4-55-43.6-100.2-43.6-48.6 0-85.4 16.2-109.6 48-52.8 69.6-18.4 188.4-17 193.4l0.4 1.6c2.6 7.2 66.6 180.4 238 223.4 2.4 0.6 4.6 0.8 7 0.8z m-220-12.8c6.8 0 13.8-2.6 19-7.4 11.4-10.4 12-28.2 1.4-39.4-60.4-64-94.6-135.6-107.4-225.6-6.4-52.8 2.6-132.6 49-184.4 32.2-36 79-54.2 138.8-54.2 69.2 0 121.6 31.2 156 92.6 27.4 48.8 33 98.8 33 99.4 1.6 15.2 15.6 26.4 31 24.8s26.8-15.2 25.2-30.6c-0.2-2.4-6.6-60.6-38.8-119-44.4-80.4-115.6-123-206.2-123-76.6 0-137.6 24.6-181 73-58.8 65.6-70.8 161-62.6 228.4v0.6c14.6 101.8 53.4 183.2 122 256 5.6 5.8 13 8.8 20.6 8.8zM727 867c12.8 0 26.2-0.8 39.8-2.4 15.4-1.6 26.6-15.4 24.8-30.8-1.8-15.4-15.8-26.4-31.2-24.6-61.6 7-111.6-5-149-35.2-63.2-51.2-71.4-140.2-71.6-141.8-1.2-15.4-14.6-26.8-30.2-25.6s-27.2 14.6-26 30c0.4 4.6 9.6 113.4 91.6 180.2C616 850.2 667 867 727 867z m64.6-716c0 15.4-12.6 27.8-28.2 27.8-6.4 0-12.2-2-17-5.6l-0.4 0.4 0.2 0.2c-0.8-0.4-72.6-54-234.2-54s-233.4 53.4-234.2 54l0.2-0.2c-4.6 3.2-10.2 5.2-16.4 5.2-15.6 0-28.2-12.4-28.2-27.8 0-8.2 3.6-15.6 9.4-20.8 0 0 0.2 0 0.4-0.2 1-1 2.2-1.8 3.4-2.6C265 114.6 348.2 64 512 64c156 0 239 45.8 262.4 61.2 10.2 4.2 17.2 14.2 17.2 25.8z",fire:"M622.5 959.8c-29.2-27.3-63-64.1-77.5-99.5-35.2-86 0-170.6 0-170.6s-113.8 12-167.3 155c-15.6 41.7 4.2 84.7 27 115.4C245.3 918.4 129 787.8 129 632.8c0-85.6 69.4-139.2 128-199.1 33.8-34.5 64-170.6 64-170.6s49.6 59.6 64 142.2c19.3 111.3 0 142.2 0 142.2s94.4-64.9 96-199C482.7 197.2 385 64 385 64s223.5 111.6 279.9 255.2c67.1 171 40.1 342 40.1 342s65.6-38 96-85.3c33.5-52.1 32-113.7 32-113.7s62.5 92 64 170.6c2.9 154.7-115 285.2-274.5 327z",first:"M733.2 611.4c-4.8-10.3-18.1-15.2-29.8-10.8-11.6 4.3-17.2 16.3-12.4 26.6L771.9 801l-148.4-26.7c-9.1-1.6-18.5 1.9-23.7 8.9l-83.3 113.3-4.2 6.5-4.9-6.4L424.2 784c-5.1-6.9-14.5-10.4-23.7-8.6l-148.4 28.1 81.1-174.6c4.8-10.4-0.7-22.2-12.3-26.5-11.6-4.2-25 0.7-29.8 11.1l-97.6 210.2c-3.2 7-1.9 14.9 3.5 20.7 5.4 5.8 13.9 8.4 22.2 6.8L394.6 818l98.2 133c2.6 3.5 6.2 6.1 10.3 7.6 1.9 0.7 4 1.1 6.1 1.3 0.2 0 3.7 0.1 4.6 0.1h0.3c6.8-0.6 13-3.9 16.8-9.1L629.4 817l175.4 31.5c4.6 0.8 9.2 0.4 13.3-1.2 3.4-1.3 6.4-3.3 8.8-5.9 5.4-5.8 6.7-13.8 3.5-20.7l-97.2-209.3zM512 64c-156.9 0-284.5 127.6-284.5 284.5S355.1 632.9 512 632.9s284.5-127.6 284.5-284.5S668.9 64 512 64z m20.9 127.4v320.2h-42.8V284.3h-74.7v-31.9c27.6 0 46.9-3.5 57.8-10.5 12.4-8.2 21.9-25.1 28.2-50.6h31.5z",floppy:"M841.4 960H182.6c-30.1 0-54.6-28.4-54.6-63.4V127.4c0-34.9 24.5-63.4 54.6-63.4H728c6.3 0 12.5 3 16.9 8.1l144.2 168.5c4.4 5.1 6.8 11.9 6.8 19.1v637c0.1 34.9-24.4 63.3-54.5 63.3z m-69.9-54.4h69.8c4 0 7.3-4 7.3-9h4.6-4.6V270.8L718.1 118.4h-22.5v192.4c0 28.1-19.7 50.9-43.9 50.9H371.3c-24.2 0-43.9-22.8-43.9-50.9V118.4H182.6c-4 0-7.3 4-7.3 9v769.3c0 4.9 3.3 9 7.3 9h83.9v-271c0-79.1 55.3-143.5 123.3-143.5h258.4c68 0 123.3 64.4 123.3 143.5v270.9z m-457.6 0h410.3V634.7c0-49.1-34.1-89.1-75.9-89.1H389.8c-41.9 0-75.9 40-75.9 89.1v270.9z m284-128.7H426.1c-10.2 0-18.5-10.4-18.5-23.2 0-12.8 8.3-23.2 18.5-23.2h171.8c10.2 0 18.5 10.4 18.5 23.2 0 12.8-8.3 23.2-18.5 23.2z m0-80.6H426.1c-10.2 0-18.5-10.4-18.5-23.2 0-12.8 8.3-23.2 18.5-23.2h171.8c10.2 0 18.5 10.4 18.5 23.2 0 12.8-8.3 23.2-18.5 23.2z m5.3-389h45V118.4h-45v188.9z m-228.4 0h181.1V118.4H374.8v188.9z",fly:"M471.7 926.5h-57.9V728.6c0-16.6 3.4-39.9 29.6-72.3 13.7-16.9 285-330.6 383.7-444.7l-675 362.6 217.9 77-16.7 54.4-9.5-3.3c-9.6-3.3-236.2-81.6-258.3-91.9-12.9-6-21-17.9-21.5-31.8-0.6-16.6 9.2-32.2 26.3-41.7 26.9-15 765.6-403.4 809.7-426.6 4.6-3.8 22.3-17.2 41.3-11.4l1.2 0.4 1.1 0.7c18.5 11.5 16.9 28.5 16 38.7-0.2 2-0.4 3.9-0.4 5.3v2.5l-0.9 1.6c-5.1 16.6-50.8 251.5-84.3 423.4-27 138.8-43.9 225.1-46.5 235.5-3.8 20.4-14.1 36.9-28.5 45.2-11.7 6.7-25 7.7-38.6 2.8-25.3-6.2-242.8-78.3-252.2-81.4l-10-3.3 23.8-59 8.7 2.9c91.7 31 230.8 77.5 244.2 80.8h0.9c2.3-13.5 12.7-68.5 58.8-307.2 20.7-106.9 41.5-214.6 52.1-269.3C771 355.9 503.6 673 481 698.6c-5 9.3-9.3 17.6-9.3 29.9v198z","folder-open":"M107.6 845.9l10.9 1.2c1.3 0.1 2.6 0.2 3.9 0.2H783c14.3 0 27-9 30.7-21.9l120.9-417.9c2.6-9 0.6-18.3-5.5-25.7-6.1-7.3-15.2-11.5-25.2-11.5h-94.5v-43.2c0-17.3-15.2-31.4-33.9-31.4H375.3c-4.6 0-9-1.7-12.3-4.7l-54-50c-6.4-5.9-14.9-9.2-23.9-9.2H117.3c-18.7 0-33.8 14.1-33.8 31.4v552.6c0 14.2 10.2 26.2 24.1 30.1z m679.3 20.9H117.6C88 866.8 64 842.7 64 813.1V210.9c0-29.6 24-53.7 53.6-53.7h168.7c14.3 0 27.8 5.6 37.9 15.8l53.7 53.9h401.4c29.6 0 53.6 24.1 53.6 53.7v27.6h75.5c16.2 0 31.1 7.4 40.9 20.2 9.8 12.8 13 29.1 8.9 44.7L836.7 828.5c-6.1 22.5-26.5 38.3-49.8 38.3z m20-18.8H92.1c-5.2 0-9.9-2.4-13.1-6.5-3.1-4.1-4.1-9.3-2.8-14.3L207 334.6c1.9-7.2 8.5-12.3 15.9-12.3h714.8c5.2 0 10 2.4 13.1 6.5 3.1 4.1 4.1 9.3 2.8 14.3L822.8 835.8c-1.9 7.2-8.5 12.2-15.9 12.2zM83 804.5V203.6c0-10.2 8.3-18.5 18.4-18.5H280c4.9 0 9.6 1.9 13 5.4l57.5 58.1c6.8 6.9 15.8 10.6 25.5 10.6h426c10.2 0 18.4 8.3 18.4 18.5v50.1H235.5c-15.3 0-28.7 10.4-32.7 25.4L83 804.5zM119.5 213v413.2l74.3-279.8c6-22.5 26.3-38.3 49.5-38.3h530.1v-25.5h-398c-14.3 0-27.6-5.6-37.7-15.8L284.2 213H119.5z","folder-close":"M902.7 923.3h-776c-34.3 0-62.1-27.9-62.1-62.3V162.9c0-34.3 27.9-62.3 62.1-62.3h195.6c16.6 0 32.2 6.5 44 18.3l62.2 62.5h465.4c4.2 0.1 31.1 1 50.4 23.6 17.6 20.5 16.3 44.3 16 49v624.9c-6.9 26.2-30.6 44.4-57.6 44.4z m-607.9-452h332.4c7.1 0 12.8-5.2 12.8-11.7 0-6.5-5.7-11.7-12.8-11.7H294.8c-7.1 0-12.8 5.2-12.8 11.7 0 6.5 5.7 11.7 12.8 11.7z m0 128.3h434.4c7.1 0 12.8-5.2 12.8-11.7 0-6.5-5.7-11.7-12.8-11.7H294.8c-7.1 0-12.8 5.2-12.8 11.7 0 6.4 5.7 11.7 12.8 11.7z m0 128.1h434.4c7.1 0 12.8-5.2 12.8-11.7 0-6.5-5.7-11.7-12.8-11.7H294.8c-7.1 0-12.8 5.2-12.8 11.7 0 6.5 5.7 11.7 12.8 11.7z",get:"M958.3 414.3c-43.9-110.1-5.6-200.2 1.7-303.4-0.2-1.3-1-2.2-2.1-2.4-0.7-0.1-1.2 0.1-1.5 0.2-54.6 30.4-109.6 72.7-162.7 120.7l-62.9 60.4c-181 183.4-325.3 409.4-325.3 409.4L300.8 482.7c-0.1-0.2-0.8-1.1-2.1-1.2-0.7-0.1-1.2 0.1-1.5 0.3l-232 120.5c-1 1-1.4 2.3-1.1 3.5 0.3 1.1 1 1.7 1.3 1.9 101 41.4 251 175.1 351.6 306.7 0.6 0.9 1.6 1.3 2.6 1.1 1.2-0.2 1.7-1.3 1.7-1.4C483.6 795.9 691.6 588.4 840.5 482l59.1-38.5c22-12.7 41.3-21.6 57.1-25.8 0.3 0 0.9-0.2 1.3-0.7 0.6-0.7 0.7-1.8 0.3-2.7z",happy:"M699.7 960c-6.7 0-13.4-3-18-8.6-7.9-9.9-6.3-24.4 3.6-32.3 123.7-99 194.6-246.5 194.6-404.8 0-161-73-310.2-200.2-409.2-10-7.8-11.8-22.2-4-32.3 7.8-10 22.2-11.8 32.3-4C846.5 176.6 925.9 339 925.9 514.3c0 172.3-77.2 332.9-211.8 440.7-4.1 3.2-9.2 5-14.4 5zM207.9 347c60.6 0 109.8-49.2 109.8-109.8 0-60.6-49.1-109.8-109.8-109.8S98.1 176.6 98.1 237.3c0 60.6 49.1 109.7 109.8 109.7z m0 547.6c60.6 0 109.8-49.2 109.8-109.8 0-60.6-49.1-109.8-109.8-109.8-60.6 0-109.8 49.2-109.8 109.8 0 60.7 49.1 109.8 109.8 109.8z",headset:"M876.3 478.9v-4.8c0-195.2-148.2-354.1-330.4-354.1h-67.8c-182.2 0-330.4 158.8-330.4 354.1v4.8C99.8 490.7 64 536.7 64 591.6v196.7C64 852.2 112.3 904 171.9 904c59.6 0 107.9-51.8 107.9-115.7V591.6c0-55-35.8-101-83.7-112.7v-4.8c0-166.6 126.5-302.2 282-302.2h67.8c155.5 0 282 135.6 282 302.2v4.8c-47.9 11.8-83.7 57.8-83.7 112.7v196.7c0 63.9 48.3 115.7 107.9 115.7 59.6 0 107.9-51.8 107.9-115.7V591.6c0-54.9-35.8-100.9-83.7-112.7z",home:"M837.2 960H620.4c-18.2 0-33.1-15.1-33.1-33.6V693H436.7v233.3c0 18.5-14.8 33.6-33.1 33.6H186.8c-18.2 0-33.1-15.1-33.1-33.6v-356c0-18.5 14.8-33.6 33.1-33.6 18.2 0 33.1 15.1 33.1 33.6v322.3h150.7V659.4c0-18.5 14.8-33.6 33.1-33.6h216.8c18.2 0 33.1 15.1 33.1 33.6v233.3h150.7V570.4c0-18.5 14.8-33.6 33.1-33.6 18.2 0 33.1 15.1 33.1 33.6v356c-0.3 18.5-15.1 33.6-33.3 33.6zM97 557.1c-8.9 0-17.2-3.5-23.5-10-12.7-13-12.7-34.3 0-47.3L488.5 74c6.3-6.4 14.6-10 23.5-10s17.2 3.5 23.5 10l415 425.9c12.7 13.1 12.7 34.3 0 47.3-6.3 6.4-14.6 10-23.5 10s-17.2-3.5-23.5-10L512 145.4 120.5 547.2c-6.3 6.4-14.6 9.9-23.5 9.9z m710.5-258.3c-18.2 0-33.1-15.1-33.1-33.6v-55.4h-53.7c-18.2 0-33.1-15.1-33.1-33.6s14.8-33.6 33.1-33.6h86.7c18.2 0 33.1 15.1 33.1 33.6v89c0 18.5-14.8 33.6-33 33.6z",image:"M915.1 280.3l-165-8-9.6-107.6c-2-22.6-22.2-38.4-45.8-36.6l-591.8 48.6c-23.6 2-40.6 21-38.8 43.4l42.4 471.6c2 22.6 22.4 38.4 45.8 36.6l30-2.4-4.8 91.6c-1.2 25.2 18.4 45.6 44.8 47l660.2 31.4c26.4 1.2 48.2-17.2 49.6-42.4l27.8-526.6c1.2-25-18.6-45.4-44.8-46.6z m-709.8 10.6l-14.2 269.6-35 49.4-32.2-356v-2c2-10 8.8-18 19.2-18.8l522-42.8c10.4-0.8 19.4 6 21 15.8 0 0.4 0.6 0.4 0.6 0.8 0 0.2 0.6 0.4 0.6 0.8l5.4 61.6-438-21c-26.4-0.8-48.2 17.6-49.4 42.6z m668 473.8l-169.6-199-74.8 68.6-138.4-161.6-245.4 261.4 20.8-398.2v-0.8c2-10.8 12.4-18.6 23.8-18l582.4 28c11.6 0.6 20.6 9.4 20.8 20.4 0 0.4 0.6 0.6 0.6 1l-20.2 398.2z",info:"M475.2 251.1c0-10.3 3.6-19.1 10.7-26.4 7.1-7.3 16.2-11 27-11 10.4 0 19.1 3.7 26.3 11 7.1 7.3 10.7 16.1 10.7 26.4 0 10.3-3.6 19.1-10.7 26.4-7.2 7.3-15.9 11-26.3 11-10.9 0-19.9-3.7-27-11-7.1-7.4-10.7-16.2-10.7-26.4z m66.7 526.4c0 22.2-9.2 33.4-27.7 33.4-18.9 0-28.4-11.1-28.4-33.4V397.2c0-12.8 2.7-21.8 8-27.1 5.3-5.3 12.1-7.9 20.4-7.9 8.2 0 14.9 2.5 20 7.5s7.6 14.2 7.6 27.5v380.3zM512 120c216.5 0 392 175.5 392 392 0 78.5-23.1 151.5-62.8 212.8-0.6 12.9 6.4 24.8 17.8 30.2 10 4.7 22 3.6 31.3-2.9C934.4 682.7 960 600.3 960 512c0-247.4-200.6-448-448-448S64 264.6 64 512s200.6 448 448 448c83.3 0 161.3-22.7 228.1-62.4 9.5-9.6 11.4-24.3 4.9-35.6-6-10.5-18.1-16.2-30.3-14.4C655.5 883.4 586.2 904 512 904c-216.5 0-392-175.5-392-392s175.5-392 392-392z",key:"M497.4 443.1C466.8 356.5 378.7 288 281.5 288 158.3 288 64 388.8 64 512s98.6 224 221.8 224c97.1 0 181.1-68.5 211.5-155.1h221.4v137.8h148.8V580.9H960V443.1H497.4zM287.9 608.9c-52.9 0-96.1-43.2-96.1-96.1s43.2-96.1 96.1-96.1 96.1 43.2 96.1 96.1-43.2 96.1-96.1 96.1z",left:"M710.9 948.6L251 539.7l-0.3-0.3c-7.7-7.4-12-17.2-12-27.6 0-12.4 6.1-23.9 16.8-31.6L710.9 75.3C719.1 68 730 64 741.5 64c24.2 0 43.9 18.1 43.9 40.3 0 11.1-4.8 21.4-13.4 29L345.8 512 772 890.8c8.5 7.6 13.4 18.1 13.4 29 0 22.2-19.7 40.3-43.9 40.3-11.4-0.1-22.2-4.1-30.6-11.5z",linux:"M460.4 269.5c-3.6 0.3-6.1 2.1-7.6 5.2-1.5 3.2-2.9 4.7-4.2 4.7-1.6 0.3-2.4-0.5-2.4-2.5 0-4 3.1-6.5 9.3-7.5h4.9z m42.7 7c-1.3 0.3-3.2-0.7-5.7-3.3-2.4-2.5-5.3-3.3-8.6-2.2 7.8-3.7 13.1-3.3 15.7 1 1 2 0.5 3.5-1.4 4.5zM330.8 489.9c-1.3-0.3-2.3 0.2-3 1.5-0.6 1.3-1.4 3.4-2.2 6.2-0.8 2.8-1.7 5.1-2.7 6.8-1 1.7-2.6 3.8-4.9 6.5-2.3 3.3-2.4 5.3-0.5 6 1.3 0.3 3.4-0.8 6.1-3.5 2.8-2.7 4.8-5.7 6.1-9 0.3-1 0.7-2.2 1-3.5 0.3-1.3 0.6-2.3 1-3 0.3-0.7 0.6-1.4 0.7-2.2 0.1-0.8 0.2-1.5 0.3-2v-1.5l-0.5-1.2c-0.3-0.9-0.8-1.2-1.4-1.1z m419.5 179.5c0-6-9-13-27-21 1.3-5 2.5-9.6 3.7-13.8 1.1-4.2 1.9-8.5 2.4-13s1-8.1 1.5-10.8c0.5-2.7 0.6-6.4 0.3-11.3-0.3-4.8-0.5-8.1-0.5-9.8 0-1.7-0.6-5.4-1.7-11-1.1-5.7-1.8-9.1-2-10.2-0.2-1.2-1-5.3-2.4-12.5s-2.3-11.6-2.7-13.2c-3.3-16-10.9-33.2-23-51.5-12.1-18.3-23.9-30.8-35.3-37.5 7.8 6.7 17.2 20.5 28 41.5 28.4 54 37.3 100.3 26.5 139-3.6 13.3-11.8 20.3-24.5 21-10.1 1.3-16.4-1.7-18.9-9.2-2.5-7.5-3.8-21.4-3.9-41.8-0.1-20.3-2-38.2-5.7-53.5-3-13-6.1-24.5-9.6-34.5-3.4-10-6.6-17.6-9.6-22.7-3-5.2-5.5-9.2-7.6-12.3-2.1-3-4.2-5.5-6.4-7.5-2.1-2-3.4-3.1-3.7-3.5-4.6-20.7-9.7-37.8-15.2-51.5-5.6-13.7-10.4-23-14.5-28s-7.9-10.5-11.5-16.5c-3.6-6-6-12.7-7.3-20-1.3-7-0.3-15.9 3-26.7 3.3-10.8 4-19.1 2.2-24.7-1.8-5.7-9.1-9.8-21.8-12.5-4.9-1-12.2-4-21.8-9-9.7-5-15.5-7.7-17.4-8-2.6-0.3-4.4-4.7-5.4-13s0.3-16.8 3.9-25.5 9.5-13.2 17.6-13.5c12.1-1 20.4 4 25 15 4.6 11 5.2 20.7 2 29-3.6 6.3-3.9 10.8-1 13.2 3 2.5 7.9 2.6 14.7 0.3 4.2-1.3 6.4-7.3 6.4-18v-18.5c-1.6-10-3.8-18.3-6.6-25-2.8-6.7-6.2-11.7-10.3-15.3-4.1-3.5-7.9-6-11.5-7.5-3.6-1.5-8-2.7-13.3-3.7-35 2.7-49.6 25-43.7 67 0 5-0.2 7.5-0.5 7.5-3-3-7.8-4.8-14.5-5.2-6.7-0.5-12.1-0.4-16.2 0.3s-6.6-0.2-7.6-2.5c0.3-19-2.3-34-7.8-45-5.6-11-12.9-16.7-22.1-17-8.8-0.3-15.6 4.2-20.3 13.8-4.7 9.5-7.4 19.4-8.1 29.8-0.3 5 0.2 11.2 1.7 18.5 1.5 7.3 3.6 13.6 6.4 18.8 2.8 5.2 5.3 7.4 7.6 6.8 3.3-1 5.9-3.3 7.8-7 1.3-3 0.2-4.3-3.4-4-2.3 0-4.8-2.4-7.6-7.3-2.8-4.8-4.3-10.4-4.6-16.7-0.3-7.3 1.1-13.5 4.4-18.5 3.3-5 8.8-7.3 16.7-7 5.6 0 10 3.5 13.3 10.5 3.3 7 4.8 13.5 4.6 19.5-0.2 6-0.4 9.7-0.7 11-7.2 5-12.3 9.8-15.2 14.5-2.6 4-7.1 7.9-13.5 11.7-6.4 3.8-9.7 5.9-10.1 6.2-4.2 4.7-6.8 9.2-7.6 13.5-0.8 4.3 0.4 7.3 3.7 9 4.6 2.7 8.7 5.9 12.3 9.8 3.6 3.8 6.2 7 7.8 9.5 1.6 2.5 4.7 4.7 9.1 6.5 4.4 1.8 10.2 2.9 17.4 3.3 15.4 0.7 32.1-1.8 50.1-7.5 0.7-0.3 4.4-1.5 11.3-3.5s12.5-3.7 16.9-5.2c4.4-1.5 9.2-3.7 14.5-6.5 5.2-2.8 8.7-5.7 10.3-8.7 3-4.7 6.2-6 9.8-4 1.6 1 2.7 2.4 3.2 4.3 0.5 1.8 0 3.8-1.5 6s-4.2 3.7-8.1 4.7c-6.6 2-15.8 5.6-27.7 10.8-11.9 5.2-19.4 8.4-22.3 9.8-14.4 6.3-25.9 10.2-34.4 11.5-8.2 1.7-21.1 1.3-38.7-1-3.3-0.7-4.7-0.3-4.4 1 0.3 1.3 3.1 4.5 8.4 9.5 8.2 7.7 19.1 11.3 32.9 11 5.6-0.3 11.4-1.5 17.6-3.5 6.2-2 12.1-4.3 17.6-7 5.6-2.7 11-5.6 16.4-8.7 5.4-3.1 10.3-6 14.7-8.5 4.4-2.5 8.4-4.5 12-6 3.6-1.5 6.4-1.9 8.6-1.3 2.1 0.6 3.5 2.5 4.2 5.5 0 0.7-0.2 1.4-0.5 2.2-0.3 0.8-1 1.7-2 2.5s-2 1.6-3 2.2c-1 0.7-2.4 1.5-4.2 2.5-1.8 1-3.3 1.7-4.4 2.2-1.2 0.5-2.8 1.3-4.9 2.5-2.1 1.2-3.7 1.9-4.6 2.2-9.2 4.7-20.2 12-33.1 22-12.9 10-23.8 17.2-32.6 21.5-8.8 4.3-16.8 4.5-24.1 0.5-6.9-3.7-17.2-15.8-30.9-36.5-7.2-10.3-11.3-14-12.3-11-0.3 1-0.5 2.7-0.5 5 0 8.3-2.4 17.8-7.3 28.3s-9.7 19.7-14.5 27.7c-4.7 8-8.2 17.7-10.3 29-2.1 11.3-0.2 21.8 5.7 31.5-7.5 2-17.7 17-30.7 45-12.9 28-20.7 51.5-23.3 70.5-0.7 6-0.9 17.5-0.7 34.5 0.2 17-0.7 26.8-2.7 29.5-2.6 8-7.4 8.5-14.2 1.5-10.5-10.3-16.4-26-17.6-47-0.7-9.3 0-18.7 2-28 1.3-6.3 1.2-9.3-0.5-9l-2 2.5c-11.8 21.7-10.1 49.3 4.9 83 1.6 4 5.7 8.7 12.3 14 6.5 5.4 10.5 8.7 11.8 10 6.6 7.7 23.6 22.7 51 45.2 27.5 22.5 42.7 35.3 45.6 38.2 5.2 5 8.1 11.3 8.6 19 0.5 7.7-1.8 14.8-6.9 21.5-5.1 6.7-12.5 10.5-22.3 11.5 2.6 5 7.4 12.4 14.2 22.2 6.9 9.8 11.4 18.8 13.8 27 2.3 8.2 3.4 19.9 3.4 35.3 15.1-8 16.2-23.3 3.4-46-1.3-2.7-3-5.3-5.1-8-2.1-2.7-3.7-4.7-4.6-6-1-1.3-1.3-2.3-1-3 1-1.7 3.1-3.2 6.4-4.7 3.3-1.5 6.5-1.1 9.8 1.3 15.1 17.3 42.2 23.3 81.5 18 43.5-5 72.5-19.5 86.9-43.5 7.5-12.7 13.1-17.7 16.7-15 3.9 2 5.5 10.7 4.9 26-0.3 8.3-4.1 23.7-11.3 46-3 7.7-3.9 13.9-3 18.8 1 4.8 4.9 7.4 11.8 7.7 1-6.3 3.4-19.2 7.1-38.5 3.8-19.3 6-34.3 6.6-45 0.6-7-0.4-19.2-3.2-36.7-2.8-17.5-4-33.7-3.7-48.5 0.3-14.8 4.1-26.6 11.3-35.3 4.9-6 13.2-9 25-9 0.3-12.3 6-21.2 16.9-26.5 10.9-5.3 22.8-7.1 35.6-5.2 12.4 1.6 22.2 5.4 29 10.9zM442.2 256c1-5.7 0.6-10.7-1.2-15-1.8-4.3-3.7-6.8-5.7-7.5-3-0.7-4.4 0.5-4.4 3.5 0.6 1.7 1.5 2.7 2.4 3 3.3 0 4.4 2.5 3.4 7.5-1 6.7 0.3 10 3.9 10 1.1 0 1.6-0.5 1.6-1.5z m205.6 98.4c-0.6-2.7-1.7-4.6-3.2-5.8-1.5-1.2-3.6-2-6.4-2.5-2.8-0.5-5.1-1.4-7.1-2.8-1.6-1-3.2-2.3-4.7-4-1.5-1.7-2.6-3-3.4-4-0.8-1-1.7-2.1-2.7-3.3-1-1.2-1.6-1.8-2-2-0.3-0.2-1 0.1-2 0.7-4.6 5.3-3.4 12.6 3.4 21.8 6.9 9.2 13.2 14.4 19.1 15.7 3 0.3 5.3-1 7.1-4 1.9-2.8 2.5-6.2 1.9-9.8zM560.5 248c0-3.7-0.8-6.9-2.4-9.8-1.6-2.8-3.4-4.9-5.4-6.2-2-1.3-3.4-1.8-4.4-1.5-4.6 0.3-5.7 1.5-3.4 3.5l2 1c4.6 1.3 7.5 6.5 8.8 15.5 0 1 1.3 0.7 3.9-1l0.9-1.5zM587 131.5c0-0.7-0.4-1.5-1.2-2.5-0.8-1-2.3-2.2-4.4-3.5-2.1-1.3-3.7-2.3-4.6-3-4.9-5-8.8-7.5-11.8-7.5-3 0.3-4.8 1.6-5.7 3.7-0.8 2.2-1 4.3-0.5 6.5s0.4 4.3-0.3 6.2c-0.3 1.3-1.3 3.1-3 5.2-1.6 2.2-2.6 3.7-3 4.5-0.3 0.9 0.2 2.3 1.5 4.3 1.3 1 2.6 1 3.9 0 1.3-1 3.1-2.5 5.4-4.5 2.3-2 4.8-3.5 7.4-4.5 0.3-0.3 1.8-0.5 4.4-0.5 2.6 0 5.1-0.3 7.3-1 2.4-0.6 3.9-1.8 4.6-3.4z m277.2 670.4c6.5 4 11.6 8.1 15.2 12.3 3.6 4.2 5.5 8.2 5.9 12 0.3 3.8-0.1 7.6-1.2 11.3-1.2 3.7-3.7 7.4-7.6 11-3.9 3.6-7.8 6.9-11.5 9.8-3.8 2.9-8.7 5.9-14.7 9.2-6 3.3-11.2 6.1-15.4 8.3-4.3 2.2-9.5 4.8-15.7 7.7-6.2 3-10.6 5.1-13.3 6.5-12.4 6.3-26.4 15.7-42 28-15.5 12.3-27.9 23-37.1 32-5.6 5.3-16.7 8.6-33.3 9.8-16.7 1.2-31.2-1.2-43.7-7.3-5.9-3-10.7-6.9-14.5-11.7-3.8-4.8-6.5-9.1-8.1-12.7-1.6-3.7-5.2-6.9-10.8-9.8-5.6-2.8-13.3-4.4-23-4.7-14.4-0.3-35.7-0.5-63.8-0.5-6.2 0-15.5 0.2-28 0.7-12.4 0.5-21.9 0.9-28.4 1.3-14.4 0.3-27.4 2.8-39 7.5-11.6 4.6-20.3 9.7-26.2 15-5.9 5.4-13 10.1-21.4 14.2-8.3 4.1-17.1 6.1-26.2 5.8-9.5-0.3-27.6-5.5-54.4-15.5-26.8-10-50.7-17.2-71.6-21.5-6.2-1.3-14.6-2.9-25-4.7-10.5-1.8-18.6-3.3-24.5-4.5-5.9-1.2-12.3-2.8-19.4-4.7-7-2-12.5-4.4-16.4-7.3-3.9-2.9-6.7-6.1-8.4-9.8-3.3-7.7-2.1-18.7 3.4-33.2 5.5-14.5 8.5-23.6 8.8-27.3 0.3-5.3-0.3-12-2-20s-3.3-15.1-4.9-21.2c-1.6-6.2-2.3-12.2-2.2-18.2 0.1-6 1.9-10.5 5.1-13.5 4.6-4 13.9-6.3 28-7 14.1-0.7 23.9-2.7 29.5-6 9.8-6 16.7-11.8 20.6-17.5 3.9-5.7 5.9-14.2 5.9-25.5 6.9 24.3 1.6 42-15.7 53-10.5 6.7-24 9.2-40.7 7.5-11.1-1-18.1 0.7-21.1 5-4.2 5-3.4 14.5 2.4 28.5 0.7 2 2 5 3.9 9 2 4 3.4 7 4.2 9 0.8 2 1.6 4.8 2.2 8.5 0.7 3.7 0.8 7.3 0.5 11 0 5-2.8 13.2-8.4 24.5-5.6 11.3-7.9 19.3-6.9 24 1 5.7 7 10 18.1 13 6.5 2 20.4 5.1 41.4 9.2 21.1 4.2 37.4 7.6 48.8 10.2 7.8 2 20 5.7 36.3 11 16.4 5.3 29.8 9.2 40.5 11.5 10.6 2.3 19.7 3 27.2 2 14.1-2 24.6-6.7 31.7-14 7-7.3 10.8-15.3 11.3-24s-0.7-18.4-3.7-29.2c-2.9-10.8-6-19.5-9.3-26s-6.6-12.6-9.8-18.2c-39.6-63.3-67.2-103.7-82.9-121-22.2-24.7-40.7-31.3-55.5-20-3.6 3-6 0.5-7.3-7.5-1-5.3-1.3-11.7-1-19 0.3-9.7 2-18.3 4.9-26 2.9-7.7 6.9-15.5 11.8-23.5s8.5-15 10.8-21c2.6-7 7-19 13-36s10.9-30 14.5-39c3.6-9 8.5-19.2 14.7-30.5 6.2-11.3 12.6-20.3 19.1-27 36-47.7 56.3-80.2 60.8-97.5-3.9-37.3-6.5-89-7.8-155-0.6-30 3.3-55.2 11.8-75.7s25.8-37.9 52-52.2c12.7-7 29.8-10.5 51-10.5 17.3-0.3 34.7 1.9 52 6.7 17.3 4.8 31.9 11.8 43.7 20.7 18.7 14 33.6 34.2 44.9 60.7 11.3 26.5 16.1 51.1 14.5 73.8-1.6 31.7 3.3 67.3 14.7 107 11.1 37.7 32.9 74 65.2 109 18 19.7 34.3 46.8 48.8 81.5 14.6 34.7 24.3 66.5 29.2 95.5 2.6 16.3 3.4 30.4 2.4 42.2-1 11.8-2.9 21.1-5.9 27.7-2.9 6.7-6.2 10.3-9.8 11-3.3 0.7-7.1 3.8-11.5 9.5s-8.8 11.6-13.3 17.8c-4.4 6.2-11 11.7-19.9 16.7-8.8 5-18.8 7.3-29.9 7-5.9-0.3-11-1.2-15.4-2.5s-8.1-3.6-11.1-6.7c-3-3.2-5.2-5.8-6.6-7.7-1.5-2-3.3-5.4-5.7-10.2-2.3-4.8-3.8-8.1-4.4-9.8-7.2-12.3-13.9-17.3-20.1-15-6.2 2.3-10.8 10.5-13.8 24.5s-1.8 30.2 3.4 48.5c6.6 23.3 6.7 55.8 0.5 97.5-3.3 21.7-0.3 38.4 8.8 50.2 9.1 11.8 21.1 17.3 35.8 16.5 14.7-0.8 28.6-6.7 41.7-17.8 19.3-16.3 33.9-27.4 43.9-33.2 10-5.8 26.9-12.9 50.8-21.2 17.3-6 29.9-12.1 37.8-18.2s10.9-11.9 9.1-17.2c-1.8-5.3-5.9-10.1-12.3-14.2-6.4-4.2-14.8-8.1-25.3-11.7-10.8-3.7-18.9-11.7-24.3-24-5.4-12.3-7.8-24.4-7.3-36.3 0.5-11.8 3-19.8 7.6-23.7 0.3 10.3 1.6 19.7 3.9 28.3 2.3 8.5 4.7 15.3 7.1 20.3 2.5 5 5.8 9.7 10 14.2s7.7 7.7 10.3 9.5c2.6 1.8 6.2 4 10.5 6.5 4.4 2.5 7.1 4.1 8.1 4.7l0.4-0.5z",live:"M869.8 898.8c0 15.6-10.6 28.2-23.6 28.2H177.8c-13 0-23.6-12.7-23.6-28.2 0-15.6 10.6-28.2 23.6-28.2h668.4c13-0.1 23.6 12.6 23.6 28.2zM960 146.4v575.2c0 27.2-26.7 49.4-59.5 49.4h-777C90.7 771 64 748.8 64 721.6V146.4C64 119.2 90.7 97 123.5 97h777.1c32.7 0 59.4 22.2 59.4 49.4z m-52.6 13.3c0-5.7-6.5-10.5-14.1-10.5H132.6c-7.7 0-14.1 4.8-14.1 10.5v549c0 5.7 6.5 10.5 14.1 10.5h760.7c7.7 0 14.1-4.8 14.1-10.5v-549zM486.7 613.8c0.2 0.2 1.4 1.3 3.3 1.2 1.6-0.1 2.7-1 2.9-1.3l243.7-299.1c0.1-0.1 1.6-1.5 1.3-3.6-0.2-1.6-1.4-2.4-1.6-2.6l-43.6-38.1c-0.2-0.2-1.7-1.6-3.8-1.2-1.9 0.3-2.9 1.7-3 1.9L484 522 348 380.6c-0.4-0.2-1.1-0.5-2-0.6-1.4-0.1-2.5 0.3-3 0.6l-38.9 38.9c-0.3 0.4-0.9 1.2-1.1 2.5-0.2 1.8 0.6 3.1 0.9 3.4l182.8 188.4z",load:"M587.6 587.9c25.3-25.3 202.5 88.6 234.2 120.2 31.7 31.6 38 88.5 6.4 120.1-31.6 31.6-82.2 31.6-113.9-0.1-31.7-31.6-152-215-126.7-240.2zM436 434.8c-25.3 25.3-202.5-88.6-234.2-120.2-31.7-31.6-38-88.5-6.4-120.1 31.6-31.6 82.2-31.6 113.9 0.1 31.7 31.6 152 214.9 126.7 240.2z m-31.8 77.7c0 35.7-205.9 80.4-250.7 80.4-44.8 0-89.5-35.7-89.5-80.4s35.8-80.4 80.6-80.4c44.7 0 259.6 44.7 259.6 80.4z m31.9 76.8c25.3 25.3-88.7 202.3-120.3 233.9-31.7 31.6-88.6 38-120.2 6.4-31.6-31.6-31.6-82.2 0-113.8 31.7-31.6 215.2-151.8 240.5-126.5z m75.9 30.9c35.8 0 80.5 205.7 80.5 250.4 0 44.7-35.8 89.4-80.5 89.4s-80.5-35.8-80.5-80.5 44.7-259.3 80.5-259.3z m107.8-107.7c0-35.7 205.9-80.4 250.7-80.4 44.8 0 89.5 35.7 89.5 80.4s-35.8 80.4-80.6 80.4c-44.7 0-259.6-44.7-259.6-80.4z m-33.6-75.9c-25.3-25.3 88.7-202.3 120.3-233.9 31.7-31.6 88.6-38 120.2-6.4 31.6 31.6 31.6 82.1-0.1 113.8-31.6 31.6-215.1 151.8-240.4 126.5zM512 403.8c-35.8 0-80.5-205.7-80.5-250.4 0-44.7 35.8-89.4 80.5-89.4s80.5 35.8 80.5 80.5-44.7 259.3-80.5 259.3z",loading:'',location:"M511.9 960h-0.1c-16.2-0.1-31.7-8.2-42.3-22.3-7.7-10-78-101.2-147.4-212.6C230 577.4 183.3 465.5 183.3 392.7 183.3 211.5 330.8 64 512 64s328.7 147.5 328.7 328.7c0 72.9-46.8 185-139.1 333.1-69.2 111-139.1 201.8-147.1 212.1-10.6 14.1-26 22.2-42.3 22.2l-0.3-0.1z m0.1-845.4c-153.3 0-278.1 124.8-278.1 278.1 0 63.9 47.2 172.4 136.4 313.9C439.9 816.9 508.9 906 509.6 906.8l0.2 0.3c1.1 1.4 1.9 2 2.3 2.2 0.4-0.2 1.1-0.8 2.1-2.1l0.1-0.1c2.8-3.6 275.8-357.8 275.8-514.4 0-153.3-124.8-278.1-278.1-278.1z m0.2 346.2c-55.1 0-99.9-44.8-99.9-99.9 0-55.1 44.8-99.9 99.9-99.9 55.1 0 99.9 44.8 99.9 99.9-0.1 55.1-44.9 99.9-99.9 99.9z m0-149.1c-27.2 0-49.3 22.1-49.3 49.3 0 27.2 22.1 49.3 49.3 49.3 27.2 0 49.3-22.1 49.3-49.3-0.1-27.2-22.2-49.3-49.3-49.3z",lock:"M811.1 960H212.9c-47.3 0-85.7-37.7-85.7-84V473.7c0-46.3 38.5-84 85.7-84h43.9l-0.5-77.1c0-66.2 26.5-128.6 74.6-175.7C379 89.9 442.7 64 510.2 64c67.6 0 131.3 25.9 179.4 72.9 48.1 47.1 74.6 109.4 74.6 175.6l-0.5 77.2h47.4c47.3 0 85.7 37.7 85.7 84V876c0 46.3-38.4 84-85.7 84zM208.9 447.1c-14.8 0-26.8 11.7-26.8 26.1v407.7c0 14.4 12 26.1 26.8 26.1h606.3c14.8 0 26.8-11.7 26.8-26.1V473.2c0-14.4-12-26.1-26.8-26.1H208.9z m301.9 346.3c-17.2 0-31.2-12.8-31.2-28.5V664.3c-22.4-11.4-36.7-34.2-36.7-59.1 0-36.7 30.5-66.5 67.9-66.5s67.9 29.9 67.9 66.5c0 24.9-14.3 47.7-36.7 59.1v100.6c0 15.7-14 28.5-31.2 28.5zM313.4 388.1H706l1.6-78.4c0-51.2-20.6-99.5-58-136-37.4-36.6-86.9-56.7-139.4-56.7s-102 20.1-139.4 56.7c-37.4 36.6-58 84.9-58 136.2l0.6 78.2z",mail:"M960 280.9v472.3c0 37.9-31 68.9-68.9 68.9H132.9c-37.9 0-68.9-31-68.9-68.9V280.9c0-3.9 4.5-5.8 7.3-3l232 236.1c1.5 1.7 1.5 4.3 0 6L141.1 692.7c-11 11-11 28.6 0 39.6 5.4 5.4 12.7 8.2 19.8 8.2s14.4-2.8 19.8-8.2l161.5-172.1c1.7-1.7 4.5-1.7 6.2 0l37.9 38.6c33.4 33.8 78.6 53.8 126.2 53.6 47-0.2 90.7-18.7 123.6-52.1l39.4-40.1c1.7-1.7 4.5-1.7 6.2 0l161.5 172.1c5.4 5.4 12.7 8.2 19.8 8.2s14.4-2.8 19.8-8.2c11-11 11-28.6 0-39.6L720.9 520c-1.7-1.7-1.7-4.3 0-6l231.8-236.1c2.6-2.6 7.3-0.9 7.3 3zM512 596.2c31.9 0 61.8-12.5 84.2-35.3l337.9-344c-11.8-9.5-26.5-15.1-42.6-15.1H132.7c-16.2 0-31 5.6-42.6 15.1l337.9 344c22.2 22.6 52.1 35.3 84 35.3z",menu:"M905 960H635.1c-30.3 0-55-24.7-55-55V635.1c0-30.3 24.7-55 55-55H905c30.3 0 55 24.7 55 55V905c0 30.3-24.7 55-55 55z m-516.1 0H119c-30.3 0-55-24.7-55-55V635.1c0-30.3 24.7-55 55-55h269.9c30.3 0 55 24.7 55 55V905c-0.1 30.3-24.7 55-55 55z m-263.4-61.2h258v-258h-258v258z m514.8-2.8h258V638h-258v258zM905 443.8H635.1c-30.3 0-55-24.7-55-55V119c0-30.3 24.7-55 55-55H905c30.3 0 55 24.7 55 55v269.9c0 30.3-24.7 54.9-55 54.9z m-516.1 0H119c-30.3 0-55-24.7-55-55V119c0-30.3 24.7-55 55-55h269.9c30.3 0 55 24.7 55 55v269.9c-0.1 30.3-24.7 54.9-55 54.9z m-263.4-61.1h258v-258h-258v258z","menu-dot":"M157.6 605.5c-51.6 0-93.5-41.9-93.5-93.5s41.9-93.5 93.5-93.5 93.5 41.9 93.5 93.5-41.9 93.5-93.5 93.5z m708.8 0c-51.6 0-93.5-41.9-93.5-93.5s41.9-93.5 93.5-93.5 93.5 41.9 93.5 93.5-42 93.5-93.5 93.5z m-354.3 0c-51.6 0-93.5-41.9-93.5-93.5s41.9-93.5 93.5-93.5 93.5 41.9 93.5 93.5-41.9 93.5-93.5 93.5z",mute:"M505.7 913.5c-18.9 0-39.5-9.5-59-27.7L257.2 705H141.4C92.2 705 64 676.8 64 627.7V396c0-49.9 27.5-77.4 77.4-77.4h115.9L446.7 138c26.5-24.8 56.4-33.5 80.1-23.2 25.1 10.9 39.4 40.7 39.4 82v630.1c0 41.4-14.4 71.4-39.5 82.3-6.7 2.8-13.7 4.3-21 4.3zM164.5 380.7c-29.8 0-38.5 8.6-38.5 38.5v185.3c0 30.6 7.9 38.5 38.5 38.5h126.7l2.3 2.5c80.5 85.6 141.6 149.1 176.7 183.7 14.3 14.1 23.2 17.4 26.6 16 1.2-0.5 7.3-4.4 7.3-30.8v-603c0-26.6-5.7-29.8-6.3-30-1-0.4-7.3-1.7-27.4 18-35.8 35-96 93.6-184.2 179.1l-2.3 2.2H164.5zM929 659c-8.3 0-16-3.2-21.9-9.1L800.9 543.7 695.1 649.5c-5.9 5.9-13.7 9.1-22 9.1s-16.1-3.2-21.9-9.1c-12.1-12.1-12.1-31.8 0-43.9L757 499.8 651.9 394.7c-12.1-12.1-12.1-31.7 0-43.8 5.9-5.9 13.6-9.1 21.9-9.1 8.3 0 16 3.2 21.9 9.1L800.8 456 907 349.8c5.9-5.9 13.7-9.1 21.9-9.1s16.1 3.2 21.9 9.1c5.9 5.9 9.1 13.7 9.1 21.9 0 8.3-3.2 16.1-9.1 21.9L844.7 499.9l106.2 106.2c12.1 12.1 12.1 31.7 0 43.8-5.8 5.9-13.6 9.1-21.9 9.1z",option:"M64 768h544v64H64v-64z m736 0h160v64H800v-64z m-32 127c0 35.9-28.7 65-64 65s-64-29.1-64-65V705c0-35.9 28.7-65 64-65s64 29.1 64 65v190zM64 480h160v64H64v-64z m352 0h544v64H416v-64z m-32 127c0 35.9-28.7 65-64 65s-64-29.1-64-65V417c0-35.9 28.7-65 64-65s64 29.1 64 65v190zM64 192h544v64H64v-64z m736 0h160v64H800v-64z m-32 127c0 35.9-28.7 65-64 65s-64-29.1-64-65V129c0-35.9 28.7-65 64-65s64 29.1 64 65v190z",phone:"M717.7 64H306.3C261 64 224 100.7 224 145.5v733.1c0 44.8 37 81.5 82.3 81.5h411.4c45.3 0 82.3-36.7 82.3-81.5V145.5c0-44.8-37-81.5-82.3-81.5zM728 832H296V163h432v669z m-168 64c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48 48 21.5 48 48z",pie:"M64 480C64 250.2 250.2 64 480 64c10.8 0 22 0.4 32 1.2V512H65.2c-0.8-10-1.2-21.2-1.2-32z m155.6 324.4C295.8 899.2 412.8 960 544 960c229.8 0 416-186.2 416-416 0-131.2-60.8-248.2-155.6-324.4-63.4-51-142.4-83.8-228.4-90.4V576H129.2c6.6 86 39.4 165 90.4 228.4z",pin:"M115.8 960c-13.7 0-26.6-5.4-36.4-15.2l-0.5 0.4 0.4-0.5c-18.3-18.4-20.4-46.7-5-67.2l179-242.4-138.8-138.8c-16.5-16.5-19.8-42.3-8-62.8l0.2-0.3c4.5-7.1 21.7-31.7 54.6-51.1 19.1-11.3 40.3-18.7 62.8-22.1 27.3-4.2 56.9-2.4 87.8 5.2 1.8 0.2 3.8 0.4 5.8 0.6h0.5c6 0.5 11.9 1.1 18.5 2.1 25.2 4.1 72.8-18 113.2-52.4 38.6-32.9 64.5-72 64.5-97.5 0-6.4-0.2-13.3-0.3-20-1.1-26.3-2.9-70.2 29.8-102.8 38.6-38.7 99.8-41.8 142.2-7.3 1 0.8 1.9 1.7 2.9 2.7l0.4 0.4c23.8 23.3 238 237.5 239.5 239 20.1 20.1 31.2 46.8 31.2 75.3 0 28.4-11 55.2-31.1 75.3-32.5 32.6-76.8 30.7-103.4 29.6h-1.4c-6-0.1-12.2-0.3-18.1-0.3-24.3 0-53.9 17.6-83.3 49.7-19.7 21.4-37.5 47.6-50 73.8-11.1 23.1-17.1 44.2-16.1 56.5 0.9 8.6 2.6 22.9 3 25.8 32.8 133.7-57.3 195.1-67.6 201.7l-0.1 0.1c-20.7 12.5-46.9 9.4-63.7-7.4L374.7 756.6c-11.6-11.6-11.6-30.6 0-42.2 5.6-5.6 13.1-8.8 21.1-8.8 8 0 15.5 3.1 21.1 8.8L565.4 863c6.5-5.2 17.3-15.3 26.2-31.2 16.2-29 19.3-64 9.5-104.2v-0.2c-0.6-2.8-3-23.4-3.9-31.8v-0.2c-1.9-22.6 5.5-53 20.7-85.6 15-32.1 36.6-64.3 60.9-90.7 28.9-31.5 74.5-69 127.2-69 7.1 0 15 0.2 21.4 0.3h0.2c26.5 1.1 46.2 0.9 59.2-12.1 8.8-8.8 13.6-20.5 13.6-33s-4.9-24.3-13.8-33.2C884.4 370 658 143.7 647.3 133.3c-17.8-14.2-44.6-12.5-61.2 4.1-13.1 13.2-13.4 32.6-12.3 58.7v0.1c0.2 7.2 0.3 14.7 0.3 21.8 0 43.9-31.9 97.3-85.5 142.9-23.9 20.4-51.2 38.1-76.8 49.8-31.9 14.6-60.3 20-84.6 16.1-5.1-0.8-9.9-1.2-14.1-1.6-2.7-0.2-5.4-0.5-8-0.8-2.6-0.1-5.1-0.6-7.7-1.4-83-20.4-123.9 20.5-136.1 36.1L313.6 611c10.5 10.5 11.8 26.9 2.9 38.9L152.7 871.6 316.2 752c6.4-4.7 14.3-6.6 22.2-5.4 7.9 1.2 14.8 5.5 19.5 11.9 9.7 13.3 6.7 32-6.5 41.7L146.2 949.9c-8.9 6.6-19.4 10.1-30.4 10.1z",plus:"M512 960c-21.2 0-38.4-17.2-38.4-38.4V550.3H102.3C81.2 550.4 64 533.2 64 512c0-21.2 17.2-38.4 38.4-38.4h371.3V102.3c0-21.1 17.2-38.4 38.4-38.4s38.4 17.2 38.4 38.4v371.3h371.3c21.1 0 38.4 17.2 38.4 38.4 0 10.3-4 19.9-11.2 27.1-7.2 7.2-16.9 11.2-27.1 11.2H550.6v371.3c0 10.3-4 19.9-11.2 27.1-7.5 7.3-17.1 11.3-27.4 11.3z",post:"M813.7 960H154.8c-0.7 0-17.2-0.1-33.7-8-16.1-7.7-35.3-24-35.3-58.3V130.3c0-34.1 19.2-50.4 35.3-58.2 16.5-7.9 33-8.1 33.6-8.1h658.9c0.7 0 17.2 0.2 33.7 8.1 16.1 7.7 35.3 24.1 35.3 58.2v32.5l-52.2 46.7v-79.9c-0.1-6.3-2.4-10.1-7.6-12.6-4.5-2.1-9.3-2.3-9.3-2.3H154.7s-5 0.1-9.6 2.4c-5.1 2.6-7.3 6.5-7.3 13.1v763.4c0 0.4 0.3 4.7 2.4 8.6 1.7 3 5 7 14.5 7h658.8c5.8 0 10.1-1.4 12.8-4.1 4.1-4.2 4.1-11 4.1-11.1V561.5l52.2-49.6v381.9c0 0.7-0.1 16.7-8.5 32.7-8 15.3-25 33.5-60.4 33.5zM424.4 655.6l-25.8 125.2 129.5-25.1L927.6 368l0.1-0.1c0.3-0.3 10.5-10 10.6-22.4 0.1-7.5-3.5-14.8-10.8-21.8L914.4 311c-15.2-14.8-23.4-22.7-44.2-42.9-7.3-7.1-15.1-10.7-23-10.5-13.1 0.2-23.2 10.3-23.3 10.4l-0.2 0.2-399.3 387.4z m18.7 37.3l-15.2 59.4 61-14.8-45.8-44.6z m81 29.2c-20-23-40-46.1-60.1-69.1l331-319c21.3 21.7 42.7 43.3 64 65-111.6 107.7-223.3 215.4-334.9 323.1z m52-312.8H257.5c-10.7 0-19.4-1.7-26-5.1-7.3-3.8-11.6-9.7-11.6-16.3 0-10.9 11.6-22 37.5-22h366l-47.3 43.4zM874 384c-21.7-21.3-43.3-42.7-65-64l38-38c21.7 21.3 43.3 42.7 65 64l-38 38zM607.2 270.3H257.7c-10.7 0-19.5-1.7-26.1-5.1-7.4-3.8-11.6-9.7-11.6-16.3 0-10.9 11.6-22 37.7-22h349.6c10.4 0 19.2 1.8 25.7 5.3 7.3 3.9 11.5 9.9 11.5 16.4-0.1 10.8-11.6 21.7-37.3 21.7z",qr:"M395 64H64v329.2h331V64z m-48.5 282.2h-235V111h235v235.2z m258.8 495.4h353.3v-46.9H605.3v46.9zM300.1 158.2H158.9V301h141.2V158.2zM629 64v330.7h331V64H629z m282.5 282.9h-235V111h235v235.9z m47.8 353.6h-165v46.8h164.9v-46.8zM723.9 464.4H512.1v94.7h211.8v-94.7z m-329.6-22.8H64.7v46.8h329.5v-46.8zM582.4 64.9h-46.9v211.8h46.9V64.9z m376.9 541.4H511.8v46.1h447.5v-46.1zM441.4 417.1h46.8V64.9h-46.8v352.2z m94 329.8h-46.8v165.3h-0.2v47.6h0.2v0.2h46.8v-0.2H700v-47.6H535.4V746.9z m331.1-589.4H723.9v142.8h142.6V157.5z m92.8 259.1H817.9v48.3H911V558h48.3V416.6z m-95 541.9h95v-94.3h-95v94.3z m-705.4-93.3h141.2V723.8H158.9v141.4z m117.9-283.1h164v-46.9h-164v46.9zM64 959.6h330.3V628.9H64v330.7z m47.5-283.7h235v235.9h-235V675.9z m93.9-93.8v-46.9H65v46.9h140.4z",quote:"M297.6 530.1h140.2V960H64V634.7C64 279.4 188.6 89.1 437.8 64v161.2c-93.4 30.1-140.2 116.1-140.2 258.5v46.4z m522.2 0H960V960H586.2V634.7c0-355.3 124.5-545.6 373.7-570.7v161.2c-93.4 30.1-140.2 116.1-140.2 258.5V530h0.1z","radio-on":"M512 288c-123.2 0-224 100.8-224 224s100.8 224 224 224 224-100.8 224-224-100.8-224-224-224z m0-224C265.6 64 64 265.6 64 512s201.6 448 448 448 448-201.6 448-448S758.4 64 512 64z m0 806.4c-197.1 0-358.4-161.3-358.4-358.4S314.9 153.6 512 153.6 870.4 314.9 870.4 512 709.1 870.4 512 870.4z","radio-off":"M512 64C265.6 64 64 265.6 64 512s201.6 448 448 448 448-201.6 448-448S758.4 64 512 64z m0 806.4c-197.1 0-358.4-161.3-358.4-358.4S314.9 153.6 512 153.6 870.4 314.9 870.4 512 709.1 870.4 512 870.4z",right:"M282.5 960c-24.2 0-43.9-18.1-43.9-40.3 0-10.9 4.9-21.4 13.4-29L678.2 512 252 133.2c-8.6-7.5-13.4-17.8-13.4-29 0-22.2 19.7-40.3 43.9-40.3 11.5 0 22.4 4 30.6 11.3l455.5 404.9c10.7 7.7 16.8 19.2 16.8 31.6 0 10.4-4.3 20.2-12 27.6l-0.3 0.3-460 409c-8.4 7.4-19.2 11.4-30.6 11.4z",sad:"M897.6 64c6.7 0 13.4 3 18 8.6 7.9 9.9 6.3 24.4-3.6 32.3-123.7 99-194.6 246.5-194.6 404.8 0 161 73 310.2 200.2 409.2 10 7.8 11.8 22.2 4 32.3-7.8 10-22.2 11.8-32.3 4C750.8 847.4 671.4 685 671.4 509.7c0-172.3 77.2-332.9 211.8-440.7 4.1-3.2 9.1-5 14.4-5zM207.4 348c60.6 0 109.8-49.2 109.8-109.8 0-60.6-49.1-109.8-109.8-109.8S97.6 177.6 97.6 238.3c0 60.6 49.1 109.7 109.8 109.7z m0 546.6c60.6 0 109.8-49.2 109.8-109.8 0-60.6-49.1-109.8-109.8-109.8-60.6 0-109.8 49.2-109.8 109.8 0 60.7 49.1 109.8 109.8 109.8z",search:"M914.4 957.9c12.4 4.6 26.5 1.5 35.8-7.9 9.2-9.3 12.2-23.1 7.7-35.4l-43.3-43.8-44.6-44.7L747.2 702c57-68.3 91.8-155.1 91.8-250.7C839 237.8 665.4 64 452.1 64 237.6 64 64 237.8 64 451.3 64 666 237.6 839.7 452.1 839.7c92.3 0.1 181.6-32.9 251.7-93.1l122.8 124.1 44.6 43.4 43.2 43.8zM452.1 777.7C272.3 777.7 126 632.5 126 451.3c0-180 146.3-325.2 326.1-325.2s326.1 145.2 326.1 325.2c0 179.9-146.3 326.4-326.1 326.4zM358 273c0.7 5.5-2.7 10.5-13.1 21.7-10.9 11.9-16.4 17.9-22.7 23-28.6 23.2-83.4 133.7-66.8 209.9 1.7 7.9 7.4 30.1-4.6 39.5-5.7 4.5-14.7 5.6-20.4 3.8-27.1-8.5-27.4-99.1 1.4-175.7 28.3-75.4 87.3-143.8 112-137 5.3 1.4 13.3 7.5 14.2 14.8z",second:"M512 64c-156.8 0-284.3 127.5-284.3 284.3S355.2 632.6 512 632.6s284.3-127.5 284.3-284.3S668.8 64 512 64z m-61.2 242.5h-40.1c0-45.5 14.1-77.7 42.3-96.5 18.2-12.1 41-18.2 68.3-18.2 28.5 0 52.3 8.7 71.5 25.9 19.1 17.3 28.7 40.5 28.7 69.6 0 26.4-8.2 48.3-24.6 65.5-11.2 11.8-31.6 25.6-61 41.4l-33.2 18.2c-19.4 10.6-33.8 22.3-43.2 35.1-6.7 8.8-10.6 17.6-11.8 26.4h173.9v37.8H402.5c0-30.9 7.1-57.2 21.4-78.7 12.1-18.2 30-34.3 53.7-48.2l42.3-24.6c21.8-12.8 36-22.3 42.3-28.7 10.9-11.5 16.4-26.9 16.4-46 0-15.2-4.5-27.9-13.7-38.2-11.5-13-28.1-19.6-49.6-19.6-20.3 0-36 6.2-46.9 18.7-11.7 13.7-17.6 33.7-17.6 60.1z m282.3 305.1c-4.8-10.3-18.1-15.2-29.7-10.8-11.6 4.3-17.2 16.2-12.4 26.6l80.8 173.8-148.3-26.7c-9.1-1.6-18.5 1.9-23.7 8.9l-83.3 113.3-4.2 6.5-4.9-6.4-83.1-112.5c-5.1-6.9-14.5-10.4-23.7-8.6l-148.3 28.1 81.1-174.5c4.8-10.4-0.7-22.2-12.3-26.5-11.6-4.2-24.9 0.7-29.8 11.1l-97.6 210c-3.2 7-1.9 14.9 3.5 20.7 5.4 5.8 13.9 8.4 22.2 6.8l175.3-33.2L492.9 951c2.6 3.5 6.2 6.1 10.3 7.6 1.9 0.7 4 1.1 6.1 1.3 0.2 0 3.7 0.1 4.6 0.1h0.3c6.8-0.6 13-3.9 16.8-9.1L629.3 817l175.3 31.5c4.6 0.8 9.2 0.4 13.3-1.2 3.4-1.3 6.4-3.3 8.8-5.9 5.4-5.8 6.7-13.8 3.5-20.7l-97.1-209.1z",setting:"M373.4 942.1c-2.9 0-5.7-0.5-8.6-1.5-53.7-19-102.6-47.6-145.6-85.2-7.8-6.8-10.8-17.6-7.9-27.5 13.4-44.6 8.3-91.3-14.6-131.5-22.9-40.1-60.2-68-105.1-78.5-10-2.3-17.8-10.5-19.7-20.7-5.2-28.7-7.9-57.3-7.9-85.2 0-27.9 2.7-56.5 8.1-85.1 1.9-10.3 9.6-18.4 19.7-20.8 44.9-10.4 82.2-38.3 105.1-78.5 22.8-40.1 28-86.8 14.6-131.4-3-9.9 0.1-20.8 7.9-27.6 42.9-37.6 91.9-66.3 145.6-85.2 9.8-3.5 20.6-0.8 27.7 6.9 31.4 34.1 73.8 52.9 119.4 52.9 45.7 0 88.1-18.8 119.5-52.9 7-7.6 17.9-10.4 27.6-6.9 53.6 18.9 102.6 47.6 145.6 85.2 7.8 6.8 10.8 17.6 7.9 27.5-13.5 44.7-8.3 91.4 14.6 131.5 22.9 40.1 60.2 68 105.1 78.5 10 2.4 17.8 10.5 19.7 20.8 5.4 28.6 8.1 57.3 8.1 85.1 0 27.8-2.7 56.4-8.1 85.1-1.9 10.3-9.7 18.4-19.7 20.7-44.9 10.5-82.2 38.4-105.1 78.5-22.9 40.2-28.1 86.9-14.6 131.5 3 9.9-0.1 20.8-7.9 27.6-43 37.7-92 66.3-145.6 85.2-9.8 3.4-20.6 0.6-27.6-7-31.3-34.1-73.7-52.9-119.4-52.9-45.6 0-88.1 18.8-119.5 52.9-5.1 5.4-12 8.5-19.3 8.5zM263.1 829.5c31 25 65.4 45.2 102.3 59.9 19.5-18 41.9-32.2 66.5-42.1 25.7-10.4 52.7-15.6 80.1-15.6 54.6 0 106.6 20.5 146.6 57.7 36.9-14.7 71.3-34.9 102.4-59.9-5.6-26.2-6.5-52.9-2.7-79.5 4-27.7 13-54 26.7-78.1 27.2-47.7 70.8-83.1 122.8-99.9 3-20.4 4.6-40.5 4.6-59.9s-1.5-39.6-4.6-60c-52.1-16.8-95.6-52.2-122.8-99.9-13.7-24.1-22.7-50.3-26.7-78.1-3.8-26.6-2.9-53.3 2.7-79.5-31-25.1-65.4-45.2-102.4-59.9-40.2 37.2-92.2 57.7-146.7 57.7-27.4 0-54.4-5.3-80.1-15.6-24.7-9.9-47-24.1-66.6-42.1-37 14.8-71.4 35-102.4 60 5.6 26.2 6.5 52.9 2.7 79.5-4 27.7-13 54-26.7 78.1-13.7 24.1-31.7 45.1-53.4 62.5-20.8 16.7-44.1 29.2-69.3 37.4-3 20.3-4.6 40.5-4.6 60 0 19.4 1.5 39.6 4.6 59.9 52.1 16.8 95.6 52.1 122.9 99.9 27.4 47.8 35.8 103.6 24.1 157.5zM512 668.2c-85 0-154.1-70.1-154.1-156.2S427 355.8 512 355.8c41.1 0 79.8 16.3 108.9 45.8C650 431.1 666.1 470.3 666 512c0 8.6-0.9 17.4-2.7 27.9-1.2 7-5.2 13.1-11 17.2-5.8 4-12.7 5.5-19.6 4.2-14.3-2.7-23.8-16.6-21.1-31 1.3-7.1 1.9-13 1.9-18.4C613.5 455.1 568 409 512 409c-55.9 0-101.5 46.2-101.5 102.9 0 56.8 45.5 102.9 101.5 102.9 5.4 0 11.1-0.6 18.1-1.9 6.8-1.3 13.7 0.2 19.4 4.1 5.9 4.1 9.9 10.2 11.2 17.4 2.6 14.4-6.9 28.3-21.2 30.9-10.2 2.1-19 2.9-27.5 2.9z",share:"M809.6 960c-82.9 0-150.4-67.5-150.4-150.4 0-6.2 0.4-12.2 1.1-18.2L337.1 615.2c-27.3 38.5-72.1 63.6-122.8 63.6-82.8 0-150.3-67.4-150.3-150.3s67.5-150.4 150.4-150.4c49.7 0 93.9 24.3 121.3 61.5l246.8-167.5c-7.4-17.8-11.5-37.3-11.5-57.7C571 131.5 638.5 64 721.4 64s150.4 67.5 150.4 150.4-67.5 150.4-150.4 150.4c-46 0-87.2-20.8-114.8-53.4L357 480.7c5 15 7.8 31.1 7.8 47.8 0 15.2-2.3 30-6.5 43.9l315.8 172.2c24.3-50.4 75.9-85.3 135.5-85.3 82.9 0 150.4 67.5 150.4 150.4S892.5 960 809.6 960z m-0.5-245.2c-52.8 0-95.8 42.9-95.8 95.7 0 52.8 43 95.7 95.8 95.7s95.7-42.9 95.7-95.7c0.1-52.8-42.9-95.7-95.7-95.7z m-88.7-598c-53.4 0-96.8 43.4-96.8 96.8s43.4 96.8 96.8 96.8 96.8-43.4 96.8-96.8-43.4-96.8-96.8-96.8zM214.3 433.6c-53 0-96.2 43.1-96.2 96.2 0 53 43.1 96.2 96.2 96.2 53 0 96.2-43.1 96.2-96.2 0-53-43.2-96.2-96.2-96.2z",star:"M891.9 355.6l-218.6-15.8c-4.6-0.4-8.6-3.1-10.2-7.5l-83.3-203.8C568.4 100.4 542.5 83 512.1 83c-30.3 0-56 17.4-67.7 45.7l-83.4 204c-1.8 4.2-5.7 7.2-10.2 7.5L132.5 356c-29.6 1.7-54.8 21.1-64.4 49.8-9.9 29-1.6 59.5 21.7 79.5l168.9 140.3c3.5 2.9 5.1 7.7 4 12.1l-51.5 211.9c-6 22-1.8 44.8 11.5 62.6 13.7 18 35.1 28.8 57.5 28.8 13.9 0 27.4-4.2 38.5-11.8l184.6-115.5c3.9-2.4 8.7-2.4 12.6 0l186.4 115.1c11.7 7.9 25.2 12.1 38.9 12.1 21 0 41.8-10.1 55.3-27.2 14.1-17.6 19.2-40.6 14.1-63.5L759 637.9c-1.1-4.5 0.5-9.3 4-12.3l171.4-140.7c23-19.8 31.2-50.3 21.5-79.3-9.4-28.7-34.8-48.3-64-50z m-4.8 97.5l-163 133.8a54.911 54.911 0 0 0-18.3 55.1L755 844c2.6 11.9-2.1 20.1-5.2 24-4.9 6.1-12.2 10-19.5 10-4.5 0-9-1.4-13.9-4.7L538.2 763c-8.5-5.3-18.3-8.1-28.3-8-10.1 0-20 2.8-28.5 8.2L304.8 873.5c-11.3 7.5-26.4 4.2-34.4-6.3-3.3-4.4-6.8-11.9-3.7-22.9L316 641.8c4.9-20.1-2.3-41.6-18.1-54.7L137.3 453.6c-12.7-11-9.2-25.2-7.8-29.2 1.4-4 7.1-17.5 23.8-18.4l208.2-15c20.5-1.5 38.4-14.5 46.1-33.6l79.5-194.3c6.4-15.7 20.9-17 25-17 4.2 0 18.6 1.2 25 17l79.5 194.3c7.7 19.1 25.6 32.1 46.1 33.6l208.5 15.2c16.3 0.9 22.1 14.3 23.5 18.4 1.1 3.6 4.6 17.8-7.6 28.5z","star-half":"M891.9 355.6l-218.6-15.8c-4.6-0.4-8.6-3.1-10.2-7.5l-83.3-203.8C568.4 100.4 542.5 83 512.1 83c-30.3 0-56 17.4-67.7 45.7l-83.4 204c-1.8 4.2-5.7 7.2-10.2 7.5L132.5 356c-29.6 1.7-54.8 21.1-64.4 49.8-9.9 29-1.6 59.5 21.7 79.5l168.9 140.3c3.5 2.9 5.1 7.7 4 12.1l-51.5 211.9c-6 22-1.8 44.8 11.5 62.6 13.7 18 35.1 28.8 57.5 28.8 13.9 0 27.4-4.2 38.5-11.8l184.6-115.5c3.9-2.4 8.7-2.4 12.6 0l186.4 115.1c11.7 7.9 25.2 12.1 38.9 12.1 21 0 41.8-10.1 55.3-27.2 14.1-17.6 19.2-40.6 14.1-63.5L759 637.9c-1.1-4.5 0.5-9.3 4-12.3l171.4-140.7c23-19.8 31.2-50.3 21.5-79.3-9.4-28.7-34.8-48.3-64-50z m-4.8 97.5l-163 133.8a54.911 54.911 0 0 0-18.3 55.1L755 844c2.6 11.9-2.1 20.1-5.2 24-4.9 6.1-12.2 10-19.5 10-4.5 0-9-1.4-13.9-4.7C648.3 831.1 580.2 789.1 512 747V147c-0.1-0.3-0.2-0.7 0-1 1.1-1.8 10.8 0.7 17.4 6.2 2 1.7 5.4 5 7.8 10.9l79.5 194.3c7.7 19.1 25.6 32.1 46.1 33.6l208.5 15.2c16.3 0.9 22.1 14.3 23.5 18.4 0.7 2.1 3.2 10.8-1.1 20-2.1 4.1-4.8 6.9-6.6 8.5z","star-full":"M891.9 355.6l-218.6-15.8c-4.6-0.4-8.6-3.1-10.2-7.5l-83.3-203.8C568.4 100.4 542.5 83 512.1 83c-30.3 0-56 17.4-67.7 45.7l-83.4 204c-1.8 4.2-5.7 7.2-10.2 7.5L132.5 356c-29.6 1.7-54.8 21.1-64.4 49.8-9.9 29-1.6 59.5 21.7 79.5l168.9 140.3c3.5 2.9 5.1 7.7 4 12.1l-51.5 211.9c-6 22-1.8 44.8 11.5 62.6 13.7 18 35.1 28.8 57.5 28.8 13.9 0 27.4-4.2 38.5-11.8l184.6-115.5c3.9-2.4 8.7-2.4 12.6 0l186.4 115.1c11.7 7.9 25.2 12.1 38.9 12.1 21 0 41.8-10.1 55.3-27.2 14.1-17.6 19.2-40.6 14.1-63.5L759 637.9c-1.1-4.5 0.5-9.3 4-12.3l171.4-140.7c23-19.8 31.2-50.3 21.5-79.3-9.4-28.7-34.8-48.3-64-50z",switch:"M512 960c-58 0-114.3-11.4-167.3-33.8-51.2-21.6-97.2-52.6-136.6-92.1-39.5-39.5-70.5-85.4-92.1-136.6-22.4-53-33.8-109.3-33.8-167.3 0-58.3 11.5-114.9 34.3-168.3l0.5-1.1c23.1-53.7 56.4-101.6 99.1-142.1 12.7-12 32.8-11.5 44.8 1.1 5.9 6.1 9 14.2 8.7 22.7-0.2 8.5-3.7 16.3-9.8 22.2-36.3 34.4-64.7 75.2-84.5 121.3l-1.8 4.1c-18.4 44.4-27.7 91.5-27.7 140.2 0 49.4 9.7 97.4 28.8 142.5 18.5 43.6 44.9 82.8 78.5 116.4 33.6 33.6 72.7 60 116.4 78.5 45.1 19.1 93.1 28.8 142.6 28.8 49.4 0 97.4-9.7 142.5-28.8 43.6-18.4 82.8-44.8 116.4-78.5 33.6-33.6 60.1-72.8 78.5-116.4 19.1-45.2 28.8-93.1 28.8-142.5 0-49.8-9.7-97.9-29-143.2l-0.5-1c-10.6-24.5-23.7-47.8-39-69.1-13.4-18.7-28.8-36.3-45.5-52.2l-0.2-0.2c-2.7-3-4.9-6.4-6.5-10.1-1.1-2.5-2.8-6.4-3.1-11.8-0.1-2.4 0-7.2 2.2-12.7 1.5-3.7 3.7-7.1 6.5-10.1 12.1-12.6 32.2-13.1 44.8-1.1 42.7 40.6 76 88.4 99.1 142.2l0.6 1.5c22.7 53.1 34.1 109.6 34.1 167.9 0 58-11.4 114.3-33.8 167.3-21.6 51.2-52.6 97.2-92.1 136.6-39.4 39.4-85.4 70.4-136.6 92.1C626.3 948.6 570 960 512 960z m0-452.1c-17.5 0-31.8-14.3-31.8-31.8V95.8c0-17.5 14.3-31.8 31.8-31.8s31.7 14.3 31.7 31.8V476c0.1 17.6-14.2 31.9-31.7 31.9z",tag:"M64 599.7c0-28.1 10.9-54.5 30.8-74.4L525.3 94.8c25.8-25.8 62.5-36.3 98-28.1l207.3 47.8c39 8.9 69.9 39.9 78.9 78.9l47.8 207.2c8.1 35.2-2.6 72.6-28.1 98.1L498.7 929.2c-19.9 19.9-46.3 30.8-74.4 30.8-28.1 0-54.5-10.9-74.4-30.8L94.8 674.1C74.9 654.2 64 627.8 64 599.7zM649.7 288c0 22.4 8.7 43.5 24.6 59.4 15.9 15.9 37 24.6 59.4 24.6s43.5-8.7 59.4-24.6c15.9-15.9 24.6-37 24.6-59.4 0-22.5-8.7-43.6-24.6-59.4-32.8-32.8-86-32.8-118.8 0-15.9 15.8-24.6 36.9-24.6 59.4z",talk:"M902.8 110H407.2c-31.5 0-57.2 25.1-57.2 55.9v391c0 30.8 25.6 55.9 57.2 55.9h344.7l60.2 92.1c11.5 13.2 33.5 5.2 33.5-12.1v-80h57.2c31.5 0 57.2-25.1 57.2-55.9v-391c0-30.9-25.6-55.9-57.2-55.9zM483.5 411.3c-21.1 0-38.1-16.7-38.1-37.2 0-20.6 17.1-37.2 38.1-37.2 21.1 0 38.1 16.7 38.1 37.2 0 20.5-17.1 37.2-38.1 37.2z m171.5 0c-21.1 0-38.1-16.7-38.1-37.2 0-20.6 17.1-37.2 38.1-37.2 21.1 0 38.1 16.7 38.1 37.2 0 20.5-17 37.2-38.1 37.2z m171.6 0c-21.1 0-38.1-16.7-38.1-37.2 0-20.6 17.1-37.2 38.1-37.2 21.1 0 38.1 16.7 38.1 37.2 0 20.5-17.1 37.2-38.1 37.2zM292.7 616.1V312.6H121.2c-31.5 0-57.2 25.1-57.2 55.9v391c0 30.8 25.7 55.9 57.2 55.9h57.2v80c0 17.3 22.1 25.2 33.5 12.1l60.2-92.1h344.7c31.5 0 57.2-25.1 57.2-55.9V672H349.9c-31.5-0.1-57.2-25.1-57.2-55.9z",third:"M512 64c-156.8 0-284.3 127.5-284.3 284.3S355.2 632.6 512 632.6s284.3-127.5 284.3-284.3S668.8 64 512 64z m-23.9 295.3v-33.2l20.4 0.9c17.1 0 30.7-3.5 40.8-10.6 12.4-8.9 18.6-22.3 18.6-40.3 0-12.4-3.7-22.9-11.1-31.5-10-11.8-25.6-17.7-46.5-17.7-23.9 0-40.9 8.4-51 25.3-6.5 10.9-9.8 24.8-9.8 41.7h-38.1c0-28.1 6.5-50.8 19.5-68.3 16.8-22.4 43.9-33.7 81.1-33.7 29.5 0 53 7.6 70.3 22.8 17.3 15.2 25.9 34.9 25.9 59.2 0 18.3-4.4 33.4-13.3 45.2-7.1 9.5-16 15.8-26.6 19.1 16.5 5.9 29 14.2 37.2 24.8 9.8 12.4 14.6 28.7 14.6 48.8 0 28.1-8.7 51.1-26.1 69.1-20.1 20.7-48.8 31-86 31-9.8 0-17.9-0.6-24.4-1.8-10.6-2.1-21.7-6.1-33.2-12-16.6-8.6-28.4-20.7-35.7-36.3-7.2-15.7-10.9-33.5-10.9-53.6h40.3c0 19.5 3.7 34.6 11.1 45.2 10.6 15.7 29.1 23.5 55.4 23.5 20.1 0 36.4-5.5 49-16.6 12.6-11.1 18.8-25.6 18.8-43.7 0-23-8.7-39.1-26.1-48.3-11.2-5.9-26.7-8.9-46.5-8.9h-17.7z m245 252.3c-4.8-10.3-18.1-15.2-29.7-10.8-11.6 4.3-17.2 16.2-12.4 26.6l80.8 173.8-148.3-26.7c-9.1-1.6-18.5 1.9-23.7 8.9l-83.3 113.3-4.2 6.5-4.9-6.4-83.1-112.5c-5.1-6.9-14.5-10.4-23.7-8.6l-148.3 28.1 81.1-174.5c4.8-10.4-0.7-22.2-12.3-26.5-11.6-4.2-24.9 0.7-29.8 11.1l-97.6 210c-3.2 7-1.9 14.9 3.5 20.7 5.4 5.8 13.9 8.4 22.2 6.8l175.3-33.2L492.9 951c2.6 3.5 6.2 6.1 10.3 7.6 1.9 0.7 4 1.1 6.1 1.3 0.2 0 3.7 0.1 4.6 0.1h0.3c6.8-0.6 13-3.9 16.8-9.1L629.3 817l175.3 31.5c4.6 0.8 9.2 0.4 13.3-1.2 3.4-1.3 6.4-3.3 8.8-5.9 5.4-5.8 6.7-13.8 3.5-20.7l-97.1-209.1z",time:"M512.3 544c-8.4 0-15.7-2.4-21.3-6.9-6.1-5-9.3-13.5-9.4-25.2L480 247.4c-0.1-19.8 11-31.3 30.6-31.4 10-0.1 17.8 2.6 23.3 8s8.3 13.1 8.4 23l1.6 233.9c65.9-0.9 168.5-2.1 179-0.8 3 0.4 5.9 1.1 6.2 1.2 4.3 1.2 13.2 3.7 19.3 12 2.7 3.7 5.8 9.9 5.5 19-0.3 10.5-4.8 16.9-8.4 20.5-5.6 5.5-12.1 7-16.8 8.1-2.2 0.5-5.7 1.1-9.6 1.2-45.2 0.8-91.2 1.1-135.6 1.4-23.2 0.2-47.2 0.3-70.8 0.6-0.1-0.1-0.2-0.1-0.4-0.1z m-0.3-424c216.5 0 392 175.5 392 392 0 78.5-23.1 151.5-62.8 212.8-0.6 12.9 6.4 24.8 17.8 30.2 10 4.7 22 3.6 31.3-2.9C934.4 682.7 960 600.3 960 512c0-247.4-200.6-448-448-448S64 264.6 64 512s200.6 448 448 448c83.3 0 161.3-22.7 228.1-62.4 9.5-9.6 11.4-24.3 4.9-35.6-6-10.5-18.1-16.2-30.3-14.4C655.5 883.4 586.2 904 512 904c-216.5 0-392-175.5-392-392s175.5-392 392-392z",track:"M738.3 425.3c1.2 1.1 2.5 2.2 3.9 3.2 24.5 18 63.2 8.4 92.1-22.8 30.4-32.7 35.7-75.4 12.3-97.2-24.1-21.9-65.5-13.3-96 19.6-13.2 14.2-22.3 31.1-25.6 47.5-4.1 19.9 0.7 38.1 13.3 49.7z m44.5-67.3c15.6-16.8 31.2-18.9 33.7-17.3 1.9 2.5 1 18.2-14.6 35-15.5 16.8-31.1 18.9-33.8 17.3-1.7-2.6-0.7-18.3 14.7-35z m34.4 158.2c2.1 2.4 4.4 4.6 7 6.5 19.7 14.4 49.6 10.6 72.8-9.2 26.5-22.7 33.1-57.2 15-78.4-17.8-20.8-53.5-19.7-79.7 2.7-26.7 22.7-33.3 57.2-15.1 78.4z m42.6-46c9.1-7.8 18-8.3 19.5-7.6 0.8 2-1.1 10.8-10.1 18.5-8.7 7.4-17.2 8.2-19.6 7.3-0.5-2.5 1.6-10.8 10.2-18.2z m79 110.6c-5.4-24-35.6-38.8-65.5-32-31.1 7-51.1 32.1-45.5 57 2.1 9.3 7.6 17.5 15.8 23.5 12.9 9.5 31.5 12.7 49.8 8.5 13.5-3.1 25.7-9.8 34.1-19.1 10.1-11 14.3-24.8 11.3-37.9z m-54.3 17.8c-7.7 1.7-14.3 0.3-17.1-1.7 1-2.3 5.7-6.9 14.7-9 7.8-1.7 14.3-0.3 17.5 1.1-0.4 1.9-5.2 7.4-15.1 9.6zM731.3 464.8l-139.6-151-3-2.8c-38.7-31-87.9-42.5-133.7-32.3-40.1 8.9-73.1 33.7-90.6 68-18.8 36.8-18.3 84.2-17.8 130.1 0.5 50.2 1.1 102.1-24.7 130.4-26 28.6-54 35.8-86.3 44.1-34.7 8.9-74 19-111.5 56.6-28.7 28.8-43.1 67.4-39.3 105.9 3 30.7 19.2 76.5 79.3 119.8l0.7 0.5c73 52.2 175.5 14.7 221.1-19.4 0.7-0.4 1.2-1 1.8-1.4 1.5-1.2 3.2-2.4 4.6-3.5l-0.2-0.3c0.6-0.7 1.4-1 2-1.7 8.6-11.3 5.8-27.5-6.1-36-9.9-7.1-22.8-6.3-31.8 0.5l-0.3-0.3c-59 34.1-114.1 55.2-161.1 21.6-35.2-25.4-55.2-54.2-58.1-83.4-2.3-24.1 6.9-48.5 25.4-67 27.8-27.8 55.7-35 88.1-43.3 35.2-9.1 75.2-19.3 111.3-59.1 38.5-42.4 37.9-103.9 37.2-163.4-0.5-41.9-0.9-81.4 12.5-107.7 10.8-21.1 31.4-36.5 56.6-42.1 28.2-6.3 58.7 0.3 83.6 18.2 1.1 0.8 2.3 1.6 3.4 2.5L692.3 497c49.3 57.6 48.2 110.2-3.4 165.6-61.9 65.9-124.7 96.7-180.2 123l0.1 0.2c-3.4 1.7-6.5 4-9 7.2-8.6 11.3-5.8 27.5 6.1 36 8.4 6 19.1 6.4 27.8 2.2l0.1 0.2c55.7-26.5 128.7-65.1 194-134.6 68.9-74 70.4-154 3.5-232zM524.1 242.4c4.1 3 8.6 5.4 13.3 7.2 37.4 13.9 81.5-15.2 100.5-66.3 16.2-43.6 8.2-88.3-19.6-108.7-4.1-3-8.6-5.4-13.3-7.2-18.8-7-40.8-3-60.1 11-17.5 12.6-31.8 32.2-40.4 55.3-16.2 43.6-8.2 88.3 19.6 108.7z m16.7-93.1c5.5-14.8 14.7-27.7 25.2-35.3 5-3.6 14.8-9.2 23.9-5.8 1.4 0.5 2.8 1.3 4 2.2 11.2 8.2 16.6 33.3 6.3 61-11.4 30.7-35.1 46.3-49.1 41.1-1.4-0.5-2.8-1.3-4-2.2-11.1-8.2-16.6-33.3-6.3-61z m104.8 181.2c27.5 20.4 71.3 5.7 99.7-33.5 28.4-39.2 29.1-85.8 1.6-106.2-27.5-20.4-71.3-5.7-99.7 33.5-28.4 39.1-29.1 85.8-1.6 106.2z m74.8-103.1c3.4 2.5 4.9 21.2-10.9 43s-33.9 26-37.3 23.5c-3.4-2.5-4.9-21.2 11-43.1 15.7-21.8 33.8-26 37.2-23.4z",trash:"M750.5 938.9H278.6c-53.3 0-96.6-39.8-96.6-88.7V255h-66.5C85.7 255 64 244.3 64 229.6s21.7-25.4 51.5-25.4h793c29.8 0 51.5 10.7 51.5 25.4S938.3 255 908.5 255h-61.4v595.2c0 48.9-43.3 88.7-96.6 88.7zM230.1 255v595.2c0 22.4 21.8 40.6 48.6 40.6h471.8c26.8 0 48.6-18.2 48.6-40.6V255h-569z m408.8 628.6c-15.8 0-27.3-21.7-27.3-51.6V513.2c0-29.9 11.5-51.6 27.3-51.6s27.3 21.7 27.3 51.6V832c0 29.9-11.5 51.6-27.3 51.6z m-127.4 0c-15.8 0-27.3-21.7-27.3-51.6V513.2c0-29.9 11.5-51.6 27.3-51.6s27.3 21.7 27.3 51.6V832c0 29.9-11.4 51.6-27.3 51.6z m-127.4-1c-15.8 0-27.3-21.7-27.3-51.6V512.2c0-29.9 11.5-51.6 27.3-51.6s27.3 21.7 27.3 51.6V831c0.1 29.9-11.4 51.6-27.3 51.6z m389.8-746.8H250.1c-29.8 0-51.5-10.7-51.5-25.4S220.3 85 250.1 85h523.8c29.8 0 51.5 10.7 51.5 25.4 0 14.8-21.7 25.4-51.5 25.4z",unmute:"M517.3 924.1c-19.4 0-40.5-9.8-60.4-28.4L262.3 710h-119C92.9 710 64 681.1 64 630.8V392.9c0-51.1 28.1-79.2 79.2-79.2h119L457 128c27.1-25.4 57.7-34.3 82-23.7 25.7 11.1 40.4 41.7 40.4 84v647.1c0 42.4-14.8 73.1-40.5 84.3-6.9 2.9-14.1 4.4-21.6 4.4zM167 377c-30.8 0-39.7 8.9-39.7 39.7V607c0 31.6 8.2 39.7 39.7 39.7h130.1l2.3 2.5c84.6 89.9 145.7 153.4 181.5 188.7 19 18.7 26.3 17 27.6 16.5 1.3-0.5 7.6-4.6 7.6-31.8V203.3c0-27.5-6-30.7-6.6-31-1.5-0.7-8.2-1.2-28.3 18.5-58.4 57.2-159.6 155.3-189.2 184l-2.3 2.2H167z m644.8 454.6c-14.8 9.1-33.4 5.6-42.8-6.6-7.6-9.9-8.1-24.4-1-36 1.3-1.4 3.2-3.3 5.4-5.8 27.2-29.1 47-49.6 64-76.1 10.2-15.9 19.3-32.6 27.1-49.9 22.4-49.6 33.7-102.5 33.7-157.3 0-99.6-38.1-194.4-107.4-266.7-1.6-1.7-3.3-3.5-4.9-5.2-6.9-12.4-4.9-28 5-38 10.2-10.3 26.3-12.5 39-5 3 3.2 6 6.4 9 9.5 78 83.5 121 191.8 121 305.4 0 63-13 124-38.6 181.1-24.6 55-59.7 103.9-104.2 145.5l-5.3 5.1z m-97.5-119.8c-11.9 7.3-27 6.5-37.3-1.8-11.9-9.6-15.2-27.3-7.2-41.5 1.6-1.9 3.2-3.7 4.9-5.6 36.5-42.1 56.7-95.7 56.7-151 0-56.6-20.9-111.1-58.8-153.6l-5.4-6c-6.4-13-3.2-28.8 7.8-38.2 11-9.5 27.1-10.3 39-2 3.1 3.4 6.3 6.8 9.4 10.2 45.2 53.1 70 120.3 70 189.6 0 71.3-26.2 140.1-73.7 193.8l-5.4 6.1z",upload:"M392 325.7s-54.2-68.6-127.7-12.6c-65.8 53.5-54.2 151.3-54.2 151.3S64 501.9 64 697.9c3.3 195.8 158.7 197.8 158.7 197.8l233.3 0.3V686.4H344.2L512 476.9l167.9 209.6H568V896l226.6-0.3s144.7 0.2 165-186.1c9.7-203.7-139.8-243.8-139.8-243.8s17-301.5-192.9-335.9C446.8 105.7 392 325.7 392 325.7z",user:"M929.2 960c-13.7 0-25.5-8.9-29.5-22-12.6-41.6-31.5-80.7-56.4-116.4-24.5-35.2-54.2-66.2-88.2-92-70.6-53.7-154.7-82.1-243.2-82.1-88.4 0-172.5 28.4-243 82-34 25.8-63.6 56.7-88.2 91.9-24.9 35.6-43.8 74.7-56.4 116.2-2.4 8-7.8 14.5-15.1 18.4-7.3 3.9-15.6 4.6-23.5 2.2-16.2-5-25.3-22.4-20.4-38.8 14.5-47.8 36.4-92.8 65-133.8 28.2-40.4 62.4-76 101.5-105.7 39.6-30.1 83.3-53.5 129.9-69.5 48.3-16.6 98.8-25 150.2-25 51.5 0 102 8.4 150.3 25.1 46.7 16.1 90.4 39.5 130 69.6 39.1 29.8 73.2 65.4 101.5 105.9 28.6 41 50.4 86.1 64.9 134 4.9 16.3-4.2 33.7-20.4 38.7-2.9 0.8-6 1.3-9 1.3zM512 569c-67.4 0-130.9-26.3-178.6-74-47.7-47.7-74-111.1-74-178.6s26.3-130.9 74-178.6C381.1 90.3 444.5 64 512 64c67.4 0 130.9 26.3 178.6 74 47.7 47.7 74 111.1 74 178.5s-26.3 130.9-74 178.6C642.9 542.8 579.4 569 512 569z m0-443.4c-51 0-98.9 19.9-135 55.9-36.1 36.1-55.9 84-55.9 135s19.9 98.9 55.9 135c36.1 36.1 84 55.9 135 55.9s99-19.9 135-55.9c36.1-36.1 55.9-84 55.9-135s-19.9-98.9-55.9-135c-36.1-36.1-84-55.9-135-55.9z",vip:"M511.9 946.7c-8.5 0-16.6-4-21.8-10.8L165 511.8c-6.1-7.7-7.6-18.2-3.9-27.3 3.7-9.2 12.1-15.6 22-16.9 8.2-1 16.3 1.7 22.2 7.2h0.5l306.1 399.3 222.7-290.6c4.5-5.8 10.9-9.5 18.2-10.5 7.3-1 14.5 1 20.3 5.4 12 9.2 14.3 26.5 5.1 38.5l-244.5 319c-5.1 6.7-13.3 10.8-21.8 10.8z m75.6-332h-1.7a16 16 0 0 1-3.9-0.5l-2.7-0.5-3.9-1.4-0.6-0.3c-7.5-4-11.7-11.4-11.7-20.7V432c0-19.9 12-31.3 32.8-31.3h57.5c21.6 0 38.3 5.4 49.6 16 11.5 10.8 17.3 26.7 17.3 47.3 0 21.6-7.5 38.4-22.3 49.9-12.1 9.2-27.2 13.9-45.1 13.9h-42.6v63.5c0 9.3-4.1 16.7-11.7 20.7l-0.6 0.3-3.9 1.4-2.7 0.5c-1.1 0.4-2.4 0.5-3.8 0.5z m22.8-118.2h33.8c5.9 0 10.7-1.2 14.4-3.5l0.1-0.1c3.2-1.9 5.6-4.5 7.4-8l0.1-0.2c1.8-3.2 3.1-6.9 3.9-11 0.6-3.4 0.8-6.9 0.8-10.4 0-1.5-0.1-3-0.2-4.6v-0.8c0-1.6-0.1-3.1-0.4-4.6-0.7-4.3-1.8-7.8-3.2-10.7-1.8-3.3-4-5.9-6.9-7.6-3.7-2.2-8.6-3.3-14.3-3.3h-35.5v64.8zM488 600c-0.6-137.8-0.9-183.2 0-187 2-8.1 10.6-19.4 24-19 11.6 0.3 21.5 9.3 23 21 0.1 61.8 0.1 123.6 0.2 185.3-1.6 11.7-11.6 20.5-23.2 20.7-12 0.2-22.5-8.9-24-21z m-100.9 14.7c-14 0-24.4-7.3-29.3-20.6l-60.2-169-0.1-0.7c-0.3-1.4-0.4-2.8-0.4-4.2 0-14.6 9.3-23.3 25-23.3 8.5 0 13.6 3.6 16.4 6.6l0.3 0.4c1.3 1.5 2.4 3.2 3.3 5.2l0.4 0.8 0.4 0.6 50.6 145.8L444.4 408c2.7-7 8.4-11 15.6-11 10.1 0 16.7 6.6 16.7 16.7v2.7l-61 177.5c-1.6 4.7-4.2 9-7.8 12.6l-0.1 0.1c-5.7 5.4-12.6 8.1-20.7 8.1z m422.5-56.2c-5.8 0-11.7-1.9-16.7-5.7-11.7-9-14.2-25.5-5.7-37.6l0.2-0.3L910.7 354c9.2-12 26.4-14.3 38.4-5.1 12 9.2 14.3 26.4 5.1 38.5l-123.4 161-0.1 0.1c-5.5 6.6-13.3 10-21.1 10z m-669-96.1c-7.9 0-15.7-3.4-21.1-9.9l-0.2-0.3-49.7-64.8c-4.5-5.8-6.4-13-5.4-20.3 1-7.3 4.7-13.7 10.5-18.2 12-9.2 29.3-6.9 38.5 5.1l49.8 65c8.5 12.1 6 28.6-5.7 37.6-5 3.9-10.8 5.8-16.7 5.8z m643.6-88.6h-545c-13.4 0-24.4-10.9-24.4-24.4 0-13.4 10.9-24.4 24.4-24.4h545c13.4 0 24.4 10.9 24.4 24.4-0.1 13.5-11 24.4-24.4 24.4z m148.4-48.6c-8.8 0-17.2-4.3-22.4-11.6l-45.6-62.8c-4.3-5.9-6.1-13.2-4.9-20.4 1.1-7.2 5-13.6 11-17.9 12.2-8.9 29.4-6.2 38.3 6.1l45.7 62.9c5.8 7.8 7 18.3 3 27.4-4 9-12.5 15.2-22.4 16.2-0.9 0.1-1.8 0.1-2.7 0.1zM91.4 315c-5.6 0-11.2-1.7-16.1-5.2-12.2-8.9-15-26.1-6.1-38.3L202 88.6c5.1-7.1 13.4-11.3 22.2-11.3h575.4c8.7 0 17 4.2 22.2 11.3l51.6 71c4.3 5.9 6 13.2 4.9 20.4-1.1 7.2-5.1 13.6-11 17.9-5.9 4.3-13.2 6-20.4 4.9-7.2-1.1-13.6-5.1-17.9-11l-43.4-59.7H238.2L113.6 303.7c-5.3 7.4-13.7 11.3-22.2 11.3z",warn:"M907.3 931H116.7c-20.2 0-36.9-8.4-46-23.2-9-14.7-8.9-33.5 0.3-51.5l363.3-711.7c13.5-26.4 45.6-48 76.2-51.3l2.7-0.3 2.7 0.3c30.7 3.3 62.7 24.9 76.2 51.4l361.2 711.5c9.1 18 9.2 36.8 0.2 51.6-9.3 14.7-26 23.2-46.2 23.2z m-791.8-50.7h793.1c-0.2-0.4-0.3-0.8-0.6-1.2l-0.9-1.7-360.3-709.8c-5.4-10.7-20.4-21.1-33.7-23.6-13.4 2.5-28.4 12.9-33.8 23.6L116 879.3c-0.2 0.3-0.3 0.7-0.5 1zM512 812c-24.3 0-44-19.7-44-44s19.7-44 44-44 44 19.7 44 44-19.7 44-44 44z m0-108c-16.5 0-30-13.5-30-30V330c0-16.5 13.5-30 30-30s30 13.5 30 30v344c0 16.5-13.5 30-30 30z",wallet:"M384.5 682.6V341.4c0-47 39.4-85.4 88.5-85.4h408.1v-42.6c0-47-39.2-85.4-87.6-85.4H155.2c-49.1 0-91.2 37-91.2 84v600c0 47 42.1 84 91.2 84h638.1c48.7 0 87.6-38.4 87.6-85.4V768H472.7c-48.9 0-88.2-38.4-88.2-85.4zM448 355.7v312.6c0 19.6 16.8 35.7 37.4 35.7h437.2c20.6 0 37.4-16.1 37.4-35.7V355.7c0-19.6-16.8-35.7-37.4-35.7H485.4c-20.6 0-37.4 16.1-37.4 35.7z m195.9 227.4c-43 2.7-78.4-32.8-75.8-75.8 2.2-35.4 31-64.2 66.6-66.7 43-2.7 78.4 32.8 75.8 75.8-2.5 35.7-31.2 64.5-66.6 66.7z",windows:"M431.2 491.5H64V187.3l367.2-50.6v354.8z m0 395.8L64 836.7V536.8h367.2v350.5zM960 491.5H471.6V131.3L960 64v427.5z m0 468.5l-488.4-67.3V536.8H960V960z"};export default SVG_PATH; \ No newline at end of file diff --git a/src/lib/layer/index.js b/src/lib/layer/index.js new file mode 100644 index 0000000..442751a --- /dev/null +++ b/src/lib/layer/index.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent@doui.cc) + * @date 2020-07-07 16:27:17 + * @version v2.0.1 + * + */ + +'use strict' + +import"../form/input.js";import Drag from"../drag/core.js";import $ from"../utils.js";const LANGUAGES={en:{TITLE:"Dialog",BTNS:["Cancel","OK"]},zh:{TITLE:"提示",BTNS:["取消","确定"]}};LANGUAGES["zh-CN"]=LANGUAGES.zh;const lang=LANGUAGES[window.__ENV_LANG__||navigator.language]||LANGUAGES.en;let uniqueInstance=null,toastInstance=null;const UNIQUE_TYPES=["alert","confirm","prompt"];function renderBtns(t){var e="";return t.forEach((t,s)=>{e+=``}),e}class Layer extends HTMLElement{static get observedAttributes(){return["left","right","top","bottom","from","to","btns","type","title","blur","background","mask","radius","mask-close","mask-color","fixed"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{left:"auto",right:"auto",top:"auto",bottom:"auto",from:Object.create(null),to:Object.create(null),btns:[],type:"",title:"",blur:!1,background:null,mask:!1,radius:null,"mask-close":!1,"mask-color":null,fixed:!0},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML='
    ',this.__TITLE__=this.root.children[1].firstElementChild,this.__BODY__=this.root.children[1].children[1],this.__CTRL__=this.root.children[1].lastElementChild,this.promise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}set title(t){this.props.title=t,t?(this.__TITLE__.firstElementChild?this.__TITLE__.insertBefore(document.createTextNode(t),this.__TITLE__.firstElementChild):this.__TITLE__.textContent=t,this.__TITLE__.style.display="flex"):this.__TITLE__.style.display=""}set type(t){var{btns:e}=this.props;if(t&&!this._handleBtnClick){switch(t){case"alert":for(;e.length>1;)e.splice(0,1);break;case"confirm":case"prompt":for(;e.length>2;)e.splice(0,1);break;case"toast":case"notify":case"frame":if("notify"===t){var s=document.createElement("wc-icon");s.setAttribute("is","close"),this.__TITLE__.appendChild(s)}e=[];break;default:t="common"}this.props.type=t,e.length?(this.__CTRL__.innerHTML=renderBtns(e),this.__CTRL__.style.display="flex"):this.__CTRL__.style.display="",this.setAttribute(t,"")}}set fixed(t){this.props.fixed=!!t,this._updateFixedStat()}_updateFixedStat(){UNIQUE_TYPES.includes(this.props.type)||(this.props.fixed?this._dragIns&&(this._dragIns.destroy(),this._dragIns=null):(this._dragIns=new Drag(this.root.children[1]).by(this.__TITLE__,{overflow:!!this.props.hasOwnProperty("overflow")&&this.props.overflow}),this.removeAttribute("fixed")))}_intercept(t){this.props.intercept?this.props.intercept(t,e=>{delete this.props.intercept,this.resolve(t),this.close()}):(this.resolve(t),this.close())}close(t){if(!1===this.wrapped)if(this._dragIns&&this._dragIns.destroy(),UNIQUE_TYPES.includes(this.props.type)&&(uniqueInstance=null),delete this.promise,$.unbind(this.__CTRL__,"click",this._handleBtnClick),this.props.from&&!t){let t="opacity:0;";for(let e in this.props.from)t+=`${e}:${this.props.from[e]};`;this.root.children[1].style.cssText+=t,this.timer=setTimeout(()=>{this.parentNode.removeChild(this),this.dispatchEvent(new CustomEvent("close"))},200)}else clearTimeout(this.timer),this.parentNode.removeChild(this),this.dispatchEvent(new CustomEvent("close"));else this.removeAttribute("common"),this.dispatchEvent(new CustomEvent("close"))}show(){!1!==this.wrapped&&this.setAttribute("common","")}moveTo(t={}){var e="";for(var s in t)e+=`${s}:${t[s]};`;this.root.children[1].style.cssText+=e}connectedCallback(){this.type=this.props.type,this.title=this.props.title,this._handleBtnClick=$.bind(this.__CTRL__,"click",t=>{if("BUTTON"===t.target.tagName){var e=+t.target.dataset.idx,{type:s}=this.props;switch(s){case"alert":this.resolve(),this.close();break;case"confirm":case"prompt":if(0===e)this.reject(),this.close();else{let t="prompt"===s?this.__INPUT__.value:null;this._intercept(t)}break;default:this._intercept(e)}}}),"prompt"===this.props.type&&(this.__INPUT__=this.__BODY__.firstElementChild.assignedNodes().pop(),this._handleSubmit=$.bind(this.__INPUT__,"submit",t=>{this._intercept(t.detail)})),this.props.mask&&this.setAttribute("mask",""),this._updateFixedStat(),this.props.mask&&(this._handlMask=$.outside(this.root.children[1],t=>{t.target===this&&(this.props["mask-close"]?(!1===this.wrapped&&this.reject(null),this.close()):UNIQUE_TYPES.includes(this.props.type)&&(this.root.children[1].classList.toggle("scale",!0),setTimeout(t=>{this.root.children[1].classList.remove("scale")},100)))}),this.props["mask-color"]&&(this.style.backgroundColor=this.props["mask-color"])),this.props.blur&&this.root.children[1].classList.toggle("blur",!0);let t=this.props.from?"":"opacity:1;";if(this.props.background&&(t+=`background: ${this.props.background};`),(this.props.radius||0===this.props.radius)&&(t+=`border-radius: ${this.props.radius};`),this.props.size)for(let e in this.props.size)t+=`${e}:${this.props.size[e]};`;if(this.props.from){for(let e in this.props.from)t+=`${e}:${this.props.from[e]};`;setTimeout(t=>{let e="opacity:1;";for(let t in this.props.to)e+=`${t}:${this.props.to[t]};`;this.root.children[1].style.cssText+=e},50)}t&&(this.root.children[1].style.cssText+=t),"toast"===this.props.type&&(this.timer=setTimeout(()=>{toastInstance=null,this.close()},3e3)),"notify"===this.props.type&&(this._handleClose=$.bind(this.__TITLE__,"click",t=>{"WC-ICON"===t.target.tagName&&this.close()}))}disconnectedCallback(){$.clearOutside(this._handlMask),$.unbind(this.__TITLE__,"click",this._handleClose)}attributeChangedCallback(t,e,s){if(null!==s&&e!==s)switch(t){case"title":case"type":this[t]=s,this.removeAttribute(t);break;case"mask-color":case"background":this.props[t]=s;break;case"mask":case"mask-close":case"blur":this.props[t]=!0;break;case"radius":this.props.radius=s;break;case"left":case"right":case"top":case"bottom":this.props.from[t]=s,this.props.to=this.props.from,this.removeAttribute(t);break;case"fixed":this.fixed=!0}}}function _layer(t){var e=document.createElement("wc-layer");if(t.type||(t.type="common"),"toast"===t.type){var{type:s,content:o}=t;t={type:s,content:o,from:{top:0},to:{top:"30px"}},toastInstance&&toastInstance.close(!0),toastInstance=e}else e.props.mask=t.mask,!1===t.btns?e.props.btns=[]:t.btns&&t.btns.length?e.props.btns=t.btns:e.props.btns=lang.BTNS.concat(),t.intercept&&"function"==typeof t.intercept&&(e.props.intercept=t.intercept),e.props.mask=t.mask,e.props["mask-close"]=t["mask-close"],t.hasOwnProperty("overflow")&&(e.props.overflow=t.overflow),e.props["mask-color"]=t["mask-color"],e.props.blur=t.blur,e.props.radius=t.radius,e.props.background=t.background,t.size&&"object"==typeof t.size&&(e.props.size=t.size),UNIQUE_TYPES.includes(t.type)&&(uniqueInstance&&uniqueInstance.close(!0),uniqueInstance=e);return t.to&&"object"==typeof t.to&&(e.props.to=t.to,t.from&&"object"==typeof t.from?e.props.from=t.from:e.props.from=t.to),e.props.type=t.type,e.props.title=t.title,t.hasOwnProperty("fixed")&&(e.props.fixed=t.fixed),e.innerHTML=t.content,e.wrapped=!1,document.body.appendChild(e),e.promise}Object.assign(_layer,{alert(t,e=lang.TITLE){return this({type:"alert",title:e,content:t,mask:!0})},confirm(t,e=lang.TITLE,s){return"function"==typeof e&&(s=e,e=lang.TITLE),this({type:"confirm",title:e,content:t,mask:!0,intercept:s})},prompt(t=lang.TITLE,e){return this({type:"prompt",title:t,content:'',mask:!0,intercept:e})},frame(t,e={}){return this({...e,type:"frame",content:``,mask:!0,"mask-close":!0})},notify(t){return this({type:"notify",title:"通知",content:t,blur:!0,from:{right:"-300px",top:0},to:{right:0}})},toast(t,e="info"){var s=e;switch(e){case"info":case"warn":break;case"error":s="deny";break;case"success":s="get";break;default:s="info"}return this({content:`\n
    \n \n ${t}\n
    `,type:"toast"})}}),window.layer=_layer;export default _layer; + +if(!customElements.get('wc-layer')){ + customElements.define('wc-layer', Layer) +} diff --git a/src/lib/scroll/index.js b/src/lib/scroll/index.js new file mode 100644 index 0000000..d73c9d8 --- /dev/null +++ b/src/lib/scroll/index.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent@doui.cc) + * @date 2020-07-07 10:57:15 + * @version v2.0.1 + * + */ + +'use strict' + +import $ from"../utils.js";const IS_FF=!!window.sidebar;export default class Scroll extends HTMLElement{static get observedAttributes(){return["thumbX","thumbY","disabled","axis"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{thumbX:0,thumbY:0,disabled:!1,axis:"xy"},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML='
    ',this.__BOX__=this.root.children[1],this.__X__=this.root.children[2].children[0],this.__Y__=this.root.children[3].children[0]}get scrollTop(){return this.__BOX__.scrollTop}set scrollTop(t){if((t=+t)==t){var{sh:s,oh:i,yh:e}=this.props;this.__BOX__.scrollTop=t;var o=this.__BOX__.scrollTop/(s-i)*(i-e);this.props.thumbY=o,this.__Y__.style.transform=`translateY(${o}px)`}}get scrollLeft(){return this.__BOX__.scrollLeft}set scrollLeft(t){if((t=+t)==t){var{sw:s,ow:i,xw:e}=this.props;this.__BOX__.scrollLeft=t;var o=this.__BOX__.scrollLeft/(s-i)*(i-e);this.props.thumbX=o,this.__X__.style.transform=`translateX(${o}px)`}}get scrollHeight(){return this.__BOX__.scrollHeight}get disabled(){return this.props.disabled}set disabled(t){var s=typeof t;t!==this.props.disabled&&("boolean"===s&&t||"boolean"!==s?(this.props.disabled=!0,this.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled")))}_fetchScrollX(t){var{sw:s,ow:i,xw:e}=this.props;return t<0?t=0:t>i-e&&(t=i-e),this.__BOX__.scrollLeft=t/(i-e)*(s-i),this.__X__.style.transform=`translateX(${t}px)`,t}_fetchScrollY(t){var{sh:s,oh:i,yh:e}=this.props;return t<0?t=0:t>i-e&&(t=i-e),this.__BOX__.scrollTop=t/(i-e)*(s-i),this.__Y__.style.transform=`translateY(${t}px)`,t}connectedCallback(){this._initFn=$.bind(this.__BOX__,"mouseenter",t=>{if(!this.disabled){var s=this.__BOX__.offsetWidth,i=this.__BOX__.scrollWidth,e=this.__BOX__.offsetHeight,o=this.__BOX__.scrollHeight,h=e*e/o>>0,r=s*s/i>>0;h<50&&(h=50),r<50&&(r=50),r===s&&(r=0),h===e&&(h=0),this.props.oh=e,this.props.sh=o,this.props.ow=s,this.props.sw=i,this.props.yh=h,this.props.xw=r,this.__X__.style.width=r+"px",this.__Y__.style.height=h+"px"}}),this._wheelFn=$.bind(this.__BOX__,"wheel",t=>{if(!this.disabled){var{sh:s,oh:i,yh:e,sw:o,ow:h,xw:r}=this.props;if(r||e){var l,a,_=Date.now();if((!this.stamp||_-this.stamp>800)&&(this.stamp=_,this.times=1),IS_FF)l=t.deltaMode?10*t.deltaX:t.deltaX,a=t.deltaMode?10*t.deltaY:t.deltaY;else{var n=Math.abs(t.wheelDelta);n<120?(l=t.deltaX,a=t.deltaY):(l=t.deltaX/(n/120),a=t.deltaY/(n/120))}if(_-this.stamp<20&&(this.times+=.05,this.times>3&&(this.times=3)),l*=this.times,a*=this.times,"x"!==this.props.axis&&(this.__BOX__.scrollTop+=a,e)){var p=this.__BOX__.scrollTop/(s-i)*(i-e);if((0===(p>>=0)||i-e===p)&&p===this.props.thumbY)return;t.preventDefault(),t.stopPropagation(),this.props.thumbY=p,this.__Y__.style.transform=`translateY(${p}px)`}if("y"!==this.props.axis&&(this.__BOX__.scrollLeft+=l,r)){var d=this.__BOX__.scrollLeft/(o-h)*(h-r);if((0===(d>>=0)||h-r===d)&&d===this.props.thumbX)return;t.preventDefault(),t.stopPropagation(),this.props.thumbX=d,this.__X__.style.transform=`translateX(${d}px)`}this.stamp=_,this.dispatchEvent(new CustomEvent("scroll",{detail:{x:this.props.thumbX,y:this.props.thumbY}}))}}});var t,s,i,e,o=o=>{var{thumbY:h,thumbX:r}=this.props;null!==t&&(i=this._fetchScrollX(r+o.pageX-t)),null!==s&&(e=this._fetchScrollY(h+o.pageY-s))},h=r=>{t=null,s=null,this.props.thumbX=i,this.props.thumbY=e,$.unbind(document,"mousemove",o),$.unbind(document,"mouseup",h)};$.bind(this.__Y__,"mousedown",t=>{s=t.pageY,this.props.thumbY||(this.props.thumbY=0),this.disabled||($.bind(document,"mousemove",o),$.bind(document,"mouseup",h))}),$.bind(this.__X__,"mousedown",s=>{t=s.pageX,this.props.thumbX||(this.props.thumbX=0),this.disabled||($.bind(document,"mousemove",o),$.bind(document,"mouseup",h))}),this.__observer=new MutationObserver(this._initFn),this.__observer.observe(this,{childList:!0,subtree:!0,characterData:!0})}disconnectedCallback(){this.__observer.disconnect(),$.unbind(this.__BOX__,"mouseenter",this._initFn),$.unbind(this.__BOX__,"wheel",this._wheelFn)}attributeChangedCallback(t,s,i){if(null!==i&&s!==i)switch(t){case"axis":this.props.axis=i;break;case"disabled":this[t]=!0}}}; + +if(!customElements.get('wc-scroll')){ + customElements.define('wc-scroll', Scroll) +} diff --git a/src/lib/utils.js b/src/lib/utils.js new file mode 100644 index 0000000..752ccd5 --- /dev/null +++ b/src/lib/utils.js @@ -0,0 +1 @@ +function noop(){}export default{nextTick:function(){let t=[];let e=document.createTextNode("\x3c!-- --\x3e");new MutationObserver(function(){let e=t.length;for(let n=0;n{if(n)if(n.path){for(var i=n.path.concat();i.length>3;)if(i.shift()===t)return}else{var o=n.explicitOriginalTarget||n.target;if(t===o||t.contains(o)||t.root&&t.root.contains(o))return}e(n)})},clearOutside(t=noop){this.unbind(document,"mousedown",t)}}; \ No newline at end of file diff --git a/src/main.js b/src/main.js new file mode 100644 index 0000000..c594a85 --- /dev/null +++ b/src/main.js @@ -0,0 +1,109 @@ +/** + * + * @author yutent + * @date 2019/09/16 20:51:19 + */ + +const { app, BrowserWindow, protocol, ipcMain, net } = require('electron') +const path = require('path') +const fs = require('iofs') + +const createMenu = require('./tools/menu') +const createTay = require('./tools/tray') + +const log = console.log +const MIME_TYPES = { + '.js': 'text/javascript', + '.html': 'text/html', + '.htm': 'text/plain', + '.css': 'text/css', + '.jpg': 'image/jpg', + '.png': 'image/png', + '.gif': 'image/gif', + '.svg': 'image/svg+xml', + '.ico': 'image/ico' +} + +const ROOT = __dirname + +function fetch(url) { + return new Promise((y, n) => { + var conn = net.request(url) + var r = [] + + conn.on('response', res => { + res.on('data', c => { + r.push(c) + }) + + res.on('end', _ => { + y(Buffer.concat(r).toString()) + }) + }) + + conn.on('error', e => { + n(e) + }) + + conn.end() + }) +} + +/* ----------------------------------------------------- */ +app.commandLine.appendSwitch('--lang', 'zh-CN') +app.commandLine.appendSwitch('--autoplay-policy', 'no-user-gesture-required') + +protocol.registerSchemesAsPrivileged([ + { scheme: 'app', privileges: { secure: true, standard: true } } +]) + +/* ----------------------------------------------------- */ + +// app.dock.hide() + +// 初始化应用 +app.once('ready', () => { + // 注册协议 + protocol.registerBufferProtocol('app', (req, cb) => { + let file = req.url.replace(/^app:\/\/local\//, '') + let ext = path.extname(req.url) + let buff = fs.cat(path.resolve(ROOT, file)) + cb({ data: buff, mimeType: MIME_TYPES[ext] }) + }) + + // 创建浏览器窗口 + let win = new BrowserWindow({ + title: '', + width: 375, + height: 360, + resizable: false, + maximizable: false, + frame: false, + transparent: true, + show: false, + icon: path.resolve(ROOT, './images/app.png'), + webPreferences: { + webSecurity: false, + experimentalFeatures: true, + nodeIntegration: true + } + }) + + win.on('closed', () => { + app.exit() + win = null + }) + + win.openDevTools() + + // 然后加载应用的 index.html + win.loadURL('app://local/index.html') + + createMenu(win) + createTay(win) +}) +ipcMain.on('net', (ev, url) => { + fetch(url).then(r => { + ev.returnValue = r + }) +}) diff --git a/src/tools/menu.js b/src/tools/menu.js new file mode 100644 index 0000000..4c3a1d2 --- /dev/null +++ b/src/tools/menu.js @@ -0,0 +1,32 @@ +/** + * 菜单项 + * @author yutent + * @date 2019/01/21 20:34:04 + */ + +'use strict' + +const { Menu } = require('electron') + +module.exports = function(win) { + let menuList = Menu.buildFromTemplate([ + { + label: '搞基数据', + submenu: [ + { role: 'about', label: '关于搞基数据' }, + { type: 'separator' }, + { role: 'quit', label: '退出' } + ] + }, + { + label: '编辑', + submenu: [ + { role: 'cut', label: '剪切' }, + { role: 'copy', label: '复制' }, + { role: 'paste', label: '粘贴' }, + { role: 'selectall', label: '全选' } + ] + } + ]) + Menu.setApplicationMenu(menuList) +} diff --git a/src/tools/tray.js b/src/tools/tray.js new file mode 100644 index 0000000..efec8f9 --- /dev/null +++ b/src/tools/tray.js @@ -0,0 +1,21 @@ +/** + * 托盘 + * @author yutent + * @date 2019/01/21 20:42:07 + */ + +'use strict' + +const { app, Tray } = require('electron') +const path = require('path') +const ROOT = __dirname + +module.exports = function(win) { + app.__TRAY__ = new Tray(path.join(ROOT, '../images/tray.png')) + + app.__TRAY__.on('click', _ => { + var b = app.__TRAY__.getBounds() + win.setBounds({ x: b.x - 185, y: b.y + b.height + 4 }) + win.show() + }) +}

    PMwHVR|UWe7$4JO}R5fwi}O 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 literal 0 HcmV?d00001 diff --git a/icons/app.icns b/icons/app.icns new file mode 100644 index 0000000000000000000000000000000000000000..7daa85b2d5b56349f1e93a51aa8b667340c1e0cd GIT binary patch literal 58951 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 + * @date 2018/12/16 17:15:07 + */ + + +@import "./var.scss"; + + +html {font-size:12.8px;width:100%;height:100vh;} + +body { + display:flex;flex-direction: column; + width:100%;height:100%;line-height:1.5; + font-size:px(14);color:nth($cd, 1); + background:rgba(0, 0, 0, .75); +} diff --git a/src/css/var.scss b/src/css/var.scss new file mode 100644 index 0000000..9ff2f2b --- /dev/null +++ b/src/css/var.scss @@ -0,0 +1,18 @@ +$ct: #4db6ac #26a69a #009688; +$cg: #81c784 #66bb6a #4caf50; +$cpp: #ba68c8 #ba68c8 #9c27b0; +$cb: #64b5f6 #42a5f5 #2196f3; +$cr: #ff5061 #eb3b48 #ce3742; +$co: #ffb618 #f39c12 #e67e22; +$cp: #f2f5fc #e8ebf4 #dae1e9; +$cgr: #bdbdbd #9e9e9e #757575; +$cd: #62778d #526273 #425064; + +@mixin ts($c: all, $t: .1s, $m: ease-in-out){ + transition:$c $t $m; +} + +@function px($n: 1) { + @return ($n / 12.8) + rem; +} + diff --git a/src/images/6EA1EDBC-2C8A-4360-BF52-2BEB82A6B68B.png b/src/images/6EA1EDBC-2C8A-4360-BF52-2BEB82A6B68B.png new file mode 100644 index 0000000000000000000000000000000000000000..4c9637bca5a46c04873e44155fe4a634b8291b98 GIT binary patch literal 28160 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 e2@cyUED&C|9FNT3?RM$ literal 0 HcmV?d00001 diff --git a/src/images/app.png b/src/images/app.png new file mode 100644 index 0000000000000000000000000000000000000000..ef021812c3f9c339be6fee6bf870a079fe5a73a9 GIT binary patch literal 9653 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 literal 0 HcmV?d00001 diff --git a/src/images/tray@1x.png b/src/images/tray@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..eb2a31671922bad898223f0c96dc884b112b022c GIT binary patch literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Cp=voLoEE)PFCbQA7vUCz&ts|E)b6)OJKtMH~zD7r;AKe^DS4azxVIvIk6Nw*ECzUHH}C0 z4VcXi>|uQ%VWOPPdxL2+#|EB_`?=x|aIRo1J7B`(vF1^z>U@?rjh;*i(>JZZD=jP2 zP{_1k%N!ni#&ZW0IAR}&MKS6*$WQQnt8zP@ah-!cdjaz<%LeNUoD5&r{C^W1zGhp= zgn6B}WLDfa+S7k3YNtinyOokZZ>MGz^3GDtUmEEs_^JK52hdLpp00i_>zopr0LkuO ARsaA1 literal 0 HcmV?d00001 diff --git a/src/images/tray@2x.png b/src/images/tray@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..af553c1ae9fade3f0174f97146e1f2a7b0be8250 GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJHJ&bxArbCxryt~PHsEoU|6IZu zu_(EO^#)Jcid*ZLjhIeyEo*A-y>cr^@7%%r`kh~c3kyTUudB0WF!?`VPi~O`iTHk})+rDB=CN9h@)vOW2k){8vgSmG)9#-61ex;bpP>xT0$^ z1;PuuPhRn1^i<$%5x&5-BzoS$bDfeCRjadWPUrqv_q1b?&&M}Qwls(raIgBu_U?ds dy_;tOlT_e5#g*OP?SSrP@O1TaS?83{1OTYLS;PPU literal 0 HcmV?d00001 diff --git a/src/index.html b/src/index.html new file mode 100644 index 0000000..1dbfe59 --- /dev/null +++ b/src/index.html @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/js/app.js b/src/js/app.js new file mode 100644 index 0000000..3f62761 --- /dev/null +++ b/src/js/app.js @@ -0,0 +1,64 @@ +/** + * {sonist app} + * + * @format + * @author yutent + * @date 2018/12/16 17:15:57 + */ + +import '/lib/anot.js' +// import '/lib/request/index.js' + +import layer from '/lib/layer/index.js' +import Utils from '/lib/utils.js' + +const log = console.log + +const { remote, ipcRenderer } = require('electron') + +const WIN = remote.getCurrentWindow() + +const $doc = Anot(document) + +Anot({ + $id: 'app', + state: { + list: [] + }, + + watch: { + 'chapter.content'() { + this.calcuteWords = this.chapter.content.length + }, + currCate() { + this.renderChapterList() + } + }, + mounted() { + WIN.on('blur', _ => { + // this.focus = false + // this.btns.min = this.btns.close = BTNS_DICT.grey + }) + + // WIN.on('focus', _ => { + // this.focus = true + // this.btns.min = BTNS_DICT.min + // this.btns.close = BTNS_DICT.close + // }) + + this.getTodayStat('006736') + }, + methods: { + getTodayStat(id) { + var res = ipcRenderer.sendSync( + 'net', + `https://fundgz.1234567.com.cn/js/${id}.js` + ) + // `http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=006736` + log(res) + // fetch(`https://fundgz.1234567.com.cn/js/${id}.js`).then(res => { + // log(res) + // }) + } + } +}) diff --git a/src/lib/anot.js b/src/lib/anot.js new file mode 100644 index 0000000..2f010fd --- /dev/null +++ b/src/lib/anot.js @@ -0,0 +1,8 @@ +/*================================================== + * Anot normal version for future browsers + * @authors yutent (yutent@doui.cc) + * @date 2017-03-21 21:05:57 + * V2.0.0 + * + ==================================================*/ + const _Anot=function(){var e=1024,t=A(),n=window.document,r=n.head;r.insertAdjacentHTML("afterbegin",'');var i=r.firstChild;function a(){console.log.apply(console,arguments)}function o(){return Object.create(null)}var s=encodeURIComponent,c=decodeURIComponent,l="$"+t,u={},f=/[^, ]+/g,p=/\w+/g,d=/^\[object SVG\w*Element\]$/,h=Object.prototype,v=h.hasOwnProperty,m=h.toString,y=Array.prototype,g=y.slice,b=n.documentElement,$=n.createDocumentFragment(),x=(n.createElement("div"),{"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object Error]":"error","[object AsyncFunction]":"asyncfunction","[object Promise]":"promise","[object Generator]":"generator","[object GeneratorFunction]":"generatorfunction"});function w(){}function k(e){return Function.apply(w,e)}function C(e,t){"string"==typeof e&&(e=e.match(f)||[]);for(var n={},r=void 0!==t?t:1,i=0,a=e.length;i{e.resolve=t,e.reject=n}),e}),String.prototype.splice||Object.defineProperty(String.prototype,"splice",{value:function(e,t,n){let r=this.length,i=arguments.length;if(n=void 0===n?"":n,i<1)return this;if(e<0&&(e=Math.abs(e)>=r?0:r+e),1===i)return this.slice(0,e);return t-=0,this.slice(0,e)+n+this.slice(e+t)},enumerable:!1}),Date.prototype.getFullWeek||(Object.defineProperty(Date.prototype,"getFullWeek",{value:function(){let e=this.getFullYear(),t=new Date(e,0,1),n=t.getDay()||1,r=(this-t)/864e5;return Math.ceil((r+n)/7)},enumerable:!1}),Object.defineProperty(Date.prototype,"getWeek",{value:function(){let e=this.getDate(),t=this.getMonth(),n=this.getFullYear(),r=new Date(n,t,1).getDay();return Math.ceil((e+r)/7)},enumerable:!1})),Date.isDate||Object.defineProperty(Date,"isDate",{value:function(e){return!("object"!=typeof e||!e.getTime)},enumerable:!1}),Date.prototype.format||Object.defineProperty(Date.prototype,"format",{value:function(e){e=e||"Y-m-d H:i:s";let t,n={fullyear:this.getFullYear(),year:this.getYear(),fullweek:this.getFullWeek(),week:this.getWeek(),month:this.getMonth()+1,date:this.getDate(),day:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"][this.getDay()],hours:this.getHours(),minutes:this.getMinutes(),seconds:this.getSeconds()};n.g=n.hours>12?n.hours-12:n.hours,t={Y:n.fullyear,y:n.year,m:n.month<10?"0"+n.month:n.month,n:n.month,d:n.date<10?"0"+n.date:n.date,j:n.date,H:n.hours<10?"0"+n.hours:n.hours,h:n.g<10?"0"+n.g:n.g,G:n.hours,g:n.g,i:n.minutes<10?"0"+n.minutes:n.minutes,s:n.seconds<10?"0"+n.seconds:n.seconds,W:n.fullweek,w:n.week,D:n.day};for(let n in t)e=e.replace(new RegExp(n,"g"),t[n]);return e},enumerable:!1});let N=function(e){return new N.init(e)};N.nextTick=new function(){let e=window.setImmediate,t=window.MutationObserver;if(e)return e.bind(window);let n=[];if(t){let e=document.createTextNode("anot");new t(function(){let e=n.length;for(let t=0;t>>0)return!0}return!1}(e))for(let n=0,r=e.length;n1){if(!e)return;if(n=n||{},n=Object.assign({expires:"",path:"/",domain:document.domain,secure:""},n),"string"==this.type(t)&&""===t.trim()||null===t)return document.cookie=s(e)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; domain="+n.domain+"; path="+n.path,!0;if(n.expires)switch(n.expires.constructor){case Number:n.expires=n.expires===1/0?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+n.expires;break;case String:n.expires="; expires="+n.expires;break;case Date:n.expires="; expires="+n.expires.toUTCString()}return document.cookie=s(e)+"="+s(t)+n.expires+"; domain="+n.domain+"; path="+n.path+"; "+n.secure,!0}return e?c(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+s(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null:document.cookie},search:function(e){e+="";let t=location.search;if(!e||!t)return null;t=(t=(t=c(t)).slice(1)).split("&");let n={};for(let e,r=0;e=t[r++];){let t=e.split("=");t[1]=t.length<2?null:t[1],t[1]=t[1],n.hasOwnProperty(t[0])?"object"==typeof n[t[0]]?n[t[0]].push(t[1]):(n[t[0]]=[n[t[0]]],n[t[0]].push(t[1])):n[t[0]]=t[1]}return n.hasOwnProperty(e)?n[e]:null},copy:function(e){try{navigator.clipboard.writeText(e)}catch(e){a("复制到粘贴板失败",e)}}});let O=N.bindingHandlers={},E=N.bindingExecutors={},S=N.directives={};N.directive=function(e,t){return O[e]=t.init=t.init||w,E[e]=t.update=t.update||w,S[e]=t};let D=new function(){function e(e){this.size=0,this.limit=e,this.head=this.tail=void 0,this._keymap={}}let t=e.prototype;return t.put=function(e,t){let n={key:e,value:t};return this._keymap[e]=n,this.tail?(this.tail.newer=n,n.older=this.tail):this.head=n,this.tail=n,this.size===this.limit?this.shift():this.size++,t},t.shift=function(){let e=this.head;e&&(this.head=this.head.newer,this.head.older=e.newer=e.older=this._keymap[e.key]=void 0,delete this._keymap[e.key])},t.get=function(e){let t=this._keymap[e];if(void 0!==t)return t===this.tail?t.value:(t.newer&&(t===this.head&&(this.head=t.newer),t.newer.older=t.older),t.older&&(t.older.newer=t.newer),t.newer=void 0,t.older=this.tail,this.tail&&(this.tail.newer=t),this.tail=t,t.value)},e};n.contains||(Node.prototype.contains=function(e){return!!(16&this.compareDocumentPosition(e))}),N.contains=function(e,t){try{for(;t=t.parentNode;)if(t===e)return!0;return!1}catch(e){return!1}};let _=N.eventHooks;function P(e){for(var t in e)if(v.call(e,t)){var n=e[t];"function"==typeof P.plugins[t]?P.plugins[t](n):"object"==typeof P[t]?N.mix(P[t],n):P[t]=n}return this}void 0===n.onmousewheel&&(_.mousewheel={type:"wheel",fix:function(e,t){return function(n){n.wheelDeltaY=n.wheelDelta=n.deltaY>0?-120:120,n.wheelDeltaX=0,Object.defineProperty(n,"type",{value:"mousewheel"}),t.call(e,n)}}}),N.config=P;var L,M,H,F,B=/[-.*+?^${}()|[\]\/\\]/g;function I(e){return(e+"").replace(B,"\\$&")}var R={interpolate:function(e){if(L=e[0],M=e[1],L===M)throw new SyntaxError("openTag!==closeTag");P.openTag=L,P.closeTag=M;var t=I(L),n=I(M);H=new RegExp(t+"([\\s\\S]*)"+n),F=new RegExp(t+"([\\s\\S]*)"+n,"g"),new RegExp(t+"[\\s\\S]*"+n+"|\\s:")}};function q(t,r){var i=this.$events||(this.$events={}),a=i[t]||(i[t]=[]);if("function"==typeof r){var o=r;o.uuid="_"+ ++e,(r={element:b,type:"user-watcher",handler:w,vmodels:[this],expr:t,uuid:o.uuid}).wildcard=/\*/.test(t)}if(r.update)r.oneTime||N.Array.ensure(a,r);else{if(/\w\.*\B/.test(t)||"*"===t){r.getter=w;var s=this;r.update=function(){var e=this.fireArgs||[];e[2]&&r.handler.apply(s,e),delete this.fireArgs},a.sync=!0,N.Array.ensure(a,r)}else N.injectBinding(r);o&&(r.handler=o)}return function(){r.update=r.getter=r.handler=w,r.element=n.createElement("a")}}function V(t,n){var r=this.$events,i=null;if(r&&r[t]){n&&(n[2]=t);var a=r[t];if(function(t,n){if(!t)return;new Date-se>444&&"object"==typeof t[0]&&le();for(var r,i=[],a=[],o=0;r=t[o++];)"user-watcher"===r.type?i.push(r):a.push(r);if(P.async){for(dt.render(),o=0;r=a[o++];)if(r.update){r.uuid=r.uuid||"_"+ ++e;var s=r.uuid;dt.queue[s]||(dt.queue[s]="__",dt.queue.push(r))}}else for(o=0;r=a[o++];)r.update&&r.update();for(o=0;r=i[o++];)(n&&n[2]===r.expr||r.wildcard)&&(r.fireArgs=n),r.update()}(a,n),n&&r["*"]&&!/\./.test(t))for(var o,s=0;o=r["*"][s++];)try{o.handler.apply(this,n)}catch(e){}(i=this.$up)&&(this.$pathname&&V.call(i,this.$pathname+"."+t,n),V.call(i,"*."+t,n))}else{if(i=this.$up,this.$ups){for(var c in this.$ups)V.call(this.$ups[c],c+"."+t,n);return}if(i){var l=this.$pathname;""===l&&(l="*");var u=l+"."+t;a=u.split("."),n=n&&n.concat([u,t])||[u,t],-1===a.indexOf("*")?(V.call(i,u,n),a[1]="*",V.call(i,a.join("."),n)):V.call(i,u,n)}}}P.plugins=R,P.plugins.interpolate(["{{","}}"]),P.async=!0,P.paths={},P.shim={},P.maxRepeatSize=100;var W=C("$id,$watch,$fire,$events,$model,$active,$pathname,$up,$ups,$track,$accessors");function z(e,t){return(t=t||{}).watch=!0,U(e,t)}function U(e,t){if(!e||e.$id&&e.$accessors||e.nodeName&&e.nodeType>0)return e;var n,r=(t=t||u).force||u,i=t.old,o=i&&i.$accessors||u,s=new function(){},c={},l={},f=[],p=[],d={},h=e.state,v=e.computed,m=e.methods,y=e.props,g=e.watch,b=e.mounted;if(delete e.state,delete e.computed,delete e.methods,delete e.props,delete e.watch,e.skip&&(d=C(e.skip),delete e.skip),h)for(x in e.$id&&delete h.props,h){var $=h[x];W[x]||(l[x]=!0),"function"==typeof $||$&&$.nodeName&&$.nodeType>0||!r[x]&&("$"===(n=x).charAt(0)||"__"===n.slice(0,2)||W[n]||d[x])?f.push(x):Y($)?(a("warning:计算属性建议放在[computed]对象中统一定义"),v[x]=$):(p.push(x),o[x]?c[x]=o[x]:c[x]=G(x,$))}if(v)for(var x in delete v.props,v)l[x]=!0,function(e,t){var n;"function"==typeof t&&(t={get:t,set:w}),"function"!=typeof t.set&&(t.set=w),c[e]={get:function(){return n=t.get.call(this)},set:function(r){var i,a=n;t.set.call(this,r),i=this[e],this.$fire&&i!==a&&this.$fire(e,i,a)},enumerable:!0,configurable:!0}}(x,v[x]);if(m)for(var x in delete m.props,m)l[x]=!0,f.push(x);if(y)for(var x in X(s,"props",{}),l.props=!!e.$id,y)s.props[x]=y[x];if(Object.assign(e,h,m),c.$model=Z,s=Object.defineProperties(s,c,e),f.forEach(function(t){s[t]=e[t]}),X(s,"$id","anonymous"),X(s,"$up",i?i.$up:null),X(s,"$track",Object.keys(l)),X(s,"$active",!1),X(s,"$pathname",i?i.$pathname:""),X(s,"$accessors",c),X(s,"$events",{}),X(s,"$refs",{}),X(s,"$children",[]),X(s,"hasOwnProperty",function(e){return!0===l[e]}),X(s,"$mounted",b),t.watch&&(X(s,"$watch",function(){return q.apply(s,arguments)}),X(s,"$fire",function(e,t){if(0===e.indexOf("all!")){var n=e.slice(4);for(var r in N.vmodels){(i=N.vmodels[r]).$fire&&i.$fire.apply(i,[n,t])}}else if(0===e.indexOf("child!")){n="props."+e.slice(6);for(var r in s.$children){var i;(i=s.$children[r]).$fire&&i.$fire.apply(i,[n,t])}}else V.call(s,e,[t])})),p.forEach(function(e){var t=i&&i[e],n=s[e]=h[e];n&&"object"==typeof n&&!Date.isDate(n)&&(n.$up=s,n.$pathname=e),V.call(s,e,[n,t])}),g)for(var k in delete g.props,g)if(Array.isArray(g[k]))for(var A;A=g[k].pop();)q.call(s,k,A);else q.call(s,k,g[k]);return s.$active=!0,"anonymous"!==s.$id&&i&&i.$up&&i.$up.$children&&i.$up.$children.push(s),s}function Y(e){if(e&&"object"==typeof e){for(var t in e)if("get"!==t&&"set"!==t)return!1;return"function"==typeof e.get}}function G(e,t){var n;t=NaN;return{get:function(){return this.$active&&function(e,t){for(;;){if(e.$watch){var n=e.$events||(e.$events={}),r=n[t]||(n[t]=[]);return void ae.collectDependency(r)}if(!(e=e.$up))break;t=e.$pathname+"."+t}}(this,e),t},set:function(r){if(t!==r){var i=t;(n=J(r,t))?t=n:(n=void 0,t=r),Object(n)===n&&(n.$pathname=e,n.$up=this),this.$active&&V.call(this,e,[t,i])}},enumerable:!0,configurable:!0}}function J(e,t,n,r){if(Array.isArray(e))return function(e,t,n){if(t&&t.splice){var r=[0,t.length].concat(e);return t.splice.apply(t,r),t}for(var i in ee)e[i]=ee[i];X(e,"$up",null),X(e,"$pathname",""),X(e,"$track",ne(e.length)),e._=U({state:{length:NaN}},{watch:!0}),e._.length=e.length,e._.$watch("length",function(t,n){V.call(e.$up,e.$pathname+".length",[t,n])}),n&&X(e,"$watch",function(){return q.apply(e,arguments)}),Object.defineProperty(e,"$model",Z);for(var a=0,o=e.length;a>>=0)>this.length)throw Error(e+"set方法的第一个参数不能大于原数组长度");if(this[e]!==t){var n=this[e];this.splice(e,1,t),V.call(this.$up,this.$pathname+".*",[t,n,null,e])}},contains:function(e){return this.indexOf(e)>-1},ensure:function(e){return this.contains(e)||this.push(e),this},pushArray:function(e){return this.push.apply(this,K(e))},remove:function(e){return this.removeAt(this.indexOf(e))},removeAt:function(e){return e>>>=0,this.splice(e,1)},size:function(){return this._.length},removeAll:function(e){if(Array.isArray(e))for(var t=this.length-1;t>=0;t--)-1!==e.indexOf(this[t])&&(te.call(this.$track,t,1),te.call(this,t,1));else if("function"==typeof e)for(t=this.length-1;t>=0;t--){e(this[t],t)&&(te.call(this.$track,t,1),te.call(this,t,1))}else te.call(this.$track,0,this.length),te.call(this,0,this.length);this.notify(),this._.length=this.length},clear:function(){this.removeAll()}},te=Q.splice;function ne(e){for(var t=[],n=0;n2){n[1],n.length;n=[n[0],n[1]].concat(ne(n.length-2))}}Array.prototype[t].apply(e,n)}(this.$track,e,n),this.notify(),this._.length=this.length,a}}),"sort,reverse".replace(f,function(e){ee[e]=function(){var t=this.concat(),n=Math.random(),r=[],i=!1;Q[e].apply(this,arguments);for(var a=0,o=t.length;a444&&le())}(n,t)}}),t.getter=He(t.expr,t.vmodels,t),t.observers.forEach(function(e){e.v.$watch(e.p,t)}),delete t.observers);try{var r,i,o=t.fireArgs;if(delete t.fireArgs,o)r=o[0],i=o[1];else if("on"===t.type)r=t.getter+"";else try{r=t.getter.apply(0,t.args)}catch(e){r=null}if(i=void 0===i?t.oldValue:i,t._filters&&(r=cn.$filter.apply(0,[r].concat(t._filters))),t.signature){var s=N.type(r);if("array"!==s&&"object"!==s)throw Error("warning:"+t.expr+"只能是对象或数组");t.xtype=s;var c=function(e,t){for(var n,r=[],i=0;n=e[i++];)r.push(t?n.$id:n.$key);return r.join(";")}(t.proxies||[],s),l=r.$track||("array"===s?ne(r.length):Object.keys(r));t.track=l,c!==l.join(";")&&(t.handler(r,i),t.oldValue=1)}else Array.isArray(r)&&r.length!==(i&&i.length)?(t.handler(r,i),t.oldValue=r.concat()):"oldValue"in t&&r===i||(t.handler(r,i),t.oldValue=Array.isArray(r)?r.concat():r)}catch(e){delete t.getter,a("warning:exception throwed in [Anot.injectBinding] ",e);var u=t.element;u&&3===u.nodeType&&(u.nodeValue=L+(t.oneTime?"::":"")+t.expr+M)}finally{n&&ae.end()}},t.update()};var oe=N.$$subscribers=[],se=new Date;var ce=0;function le(e){for(var t=ce||oe.length,n=0;e=oe[--t];)if(e.i<7){if(null===e.element){oe.splice(t,1),e.list&&(N.Array.remove(e.list,e),delete oe[e.uuid]);continue}if(fe(e.element)){if(oe.splice(t,1),N.Array.remove(e.list,e),ue(e),n++>500){ce=t;break}continue}e.i++,7===e.i&&(e.i=14)}else e.i--;se=new Date}function ue(e){for(var t in delete oe[e.uuid],e.element=null,e.rollback&&e.rollback(),e)e[t]=null}function fe(e){try{e.parentNode.nodeType}catch(e){return!0}return e.ifRemove&&!b.contains(e.ifRemove)&&i===e.parentNode?(e.parentNode&&e.parentNode.removeChild(e),!0):e.msRetain?0:1===e.nodeType?!b.contains(e):!N.contains(b,e)}var pe=new function(){N.mix(this,{option:n.createElement("select"),thead:n.createElement("table"),td:n.createElement("tr"),area:n.createElement("map"),tr:n.createElement("tbody"),col:n.createElement("colgroup"),legend:n.createElement("fieldset"),_default:n.createElement("div"),g:n.createElementNS("http://www.w3.org/2000/svg","svg")}),this.optgroup=this.option,this.tbody=this.tfoot=this.colgroup=this.caption=this.thead,this.th=this.td};String("circle,defs,ellipse,image,line,path,polygon,polyline,rect,symbol,text,use").replace(f,function(e){pe[e]=pe.g});var de=/<([\w:]+)/,he=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,ve=C(["","text/javascript","text/ecmascript","application/ecmascript","application/javascript"]),me=n.createElement("script"),ye=/<|&#?\w+;/;function ge(e){return e.replace(/([a-z\d])([A-Z]+)/g,"$1-$2").toLowerCase()}function be(e){return e.indexOf("-")<0&&e.indexOf("_")<0?e:e.replace(/[-_][^-_]/g,function(e){return e.charAt(1).toUpperCase()})}N.parseHTML=function(e){var t=$.cloneNode(!1);if("string"!=typeof e)return t;if(!ye.test(e))return t.appendChild(n.createTextNode(e)),t;e=e.replace(he,"<$1>").trim();var r,i=(de.exec(e)||["",""])[1].toLowerCase(),a=pe[i]||pe._default;a.innerHTML=e;var o=a.getElementsByTagName("script");if(o.length)for(var s,c=0;s=o[c++];)if(ve[s.type]){var l=me.cloneNode(!1);y.forEach.call(s.attributes,function(e){l.setAttribute(e.name,e.value)}),l.text=s.text,s.parentNode.replaceChild(l,s)}for(;r=a.firstChild;)t.appendChild(r);return t},N.innerHTML=function(e,t){var n=this.parseHTML(t);this.clearHTML(e).appendChild(n)},N.clearHTML=function(e){for(e.textContent="";e.firstChild;)e.removeChild(e.firstChild);return e},"add,remove".replace(f,function(e){N.fn[e+"Class"]=function(t){var n=this[0];return t&&"string"==typeof t&&n&&1===n.nodeType&&t.replace(/\S+/g,function(t){n.classList[e](t)}),this}}),N.fn.mix({attr:function(e,t){return 2===arguments.length?(this[0].setAttribute(e,t),this):this[0].getAttribute(e)},data:function(e,t){var n=arguments.length,r=this[0].dataset;switch((e=ge(e||""))||(n=0),n){case 2:return r[e]=t,this;case 1:return xe(r[e]);case 0:var i=o();for(var a in r)i[a]=xe(r[a]);return i}},removeData:function(e){return e="data-"+ge(e),this[0].removeAttribute(e),this},css:function(e,t){if(N.isPlainObject(e))for(var n in e)N.css(this,n,e[n]);else var r=N.css(this,e,t);return void 0!==r?r:this},position:function(){var e,t,n=this[0],r={top:0,left:0};if(n)return"fixed"===this.css("position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),"HTML"!==e[0].tagName&&(r=e.offset()),r.top+=N.css(e[0],"borderTopWidth",!0),r.left+=N.css(e[0],"borderLeftWidth",!0),r.top-=e.scrollTop(),r.left-=e.scrollLeft()),{top:t.top-r.top-N.css(n,"marginTop",!0),left:t.left-r.left-N.css(n,"marginLeft",!0)}},offsetParent:function(){for(var e=this[0].offsetParent;e&&"static"===N.css(e,"position");)e=e.offsetParent;return N(e||b)},bind:function(e,t,n){if(this[0])return N.bind(this[0],e,t,n)},unbind:function(e,t,n){return this[0]&&N.unbind(this[0],e,t,n),this},val:function(e){var t,n,r=this[0];if(r&&1===r.nodeType){var i=0===arguments.length,a=i?":get":":set",o=je[(t=r,n=t.tagName.toLowerCase(),("input"===n&&/checkbox|radio/.test(t.type)?"checked":n)+a)];if(o)var s=o(r,e);else{if(i)return(r.value||"").replace(/\r/g,"");r.value=e}}return i?s:this}}),N.parseJSON=JSON.parse;var $e=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/;function xe(e){try{if("object"==typeof e)return e;e="true"===e||"false"!==e&&("null"===e?null:+e+""===e?+e:$e.test(e)?JSON.parse(e):e)}catch(e){}return e}N.fireDom=function(e,t,r){var i=n.createEvent("Events");i.initEvent(t,!0,!0),N.mix(i,r),e.dispatchEvent(i)},N.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){N.fn[e]=function(n){var r=this[0]||{},i=function(e){return e.window&&e.document?e:9===e.nodeType&&e.defaultView}(r),a="scrollTop"===e;if(!arguments.length)return i?i[t]:r[e];i?i.scrollTo(a?i[t]:n,a?n:i[t]):r[e]=n}});var we=N.cssHooks=o(),ke=["","-webkit-","-moz-","-ms-"],Ce={float:"cssFloat"};N.cssNumber=C("animationIterationCount,animationIterationCount,columnCount,order,flex,flexGrow,flexShrink,fillOpacity,fontWeight,lineHeight,opacity,orphans,widows,zIndex,zoom"),N.cssName=function(e,t,n){if(Ce[e])return Ce[e];t=t||b.style;for(var r=0,i=ke.length;r-1)&&(n=!0);n||(e.selectedIndex=-1)}},Te={};["break,case,catch,continue,debugger,default,delete,do,else,false","finally,for,function,if,in,instanceof,new,null,return,switch,this","throw,true,try,typeof,var,void,while,with","abstract,boolean,byte,char,class,const,double,enum,export,extends","final,float,goto,implements,import,int,interface,long,native","package,private,protected,public,short,static,super,synchronized","throws,transient,volatile","arguments,let,yield,async,await,undefined"].join(",").replace(/\w+/g,function(e){Te[e]=!0});var Oe=/[a-z_$]/i,Ee=/[\s\uFEFF\xA0]/;function Se(e,t){if(t&&!Te[t])return e.push(t),!0}function De(e,t,n,r){for(var i,a=[],o=" = "+n+".",s=e.length;i=e[--s];){var c=i.split(".")[0];t.hasOwnProperty(c)&&(a.push(c+o+c),r.observers.push({v:t,p:i,type:N.type(t[c])}),e.splice(s,1))}return a}var _e=/(proxy\-[a-z]+)\-[\-0-9a-f]+$/,Pe=new D(218),Le=new D(128);function Me(e){e=e.trim();var t=Pe.get(e);if(t)return t.concat();for(var n,r=function e(t,n){var r=[],i=!!n;n=n||0;for(var a="unknown",o="",s=0;s0){var t=e.replace(st,function(e){return Array(e.length+1).join("1")}).replace(ot,"ᄢ㍄").indexOf("|");if(t>-1)return{type:"text",filters:e.slice(t).trim(),expr:e.slice(0,t)}}return{type:"text",expr:e,filters:""}}function ut(e){for(var t,n,r=[],i=0;;){if(-1===(n=e.indexOf(L,i)))break;if((t=e.slice(i,n))&&r.push({expr:t}),i=n+L.length,-1===(n=e.indexOf(M,i)))break;(t=e.slice(i,n))&&r.push(lt(t.replace(ct,""))),i=n+M.length}return(t=e.slice(i))&&r.push({expr:t}),r}function ft(e,t,r){var i=[],a=ut(e.data);if(a.length){for(var o,s=0;o=a[s++];){var c=n.createTextNode(o.expr);o.type&&(o.expr=o.expr.replace(Ge,function(){return o.oneTime=!0,""}),o.element=c,o.filters=o.filters.replace(at,function(){return o.type="html",""}),o.pos=1e3*r+s,i.push(o)),$.appendChild(c)}e.parentNode.replaceChild($,e),i.length&&Ye(i,t)}}var pt=function(){this.queue=[]};pt.prototype={render:function(e){if(!this.locked){this.locked=e?b.offsetHeight+10:1;var t=this;N.nextTick(function(){t.flush()})}},flush:function(){for(var e,t=0;e=this.queue[t++];)e.update&&e.update();this.locked=0,this.queue=[]}};var dt=new pt,ht={};["autofocus,autoplay,async,allowTransparency,checked,controls","declare,disabled,defer,defaultChecked,defaultSelected","contentEditable,isMap,loop,multiple,noHref,noResize,noShade","open,readOnly,selected"].join(",").replace(f,function(e){ht[e.toLowerCase()]=e});N.directive("attr",{init:function(e){if(e.expr=Fe(e.expr.trim()),"include"===e.type){var t=e.element;St(t,e),e.includeRendered=Ue(t,"data-rendered",e.vmodels),e.includeLoaded=Ue(t,"data-loaded",e.vmodels);var r=e.includeReplace=t.hasAttribute("replace");t.hasAttribute("cache")&&(e.templateCache={}),e.start=n.createComment(":include"),e.end=n.createComment(":include-end"),r?(e.element=e.end,e._element=t,t.parentNode.insertBefore(e.start,t),t.parentNode.insertBefore(e.end,t.nextSibling)):(t.insertBefore(e.start,t.firstChild),t.appendChild(e.end))}},update:function(e){var t=this.element,n=Object.create(null),r=d.test(t);if(e=K(e),this.param)e&&"object"==typeof e?Array.isArray(e)?n[this.param]=e:Date.isDate(e)?n[this.param]=e.toISOString():n[this.param]=e:n[this.param]=e;else{if(!e||"object"!=typeof e||Array.isArray(e)||Date.isDate(e))return;n=e}for(var i in n)if("style"!==i){if("xlink:"===i.slice(0,6)){var a=i;n[i=i.slice(6)]=n[a],delete n[a]}if(!1!==n[i]&&null!==n[i]&&void 0!==n[i]||(n[i]=""),"boolean"==typeof t[i]||"boolean"==typeof t[ht[i]]){a=i;if(ht[i]&&a!==ht[i]&&(a=ht[i]),n[i]=!!n[i],t[a]=n[i],!n[i]){t.removeAttribute(a);continue}}!r&&i in t.cloneNode(!1)?t[i]=n[i]:("object"==typeof n[i]&&(n[i]=Date.isDate(n[i])?n[i].toISOString():JSON.stringify(n[i])),t.setAttribute(i,n[i]))}else t.style.cssText=n[i]}});N.directive("class",{init:function(e){if(e.expr=e.expr.replace(/\n/g," ").replace(/\s+/g," "),"hover"===e.type||"active"===e.type){var t=new Function("return "+e.expr)();if(!e.hasBindEvent){var n=e.element,r=N(n),i="mouseenter",a="mouseleave";if("active"===e.type){n.tabIndex=n.tabIndex||-1,i="mousedown",a="mouseup";var o=r.bind("mouseleave",function(){r.removeClass(t)})}}var s=r.bind(i,function(){r.addClass(t)}),c=r.bind(a,function(){r.removeClass(t)});e.rollback=function(){r.unbind("mouseleave",o),r.unbind(i,s),r.unbind(a,c)},e.hasBindEvent=!0}},update:function(e){if("class"===this.type){var t=e;if(!t||this.param)return a('class指令语法错误 %c %s="%s"',"color:#f00",this.name,this.expr);for(var n in"string"==typeof t&&((t={})[e]=!0),N.isPlainObject(t)||(t=t.$model),t)this.element.classList.toggle(n,!!t[n])}}}),"hover,active".replace(f,function(e){S[e]=S.class}),N.directive("css",{init:S.attr.init,update:function(e){var t=N(this.element);if(this.param)t.css(this.param,e);else{if("object"!=typeof e)return a(':css指令格式错误 %c %s="%s"',"color:#f00",this.name,this.expr);var n=e;N.isPlainObject(n)||(n=e.$model),t.css(n)}}}),N.directive("data",{priority:100,init:S.attr.init,update:function(e){var t=N(this.element);if(this.param)t.data(this.param,e);else{if("object"!=typeof e)return a(':data指令格式错误 %c %s="%s"',"color:#f00",this.name,this.expr);var n=e;for(var r in N.isPlainObject(n)||(n=e.$model),n)t.data(r,n[r])}}});var vt=/^(?:checkbox|radio)$/,mt=/^(?:radio|checked)$/,yt=/^(file|button|reset|submit|checkbox|radio|range)$/;N.directive("duplex",{priority:2e3,init:function(e,t){var n=e.element,r=e.vmodels;e.changed=Ue(n,"data-changed",r)||w;var i=[],o=C("string,number,boolean,checked");"radio"===n.type&&""===e.param&&(e.param="checked"),e.param.replace(p,function(r){vt.test(n.type)&&mt.test(r)&&(r="checked",e.isChecked=!0,e.xtype="radio"),o[r]&&(t=!0),N.Array.ensure(i,r)}),t||i.push("string"),e.param=i.join("-"),e.xtype||(e.xtype="SELECT"===n.tagName?"select":"checkbox"===n.type?"checkbox":"radio"===n.type?"radio":/^change/.test(n.getAttribute("data-event"))?"change":"input"),n.expr=e.expr;var s=e.bound=function(t,r){n.addEventListener(t,r,!1);var i=e.rollback;e.rollback=function(){n.anotSetter=null,N.unbind(n,t,r),i&&i()}};function c(t){e.changed.call(this,t)}var l=!1;var u=function(t){var r=n.value;if(!l&&r!==e.oldValue&&null!==e.pipe){var i=e.pipe(r,e,"get");e.oldValue=r,e.setter(i),c.call(n,i),N.fireDom(n,"change")}};switch(e.xtype){case"radio":s("click",function(){var t=e.pipe(n.value,e,"get");e.setter(t),c.call(n,t)});break;case"checkbox":s("change",function(){var t=n.checked?"ensure":"remove",r=e.getter.apply(0,e.vmodels);Array.isArray(r)||(a(":duplex应用于checkbox上要对应一个数组"),r=[r]);var i=e.pipe(n.value,e,"get");N.Array[t](r,i),c.call(n,r)});break;case"change":s("change",u);break;case"input":s("input",u),s("keyup",u),s("compositionstart",function(){l=!0}),s("compositionend",function(){l=!1,setTimeout(u)}),s("DOMAutoComplete",u);break;case"select":s("change",function(){var t=N(n).val();if((t=Array.isArray(t)?t.map(function(t){return e.pipe(t,e,"get")}):e.pipe(t,e,"get"))+""!==e.oldValue)try{e.setter(t)}catch(e){a(e)}}),s("datasetchanged",function(t){if("selectDuplex"===t.bubble){var r=e._value,i=Array.isArray(r)?r.map(String):r+"";N(n).val(i),n.oldValue=i+"",c.call(n,i)}})}"input"!==e.xtype||yt.test(n.type)||("hidden"!==n.type&&(s("focus",function(){n.msFocus=!0}),s("blur",function(){n.msFocus=!1})),n.anotSetter=u,kt(function(){if(b.contains(n))n.msFocus||u();else if(!n.msRetain)return!1}))},update:function(e){var t,n=this.element;this.init||((this.pipe||(this.pipe=bt))(null,this,"init"),this.init=1);switch(this.xtype){case"input":n.value=e;break;case"change":if((t=this.pipe(e,this,"set"))!==this.oldValue){var r=!1;if(n.msFocus)try{var i=n.selectionStart;if(i===n.selectionEnd){var a=i;r=!0}}catch(e){}n.value=this.oldValue=t,r&&!n.readOnly&&(n.selectionStart=n.selectionEnd=a)}break;case"radio":t=this.isChecked?!!e:e+""===n.value,n.checked=t;break;case"checkbox":var o=[].concat(e);t=this.pipe(n.value,this,"get"),n.checked=o.indexOf(t)>-1;break;case"select":this._value=e,n.msHasEvent?N.fireDom(n,"datasetchanged",{bubble:n.msHasEvent}):n.msHasEvent="selectDuplex"}}});function gt(e){return null==e?"":e}function bt(e,t,n,r){return t.param.replace(p,function(r){var i=N.duplexHooks[r];i&&"function"==typeof i[n]&&(e=i[n](e,t))}),e}N.duplexHooks={checked:{get:function(e,t){return!t.oldValue}},string:{get:function(e){return e},set:gt},boolean:{get:function(e){return"true"===e},set:gt},number:{get:function(e,t){var n=+e;return+e===n?n:0},set:gt}};var $t,xt=[];function wt(){for(var e=xt.length-1;e>=0;e--){!1===(0,xt[e])()&&xt.splice(e,1)}xt.length||clearInterval($t)}N.tick=function(e){1===xt.push(e)&&($t=setInterval(wt,60))};var kt=w;new function(){try{var e={},t=HTMLInputElement.prototype,n=HTMLTextAreaElement.prototype;function r(t){e[this.tagName].call(this,t),!this.msFocus&&this.anotSetter&&this.anotSetter()}var i=HTMLInputElement.prototype;Object.getOwnPropertyNames(i),e.INPUT=Object.getOwnPropertyDescriptor(t,"value").set,Object.defineProperty(t,"value",{set:r}),e.TEXTAREA=Object.getOwnPropertyDescriptor(n,"value").set,Object.defineProperty(n,"value",{set:r})}catch(e){kt=N.tick}},N.directive("effect",{priority:5,init:function(e){var t,n,r=e.expr,i=r.replace(F,function(e){return e.replace(/./g,"0")}).indexOf(":");-1===i?(t=r,n=!0):(t=r.slice(0,i),n=r.slice(i+1)),t=H.test(r)?Fe(t):We(t),e.expr="["+t+","+n+"]"},update:function(e){var t=e[0],n=this.element;if(n.getAttribute("data-effect-name")!==t){n.removeAttribute("data-effect-driver");var r=n.style,i=window.getComputedStyle?window.getComputedStyle(n):null,a=!1;if(i&&(Nt||jt)){var o=r[Tt]||i[Tt];o&&"0s"!==o&&(n.setAttribute("data-effect-driver","t"),a=!0),a||(o=r[Ot]||i[Ot])&&"0s"!==o&&(n.setAttribute("data-effect-driver","a"),a=!0)}a||N.effects[t]&&(n.setAttribute("data-effect-driver","j"),a=!0),a&&n.setAttribute("data-effect-name",t)}}}),N.effects={},N.effect=function(e,t){N.effects[e]=t};var Ct,At,Nt=!1,jt=!1,Tt=N.cssName("transition-duration"),Ot=N.cssName("animation-duration");new function(){var e,t,n={TransitionEvent:"transitionend",WebKitTransitionEvent:"webkitTransitionEnd",OTransitionEvent:"oTransitionEnd",otransitionEvent:"otransitionEnd"};for(var r in n){if(window[r]){e=n[r];break}try{document.createEvent(r);e=n[r];break}catch(e){}}for(r in"string"==typeof e&&(Nt=!0,Ct=e),n={AnimationEvent:"animationend",WebKitAnimationEvent:"webkitAnimationEnd"})if(window[r]){t=n[r];break}"string"==typeof t&&(Nt=!0,At=t)};var Et=[];function St(e,t){var n=e.getAttribute("data-effect-name");if(n){t.effectName=n,t.effectDriver=e.getAttribute("data-effect-driver");var r=+e.getAttribute("data-effect-stagger");t.effectLeaveStagger=+e.getAttribute("data-effect-leave-stagger")||r,t.effectEnterStagger=+e.getAttribute("data-effect-enter-stagger")||r,t.effectClass=e.className||NaN}}function Dt(e){return e.replace(/^[\S]/g,function(e){return e.toUpperCase()})}var _t=new pt;function Pt(){}function Lt(e,t){var n=e.callbacks[t+"Class"];return"string"==typeof n?n:"function"==typeof n?n():e.name+"-"+t}function Mt(e,t,n){var r=e.callbacks[t];r&&r.call(e,e.el,n)}Pt.prototype={contrustor:Pt,enterClass:function(){return Lt(this,"enter")},leaveClass:function(){return Lt(this,"leave")},actionFun:function(e,t,n){if(!document.hidden){var r=this,i=r.el,a="leave"===e;e=a?"leave":"enter",Mt(r,"abort"+Dt(a?"enter":"leave")),Mt(r,"before"+Dt(e)),a||t(i);var o=function(o){i.removeEventListener(r.cssEvent,r.cssCallback),a?(t(i),N(i).removeClass(r.cssClass)):"a"===r.driver&&N(i).removeClass(r.cssClass),!0!==o&&(Mt(r,"after"+Dt(e)),n&&n(i)),r.dispose()};r.useCss?(r.cssCallback&&r.cssCallback(!0),r.cssClass=Lt(r,e),r.cssCallback=o,r.update=function(){i.addEventListener(r.cssEvent,r.cssCallback),a||"t"!==r.driver||N(i).removeClass(r.cssClass)},N(i).addClass(r.cssClass),_t.render(!0),_t.queue.push(r)):Mt(r,e,o)}},enter:function(e,t){this.actionFun.apply(this,["enter"].concat(N.slice(arguments)))},leave:function(e,t){this.actionFun.apply(this,["leave"].concat(N.slice(arguments)))},dispose:function(){this.update=this.cssCallback=null,Et.unshift(this)>100&&Et.pop()}};var Ht=function(e,t){var n=g.call(arguments,0);"function"!=typeof n[2]&&n.splice(2,0,w),"function"!=typeof n[3]&&n.splice(3,0,w);var r=n[2],i=n[3],a=function(e,t){if(!e||1!==e.nodeType)return null;if(t)var n=t.effectName,r=t.effectDriver;else n=e.getAttribute("data-effect-name"),r=e.getAttribute("data-effect-driver");if(!n||!r)return null;var i=Et.pop()||new Pt;return i.el=e,i.driver=r,i.useCss="j"!==r,i.useCss&&(t&&N(e).addClass(t.effectClass),i.cssEvent="t"===r?Ct:At),i.name=n,i.callbacks=N.effects[n]||{},i}(e,n[4]);if(!a)return r(),i(),!1;a[t?"enter":"leave"](r,i)};N.mix(N.effect,{apply:Ht,append:function(e,t,n,r){return Ht(e,1,function(){t.appendChild(e)},n,r)},before:function(e,t,n,r){return Ht(e,1,function(){t.parentNode.insertBefore(e,t)},n,r)},remove:function(e,t,n,r){return Ht(e,0,function(){e.parentNode===t&&t.removeChild(e)},n,r)}}),N.directive("html",{update:function(e){var t=this.element,r=1!==t.nodeType,i=r?t.parentNode:t;if(i){if(e=null==e?"":e,3===t.nodeType){var a=A("html");i.insertBefore(n.createComment(a),t),this.element=n.createComment(a+":end"),i.replaceChild(this.element,t),t=this.element}if("object"!=typeof e)var o=N.parseHTML(String(e));else if(11===e.nodeType)o=e;else if(1===e.nodeType||e.item){var s=1===e.nodeType?e.childNodes:e.item;for(o=$.cloneNode(!0);s[0];)o.appendChild(s[0])}if(s=N.slice(o.childNodes),r){for(var c=t.nodeValue.slice(0,-4);;){var l=t.previousSibling;if(!l||8===l.nodeType&&l.nodeValue===c)break;i.removeChild(l)}i.insertBefore(o,t)}else N.clearHTML(t).appendChild(o);rt(s,this.vmodels)}}}),N.directive("text",{update:function(e){var t=this.element;if(e=null==e?"":e,3===t.nodeType)try{t.data=e}catch(e){}else t.textContent=e}}),N.directive("if",{priority:10,update:function(e){var t,r=this,a=this.element,o=r.stamp=Date.now(),s=function(){o===r.stamp&&(r.recoverNode=null)};r.recoverNode&&r.recoverNode();try{if(!a.parentNode)return;t=a.parentNode}catch(e){return}if(e){function c(){a.getAttribute(r.name)&&(a.removeAttribute(r.name),et(a,r.vmodels)),r.rollback=null}if(8===a.nodeType){var l=r.keep,u=N.effect.apply(l,1,function(){o===r.stamp&&(a.parentNode.replaceChild(l,a),a=r.element=l,l.getAttribute("_required")&&(a.required=!0,a.removeAttribute("_required")),a.querySelectorAll&&N.each(a.querySelectorAll("[_required=true]"),function(e){e.required=!0,e.removeAttribute("_required")}),c())},s);u=!1===u}u||c()}else if(1===a.nodeType){!0===a.required&&(a.required=!1,a.setAttribute("_required","true"));try{N.each(a.querySelectorAll(":required"),function(e){a.required=!1,e.setAttribute("_required","true")})}catch(e){}var f=r.element=n.createComment(":if"),p=a.nextSibling;r.recoverNode=function(){r.recoverNode=null,f.parentNode!==t&&(t.insertBefore(f,p),r.keep=a)},N.effect.apply(a,0,function(){r.recoverNode=null,o===r.stamp&&(a.parentNode.replaceChild(f,a),r.keep=a,i.appendChild(a),r.rollback=function(){a.parentNode===i&&i.removeChild(a)})},s)}}});var Ft=N.templateCache={};function Bt(e){for(var t=n.createDocumentFragment(),r=0,i=e.length;r=200&&this.status<400?m.resolve(this.response):m.reject(this))},v.send(null),m.promise).then(t=>{Ft[e]=t,y(t)}).catch(t=>{a(":include load ["+e+"] error\n%c%s","color:#f30",`获取网络资源出错, ${t.status} (${t.statusText})`)})}}});var It=/\(([^)]*)\)/,Rt=N.directive("on",{priority:3e3,init:function(e){var t=e.expr;e.type="on";var n=e.param.replace(/-\d+$/,"");if("function"==typeof Rt[n+"Hook"]&&Rt[n+"Hook"](e),t.indexOf("(")>0&&t.indexOf(")")>-1){var r=(t.match(It)||["",""])[1].trim();""!==r&&"$event"!==r||(t=t.replace(It,""))}e.expr=t},update:function(e){var t=this,n=this.element;e=function(e){return(t.getter||w).apply(t.args[0],t.args.concat(e))};var r=t.param.replace(/-\d+$/,"");if("scan"===r)e.call(n,{type:r});else if("function"==typeof t.specialBind)t.specialBind(n,e);else var i=N.bind(n,r,e);t.rollback=function(){"function"==typeof t.specialUnbind?t.specialUnbind():N.unbind(n,r,i)}}});function qt(e,t,n){for(var r,i=0;r=e[i++];)r.className===n.effectClass&&N.effect.apply(r,t,w,w,n)}function Vt(e,t,n){return e?setTimeout(t,++n*e):t(),n}function Wt(e,t,n){for(var r=$.cloneNode(!1),i=e,a=i.nodeValue,o=t&&Math.max(+t.staggerIndex,0),s=N.slice(i.parentNode.childNodes),c=s.indexOf(i);;){var l=s[--c];if(!l||0===String(l.nodeValue).indexOf(a))break;!n&&t&&l.className===t.effectClass?(e=l,function(e){t.staggerIndex=Vt(t.effectLeaveStagger,function(){N.effect.apply(e,0,w,function(){r.appendChild(e)},t)},o)}(l)):r.insertBefore(l,r.firstChild)}return r.appendChild(i),r}function zt(e,t,n,r,i){var a=e.template.cloneNode(!0),o=N.slice(a.childNodes);a.appendChild(n.$anchor),i&&t.appendChild(a);n[e.param||"el"];var s={nodes:o,vmodels:[n].concat(e.vmodels),content:a};r.push(s)}function Ut(e){var t=("object"===e.xtype?Kt:Jt)(e);return(t.$anchor||(t.$anchor=e.element.cloneNode(!1))).nodeValue=e.signature,t.$outer=e.$outer,t}function Yt(e,t,n){if("array"===n){e.$remove=function(){t.$repeat.removeAt(e.$index)};var r=t.param;e.$watch(r,function(n){var r=e.$index;t.$repeat[r]=n})}else{var i=t.vars[0],a=t.vars[1];e.$up.$watch(t.expr+"."+e[i],function(n){e[t.param][a]=n,e[a]=n})}}N.directive("for",{priority:90,init:function(e){var t=e.type;e.cache={},e.enterCount=0;var r=e.element;if(1===r.nodeType){var i=e.expr.split(" in ");e.expr=i.pop(),i.length&&(i=i.pop().split(/\s+/)),e.vars=i,r.removeAttribute(e.name),St(r,e);var a=Ue(r,"data-rendered",e.vmodels),o=A(t),s=n.createComment(o+":start"),c=e.element=n.createComment(o+":end");e.signature=o,e.start=s,e.template=$.cloneNode(!1);var l=r.parentNode;if(l.replaceChild(c,r),l.insertBefore(s,c),e.template.appendChild(r),e.element=c,a)var u=N.bind(l,"datasetchanged",function(){a.apply(l,l.args),N.unbind(l,"datasetchanged",u),l.msRendered=a})}},update:function(e,t){var n=this,r=this.xtype;"array"===r?(this.vars.length?1===this.vars.length&&this.vars.unshift("$index"):this.vars.push("$index","el"),this.param=this.vars[1]):(this.param="__el__",this.vars.length?1===this.vars.length&&this.vars.push("$val"):this.vars.push("$key","$val")),this.enterCount+=1;var i=!t;if(i){n.$outer={};var a=this.vars[0],o=this.vars[1];"array"===r&&(a="$first",o="$last");for(var s,c=0;s=n.vmodels[c++];)if(s.hasOwnProperty(a)&&s.hasOwnProperty(o)){n.$outer=s;break}}var l=this.track,u="move";n.$repeat=e;var f=[],p=i&&$.cloneNode(!1),d=[],h=this.param,v=N.mix({},this.cache),m=this.element,y=l.length,g=m.parentNode,b=0;for(c=0;c10,A=m.previousSibling,j=n.start;if(C)for(;A!==j;)g.removeChild(A),A=m.previousSibling;for(c=0;cP.maxRepeatSize&&i.pop(),delete e[t]}}function Qt(e,t){var r="_"+e;if(!Qt[r]){var i=n.createElement(e);b.appendChild(i),t=getComputedStyle(i,null).display,b.removeChild(i),Qt[r]=t}return Qt[r]}N.parseDisplay=Qt,N.directive("visible",{init:function(e){St(e.element,e)},update:function(e){var t,n=this,r=this.element,i=!this.effectName;if(!this.stamp)return t=this.stamp=Date.now(),void(e?(r.style.display=n.display||"","none"===N(r).css("display")&&(r.style.display=n.display=Qt(r.nodeName))):r.style.display="none");t=this.stamp=+new Date,e?N.effect.apply(r,1,function(){if(t===n.stamp){var e=r.getAttribute("data-effect-driver")||"a";i&&(r.style.display=n.display||""),"a"!==e&&"t"!==e||"none"===N(r).css("display")&&(r.style.display=n.display||Qt(r.nodeName))}}):N.effect.apply(r,0,function(){t===n.stamp&&(r.style.display="none")})}});var en=/]*>([\S\s]*?)<\/script\s*>/gim,tn=/\s+(on[^=\s]+)(?:=("[^"]*"|'[^']*'|[^\s>]+))?/g,nn=/<\w+\b(?:(["'])[^"]*?(\1)|[^>])*>/gi,rn={a:/\b(href)\=("javascript[^"]*"|'javascript[^']*')/gi,img:/\b(src)\=("javascript[^"]*"|'javascript[^']*')/gi,form:/\b(action)\=("javascript[^"]*"|'javascript[^']*')/gi},an=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,on=/([^\#-~| |!])/g;function sn(e,t,n,r){e=(e+"").replace(/[^0-9+\-Ee.]/g,"");var i=isFinite(+e)?+e:0,a=isFinite(+t)?Math.abs(t):3,o=r||",",s=n||".",c="";return(c=(a?function(e,t){var n=Math.pow(10,t);return""+(Math.round(e*n)/n).toFixed(t)}(i,a):""+Math.round(i)).split("."))[0].length>3&&(c[0]=c[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,o)),(c[1]||"").length>=0)%60,n=Math.floor(e/60),r=Math.floor(n/60);return n=(n%=60)<10?"0"+n:n,t=t<10?"0"+t:t,r>0?(r=r<10?"0"+r:r)+":"+n+":"+t:n+":"+t},$filter:function(e){for(var t=1,n=arguments.length;t/g,">")},currency:function(e,t,n){return(t||"¥")+sn(e,isFinite(n)?n:2)},number:sn,date:function(e,t){var n=e;if(!Date.isDate(n)){var r=+n;if(r==r&&(n=r),"Invalid Date"===(n=new Date(n)).toString())return"Invalid Date"}return n.format(t)}};let ln,un=[],fn=function(e){for(ln=!0;e=un.shift();)e(N)};return"complete"===n.readyState?setTimeout(fn):n.addEventListener("DOMContentLoaded",fn),window.addEventListener("load",fn),N.ready=function(e){ln?e(N):un.push(e)},window.Anot=N,N}();export default _Anot; \ No newline at end of file diff --git a/src/lib/css/reset-basic.css b/src/lib/css/reset-basic.css new file mode 100644 index 0000000..4546277 --- /dev/null +++ b/src/lib/css/reset-basic.css @@ -0,0 +1,60 @@ +@charset "UTF-8"; +/** + * + * @authors yutent (yutent@doui.cc) + * @date 2014-10-10 00:45:09 + * + * doui的CSS规范 + * + * 不能出现大写,以连字符风格命名 + * 表示状态的应该用do-st-*命名 + * 表示功能的应该用do-fn-*命名 + * 表示页面模块的应该用do-mod-modname 命名 + * 表示UI组件的应该用do-uiname命名, 它的子元素应该全部包在 .do-uiname这个根类下 + * 如 .do-layer .body { ... } + * + * 样式规则的出现顺序 + * 1 display float position overflow z-index 表示定位/布局的属性 + * 2 width height margin padding border 表示盒子模型的属性 + * 3 line-height font-size vertical-align text-align user-select outline ....排版相关的属性 + * 4 color background opacity cursor ...表示装饰相关的属性 + * 5 content list-style quotes ... 内容生成相关的属性 + * + */ + + +* {margin: 0;padding: 0;vertical-align: baseline;box-sizing:border-box;} +::before,::after {box-sizing:border-box;} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section,content {display: block;} +img {border:0;display:inline-block;} +ol, ul {list-style: none;} +blockquote, q {quotes: none;} +blockquote::before, blockquote::after, +q::before, q::after {content: '';content: none;} +table {border-collapse: collapse;border-spacing: 0;} +a:focus,input,textarea,button:focus,input:focus,textarea:focus {outline:none;} +::-moz-focus-inner { + border:none;outline:none; +} +body {font-family:Helvetica, Arial,"WenQuanYi Micro Hei","PingFang SC","Hiragino Sans GB","Segoe UI", "Microsoft Yahei", sans-serif;-webkit-font-smoothing: antialiased;text-size-adjust: 100%;-webkit-tap-highlight-color: transparent;} +code,pre,samp {font-family:Menlo,Monaco,Consolas,"Courier New",monospace;} +[anot],[\:repeat],[\:if],[is-widget],slot {visibility:hidden;} + +.do-fn-cl { *zoom: 1; } +.do-fn-cl::after { content: "."; display: block; height: 0; clear: both; visibility: hidden; overflow:hidden;} +.do-fn-clear {clear:both;display:inline;} + +.do-fn-show{display:block;} +.do-fn-hide{display:none;} +.do-fn-fl{float:left;} +.do-fn-fr{float:right;} +.do-fn-noselect {-webkit-touch-callout: none;-webkit-user-select: none;-moz-user-select: none;user-select: none;} +.do-fn-noselect img, .do-fn-noselect a {-webkit-user-drag:none;} +.do-fn-ell {overflow:hidden; white-space:nowrap; text-overflow:ellipsis } +.do-st-thin {-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;} +.do-st-hand {cursor:pointer;} + +[class^="do-icon-"], [class*=" do-icon-"] {display:inline-block;font-family:"uifont" !important;font-style:normal;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;} + + diff --git a/src/lib/drag/core.js b/src/lib/drag/core.js new file mode 100644 index 0000000..2470449 --- /dev/null +++ b/src/lib/drag/core.js @@ -0,0 +1 @@ +"use strict";import $ from"../utils.js";const DEF_OPT={axis:"",limit:!1,overflow:!0};export default class Drag{constructor(t){this.$elem=t,this._init()}_init(){this.$elem.style.transform="";var{x:t,y:s}=this.$elem.getBoundingClientRect();this.pos={x:t,y:s,_x:0,_y:0}}by(t,s={}){return this.$drag=t,this.opt=Object.assign(Object.create(null),DEF_OPT,s),!1!==this.opt.limit&&(this.opt.overflow=!1),t.style.cursor="move",this._handleResize=$.bind(window,"resize",this._init.bind(this)),this._handleMousedown=$.bind(t,"mousedown",t=>{if(this.disabled)return;var s=this.$elem.getBoundingClientRect();s.x-this.pos._x!==this.pos.x&&(this.pos.x=s.x-this.pos._x),s.y-this.pos._y!==this.pos.y&&(this.pos.y=s.y-this.pos._y);let e=t.pageX,i=t.pageY,o=document.documentElement.clientWidth,n=document.documentElement.clientHeight,h=s.width,p=s.height,d=[0,o-h,n-p,0];if("parent"===this.opt.limit){let t=this.$elem.parentNode.getBoundingClientRect();d=[t.top,t.right-h,t.bottom-p,t.left]}let l=$.bind(document,"mousemove",t=>{t.preventDefault();let o=t.pageX-e+(s.x-this.pos.x),n=t.pageY-i+(s.y-this.pos.y);"x"===this.opt.axis&&(n=0),"y"===this.opt.axis&&(o=0),!1===this.opt.overflow&&(od[1]-this.pos.x&&(o=d[1]-this.pos.x),nd[2]-this.pos.y&&(n=d[2]-this.pos.y)),this.pos._x=o,this.pos._y=n,this.$elem.dispatchEvent(new CustomEvent("dragging",{detail:{offset:{x:this.pos.x+o,y:this.pos.y+n},move:{x:o,y:n}}})),this.$elem.style.transform=`translate(${o}px, ${n}px)`}),m=$.bind(document,"mouseup",t=>{this.$elem.dispatchEvent(new CustomEvent("dragged",{detail:{offset:{x:this.pos.x+this.pos._x,y:this.pos.y+this.pos._y},move:{x:this.pos._x,y:this.pos._y}}})),$.unbind(document,"mousemove",l),$.unbind(document,"mouseup",m)})}),this}on(t,s){if(t&&"function"==typeof s)return $.bind(this,t,s)}off(t,s){$.unbind(this,t,s)}destroy(){$.unbind(window,"resize",this._handleResize),$.unbind(this.$drag,"mousedown",this._handleMousedown),delete this.$elem,delete this.$drag}}; \ No newline at end of file diff --git a/src/lib/drag/index.js b/src/lib/drag/index.js new file mode 100644 index 0000000..ed1d3ef --- /dev/null +++ b/src/lib/drag/index.js @@ -0,0 +1 @@ +"use strict";import Drag from"./core.js";Anot.directive("drag",{priority:1500,init:function(e){e.expr='"'+e.expr+'"',e.overflow=!0,e.axis="xy",e.element.dataset.axis&&(e.axis=e.element.dataset.axis,delete e.element.dataset.axis),e.limit=!1,e.element.dataset.limit&&(e.limit=e.element.dataset.limit,e.overflow=!1,delete e.element.dataset.limit)},update:function(e){var t=this.element;if(e)for(t=this.element.parentNode;t;){if(t.classList||Anot.error(`${this.name}=${this.expr}, 解析异常[元素不存在]`),"WC-LAYER"===t.tagName&&"layer"===e){t=t.root.children[1];break}if(t.classList.contains(e)||t.id===e)break;t=t.parentNode}new Drag(t).by(this.element,{limit:this.limit,axis:this.axis,overflow:this.overflow})}}); \ No newline at end of file diff --git a/src/lib/form/button.js b/src/lib/form/button.js new file mode 100644 index 0000000..592194b --- /dev/null +++ b/src/lib/form/button.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +import"../icon/index.js";import $ from"../utils.js";const IS_FIREFOX=!!window.sidebar;export default class Button extends HTMLElement{static get observedAttributes(){return["icon","autofocus","loading","disabled","lazy"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{icon:"",autofocus:"",loading:!1,disabled:!1,lazy:0},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML=" ",this.hasAttribute("circle")&&(this.textContent=""),this.__BTN__=this.root.children[1],this.__ICO__=this.__BTN__.children[0]}get loading(){return this.props.loading}set loading(o){var t=typeof o;o!==this.props.loading&&("boolean"===t&&o||"boolean"!==t?(this.props.loading=!0,this.__ICO__.setAttribute("is","loading"),this.setAttribute("loading","")):(this.props.loading=!1,this.__ICO__.setAttribute("is",this.props.icon),this.removeAttribute("loading")))}get disabled(){return this.props.disabled}set disabled(o){var t=typeof o;o!==this.props.disabled&&("boolean"===t&&o||"boolean"!==t?(this.props.disabled=!0,this.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled")))}connectedCallback(){this.stamp=0,this._handleClick=$.bind(this.__BTN__,"click",o=>{var{loading:t,disabled:e,lazy:r}=this.props,n=Date.now();return t||e?o.stopPropagation():r&&n-this.stamp{this.__BTN__.focus()},10);break;case"lazy":this.props.lazy=e>>0;break;case"loading":case"disabled":this[o]=!0}}}; + +if(!customElements.get('wc-button')){ + customElements.define('wc-button', Button) +} diff --git a/src/lib/form/checkbox.js b/src/lib/form/checkbox.js new file mode 100644 index 0000000..516e9ac --- /dev/null +++ b/src/lib/form/checkbox.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 19:57:05 + * @version v2.0.1 + * + */ + +'use strict' + +import"../icon/index.js";import $ from"../utils.js";export default class Checkbox extends HTMLElement{static get observedAttributes(){return["label","color","value","checked","readonly","disabled"]}constructor(){super(),Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{label:"",color:"",value:[],checked:!1,readonly:!1,disabled:!1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML=" ",this.__SWITCH__=this.root.lastElementChild,this.__ICO__=this.__SWITCH__.children[0]}get value(){return this.props.value}set value(e){Array.isArray(e)?(this.props.value=e,this.checked=this.props.value.includes(this.props.label)):console.error("checkbox组件的value必须是数组, 当前为: "+typeof e)}get checked(){return this.props.checked}set checked(e){this.props.checked=!!e;var{value:o,checked:t,label:l,color:r}=this.props;this.__SWITCH__.classList.toggle("checked",t),this.__ICO__.setAttribute("is","checkbox-"+(t?"on":"off"));var c=o.indexOf(l);t?(this.__ICO__.setAttribute("color",r),c<0&&o.push(l)):(this.__ICO__.removeAttribute("color"),~c&&o.splice(c,1))}get readOnly(){return this.props.readonly}set readOnly(e){var o=typeof e;e!==this.props.readonly&&("boolean"===o&&e||"boolean"!==o?(this.props.readonly=!0,this.setAttribute("readonly","")):(this.props.readonly=!1,this.removeAttribute("readonly")))}get disabled(){return this.props.disabled}set disabled(e){var o=typeof e;e!==this.props.disabled&&("boolean"===o&&e||"boolean"!==o?(this.props.disabled=!0,this.setAttribute("disabled","")):(this.props.disabled=!1,this.removeAttribute("disabled")))}connectedCallback(){this._handlClick=$.bind(this,"click",e=>{e.preventDefault(),this.disabled||this.readOnly||(this.checked=!this.checked,this.dispatchEvent(new CustomEvent("input")))})}disconnectedCallback(){$.unbind(this,"click",this._handlClick)}attributeChangedCallback(e,o,t){if(null!==t&&o!==t)switch(e){case"label":case"color":this.props[e]=t;break;case"checked":case"readonly":case"disabled":var l=e;"readonly"===l&&(l="readOnly"),this[l]=!0}}}; + +if(!customElements.get('wc-checkbox')){ + customElements.define('wc-checkbox', Checkbox) +} diff --git a/src/lib/form/input.js b/src/lib/form/input.js new file mode 100644 index 0000000..4ac8b0e --- /dev/null +++ b/src/lib/form/input.js @@ -0,0 +1,15 @@ +/** + * + * @authors yutent (yutent.io@gmail.com) + * @date 2020-07-22 20:29:37 + * @version v2.0.1 + * + */ + +'use strict' + +import"../scroll/index.js";import"../icon/index.js";import $ from"../utils.js";const TYPES=["text","textarea","password"],INPUTS={text:'',textarea:''};export default class Input extends HTMLElement{static get observedAttributes(){return["value","icon","type","label","placeholder","mvidx","autofocus","readonly","disabled"]}constructor(){super();var e,t=this.getAttribute("type");"textarea"!==t&&(t="text"),e=INPUTS[t],Object.defineProperty(this,"root",{value:this.attachShadow({mode:"open"}),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(this,"props",{value:{value:"",icon:"",type:"text",label:"",placeholder:"",mvidx:null,autofocus:!1,readonly:!1,disabled:!1},writable:!0,enumerable:!1,configurable:!0}),this.root.innerHTML=`