# Copyright 2018 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("display_settings") {
  main_dart = "lib/main.dart"

  manifest = "pubspec.yaml"

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

  sources = [
    "src/widget.dart",
  ]

  deps = [
    "//sdk/fidl/fuchsia.amber",
    "//third_party/dart-pkg/git/flutter/packages/flutter",
    "//topaz/lib/settings:lib.settings",
    "//topaz/public/dart/widgets:lib.widgets",
    "//topaz/public/dart/fuchsia_logger",
    "//topaz/public/dart/fuchsia_services",
    "//topaz/public/lib/display/dart",
    "//topaz/public/lib/display/flutter",
  ]
}
