Swiggy v4.51.1版本的 MD5 值为:5af7ec91512a0a8c1510e3f8bac20b8b
以下内容为反编译后的 TrackOrderDeliveryInstructionsViewModel.java 源代码,内容仅作参考
package in.swiggy.android.track.viewmodels.v3.deliveryInstructions;
import android.graphics.drawable.Drawable;
import android.text.SpannableString;
import android.text.style.ForegroundColorSpan;
import androidx.databinding.ViewDataBinding;
import androidx.lifecycle.y;
import androidx.navigation.NavController;
import com.swiggy.delivery.deliverycontroller.deliveryinstructor.v1.Instruction;
import com.swiggy.delivery.deliverycontroller.deliveryinstructor.v1.InstructionType;
import com.swiggy.pos.service.grpc.v1.DeliveryInstructions;
import in.swiggy.android.commons.extension.KotlinExtensionsKt;
import in.swiggy.android.commons.utils.ICoroutineHelper;
import in.swiggy.android.commonsFeature.baseviewmodels.a;
import in.swiggy.android.commonsui.ui.view.c;
import in.swiggy.android.commonsui.view.fonts.Font;
import in.swiggy.android.dls.f;
import in.swiggy.android.mvvm.b;
import in.swiggy.android.track.databinding.w0;
import in.swiggy.android.track.fragments.e;
import in.swiggy.android.track.g;
import in.swiggy.android.track.l;
import in.swiggy.android.track.viewmodels.v3.deliveryInstructions.TrackDeliveryInstructionAnim;
import in.swiggy.android.trackkit.models.FTUEType;
import in.swiggy.android.trackkit.models.TrackFTUEToolTipData;
import java.util.ArrayList;
import java.util.List;
import kotlin.Pair;
import kotlin.Result;
import kotlin.Unit;
import kotlin.collections.CollectionsKt___CollectionsKt;
import kotlin.jvm.functions.Function0;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.o;
import kotlin.n;
import kotlin.text.q;
public final class TrackOrderDeliveryInstructionsViewModel extends a implements TrackDeliveryInstructionAnim.a, b {
private final String k;
private DeliveryInstructions l;
private final in.swiggy.android.track.services.v3.a m;
private String n;
private final y<Boolean> o;
private final y<SpannableString> p;
private final TrackDeliveryInstructionAnim q;
private final Function0<Unit> r;
private w0 s;
public TrackOrderDeliveryInstructionsViewModel(in.swiggy.android.commonsFeature.baseviewmodels.b sharedState, String str, DeliveryInstructions deliveryInstructions, in.swiggy.android.track.services.v3.a trackV3Service, String str2) {
super(sharedState);
boolean z;
List<Instruction> instructionsList;
o.k(sharedState, "sharedState");
o.k(trackV3Service, "trackV3Service");
this.k = str;
this.l = deliveryInstructions;
this.m = trackV3Service;
this.n = str2;
DeliveryInstructions deliveryInstructions2 = this.l;
if (deliveryInstructions2 != null && (instructionsList = deliveryInstructions2.getInstructionsList()) != null) {
z = instructionsList.isEmpty();
} else {
z = true;
}
this.o = new y<>(Boolean.valueOf(z));
this.p = new y<>();
this.q = new TrackDeliveryInstructionAnim(KotlinExtensionsKt.y(N().getString("delivery_instructions_track_anim_delay", "30"), Long.parseLong("30")), KotlinExtensionsKt.w(N().getString("delivery_instructions_track_anim_repeat_count", "2"), Integer.parseInt("2")), this);
this.r = new Function0<Unit>() {
{
super(0);
}
@Override
public Unit invoke() {
invoke2();
return Unit.a;
}
public final void invoke2() {
String str3;
in.swiggy.android.track.services.v3.a aVar;
DeliveryInstructions unused;
final String m7 = TrackOrderDeliveryInstructionsViewModel.this.m7();
str3 = TrackOrderDeliveryInstructionsViewModel.this.k;
if (str3 == null || m7 == null) {
return;
}
unused = TrackOrderDeliveryInstructionsViewModel.this.l;
final TrackOrderDeliveryInstructionsViewModel trackOrderDeliveryInstructionsViewModel = TrackOrderDeliveryInstructionsViewModel.this;
aVar = trackOrderDeliveryInstructionsViewModel.m;
aVar.O2();
trackOrderDeliveryInstructionsViewModel.I2().a(new Function1<NavController, Unit>() {
{
super(1);
}
public final void a(NavController emit) {
Object b;
String str4;
o.k(emit, "$this$emit");
try {
Result.a aVar2 = Result.b;
emit.x(g.deliveryInstructionsFragment);
b = Result.b(Boolean.TRUE);
} catch (Throwable th) {
Result.a aVar3 = Result.b;
b = Result.b(n.a(th));
}
if (Result.f(b) != null) {
b = Boolean.FALSE;
}
if (!((Boolean) b).booleanValue()) {
e.a aVar4 = e.a;
str4 = TrackOrderDeliveryInstructionsViewModel.this.k;
emit.O(aVar4.a(str4, m7));
}
}
@Override
public Unit invoke(NavController navController) {
a(navController);
return Unit.a;
}
});
TrackOrderDeliveryInstructionsViewModel.this.v7(true);
}
};
DeliveryInstructions deliveryInstructions3 = this.l;
if (deliveryInstructions3 != null) {
x7(deliveryInstructions3);
}
w7();
}
private final void A7(SpannableString spannableString, int i, int i2) {
spannableString.setSpan(new c(k().a(Font.Bold)), i, i2, 18);
if (spannableString.length() > i2) {
spannableString.setSpan(new c(k().a(Font.Regular)), i2 + 1, spannableString.length(), 18);
}
spannableString.setSpan(new ForegroundColorSpan(r0().n(f.slateAlpha75)), i, i2, 18);
}
private final SpannableString l7(String str, int i) {
SpannableString spannableString = new SpannableString(" " + str);
z7(spannableString);
A7(spannableString, 2, i + 2);
return spannableString;
}
private final Pair<String, Integer> n7(List<Instruction> list, String str) {
boolean C;
boolean C2;
boolean C3;
String str2 = "Delivery partner will";
String string = N().getString("delivery_instructions_prefix", "Delivery partner will");
if (string != null) {
str2 = string;
}
String string2 = r0().getString(l.only_directions_title);
String string3 = r0().getString(l.delivery_instructions);
ArrayList arrayList = new ArrayList();
for (Instruction instruction : list) {
if (instruction.getSelected() && instruction.getType() != InstructionType.INSTRUCTION_TYPE_REACH) {
String instructorText = instruction.getInstructorText();
o.j(instructorText, "getInstructorText(...)");
arrayList.add(instructorText);
}
}
C = q.C(str);
if (C && arrayList.isEmpty()) {
return null;
}
if (arrayList.isEmpty()) {
return new Pair<>(string2 + "\n" + str, Integer.valueOf(string2.length()));
}
if (arrayList.size() == 1) {
C3 = q.C(str);
if (C3) {
String str3 = arrayList.get(0);
return new Pair<>(string3 + "\n" + str2 + " " + ((Object) str3), Integer.valueOf(string3.length()));
}
}
C2 = q.C(str);
return t7(arrayList, str2, !C2);
}
private final SpannableString o7() {
SpannableString spannableString = new SpannableString(r0().getString(l.delivery_instructions_add));
A7(spannableString, 0, spannableString.length());
return spannableString;
}
private final Pair<String, Integer> t7(List<String> list, String str, boolean z) {
Object v0;
String string = r0().getString(l.reach_as_per_directions);
if (!z) {
string = list.get(0);
}
StringBuilder sb = new StringBuilder(str + " " + string);
int size = list.size() + (-1);
for (int i = !z ? 1 : 0; i < size; i++) {
String str2 = list.get(i);
sb.append(", " + ((Object) str2));
}
v0 = CollectionsKt___CollectionsKt.v0(list);
sb.append(" & " + v0);
int size2 = list.size();
if (z) {
size2++;
}
String str3 = size2 + " " + r0().getString(l.track_del_instruction_heading);
return new Pair<>(str3 + " " + ((Object) sb), Integer.valueOf(str3.length()));
}
public final void v7(boolean z) {
SpannableString f;
if (r7()) {
if (o.f(this.o.f(), Boolean.TRUE)) {
f = r0().getString(l.track_delivery_instructions_error);
} else {
f = this.p.f();
}
in.swiggy.android.analytics.gtm.g r = g3().r("track_v3", "add-delivery-instructions", this.k, "-", String.valueOf(f));
if (z) {
g3().b(r);
} else {
g3().j(r);
}
}
}
private final void w7() {
TrackFTUEToolTipData a0 = this.m.a0();
if (a0 != null && a0.c() == FTUEType.DELIVERY_INST_FTUE_TOOLTIP) {
ICoroutineHelper.DefaultImpls.c(this, new TrackOrderDeliveryInstructionsViewModel$handleFtueToast$1$1(this, a0, null), 1000L, null, 4, null);
}
}
private final void z7(SpannableString spannableString) {
Drawable c = r0().c(in.swiggy.android.track.f.ic_del_instruction_tick);
c.setBounds(0, 0, c.getIntrinsicWidth(), c.getIntrinsicHeight());
spannableString.setSpan(new in.swiggy.android.commonsui.ui.view.a(c, 1), 0, 1, 18);
}
@Override
public void D3(long j, Function0<Unit> onCompletion) {
o.k(onCompletion, "onCompletion");
e6(new TrackOrderDeliveryInstructionsViewModel$startDelay$1(j, onCompletion, null));
}
public final String m7() {
return this.n;
}
public final TrackDeliveryInstructionAnim p7() {
return this.q;
}
public final y<SpannableString> q7() {
return this.p;
}
public final boolean r7() {
DeliveryInstructions deliveryInstructions = this.l;
if (deliveryInstructions != null) {
return deliveryInstructions.getDelInstructionsEnabled();
}
return false;
}
@Override
public void s2(in.swiggy.android.mvvm.services.q bindingService) {
o.k(bindingService, "bindingService");
ViewDataBinding a = bindingService.a();
if (a instanceof w0) {
this.s = (w0) a;
}
}
public final y<Boolean> s7() {
return this.o;
}
public final Function0<Unit> u7() {
return this.r;
}
public final void x7(DeliveryInstructions deliveryInstructions) {
SpannableString o7;
o.k(deliveryInstructions, "deliveryInstructions");
this.l = deliveryInstructions;
this.o.r(Boolean.valueOf(deliveryInstructions.getInstructionsList().isEmpty()));
List<Instruction> instructionsList = deliveryInstructions.getInstructionsList();
o.j(instructionsList, "getInstructionsList(...)");
String directionsToReach = deliveryInstructions.getDirectionsToReach();
o.j(directionsToReach, "getDirectionsToReach(...)");
Pair<String, Integer> n7 = n7(instructionsList, directionsToReach);
if (n7 == null || (o7 = l7(n7.d(), n7.e().intValue())) == null) {
o7 = o7();
}
this.p.r(o7);
this.q.j("https://media-assets.swiggy.com/swiggy/raw/upload/v1652085577/lottie/DelInstructions.json");
v7(false);
}
public final void y7(String str) {
this.n = str;
}
}