chromium/ios/chrome/browser/contextual_panel/model/BUILD.gn

# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

source_set("model") {
  sources = [
    "active_contextual_panel_tab_helper_observation_forwarder.mm",
    "contextual_panel_model_service.h",
    "contextual_panel_model_service.mm",
    "contextual_panel_model_service_factory.h",
    "contextual_panel_model_service_factory.mm",
    "contextual_panel_tab_helper.h",
    "contextual_panel_tab_helper.mm",
  ]
  deps = [
    ":public",
    "//base",
    "//components/keyed_service/core",
    "//components/keyed_service/ios",
    "//ios/chrome/browser/contextual_panel/sample/model",
    "//ios/chrome/browser/contextual_panel/utils",
    "//ios/chrome/browser/price_insights/model",
    "//ios/chrome/browser/price_insights/model:feature",
    "//ios/chrome/browser/shared/model/browser",
    "//ios/chrome/browser/shared/model/browser_state",
    "//ios/chrome/browser/shared/model/profile",
    "//ios/chrome/browser/shared/model/web_state_list",
    "//ios/chrome/browser/shared/public/commands",
    "//ios/chrome/browser/shared/public/features",
    "//ios/chrome/browser/shared/ui/symbols",
    "//ios/web/public",
  ]
}

source_set("public") {
  sources = [
    "active_contextual_panel_tab_helper_observation_forwarder.h",
    "contextual_panel_item_configuration.h",
    "contextual_panel_item_configuration.mm",
    "contextual_panel_item_type.h",
    "contextual_panel_item_type.mm",
    "contextual_panel_model.h",
    "contextual_panel_tab_helper_observer.h",
    "contextual_panel_tab_helper_observer_bridge.h",
    "contextual_panel_tab_helper_observer_bridge.mm",
  ]

  deps = [
    "//base",
    "//ios/chrome/browser/shared/model/web_state_list",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "active_contextual_panel_tab_helper_observation_forwarder_unittest.mm",
    "contextual_panel_tab_helper_observer_bridge_unittest.mm",
    "contextual_panel_tab_helper_unittest.mm",
  ]
  frameworks = [ "Foundation.framework" ]
  deps = [
    ":model",
    ":public",
    "//base",
    "//base/test:test_support",
    "//ios/chrome/browser/contextual_panel/sample/model",
    "//ios/chrome/browser/contextual_panel/utils",
    "//ios/chrome/browser/shared/model/web_state_list",
    "//ios/chrome/browser/shared/model/web_state_list/test:test_support",
    "//ios/web/public/test/fakes",
    "//testing/gtest",
  ]
}