-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathconstants.ts
More file actions
108 lines (94 loc) · 3.33 KB
/
constants.ts
File metadata and controls
108 lines (94 loc) · 3.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
/**
* Central registry of all command IDs used in the extension.
*
* Using this object instead of string literals throughout the codebase:
* - Enables IDE autocomplete
* - Makes refactoring safer
* - Makes it easy to find all command usages
* - Prevents typos
*/
export const Commands = {
// Proxy lifecycle commands
start: 'dev-proxy-toolkit.start',
stop: 'dev-proxy-toolkit.stop',
restart: 'dev-proxy-toolkit.restart',
// Recording commands
recordStart: 'dev-proxy-toolkit.record-start',
recordStop: 'dev-proxy-toolkit.record-stop',
// Mock commands
raiseMock: 'dev-proxy-toolkit.raise-mock',
// Configuration commands
configOpen: 'dev-proxy-toolkit.config-open',
configNew: 'dev-proxy-toolkit.config-new',
// Discovery commands
discoverUrls: 'dev-proxy-toolkit.discover-urls-to-watch',
// Installation commands
install: 'dev-proxy-toolkit.install',
upgrade: 'dev-proxy-toolkit.upgrade',
// JWT commands
jwtCreate: 'dev-proxy-toolkit.jwt-create',
// Documentation commands
openPluginDoc: 'dev-proxy-toolkit.openPluginDoc',
// Language model commands
addLanguageModelConfig: 'dev-proxy-toolkit.addLanguageModelConfig',
// Workspace commands
addToRecommendations: 'dev-proxy-toolkit.add-to-recommendations',
resetState: 'dev-proxy-toolkit.reset-state',
} as const;
/**
* Type for command ID values.
*/
export type CommandId = (typeof Commands)[keyof typeof Commands];
/**
* VS Code context keys set by this extension.
*
* These are used in when clauses for command enablement and menu visibility.
*/
export const ContextKeys = {
isInstalled: 'isDevProxyInstalled',
isRunning: 'isDevProxyRunning',
isRecording: 'isDevProxyRecording',
isConfigFile: 'isDevProxyConfigFile',
} as const;
/**
* Diagnostic codes used for identifying specific issues.
*
* These codes are used in diagnostics and code actions to match
* specific problems with their fixes.
*/
export const DiagnosticCodes = {
invalidSchema: 'invalidSchema',
invalidConfigSection: 'invalidConfigSection',
invalidConfigSectionSchema: 'invalidConfigSectionSchema',
unknownConfigProperty: 'unknownConfigProperty',
invalidConfigValue: 'invalidConfigValue',
deprecatedPluginPath: 'deprecatedPluginPath',
missingLanguageModel: 'missingLanguageModel',
noEnabledPlugins: 'noEnabledPlugins',
reporterPosition: 'reporterPosition',
summaryWithoutReporter: 'summaryWithoutReporter',
apiCenterPluginOrder: 'apiCenterPluginOrder',
emptyUrlsToWatch: 'emptyUrlsToWatch',
pluginConfigMissing: 'pluginConfigMissing',
pluginConfigRequired: 'pluginConfigRequired',
pluginConfigNotRequired: 'pluginConfigNotRequired',
pluginConfigOptional: 'pluginConfigOptional',
} as const;
/**
* External URLs used by the extension.
*/
export const Urls = {
upgradeDoc: 'https://aka.ms/devproxy/upgrade',
linuxInstall: 'https://aka.ms/devproxy/start/linux',
linuxSetupScript: 'https://aka.ms/devproxy/setup.sh',
linuxSetupBetaScript: 'https://aka.ms/devproxy/setup-beta.sh',
schemaBase: 'https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas',
diagnosticsDoc: 'https://learn.microsoft.com/microsoft-cloud/dev/dev-proxy/technical-reference/toolkit-diagnostics',
} as const;
/**
* Extension-related constants.
*/
export const Extension = {
id: 'garrytrinder.dev-proxy-toolkit',
extensionsJsonPath: '.vscode/extensions.json',
} as const;