导航菜单

页面标题

页面副标题

Hopscotch v9.7.2 - Z.java 源代码

正在查看: Hopscotch v9.7.2 应用的 Z.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.microsoft.clarity.e;

import android.content.Context;
import android.net.Uri;
import com.microsoft.clarity.ClarityConfig;
import com.payu.india.Payu.PayuConstants;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.InputStream;
import java.net.URL;
import java.nio.charset.Charset;
import java.security.DigestInputStream;
import java.security.MessageDigest;
import java.util.ArrayList;
import java.util.Base64;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import kotlin.collections.h0;
import kotlin.jvm.functions.Function2;
import kotlin.jvm.internal.FunctionReferenceImpl;
import kotlin.jvm.internal.Intrinsics;
import kotlin.ranges.IntRange;
import kotlin.sequences.Sequence;
import kotlin.sequences.f;
import kotlin.text.Charsets;
import kotlin.text.MatchGroup;
import kotlin.text.MatchResult;
import kotlin.text.Regex;
import kotlin.text.StringsKt;

public final class Z {
    public final Context a;
    public final ClarityConfig b;
    public final FunctionReferenceImpl c;
    public final Regex d;
    public final Regex e;
    public final Regex f;
    public final Regex g;
    public final Regex h;
    public final LinkedHashMap i;

    public Z(Context context, ClarityConfig clarityConfig, Function2 function2) {
        Intrinsics.checkNotNullParameter(context, "context");
        Intrinsics.checkNotNullParameter(clarityConfig, PayuConstants.CONFIG);
        Intrinsics.checkNotNullParameter(function2, "webAssetCallback");
        this.a = context;
        this.b = clarityConfig;
        this.c = (FunctionReferenceImpl) function2;
        this.d = new Regex("\\[ClarityStyleContent]|\\[/ClarityStyleContent]|\\[ClarityLocalURL]|\\[/ClarityLocalURL]");
        this.e = new Regex("\\[ClarityLocalURL](.*?)\\[/ClarityLocalURL]");
        this.f = new Regex("\\[ClarityStyleContent](.*?)\\[/ClarityStyleContent]");
        this.g = new Regex("url\\((?:'|\\\\\"|\")?(.*?)(?:'|\\\\\"|\")?\\)");
        this.h = new Regex("@import\\s(?:'|\\\\\"|\")(.*?)(?:'|\\\\\"|\");");
        this.i = new LinkedHashMap();
    }

    public final ArrayList a(String str, String str2, boolean z, int i, int i2) {
        boolean z2;
        Sequence b = Regex.b(this.g, str);
        Sequence b2 = Regex.b(this.h, str);
        Intrinsics.checkNotNullParameter(b, "<this>");
        Intrinsics.checkNotNullParameter(b2, "elements");
        Sequence[] sequenceArr = {b, b2};
        Intrinsics.checkNotNullParameter(sequenceArr, "elements");
        Intrinsics.checkNotNullParameter(sequenceArr, "<this>");
        kotlin.collections.p pVar = new kotlin.collections.p(sequenceArr);
        Intrinsics.checkNotNullParameter(pVar, "<this>");
        kotlin.sequences.f fVar = new kotlin.sequences.f(pVar, kotlin.sequences.o.h, kotlin.sequences.n.h);
        ArrayList arrayList = new ArrayList();
        f.a aVar = new f.a(fVar);
        while (aVar.a()) {
            MatchResult matchResult = (MatchResult) aVar.next();
            String str3 = (String) matchResult.a().get(1);
            if (StringsKt.J(str3, "://", 0, false, 6) > 0 || StringsKt.J(str3, "//", 0, false, 6) == 0 || kotlin.text.r.o(str3, "data:", false)) {
                try {
                    z2 = a(new URL(str3));
                } catch (Exception unused) {
                    z2 = false;
                }
                if (!z2) {
                }
            }
            String path = Uri.parse(str3).getPath();
            if (path != null) {
                MatchGroup matchGroup = matchResult.b().get(1);
                Intrinsics.checkNotNull(matchGroup);
                V a = a(path, str2, z, matchGroup.a().a() + i, (path.length() + r4) - 1, i2 + 1);
                if (a != null) {
                    arrayList.add(a);
                }
            }
        }
        return arrayList;
    }

