From 064d63350db81564d4d64b9d6524ecc591160074 Mon Sep 17 00:00:00 2001 From: stonegate Date: Wed, 23 Sep 2020 22:18:45 +0800 Subject: [PATCH] Add Portuguese suppport. --- README.md | 11 ++- assets/pt.png | Bin 0 -> 9460 bytes lib/generated/intl/messages_all.dart | 4 + lib/generated/intl/messages_en.dart | 94 ++++++++++-------- lib/generated/intl/messages_es.dart | 94 ++++++++++-------- lib/generated/intl/messages_fr.dart | 94 ++++++++++-------- lib/generated/l10n.dart | 141 +++++++++++++++++++++++++++ lib/home/about.dart | 10 +- lib/settings/languages.dart | 10 ++ 9 files changed, 336 insertions(+), 122 deletions(-) create mode 100644 assets/pt.png diff --git a/README.md b/README.md index 5764052..bbe7a31 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,8 @@ Credit to [Localizely](https://localizely.com/) for kind support to open source ### ![Spanish] +### ![Portuguese] + ## License Tsacdop is licensed under the [GPL v3.0](https://github.com/stonega/tsacdop/blob/master/LICENSE) license. @@ -168,10 +170,11 @@ For help getting started with Flutter, view our [github release - recent]: https://github.com/stonega/tsacdop/releases [github downloads]: https://img.shields.io/github/downloads/stonega/tsacdop/total?color=%230000d&label=downloads [localizely]: https://img.shields.io/badge/dynamic/json?color=%2326c6da&label=localizely&query=%24.languages.length&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus -[English]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=English&query=%24.languages%5B0%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% -[Chinese Simplified]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=Chinese%20Simplified&query=%24.languages%5B1%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% -[French]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=French(ppp)&query=%24.languages%5B3%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% -[Spanish]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=Spanish(Joel)&query=%24.languages%5B5%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% +[English]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=English&query=%24.languages%5B3%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% +[Chinese Simplified]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=Chinese%20Simplified&query=%24.languages%5B2%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% +[French]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=French(ppp)&query=%24.languages%5B5%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% +[Spanish]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=Spanish(Joel)&query=%24.languages%5B8%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% +[Portuguese]: https://img.shields.io/badge/dynamic/json?style=for-the-badge&color=%2323CCC6&label=portuguese(Bruno)&query=%24.languages%5B10%5D.reviewedProgress&url=https%3A%2F%2Fapi.localizely.com%2Fv1%2Fprojects%2Fbde4e9bd-4cb2-449b-9de2-18f231ddb47d%2Fstatus&suffix=% [localizely - website]: https://localizely.com/ [google play - icon]: https://img.shields.io/badge/google-playStore-%2323CCC6 [google play]: https://play.google.com/store/apps/details?id=com.stonegate.tsacdop diff --git a/assets/pt.png b/assets/pt.png new file mode 100644 index 0000000000000000000000000000000000000000..22a9911354eaaedfe535208b66f94b8698777d10 GIT binary patch literal 9460 zcma)CcT^K^mnI1TfdEQJno5%%>4G$+ND-uW2vP;z{6Okf<0V&d(AV?8H zmmaABq$c#X{C2{DG0YRa3GBqSu%nvYctu8t>H zTk$ortG(=*3IhoVPot))ict{Y?}!ROnS_M2LWui4DGyWE_DhnA?mNOA>8YzOmF(2X z_m}VAl+DHGbIbi38t}LN8?WQ>{|iyM*Z+-wyZb*a<7o2#!N6dw=)ZfC`_Hrgb?x6h z#p5M!ogC^+{+6f0ea39Qi~LYsz9p(BbeSgSe`vbyVfI0`+Q_@~gV@s<-o%%6t1EmH zi@Ddiqh1!My+;+Cs@lpG%ARrj3j-S z>1^x4&UNLRtgKke^f@v;6R2%@TZFx=tQXzUzTZxqH!O%WJ%@V5Aqli&T32hA7=Q3!HTV#l0!pJU!^Sw=o`NZ0w_3Y}i&C18M9mCA9`hb5q4?`ZiwTt;BYa+)7EtMLU)A(9liXdo zYRcI^Ch)2$ospQB_C0#|C~qA=?^HTSKH5U^+`&Qla&u{d`o$$9izj(iWt(GPn`bMd zi%6XCcwK>Nn_s;!@9%a2iE74L<%D+t=0UQYUG#Jb&#AZ+qp(P-@0xFNK8JkUlto3w z_5R1?Ie%btk?qKcTXz3AHV*M1b$d|ujeP+ zW7JJJJxRdC%F@uF0O7bG=M2An54VA2oGFhADsSIyr6Wd9eNI^`wCLS~UaU7+K? zwj1m!cQk;Fw%=A__S0t6vg2qkgA@u2X|?*7I^dQa5vjGTBv%0qJN5kv4-Ot@KS&cv z{>sEoo;%$>RT~`TA#m!0WfSmn`>E-*ZS(cuRWNM4Bhv046NU5kN*~sZiRu6u! zNnp1buWz3{Z2m$_8_v@5gqxPm7Y~vW2)sQ`u2#&P3(iTuw2!XnOGfvf&0~T z>8=URt_BZA=u#IJ(>a;DA%*>U0v#EhSgc+Nms!DMB{NDwd;Tc|LPl&&%c>O5T)Y`EYmGuenJ zq4YSC-=^{Ky4%B{=u0p$G7o;gUOZy9 z)t1ig4tIOu2i%S~%&(sZ<1!K*3fOuo*b02hLaQ$LrH*7Kc2P`tl7H2pyD#`VKb#TO zSAW2{S|9O}-Sof{`b?PRK24c|_CTv`$x()LI>YKNOt`8?A22I_N>rQK&_>+ ztv`jVr!dPbN53|yFK}#+9LEkGZ)lBD9jRFn_QJ@CHqfSX0ajEI`U;LYTjGx-t))&H zx}x;0+h%wQNovlbB)=ZD)WCDoR?5X!c{0>Pg_oBN&eIY}`1lZi{=k-$LD7J7(vgpp z6|53VTnfBuBzoHPRHl|f(9zM?jtL2Qom$|KDFqnL6t@ro!!zTC|G;qkIJz1uY*C2_ z+M)HYWxKNbkP;~>{(3n~GtwO8+r673v~L4Fa`V#ngz8uxw8OCcxCOB`#|gx%&8Z&Pxnfd-C@k?VXP`Kb2t8f)5_WECJ9lq8}TP zO0179njm=VC9cdDcfWcW#HPLH{*wJ{v90hAFl3SgsGdRZ$8%RL%J}}mx~X+!HtP%b zrMf*yEbB)Ga?!y=0%|@YY*jFr#Hxl;_z*Ebie;n_9W=6_!8F}mXgEFfm1=7khi$!s z?M=gGNU>{)W-lMz*&F>Oy7CJ+QA6BqNCKSC0!#`ghN|6AJXM`PDDdFH#{}|2o>**g z5n`^V5_2Rg@#_sIquzIgp_|e{#XlPm#R=P1!R0@tf{Ndy9vr9e#bw#}l!H&4;L|DN zxe(Dt4jnv1_a;qrbg!&}fF^vRBel?nTEtMDjA-Ji*(^QDVBTKmIAN<7ss|mneNM+B zM+Gr_lfkpWzAfFHI>O1T!ThtH4`EleZ1vSglQfz~>x>q5^q&L86vX}RmBhJDCx;($pRiZBkYY6lGy2EmCk$e*Qrm9r%}9^In#; zX1j)=itPvG`3SnYZ~K304Be-L4km?7Vx%!_S49`wS|~`1cCTjIZCFSmtL^xILctjkLx}IL$`O zT#c7^A*am7{hX5#tQ*8Q;|_cNTpX=*smQ{>gZVNdU_UZrb=srI~ zrma$hUS(9z5L%4YuXM2BHVoSg%QQuV6zGVo8%zvKK!inf$cVdFr5S!1@ztW?r3Cb; zRq*p>;pyf*+H$K?dU8KYgwp0$v^^94grxsm%*;25nE&zh5LeG5y~u6rMu#SkZAaL1 z6>;>bKhV8LT%Gra`;#ZBcclcTsx^zo=;)f~PUmJE!yYIYQ zXNgX-o)Owc=7$}gG!6Ejl}gX!IibS$If%h!xk2^y2Hf+{Y_8imC`bCdHgltp?fES! zXMyv0fWmZdCM(m^fBbUpNqa&of3Uk(jPgkT|=fbu+nV(%*?2!ehqEwr%$hp zTB~t?l1}|Px9ok4@S(yOxk+`(!9Ur#rrpUqU!|dq&J(xpT3$*rw!zq4hAS&=w1fXb zXP&gmI}r-xS1V>ur7sA_I3)@{{r)PSJfqy!6VZjqBSo3EYEoA0vKmGIU~MLE!wjyY zStW*9ry`C~$zn8o*^@S;nRi=4`dt;b(0b&hgvy`?b%?^A#a#nBwlIBYUO+3YJfw`X*KHE$HSa;$1=M_-y@~V3&p(_TKhis$i=QA2il@7~k zO4LMZEpNhp*~_tA>9JBpJ#nn0?>}iFu!WE3cvkN(S>Lxhen54KFhr^p>+N-1Uc+kc z4e09oEn~jaE`>B*ytw4qnheG10j(LvHMWM@k;CYR^YVw>WH&(}66HpOJR$e@k8`v| zdv0B>?^TVOSr18*3ExdyuSpduY*XzuVnakIKW}^;69LBC4hW%@JxZogEsI$;jYkU| zHWPYEAnW3`kPF(g14*yan)8Z1E0M#;57;w&;@F;{pATG>C=hwa0h7%T#G!lLQ?ks- zZT7~C5w5?*u!LCDj3-JvQ@^wG8vds1m*h)0fICGUVT_6*2WKymo#Q^_$@&B+iUs@J z8w~YJ;w+7mQc}cjl$Y*=cnx{gf14tF*%(Ii^PNaI38b%+&aRJK+)F=w3%sQC>K+sv z(@LEYjcs_pm-sdlxFv;?)MLehT|(c8Qq<(*+iz4}h}WF|8f>4uf##=%yaTP0Md^Es z|EP9)*I(OcMM>Pi*l#_7{oQ~W$wRlOY95fj4Ko*MrA)Irbmr;5hOe)Mdwar%^rB)v zj_r{^wQMKcV7skgzq~=))^YPfyw+230UDiaBsocFelkC5a2yx;L=N9(k-J?8i~X!b z=*uamw&xgeblyn=r#)qL=;51Jxw6z&bYMRD_QD~UPBu@BWY}e$qF&U;1EYPuQg_vgDsZx+6mF0IuRq~CR$?v`@!h>G`bXr`WcdK zR5fI8nn&MOPtThGPZ3tBr5BdLNt&`^J=ffqYx()L`La81Z{eqEsORrpjOfvYm3~UR z_j#5kT4VhsE1>zWAoRs;mdktT-x&OUk-pbJXs;s1oX>;NC>wC}#>Ulm;u@I4P~~*h z$GY@_%zJk6tVG+*JxP28gGsCHNKEsqs4P-%3%t+k3*}Sa%4y-6jFiAh8nR+9PfJKP z0yZM8zG4dsxgtn>_u5?8SQu#dM73?V8_%lqsWVXa!omkq9pbHUT#f~>3Y3!4)q`637FM!+Q##=TJCj~ zawGJ#4S8$Q#)8bazxQxAOkKVLZ7nZXbTkr9i{B(I(s`OEjlEHt_K|lpa7?i0vbL-l z5@=vp$Ol_9zy{U>y5Vy=^o}bcLt71It^z|TE|oL`KPKCbc)avUfBUir&1>K$b5#6{ z*7;W9Ti@x>!VSP?yh-eL=i@dw1uW4ZAnk#wAm+KtP~Ljh&%1#l{xps8MQ%IAFH?N* z#F>+q8IdKzbt!+x_HP_M|KKPmk5RN!*Q?!ULk-ZLOO(`Z)E{J5Qa6nOb81jl-@k|Q z=-m?HfMla3O)!0Hq^4)3yTmEo!m$Y05F>h16RSu^?ib~YXfqxC*4NMzfuF)3siRQ}0&7*rzJ8b{vxa=N z1)x}K`E9)3fo6ej^!?42V7V{G8e{%9v_V+^@BP*}`N3TvLh#o&O|?lcGeWS%F{y;l z&WNLgRYZ_uqjIy-_V&%vLpPF;9>TMCgjK=ixL2a)chBcPZ^<4!Xt1%JpcEc$UTT2n zdOR>6M?5c0XQa50-*W6>w;g;mQVc>S6~m_PKhW^(^Cp@nvR~HBem~BCfT>Y zyarXY5=kJl=Yz+a-b7reZj-vd+8vR45Ca-mW>j?r?19 z<(L(Xc4Iyp8#D-Nsa$GsQM2@SUslR9R8F2bUj*cqSnbxv)JZmlaBXh6ZT#BH{IYLP zoSxR$i;ve2k++CU4QL`aS8=qS)@aS#0PF89T_+$&@-mIc`O*RrkY#QwO zI%gyCrS+c-W#6Yc`o#d1HEWzmzF7DAnciHap8RaVUHsRICfNBET%jAD5Kd_`L`~fI zGzb8kXS&4;flW}^x)8xXV`3s>w+K;(&-Ue_<=yTo8F_>^!gzx=29#Pgul`3zZd6}l#MbMgtzpYi{1p>p zJ#}F#e%{lX?nBF*PFbc>tk|s5fgtOmT!#y*nPE?-s7F$Nd(ck=q;0y;VDMf7hKusq zERWA-fF7=wkNCFKWbsHz)J|R5HhkcIH`)0sW`?Fk9u;*uxi5op0ntLCRssY%)mijobySp_|EE04!aneOnX9XgW4#rL(8wibZ? z1u)X7=o_BfZ2a5iJx|x!`c>DX3n+F1W8EjkpX1lR(Hl;9!pBSPX!oHG=lvBeLh08T z#mVN9M-$Q*^{O^%Lzk=+z(*$2@2?k6HgVGng8ya0(VqA-dd%&B;kxJfi`GNZGl_Yy z=LT(yG#&dr4#*oI2&wq&&m&q6LJ`K$!q9MJskf#&f19?{IyBRy-6SWi>&ugLQK79N zBo*^Pu@F!vm!zQ)4yHxS+W;?c{Kg*Doy%Gn2MV)faTzX&M>n;HKh^h+e$>n4zbrFI z5MBJGJtgz!w@0$|#2O*KKVtEn{oLrLR;qTIWPNH%u6PwNAo;k+z$$A-OEB^*=wkGx zsWfBc#eMFMIj3IP3JgW~l!B?|vm}Q0*C=}Ve&wrdU0Ih>7yRw;=1JN-$0Tu)i|vTT zmmGq-;G6kz47|F9T4aemiIyY)@rXPE;3su77`Ui!QOWv?`?Qml-7g(MWu2Wp`>n zHMP6J$?E4)%tG3etjyo+2FWl?C~pdFK-`$2^Hi@41<}*A40pmuy3is|&|z|NuBzNK zFfQSr(|N*+$3rgs>dsT?%5uF8elLK8^zLD=N}y2=8LKJx*~34|KUBF1OB9vTwntT- ztd}MP+aC%rM((P;SD6?#_uEbwl*Ncv6n<2fdam2Jv{syvbmNYi!f3LR`H>t(lT#oZ3fKUn$j|U*(46+c;wEZ7~LA8;W7axJAUWc+R5~FGWYoFQe zzbu6-^$B79<6kW64RS1zo8dH82aI*cJkX7(u8MN`V+W>_uwLrc-D?UPKc1}?MAgXj z5X~2W&p-0!I6C|^oa!RE%9q=&WBPifv5fR_e3zZ8E#Y;Kn^mXvOdC$QD+YtS_SmtT zHoa3Dn5qzT9*xr>*xeQxYprt11C=5pwp_yyKvZPZa)NksUN*mr5Cwb##F%_3p7;?N zcFYytIaZ9sFsnFAraxfS2_pAFa zwdV#U>b)lgUS0`+t0YU7bSi2K$H4>s@ctlFQH%$)4&X%2+x3bOcDo_$V)mgikIJl` zEqoL{TVdNGb9fLT$}$Ts6DHXtw9lBf1w}%`AS{QFpilm8PShNqxtBC@scf6AYr|J6 zSc8QXdw*Mnk_QX!wU!$TsW*{DCy*IBBg_Y*4qz4H)R0iNnaIyp(@y)fee`rJ48%{8 zT}wkehj*0p43LMLNSc|RX(J`c3YIHs!Q(IQlUux4o*s#BJUde~umo?|L&|g)a%&Io z&517~!Q0gH-!jvrv--9h;$EJdhgAdtStj%?40r|GxVxg(wA&RZQ<^x3wd%FrZEo-+ ztuUXzn5>9WD{mbT;YX^09Ns`3TO?ol=>lckNj}a22^u}u5hQUoq3;yu!$c_(zo#0_ ze}$p8t&9q+1D@Z^$f01$@r2z&*Ge{%i$anFihgA+b4@QB_-OaKITjk#OZmAw3OBl@ z)>Tq5&2@c;lVA=B_7=9!Rg>g3{yGG|PDy!eODxO4jr+2xuaYDubb_^+bzLe3rc^@k;&vzGDYlB7#dy{H#Q_Qxc|Pj6|5c|#J7~R?ALpp|5On42GIO!y{xuV zp=Pqvz|t|3?xjy~!Do>k3MmgVTXvd@QW^Y2kE?=z#35l!aj2|`po?iDv3kIwLj~M; z)1D8ks3!Fr1lDH9aqD)w6A6o-`^21=ztmR#?cp~+I9e=gICdJh4iS*CEDv!l*hj%J z!F#s^2Y?gdY@YwOxd%& zN1~%85teP{$$GV3qFMs+A!`rF&*y67+BtP6i1pFtG;A9eyR;Z%xUpy=p`K5h$LiK) zIPts?cE$j;m*W9AJ*fLo6GWBT=aZ2Ue179r8r>MtFRHoe%dFL~Q6@R%!~!xUa02sd^WZdF&=a-X+B<%n;1K<&s_IA}yIcswmNA73y3 zv6;rhTF#s;{Un;?L`B0wQ=F5KPj=O)zP)yK^2pp6?RL+k`+{&hZi%ecO!*q!&;Q1B-DCN2!l5>+vvszY(_4Ho1O#={Z_n zAK|H(N0R%V`xno6S<-fTo>=g9h_yv#LG!@T_cl9arS_!>aCZIE4$(yITUsz$T4o`! zMGFNHUd+z=m^d{mOK9lyrz}(s0HJKjoMioKHC``K`>B8l*jg%`>qAL(x^M5Dl=a6> z208`~VMiMZNEzS4lq5xX$_MraCayg^pLKZaF_zUAXu*yiKW3GM;Q7%5Tf8cDWx`SL zQTVmHRjV$6Hn+@bbvemmXrywT=f6He_w+x=(_J-VdKF#y_d`q_=vJh?`#xdBB->G% zZDhD;WVP|JrOW+{d;!DJ(sEDZ7_jjs^lGq*Emp`1 zvzfJ?W(JkmUEnD-uw$WZR8li`|F|=Aqk6c;O=@Xj&%%>u3^&vD_HD3mu0qzB>sb@n z;PjX6Cy-WFir`fr)X~mvU5;63wy}hTmwJrx$nlOD} zPIX!Rg(AI1RNoV(Y{0qdgyqMYAMaHehF#yJXHd`m=6Fy=AG95V)40GjJ=H{w;rQh{ zUzr*x_uT*dnOMxVdBD%`;zmC$gUrAv$An%9%mrZ;8FkjEoMtJ>W+_&j`|cHds(89` zPQ{f-PVo+cj|A_t@T0W?8AT|JmRFDo#M(QXc)?$HEt7GSlib)a@-) z3|R*!b6|7jo^ztmvZ6igABsu}_QuRX#6a8XPg7XM#Dq9`XR>;B%XIC;1es^rBMe{plMCIWWk3{z<#y`d?xYay6IDbIHODqeQ` z9AZp*eXhf|dU&-L+of67Ul9||`S{ThA|V#Jo48B=5!ItQCG3UskD<8&kRo zsnorNWH8=hTOliGY#XbUmK*8? zPHlABde`LQ5E$NU&?Nvf3Wf4oUAjk2x@O*9jL5l-N~I|B15t2;8uaPq+Yxs6fF>Ru zj{XQUO0N7_19MUQ%^E0fgJ|=AAv+kmFgFk}xE> zTB@kr|NhTIgsqbWWRZk~(R~sUO;biK568uoiY; z5Nkbf{O?t2O@&?5UeyulmYGT%Yjh2C4Gjw$W&vm-6Rdf}bmC&;Ql+ wi_@% literal 0 HcmV?d00001 diff --git a/lib/generated/intl/messages_all.dart b/lib/generated/intl/messages_all.dart index fe731da..e58a17f 100644 --- a/lib/generated/intl/messages_all.dart +++ b/lib/generated/intl/messages_all.dart @@ -18,6 +18,7 @@ import 'package:intl/src/intl_helpers.dart'; import 'messages_en.dart' as messages_en; import 'messages_es.dart' as messages_es; import 'messages_fr.dart' as messages_fr; +import 'messages_pt.dart' as messages_pt; import 'messages_zh-Hans.dart' as messages_zh_hans; typedef Future LibraryLoader(); @@ -25,6 +26,7 @@ Map _deferredLibraries = { 'en': () => new Future.value(null), 'es': () => new Future.value(null), 'fr': () => new Future.value(null), + 'pt': () => new Future.value(null), 'zh_Hans': () => new Future.value(null), }; @@ -36,6 +38,8 @@ MessageLookupByLibrary _findExact(String localeName) { return messages_es.messages; case 'fr': return messages_fr.messages; + case 'pt': + return messages_pt.messages; case 'zh_Hans': return messages_zh_hans.messages; default: diff --git a/lib/generated/intl/messages_en.dart b/lib/generated/intl/messages_en.dart index 2f5623e..dc21f0b 100644 --- a/lib/generated/intl/messages_en.dart +++ b/lib/generated/intl/messages_en.dart @@ -39,43 +39,47 @@ class MessageLookup extends MessageLookupByLibrary { static m9(count) => "${Intl.plural(count, zero: '0 hour', one: '${count} hour', other: '${count} hours')}"; - static m10(count) => "${Intl.plural(count, zero: 'Just now', one: '${count} minute ago', other: '${count} minutes ago')}"; + static m10(service) => "Integrate with ${service}"; - static m11(count) => "${Intl.plural(count, zero: '0 min', one: '${count} min', other: '${count} mins')}"; + static m11(userName) => "Logged in as ${userName}"; - static m12(title) => "Fetch data ${title}"; + static m12(count) => "${Intl.plural(count, zero: 'Just now', one: '${count} minute ago', other: '${count} minutes ago')}"; - static m13(title) => "Subscribing failed, network error ${title}"; + static m13(count) => "${Intl.plural(count, zero: '0 min', one: '${count} min', other: '${count} mins')}"; - static m14(title) => "Subscribe ${title}"; + static m14(title) => "Fetch data ${title}"; - static m15(title) => "Subscribing failed, podcast already exists ${title}"; + static m15(title) => "Subscribing failed, network error ${title}"; - static m16(title) => "Subscribed successfully ${title}"; + static m16(title) => "Subscribe ${title}"; - static m17(title) => "Update ${title}"; + static m17(title) => "Subscribing failed, podcast already exists ${title}"; - static m18(title) => "Update error ${title}"; + static m18(title) => "Subscribed successfully ${title}"; - static m19(count) => "${Intl.plural(count, zero: '', one: 'Podcast', other: 'Podcasts')}"; + static m19(title) => "Update ${title}"; - static m20(date) => "Published at ${date}"; + static m20(title) => "Update error ${title}"; - static m21(date) => "Removed at ${date}"; + static m21(count) => "${Intl.plural(count, zero: '', one: 'Podcast', other: 'Podcasts')}"; - static m22(count) => "${Intl.plural(count, zero: '0 sec', one: '${count} sec', other: '${count} sec')}"; + static m22(date) => "Published at ${date}"; - static m23(count) => "${Intl.plural(count, zero: 'Just now', one: '${count} second ago', other: '${count} seconds ago')}"; + static m23(date) => "Removed at ${date}"; - static m24(time) => "Last time ${time}"; + static m24(count) => "${Intl.plural(count, zero: '0 sec', one: '${count} sec', other: '${count} sec')}"; - static m25(time) => "${time} Left"; + static m25(count) => "${Intl.plural(count, zero: 'Just now', one: '${count} second ago', other: '${count} seconds ago')}"; - static m26(time) => "To ${time}"; + static m26(time) => "Last time ${time}"; - static m27(count) => "${Intl.plural(count, zero: 'No update', one: 'Updated ${count} episode', other: 'Updated ${count} episodes')}"; + static m27(time) => "${time} Left"; - static m28(version) => "Version: ${version}"; + static m28(time) => "To ${time}"; + + static m29(count) => "${Intl.plural(count, zero: 'No update', one: 'Updated ${count} episode', other: 'Updated ${count} episodes')}"; + + static m30(version) => "Version: ${version}"; final messages = _notInlinedMessages(_notInlinedMessages); static _notInlinedMessages(_) => { @@ -140,6 +144,7 @@ class MessageLookup extends MessageLookupByLibrary { "fonts" : MessageLookupByLibrary.simpleMessage("Fonts"), "from" : m5, "goodNight" : MessageLookupByLibrary.simpleMessage("Good Night"), + "gpodderLoginDes" : MessageLookupByLibrary.simpleMessage("Congratulations! You have linked gpodder.net account successfully. Tsacdop will automatically sync subscriptions on your device with your gpodder.net account."), "groupExisted" : MessageLookupByLibrary.simpleMessage("Group already exists"), "groupFilter" : MessageLookupByLibrary.simpleMessage("Group filter"), "groupRemoveConfirm" : MessageLookupByLibrary.simpleMessage("Are you sure you want to delete this group? Podcasts will be moved to the Home group."), @@ -157,9 +162,12 @@ class MessageLookup extends MessageLookupByLibrary { "hoursAgo" : m8, "hoursCount" : m9, "import" : MessageLookupByLibrary.simpleMessage("Import"), + "intergateWith" : m10, "introFourthPage" : MessageLookupByLibrary.simpleMessage("You can long press on episode card for quick actions."), "introSecondPage" : MessageLookupByLibrary.simpleMessage("Subscribe podcast via search or import OPML file."), "introThirdPage" : MessageLookupByLibrary.simpleMessage("You can create new group for podcasts."), + "invalidName" : MessageLookupByLibrary.simpleMessage("Invalid username"), + "lastUpdate" : MessageLookupByLibrary.simpleMessage("Last update"), "later" : MessageLookupByLibrary.simpleMessage("Later"), "lightMode" : MessageLookupByLibrary.simpleMessage("Light mode"), "like" : MessageLookupByLibrary.simpleMessage("Like"), @@ -168,6 +176,10 @@ class MessageLookup extends MessageLookupByLibrary { "listen" : MessageLookupByLibrary.simpleMessage("Listen"), "listened" : MessageLookupByLibrary.simpleMessage("Listened"), "loadMore" : MessageLookupByLibrary.simpleMessage("Load more"), + "loggedInAs" : m11, + "login" : MessageLookupByLibrary.simpleMessage("Login"), + "loginFailed" : MessageLookupByLibrary.simpleMessage("Login failed"), + "logout" : MessageLookupByLibrary.simpleMessage("Logout"), "mark" : MessageLookupByLibrary.simpleMessage("Mark"), "markConfirm" : MessageLookupByLibrary.simpleMessage("Confirm marking"), "markConfirmContent" : MessageLookupByLibrary.simpleMessage("Confirm to mark all episodes as listened?"), @@ -178,8 +190,8 @@ class MessageLookup extends MessageLookupByLibrary { "menuMarkAllListened" : MessageLookupByLibrary.simpleMessage("Mark All As Listened"), "menuViewRSS" : MessageLookupByLibrary.simpleMessage("Visit RSS Feed"), "menuVisitSite" : MessageLookupByLibrary.simpleMessage("Visit Site"), - "minsAgo" : m10, - "minsCount" : m11, + "minsAgo" : m12, + "minsCount" : m13, "network" : MessageLookupByLibrary.simpleMessage("Network"), "newGroup" : MessageLookupByLibrary.simpleMessage("Create new group"), "newestFirst" : MessageLookupByLibrary.simpleMessage("Newest first"), @@ -189,15 +201,17 @@ class MessageLookup extends MessageLookupByLibrary { "noEpisodeRecent" : MessageLookupByLibrary.simpleMessage("No episodes received yet"), "noPodcastGroup" : MessageLookupByLibrary.simpleMessage("No podcasts in this group"), "noShownote" : MessageLookupByLibrary.simpleMessage("No show notes available for this episode."), - "notificaitonFatch" : m12, - "notificationNetworkError" : m13, + "notificaitonFatch" : m14, + "notificationNetworkError" : m15, "notificationSetting" : MessageLookupByLibrary.simpleMessage("Notification panel"), - "notificationSubscribe" : m14, - "notificationSubscribeExisted" : m15, - "notificationSuccess" : m16, - "notificationUpdate" : m17, - "notificationUpdateError" : m18, + "notificationSubscribe" : m16, + "notificationSubscribeExisted" : m17, + "notificationSuccess" : m18, + "notificationUpdate" : m19, + "notificationUpdateError" : m20, "oldestFirst" : MessageLookupByLibrary.simpleMessage("Oldest first"), + "passwdRequired" : MessageLookupByLibrary.simpleMessage("Password required"), + "password" : MessageLookupByLibrary.simpleMessage("Password"), "pause" : MessageLookupByLibrary.simpleMessage("Pause"), "play" : MessageLookupByLibrary.simpleMessage("Play"), "playback" : MessageLookupByLibrary.simpleMessage("Playback control"), @@ -207,7 +221,7 @@ class MessageLookup extends MessageLookupByLibrary { "playerHeightTall" : MessageLookupByLibrary.simpleMessage("High"), "playing" : MessageLookupByLibrary.simpleMessage("Playing"), "plugins" : MessageLookupByLibrary.simpleMessage("Plugins"), - "podcast" : m19, + "podcast" : m21, "podcastSubscribed" : MessageLookupByLibrary.simpleMessage("Podcast subscribed"), "popupMenuDownloadDes" : MessageLookupByLibrary.simpleMessage("Download episode"), "popupMenuLaterDes" : MessageLookupByLibrary.simpleMessage("Add episode to playlist"), @@ -215,7 +229,7 @@ class MessageLookup extends MessageLookupByLibrary { "popupMenuMarkDes" : MessageLookupByLibrary.simpleMessage("Mark episode as listened to"), "popupMenuPlayDes" : MessageLookupByLibrary.simpleMessage("Play the episode"), "privacyPolicy" : MessageLookupByLibrary.simpleMessage("Privacy Policy"), - "published" : m20, + "published" : m22, "publishedDaily" : MessageLookupByLibrary.simpleMessage("Published daily"), "publishedMonthly" : MessageLookupByLibrary.simpleMessage("Published monthly"), "publishedWeekly" : MessageLookupByLibrary.simpleMessage("Published weekly"), @@ -225,15 +239,15 @@ class MessageLookup extends MessageLookupByLibrary { "remove" : MessageLookupByLibrary.simpleMessage("Remove"), "removeConfirm" : MessageLookupByLibrary.simpleMessage("Removal confirmation"), "removePodcastDes" : MessageLookupByLibrary.simpleMessage("Are you sure you want to unsubscribe?"), - "removedAt" : m21, + "removedAt" : m23, "save" : MessageLookupByLibrary.simpleMessage("Save"), "schedule" : MessageLookupByLibrary.simpleMessage("Schedule"), "search" : MessageLookupByLibrary.simpleMessage("Search"), "searchEpisode" : MessageLookupByLibrary.simpleMessage("Search episode"), "searchInvalidRss" : MessageLookupByLibrary.simpleMessage("Invalid RSS link"), "searchPodcast" : MessageLookupByLibrary.simpleMessage("Search for podcasts"), - "secCount" : m22, - "secondsAgo" : m23, + "secCount" : m24, + "secondsAgo" : m25, "settingStorage" : MessageLookupByLibrary.simpleMessage("Storage"), "settings" : MessageLookupByLibrary.simpleMessage("Settings"), "settingsAccentColor" : MessageLookupByLibrary.simpleMessage("Accent color"), @@ -313,13 +327,15 @@ class MessageLookup extends MessageLookupByLibrary { "skipSilence" : MessageLookupByLibrary.simpleMessage("Skip silence"), "skipToNext" : MessageLookupByLibrary.simpleMessage("Skip to next"), "sleepTimer" : MessageLookupByLibrary.simpleMessage("Sleep timer"), + "status" : MessageLookupByLibrary.simpleMessage("Status"), "stop" : MessageLookupByLibrary.simpleMessage("Stop"), "subscribe" : MessageLookupByLibrary.simpleMessage("Subscribe"), "subscribeExportDes" : MessageLookupByLibrary.simpleMessage("Export OPML file of all podcasts"), + "syncNow" : MessageLookupByLibrary.simpleMessage("Sync now"), "systemDefault" : MessageLookupByLibrary.simpleMessage("System default"), - "timeLastPlayed" : m24, - "timeLeft" : m25, - "to" : m26, + "timeLastPlayed" : m26, + "timeLeft" : m27, + "to" : m28, "toastAddPlaylist" : MessageLookupByLibrary.simpleMessage("Added to playlist"), "toastDiscovery" : MessageLookupByLibrary.simpleMessage("Discovery feature reenabled, please reopen the app"), "toastFileError" : MessageLookupByLibrary.simpleMessage("File error, subscribing failed"), @@ -340,8 +356,10 @@ class MessageLookup extends MessageLookupByLibrary { "unlike" : MessageLookupByLibrary.simpleMessage("Unlike"), "unliked" : MessageLookupByLibrary.simpleMessage("Episode removed from favorites"), "updateDate" : MessageLookupByLibrary.simpleMessage("Update date"), - "updateEpisodesCount" : m27, + "updateEpisodesCount" : m29, "updateFailed" : MessageLookupByLibrary.simpleMessage("Update failed, network error"), - "version" : m28 + "username" : MessageLookupByLibrary.simpleMessage("Username"), + "usernameRequired" : MessageLookupByLibrary.simpleMessage("Username required"), + "version" : m30 }; } diff --git a/lib/generated/intl/messages_es.dart b/lib/generated/intl/messages_es.dart index e081106..5dd7840 100644 --- a/lib/generated/intl/messages_es.dart +++ b/lib/generated/intl/messages_es.dart @@ -39,43 +39,47 @@ class MessageLookup extends MessageLookupByLibrary { static m9(count) => "${Intl.plural(count, zero: 'Cero horas', one: '${count} hora', other: '${count} horas')}"; - static m10(count) => "${Intl.plural(count, zero: 'Justo Ahora', one: 'Hace ${count} minuto ', other: 'Hace ${count} minutos')}"; + static m10(service) => "Integrate with ${service}"; - static m11(count) => "${Intl.plural(count, zero: '0 minutos', one: '${count} minuto', other: '${count} minutos')}"; + static m11(userName) => "Logged in as ${userName}"; - static m12(title) => "Obtener datos ${title}"; + static m12(count) => "${Intl.plural(count, zero: 'Justo Ahora', one: 'Hace ${count} minuto ', other: 'Hace ${count} minutos')}"; - static m13(title) => "Suscripción fallida, error de red ${title}"; + static m13(count) => "${Intl.plural(count, zero: '0 minutos', one: '${count} minuto', other: '${count} minutos')}"; - static m14(title) => "Suscribir ${title}"; + static m14(title) => "Obtener datos ${title}"; - static m15(title) => "Suscripción fallida, podcast ya existe ${title}"; + static m15(title) => "Suscripción fallida, error de red ${title}"; - static m16(title) => "Suscripción exitosa"; + static m16(title) => "Suscribir ${title}"; - static m17(title) => "Actualizar ${title}"; + static m17(title) => "Suscripción fallida, podcast ya existe ${title}"; - static m18(title) => "Error de actualización ${title}"; + static m18(title) => "Suscripción exitosa"; - static m19(count) => "${Intl.plural(count, zero: '', one: 'Podcast', other: 'Podcasts')}"; + static m19(title) => "Actualizar ${title}"; - static m20(date) => "Publicado el ${date}"; + static m20(title) => "Error de actualización ${title}"; - static m21(date) => "Removido el (fecha)"; + static m21(count) => "${Intl.plural(count, zero: '', one: 'Podcast', other: 'Podcasts')}"; - static m22(count) => "${Intl.plural(count, zero: '0 segundos', one: '${count} segundo', other: '${count} segundos')}"; + static m22(date) => "Publicado el ${date}"; - static m23(count) => "${Intl.plural(count, zero: 'Justo ahora', one: 'Hace ${count} segundo ', other: 'Hace ${count} segundos')}"; + static m23(date) => "Removido el (fecha)"; - static m24(time) => "Tiempo previo ${time}"; + static m24(count) => "${Intl.plural(count, zero: '0 segundos', one: '${count} segundo', other: '${count} segundos')}"; - static m25(time) => "${time} Restante"; + static m25(count) => "${Intl.plural(count, zero: 'Justo ahora', one: 'Hace ${count} segundo ', other: 'Hace ${count} segundos')}"; - static m26(time) => "A ${time}"; + static m26(time) => "Tiempo previo ${time}"; - static m27(count) => "${Intl.plural(count, zero: 'No hay actualizaciones', one: 'Se actualizo ${count} episodio', other: 'Se actualizaron ${count} episodios')}"; + static m27(time) => "${time} Restante"; - static m28(version) => "Versión: ${version}"; + static m28(time) => "A ${time}"; + + static m29(count) => "${Intl.plural(count, zero: 'No hay actualizaciones', one: 'Se actualizo ${count} episodio', other: 'Se actualizaron ${count} episodios')}"; + + static m30(version) => "Versión: ${version}"; final messages = _notInlinedMessages(_notInlinedMessages); static _notInlinedMessages(_) => { @@ -140,6 +144,7 @@ class MessageLookup extends MessageLookupByLibrary { "fonts" : MessageLookupByLibrary.simpleMessage("Tipografías"), "from" : m5, "goodNight" : MessageLookupByLibrary.simpleMessage("Buenas noches"), + "gpodderLoginDes" : MessageLookupByLibrary.simpleMessage("Congratulations! You have linked gpodder.net account successfully. Tsacdop will automatically sync subscriptions on your device with your gpodder.net account."), "groupExisted" : MessageLookupByLibrary.simpleMessage("El grupo ya existe"), "groupFilter" : MessageLookupByLibrary.simpleMessage("Filtro de grupo"), "groupRemoveConfirm" : MessageLookupByLibrary.simpleMessage("¿Estas seguro de que quieres remover este grupo? Los podcasts serán movidos al grupo Home"), @@ -157,9 +162,12 @@ class MessageLookup extends MessageLookupByLibrary { "hoursAgo" : m8, "hoursCount" : m9, "import" : MessageLookupByLibrary.simpleMessage("Importar"), + "intergateWith" : m10, "introFourthPage" : MessageLookupByLibrary.simpleMessage("Puedes mantener presionado un episodio para realizar acciones rápidas"), "introSecondPage" : MessageLookupByLibrary.simpleMessage("Suscribete a podcasts buscándolos, o importando un archivo OPML"), "introThirdPage" : MessageLookupByLibrary.simpleMessage("Puedes crear un nuevo grupo de podcasts"), + "invalidName" : MessageLookupByLibrary.simpleMessage("Invalid username"), + "lastUpdate" : MessageLookupByLibrary.simpleMessage("Last update"), "later" : MessageLookupByLibrary.simpleMessage("Despues"), "lightMode" : MessageLookupByLibrary.simpleMessage("Modo claro"), "like" : MessageLookupByLibrary.simpleMessage("Me gusta"), @@ -168,6 +176,10 @@ class MessageLookup extends MessageLookupByLibrary { "listen" : MessageLookupByLibrary.simpleMessage("Escuchar"), "listened" : MessageLookupByLibrary.simpleMessage("Escuchado"), "loadMore" : MessageLookupByLibrary.simpleMessage("Cargar mas"), + "loggedInAs" : m11, + "login" : MessageLookupByLibrary.simpleMessage("Loign"), + "loginFailed" : MessageLookupByLibrary.simpleMessage("Login failed"), + "logout" : MessageLookupByLibrary.simpleMessage("Logout"), "mark" : MessageLookupByLibrary.simpleMessage("Completado"), "markConfirm" : MessageLookupByLibrary.simpleMessage("Confirmar marcado"), "markConfirmContent" : MessageLookupByLibrary.simpleMessage("¿Marcar todos los episodios como escuchados?"), @@ -178,8 +190,8 @@ class MessageLookup extends MessageLookupByLibrary { "menuMarkAllListened" : MessageLookupByLibrary.simpleMessage("Marcar todo como escuchado"), "menuViewRSS" : MessageLookupByLibrary.simpleMessage("Visitar feed RSS"), "menuVisitSite" : MessageLookupByLibrary.simpleMessage("Visitar sitio web"), - "minsAgo" : m10, - "minsCount" : m11, + "minsAgo" : m12, + "minsCount" : m13, "network" : MessageLookupByLibrary.simpleMessage("Red"), "newGroup" : MessageLookupByLibrary.simpleMessage("Crear grupo nuevo"), "newestFirst" : MessageLookupByLibrary.simpleMessage("Mas recientes primero"), @@ -189,15 +201,17 @@ class MessageLookup extends MessageLookupByLibrary { "noEpisodeRecent" : MessageLookupByLibrary.simpleMessage("Aun no hay episodios recibidos"), "noPodcastGroup" : MessageLookupByLibrary.simpleMessage("No hay podcasts en este grupo"), "noShownote" : MessageLookupByLibrary.simpleMessage("Aun no hay notas disponibles para este episodio"), - "notificaitonFatch" : m12, - "notificationNetworkError" : m13, + "notificaitonFatch" : m14, + "notificationNetworkError" : m15, "notificationSetting" : MessageLookupByLibrary.simpleMessage("Notification panel"), - "notificationSubscribe" : m14, - "notificationSubscribeExisted" : m15, - "notificationSuccess" : m16, - "notificationUpdate" : m17, - "notificationUpdateError" : m18, + "notificationSubscribe" : m16, + "notificationSubscribeExisted" : m17, + "notificationSuccess" : m18, + "notificationUpdate" : m19, + "notificationUpdateError" : m20, "oldestFirst" : MessageLookupByLibrary.simpleMessage("Mas antiguos primero"), + "passwdRequired" : MessageLookupByLibrary.simpleMessage("Password required"), + "password" : MessageLookupByLibrary.simpleMessage("Password"), "pause" : MessageLookupByLibrary.simpleMessage("Pause"), "play" : MessageLookupByLibrary.simpleMessage("Reproducir"), "playback" : MessageLookupByLibrary.simpleMessage("Control de reproducción"), @@ -207,7 +221,7 @@ class MessageLookup extends MessageLookupByLibrary { "playerHeightTall" : MessageLookupByLibrary.simpleMessage("Alto"), "playing" : MessageLookupByLibrary.simpleMessage("Reproduciendo"), "plugins" : MessageLookupByLibrary.simpleMessage("Plugins"), - "podcast" : m19, + "podcast" : m21, "podcastSubscribed" : MessageLookupByLibrary.simpleMessage("Podcast añadido"), "popupMenuDownloadDes" : MessageLookupByLibrary.simpleMessage("Descargar episodio"), "popupMenuLaterDes" : MessageLookupByLibrary.simpleMessage("Añadir episodio a lista de reproducción"), @@ -215,7 +229,7 @@ class MessageLookup extends MessageLookupByLibrary { "popupMenuMarkDes" : MessageLookupByLibrary.simpleMessage("Marcar episodio como escuchado"), "popupMenuPlayDes" : MessageLookupByLibrary.simpleMessage("Reproducir episodio\n"), "privacyPolicy" : MessageLookupByLibrary.simpleMessage("Política de privacidad"), - "published" : m20, + "published" : m22, "publishedDaily" : MessageLookupByLibrary.simpleMessage("Publicado diariamente"), "publishedMonthly" : MessageLookupByLibrary.simpleMessage("Publicado mensualmente"), "publishedWeekly" : MessageLookupByLibrary.simpleMessage("Publicado semanalmente"), @@ -225,15 +239,15 @@ class MessageLookup extends MessageLookupByLibrary { "remove" : MessageLookupByLibrary.simpleMessage("Remover"), "removeConfirm" : MessageLookupByLibrary.simpleMessage("Confirma la remoción "), "removePodcastDes" : MessageLookupByLibrary.simpleMessage("¿Estas seguro de que deseas desuscribirte?"), - "removedAt" : m21, + "removedAt" : m23, "save" : MessageLookupByLibrary.simpleMessage("Guardar"), "schedule" : MessageLookupByLibrary.simpleMessage("Horario"), "search" : MessageLookupByLibrary.simpleMessage("Buscar"), "searchEpisode" : MessageLookupByLibrary.simpleMessage("Buscar episodio"), "searchInvalidRss" : MessageLookupByLibrary.simpleMessage("Enlace RSS invalido "), "searchPodcast" : MessageLookupByLibrary.simpleMessage("Buscar podcast"), - "secCount" : m22, - "secondsAgo" : m23, + "secCount" : m24, + "secondsAgo" : m25, "settingStorage" : MessageLookupByLibrary.simpleMessage("Almacenamiento"), "settings" : MessageLookupByLibrary.simpleMessage("Ajustes"), "settingsAccentColor" : MessageLookupByLibrary.simpleMessage("Color de acento "), @@ -313,13 +327,15 @@ class MessageLookup extends MessageLookupByLibrary { "skipSilence" : MessageLookupByLibrary.simpleMessage("Saltar silencios"), "skipToNext" : MessageLookupByLibrary.simpleMessage("Skip to next"), "sleepTimer" : MessageLookupByLibrary.simpleMessage("Temporizador de sueño"), + "status" : MessageLookupByLibrary.simpleMessage("Status"), "stop" : MessageLookupByLibrary.simpleMessage("Stop"), "subscribe" : MessageLookupByLibrary.simpleMessage("Suscribir"), "subscribeExportDes" : MessageLookupByLibrary.simpleMessage("Exportar OPML de todos los podcasts"), + "syncNow" : MessageLookupByLibrary.simpleMessage("Sync now"), "systemDefault" : MessageLookupByLibrary.simpleMessage("Acorde al sistema"), - "timeLastPlayed" : m24, - "timeLeft" : m25, - "to" : m26, + "timeLastPlayed" : m26, + "timeLeft" : m27, + "to" : m28, "toastAddPlaylist" : MessageLookupByLibrary.simpleMessage("Añadido a la lista de reproducción "), "toastDiscovery" : MessageLookupByLibrary.simpleMessage("El tutorial se ha reiniciado, reinicia la app porfavor"), "toastFileError" : MessageLookupByLibrary.simpleMessage("Error de archivo, suscripción fallida"), @@ -340,8 +356,10 @@ class MessageLookup extends MessageLookupByLibrary { "unlike" : MessageLookupByLibrary.simpleMessage("No me gusta"), "unliked" : MessageLookupByLibrary.simpleMessage("Episodio removido de favoritos"), "updateDate" : MessageLookupByLibrary.simpleMessage("Fecha de actualización "), - "updateEpisodesCount" : m27, + "updateEpisodesCount" : m29, "updateFailed" : MessageLookupByLibrary.simpleMessage("Actualización fallida, error de red"), - "version" : m28 + "username" : MessageLookupByLibrary.simpleMessage("Username"), + "usernameRequired" : MessageLookupByLibrary.simpleMessage("Username required"), + "version" : m30 }; } diff --git a/lib/generated/intl/messages_fr.dart b/lib/generated/intl/messages_fr.dart index 270fefc..4c63b90 100644 --- a/lib/generated/intl/messages_fr.dart +++ b/lib/generated/intl/messages_fr.dart @@ -39,43 +39,47 @@ class MessageLookup extends MessageLookupByLibrary { static m9(count) => "${Intl.plural(count, zero: '0 heure', one: '${count} heure', other: '${count} heures')}"; - static m10(count) => "${Intl.plural(count, zero: 'A l\'instant', one: 'Il y a ${count} minute', other: 'Il y a ${count} minutes')}"; + static m10(service) => "Integrate with ${service}"; - static m11(count) => "${Intl.plural(count, zero: '0 min', one: '${count} min', other: '${count} mins')}"; + static m11(userName) => "Logged in as ${userName}"; - static m12(title) => "Accès aux données ${title} "; + static m12(count) => "${Intl.plural(count, zero: 'A l\'instant', one: 'Il y a ${count} minute', other: 'Il y a ${count} minutes')}"; - static m13(title) => "Échec de l’abonnement, erreur réseau ${title} "; + static m13(count) => "${Intl.plural(count, zero: '0 min', one: '${count} min', other: '${count} mins')}"; - static m14(title) => "Abonnement en cours"; + static m14(title) => "Accès aux données ${title} "; - static m15(title) => "Échec de l’abonnement, le podcast existe déjà ${title}"; + static m15(title) => "Échec de l’abonnement, erreur réseau ${title} "; - static m16(title) => "Abonnement réussi."; + static m16(title) => "Abonnement en cours"; - static m17(title) => "Mise à jour ${title}"; + static m17(title) => "Échec de l’abonnement, le podcast existe déjà ${title}"; - static m18(title) => "Échec de la mise à jour ${title}"; + static m18(title) => "Abonnement réussi."; - static m19(count) => "${Intl.plural(count, zero: '', one: 'Podcast', other: 'Podcasts')}"; + static m19(title) => "Mise à jour ${title}"; - static m20(date) => "Publié le ${date}"; + static m20(title) => "Échec de la mise à jour ${title}"; - static m21(date) => "Supprimé le ${date}"; + static m21(count) => "${Intl.plural(count, zero: '', one: 'Podcast', other: 'Podcasts')}"; - static m22(count) => "${Intl.plural(count, zero: '0 sec', one: '${count} sec', other: '${count} sec')}"; + static m22(date) => "Publié le ${date}"; - static m23(count) => "${Intl.plural(count, zero: 'A l\'instant', one: 'Il y a ${count} seconde', other: 'Il y a ${count} secondes')}"; + static m23(date) => "Supprimé le ${date}"; - static m24(time) => "Dernière écoute à ${time}"; + static m24(count) => "${Intl.plural(count, zero: '0 sec', one: '${count} sec', other: '${count} sec')}"; - static m25(time) => "${time} Restant"; + static m25(count) => "${Intl.plural(count, zero: 'A l\'instant', one: 'Il y a ${count} seconde', other: 'Il y a ${count} secondes')}"; - static m26(time) => "à ${time}"; + static m26(time) => "Dernière écoute à ${time}"; - static m27(count) => "${Intl.plural(count, zero: 'Aucune mise à jour.', one: 'Mise à jour d\'${count} épisode.', other: 'Mise à jour de ${count} épisodes.')}"; + static m27(time) => "${time} Restant"; - static m28(version) => "Version : ${version}"; + static m28(time) => "à ${time}"; + + static m29(count) => "${Intl.plural(count, zero: 'Aucune mise à jour.', one: 'Mise à jour d\'${count} épisode.', other: 'Mise à jour de ${count} épisodes.')}"; + + static m30(version) => "Version : ${version}"; final messages = _notInlinedMessages(_notInlinedMessages); static _notInlinedMessages(_) => { @@ -140,6 +144,7 @@ class MessageLookup extends MessageLookupByLibrary { "fonts" : MessageLookupByLibrary.simpleMessage("Polices"), "from" : m5, "goodNight" : MessageLookupByLibrary.simpleMessage("Bonne nuit"), + "gpodderLoginDes" : MessageLookupByLibrary.simpleMessage("Congratulations! You have linked gpodder.net account successfully. Tsacdop will automatically sync subscriptions on your device with your gpodder.net account."), "groupExisted" : MessageLookupByLibrary.simpleMessage("Ce groupe existe déjà"), "groupFilter" : MessageLookupByLibrary.simpleMessage("Filtrer par groupe"), "groupRemoveConfirm" : MessageLookupByLibrary.simpleMessage("Êtes-vous sûr de vouloir supprimer ce groupe ? Les podcasts seront déplacés vers le groupe Home."), @@ -157,9 +162,12 @@ class MessageLookup extends MessageLookupByLibrary { "hoursAgo" : m8, "hoursCount" : m9, "import" : MessageLookupByLibrary.simpleMessage("Importer"), + "intergateWith" : m10, "introFourthPage" : MessageLookupByLibrary.simpleMessage("Un appui long sur un épisode lance les actions rapides."), "introSecondPage" : MessageLookupByLibrary.simpleMessage("S\'abonner aux podcasts via la section recherche ou un fichier OPML."), "introThirdPage" : MessageLookupByLibrary.simpleMessage("Vous pouvez créer des groupes de podcasts."), + "invalidName" : MessageLookupByLibrary.simpleMessage("Invalid username"), + "lastUpdate" : MessageLookupByLibrary.simpleMessage("Last update"), "later" : MessageLookupByLibrary.simpleMessage("Plus tard"), "lightMode" : MessageLookupByLibrary.simpleMessage("Mode clair"), "like" : MessageLookupByLibrary.simpleMessage("Like"), @@ -168,6 +176,10 @@ class MessageLookup extends MessageLookupByLibrary { "listen" : MessageLookupByLibrary.simpleMessage("Écoutés"), "listened" : MessageLookupByLibrary.simpleMessage("Écouté "), "loadMore" : MessageLookupByLibrary.simpleMessage("Voir plus"), + "loggedInAs" : m11, + "login" : MessageLookupByLibrary.simpleMessage("Login"), + "loginFailed" : MessageLookupByLibrary.simpleMessage("Login failed"), + "logout" : MessageLookupByLibrary.simpleMessage("Logout"), "mark" : MessageLookupByLibrary.simpleMessage("✓"), "markConfirm" : MessageLookupByLibrary.simpleMessage("Marquage effectué"), "markConfirmContent" : MessageLookupByLibrary.simpleMessage("Marquer tous les épisodes comme lus ?"), @@ -178,8 +190,8 @@ class MessageLookup extends MessageLookupByLibrary { "menuMarkAllListened" : MessageLookupByLibrary.simpleMessage("Marquer comme tous lu"), "menuViewRSS" : MessageLookupByLibrary.simpleMessage("Accéder au flux RSS"), "menuVisitSite" : MessageLookupByLibrary.simpleMessage("Accéder au site"), - "minsAgo" : m10, - "minsCount" : m11, + "minsAgo" : m12, + "minsCount" : m13, "network" : MessageLookupByLibrary.simpleMessage("Réseau"), "newGroup" : MessageLookupByLibrary.simpleMessage("Créer un nouveau groupe"), "newestFirst" : MessageLookupByLibrary.simpleMessage("Le plus récent en premier"), @@ -189,15 +201,17 @@ class MessageLookup extends MessageLookupByLibrary { "noEpisodeRecent" : MessageLookupByLibrary.simpleMessage("Aucun épisode récent."), "noPodcastGroup" : MessageLookupByLibrary.simpleMessage("Ce groupe ne contient aucun podcast"), "noShownote" : MessageLookupByLibrary.simpleMessage("Notes de l\'épisode manquantes."), - "notificaitonFatch" : m12, - "notificationNetworkError" : m13, + "notificaitonFatch" : m14, + "notificationNetworkError" : m15, "notificationSetting" : MessageLookupByLibrary.simpleMessage("Notification panel"), - "notificationSubscribe" : m14, - "notificationSubscribeExisted" : m15, - "notificationSuccess" : m16, - "notificationUpdate" : m17, - "notificationUpdateError" : m18, + "notificationSubscribe" : m16, + "notificationSubscribeExisted" : m17, + "notificationSuccess" : m18, + "notificationUpdate" : m19, + "notificationUpdateError" : m20, "oldestFirst" : MessageLookupByLibrary.simpleMessage("Le plus ancien en premier"), + "passwdRequired" : MessageLookupByLibrary.simpleMessage("Password required"), + "password" : MessageLookupByLibrary.simpleMessage("Password"), "pause" : MessageLookupByLibrary.simpleMessage("Pause"), "play" : MessageLookupByLibrary.simpleMessage("Lecture"), "playback" : MessageLookupByLibrary.simpleMessage("Commandes du lecteur"), @@ -207,7 +221,7 @@ class MessageLookup extends MessageLookupByLibrary { "playerHeightTall" : MessageLookupByLibrary.simpleMessage("Grand"), "playing" : MessageLookupByLibrary.simpleMessage("En cours"), "plugins" : MessageLookupByLibrary.simpleMessage("Plugins"), - "podcast" : m19, + "podcast" : m21, "podcastSubscribed" : MessageLookupByLibrary.simpleMessage("Abonné au podcast"), "popupMenuDownloadDes" : MessageLookupByLibrary.simpleMessage("Télécharger l\'épisode"), "popupMenuLaterDes" : MessageLookupByLibrary.simpleMessage("Ajouter à la playlist"), @@ -215,7 +229,7 @@ class MessageLookup extends MessageLookupByLibrary { "popupMenuMarkDes" : MessageLookupByLibrary.simpleMessage("Marquer l\'épisode comme lu"), "popupMenuPlayDes" : MessageLookupByLibrary.simpleMessage("Lancer l\'épisode"), "privacyPolicy" : MessageLookupByLibrary.simpleMessage("Gestion des données"), - "published" : m20, + "published" : m22, "publishedDaily" : MessageLookupByLibrary.simpleMessage("Quotidien"), "publishedMonthly" : MessageLookupByLibrary.simpleMessage("Mensuel"), "publishedWeekly" : MessageLookupByLibrary.simpleMessage("Hebdomadaire"), @@ -225,15 +239,15 @@ class MessageLookup extends MessageLookupByLibrary { "remove" : MessageLookupByLibrary.simpleMessage("Supprimer"), "removeConfirm" : MessageLookupByLibrary.simpleMessage("Confirmer la suppression"), "removePodcastDes" : MessageLookupByLibrary.simpleMessage("Êtes-vous sûr de vouloir vous désabonner ?"), - "removedAt" : m21, + "removedAt" : m23, "save" : MessageLookupByLibrary.simpleMessage("Sauvegarder"), "schedule" : MessageLookupByLibrary.simpleMessage("Programmation"), "search" : MessageLookupByLibrary.simpleMessage("Rechercher"), "searchEpisode" : MessageLookupByLibrary.simpleMessage("Rechercher un épisode"), "searchInvalidRss" : MessageLookupByLibrary.simpleMessage("Lien RSS invalide"), "searchPodcast" : MessageLookupByLibrary.simpleMessage("Chercher un podcast"), - "secCount" : m22, - "secondsAgo" : m23, + "secCount" : m24, + "secondsAgo" : m25, "settingStorage" : MessageLookupByLibrary.simpleMessage("Espace de stockage"), "settings" : MessageLookupByLibrary.simpleMessage("Paramètres"), "settingsAccentColor" : MessageLookupByLibrary.simpleMessage("Couleur principale"), @@ -313,13 +327,15 @@ class MessageLookup extends MessageLookupByLibrary { "skipSilence" : MessageLookupByLibrary.simpleMessage("Skip silence"), "skipToNext" : MessageLookupByLibrary.simpleMessage("Skip to next"), "sleepTimer" : MessageLookupByLibrary.simpleMessage("Minuterie"), + "status" : MessageLookupByLibrary.simpleMessage("Status"), "stop" : MessageLookupByLibrary.simpleMessage("Stop"), "subscribe" : MessageLookupByLibrary.simpleMessage("S\'abonner"), "subscribeExportDes" : MessageLookupByLibrary.simpleMessage("Exporter le fichier OPML de tous les podcasts."), + "syncNow" : MessageLookupByLibrary.simpleMessage("Sync now"), "systemDefault" : MessageLookupByLibrary.simpleMessage("Système par défaut"), - "timeLastPlayed" : m24, - "timeLeft" : m25, - "to" : m26, + "timeLastPlayed" : m26, + "timeLeft" : m27, + "to" : m28, "toastAddPlaylist" : MessageLookupByLibrary.simpleMessage("Ajouter l\'épisode à la playlist."), "toastDiscovery" : MessageLookupByLibrary.simpleMessage("Tutoriel réinitialisé, veuillez redémarrer l\'application."), "toastFileError" : MessageLookupByLibrary.simpleMessage("Erreur du fichier, échec de l\'abonnement."), @@ -340,8 +356,10 @@ class MessageLookup extends MessageLookupByLibrary { "unlike" : MessageLookupByLibrary.simpleMessage("Unlike"), "unliked" : MessageLookupByLibrary.simpleMessage("L\'épisode a été supprimé des favoris."), "updateDate" : MessageLookupByLibrary.simpleMessage("Date de mise à jour"), - "updateEpisodesCount" : m27, + "updateEpisodesCount" : m29, "updateFailed" : MessageLookupByLibrary.simpleMessage("Échec de la mise à jour, erreur réseau"), - "version" : m28 + "username" : MessageLookupByLibrary.simpleMessage("Username"), + "usernameRequired" : MessageLookupByLibrary.simpleMessage("Username required"), + "version" : m30 }; } diff --git a/lib/generated/l10n.dart b/lib/generated/l10n.dart index fb27f08..0f445ed 100644 --- a/lib/generated/l10n.dart +++ b/lib/generated/l10n.dart @@ -658,6 +658,16 @@ class S { ); } + /// `Congratulations! You have linked gpodder.net account successfully. Tsacdop will automatically sync subscriptions on your device with your gpodder.net account.` + String get gpodderLoginDes { + return Intl.message( + 'Congratulations! You have linked gpodder.net account successfully. Tsacdop will automatically sync subscriptions on your device with your gpodder.net account.', + name: 'gpodderLoginDes', + desc: '', + args: [], + ); + } + /// `Group already exists` String get groupExisted { return Intl.message( @@ -837,6 +847,16 @@ class S { ); } + /// `Integrate with {service}` + String intergateWith(Object service) { + return Intl.message( + 'Integrate with $service', + name: 'intergateWith', + desc: 'Integrate with', + args: [service], + ); + } + /// `You can long press on episode card for quick actions.` String get introFourthPage { return Intl.message( @@ -867,6 +887,26 @@ class S { ); } + /// `Invalid username` + String get invalidName { + return Intl.message( + 'Invalid username', + name: 'invalidName', + desc: '', + args: [], + ); + } + + /// `Last update` + String get lastUpdate { + return Intl.message( + 'Last update', + name: 'lastUpdate', + desc: 'gpodder.net update', + args: [], + ); + } + /// `Later` String get later { return Intl.message( @@ -947,6 +987,46 @@ class S { ); } + /// `Logged in as {userName}` + String loggedInAs(Object userName) { + return Intl.message( + 'Logged in as $userName', + name: 'loggedInAs', + desc: 'gpodder.net', + args: [userName], + ); + } + + /// `Login` + String get login { + return Intl.message( + 'Login', + name: 'login', + desc: 'gpodder.net login', + args: [], + ); + } + + /// `Login failed` + String get loginFailed { + return Intl.message( + 'Login failed', + name: 'loginFailed', + desc: '', + args: [], + ); + } + + /// `Logout` + String get logout { + return Intl.message( + 'Logout', + name: 'logout', + desc: 'gpodder.net logout', + args: [], + ); + } + /// `Mark` String get mark { return Intl.message( @@ -1253,6 +1333,26 @@ class S { ); } + /// `Password required` + String get passwdRequired { + return Intl.message( + 'Password required', + name: 'passwdRequired', + desc: '', + args: [], + ); + } + + /// `Password` + String get password { + return Intl.message( + 'Password', + name: 'password', + desc: '', + args: [], + ); + } + /// `Pause` String get pause { return Intl.message( @@ -2412,6 +2512,16 @@ class S { ); } + /// `Status` + String get status { + return Intl.message( + 'Status', + name: 'status', + desc: 'gpodder.net status', + args: [], + ); + } + /// `Stop` String get stop { return Intl.message( @@ -2442,6 +2552,16 @@ class S { ); } + /// `Sync now` + String get syncNow { + return Intl.message( + 'Sync now', + name: 'syncNow', + desc: '', + args: [], + ); + } + /// `System default` String get systemDefault { return Intl.message( @@ -2705,6 +2825,26 @@ class S { ); } + /// `Username` + String get username { + return Intl.message( + 'Username', + name: 'username', + desc: '', + args: [], + ); + } + + /// `Username required` + String get usernameRequired { + return Intl.message( + 'Username required', + name: 'usernameRequired', + desc: '', + args: [], + ); + } + /// `Version: {version}` String version(Object version) { return Intl.message( @@ -2724,6 +2864,7 @@ class AppLocalizationDelegate extends LocalizationsDelegate { Locale.fromSubtags(languageCode: 'en'), Locale.fromSubtags(languageCode: 'es'), Locale.fromSubtags(languageCode: 'fr'), + Locale.fromSubtags(languageCode: 'pt'), Locale.fromSubtags(languageCode: 'zh', scriptCode: 'Hans'), ]; } diff --git a/lib/home/about.dart b/lib/home/about.dart index e70d8f3..ac4e88e 100644 --- a/lib/home/about.dart +++ b/lib/home/about.dart @@ -101,9 +101,9 @@ class AboutApp extends StatelessWidget { ), child: Scaffold( backgroundColor: Theme.of(context).primaryColor, - appBar: AppBar(title: Center() - // Text(s.homeToprightMenuAbout), - ), + appBar: AppBar( + title: Text(s.homeToprightMenuAbout), + ), body: SafeArea( child: SingleChildScrollView( scrollDirection: Axis.vertical, @@ -268,7 +268,9 @@ class AboutApp extends StatelessWidget { _translatorInfo(context, name: 'Atrate'), _translatorInfo(context, name: 'ppp', flag: 'fr'), _translatorInfo(context, - name: 'Joel Israel', flag: 'mx') + name: 'Joel Israel', flag: 'mx'), + _translatorInfo(context, + name: 'Bruno Pinheiro', flag: 'pt'), ], ), ), diff --git a/lib/settings/languages.dart b/lib/settings/languages.dart index a770752..dd550d6 100644 --- a/lib/settings/languages.dart +++ b/lib/settings/languages.dart @@ -106,6 +106,16 @@ class _LanguagesSettingState extends State { onChanged: _setLocale), ), Divider(height: 1), + ListTile( + title: Text('português'), + onTap: () => _setLocale(Locale('pt')), + contentPadding: const EdgeInsets.only(left: 20, right: 20), + trailing: Radio( + value: Locale('pt'), + groupValue: Locale(Intl.getCurrentLocale()), + onChanged: _setLocale), + ), + Divider(height: 1), ListTile( onTap: () => 'mailto:?subject=Tsacdop localization project'