From b442c38f4148d0825189c646cfc249ec4a4c212e Mon Sep 17 00:00:00 2001 From: tamaina Date: Sun, 8 Jan 2023 16:47:57 +0900 Subject: [PATCH] enhance: Push Notification badges to Tabler Icons (#9406) * enhance: Push Notification badges to Tabler Icons * add receiveFollowRequest icon --- .../assets/notification-badges/LICENSE | 5 --- .../backend/assets/notification-badges/at.png | Bin 1752 -> 0 bytes .../assets/notification-badges/check.png | Bin 577 -> 0 bytes .../clipboard-check-solid.png | Bin 1402 -> 0 bytes .../assets/notification-badges/clock.png | Bin 1131 -> 0 bytes .../assets/notification-badges/comments.png | Bin 1134 -> 0 bytes .../notification-badges/id-card-alt.png | Bin 844 -> 0 bytes .../assets/notification-badges/plus.png | Bin 507 -> 0 bytes .../assets/notification-badges/poll-h.png | Bin 689 -> 0 bytes .../notification-badges/quote-right.png | Bin 772 -> 0 bytes .../assets/notification-badges/reply.png | Bin 930 -> 0 bytes .../assets/notification-badges/retweet.png | Bin 798 -> 0 bytes .../assets/notification-badges/satellite.png | Bin 1743 -> 0 bytes .../assets/notification-badges/user-plus.png | Bin 991 -> 0 bytes packages/backend/assets/tabler-badges/LICENSE | 24 +++++++++++++ .../backend/assets/tabler-badges/antenna.png | Bin 0 -> 516 bytes .../assets/tabler-badges/arrow-back-up.png | Bin 0 -> 952 bytes packages/backend/assets/tabler-badges/at.png | Bin 0 -> 2909 bytes .../assets/tabler-badges/chart-arrows.png | Bin 0 -> 829 bytes .../assets/tabler-badges/circle-check.png | Bin 0 -> 2307 bytes .../backend/assets/tabler-badges/messages.png | Bin 0 -> 1056 bytes .../null.png | Bin .../backend/assets/tabler-badges/plus.png | Bin 0 -> 414 bytes .../backend/assets/tabler-badges/quote.png | Bin 0 -> 1011 bytes .../backend/assets/tabler-badges/repeat.png | Bin 0 -> 1206 bytes .../assets/tabler-badges/user-plus.png | Bin 0 -> 1431 bytes .../backend/assets/tabler-badges/users.png | Bin 0 -> 1911 bytes .../sw/src/scripts/create-notification.ts | 32 +++++++++++------- packages/sw/src/types.ts | 15 ++++++++ 29 files changed, 59 insertions(+), 17 deletions(-) delete mode 100644 packages/backend/assets/notification-badges/LICENSE delete mode 100644 packages/backend/assets/notification-badges/at.png delete mode 100644 packages/backend/assets/notification-badges/check.png delete mode 100644 packages/backend/assets/notification-badges/clipboard-check-solid.png delete mode 100644 packages/backend/assets/notification-badges/clock.png delete mode 100644 packages/backend/assets/notification-badges/comments.png delete mode 100644 packages/backend/assets/notification-badges/id-card-alt.png delete mode 100644 packages/backend/assets/notification-badges/plus.png delete mode 100644 packages/backend/assets/notification-badges/poll-h.png delete mode 100644 packages/backend/assets/notification-badges/quote-right.png delete mode 100644 packages/backend/assets/notification-badges/reply.png delete mode 100644 packages/backend/assets/notification-badges/retweet.png delete mode 100644 packages/backend/assets/notification-badges/satellite.png delete mode 100644 packages/backend/assets/notification-badges/user-plus.png create mode 100644 packages/backend/assets/tabler-badges/LICENSE create mode 100644 packages/backend/assets/tabler-badges/antenna.png create mode 100644 packages/backend/assets/tabler-badges/arrow-back-up.png create mode 100644 packages/backend/assets/tabler-badges/at.png create mode 100644 packages/backend/assets/tabler-badges/chart-arrows.png create mode 100644 packages/backend/assets/tabler-badges/circle-check.png create mode 100644 packages/backend/assets/tabler-badges/messages.png rename packages/backend/assets/{notification-badges => tabler-badges}/null.png (100%) create mode 100644 packages/backend/assets/tabler-badges/plus.png create mode 100644 packages/backend/assets/tabler-badges/quote.png create mode 100644 packages/backend/assets/tabler-badges/repeat.png create mode 100644 packages/backend/assets/tabler-badges/user-plus.png create mode 100644 packages/backend/assets/tabler-badges/users.png diff --git a/packages/backend/assets/notification-badges/LICENSE b/packages/backend/assets/notification-badges/LICENSE deleted file mode 100644 index 841c4c682..000000000 --- a/packages/backend/assets/notification-badges/LICENSE +++ /dev/null @@ -1,5 +0,0 @@ -Font Awesome Icons -------------------------- - -Ⓒ Font Awesome -CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) diff --git a/packages/backend/assets/notification-badges/at.png b/packages/backend/assets/notification-badges/at.png deleted file mode 100644 index d1492856de2b2f837a24a439eaa13631283aa87a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1752 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 IM6N<$g3e8FJOBUy diff --git a/packages/backend/assets/notification-badges/clock.png b/packages/backend/assets/notification-badges/clock.png deleted file mode 100644 index 9323f8f3070dd4ef538f7df33d54975c449d7cf6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1131 zcmV-x1eE)UP)i3Y$w051RofH8pm^gqn>KX0r+!CuK7!p-*O z9EeIVE^1V;W#ff&4c}r18~mkE19;;6EBz>+DEzL_;56P{~o zbB$-e;`f;498p7da*fT`G^Q+|k^fb{#z#Dx&cP4LHGigw=2k>hu#=XwIjPviu`LcN z*w#(jl+=8Ipi8P@_gkdRkm3Nr$+<@P_1>4sL#S}=EB})N5|*Q@*8DxbzA^O(q_!0X z*fw|Tc30EiNQKb(nivYn!I?~Sp0;(-Kz7nq2eej#I!BzaVrJ-gjzUuFh=`q01zX#s z2XqwDdiwy)PDs|%oC6pUVLnihFFiR2@b&tjB^X4`0gSL~rXbV=;!6l%MBs$n5(qCP zfWvoz0#EHPA%GDF=Yp0%aA^UwzQQZ;UHv5lFv9aLVCnly48Ut$&=CkNHGqCkG+XOg zS^y(<$`EV$DJcN6C7St3*HK98UE}7OfU)~2Er1cW)BFQXAnYmuXqRB-`d?ZA#wD1! z{+AYja~|jkgk2?o!6o<(KyW;YK+x3!czZ^m2?Sj&0KF8e2?Sj&fMzMSArN%60N!>+ z8v;R>4uE|TR$>5VDYnD_*vIr1KtmuXb^rkPdF8hf^dJzlN9PWrCm27K&@2V!5Wu%@ z8*73wtOmd)&czr9A1d&aq_;B!(gzxR*dK9v2Zmrg>QfZ+)3BMrFSQ`l3ohU|uW^aCaOEGAnHLIJ%FvQe*sX{8)A+rR z4&@U7zO;;ikkbw+E5CY%QDR4wl2JbF z%Km;0GfjZsPV@wW$&EeYJ+GiXz|F|D75G=s1Ov;3O_0ML$nCME1UI*vW8iL0*V!Us z-QPkkudt+K=o7ghuzu7@iXuPcaCb((=8OHh62mv8FKhk`rZ$=O4VJfAOj$ml0* zeV~y?5XBk)3C25Ozy*x|L;LpSc*68^~+#5Hx@gEPy`5mNRh?f8W002ovPDHLkV1iQt4c7nw diff --git a/packages/backend/assets/notification-badges/comments.png b/packages/backend/assets/notification-badges/comments.png deleted file mode 100644 index bc8a1c35b4423bc08af88c3c72d4d29c6e81c6bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1134 zcmV-!1d;oRP) z>yfK4428cED1j1E0wtsbN=OHkuq9B!mOu%VKnawv_lMzz&0?N@2%|G|e(X#(v5$o; z%ZdUDg+ifFC=?2XLZMJ7!XX24-~l{=V)#3YHlhTPVT64F4bTD|&;vg!?1$HW17Da$ z(#2W9D0qbtdyCL}*#R|XQFTEEWEjyq+zYW^8u?2L+!l^o* zk#kL#v&Pb$ME>v~P4P#*+)3pgIWpq!;im#L>{aky7>0wyet z#f(n2Q2q2mXaw|^b7_gCvr@;2)b^e8KQYEehHju5T`dxk`~$D7F@zjzo*ilJFxm5%-(6lW=$N{WdLvMnZ4SML^lf_q07# z|4|E=xCHjhAHrOCiNzdKAz<WXp!V#J^=q2?<@?`#X;^FyW5=6ZbBNiA;3wE$s4u*3c}SKk?e z)vM1=fIvRkW4FQ(USRR+GbioS@sjwi!_FmI-B8L2x{l?XeaN}bW=wO^wf?mWlh73+ zv-?1*XMu+0z7jFYbN(F4Qmhf`ST8+~HSb>=aZXyUr^oo%wQed^R`dk3E3GSV%N z6ulXLq9nbip>ruvC{)B3&LwNN@`Qtg%m0zhFrK3!bo4fvXHXKS#X^s<-Z?+McOk?d z&bFe&Z(^^*oKXt4r4mZE8^>ir)2$dU{=Yc(gmkjS7WAp-?Ck3WY+UP}~Ur0DhV)Yg-p@t^fc407*qoM6N<$f)7F> A<^TWy diff --git a/packages/backend/assets/notification-badges/id-card-alt.png b/packages/backend/assets/notification-badges/id-card-alt.png deleted file mode 100644 index 67e1410e34cb2a6ec1a17ebd89dc15fdfff87205..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 844 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7Ro>U>5dtaSW-L^LFmT-qi*IEz4QF z7PL%p;M8msy42_mV`?-CRoLg;bL9{)Y>V9d+f#Y&BIh&jCdjn$vP-lj0@0cPrV7Rk zhCTHcv~#juf)1G1G8o8B*nR6qY{kQf$GR=dQ!MJ9oDYqAVP732_jhvK^sot*`Ahg0 z?A_9IW+TIi2!<3L1|u;B$*YVu5BzUNG00vrPgUN(M#P=Nb1#wCB8SgU{OpJq7K;kG`IV}<%^ zhFvSn@;?g(gqty%6x!Z9!ns0wHp8nGV)?<`AlA8xbNVIcx(Kv%H=BU$few?`jOq*ea+oCw-z(Vj8%3uzCZSMW?gmLGpir%Ra<^= zzuuW#o%x;h1>3O;CzP2Z4EG3Ep0{gYyKY|ZJ?#pUPv(V^=lK(3=B=Nw z+U|yBPRzmm%2G?}`}UjpeqSv=p_KK80ncHBlF$6IQhO)62ZpQ%<`M=^S3j3^P6U_9jM;uumf=k48txwjnz94=}) zs_syken99-qgNoOR-$(Rr;elQ4faWPGaJgLKZxi3$NX%X#N?k=5^iRl6I47e-Pou6 zNKo*6$B&ycEB~4bZ%*=?9?`d}{L9|Tb^F8TM)mFYW&Gxw+V$;mzVX~W#ag!W|K-Xp z&!2lj<}YI$koI{0aeJUL^8p?PV}>&f2Bb1JR6Q?j*?dNZ-A*X8R_3A3<-Z z^}k6y;5YrX=UQ~E@iPLS>mnCG9pu;2H8Vsv};7j_L$APM%n zkN+1fjC!p+QHb5P@4}^TzTwz({5AboFyt=akR{03trk AK>z>% diff --git a/packages/backend/assets/notification-badges/poll-h.png b/packages/backend/assets/notification-badges/poll-h.png deleted file mode 100644 index 3b7ded66597679a8d19ef9eccc09834fa7a4f222..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 689 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7Ro>V5;zRaSW-L^LDOd;o|@S7wIMi zjwVGN7Uu|#!~~8;Ale|nbWngr(bA)R&8e-?w)Kd_RpCf1U?AZyfd->s6^7i ze~XveomrFj=hXjW`qq#4U5vKhA;xk4sP@ikhTpqoOF!t{J9(G+Lw5bLh4)$enGWuj z&~lL7HQVIXfxAlr+25)4S{0aQUTNIzxtQ;cuT<%Syh|&X%O|_Z?wD;7*=)|B|6`f8 ztNOL%X;n9ua_w+!;}6=%GHcDj?35o0-UivHnL<{Gzhmmsv~J+~dMMVxFqJ)EVcZUG zjb(2bKuYSQe;u8E;)7$2V%ewVUJ(p`+|KgzU4~nL;fBekKh)oMq;6FDAJwFm{Xy4g z564W^3n{#D%7?or{8ZZf)WVkKPVAD!Wl9DyHLX z#G&##k&9329AFE;>b(?Rxt+?}7Cl>jXPMRmG0D0`&YVD>UO(|cSkykp+LtkMh4>35 zweYeBI#;+$7$<967l^%L-PLe%s%%9skNv~#3z^gI^n7f+vEZVR*8lU@Ls)MxVE6+w zEM?c(X?s3y|MBFfLOK5d{=(BHUktW;H$I5vu|2_iV|H-+{JYkBzv}CJ_57axB+#(+&H7xe92 SI188*89ZJ6T-G@yGywp^oij%O diff --git a/packages/backend/assets/notification-badges/quote-right.png b/packages/backend/assets/notification-badges/quote-right.png deleted file mode 100644 index 0fa483765481dd43d88a470c45614c6a782c748b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 772 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7Ro>U^?yT;uumf=k46Y!rKl4ZuT5a z2^?(-9Bl#|i9iyF0yx?dIGQH>n~-+tOi&&r|;B z94N8168IRwuuMBD>3u}!x4U;mbtiB)^i0jTAH$Gxh_#4u!bYLDv$-35b~xxU7=2Y2kjtq>!w7%UqmcW-jyl zxkm4AN8K;SlHN}{r7AD}^7a>5Z1qNJTfNPz--iXVxZQ02mfZfjux!4?N1Mg2K=ZUe zy-GU2SpH(@@8$bS_t<%}T^6mJQt_{=?`2oj|~E)R(Q^ z`Xojvl405ErB7nt`t3;E73DS0OO^XT$<_&bR{mX?<}-c!lai1P0zT8HKUnnD#z$m^ z9{<6}jmxL2285rzym9}N- zO_i)L5QVP%(gBzNya8AMF94%vKzE{pOZd+Ry%giR1rN9x|0(&0X0_-pjsdX2pZuTw zZ-_7x!jgZ82r?l&@iah?4#0x=KVoI=s8yaFaQhp2;tw;F81zx17ch18f6Z?!Qij`3x;Q`y!0-9qC09=Q}Q&Tx5eSEIjAsuhM^}8N$Pv!u3 z;5EU`ss(P>X%&+jGo~a~g}6?m=EF zjF2;6tsA-{^{TTKI>;IDtQ`A4QV#N3LTbaA{ZU5_u~(ffA$1bmSC0EX48j7nO7Z>0 zjQr$RU4VUr9OTVv(S1f@f1_6aKjG_;UTE)U1SAYFwSx{}f-5&0T#GiLz2pP=1~gNC z&Wb^v0j-tP(=j4F`5W4Ns!v7E+k%|^0;KK(IQxZ2Jx<~57s4Vw`4*i0BBUP1sh;~> ziIfW_{x38^Vmlx%yu!pRz#CY4#EDse+4Tq$Q~wvG7%xp|{a?YlUxbkQ&*T^6Tm5J9 z3*$532`0Zd2A^9^(ccawenz-bbKKgo&nJWsLI{cG7r>uR1s%&lUjP6A07*qoM6N<$ Ef-jw?4FCWD diff --git a/packages/backend/assets/notification-badges/retweet.png b/packages/backend/assets/notification-badges/retweet.png deleted file mode 100644 index dc6106048107a8459bd6efc921835d9bf2e25d9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 798 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7Ro>V0!B5;uumf=k4s=jh_qzTKid4 z6c!3;Efkv2z^oF(Ikf@IpK#%~@^<6e%HJDjr)=h(lb-hfV9qz2DgBceS_GUp6p;x@ z-iB+{g7-a`AMhp2xq7wKHQt3e;lTcf!A^?X4lQR%R(TlQBslAXrlPUo!{r_sj9(by zCfe#||A>w@3_8?5@xr4S2lYD*)ZKqXaqj#zRpavZ8*?6Ji@lLuwXBZivrD4jK9@r$ zH>`L4y2+w6qD_Bdf#JK_3`W&M(>*Fgq7E-)nZolwSS3aH0Z^UO`z^~BG1(lR?(u@* z&c8O@NLLma#hOkQ{xhs|7SzwL)tskXD|&Xdx1@&gGbXFV$(28N5B2k(e9XAFrTUb^ zOhfSkQL~wc=Eu#IVr+P)B^|_e>P+IghRPoeaSRI6KZJ%eY>+=w{lj4n149K@)z+2F zsY^N7{;heEUsioTa$F|LGT@9V5*Ic(uJUdN9 zTtT(HL23a*y2b%Xu7WnEISbL44Z??Xr%QkPU+XQp;N{XqVT`)}?tl61!jaV}!Z>%+ z^e!pZEfMz%|Hf4Mt!daBcTy-zxZv2ovhS*#hD=h9>)l^DY~`%5KdH&6D{jxnDq9x@j(#$C-{bJyEx+lR)-+!7oA#_rzIvgRRk zDThT@%bSPHUpatcrRSrXJbyUEGR0YMj_@?#mS5q0pyTh{@|~(P+W24amsMO-n4>wJ zc4jjh zlK1xEgUx1kf7y?G+`0G2|F%ydzNK_bso8~lK|j}&zW5KH7vUZ+d-2>a=!oAa0i|!d zqF)|Tx+xx+(E&Y!#4tjW%nHRTNGitcP&|TgF=mD04Md7D8x&6MSI zyhl@la4QRx-;^FRb)=0Xi4UPkk9S+GsX!!^1qQ}&?2GZ7vvC_q5??zW?(y#TodQHs z*?g4iQRe5J_db7@_hOD3bWbdMX>GB#5N4Ll_n)lK4`FO%_Ti5J_cY z7@8=O_);*~OYjmPlFFuHXrMGy$k;7@PQzypU)CTcFmh1}9n=bB3XGai4k*~Lg#XXR0%S^zT2MYwpr?JkL>mO-@ptB!%$>kfhZxCq zN^04;`7Wt|RSA$a9pnuoS}P3iJ*5Z;Rw}<7VR%L@Z4#Xrs&$qcn&Xibo98P33w@`@%5gB0XnG+|U6^ypWJm zkG?$FC{uvs^b~-UdLdyFl&L_ZDAGnMy`Q+JObN1}^qeMBgDfZ=6b~RZp_qR@MGFKI z?eiV>HT@iX05dX}OIBYc=Y}GmPvL;z!4pS>`yB0{r2<@fTQviZt zV(AtCPDL(;DhfdUEZyS11*8~iC;-728LlB7vP~|A3JO3lT&2E~J6A9*j9iq1u*#B5 zN^`-{#>hcAX)k*pB8nA;6y>serT&mmtT99=eYZ{?0!k?ips;QS4c*I{JBs*;9&_Sk zVNluEV>cHU6lUvpvU4%8`+4m4`+_1vkzm|@m?s8;a26CEiWCFagI6ga3radj76uNJ z3bLTYQL-_(Ahn^GzmU)}Qo)db)Phpvg@hf58io|429)-`;rb>Ne!r-i35Vk{3|nn zSotM-N-PFum29(fg5^%=nDkOsV%8{}I@-2&Lh0OKF^N4*C>L4AZhv=+utG^aDH5w> zpN$KWI&7gK(4zpDx>=xbZk?pYX_}7(g<1$CH8FOAza;)c}P@h{Ud76D2;&ZhtX002ovPDHLkV1oTz6`=qC diff --git a/packages/backend/assets/notification-badges/user-plus.png b/packages/backend/assets/notification-badges/user-plus.png deleted file mode 100644 index 9d376d04d666f856fc927a82cf78ddadc4629e8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 991 zcmV<510ei~P) zYq6_95QJL-5|Ds|NH`LZ5C=$z1SCWP5|DrdB;@{BwnF6sS=gQJ3Cvg3Rrzs}Gc(P; zcr1Wn7=~dOhG7_nVHidM;11vcpaakY7$@}ro&ehEZ%R&x=cfSB;9dOJ4t3LajRbfj z_L{J!N8a$y#SOrKG)Bxd0{F|9#yPknU8`7=bz=b(a09ZW5uf9Wu|ZBV%#<(Ok>3oj zdxrdeia*GY8Q)|B{X_w`zF?a1f;%7#xY-Wd46jBwSM?O&cU7OQq?AlpJDOUDwGy}~ zC)r5FxMU5bjfu|3x46(^c2inEl=5o=snFbI4T5=Bfic_!V_2jM42+>(Fz?Xmej^yeB9Fkp7-|Lc zZUSS-Zb%&%7(e@`s#d{x~ctiaul-^|f9pOyx8#H&KBA-WOrVxB_mm*?#;VKRffA)<|~&stoZa9Jxu(o3m$Ow`M|!dboq7Jd)@JDhw&$ zl1q6iD+3gtC)xq);he(s7fZH0lyGh)JE1a2?O|r&?5R})X*v1l~l$QG#1S} z`mjXZNvK^3>dK<-By`1<`8Rb@6^&$A3F^wC4(w)#GDFzOYZVQ4;#x(6ow!!fU?;9s zG}wu26%BUcT1A7MxK`1)(hUuvlHT5F6T4FQzuKsZMsiyS=<1@sI>}BjzNKQ%crDv2 zv8C$mJh@*8sZAXenK7q^8|cqI`o#FPL4 diff --git a/packages/backend/assets/tabler-badges/LICENSE b/packages/backend/assets/tabler-badges/LICENSE new file mode 100644 index 000000000..cab2551f6 --- /dev/null +++ b/packages/backend/assets/tabler-badges/LICENSE @@ -0,0 +1,24 @@ +Tabler Icons +https://github.com/tabler/tabler-icons/blob/master/LICENSE +==== +MIT License + +Copyright (c) 2020-2022 Paweł Kuna + +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. \ No newline at end of file diff --git a/packages/backend/assets/tabler-badges/antenna.png b/packages/backend/assets/tabler-badges/antenna.png new file mode 100644 index 0000000000000000000000000000000000000000..013c7f4e61cec955ccd453551b9c056ed9ed901b GIT binary patch literal 516 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 Hu0mjfq%C$X literal 0 HcmV?d00001 diff --git a/packages/backend/assets/tabler-badges/circle-check.png b/packages/backend/assets/tabler-badges/circle-check.png new file mode 100644 index 0000000000000000000000000000000000000000..6464d5133cc838edc4f68f9a98e711b0fae44fe5 GIT binary patch literal 2307 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 literal 0 HcmV?d00001 diff --git a/packages/backend/assets/notification-badges/null.png b/packages/backend/assets/tabler-badges/null.png similarity index 100% rename from packages/backend/assets/notification-badges/null.png rename to packages/backend/assets/tabler-badges/null.png diff --git a/packages/backend/assets/tabler-badges/plus.png b/packages/backend/assets/tabler-badges/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..f13a86f4cdfad66e7b19b22d411d86335cf21e3e GIT binary patch literal 414 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD0wg^q?%xcgI14-?iy0WWg+Z8+Vb&Z81_s6e zPZ!6Kid%1IU*u{s5NY$jC-#K<3!81F5QYqLmW%IuO?NW=M)SO%P zH%Ey>u|>d%qxPa#ZrIFUfA7Zpe0OL4)jS!a>Zjdro~np{^^8v9J~+L8s#{j+V%=np zbypUP)lJ_0YuVbxsto0C^Pl{&`S1I?>YCg}Bjue&+k?I^aJ^+rh-=uy9>4^2Co=f3 zo?$h^?jI`h3{M_i-u1C>#;26-9)~49TTfdQ>n6@A{`lvNEbjknz*nJ)Vx(J}Gc%vXtA2hxx2JR;$9D&#EljQuS_ zKLlsbcN5+*QT2ny!~=(A{<9-H0K}dl+7Q}(nrTMdkF2_vg-qT1&+700&auqgp@QXd nbigjjlONO+KmnroCE1oiRCd9k^K*jqK^i?>{an^LB{Ts5&U~dD literal 0 HcmV?d00001 diff --git a/packages/backend/assets/tabler-badges/quote.png b/packages/backend/assets/tabler-badges/quote.png new file mode 100644 index 0000000000000000000000000000000000000000..e0fc6f3fb42884f7a7a1f94b5706a4b2a2ea368b GIT binary patch literal 1011 zcmV(Q|5)^0@B1qJP!iX23L@042knHdwh~u-F-8xe%$SsHmu@sHmu@sHprGQpjj|bG&4RikW?i+$%4Rr{`xP1)5`rmgF{cwKBXm@Lr2QtI?f!j(6lCUX3m5nXY5&SmjI6-B^y; z|2qkAS{w8*y(>e$LvaM_zd#=u6FB>=8}+XB2{?|(fTJAN;!&eRTdBcsE7r#-Ugvlo zHvqvA88FAto?`R4MT?A_AA0o6^IsPEmw3M>|2=L1f+IAbkqJy2U}MC9={b-YXtJNe zXXK!nC^0|MZ}JRCI3NSuJeO^NKSvEv1JnRD;6R4a251Hv`(p+UTq+?+!qN;taB@qh z(+ogx1XALw;(ZVqRgB`~a->XCjN%9nl@*V}_&CKVjp>m}2w& zUa;{{98a0$>)z05*R0$J-YXZy5yXwF^gFh0!^gkx#G^Q#Q*OL=p1zLw?YY;+Lvg%Q zYvY;gw%QX69YKE3IcLA2I9`4)u~M_Kj?q*5Ha$qZ*?sKfHx$Ry?=w+UI7JWXi;WaX zwKY1D897iK@8KKVNxDfd=$oD9_R!%xuWm9gkIXI52Akw3#*uQj@AqPz?dIrs!bgFZJR#OT{>a?T6B)r zD9#jNbd$aHmLAcCNLf*IaG#zdevp-U6%Ueu!X9$Osf771O|@209C3AYKXFu4R8&+{ hR8&+{R8$VG`~!+s)<=HFD3t&J002ovPDHLkV1i|W+1>yE literal 0 HcmV?d00001 diff --git a/packages/backend/assets/tabler-badges/repeat.png b/packages/backend/assets/tabler-badges/repeat.png new file mode 100644 index 0000000000000000000000000000000000000000..ab548043f73bed11cce7cdad74a8f7bf0ab2fbf3 GIT binary patch literal 1206 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 literal 0 HcmV?d00001 diff --git a/packages/sw/src/scripts/create-notification.ts b/packages/sw/src/scripts/create-notification.ts index 4b006e0f5..6744687fc 100644 --- a/packages/sw/src/scripts/create-notification.ts +++ b/packages/sw/src/scripts/create-notification.ts @@ -3,14 +3,21 @@ */ import { swLang } from '@/scripts/lang'; import { cli } from '@/scripts/operations'; -import { pushNotificationDataMap } from '@/types'; +import { badgeNames, pushNotificationDataMap } from '@/types'; import getUserName from '@/scripts/get-user-name'; import { I18n } from '@/scripts/i18n'; import { getAccountFromId } from '@/scripts/get-account-from-id'; import { char2fileName } from '@/scripts/twemoji-base'; import * as url from '@/scripts/url'; -const iconUrl = (name: string) => `/static-assets/notification-badges/${name}.png`; +const iconUrl = (name: badgeNames) => `/static-assets/tabler-badges/${name}.png`; +/* How to add a new badge: + * 1. Find the icon and download png from https://tabler-icons.io/ + * 2. vips resize ~/Downloads/icon-name.png vipswork.png 0.4; vips scRGB2BW vipswork.png ~/icon-name.png"[compression=9,strip]"; rm vipswork.png; + * 3. mv ~/icon-name.png ~/misskey/packages/backend/assets/tabler-badges/ + * 4. Add 'icon-name' to badgeNames + * 5. Add `badge: iconUrl('icon-name'),` + */ export async function createNotification(data: pushNotificationDataMap[K]) { const n = await composeNotification(data); @@ -75,7 +82,7 @@ async function composeNotification(data return [t('_notification.youGotReply', { name: getUserName(data.body.user) }), { body: data.body.note.text || '', icon: data.body.user.avatarUrl, - badge: iconUrl('reply'), + badge: iconUrl('arrow-back-up'), data, actions: [ { @@ -89,7 +96,7 @@ async function composeNotification(data return [t('_notification.youRenoted', { name: getUserName(data.body.user) }), { body: data.body.note.text || '', icon: data.body.user.avatarUrl, - badge: iconUrl('retweet'), + badge: iconUrl('repeat'), data, actions: [ { @@ -103,7 +110,7 @@ async function composeNotification(data return [t('_notification.youGotQuote', { name: getUserName(data.body.user) }), { body: data.body.note.text || '', icon: data.body.user.avatarUrl, - badge: iconUrl('quote-right'), + badge: iconUrl('quote'), data, actions: [ { @@ -171,7 +178,8 @@ async function composeNotification(data case 'pollEnded': return [t('_notification.pollEnded'), { body: data.body.note.text || '', - badge: iconUrl('clipboard-check-solid'), + badge: iconUrl('chart-arrows'), + tag: `poll:${data.body.note.id}`, data, }]; @@ -179,7 +187,7 @@ async function composeNotification(data return [t('_notification.youReceivedFollowRequest'), { body: getUserName(data.body.user), icon: data.body.user.avatarUrl, - badge: iconUrl('clock'), + badge: iconUrl('user-plus'), data, actions: [ { @@ -197,14 +205,14 @@ async function composeNotification(data return [t('_notification.yourFollowRequestAccepted'), { body: getUserName(data.body.user), icon: data.body.user.avatarUrl, - badge: iconUrl('check'), + badge: iconUrl('circle-check'), data, }]; case 'groupInvited': return [t('_notification.youWereInvitedToGroup', { userName: getUserName(data.body.user) }), { body: data.body.invitation.group.name, - badge: iconUrl('id-card-alt'), + badge: iconUrl('users'), data, actions: [ { @@ -232,7 +240,7 @@ async function composeNotification(data if (data.body.groupId === null) { return [t('_notification.youGotMessagingMessageFromUser', { name: getUserName(data.body.user) }), { icon: data.body.user.avatarUrl, - badge: iconUrl('comments'), + badge: iconUrl('messages'), tag: `messaging:user:${data.body.userId}`, data, renotify: true, @@ -240,7 +248,7 @@ async function composeNotification(data } return [t('_notification.youGotMessagingMessageFromGroup', { name: data.body.group.name }), { icon: data.body.user.avatarUrl, - badge: iconUrl('comments'), + badge: iconUrl('messages'), tag: `messaging:group:${data.body.groupId}`, data, renotify: true, @@ -249,7 +257,7 @@ async function composeNotification(data return [t('_notification.unreadAntennaNote', { name: data.body.antenna.name }), { body: `${getUserName(data.body.note.user)}: ${data.body.note.text || ''}`, icon: data.body.note.user.avatarUrl, - badge: iconUrl('satellite'), + badge: iconUrl('antenna'), tag: `antenna:${data.body.antenna.id}`, data, renotify: true, diff --git a/packages/sw/src/types.ts b/packages/sw/src/types.ts index 2e23de8e1..3b35de407 100644 --- a/packages/sw/src/types.ts +++ b/packages/sw/src/types.ts @@ -36,3 +36,18 @@ export type pushNotificationData export type pushNotificationDataMap = { [K in keyof pushNotificationDataSourceMap]: pushNotificationData; }; + +export type badgeNames = + 'null' + | 'antenna' + | 'arrow-back-up' + | 'at' + | 'chart-arrows' + | 'circle-check' + | 'messages' + | 'plus' + | 'quote' + | 'repeat' + | 'user-plus' + | 'users' + ;