From 92789b03f4c3010bf7597183731184e703acb92c Mon Sep 17 00:00:00 2001 From: Ambroise Decouttere Date: Wed, 7 Jun 2023 09:54:02 +0200 Subject: [PATCH] fix: Error if click on frelated mailbox --- .../MailboxManagement/MailboxCell.swift | 7 +++- .../MailboxesManagementButtonView.swift | 34 +++++++++++------- .../warning.imageset/Contents.json | 16 +++++++++ .../warning.imageset/warning.svg | 3 ++ .../Localizable/de.lproj/Localizable.strings | Bin 66150 -> 67406 bytes .../Localizable/en.lproj/Localizable.strings | Bin 62686 -> 63892 bytes .../Localizable/es.lproj/Localizable.strings | Bin 66098 -> 67380 bytes .../Localizable/fr.lproj/Localizable.strings | Bin 66516 -> 67812 bytes .../Localizable/it.lproj/Localizable.strings | Bin 66020 -> 67232 bytes 9 files changed, 46 insertions(+), 14 deletions(-) create mode 100644 MailResources/Assets.xcassets/warning.imageset/Contents.json create mode 100644 MailResources/Assets.xcassets/warning.imageset/warning.svg diff --git a/Mail/Views/Menu Drawer/MailboxManagement/MailboxCell.swift b/Mail/Views/Menu Drawer/MailboxManagement/MailboxCell.swift index 43da10ac6..793d3de0f 100644 --- a/Mail/Views/Menu Drawer/MailboxManagement/MailboxCell.swift +++ b/Mail/Views/Menu Drawer/MailboxManagement/MailboxCell.swift @@ -63,9 +63,14 @@ struct MailboxCell: View { icon: MailResourcesAsset.envelope, text: mailbox.email, detailNumber: detailNumber, - isSelected: isSelected + isSelected: isSelected, + isPasswordValid: mailbox.isPasswordValid ) { guard !isSelected else { return } + guard mailbox.isPasswordValid else { + IKSnackBar.showSnackBar(message: MailResourcesStrings.Localizable.frelatedMailbox) + return + } @InjectService var matomo: MatomoUtils switch style { case .menuDrawer: diff --git a/Mail/Views/Menu Drawer/MailboxManagement/MailboxesManagementButtonView.swift b/Mail/Views/Menu Drawer/MailboxManagement/MailboxesManagementButtonView.swift index bd6a07053..b39ba8727 100644 --- a/Mail/Views/Menu Drawer/MailboxManagement/MailboxesManagementButtonView.swift +++ b/Mail/Views/Menu Drawer/MailboxManagement/MailboxesManagementButtonView.swift @@ -29,18 +29,21 @@ struct MailboxesManagementButtonView: View { let detailNumber: Int? let handleAction: () -> Void let isSelected: Bool + let isPasswordValid: Bool init( icon: MailResourcesImages, text: String, detailNumber: Int? = nil, isSelected: Bool, + isPasswordValid: Bool, handleAction: @escaping () -> Void ) { self.icon = icon.swiftUIImage self.text = text self.detailNumber = detailNumber self.isSelected = isSelected + self.isPasswordValid = isPasswordValid self.handleAction = handleAction } @@ -59,17 +62,21 @@ struct MailboxesManagementButtonView: View { } .frame(maxWidth: .infinity, alignment: .leading) - switch style { - case .menuDrawer: - if let detailNumber { - Text(detailNumber < 100 ? "\(detailNumber)" : "99+") - .textStyle(.bodySmallMediumAccent) - } - case .account: - if isSelected { - MailResourcesAsset.check.swiftUIImage - .frame(width: 16, height: 16) - .foregroundColor(.accentColor) + if !isPasswordValid { + MailResourcesAsset.warning.swiftUIImage + } else { + switch style { + case .menuDrawer: + if let detailNumber { + Text(detailNumber < 100 ? "\(detailNumber)" : "99+") + .textStyle(.bodySmallMediumAccent) + } + case .account: + if isSelected { + MailResourcesAsset.check.swiftUIImage + .frame(width: 16, height: 16) + .foregroundColor(.accentColor) + } } } } @@ -80,14 +87,15 @@ struct MailboxesManagementButtonView: View { struct MailboxesManagementButtonView_Previews: PreviewProvider { static var previews: some View { - MailboxesManagementButtonView(icon: MailResourcesAsset.folder, text: "Hello", isSelected: false) { + MailboxesManagementButtonView(icon: MailResourcesAsset.folder, text: "Hello", isSelected: false, isPasswordValid: true) { /* Empty for test */ } MailboxesManagementButtonView( icon: MailResourcesAsset.folder, text: "Hello", detailNumber: 10, - isSelected: false + isSelected: false, + isPasswordValid: true ) { /* Empty for test */ } diff --git a/MailResources/Assets.xcassets/warning.imageset/Contents.json b/MailResources/Assets.xcassets/warning.imageset/Contents.json new file mode 100644 index 000000000..b3f623cd6 --- /dev/null +++ b/MailResources/Assets.xcassets/warning.imageset/Contents.json @@ -0,0 +1,16 @@ +{ + "images" : [ + { + "filename" : "warning.svg", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true, + "template-rendering-intent" : "original" + } +} diff --git a/MailResources/Assets.xcassets/warning.imageset/warning.svg b/MailResources/Assets.xcassets/warning.imageset/warning.svg new file mode 100644 index 000000000..81309f4b5 --- /dev/null +++ b/MailResources/Assets.xcassets/warning.imageset/warning.svg @@ -0,0 +1,3 @@ + + + diff --git a/MailResources/Localizable/de.lproj/Localizable.strings b/MailResources/Localizable/de.lproj/Localizable.strings index 809a09ac27196b43237a8fa48d67c87ab0de8fe2..ed9474e88e958960ca34ce9e8d52154f3afebbc2 100644 GIT binary patch delta 898 zcmb7?J7`ov6o$`AKwKpRLkM^`<|d6qOuVn$%|--?DH0zb1POMzdmp=tW)pTdZnRO* zI?WV;6l!T{C)nDGt)-3FXdz-@5ybC|S+SL2X3lH=bIw2K^V6aCdqb~UC4XIV$>f5# z;z^bBn(RoMJ3tR4wDy`TN`!Y2TlD0hw0}@4y)$P&j^Bx~*CgRA@ToM5=EX~A)TNF=#+JU4p4oUd@hGC&Kb>Smc&sYBz#6g( z+g*ewrJvycI+11S@5(lL6L}z4>9=ir(Q_KC%i^9w_}iF?fBG{q#rc$w(#isfeM@MB z9-u4P1=dh<^J{IwO!mts*MPrIsclQlSJU*+{F^d89L@DuuQbD!A&R2ySLFchb`4;UsBv<%hT~ zi~0#faPP{`A%d&YjTk?GzjMb|mU5YU-sk-9IcGj!EWVm8zCT$A4#h|=x5X1*67EMb zkv=p;4kdE>wrolZ>n6JB!}-GY%)Xl~KZ#McCFL$KD7OI(q=RdWtb9g_gxixfxhpkk z;&n>NQpU0kH^BSELD-ibwl4h0emQGw?O`j4djXv|ZiKzSK1SyeS7k}%*a7a~*T-hu zJ+l6%!`vj-L-FkQ8`rM2 z&9hqLfc$5!GhKS_@pE1QsRdN%KvO4c_8i{uF>v@CKC*AOu3z1ygF1z= zef?vl{zsxh2YsJ2U)4wwX#q&J?^ERb!W5slnO;)$bkDJuq$tx-YprCgvD9 zquz7-@p5G_M59|VMN{H&hv*%2`fDhrQ@4Y>5_!TrwO>`P%I+Z@IqQ@=bGxk-bO)=w N)=o{y+m!oK`w7REssR81 delta 64 zcmbR8nfcyJ<_+15h9L|Y45bV@3$NNzcSzX&P?7vFMoJZez#U?EK4G> zoD)at5^~>^P04s&bXPoUZ^^v)c;~Ts&vr_$cS@yKFZW6(?g!Xg5^<;aRBG}zq)T*w zu5yPgA-5xE<-Am6ny5#h4rC}-kk*M_vsElgAKydd+&E`WZ7-n>IF960rFVjN6I+j( zBaS00*!twikvlfqV04heQCU_cF<*Yww#PJM zAnJS}CxxKLNiB6BPZzQ-Y5s$zEKo!)8x$VNQ@J`(+>k~&a)~o--hMrHJRwHuOq6fh zM{2V^H6$R{@x^k1IvTe5KDvvpgGsS^aQW7rG7q*YGj~B7ft=CKLln6|=ysz`^)k& zSR*p%`W1LRvvG9lo-TNcPp7J@?DICrr8C!M)(-2N@cPs`o^nbiolRu(#c~^|hu(qX z6SI0yyXH`h@*T-{?8WNNp)X+_@J1}LO2wid5c7}jnD&qAX^k#cwb+I&w2uALDB>I) Hz9^O7?^L-7 delta 67 zcmdne$Fiw~WkWWjVF*J8Ln(s}g93vg5GpYEG9)ro0%;=#10Xhridz9$W(-ygCJctn Ma~P-3VPu>J0L*j@iU0rr diff --git a/MailResources/Localizable/fr.lproj/Localizable.strings b/MailResources/Localizable/fr.lproj/Localizable.strings index 69dc7d13588fb1eda6be5bdf44910eda0fb98fe7..8d270f5864dfc9c1b0a409d17732e0f2bb878897 100644 GIT binary patch delta 889 zcmb7?J#Q015QgVWnxsG`B3L9697%zaK;k=}?bry!M<|R0qCtW3?7Oq9#D>IY14`in zAtVYUw1p)Xw6t`z{0J%vDw=8(dR=Yc2`_8^I^YO*hm)BG8I*zv`u|#q~ zTq#PG^Og*x$L*v0QnL1%)Fr@M$5whaao$fHr=A;6a!%nv1y4;v&IGSYWo}Pe#8=Q& zZh}+gbY(@>Wkwc>+9B_rq;ehUA<^6R9}Vf^Ya{nf{{Fe`yZ8pgxiUmbkz(Y&9PmQz z9c%|!dN!_)6xzrhF)kSudzVO!Y5mC<@+$MU@b*B6IR_^HykPdHkDC+U&WsLOMPL+J zRdxcO5<9U>13WFb`5^xXE7>G_Umo$ZP@c+-BR@!~iz}Dei{{hkIdgt~*1WwkzZ#G; zCR34ok!+CHv$YM-eRQpRg0&>ExjMYKs_feTu;eDX)~#(bXEp3v&Z$}XUR_phWiTt? zmHCzGnju1t+4LMa0^R*pnBD{{Bwspyb<9~X`@@stQO@x}+2BpnqEv`bv>4q7(+5v; zl(9zUL)}~6B4Uq!Wq)lDtDX4EU#`&=+ZXfZ)Y3hjy&6mFuQL{Kdmw0cbjlQ6@0dF{ z(vQUQ)=Dc@B)5?|RK7{JC+6jkB{Tjxdv=W%cksJ(C1zGqq_3RWtaVL(G}q7>$|f(H jMx9<)9&O2Bs0GO7!js9 delta 68 zcmaDdk>yG|%Z5xw!w`lHhEfI{1_cH~AXH%RWk_VG1ky$f20&~K6}JMi%owZ~Oc)HC NXEAP{#mH#I1OV?}459!4 diff --git a/MailResources/Localizable/it.lproj/Localizable.strings b/MailResources/Localizable/it.lproj/Localizable.strings index c2470d1485038f854957466c97cefd1cfd636e75..54247611bd0e262976c83904816e656e6a97a03e 100644 GIT binary patch delta 1104 zcmb7DOGs2<6h0S68w_M3$?`#0OR`Mo=}e=9skN9wFd`&^>dxFdGB}PlGmh4xgb;Kw z7#-RbB-O4!xU`5M5=mMlj6p9*SM4H7BZyXg=l8jd%f09P|9O1pJLlZ5w;T`hj+uVV z+e;Ribd+@RPzc}CG)yT-AI?7VtNSpuQUKOg-1+T$+R8N7k5;q$k<)(mu%OwKk1tj6 zsU{b@7j%9)>$GcTzc|?a`QVN$C6K}7p4Sz2`+P$Q|8A(X$KTEu?bKmO!WJWohbHT} zd%7Dz9ULlneW^eC8y@YU%E zxv7-u;FSbonzGahZ4lo5s#6gffUOUDhJQ}ia{h;trzgtWGvE_L@6xbb$73Lufs9ey z8;BXiIl7)HhMTOq5fq6^v8Qq$Umf4GYd|vN5sW^>4&LdixfwvAYa~o0@!$#JjpNpj zH?D{UV2Oc>@Bc{9Nq}T%2!$AQjk-`)3dLFKTZdf7(e}Sf6}z_vw&}rRj@m}4%>u3m z=q4RQ6<*cY0M0&~rRj0p`Z4IjTn$G?TuljN??aPScF1$UPEt;_Ws^9pCNd{^BGPz9 z*3W~%d4U##G}Kv;Oz0L~tR{4ckfq%iql_>OPHFH=!z)hNyH~WTs!rT(j47o!>tHRO zIllc)ScOo#tc2hN5h>Eb*#~r=;@bi(h~;**c@Ou(BMnw-%p&lWE^RUF0K1%YnqRH# zzZ}Bag%RsV)nQE5k9-Ddj{-5Ma*MQJ4Q%5Q2Lk#5PnnNN-O%JGiUMnN8&(gG{W&mT zP%~nC;F*S$4#-LlVcAw8*Op9d_^n`BUpAamD!=$<5GAWG+AuUh)@cM0QS}oDb~A9> GsPrGW+4JuJ delta 245 zcmZ3`%krd|WkWWjVF*J8Ln(s}g93vg5GpYEG9)ro0%;=#10Xhridz9$W(-ygCJcs~ z=P-U;IN6v>Ve`txHy9`14&>R~xin0gH