package {
    default_team: "trendy_team_android_settings_app",
    default_applicable_licenses: ["packages_apps_Settings_license"],
}

// Added automatically by a large-scale-change
// See: http://go/android-license-faq
license {
    name: "packages_apps_Settings_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
    ],
    license_text: [
        "NOTICE",
    ],
}

java_library {
    name: "settings-logtags",
    srcs: ["src/**/*.logtags"],
}

genrule {
    name: "statslog-settings-java-gen",
    tools: ["stats-log-api-gen"],
    cmd: "$(location stats-log-api-gen) --java $(out) --module settings" +
        " --javaPackage com.android.settings.core.instrumentation --javaClass SettingsStatsLog",
    out: ["com/android/settings/core/instrumentation/SettingsStatsLog.java"],
}

java_library {
    name: "statslog-settings",
    srcs: [
        ":statslog-settings-java-gen",
    ],
}

java_library {
    name: "Settings-change-ids",
    srcs: ["src/com/android/settings/ChangeIds.java"],
    libs: [
        "app-compat-annotations",
    ],
}

// Build the Settings APK
android_library {
    name: "Settings-core",
    defaults: [
        "SettingsLibDefaults",
        "SettingsLib-search-defaults",
        "SpaPrivilegedLib-defaults",
    ],

    srcs: [
        "src/**/*.java",
        "src/**/*.kt",
    ],
    resource_dirs: [
        "res",
        "res-export", // for external usage
        "res-product",
    ],
    static_libs: [
        "androidx-constraintlayout_constraintlayout",
        "androidx.slice_slice-builders",
        "androidx.slice_slice-core",
        "androidx.slice_slice-view",
        "androidx.core_core",
        "androidx.appcompat_appcompat",
        "androidx.cardview_cardview",
        "androidx.compose.runtime_runtime-livedata",
        "androidx.activity_activity-ktx",
        "androidx.preference_preference",
        "androidx.recyclerview_recyclerview",
        "androidx.window_window",
        "com.google.android.material_material",
        "setupcompat",
        "setupdesign",
        "androidx.lifecycle_lifecycle-runtime",
        "androidx.lifecycle_lifecycle-viewmodel",
        "guava",
        "jsr305",
        "net-utils-framework-common",
        "app-usage-event-protos-lite",
        "battery-event-protos-lite",
        "battery-usage-slot-protos-lite",
        "power-anomaly-event-protos-lite",
        "settings-contextual-card-protos-lite",
        "settings-log-bridge-protos-lite",
        "settings-telephony-protos-lite",
        "fuelgauge-log-protos-lite",
        "fuelgauge-usage-state-protos-lite",
        "contextualcards",
        "securebox",
        "settings-logtags",
        "statslog-settings",
        "zxing-core-1.7",
        "android.hardware.dumpstate-V1.0-java",
        "android.hardware.dumpstate-V1.1-java",
        "android.hardware.dumpstate-V1-java",
        "lottie",
        "WifiTrackerLib",
        "SettingsLibActivityEmbedding",
        "Settings-change-ids",
        "androidx.room_room-runtime",
        "SystemUIUnfoldLib",
    ],

    plugins: ["androidx.room_room-compiler-plugin"],

    libs: [
        "telephony-common",
        "ims-common",
    ],
}

platform_compat_config {
    name: "settings-platform-compat-config",
    src: ":Settings-change-ids",
    system_ext_specific: true,
}

android_app {
    name: "Settings",
    defaults: [
        "platform_app_defaults",
        "SpaPrivilegedLib-defaults",
    ],
    platform_apis: true,
    certificate: "platform",
    system_ext_specific: true,
    privileged: true,
    required: [
        "privapp_whitelist_com.android.settings",
        "settings-platform-compat-config",
    ],
    static_libs: ["Settings-core"],
    uses_libs: ["org.apache.http.legacy"],
    resource_dirs: [],
    optimize: {
        proguard_flags_files: ["proguard.flags"],
    },
}

android_library_import {
    name: "contextualcards",
    aars: ["libs/contextualcards.aar"],
}

filegroup {
    name: "Settings_proguard_flags",
    srcs: ["proguard.flags"],
}

// Deprecated. The sources for Settings need to be exposed to ArcSettings, so they can run the
// com.android.settingslib.search.IndexableProcessor over all the sources together.
// Use "-Acom.android.settingslib.search.processor.package=" instead to generate the search data
// separately for different modules.
filegroup {
    name: "Settings_srcs",
    srcs: [
        "src/**/*.java",
        "src/**/*.kt",
    ],
}

// Deprecated. Do not depend on this, only depend on Settings-core, and its manifest is also
// included.
filegroup {
    name: "Settings_manifest",
    srcs: ["AndroidManifest.xml"],
}
