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

source_set("translate") {
  configs += [ "//build/config/compiler:enable_arc" ]
  sources = [
    "language_selection_coordinator.h",
    "language_selection_coordinator.mm",
    "language_selection_mediator.h",
    "language_selection_mediator.mm",
  ]
  deps = [
    ":translate_ui",
    "//base",
    "//components/translate/core/browser",
    "//ios/chrome/browser",
    "//ios/chrome/browser/translate",
    "//ios/chrome/browser/ui/coordinators:chrome_coordinators",
    "//ios/chrome/browser/ui/presenters",
    "//ios/chrome/browser/ui/translate/cells",
    "//ios/chrome/browser/web_state_list",
    "//ios/web/public",
  ]
}

source_set("translate_ui") {
  configs += [ "//build/config/compiler:enable_arc" ]
  sources = [
    "language_selection_consumer.h",
    "language_selection_provider.h",
    "language_selection_view_controller.h",
    "language_selection_view_controller.mm",
  ]
  deps = [
    "//base",
  ]
}
