From 66d896cd3201ca2b80bc608f7b95ae11d97f8fb8 Mon Sep 17 00:00:00 2001 From: KaBanks <20971850+KaBankz@users.noreply.github.com> Date: Mon, 23 Oct 2023 18:26:01 -0400 Subject: [PATCH 1/4] chore(flamescans)!: remove flamescans They have permanently shut down due to impending threat from WEBTOONS --- .../mangastream/sources/flamescans/Cargo.toml | 12 - .../sources/flamescans/res/Icon.png | Bin 14370 -> 0 bytes .../sources/flamescans/res/filters.json | 374 ------------------ .../sources/flamescans/res/source.json | 29 -- .../sources/flamescans/src/helper.rs | 74 ---- .../mangastream/sources/flamescans/src/lib.rs | 59 --- 6 files changed, 548 deletions(-) delete mode 100644 src/rust/mangastream/sources/flamescans/Cargo.toml delete mode 100644 src/rust/mangastream/sources/flamescans/res/Icon.png delete mode 100644 src/rust/mangastream/sources/flamescans/res/filters.json delete mode 100644 src/rust/mangastream/sources/flamescans/res/source.json delete mode 100644 src/rust/mangastream/sources/flamescans/src/helper.rs delete mode 100644 src/rust/mangastream/sources/flamescans/src/lib.rs diff --git a/src/rust/mangastream/sources/flamescans/Cargo.toml b/src/rust/mangastream/sources/flamescans/Cargo.toml deleted file mode 100644 index 5d925f8d4..000000000 --- a/src/rust/mangastream/sources/flamescans/Cargo.toml +++ /dev/null @@ -1,12 +0,0 @@ -[package] -name = "flamescans" -version = "0.1.0" -edition = "2021" -publish = false - -[lib] -crate-type = ["cdylib"] - -[dependencies] -aidoku = { git = "https://github.com/Aidoku/aidoku-rs/" } -mangastream_template = { path = "../../template" } diff --git a/src/rust/mangastream/sources/flamescans/res/Icon.png b/src/rust/mangastream/sources/flamescans/res/Icon.png deleted file mode 100644 index 86f5deec10e34756d7d34f5fe4930a74721bf1ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14370 zcmY+r19T=qvjFv@`UbYnPCTTf z{}lc2@jv5qGB^1@O*W4IHS5bj`hQR88R;14|5x@GEBC)%PB{m2<1fwsoc7?Y`RRAZBFJAULutWxWWhqF;4`2@3D7p9Y1wP50Mxuy_Ct|g%P zvqB+tmE5ssd@=4mvBzJ@ms?!ne4>J8X{Nd65QV7d3{{{9EaKR=if*Dv1;?{mja@T$>!3byn|*+wyy-UkGze zVE#x4LQG%*xO~SvpX=870ps_@7$p@hEI+6O;P6<($~DLW_u+m<_@s3|GW*p^Bsk(h ziC301?VWg{;{-oN;uTZ_g zVZ7V!THySkwfuBfH}maO*x1hyUr`l-fTX3fBP>qeux#k%ULv>YJ5!dPh^wL}lv#B5yG@BN6-`Mm3S>`wttlW5?#uk`OEkV@N9wz%VJ)L>L?dQn3d{O(^piCoYbrV(PL<@ zsWEWX%1KK}|J+pAy0f)0FzGGeaoN^%x9o^yE}#2&v?*ud@kkf-n)-*B7o}=12+X-e zcXi}ft^Ts2agclM%`=wK{_LdqC@ouP+<$PSr*=rX$B3CM`EAQsjdZbm*eoh||dXI9v1BxAG>Dd3N)+ zIn(@2lwhfN)Q*}Kb&EeQtt9+;201bqZILTNY>kbjHbrql_HC|;Y(+x+vJ_Gctv{(r zEG#VxM14ZDpEXn~6EG7IN3*V!nFMhT)K`;RAZgG;e#-G=EYo!NM*?{@+4&a6Zc zG-kz8O1;UYVl0DA&SWx^wyNXd5BK}s?9EO%{YY6=r=(0Pd~Xm!e8=O4=EJfn(Xw^Z zy3t&*0+Yj@_;DU=f!};dHgjN7YMs$=Ui5ITC6LlG(_OIOFL4R(k}m8ImEIgWscLVb z^LWN`MK21NEpcS(v5hIm_0d*%o$SlVUNq=OPf#AhdTY*s#mIFDNT1y@rl%{383vR3 z-ir}ydeik*XC}u3Y4_uTE2^6N#L99`F&1J*#6PKO5!4+d#3e#Hu! zCeA72S$(p#&G&eZxE`w66wsifk~(PM59Kxb>F;?UV|HH#j(ogcUgrNcB&3aRRXR<= zVK)9a_lbqrWLKSnE**?=MV&Z?I=|ev3tXWxR4aP4V}V7c_OIfGgx;zX4el&Y5M(MsAl*wcO-55hDh^>LX(hgEDvPIXZ_y-z_W;J|AY$ixGL(TQ#k_$TrzM z>wy~&V9IBOPc-++~=fWI0MOX89`Rbciwvs^Aln1JV=kw$` zw%i7z;Q+fq)6tkOArVBD8fNm(h`Z_fX;VG~RM2CkqCVke;TG`D*Y(ShBHsJ&%kGC6 z>vjg0eaa4hGhBzyJ~<_1q)+or($4d%t=uEt`88SR9%3J8ctufL2gTKDb}E4nl&K(~ z&$Nb6Y>Fh|WS*1*#MY62EbvYep6I2z=+mk4I^8SpmYuOo?aN4YLgfqvpNQU%#BL7K zY$cVH;1kEK+&1Pa)Togg#ny9cN4}yHQ-}Y6L81G39d{ zuJuj9Axnu22|__}!1ospo}LYgFyvBy*XD{o5{L zU8A@}X~P;6D-KS3Jb$2w2>1tvVAD2H{RHJ{)x;+D?ZeI96P>*(-}U~8T%K|Cs*C7& zkUajJ29w;0@si`d4)8kU+Kl~rf#*V{Ja%w@9`y+nB`*ZzFx-gs=1t}wPv-^GXf{eu z@V;6VZEt$rj{EPy%#$SWp+o9;cnS&qj)y*C?yhLspdKV}O`pY+W^=pDk{i~f%p#$k z)rmWqUX|1jJ%N}X^VLd{@yWF=W6T(FanHrk?vZg@@t%)QgM7w6~+y@*`mM2YMvg?Mw-bB{5< zjqmYhjn8l8q!KGF+2L{#pcpZRB$HCkWQjt<^X^&Sca$&;^_tDB@0LS0UsHCC-+p!_ zZE&3*>0nQ{3Xj+FJrB$6?ZwL_9UPb}Ta;C3U5-k!bV(-ek?`$gnG^6}@WXb4Q+i!E zUf@7p<)k~j)hGNu2MiEaV9IQ~MlesrEb97bmpT<^zv*yU(XW0!P@8jJD7BWq7w$pc zUpCL-TkCciV7!DMf_e$Qew2%A_mh%}^*T^LXf_-^`ah{^QAh3$VuV)FOJ8z|4GQ5J ztTo%qwiQ9Gv~SvScj4M^195MIXGD9ki`3clsG+3O*{4HK&zm+kc$iu81<*~kJT@Y8 ztSdEW(h|279KK&>eZHA0EXsc?Uc5R7I@hoeybhD1!Ji#E<+G=+oPsL&F^J_&NTkLp zBM#6gzz3A|EIz!@n5WyNSiOdaJ6QvjL!Xq2WD}KSIr>9^A<-omjA^28W{eN%iGU=+ zWbQk!!o*+#7qt=`O4*dHxaEl6!Sh$`T&7PoAiB=jf_QsiE5CC$2-MKK#WHz20L@I( z+V#0$<}k!C-+DkZ?zE~b;~bT`VF+*@f1^AAun#CA-*M`NSOHEF42(3!W+GjGy~@JR z!5a4iQ3R*B-O##YgrATLz7q6C_Br)H>@Xaj&)KYxdapA>qWIL(Z14LrT?`Y#{JczG zM*r>clNaN_8)A309DHuKYL+7g=Hsj0{SD8{`xL$Wh_=1Mnd*0&8CJ_yrQAFr8kzN9 zRM8-D(6&FPb^1Y(lsak_Jq$ZL8FmT!d_*y5%H1PEk3iLlD+P9Y;_Z6uCUmMoJMRkU zIsD@@`!h02;RREmh`gq9^t4G}sK0Ms{RPKvKWP~IuwY}~2_f6N^!fA*h4HZN%7{pF zsL+sXkXf|kIq}d~uyLH#+ziQ#U57=mI8q>!yUnsq{vcZJDn36AXFBkCKh>p2$-;_8 z?fMaU+$0ViO*EiI1csp0`QJd2hrPQNfN zWxr^$aiUToscCPY__;_1&IUw5X*&jM zPrX)f@sSGq5YI=4*3!Wq#76J2Hnk`IC=;L5KhCMAc~^mbK*im@{{Fz=($k{AttC9< zrna-%@YxY-ki$QgmG-+=aILA}dNsp~a=Fdk?bFQ;S^A)ykWwq%9Ea(<=pvZ?u$<*l z+|R-|?9VLb8I`lWz}9t|D3}qNW&_BreQmIA=hjSJc|)-Zcqcfnr3V?yj`PM4JV{c{a{T&^PhLX-}_%5R}CFPkVS4VHv&K~<43G(F^lXwt~IF0aEhF5j-B8A|yE!%rR6|`M8z4vY_<17%|i zn^YbzD9D@_(I1A}C4W4qI6)=M|I$Ey-)!3gWm|j{@kts8 zky4Ui7iNjfDp=yAU|^8;RQdhj1%_!1ND4T9hulvxf2Ow2Ggfd#H_1oCGyJ$K;^U}y zy5ns-qv@spY}msZb3Vih7ZTtH&kylIR+#{VNUXPNFSd8Ab{|J+l^o^HBkzNHqHM7`ngRsyI&D2@rH_BZyJX8Y=`N^`}c0!rtnv%q@ zd}w6;SQ@_^*9JYid+`Z@6dF8yPj^2^wXsMc^J5yk+Koyau;-Fm7!Gt!uHMg4@UFRX=|~&W5Y7!M`APfEGvE7SNWiv z=?x7cCT^fnN&tg2m>Ps!0A@)b)V1ITPC}-@V{RO$8LR@E02{5T9=A}>irpDF*=37bEq#e%}vgDQpC`KzUFIpdxG z`L2q3CHMg+I;(=?pP@GS@+HI z@3;trvXtR{L}vfO`BD02mGlZ6W&dEmNG}N!&)aR*XZz`L!X!zQwNuF=rmK7sskf@sss}yPZ(dSraCUEUM1AqU6oGr-0*`{0_0pzJ%<~TU+csG=H=Em z6pg%yC-U1)Gv+O@Te!^g>SKz^93dW^2n!3A?RxSUKgEwF;`H?hL{3VMUJxV#^_h(5 zImGMpb<-6UVKn=D(?(fBdr%oV@@}YlduDHAFdo95!HSoM<%EL`YP+T3{Fu>K3K-9qcZsr4e2PG&o_8M)N%X6fYlz<%O+S|r&AWh>|YU;+1$WvlX zRrl{R5*`u2s3_-tjQ(=7QAJS4)>)`+rmdmqvU$15&N8C?fZu-r3qQc9(+U`8X2`!L zb(v+d+JA5S$=k3E2p`P|;^LR}er9^{OCDNC&;6~rTpyTO%!d$stjhNO z@yK+!?yCJzsuRhy6(TV)33KW|tPT3*Tm{@I7%b(#)}D1iEj(GdTDTLnJr7L?2TfM9FUOLWW1#Q`TGslw+3^c zel$Gx+jnh6FGc)&;th}X?=qNCaQcJMM3=H3b~e#U{J?fbWTC%C>y^MM0Vob{fO(vX zY4Ff%e8Ps5%1zKraF3Pb(^M}~8=4rg*%X>chjSM{aJtQ-PVzyYm<#ME7fkrF|WH=G~x&S8hK*z0w5lP>a;rim0H z;wpboE}E#a&BfT59qc6&UvE) zgaJ?o>cUbZ>+3g41gi!5zI!MIOGcN#O2?g$#86lZ4<=4uUIm$6UAQ32*)%(}v$N(z zArChvFr(eG^_*RuS>p32FvYY;{CIv$0n1WX_&@t&-g2R7bfpQfk3fquT>g|%DxM{2+Sp$j2|>6==%>hLx^B25A~1)<%p4`7l%iel2L#W& z=(EDxr7T#{^Em&|*^P~N@)MU+Gfqb^G5}<-w>_5O@yS+c(8`84hefV713YjN>$2da zpLe^Ysmw98?Ahf%VkASvRs5Lg!j2-4uR(+eyPeXmd#q28=d*nW^m^UIXE{-+sZwE; z^Gv9jTGO_x4 zXh)Ea9>ar?&pL@EU+yad+(`Hr7XnTQ5)&z&e{B-@P z;-PCMs&`yo&eF7Y$IE+S>w;*eFJDxLFMVH{P;!yv2U0A&BWI7XL`~sc5WF&gu(X3v zZ6;{E(``4{uj!UFAl@s&Eo=;}r$hnXyE90Np?Cd6!fKKVX(1(De|W5?;r&m3Bhc*n&&oq; zL;+IEF>1C({LwFyhS$@?Q));AwG=>kEDipm4r%4iS1hD9lob^2782%AACDSWpk0=S zQzm_f2P8WKzMfNlMWr2W#tFToRwQkwm2EWYp~MXEN>b>5>tECknw{*o_v$=wqSzM; zH)f0ETopr|e%>R@7-U;{gQP0gAm{lbcGBS@!o^IwnWQB1b}RT0URF({ zW23=Wb@_Px1b$#rnURIOLCdm(-!9Tmo~70{ z5w&>oh~9PzX}h8fphP#hXOp4~yLfpZke!#zTdB#*pe0TgKpE=>h`{NMSLY}eXcmLm ztg}Lf$bxA52k^DauStp26%<77T5k`X|!#}`cAn?-ZHi#y;12-Cj~!eei~17R=>^@M(7 z4DGJiIs(H-fwFnuB?`ppL0^v@Wpp5qsPJfYf!m^Hqq^hGsixAw?k>z=-_%+B5 z7v?-m;Y(_d%1>(vi9R-=L9C&Wd2V`K*Q|b%Uy!p{H~jmWNboN*wmU#6W#_~|2;}-x zEIP6-4ckpLQkyCe>m;(^3}MR?45*Pzbrb9nMEtdwveJzW`fZw!oxVk~pJ%8*1+cRe zTsc8j=cCxvUJp_SSOQ1m`p5s!Bd|%EWAW&>HAUh#ekYf*ZOF-Pva$SJS?oM0o%CNM z`nZCkRL~=J)#3{3HVP>-<=D127dkf&tD+BGH@y~5m-T6KL+?q$#;nl0<6w03BzLdf zladnS?lTpl+-1SzRXb*`&b;&i9kBajX>MQP>NtGsym&mmL9Nit23;ffLM|R2eXzcE zoVOpCStkX!6a>W`7M6oHS5zyW7CNrWuY)w&9(>b!?Mbr9)Q2Ci?al`So?L!H-~P3; z4@tNL=#lh&*p6)%{p{MWG2N62yPe&RmcqlD-~#;ybJd2V%ZcO@M>6Zc5ErmYgFrPV zJ2^$A?u!-T8EW=X@5D=o>$~2j_5u8IgsogY(0Mv3PS!{~s6E}2w#Lu;dq3N0@W2|| zmh6n25qwy@skqTG#}E0G*{X}rN@g2jlignOud9~~+qjS%UXFI9Cb(sP1HgHD+})EyR|4*Dpw1u(={ zGb80k`X?^VUzq_tqk83d#=8SSt&o#9cD&g#K#pYokac+lGVzy?6_x98VYVWqw^F92rk93%|X~iW^P6uOt!M&9}1{^Pp0Miyfp9%28uRF-~u&v5` z$8?M!mj@{uRhg+Imrj36F3C&69D9+3C6`D9!5@dgrtTPR$#v74U_0b7)XMxj8M=+W z*5yZqt@kJbGd#sZAU~rF@mOXH`w>coMwGZ%OEv#Mc0N)LP`aNa@u+kG( zc1n+DIzh(>z`d70clP~7T9B^DLT}lns24$5sShm%N|K~Lyjv*O?Lj5|HxM?(XZdpw zh9ulIbBKt{iF}EthlS?Dt^l8Zx!qA~ohDKW{~2ur4Ytlo!ajc+Nal+nd3(rq)D&-W z+K+;3ld(t<_M8Xr3oZRLZTa$;v`|!Z^31&MxPj;e{Z%spk?0Lyn!F)zF*mOP+Q-g_ zV|Y`Z)FVMa3#$LFc`}r0FMnkI(A3iM7QD`Ha5YSfX#h>~&w~M`e5e< z{vjMm@ip{y@zEUBSib5}eqSlo@tdVZ1wc-r2~=2z8^7For-T-XqYvl-k(Yyuywj?b2N^yw04WD&u{ z!HJUL=J@P|zfvMs1ugLX0Iq=Xi5dk}8aBGjlEu5n6SsLU_}V)X--y=Av7=Vm3IoU# zjTTF&+2Zg1qTS6{jqM7HHzK{enbu2xZIFm>NO*A>p(r`7!R(}PU~?nia~$4UHQG@Y zcg|At4z%`1rVNurRplXk;9aRK71Ik2z1?knn)oz)Ds(kwxERlfnTKjhu0#%?J3)p4~})>PPWU=bF^nnS)OF@>-_7m@Z~0bSp*(yg z_xsORDBhIcF+nK3Vx`=mje>F6?7ECSn3e7C^mzXHQB&nr4PL z!j)JMAZkkV!^6tNJlyTJbwQY*Td}Jb;1gQBxiX}#`bAoK?k3ImXEPIx!k5B9Nq`5j z6Zn8vYx7Y^P)tPx&@8ahI!H~v^9e`?+iSJ|vR{817JD>C)thMbn{d zdbG>+QEkxJCj}i-4)z1c1krWzV|ROov(T~nC+nO!=~`GI>@qeyY9F49@-38^SKO&I zi>j^Qv%$aI|DN`9PdEj6dfwpJNTX$;iFv>eV|X_j+oT|0kf#;Qq)wuf3ZuzJ-Oqh~+msXf@`1T!LIjJ(>C+7ArEROCnAcAaN2*>9Qax!ilHyi;u zVbYsp@)UtW3t}{#D0jKpwmGjd(XiR=Th^zQx!2;3b+mv}NR1mG(ns@EeKQrIr|7dW zw$bc}_;~=o&f(|iYE{f=L)sawcU)QzAg1NLNtR700-vnRwp~ZVDYicq_ovHOY1-k* zT|y}=4wgKs{y|F0@_PCXIidkLmJJYVJ0pcE3%=KLM8KMSsAJfSEPUL(dWF}spQ8u2 z-_EI5@3n&LS#VuNZB(J?IkB{fEiLp*9rPKIQb$}s9{{uVn2f>=P}5P{MgT+hrJYYl zZ8XOT$_V@O%0I$F-g%nHkMnB5M$7&v{1P#^tgj{{m*?(c2c(HZjCj3q1_Vp zTjJrAGSGS+E|m5fEiEm}6vL;tac$uP^y+PN3AC)`G>}uXP^J1&iNDxBbyQ@%J6PcD z9FnfFC+gQZ5<7{XYxhL%NSwb(r^vTntW)aYX4boDjLl%{lqJgu!89>+1q$i!_r03u z0S!GWJFBd9;WgeLoYbG&ES*bv%W1BWE^e>^aOoC*;lZQ`fqfOMBoHYGcBPQL(ldfE z5JBCzoE6(N^v72CeN0$QtAlcv$+0R?M3-orZ;iCveE^`&k4@Lvo%ebLzK$#rhQ`wC z24*P9_`!Mr^D zYrE~Tww6iTC4_!EIEWEX&WOFU8WVg!sTZmtpjp^iEOe_<`c_~IsPQ@&5C?=Kwm~F< zwq$x6Z6_`cwQ@KT_~=E}%Al$3NyDo3{=pkq;+UIBp0(o@$i)t=%OW~F3>|p2-`mC^ zo5Qnh-tdLx2Mr1n%o- zk5pw$19nioYc`x-B;FXS^}Z~#qME+FO?~X{j5_39$o=c}e0DzVKUvODET6ZNd_M6tQp~i? zr#9;Mdt{31N;lBmk{`32t^3Gj ze!#N$bkS)W0{Z)kcE5I`Bp0aaeuw)6Rx#5|87@gpV$ve24rte$sP;i;Hh@T&a`_iZ zr|#rS4-v)$EsiiRR-pmm4%47Frz5{1_eX^c7DNWA-i+xZq4RaN0s}6Dz*8LPm6_jq zbl;>!x|sTEG5YzjG?%l&u(OL{txgIU{Enh>)U$ZCRmwuK1^{vxL36>3C8+%3XR(=JI_yV&1UVJx5I|HM7>COGVo*QR+G&NT0pH9V9?Kl zw{%zb)ABk=sdLM@J+52J!{ZfC+xI*5{je@+nHUg^+x+s}BC4Bx zTY#-**iSOK)w>~Sf_khAT!QA_TH4o!S2dHX_Q8zS18Gd{6LVF8jYpN`r6d+mNB%p9 zi&a!0R3tCAN(Ik2e5&Pff2hWI=(5&n9HX20q%#0)8OqUuYYyZK(a%sx^$s>yV2dl+v{IDMZMMe z6S9^msmzgMHM4*(<$8DCjV$u9bF67QnxT$W5NO*xM2&>AmPT#@1SCN2QxI{zy14X1a z!0|W|%97OxC{}Ak^p6r*M1@qJ>Kx)>hTQe9y%sjXXvTJA!#hwPBy|()zankNTVabf z`G@Sl%ocXqqCu!oaw`>X%|3IO-iz~$pX(-DZ0~05yi(&ex%2^<>dQBHb5+$SJeFi+ zr83LlNR1Ax5u^mt5qPp)_-`tZboYz|ppjWZ#NwDe-kQJnLw8E=aCXS_e`%u0g8`B^K7+7@hCw5zm@yJ6bcT2Rl@^su<#uc?`rU`VFG?!8%*SrkT%Pq1R-VbB`Ui1I&LWXv&2)4S z@7zLVVSXB=c4;ne9vTIdbXtjoyilVPt2;;`fo(*eIgru6W$P#8-?331KQFeJyE&ww zt69<0=|od>-W2%tkW8O2LbDnKqElz8l!pdK+$9p-tVRk3Zuu|pTMAW*&D-2R&Zh|T2w zMIDNt7ALecb3!dRD+9)Kx045k0P0+6;@__lt9NYS(ss-A1;8NA%z+srks;lBVaL|$v9ldyd1lhQo@V8nz#(V37RP{)2FO|<82W#B7g#SiO-H8< zH$#2Ucq8%jjoYUlluy?@L|d?CmKzdx6AF2dgyr7%HIt4|po8<*H4#E@PYbYbm>4I9 zGgsOGo0n0b4G+=rxb)n}K1!2y?O``Z28k@NUelTmHP;=Y?+C2k=X+SA%fu2LWI770 zuN9ALDrFj5Zdq}>p7i4ub}Azbd}cB6Ee8JV;7Pn9zT)@4f7;aE$Vm6RtLLQ zSfjV!K}gpqkATx>>1!*AVq|hvN7IwW%GHNjQQTXKdzW=jmXy}y-E6jGf2p% z`v8=Pm@E!$$V^}%OV+LPal^V>Q-YOOw7*;L{UThN6rj)n9%k%5J|qp@^w-t8!|bcO z5YP&_(J%fV-WQHZBT7IfaUC@#)BH+XaIN?VFWLnggi5Wj>!^;Yk%9#nE>+hx!jSTfg3F z2Yh@FPT9}@`DRZS5O~$hdY;ap?~iwAKg|Un1BAQu4Xr6T2R zF4fq-HiAP87dxv1){*T)H0-$I_H2N2H(zJGXI>SgbyS{XxEnX|t3RrOafqHwF3nz$mtQq21dno5`^#7aQ0$CpWvuT3RD5@)cUM zA#a={c;-(M%kgSnB{{+|_#wgs@0)^aq7qhuh=hOd^fm;Ptt#5dZTaQ zk<;3d|D-}k1U5`jvhUmRW|6Jn&*HAHX>pdBIxki0<=K3YX=376@4JwX90H4wFABI=r*bF2bhE^x#`b6)f+>iovZ$d&_{KP@`xOx|C)nM7<14h{ zu9KZ~N_dT(zB-pB9Q{3tKu~sH=}+My?|ALZHuPsv$1b31X9{w)snr}RTGzz&Y1F`1 z2E5R0Xl7hqQ2plUkn@y$u}t8ml{n7UUCyFmXhT<7l>J2fxNVj0h2yoNKx1&9T@S*c z;sl(g^{RonkAoAm7Zex-BFu~Gx8C{G;+ERxT7$hpF-G!+oRP+%awK1Wm+5Kz?5x@r zKig8u$y3(Uuy=PQol{VY#+7r!DyDX^y#cnWiPy6C^X-6&HlR+~Xc$er!1+``$q0Pl z8loSA7kxk{UM{}S`!SZc?eg1w>5sdq@2ZJmPvanKy-flIqpgAAMg@p$qgfsrD!R9y z$~8YWGKQYtN(Ug{Es7r8)+tNY8aPU)E7*A;k5t;Pha{~PZ~BT5`itYf-Aj7BW2l^7 zs$nkBA};CF~A-z)#fgC!3MIo>8=bii#s_yQJa~Jq;XbJug)myiM0wb)Y_w zQevpk$dQTmI36)BqZ71NE^z3LSgzgfFS*z;4zX@HL>0Z*cJx>i9q(O|wf*!Jd}Q!# zkS#&sgh((Lc@PdI3`E3@U{W785HN4C6PmGL;@MRq+f!`_Jz{qr=x-?bbHJt=%p1wz#{uwbwn`O(N^_ zc~Wgqx6rov)phX8g^~A5fyRC8Eg}Cd`j*mHobKTjB#4XGxD`LiUjqQ5hXZ~kAj9ts zKFKYpx_92IhDHK4q9?59D+p>!KO~&&T9?=8;rmYzRGzVQ*w!cMe?Q7eh{y_83hMd) EKR<=SnE(I) diff --git a/src/rust/mangastream/sources/flamescans/res/filters.json b/src/rust/mangastream/sources/flamescans/res/filters.json deleted file mode 100644 index 0119a9df8..000000000 --- a/src/rust/mangastream/sources/flamescans/res/filters.json +++ /dev/null @@ -1,374 +0,0 @@ -[ - { - "type": "title" - }, - { - "type": "group", - "name": "Tags", - "filters": [ - { - "type": "genre", - "name": "Action", - "id": "7", - "canExclude": true - }, - { - "type": "genre", - "name": "Adventure", - "id": "8", - "canExclude": true - }, - { - "type": "genre", - "name": "Apocalypse", - "id": "55", - "canExclude": true - }, - { - "type": "genre", - "name": "Betrayal", - "id": "190", - "canExclude": true - }, - { - "type": "genre", - "name": "Calm Protagonist", - "id": "191", - "canExclude": true - }, - { - "type": "genre", - "name": "Comedy", - "id": "18", - "canExclude": true - }, - { - "type": "genre", - "name": "Coming Soon", - "id": "85", - "canExclude": true - }, - { - "type": "genre", - "name": "Cultivation", - "id": "110", - "canExclude": true - }, - { - "type": "genre", - "name": "Dragons", - "id": "193", - "canExclude": true - }, - { - "type": "genre", - "name": "Drama", - "id": "13", - "canExclude": true - }, - { - "type": "genre", - "name": "Dungeons", - "id": "160", - "canExclude": true - }, - { - "type": "genre", - "name": "Ecchi", - "id": "19", - "canExclude": true - }, - { - "type": "genre", - "name": "Fantasy", - "id": "9", - "canExclude": true - }, - { - "type": "genre", - "name": "Fusion Fantasy", - "id": "88", - "canExclude": true - }, - { - "type": "genre", - "name": "Games", - "id": "161", - "canExclude": true - }, - { - "type": "genre", - "name": "Harem", - "id": "14", - "canExclude": true - }, - { - "type": "genre", - "name": "Historical", - "id": "152", - "canExclude": true - }, - { - "type": "genre", - "name": "Horror", - "id": "77", - "canExclude": true - }, - { - "type": "genre", - "name": "Hunter", - "id": "215", - "canExclude": true - }, - { - "type": "genre", - "name": "Isekai", - "id": "36", - "canExclude": true - }, - { - "type": "genre", - "name": "Josei", - "id": "148", - "canExclude": true - }, - { - "type": "genre", - "name": "Leveling", - "id": "170", - "canExclude": true - }, - { - "type": "genre", - "name": "Magic", - "id": "37", - "canExclude": true - }, - { - "type": "genre", - "name": "Martial Arts", - "id": "24", - "canExclude": true - }, - { - "type": "genre", - "name": "Mature", - "id": "98", - "canExclude": true - }, - { - "type": "genre", - "name": "Military", - "id": "136", - "canExclude": true - }, - { - "type": "genre", - "name": "Monster", - "id": "93", - "canExclude": true - }, - { - "type": "genre", - "name": "Murim", - "id": "138", - "canExclude": true - }, - { - "type": "genre", - "name": "Mystery", - "id": "122", - "canExclude": true - }, - { - "type": "genre", - "name": "Novel", - "id": "50", - "canExclude": true - }, - { - "type": "genre", - "name": "Official", - "id": "60", - "canExclude": true - }, - { - "type": "genre", - "name": "Pokemon", - "id": "96", - "canExclude": true - }, - { - "type": "genre", - "name": "Post-Apocalyptic", - "id": "168", - "canExclude": true - }, - { - "type": "genre", - "name": "Psychological", - "id": "81", - "canExclude": true - }, - { - "type": "genre", - "name": "Pyschological", - "id": "105", - "canExclude": true - }, - { - "type": "genre", - "name": "Reincarnation", - "id": "38", - "canExclude": true - }, - { - "type": "genre", - "name": "Revenge", - "id": "209", - "canExclude": true - }, - { - "type": "genre", - "name": "Romance", - "id": "15", - "canExclude": true - }, - { - "type": "genre", - "name": "School Life", - "id": "20", - "canExclude": true - }, - { - "type": "genre", - "name": "Sci-fi", - "id": "97", - "canExclude": true - }, - { - "type": "genre", - "name": "Seinen", - "id": "16", - "canExclude": true - }, - { - "type": "genre", - "name": "Shoujo", - "id": "34", - "canExclude": true - }, - { - "type": "genre", - "name": "Shoujo Ai", - "id": "174", - "canExclude": true - }, - { - "type": "genre", - "name": "Shounen", - "id": "10", - "canExclude": true - }, - { - "type": "genre", - "name": "Slice of Life", - "id": "27", - "canExclude": true - }, - { - "type": "genre", - "name": "Sports", - "id": "28", - "canExclude": true - }, - { - "type": "genre", - "name": "Supernatural", - "id": "21", - "canExclude": true - }, - { - "type": "genre", - "name": "Survival", - "id": "133", - "canExclude": true - }, - { - "type": "genre", - "name": "Sword and Magic", - "id": "192", - "canExclude": true - }, - { - "type": "genre", - "name": "System", - "id": "94", - "canExclude": true - }, - { - "type": "genre", - "name": "Thriller", - "id": "82", - "canExclude": true - }, - { - "type": "genre", - "name": "Time Travel", - "id": "184", - "canExclude": true - }, - { - "type": "genre", - "name": "Tragedy", - "id": "106", - "canExclude": true - }, - { - "type": "genre", - "name": "Transmigration", - "id": "185", - "canExclude": true - }, - { - "type": "genre", - "name": "Video Games", - "id": "29", - "canExclude": true - }, - { - "type": "genre", - "name": "VR", - "id": "162", - "canExclude": true - }, - { - "type": "genre", - "name": "Zombies", - "id": "167", - "canExclude": true - } - ] - }, - { - "type": "select", - "name": "Status", - "options": [ - "All", - "Ongoing", - "Completed", - "Hiatus" - ] - }, - { - "type": "select", - "name": "Type", - "options": [ - "All", - "Manga", - "Manhwa", - "Manhua", - "Comic" - ] - } -] diff --git a/src/rust/mangastream/sources/flamescans/res/source.json b/src/rust/mangastream/sources/flamescans/res/source.json deleted file mode 100644 index d7a774795..000000000 --- a/src/rust/mangastream/sources/flamescans/res/source.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "info": { - "id": "multi.flamescans", - "lang": "multi", - "name": "Flame Scans", - "version": 4, - "url": "https://flamescans.org" - }, - "listings": [ - { - "name": "Popular" - }, - { - "name": "Latest" - }, - { - "name": "New" - } - ], - "languages": [ - { - "code": "en" - }, - { - "code": "ar" - } - ], - "languageSelectType": "single" -} diff --git a/src/rust/mangastream/sources/flamescans/src/helper.rs b/src/rust/mangastream/sources/flamescans/src/helper.rs deleted file mode 100644 index 60c65a21a..000000000 --- a/src/rust/mangastream/sources/flamescans/src/helper.rs +++ /dev/null @@ -1,74 +0,0 @@ -use aidoku::std::String; -use mangastream_template::helper::*; - -pub fn get_base_url() -> String { - let code = get_lang_code(); - match code.as_str() { - "ar" => String::from("https://ar.flamescans.org"), - _ => String::from("https://flamescans.org"), - } -} - -pub fn get_tag_id(tag: String) -> String { - let id = match tag.as_str() { - "Action" => "17", - "Adventure" => "11", - "Apocalypse" => "55", - "Betrayal" => "190", - "Calm Protagonist" => "191", - "Comedy" => "45", - "Coming Soon" => "85", - "Cultivation" => "110", - "Dragons" => "193", - "Drama" => "26", - "Dungeons" => "22", - "Ecchi" => "19", - "Fantasy" => "131", - "Fusion Fantasy" => "88", - "Games" => "183", - "Harem" => "36", - "Historical" => "44", - "Horror" => "67", - "Hunter" => "215", - "Isekai" => "36", - "Josei" => "43", - "Leveling" => "170", - "Magic" => "13", - "Martial Arts" => "29", - "Mature" => "98", - "Military" => "136", - "Monster" => "10", - "Murim" => "138", - "Mystery" => "122", - "Novel" => "50", - "Official" => "60", - "Pokemon" => "96", - "Post-Apocalyptic" => "168", - "Psychological" => "81", - "Pyschological" => "105", - "Reincarnation" => "38", - "Revenge" => "125", - "Romance" => "40", - "School Life" => "132", - "Sci-fi" => "97", - "Seinen" => "77", - "Shoujo" => "41", - "Shoujo Ai" => "174", - "Shounen" => "24", - "Slice of Life" => "138", - "Sports" => "28", - "Supernatural" => "15", - "Survival" => "133", - "Sword and Magic" => "192", - "System" => "122", - "Thriller" => "82", - "Time Travel" => "211", - "Tragedy" => "64", - "Transmigration" => "185", - "Video Games" => "29", - "VR" => "162", - "Zombies" => "68", - _ => "", - }; - String::from(id) -} diff --git a/src/rust/mangastream/sources/flamescans/src/lib.rs b/src/rust/mangastream/sources/flamescans/src/lib.rs deleted file mode 100644 index 1915716ff..000000000 --- a/src/rust/mangastream/sources/flamescans/src/lib.rs +++ /dev/null @@ -1,59 +0,0 @@ -#![no_std] -use aidoku::{ - error::Result, prelude::*, std::net::Request, std::String, std::Vec, Chapter, DeepLink, Filter, - Listing, Manga, MangaPageResult, Page, -}; - -use helper::{get_base_url, get_tag_id}; -use mangastream_template::template::MangaStreamSource; -pub mod helper; -fn get_instance() -> MangaStreamSource { - MangaStreamSource { - has_permanent_manga_url: true, - has_permanent_chapter_url: true, - tagid_mapping: get_tag_id, - base_url: get_base_url(), - traverse_pathname: "series", - last_page_text_2: "التالي", - manga_details_status: ".imptdt:contains(Status) i, r:contains(الحالة) td:eq(1)", - chapter_date_format: "MMMM dd, yyyy", - status_options_2: ["مستمر", "مكتمل", "متوقف", "ملغي", "متروك"], - language_2: "ar", - ..Default::default() - } -} - -#[get_manga_list] -fn get_manga_list(filters: Vec, page: i32) -> Result { - get_instance().parse_manga_list(filters, page) -} - -#[get_manga_listing] -fn get_manga_listing(listing: Listing, page: i32) -> Result { - get_instance().parse_manga_listing(get_instance().base_url, listing.name, page) -} - -#[get_manga_details] -fn get_manga_details(id: String) -> Result { - get_instance().parse_manga_details(id) -} - -#[get_chapter_list] -fn get_chapter_list(id: String) -> Result> { - get_instance().parse_chapter_list(id) -} - -#[get_page_list] -fn get_page_list(_manga_id: String, id: String) -> Result> { - get_instance().parse_page_list(id) -} - -#[modify_image_request] -fn modify_image_request(request: Request) { - get_instance().modify_image_request(request) -} - -#[handle_url] -pub fn handle_url(url: String) -> Result { - get_instance().handle_url(url) -} From e834067904c7863ea882421ae2143a1e37c267b0 Mon Sep 17 00:00:00 2001 From: KaBankz <20971850+KaBankz@users.noreply.github.com> Date: Mon, 23 Oct 2023 18:31:01 -0400 Subject: [PATCH 2/4] chore(mangastream): update `Cargo.lock` --- src/rust/mangastream/Cargo.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/rust/mangastream/Cargo.lock b/src/rust/mangastream/Cargo.lock index a980722bf..b210f650a 100644 --- a/src/rust/mangastream/Cargo.lock +++ b/src/rust/mangastream/Cargo.lock @@ -138,14 +138,6 @@ dependencies = [ "libc", ] -[[package]] -name = "flamescans" -version = "0.1.0" -dependencies = [ - "aidoku", - "mangastream_template", -] - [[package]] name = "freakscans" version = "0.1.0" @@ -298,6 +290,14 @@ dependencies = [ "mangastream_template", ] +[[package]] +name = "nonbiri" +version = "0.1.0" +dependencies = [ + "aidoku", + "mangastream_template", +] + [[package]] name = "once_cell" version = "1.18.0" From e9786bd79eb3ae6e922928a003f4f8af138bbb6d Mon Sep 17 00:00:00 2001 From: KaBankz <20971850+KaBankz@users.noreply.github.com> Date: Sat, 28 Oct 2023 14:31:53 -0400 Subject: [PATCH 3/4] feat(mangastream): add flame comics --- src/rust/mangastream/Cargo.lock | 8 + .../sources/flamecomics/Cargo.toml | 12 + .../sources/flamecomics/res/Icon.png | Bin 0 -> 14370 bytes .../sources/flamecomics/res/filters.json | 404 ++++++++++++++++++ .../sources/flamecomics/res/source.json | 20 + .../sources/flamecomics/src/lib.rs | 52 +++ 6 files changed, 496 insertions(+) create mode 100644 src/rust/mangastream/sources/flamecomics/Cargo.toml create mode 100644 src/rust/mangastream/sources/flamecomics/res/Icon.png create mode 100644 src/rust/mangastream/sources/flamecomics/res/filters.json create mode 100644 src/rust/mangastream/sources/flamecomics/res/source.json create mode 100644 src/rust/mangastream/sources/flamecomics/src/lib.rs diff --git a/src/rust/mangastream/Cargo.lock b/src/rust/mangastream/Cargo.lock index b210f650a..2f55c64b0 100644 --- a/src/rust/mangastream/Cargo.lock +++ b/src/rust/mangastream/Cargo.lock @@ -138,6 +138,14 @@ dependencies = [ "libc", ] +[[package]] +name = "flamecomics" +version = "0.1.0" +dependencies = [ + "aidoku", + "mangastream_template", +] + [[package]] name = "freakscans" version = "0.1.0" diff --git a/src/rust/mangastream/sources/flamecomics/Cargo.toml b/src/rust/mangastream/sources/flamecomics/Cargo.toml new file mode 100644 index 000000000..4c32a47bc --- /dev/null +++ b/src/rust/mangastream/sources/flamecomics/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "flamecomics" +version = "0.1.0" +edition = "2021" +publish = false + +[lib] +crate-type = ["cdylib"] + +[dependencies] +aidoku = { git = "https://github.com/Aidoku/aidoku-rs/" } +mangastream_template = { path = "../../template" } diff --git a/src/rust/mangastream/sources/flamecomics/res/Icon.png b/src/rust/mangastream/sources/flamecomics/res/Icon.png new file mode 100644 index 0000000000000000000000000000000000000000..86f5deec10e34756d7d34f5fe4930a74721bf1ce GIT binary patch literal 14370 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 EKR<=SnE(I) literal 0 HcmV?d00001 diff --git a/src/rust/mangastream/sources/flamecomics/res/filters.json b/src/rust/mangastream/sources/flamecomics/res/filters.json new file mode 100644 index 000000000..4002312fd --- /dev/null +++ b/src/rust/mangastream/sources/flamecomics/res/filters.json @@ -0,0 +1,404 @@ +[ + { + "type": "title" + }, + { + "type": "group", + "name": "Tags", + "filters": [ + { + "type": "genre", + "name": "Academy", + "id": "253", + "canExclude": true + }, + { + "type": "genre", + "name": "Action", + "id": "7", + "canExclude": true + }, + { + "type": "genre", + "name": "Adventure", + "id": "8", + "canExclude": true + }, + { + "type": "genre", + "name": "Apocalypse", + "id": "55", + "canExclude": true + }, + { + "type": "genre", + "name": "Betrayal", + "id": "190", + "canExclude": true + }, + { + "type": "genre", + "name": "Calm Protagonist", + "id": "191", + "canExclude": true + }, + { + "type": "genre", + "name": "Comedy", + "id": "18", + "canExclude": true + }, + { + "type": "genre", + "name": "Coming Soon", + "id": "85", + "canExclude": true + }, + { + "type": "genre", + "name": "Cultivation", + "id": "110", + "canExclude": true + }, + { + "type": "genre", + "name": "Dragons", + "id": "193", + "canExclude": true + }, + { + "type": "genre", + "name": "Drama", + "id": "13", + "canExclude": true + }, + { + "type": "genre", + "name": "Dungeons", + "id": "160", + "canExclude": true + }, + { + "type": "genre", + "name": "Ecchi", + "id": "19", + "canExclude": true + }, + { + "type": "genre", + "name": "Ecchi comedy", + "id": "239", + "canExclude": true + }, + { + "type": "genre", + "name": "Fantasy", + "id": "9", + "canExclude": true + }, + { + "type": "genre", + "name": "Fusion Fantasy", + "id": "88", + "canExclude": true + }, + { + "type": "genre", + "name": "Games", + "id": "161", + "canExclude": true + }, + { + "type": "genre", + "name": "Harem", + "id": "14", + "canExclude": true + }, + { + "type": "genre", + "name": "Historical", + "id": "152", + "canExclude": true + }, + { + "type": "genre", + "name": "Horror", + "id": "77", + "canExclude": true + }, + { + "type": "genre", + "name": "Hunter", + "id": "215", + "canExclude": true + }, + { + "type": "genre", + "name": "Isekai", + "id": "36", + "canExclude": true + }, + { + "type": "genre", + "name": "Josei", + "id": "148", + "canExclude": true + }, + { + "type": "genre", + "name": "Leveling", + "id": "170", + "canExclude": true + }, + { + "type": "genre", + "name": "Magic", + "id": "37", + "canExclude": true + }, + { + "type": "genre", + "name": "Martial Arts", + "id": "24", + "canExclude": true + }, + { + "type": "genre", + "name": "Mature", + "id": "98", + "canExclude": true + }, + { + "type": "genre", + "name": "Military", + "id": "136", + "canExclude": true + }, + { + "type": "genre", + "name": "Modern Fantasy", + "id": "217", + "canExclude": true + }, + { + "type": "genre", + "name": "Monster", + "id": "93", + "canExclude": true + }, + { + "type": "genre", + "name": "moster", + "id": "237", + "canExclude": true + }, + { + "type": "genre", + "name": "Murim", + "id": "138", + "canExclude": true + }, + { + "type": "genre", + "name": "Mystery", + "id": "122", + "canExclude": true + }, + { + "type": "genre", + "name": "Official", + "id": "60", + "canExclude": true + }, + { + "type": "genre", + "name": "Pokemon", + "id": "96", + "canExclude": true + }, + { + "type": "genre", + "name": "Post-Apocalyptic", + "id": "168", + "canExclude": true + }, + { + "type": "genre", + "name": "Psychological", + "id": "81", + "canExclude": true + }, + { + "type": "genre", + "name": "Regression", + "id": "242", + "canExclude": true + }, + { + "type": "genre", + "name": "Reincarnation", + "id": "38", + "canExclude": true + }, + { + "type": "genre", + "name": "Revenge", + "id": "209", + "canExclude": true + }, + { + "type": "genre", + "name": "Romance", + "id": "15", + "canExclude": true + }, + { + "type": "genre", + "name": "School Life", + "id": "20", + "canExclude": true + }, + { + "type": "genre", + "name": "Sci-fi", + "id": "97", + "canExclude": true + }, + { + "type": "genre", + "name": "Seinen", + "id": "16", + "canExclude": true + }, + { + "type": "genre", + "name": "Shoujo", + "id": "34", + "canExclude": true + }, + { + "type": "genre", + "name": "Shoujo Ai", + "id": "174", + "canExclude": true + }, + { + "type": "genre", + "name": "Shounen", + "id": "10", + "canExclude": true + }, + { + "type": "genre", + "name": "Slice of Life", + "id": "27", + "canExclude": true + }, + { + "type": "genre", + "name": "Sports", + "id": "28", + "canExclude": true + }, + { + "type": "genre", + "name": "Supernatural", + "id": "21", + "canExclude": true + }, + { + "type": "genre", + "name": "Survival", + "id": "133", + "canExclude": true + }, + { + "type": "genre", + "name": "Sword and Magic", + "id": "192", + "canExclude": true + }, + { + "type": "genre", + "name": "Swordmaster", + "id": "257", + "canExclude": true + }, + { + "type": "genre", + "name": "System", + "id": "94", + "canExclude": true + }, + { + "type": "genre", + "name": "Thriller", + "id": "82", + "canExclude": true + }, + { + "type": "genre", + "name": "Time Travel", + "id": "184", + "canExclude": true + }, + { + "type": "genre", + "name": "Tragedy", + "id": "106", + "canExclude": true + }, + { + "type": "genre", + "name": "Transmigration", + "id": "185", + "canExclude": true + }, + { + "type": "genre", + "name": "Video Games", + "id": "29", + "canExclude": true + }, + { + "type": "genre", + "name": "VR", + "id": "162", + "canExclude": true + }, + { + "type": "genre", + "name": "Youth", + "id": "221", + "canExclude": true + }, + { + "type": "genre", + "name": "Zombies", + "id": "167", + "canExclude": true + } + ] + }, + { + "type": "select", + "name": "Status", + "options": [ + "All", + "Ongoing", + "Completed", + "Hiatus" + ] + }, + { + "type": "select", + "name": "Type", + "options": [ + "All", + "Manga", + "Manhwa", + "Manhua", + "Comic" + ] + } +] diff --git a/src/rust/mangastream/sources/flamecomics/res/source.json b/src/rust/mangastream/sources/flamecomics/res/source.json new file mode 100644 index 000000000..823323d7e --- /dev/null +++ b/src/rust/mangastream/sources/flamecomics/res/source.json @@ -0,0 +1,20 @@ +{ + "info": { + "id": "en.flamecomics", + "lang": "en", + "name": "Flame Comics", + "version": 1, + "url": "https://flamecomics.com" + }, + "listings": [ + { + "name": "Popular" + }, + { + "name": "Latest" + }, + { + "name": "New" + } + ] +} diff --git a/src/rust/mangastream/sources/flamecomics/src/lib.rs b/src/rust/mangastream/sources/flamecomics/src/lib.rs new file mode 100644 index 000000000..ae85eddfd --- /dev/null +++ b/src/rust/mangastream/sources/flamecomics/src/lib.rs @@ -0,0 +1,52 @@ +#![no_std] +use aidoku::{ + error::Result, prelude::*, std::net::Request, std::String, std::Vec, Chapter, DeepLink, Filter, + Listing, Manga, MangaPageResult, Page, +}; + +use mangastream_template::template::MangaStreamSource; + +fn get_instance() -> MangaStreamSource { + MangaStreamSource { + base_url: String::from("https://flamecomics.com"), + has_permanent_manga_url: true, + has_permanent_chapter_url: true, + traverse_pathname: "series", + ..Default::default() + } +} + +#[get_manga_list] +fn get_manga_list(filters: Vec, page: i32) -> Result { + get_instance().parse_manga_list(filters, page) +} + +#[get_manga_listing] +fn get_manga_listing(listing: Listing, page: i32) -> Result { + get_instance().parse_manga_listing(get_instance().base_url, listing.name, page) +} + +#[get_manga_details] +fn get_manga_details(id: String) -> Result { + get_instance().parse_manga_details(id) +} + +#[get_chapter_list] +fn get_chapter_list(id: String) -> Result> { + get_instance().parse_chapter_list(id) +} + +#[get_page_list] +fn get_page_list(_manga_id: String, id: String) -> Result> { + get_instance().parse_page_list(id) +} + +#[modify_image_request] +fn modify_image_request(request: Request) { + get_instance().modify_image_request(request) +} + +#[handle_url] +pub fn handle_url(url: String) -> Result { + get_instance().handle_url(url) +} From 1b1396bee4e9c21dc73c93c20c543d8fa6450d84 Mon Sep 17 00:00:00 2001 From: KaBankz <20971850+KaBankz@users.noreply.github.com> Date: Sat, 28 Oct 2023 14:33:51 -0400 Subject: [PATCH 4/4] chore: lint and format --- .../sources/alceascan/res/filters.json | 98 ++++---- .../mangastream/sources/mangkomik/src/lib.rs | 2 +- .../sources/nonbiri/res/filters.json | 2 +- .../sources/tenshi/res/filters.json | 214 +++++++++--------- .../sources/yumekomik/res/filters.json | 2 +- 5 files changed, 159 insertions(+), 159 deletions(-) diff --git a/src/rust/mangastream/sources/alceascan/res/filters.json b/src/rust/mangastream/sources/alceascan/res/filters.json index e3bfb4344..3f592eb1f 100644 --- a/src/rust/mangastream/sources/alceascan/res/filters.json +++ b/src/rust/mangastream/sources/alceascan/res/filters.json @@ -10,127 +10,127 @@ "type": "genre", "name": "Action", "id": "242" - }, - { + }, + { "type": "genre", "name": "Adult", "id": "286" - }, - { + }, + { "type": "genre", "name": "Adventure", "id": "254" - }, - { + }, + { "type": "genre", "name": "Comedy", "id": "258" - }, - { + }, + { "type": "genre", "name": "Drama", "id": "243" - }, - { + }, + { "type": "genre", "name": "Fantasy", "id": "244" - }, - { + }, + { "type": "genre", "name": "Ghost", "id": "304" - }, - { + }, + { "type": "genre", "name": "Historical", "id": "273" - }, - { + }, + { "type": "genre", "name": "Horror", "id": "265" - }, - { + }, + { "type": "genre", "name": "Josei", "id": "255" - }, - { + }, + { "type": "genre", "name": "Martial Arts", "id": "249" - }, - { + }, + { "type": "genre", "name": "Mature", "id": "251" - }, - { + }, + { "type": "genre", "name": "Mystery", "id": "256" - }, - { + }, + { "type": "genre", "name": "Occult", "id": "305" - }, - { + }, + { "type": "genre", "name": "Psychological", "id": "252" - }, - { + }, + { "type": "genre", "name": "Romance", "id": "259" - }, - { + }, + { "type": "genre", "name": "School Life", "id": "248" - }, - { + }, + { "type": "genre", "name": "Sci-fi", "id": "250" - }, - { + }, + { "type": "genre", "name": "Seinen", "id": "245" - }, - { + }, + { "type": "genre", "name": "Shoujo", "id": "271" - }, - { + }, + { "type": "genre", "name": "Shounen", "id": "247" - }, - { + }, + { "type": "genre", "name": "Slice of Life", "id": "261" - }, - { + }, + { "type": "genre", "name": "Sports", "id": "263" - }, - { + }, + { "type": "genre", "name": "Supernatural", "id": "246" - }, - { + }, + { "type": "genre", "name": "Tragedy", "id": "253" - } + } ] }, { diff --git a/src/rust/mangastream/sources/mangkomik/src/lib.rs b/src/rust/mangastream/sources/mangkomik/src/lib.rs index 2df5c5b56..12d4e6dec 100644 --- a/src/rust/mangastream/sources/mangkomik/src/lib.rs +++ b/src/rust/mangastream/sources/mangkomik/src/lib.rs @@ -47,7 +47,7 @@ fn get_page_list(_manga_id: String, id: String) -> Result> { .header("Referer", &get_instance().base_url) .html()?; let externaljs = html.select("script[data-minify]").attr("src").read(); - let raw_text = Request::new(&externaljs, HttpMethod::Get).string()?; + let raw_text = Request::new(externaljs, HttpMethod::Get).string()?; let trimmed_json = &raw_text [raw_text.find(r#":[{"s"#).unwrap_or(0) + 2..raw_text.rfind("}],").unwrap_or(0) + 1]; let trimmed_text = if trimmed_json.contains("Default 2") { diff --git a/src/rust/mangastream/sources/nonbiri/res/filters.json b/src/rust/mangastream/sources/nonbiri/res/filters.json index 047114e6c..a390eb402 100644 --- a/src/rust/mangastream/sources/nonbiri/res/filters.json +++ b/src/rust/mangastream/sources/nonbiri/res/filters.json @@ -311,7 +311,7 @@ "name": "Zombies", "id": "694" } - ] + ] }, { "type": "select", diff --git a/src/rust/mangastream/sources/tenshi/res/filters.json b/src/rust/mangastream/sources/tenshi/res/filters.json index 125bf41c1..2e1fbff7f 100644 --- a/src/rust/mangastream/sources/tenshi/res/filters.json +++ b/src/rust/mangastream/sources/tenshi/res/filters.json @@ -10,272 +10,272 @@ "type": "genre", "name": "4-Koma", "id": "310" - }, - { + }, + { "type": "genre", "name": "Action", "id": "2" - }, - { + }, + { "type": "genre", "name": "Adult", "id": "996" - }, - { + }, + { "type": "genre", "name": "Adventure", "id": "3" - }, - { + }, + { "type": "genre", "name": "Comedy", "id": "4" - }, - { + }, + { "type": "genre", "name": "Cooking", "id": "146" - }, - { + }, + { "type": "genre", "name": "Crime", "id": "945" - }, - { + }, + { "type": "genre", "name": "Demons", "id": "28" - }, - { + }, + { "type": "genre", "name": "Drama", "id": "20" - }, - { + }, + { "type": "genre", "name": "Ecchi", "id": "47" - }, - { + }, + { "type": "genre", "name": "Fantasy", "id": "5" - }, - { + }, + { "type": "genre", "name": "Game", "id": "23" - }, - { + }, + { "type": "genre", "name": "Gender Bender", "id": "80" - }, - { + }, + { "type": "genre", "name": "Gore", "id": "284" - }, - { + }, + { "type": "genre", "name": "Harem", "id": "8" - }, - { + }, + { "type": "genre", "name": "Historical", "id": "72" - }, - { + }, + { "type": "genre", "name": "Horror", "id": "11" - }, - { + }, + { "type": "genre", "name": "Isekai", "id": "42" - }, - { + }, + { "type": "genre", "name": "Josei", "id": "200" - }, - { + }, + { "type": "genre", "name": "Magic", "id": "30" - }, - { + }, + { "type": "genre", "name": "Manhwa", "id": "1415" - }, - { + }, + { "type": "genre", "name": "Martial Arts", "id": "21" - }, - { + }, + { "type": "genre", "name": "Mature", "id": "75" - }, - { + }, + { "type": "genre", "name": "Mecha", "id": "216" - }, - { + }, + { "type": "genre", "name": "Medical", "id": "182" - }, - { + }, + { "type": "genre", "name": "Military", "id": "96" - }, - { + }, + { "type": "genre", "name": "Monsters", "id": "868" - }, - { + }, + { "type": "genre", "name": "Music", "id": "31" - }, - { + }, + { "type": "genre", "name": "Mystery", "id": "12" - }, - { + }, + { "type": "genre", "name": "One-Shot", "id": "36" - }, - { + }, + { "type": "genre", "name": "Parody", "id": "808" - }, - { + }, + { "type": "genre", "name": "Police", "id": "188" - }, - { + }, + { "type": "genre", "name": "Psychological", "id": "49" - }, - { + }, + { "type": "genre", "name": "Reincarnation", "id": "24" - }, - { + }, + { "type": "genre", "name": "Romance", "id": "9" - }, - { + }, + { "type": "genre", "name": "School", "id": "210" - }, - { + }, + { "type": "genre", "name": "School Life", "id": "38" - }, - { + }, + { "type": "genre", "name": "Sci-fi", "id": "13" - }, - { + }, + { "type": "genre", "name": "Seinen", "id": "14" - }, - { + }, + { "type": "genre", "name": "Shoujo", "id": "55" - }, - { + }, + { "type": "genre", "name": "Shoujo Ai", "id": "154" - }, - { + }, + { "type": "genre", "name": "Shounen", "id": "6" - }, - { + }, + { "type": "genre", "name": "Shounen Ai", "id": "1676" - }, - { + }, + { "type": "genre", "name": "Slice of Life", "id": "32" - }, - { + }, + { "type": "genre", "name": "Sports", "id": "122" - }, - { + }, + { "type": "genre", "name": "Super Power", "id": "232" - }, - { + }, + { "type": "genre", "name": "Supernatural", "id": "15" - }, - { + }, + { "type": "genre", "name": "System", "id": "812" - }, - { + }, + { "type": "genre", "name": "Thriller", "id": "204" - }, - { + }, + { "type": "genre", "name": "Tragedy", "id": "16" - }, - { + }, + { "type": "genre", "name": "Vampire", "id": "139" - }, - { + }, + { "type": "genre", "name": "Webtoons", "id": "27" - }, - { + }, + { "type": "genre", "name": "Yuri", "id": "155" - }, - { + }, + { "type": "genre", "name": "Zombie", "id": "918" - } + } ] }, { diff --git a/src/rust/mangastream/sources/yumekomik/res/filters.json b/src/rust/mangastream/sources/yumekomik/res/filters.json index f091253b0..60de29396 100644 --- a/src/rust/mangastream/sources/yumekomik/res/filters.json +++ b/src/rust/mangastream/sources/yumekomik/res/filters.json @@ -281,7 +281,7 @@ "name": "Yuri", "id": "122" } - ] + ] }, { "type": "select",