    public final boolean b(String str) {
        Long l;
        X x = (X) this.i.get(str);
        if (Intrinsics.areEqual(x != null ? Boolean.valueOf(x.b) : null, Boolean.TRUE)) {
            return false;
        }
        X x2 = (X) this.i.get(str);
        return new File(str).lastModified() > ((x2 == null || (l = x2.e) == null) ? 0L : l.longValue());
    }

    public final String c(String str) {
        String uri = Uri.parse("https://clarity.microsoft.com/").buildUpon().appendPath("app").appendPath("webasset").appendPath("v1").appendPath(this.b.getProjectId()).appendPath("*clarity-playback-token-placeholder*").appendPath(PayuConstants.PAYU_ALL).appendEncodedPath(str).build().toString();
        Intrinsics.checkNotNullExpressionValue(uri, "parse(BuildConfig.WEB_AS…)\n            .toString()");
        return uri;
    }

    public final boolean b(java.net.URL r4) {
        throw new UnsupportedOperationException("Method not decompiled: com.microsoft.clarity.e.Z.b(java.net.URL):boolean");
    }

    public final boolean a(String str) {
        List<String> list;
        X x = (X) this.i.get(str);
        if (x == null || (list = x.f) == null) {
            list = h0.a;
        }
        for (String str2 : list) {
            if (b(str2) || a(str2)) {
                return true;
            }
        }
        return false;
    }

    public final String a(URL url, boolean z) {
        String path = url.getPath();
        if (Intrinsics.areEqual(url.getProtocol(), "file")) {
            Intrinsics.checkNotNullExpressionValue(path, PayuConstants.CP_ADS_PATH);
            path = StringsKt.P(path, "/android_asset");
        } else if (Intrinsics.areEqual(url.getHost(), "appassets.androidplatform.net")) {
            Intrinsics.checkNotNullExpressionValue(path, PayuConstants.CP_ADS_PATH);
            path = StringsKt.P(path, PayuConstants.CP_ASSETS_DETAILS);
        } else if (this.b.isIonic$sdk_prodRelease() && Intrinsics.areEqual(url.getHost(), "localhost") && z) {
            path = "/";
        }
        Intrinsics.checkNotNullExpressionValue(path, PayuConstants.CP_ADS_PATH);
        return path;
    }

    public final com.microsoft.clarity.e.V a(java.lang.String r9, java.lang.String r10, boolean r11, int r12, int r13, int r14) {
        throw new UnsupportedOperationException("Method not decompiled: com.microsoft.clarity.e.Z.a(java.lang.String, java.lang.String, boolean, int, int, int):com.microsoft.clarity.e.V");
    }

    public final boolean a(URL url) {
        return Intrinsics.areEqual(url.getProtocol(), "file") || Intrinsics.areEqual(url.getHost(), "appassets.androidplatform.net") || ((this.b.isIonic$sdk_prodRelease() || this.b.isCordova$sdk_prodRelease()) && Intrinsics.areEqual(url.getHost(), "localhost"));
    }

