# Copyright (c) 2017-present, Facebook, Inc.
#
# This source code is licensed under the Apache 2.0 license found in the
# LICENSE file in the root directory of this source tree.

load(
    "//tools/build_defs/oss:litho_defs.bzl",
    "LITHO_ANDROIDSUPPORT_RECYCLERVIEW_TARGET",
    "LITHO_ANDROIDSUPPORT_TARGET",
    "LITHO_INFERANNOTATIONS_TARGET",
    "LITHO_JSR_TARGET",
    "LITHO_OSS_TARGET",
    "LITHO_PROCESSOR_TARGET",
    "LITHO_RES_TARGET",
    "LITHO_TEXTLAYOUTBUILDER_TARGET",
    "LITHO_TEXTLAYOUTBUILDER_UTILS_TARGET",
    "LITHO_UTILS_TARGET",
    "LITHO_VIEWCOMPAT_TARGET",
    "LITHO_WIDGET_ACCESSIBILITIES_TARGET",
    "LITHO_WIDGET_RES_TARGET",
    "LITHO_YOGA_TARGET",
    "litho_android_library",
    "make_dep_path",
)

litho_android_library(
    name = "widget",
    autoglob = False,
    labels = ["supermodule:android/default/litho.core"],
    visibility = [
        "PUBLIC",
    ],
    exported_deps = [
        ":widget-bare",
        LITHO_TEXTLAYOUTBUILDER_TARGET,
    ],
)

litho_android_library(
    name = "widget-bare",
    is_androidx = True,
    labels = ["supermodule:android/default/litho.core"],
    plugins = [
        LITHO_PROCESSOR_TARGET,
    ],
    provided_deps = [
        LITHO_ANDROIDSUPPORT_RECYCLERVIEW_TARGET,
        LITHO_ANDROIDSUPPORT_TARGET,
        LITHO_INFERANNOTATIONS_TARGET,
        LITHO_JSR_TARGET,
        LITHO_OSS_TARGET,
        LITHO_TEXTLAYOUTBUILDER_TARGET,
        LITHO_UTILS_TARGET,
        LITHO_VIEWCOMPAT_TARGET,
        LITHO_YOGA_TARGET,
    ],
    required_for_source_only_abi = True,
    tests = [
        make_dep_path("litho-it/src/test/java/com/facebook/litho:litho"),
    ],
    visibility = [
        "PUBLIC",
    ],
    deps =
        LITHO_TEXTLAYOUTBUILDER_UTILS_TARGET + [
            LITHO_RES_TARGET,
            LITHO_WIDGET_RES_TARGET,
            LITHO_WIDGET_ACCESSIBILITIES_TARGET,
        ],
)
