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

import("//topaz/runtime/flutter_runner/flutter_app.gni")

flutter_app("userpicker_base_shell") {
  main_dart = "lib/main.dart"

  meta = [
    {
      path = rebase_path("meta/userpicker_base_shell.cmx")
      dest = "userpicker_base_shell.cmx"
    },
  ]

  package_name = "userpicker_base_shell"

  manifest = "pubspec.yaml"

  sources = [
    "authentication_overlay.dart",
    "authentication_overlay_model.dart",
    "authentication_ui_context_impl.dart",
    "circular_button.dart",
    "clock.dart",
    "time_stringer.dart",
    "user_list.dart",
    "user_picker_base_shell_model.dart",
    "user_picker_base_shell_screen.dart",
    "user_picker_screen.dart",
  ]

  deps = [
    "//sdk/fidl/fuchsia.modular",
    "//sdk/fidl/fuchsia.modular.auth",
    "//sdk/fidl/fuchsia.timezone",
    "//sdk/fidl/fuchsia.ui.input",
    "//sdk/fidl/fuchsia.ui.views",
    "//third_party/dart-pkg/git/flutter/packages/flutter",
    "//third_party/dart-pkg/pub/http",
    "//topaz/lib/base_shell:lib.base_shell",
    "//topaz/lib/settings:lib.settings",
    "//topaz/public/dart/fuchsia_logger",
    "//topaz/public/dart/fuchsia_scenic_flutter",
    "//topaz/public/dart/widgets:lib.widgets",
    "//topaz/public/lib/device/dart",
    "//zircon/public/fidl/fuchsia-device-manager",
  ]
}
