blob: 9cf7cdb84dfc9b663135f35d5f8cb5f2f0ae7d66 [file] [log] [blame]
# 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("//build/config.gni")
import("//build/fidl/fidl.gni")
import("//build/package.gni")
import("//build/testing/flutter_driver.gni")
import("//src/lib/icu/tools/static_icu_data.gni")
import("//topaz/runtime/dart/flutter_test.gni")
import("//topaz/runtime/flutter_runner/flutter_app.gni")
group("shell") {
public_deps = [
":ermine",
":ermine_fonts",
]
}
tz_ids_path = "${target_gen_dir}/tz_ids.txt"
flutter_app("ermine") {
main_dart = "lib/main.dart"
fuchsia_package_name = "ermine"
package_name = "ermine"
flutter_driver_extendable = flutter_driver_enabled
meta = [
{
path = rebase_path("meta/ermine.cmx")
dest = "ermine.cmx"
},
]
manifest = "pubspec.yaml"
sources = [
"main.dart",
"src/models/app_model.dart",
"src/models/ask_model.dart",
"src/models/cluster_model.dart",
"src/models/ermine_shell.dart",
"src/models/ermine_story.dart",
"src/models/status_model.dart",
"src/models/topbar_model.dart",
"src/utils/elevations.dart",
"src/utils/styles.dart",
"src/utils/presenter.dart",
"src/utils/suggestion.dart",
"src/utils/suggestions.dart",
"src/utils/utils.dart",
"src/widgets/app.dart",
"src/widgets/ask/ask.dart",
"src/widgets/ask/ask_container.dart",
"src/widgets/ask/ask_suggestion_list.dart",
"src/widgets/ask/ask_text_field.dart",
"src/widgets/status/detail_status_entry.dart",
"src/widgets/status/spec_builder.dart",
"src/widgets/status/status.dart",
"src/widgets/status/status_button.dart",
"src/widgets/status/status_container.dart",
"src/widgets/status/status_entry.dart",
"src/widgets/status/status_graph.dart",
"src/widgets/status/status_progress.dart",
"src/widgets/story/cluster.dart",
"src/widgets/story/clusters.dart",
"src/widgets/story/fullscreen_story.dart",
"src/widgets/story/remove_button_target_widget.dart",
"src/widgets/story/thumbnails.dart",
"src/widgets/story/tile_chrome.dart",
"src/widgets/story/tile_sizer.dart",
"src/widgets/story/tile_tab.dart",
"src/widgets/support/animation_driver.dart",
"src/widgets/support/get_bounds.dart",
"src/widgets/support/home.dart",
"src/widgets/support/home_container.dart",
"src/widgets/support/keyboard_help.dart",
"src/widgets/support/overview.dart",
"src/widgets/support/recents.dart",
"src/widgets/support/scrim.dart",
"src/widgets/topbar/button.dart",
"src/widgets/topbar/topbar.dart",
]
deps = [
"//sdk/fidl/fuchsia.bluetooth.control",
"//sdk/fidl/fuchsia.intl",
"//sdk/fidl/fuchsia.memory",
"//sdk/fidl/fuchsia.power",
"//sdk/fidl/fuchsia.session",
"//sdk/fidl/fuchsia.ui.app",
"//sdk/fidl/fuchsia.ui.input",
"//sdk/fidl/fuchsia.ui.input2",
"//sdk/fidl/fuchsia.ui.policy",
"//sdk/fidl/fuchsia.ui.remotewidgets",
"//sdk/fidl/fuchsia.ui.shortcut",
"//sdk/fidl/fuchsia.ui.views",
"//src/experiences/lib/quickui",
"//src/experiences/session_shells/ermine/internationalization",
"//src/experiences/session_shells/ermine/keyboard_shortcuts",
"//src/experiences/session_shells/ermine/settings",
"//src/sys/component_index/fidl:index",
"//third_party/dart-pkg/git/flutter/packages/flutter",
"//third_party/dart-pkg/git/flutter/packages/flutter_localizations",
"//third_party/dart-pkg/pub/flutter_svg",
"//third_party/dart-pkg/pub/uuid",
"//third_party/dart/third_party/pkg/intl",
"//topaz/lib/tiler",
"//topaz/public/dart/fuchsia_inspect",
"//topaz/public/dart/fuchsia_logger",
"//topaz/public/dart/fuchsia_scenic_flutter",
"//topaz/public/dart/fuchsia_services",
"//topaz/public/dart/widgets:lib.widgets",
"//zircon/system/fidl/fuchsia-device-manager",
]
non_dart_deps = [ ":time_zone_list" ]
resources = [
{
path = rebase_path("config/keyboard_shortcuts.json")
dest = "keyboard_shortcuts.json"
},
{
path = rebase_path(tz_ids_path)
dest = "tz_ids.txt"
},
]
}
static_icu_data("time_zone_list") {
command = "tz-ids"
output = tz_ids_path
# Put these time zones at the top for the convenience of Fuchsia developers.
fixed_order_ids = [
"America/Los_Angeles",
"America/New_York",
"Europe/Paris",
"Australia/Sydney",
]
fixed_order = string_join(",", fixed_order_ids)
command_args = [ "--fixed-order=${fixed_order}" ]
}
config_data("ermine_fonts") {
for_pkg = "fonts"
sources = [
"fonts/manifest.json",
]
sources += rebase_path([
"RobotoMono-Light.ttf",
"RobotoMono-Medium.ttf",
"RobotoMono-Regular.ttf",
],
"",
"//prebuilt/third_party/fonts/robotomono/")
outputs = [
"fonts/{{source_file_part}}",
]
}
flutter_test("ermine_unittests") {
sources = [
"app_widget_test.dart",
"ask_model_test.dart",
"ask_widget_test.dart",
"ermine_story_test.dart",
"ermine_test.dart",
]
deps = [
":ermine_dart_library",
"//third_party/dart-pkg/git/flutter/packages/flutter_test",
"//third_party/dart-pkg/pub/mockito",
"//third_party/dart-pkg/pub/test",
]
}
config_data("services_config") {
for_pkg = "sysmgr"
sources = [
rebase_path("config/ermine_services.config"),
]
}