chromium/chrome/common/extensions/extension_constants.h

// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_
#define CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_

#include <stdint.h>

#include "base/files/file_path.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "chrome/common/buildflags.h"
#include "url/gurl.h"

namespace extension_urls {

// Field to use with webstore URL for tracking launch source.
inline constexpr char kWebstoreSourceField[] =;

// Values to use with webstore URL launch source field.
inline constexpr char kLaunchSourceAppList[] =;
inline constexpr char kLaunchSourceAppListSearch[] =;
inline constexpr char kLaunchSourceAppListInfoDialog[] =;

}  // namespace extension_urls

namespace extension_misc {

// The extension id of the Calendar application.
inline constexpr char kCalendarAppId[] =;

// The extension id of the Data Saver extension.
inline constexpr char kDataSaverExtensionId[] =;

// The extension id of the Google Maps application.
inline constexpr char kGoogleMapsAppId[] =;

// The extension id of the Google Photos application.
inline constexpr char kGooglePhotosAppId[] =;

// The extension id of the Google Play Books application.
inline constexpr char kGooglePlayBooksAppId[] =;

// The extension id of the Google Play Movies application.
inline constexpr char kGooglePlayMoviesAppId[] =;

// The extension id of the Google Play Music application.
inline constexpr char kGooglePlayMusicAppId[] =;

// The extension id of the Google+ application.
inline constexpr char kGooglePlusAppId[] =;

// The extension id of the Text Editor application.
inline constexpr char kTextEditorAppId[] =;

// The extension id of the in-app payments support application.
inline constexpr char kInAppPaymentsSupportAppId[] =;

// The extension id of virtual keyboard extension.
inline constexpr char kKeyboardExtensionId[] =;

// A list of all the first party extension IDs, last entry is null.
extern const char* const kBuiltInFirstPartyExtensionIds[];

// The buckets used for app launches.
enum AppLaunchBucket {};

#if BUILDFLAG(IS_CHROMEOS)
// The extension id of the Assessment Assistant extension.
inline constexpr char kAssessmentAssistantExtensionId[] =
    "gndmhdcefbhlchkhipcnnbkcmicncehk";
// The extension id of the extension responsible for providing chromeos perks.
inline constexpr char kEchoExtensionId[] = "kddnkjkcjddckihglkfcickdhbmaodcn";
// The extension id of the Gnubby chrome app.
inline constexpr char kGnubbyAppId[] = "beknehfpfkghjoafdifaflglpjkojoco";
// The extension id of the new v3 Gnubby extension.
inline constexpr char kGnubbyV3ExtensionId[] =
    "lfboplenmmjcmpbkeemecobbadnmpfhi";
// The extension id of the GCSE.
inline constexpr char kGCSEExtensionId[] = "cfmgaohenjcikllcgjpepfadgbflcjof";
// The extension id of the Contact Center Insights chrome component extension.
inline constexpr char kContactCenterInsightsExtensionId[] =
    "oebfonohdfogiaaaelfmjlkjbgdbaahf";
// The extension id of the Desk API chrome component extension.
inline constexpr char kDeskApiExtensionId[] =
    "kflgdebkpepnpjobkdfeeipcjdahoomc";
// The extension id of the Bruschetta Security Key Forwarder extension.
inline constexpr char kBruSecurityKeyForwarderExtensionId[] =
    "lcooaekmckohjjnpaaokodoepajbnill";
// The extension id of the OneDrive FS external component extension.
inline constexpr char kODFSExtensionId[] = "gnnndjlaomemikopnjhhnoombakkkkdg";
// The extension id of Perfetto UI extension.
inline constexpr char kPerfettoUIExtensionId[] =
    "lfmkphfpdbjijhpomgecfikhfohaoine";
#endif
#if BUILDFLAG(IS_CHROMEOS_ASH)
// The extension id of the Accessibility Common extension.
inline constexpr char kAccessibilityCommonExtensionId[] =
    "egfdjlfmgnehecnclamagfafdccgfndp";
// Path to preinstalled Accessibility Common extension (relative to
// |chrome::DIR_RESOURCES|).
inline constexpr char kAccessibilityCommonExtensionPath[] =
    "chromeos/accessibility";
// The manifest filename of the Accessibility Common extension.
inline constexpr char kAccessibilityCommonManifestFilename[] =
    "accessibility_common_manifest.json";
// The manifest v3 filename of the Accessibility Common extension.
inline constexpr char kAccessibilityCommonManifestV3Filename[] =
    "accessibility_common_manifest_v3.json";
// The guest manifest filename of the Accessibility Common extension.
inline constexpr char kAccessibilityCommonGuestManifestFilename[] =
    "accessibility_common_manifest_guest.json";
// The guest manifest v3 filename of the Accessibility Common extension.
inline constexpr char kAccessibilityCommonGuestManifestV3Filename[] =
    "accessibility_common_manifest_guest_v3.json";
// Path to preinstalled ChromeVox screen reader extension (relative to
// |chrome::DIR_RESOURCES|).
inline constexpr char kChromeVoxExtensionPath[] = "chromeos/accessibility";
// The manifest filename of the ChromeVox extension.
inline constexpr char kChromeVoxManifestFilename[] = "chromevox_manifest.json";
// The manifest v3 filename of the ChromeVox extension.
inline constexpr char kChromeVoxManifestV3Filename[] =
    "chromevox_manifest_v3.json";
// The guest manifest filename of the ChromeVox extension.
inline constexpr char kChromeVoxGuestManifestFilename[] =
    "chromevox_manifest_guest.json";
// The guest manifest v3 filename of the ChromeVox extension.
inline constexpr char kChromeVoxGuestManifestV3Filename[] =
    "chromevox_manifest_guest_v3.json";
// The path to the ChromeVox extension's options page.
inline constexpr char kChromeVoxOptionsPath[] =
    "/chromevox/options/options.html";
// The extension id of the Enhanced network TTS engine extension.
inline constexpr char kEnhancedNetworkTtsExtensionId[] =
    "jacnkoglebceckolkoapelihnglgaicd";
// Path to preinstalled Enhanced network TTS engine extension (relative to
// |chrome::DIR_RESOURCES|).
inline constexpr char kEnhancedNetworkTtsExtensionPath[] =
    "chromeos/accessibility";
// The manifest filename of the Enhanced network TTS engine extension.
inline constexpr char kEnhancedNetworkTtsManifestFilename[] =
    "enhanced_network_tts_manifest.json";
// The manifest v3 filename of the Enhanced network TTS engine extension.
inline constexpr char kEnhancedNetworkTtsManifestV3Filename[] =
    "enhanced_network_tts_manifest_v3.json";
// The guest manifest filename of the Enhanced network TTS engine extension.
inline constexpr char kEnhancedNetworkTtsGuestManifestFilename[] =
    "enhanced_network_tts_manifest_guest.json";
// The guest manifest v3 filename of the Enhanced network TTS engine extension.
inline constexpr char kEnhancedNetworkTtsGuestManifestV3Filename[] =
    "enhanced_network_tts_manifest_guest_v3.json";
// The extension id of the Select-to-speak extension.
inline constexpr char kSelectToSpeakExtensionId[] =
    "klbcgckkldhdhonijdbnhhaiedfkllef";
// Path to preinstalled Select-to-speak extension (relative to
// |chrome::DIR_RESOURCES|).
inline constexpr char kSelectToSpeakExtensionPath[] = "chromeos/accessibility";
// The manifest filename of the Select to Speak extension.
inline constexpr char kSelectToSpeakManifestFilename[] =
    "select_to_speak_manifest.json";
// The manifest v3 filename of the Select to Speak extension.
inline constexpr char kSelectToSpeakManifestV3Filename[] =
    "select_to_speak_manifest_v3.json";
// The guest manifest filename of the Select to Speak extension.
inline constexpr char kSelectToSpeakGuestManifestFilename[] =
    "select_to_speak_manifest_guest.json";
// The guest manifest v3 filename of the Select to Speak extension.
inline constexpr char kSelectToSpeakGuestManifestV3Filename[] =
    "select_to_speak_manifest_v3_guest.json";
// The extension id of the Switch Access extension.
inline constexpr char kSwitchAccessExtensionId[] =
    "pmehocpgjmkenlokgjfkaichfjdhpeol";
// Path to preinstalled Switch Access extension (relative to
// |chrome::DIR_RESOURCES|).
inline constexpr char kSwitchAccessExtensionPath[] = "chromeos/accessibility";
// The manifest filename of the Switch Access extension.
inline constexpr char kSwitchAccessManifestFilename[] =
    "switch_access_manifest.json";
// The manifest v3 filename of the Switch Access extension.
inline constexpr char kSwitchAccessManifestV3Filename[] =
    "switch_access_manifest_v3.json";
// The guest manifest filename of the Switch Access extension.
inline constexpr char kSwitchAccessGuestManifestFilename[] =
    "switch_access_manifest_guest.json";
// The guest manifest v3 filename of the Switch Access extension.
inline constexpr char kSwitchAccessGuestManifestV3Filename[] =
    "switch_access_manifest_guest_v3.json";
// Name of the manifest file in an extension when a special manifest is used
// for guest mode.
inline constexpr char kGuestManifestFilename[] = "manifest_guest.json";
// The extension id of the first run dialog application.
inline constexpr char kFirstRunDialogId[] = "jdgcneonijmofocbhmijhacgchbihela";
// Path to preinstalled Google speech synthesis extension.
inline constexpr char kGoogleSpeechSynthesisExtensionPath[] =
    "/usr/share/chromeos-assets/speech_synthesis/patts";
// The extension id of the Google speech synthesis extension.
inline constexpr char kGoogleSpeechSynthesisExtensionId[] =
    "gjjabgpgjpampikjhjpfhneeoapjbjaf";
// The path to the Google speech synthesis extension's options page.
inline constexpr char kGoogleSpeechSynthesisOptionsPath[] = "/options.html";
// Path to preinstalled eSpeak-NG speech synthesis extension.
inline constexpr char kEspeakSpeechSynthesisExtensionPath[] =
    "/usr/share/chromeos-assets/speech_synthesis/espeak-ng";
// The extension id of the eSpeak-NG speech synthesis extension.
inline constexpr char kEspeakSpeechSynthesisExtensionId[] =
    "dakbfdmgjiabojdgbiljlhgjbokobjpg";
// The path to the eSpeak-NG speech synthesis extension's options page.
inline constexpr char kEspeakSpeechSynthesisOptionsPath[] = "/options.html";
// The extension id of official HelpApp extension.
inline constexpr char kHelpAppExtensionId[] =
    "honijodknafkokifofgiaalefdiedpko";
#elif BUILDFLAG(IS_CHROMEOS_LACROS)
// The extension id of the Lacros accessibility helper extension.
inline constexpr char kEmbeddedA11yHelperExtensionId[] =
    "kgonammgkackdilhodbgbmodpepjocdp";
// The path to the Lacros accessibility helper extension.
inline constexpr char kEmbeddedA11yHelperExtensionPath[] = "accessibility";
// The name of the manifest file for the Lacros accessibility helper extension.
inline constexpr char kEmbeddedA11yHelperManifestFilename[] =
    "embedded_a11y_helper_manifest.json";
// The extension id of the Lacros ChromeVox helper extension.
inline constexpr char kChromeVoxHelperExtensionId[] =
    "mlkejohendkgipaomdopolhpbihbhfnf";
// The path to the Lacros ChromeVox helper extension.
inline constexpr char kChromeVoxHelperExtensionPath[] = "accessibility";
// The name of the manifest file for the Lacros ChromeVox helper extension.
inline constexpr char kChromeVoxHelperManifestFilename[] =
    "chromevox_helper_manifest.json";
#endif  // BUILDFLAG(IS_CHROMEOS_LACROS)
#if !BUILDFLAG(IS_CHROMEOS_LACROS)
// The extension id of the helper extension for Reading Mode to work on Google
// Docs.
inline constexpr char kReadingModeGDocsHelperExtensionId[] =;
// The path to the the helper extension for Reading Mode to work on Google Docs.
inline constexpr char kReadingModeGDocsHelperExtensionPath[] =;
// The name of the manifest file for the extension that enables Reading Mode to
// work on Google Docs.
inline constexpr base::FilePath::CharType
    kReadingModeGDocsHelperManifestFilename[] =);
#endif  // !BUILDFLAG(IS_CHROMEOS_LACROS)

// What causes an extension to be installed? Used in histograms, so don't
// change existing values.
enum CrxInstallCause {};

// The states that an app can be in, as reported by chrome.app.installState
// and chrome.app.runningState.
inline constexpr char kAppStateNotInstalled[] =;
inline constexpr char kAppStateInstalled[] =;
inline constexpr char kAppStateDisabled[] =;
inline constexpr char kAppStateRunning[] =;
inline constexpr char kAppStateCannotRun[] =;
inline constexpr char kAppStateReadyToRun[] =;

// The path part of the file system url used for media file systems.
inline constexpr char kMediaFileSystemPathPart[] =;

// The key name of extension request timestamp used by the
// prefs::kCloudExtensionRequestIds preference.
inline constexpr char kExtensionRequestTimestamp[] =;

// The key name of the extension workflow request justification used by the
// prefs::kCloudExtensionRequestIds preference.
inline constexpr char kExtensionWorkflowJustification[] =;
}  // namespace extension_misc

#endif  // CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_