text: // Copyright 2019 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.
  
  #ifndef PERIDOT_LIB_MODULAR_CONFIG_MODULAR_CONFIG_CONSTANTS_H_
  #define PERIDOT_LIB_MODULAR_CONFIG_MODULAR_CONFIG_CONSTANTS_H_
  
  namespace modular_config {
  
  constexpr char kBasemgrConfigName[] = "basemgr";
  constexpr char kSessionmgrConfigName[] = "sessionmgr";
  constexpr char kSessionmgrUrl[] =
      "fuchsia-pkg://fuchsia.com/sessionmgr#meta/sessionmgr.cmx";
  
  constexpr char kDefaultConfigDir[] = "/config/data";
  constexpr char kOverriddenConfigDir[] = "/config_override/data";
  
  // This file path is rooted at either |kDefaultConfigDir| or
  // |kOverriddenConfigDir|
  constexpr char kStartupConfigFilePath[] = "startup.config";
  
  constexpr char kTrue[] = "true";
  
  // Used by sessionmgr component_args and base shell.
  constexpr char kArgs[] = "args";
  
  // Presentation constants
  constexpr char kDisplayUsage[] = "display_usage";
  constexpr char kHandheld[] = "handheld";
  constexpr char kClose[] = "close";
  constexpr char kNear[] = "near";
  constexpr char kMidrange[] = "midrange";
  constexpr char kFar[] = "far";
  constexpr char kUnknown[] = "unknown";
  constexpr char kScreenHeight[] = "screen_height";
  constexpr char kScreenWidth[] = "screen_width";
  
  // Cloud provider constants
  constexpr char kCloudProvider[] = "cloud_provider";
  constexpr char kLetLedgerDecide[] = "LET_LEDGER_DECIDE";
  constexpr char kFromEnvironment[] = "FROM_ENVIRONMENT";
  constexpr char kNone[] = "NONE";
  
  // Basemgr constants
  constexpr char kEnableCobalt[] = "enable_cobalt";
  constexpr char kEnablePresenter[] = "enable_presenter";
  constexpr char kTest[] = "test";
  constexpr char kUseMinfs[] = "use_minfs";
  constexpr char kUseSessionShellForStoryShellFactory[] =
      "use_session_shell_for_story_shell_factory";
  
  // Sessionmgr constants
  constexpr char kComponentArgs[] = "component_args";
  constexpr char kAgentServiceIndex[] = "agent_service_index";
  constexpr char kServiceName[] = "service_name";
  constexpr char kAgentUrl[] = "agent_url";
  constexpr char kUri[] = "uri";
  constexpr char kEnableStoryShellPreload[] = "enable_story_shell_preload";
  constexpr char kStartupAgents[] = "startup_agents";
  constexpr char kSessionAgents[] = "session_agents";
  constexpr char kUseMemfsForLedger[] = "use_memfs_for_ledger";
  
  // Shell constants
  inline constexpr char kDefaultBaseShellUrl[] =
      "fuchsia-pkg://fuchsia.com/auto_login_base_shell#meta/"
      "auto_login_base_shell.cmx";
  inline constexpr char kDefaultSessionShellUrl[] =
      "fuchsia-pkg://fuchsia.com/ermine_session_shell#meta/"
      "ermine_session_shell.cmx";
  constexpr char kDefaultStoryShellUrl[] =
      "fuchsia-pkg://fuchsia.com/mondrian#meta/mondrian.cmx";
  constexpr char kBaseShell[] = "base_shell";
  constexpr char kKeepAliveAfterLogin[] = "keep_alive_after_login";
  constexpr char kName[] = "name";
  constexpr char kUrl[] = "url";
  constexpr char kSessionShells[] = "session_shells";
  constexpr char kStoryShellUrl[] = "story_shell_url";
  
  // Various config constants that will be deprecated in favor for the new names.
  constexpr char kBaseShellArgs[] = "base_shell_args";
  constexpr char kStoryShell[] = "story_shell";
  constexpr char kStoryShellArgs[] = "story_shell_args";
  constexpr char kSessionShell[] = "session_shell";
  constexpr char kSessionShellArgs[] = "session_shell_args";
  constexpr char kSessionmgrArgs[] = "sessionmgr_args";
  constexpr char kDisableStatistics[] = "disable_statistics";
  constexpr char kNoCloudProviderForLedger[] = "no_cloud_provider_for_ledger";
  constexpr char kNoMinfs[] = "no_minfs";
  constexpr char kRunBaseShellWithTestRunner[] =
      "run_base_shell_with_test_runner";
  constexpr char kUseCloudProviderFromEnvironment[] =
      "use_cloud_provider_from_environment";
  
  }  // namespace modular_config
  
  #endif  // PERIDOT_LIB_MODULAR_CONFIG_MODULAR_CONFIG_CONSTANTS_H_
  