issueReporterPage.ts 6.1 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13
/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/
'use strict';

import { escape } from 'vs/base/common/strings';
import { localize } from 'vs/nls';

export default (): string => `
<div id="issue-reporter">
	<div id="english" class="input-group hidden">${escape(localize('completeInEnglish', "Please complete the form in English."))}</div>

R
Rachel Macfarlane 已提交
14 15
	<div class="section">
		<div class="input-group">
16
			<label class="inline-label" for="issue-type">${escape(localize('issueTypeLabel', "This is a"))}</label>
17
			<select id="issue-type" class="inline-form-control">
18
				<!-- To be dynamically filled -->
R
Rachel Macfarlane 已提交
19
			</select>
20
		</div>
R
Rachel Macfarlane 已提交
21 22

		<div class="input-group">
23
			<label class="inline-label" for="issue-title">${escape(localize('issueTitleLabel', "Title"))} <span class="required-input">*</span></label>
24
			<input id="issue-title" type="text" class="inline-form-control" placeholder="${escape(localize('issueTitleRequired', "Please enter a title."))}" required>
25
			<div id="issue-title-length-validation-error" class="validation-error hidden" role="alert">${escape(localize('titleLengthValidation', "The title is too long."))}</div>
R
Rachel Macfarlane 已提交
26 27 28
			<small id="similar-issues">
				<!-- To be dynamically filled -->
			</small>
29
		</div>
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

		<div class="input-group" id="problem-source">
			<label class="inline-label" for="issue-source">${escape(localize('issueSourceLabel', "File on"))}</label>
			<select id="issue-source" class="inline-form-control">
				<option value="false">${escape(localize('vscode', "Visual Studio Code"))}</option>
				<option value="true">${escape(localize('extension', "An Extension"))}</option>
			</select>
			<div class="instructions">${escape(localize('disableExtensionsLabelText', "Try to reproduce the problem after {0}. If the problem only reproduces when extensions are active, it is likely an issue with an extension."))
		.replace('{0}', `<span tabIndex=0 role="button" id="disableExtensions" class="workbenchCommand">${escape(localize('disableExtensions', "disabling all extensions and reloading the window"))}</span>`)}
			</div>

			<div id="extension-selection">
				<label class="inline-label" for="extension-selector">${escape(localize('chooseExtension', "Extension"))} <span class="required-input">*</span></label>
				<select id="extension-selector" class="inline-form-control">
					<!-- To be dynamically filled -->
				</select>
			</div>
		</div>

49 50
	</div>

51 52 53 54 55 56 57
	<div class="system-info" id="block-container">
		<div class="block block-system">
			<details>
				<summary>${escape(localize('systemInfo', "My System Info"))}
					<div class="include-data">
						<input class="sendData" type="checkbox" id="includeSystemInfo" checked/>
						<label class="caption" for="includeSystemInfo">${escape(localize('sendData', "Send my data"))}</label>
R
Rachel Macfarlane 已提交
58
					</div>
59 60 61 62 63 64 65 66 67 68 69 70
				</summary>
				<div class="block-info">
					<!-- To be dynamically filled -->
				</div>
			</details>
		</div>
		<div class="block block-process">
			<details>
				<summary>${escape(localize('processes', "Currently Running Processes"))}
					<div class="include-data">
						<input class="sendData"  type="checkbox" id="includeProcessInfo" checked/>
						<label class="caption" for="includeProcessInfo">${escape(localize('sendData', "Send my data"))}</label>
R
Rachel Macfarlane 已提交
71
					</div>
72 73 74 75 76 77 78 79 80 81 82 83
				</summary>
				<pre class="block-info">
					<!-- To be dynamically filled -->
				</pre>
			</details>
		</div>
		<div class="block block-workspace">
			<details>
				<summary>${escape(localize('workspaceStats', "My Workspace Stats"))}
					<div class="include-data">
						<input class="sendData"  type="checkbox" id="includeWorkspaceInfo" checked/>
						<label class="caption" for="includeWorkspaceInfo">${escape(localize('sendData', "Send my data"))}</label>
84
					</div>
85 86 87
				</summary>
				<pre class="block-info">
					<code>
88
						<!-- To be dynamically filled -->
89 90 91 92 93 94 95 96 97 98
					</code>
				</pre>
			</details>
		</div>
		<div class="block block-extensions">
			<details>
				<summary>${escape(localize('extensions', "My Extensions"))}
					<div class="include-data">
						<input class="sendData"  type="checkbox" id="includeExtensions" checked/>
						<label class="caption" for="includeExtensions">${escape(localize('sendData', "Send my data"))}</label>
99
					</div>
100 101 102 103 104
				</summary>
				<div class="block-info">
					<!-- To be dynamically filled -->
				</div>
			</details>
105
		</div>
106 107 108 109 110 111
		<div class="block block-searchedExtensions">
			<details>
				<summary>${escape(localize('searchedExtensions', "Searched Extensions"))}
					<div class="include-data">
						<input class="sendData"  type="checkbox" id="includeSearchedExtensions" checked/>
						<label class="caption" for="includeSearchedExtensions">${escape(localize('sendData', "Send my data"))}</label>
112
					</div>
113 114 115 116 117 118 119 120 121 122 123 124
				</summary>
				<div class="block-info">
					<!-- To be dynamically filled -->
				</div>
			</details>
		</div>
		<div class="block block-settingsSearchResults">
			<details>
				<summary>${escape(localize('settingsSearchDetails', "Settings Search Details"))}
					<div class="include-data">
						<input class="sendData"  type="checkbox" id="includeSettingsSearchDetails" checked/>
						<label class="caption" for="includeSettingsSearchDetails">${escape(localize('sendData', "Send my data"))}</label>
125
					</div>
126 127 128 129 130 131 132 133 134
				</summary>
				<div class="block-info">
					<!-- To be dynamically filled -->
				</div>
			</details>
		</div>
	</div>

	<div class="input-group description-section">
135 136 137
		<label for="description" id="issue-description-label">
			<!-- To be dynamically filled -->
		</label>
138
		<div class="instructions" id="issue-description-subtitle">
139
			<!-- To be dynamically filled -->
140
		</div>
141
		<div class="block-info-text">
142
			<textarea name="description" id="description" placeholder="${escape(localize('details', "Please enter details."))}" required></textarea>
143 144 145 146 147
		</div>
	</div>

	<button id="github-submit-btn" disabled>${escape(localize('loadingData', "Loading data..."))}</button>
</div>`;