    public final String a(String str, String str2, boolean z) {
        int length;
        String str3;
        int I;
        if (z) {
            return StringsKt.e0(a(new URL(str2), false), new char[]{'/'});
        }
        File file = new File(str);
        String e0 = StringsKt.e0(str2, new char[]{'/'});
        Intrinsics.checkNotNullParameter(file, "<this>");
        Intrinsics.checkNotNullParameter(e0, "relative");
        File file2 = new File(e0);
        Intrinsics.checkNotNullParameter(file, "<this>");
        Intrinsics.checkNotNullParameter(file2, "relative");
        Intrinsics.checkNotNullParameter(file2, "<this>");
        String path = file2.getPath();
        Intrinsics.checkNotNullExpressionValue(path, "getPath(...)");
        char c = File.separatorChar;
        int I2 = StringsKt.I(path, c, 0, false, 4);
        if (I2 == 0) {
            if (path.length() <= 1 || path.charAt(1) != c || (I = StringsKt.I(path, c, 2, false, 4)) < 0) {
                length = 1;
            } else {
                int I3 = StringsKt.I(path, c, I + 1, false, 4);
                length = I3 >= 0 ? I3 + 1 : path.length();
            }
        } else if (I2 <= 0 || path.charAt(I2 - 1) != ':') {
            length = (I2 == -1 && StringsKt.G(path, ':')) ? path.length() : 0;
        } else {
            length = I2 + 1;
        }
        if (!(length > 0)) {
            String file3 = file.toString();
            Intrinsics.checkNotNullExpressionValue(file3, "toString(...)");
            if ((file3.length() == 0) || StringsKt.G(file3, c)) {
                file2 = new File(file3 + file2);
            } else {
                file2 = new File(file3 + c + file2);
            }
        }
        String canonicalPath = file2.getCanonicalPath();
        Intrinsics.checkNotNullExpressionValue(canonicalPath, "File(pageFolderPath)\n   …           .canonicalPath");
        String e02 = StringsKt.e0(canonicalPath, new char[]{'/'});
        if (this.b.isCordova$sdk_prodRelease()) {
            str3 = "www";
        } else {
            str3 = this.b.isIonic$sdk_prodRelease() ? "public" : null;
        }
        if (str3 == null || kotlin.text.r.o(e02, str3, false)) {
            return e02;
        }
        return str3 + '/' + e02;
    }

    public final W a(InputStream inputStream, String str, Long l, boolean z, List list) {
        try {
            MessageDigest messageDigest = MessageDigest.getInstance("MD5");
            byte[] b = kotlin.io.a.b(new DigestInputStream(inputStream, messageDigest));
            String encodeToString = Base64.getUrlEncoder().encodeToString(messageDigest.digest());
            Intrinsics.checkNotNullExpressionValue(encodeToString, "contentHash");
            Intrinsics.checkNotNullParameter(str, PayuConstants.CP_ADS_PATH);
            int M = StringsKt.M(str, 6, "/") + 1;
            int M2 = StringsKt.M(str, 6, ".") - 1;
            if (M2 < M) {
                M2 = str.length() - 1;
            }
            String obj = StringsKt.S(str, new IntRange(M, M2), encodeToString).toString();
            try {
                W w = new W(new X(str, z, encodeToString, obj, c(obj), l, list), b);
                kotlin.io.j.a(inputStream, (Throwable) null);
                return w;
            } catch (Throwable th) {
                th = th;
                Throwable th2 = th;
                try {
                    throw th2;
                } catch (Throwable th3) {
                    kotlin.io.j.a(inputStream, th2);
                    throw th3;
                }
            }
        } catch (Throwable th4) {
            th = th4;
        }
    }

    public final W a(W w, boolean z, int i) {
        byte[] bArr = w.b;
        Charset charset = Charsets.UTF_8;
        String str = new String(bArr, charset);
        ArrayList a = a(str, StringsKt.b0(w.a.a), z, 0, i);
        if (a.isEmpty()) {
            return w;
        }
        StringBuilder sb = new StringBuilder(str);
        if (a.size() > 1) {
            kotlin.collections.a0.m(a, new Y());
        }
        Iterator it = a.iterator();
        while (it.hasNext()) {
            V v = (V) it.next();
            sb.replace(v.a, v.b + 1, v.d);
        }
        String sb2 = sb.toString();
        Intrinsics.checkNotNullExpressionValue(sb2, "newDataBuilder.toString()");
        byte[] bytes = sb2.getBytes(charset);
        Intrinsics.checkNotNullExpressionValue(bytes, "this as java.lang.String).getBytes(charset)");
        InputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
        X x = w.a;
        String str2 = x.a;
        Long l = x.e;
        boolean z2 = x.b;
        ArrayList arrayList = new ArrayList(kotlin.collections.x.k(a, 10));
        Iterator it2 = a.iterator();
        while (it2.hasNext()) {
            arrayList.add(((V) it2.next()).c);
        }
        return a(byteArrayInputStream, str2, l, z2, arrayList);
    }
}