Marking almost all product fields as readonly
This commit is contained in:
parent
e6b698b4fd
commit
0964952bcd
|
@ -25,9 +25,9 @@ export class ProductService implements IProductService {
|
|||
|
||||
get urlProtocol(): string { return ''; }
|
||||
|
||||
get extensionAllowedProposedApi(): string[] { return this.productConfiguration ? this.productConfiguration.extensionAllowedProposedApi : []; }
|
||||
get extensionAllowedProposedApi(): readonly string[] { return this.productConfiguration ? this.productConfiguration.extensionAllowedProposedApi : []; }
|
||||
|
||||
get uiExtensions(): string[] | undefined { return this.productConfiguration ? this.productConfiguration.uiExtensions : undefined; }
|
||||
get uiExtensions(): readonly string[] | undefined { return this.productConfiguration ? this.productConfiguration.uiExtensions : undefined; }
|
||||
|
||||
get enableTelemetry(): boolean { return false; }
|
||||
|
||||
|
|
|
@ -10,103 +10,103 @@ export const IProductService = createDecorator<IProductService>('productService'
|
|||
export interface IProductService {
|
||||
_serviceBrand: any;
|
||||
|
||||
version: string;
|
||||
commit?: string;
|
||||
readonly version: string;
|
||||
readonly commit?: string;
|
||||
|
||||
nameLong: string;
|
||||
urlProtocol: string;
|
||||
extensionAllowedProposedApi: string[];
|
||||
uiExtensions?: string[];
|
||||
readonly nameLong: string;
|
||||
readonly urlProtocol: string;
|
||||
readonly extensionAllowedProposedApi: readonly string[];
|
||||
readonly uiExtensions?: readonly string[];
|
||||
|
||||
enableTelemetry: boolean;
|
||||
extensionsGallery?: {
|
||||
serviceUrl: string;
|
||||
itemUrl: string;
|
||||
controlUrl: string;
|
||||
recommendationsUrl: string;
|
||||
readonly enableTelemetry: boolean;
|
||||
readonly extensionsGallery?: {
|
||||
readonly serviceUrl: string;
|
||||
readonly itemUrl: string;
|
||||
readonly controlUrl: string;
|
||||
readonly recommendationsUrl: string;
|
||||
};
|
||||
|
||||
sendASmile?: {
|
||||
reportIssueUrl: string;
|
||||
requestFeatureUrl: string;
|
||||
readonly sendASmile?: {
|
||||
readonly reportIssueUrl: string;
|
||||
readonly requestFeatureUrl: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface IProductConfiguration {
|
||||
nameShort: string;
|
||||
nameLong: string;
|
||||
applicationName: string;
|
||||
win32AppId: string;
|
||||
win32x64AppId: string;
|
||||
win32UserAppId: string;
|
||||
win32x64UserAppId: string;
|
||||
win32AppUserModelId: string;
|
||||
win32MutexName: string;
|
||||
darwinBundleIdentifier: string;
|
||||
urlProtocol: string;
|
||||
readonly applicationName: string;
|
||||
readonly win32AppId: string;
|
||||
readonly win32x64AppId: string;
|
||||
readonly win32UserAppId: string;
|
||||
readonly win32x64UserAppId: string;
|
||||
readonly win32AppUserModelId: string;
|
||||
readonly win32MutexName: string;
|
||||
readonly darwinBundleIdentifier: string;
|
||||
readonly urlProtocol: string;
|
||||
dataFolderName: string;
|
||||
downloadUrl: string;
|
||||
updateUrl?: string;
|
||||
quality?: string;
|
||||
target?: string;
|
||||
commit?: string;
|
||||
settingsSearchBuildId?: number;
|
||||
settingsSearchUrl?: string;
|
||||
experimentsUrl?: string;
|
||||
date: string;
|
||||
extensionsGallery?: {
|
||||
serviceUrl: string;
|
||||
itemUrl: string;
|
||||
controlUrl: string;
|
||||
recommendationsUrl: string;
|
||||
readonly downloadUrl: string;
|
||||
readonly updateUrl?: string;
|
||||
readonly quality?: string;
|
||||
readonly target?: string;
|
||||
readonly commit?: string;
|
||||
readonly settingsSearchBuildId?: number;
|
||||
readonly settingsSearchUrl?: string;
|
||||
readonly experimentsUrl?: string;
|
||||
readonly date: string;
|
||||
readonly extensionsGallery?: {
|
||||
readonly serviceUrl: string;
|
||||
readonly itemUrl: string;
|
||||
readonly controlUrl: string;
|
||||
readonly recommendationsUrl: string;
|
||||
};
|
||||
extensionTips: { [id: string]: string; };
|
||||
extensionImportantTips: { [id: string]: { name: string; pattern: string; }; };
|
||||
exeBasedExtensionTips: { [id: string]: { friendlyName: string, windowsPath?: string, recommendations: string[] }; };
|
||||
extensionKeywords: { [extension: string]: string[]; };
|
||||
extensionAllowedBadgeProviders: string[];
|
||||
extensionAllowedProposedApi: string[];
|
||||
keymapExtensionTips: string[];
|
||||
crashReporter: {
|
||||
companyName: string;
|
||||
productName: string;
|
||||
readonly exeBasedExtensionTips: { [id: string]: { friendlyName: string, windowsPath?: string, recommendations: readonly string[] }; };
|
||||
readonly extensionKeywords: { [extension: string]: readonly string[]; };
|
||||
readonly extensionAllowedBadgeProviders: readonly string[];
|
||||
readonly extensionAllowedProposedApi: readonly string[];
|
||||
readonly keymapExtensionTips: readonly string[];
|
||||
readonly crashReporter: {
|
||||
readonly companyName: string;
|
||||
readonly productName: string;
|
||||
};
|
||||
welcomePage: string;
|
||||
enableTelemetry: boolean;
|
||||
aiConfig: {
|
||||
asimovKey: string;
|
||||
readonly welcomePage: string;
|
||||
readonly enableTelemetry: boolean;
|
||||
readonly aiConfig: {
|
||||
readonly asimovKey: string;
|
||||
};
|
||||
sendASmile: {
|
||||
reportIssueUrl: string,
|
||||
requestFeatureUrl: string
|
||||
readonly sendASmile: {
|
||||
readonly reportIssueUrl: string,
|
||||
readonly requestFeatureUrl: string
|
||||
};
|
||||
documentationUrl: string;
|
||||
releaseNotesUrl: string;
|
||||
keyboardShortcutsUrlMac: string;
|
||||
keyboardShortcutsUrlLinux: string;
|
||||
keyboardShortcutsUrlWin: string;
|
||||
introductoryVideosUrl: string;
|
||||
tipsAndTricksUrl: string;
|
||||
newsletterSignupUrl: string;
|
||||
twitterUrl: string;
|
||||
requestFeatureUrl: string;
|
||||
reportIssueUrl: string;
|
||||
licenseUrl: string;
|
||||
privacyStatementUrl: string;
|
||||
telemetryOptOutUrl: string;
|
||||
npsSurveyUrl: string;
|
||||
surveys: ISurveyData[];
|
||||
checksums: { [path: string]: string; };
|
||||
checksumFailMoreInfoUrl: string;
|
||||
hockeyApp: {
|
||||
'win32-ia32': string;
|
||||
'win32-x64': string;
|
||||
'linux-x64': string;
|
||||
'darwin': string;
|
||||
readonly documentationUrl: string;
|
||||
readonly releaseNotesUrl: string;
|
||||
readonly keyboardShortcutsUrlMac: string;
|
||||
readonly keyboardShortcutsUrlLinux: string;
|
||||
readonly keyboardShortcutsUrlWin: string;
|
||||
readonly introductoryVideosUrl: string;
|
||||
readonly tipsAndTricksUrl: string;
|
||||
readonly newsletterSignupUrl: string;
|
||||
readonly twitterUrl: string;
|
||||
readonly requestFeatureUrl: string;
|
||||
readonly reportIssueUrl: string;
|
||||
readonly licenseUrl: string;
|
||||
readonly privacyStatementUrl: string;
|
||||
readonly telemetryOptOutUrl: string;
|
||||
readonly npsSurveyUrl: string;
|
||||
readonly surveys: readonly ISurveyData[];
|
||||
readonly checksums: { [path: string]: string; };
|
||||
readonly checksumFailMoreInfoUrl: string;
|
||||
readonly hockeyApp: {
|
||||
readonly 'win32-ia32': string;
|
||||
readonly 'win32-x64': string;
|
||||
readonly 'linux-x64': string;
|
||||
readonly 'darwin': string;
|
||||
};
|
||||
logUploaderUrl: string;
|
||||
portable?: string;
|
||||
uiExtensions?: string[];
|
||||
readonly logUploaderUrl: string;
|
||||
readonly portable?: string;
|
||||
readonly uiExtensions?: readonly string[];
|
||||
}
|
||||
|
||||
export interface ISurveyData {
|
||||
|
|
|
@ -20,9 +20,9 @@ export class ProductService implements IProductService {
|
|||
|
||||
get urlProtocol(): string { return product.urlProtocol; }
|
||||
|
||||
get extensionAllowedProposedApi(): string[] { return product.extensionAllowedProposedApi; }
|
||||
get extensionAllowedProposedApi(): readonly string[] { return product.extensionAllowedProposedApi; }
|
||||
|
||||
get uiExtensions(): string[] | undefined { return product.uiExtensions; }
|
||||
get uiExtensions(): readonly string[] | undefined { return product.uiExtensions; }
|
||||
|
||||
get enableTelemetry(): boolean { return product.enableTelemetry; }
|
||||
|
||||
|
|
Loading…
Reference in a new issue