@codingame/monaco-vscode-user-data-profile-service-override 8.0.0 → 8.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
- package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +1 -1
- package/vscode/src/vs/workbench/contrib/userDataProfile/browser/userDataProfile.js +33 -33
- package/vscode/src/vs/workbench/contrib/userDataProfile/browser/userDataProfileActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/userDataProfile/browser/userDataProfilesEditor.js +54 -54
- package/vscode/src/vs/workbench/contrib/userDataProfile/browser/userDataProfilesEditorModel.js +5 -5
- package/vscode/src/vs/workbench/services/userDataProfile/browser/extensionsResource.js +5 -5
- package/vscode/src/vs/workbench/services/userDataProfile/browser/globalStateResource.js +1 -1
- package/vscode/src/vs/workbench/services/userDataProfile/browser/keybindingsResource.js +1 -1
- package/vscode/src/vs/workbench/services/userDataProfile/browser/settingsResource.js +1 -1
- package/vscode/src/vs/workbench/services/userDataProfile/browser/snippetsResource.js +2 -2
- package/vscode/src/vs/workbench/services/userDataProfile/browser/tasksResource.js +1 -1
- package/vscode/src/vs/workbench/services/userDataProfile/browser/userDataProfileImportExportService.js +80 -80
- package/vscode/src/vs/workbench/services/userDataProfile/browser/userDataProfileManagement.js +8 -8
|
@@ -63,7 +63,7 @@ import { IUriIdentityService } from 'vscode/vscode/vs/platform/uriIdentity/commo
|
|
|
63
63
|
import { Orientation } from 'vscode/vscode/vs/base/browser/ui/sash/sash';
|
|
64
64
|
|
|
65
65
|
var UserDataProfilesEditor_1, ExistingProfileResourceTreeRenderer_1, NewProfileResourceTreeRenderer_1, ProfileResourceChildTreeItemRenderer_1, UserDataProfilesEditorInput_1;
|
|
66
|
-
const profilesSashBorder = registerColor('profiles.sashBorder', PANEL_BORDER, ( localize(
|
|
66
|
+
const profilesSashBorder = registerColor('profiles.sashBorder', PANEL_BORDER, ( localize(10920, "The color of the Profiles editor splitview sash border.")));
|
|
67
67
|
const listStyles = getListStyles({
|
|
68
68
|
listActiveSelectionBackground: editorBackground,
|
|
69
69
|
listActiveSelectionForeground: foreground,
|
|
@@ -157,7 +157,7 @@ let UserDataProfilesEditor = class UserDataProfilesEditor extends EditorPane {
|
|
|
157
157
|
return profileElement?.name ?? '';
|
|
158
158
|
},
|
|
159
159
|
getWidgetAriaLabel() {
|
|
160
|
-
return ( localize(
|
|
160
|
+
return ( localize(10921, "Profiles"));
|
|
161
161
|
}
|
|
162
162
|
},
|
|
163
163
|
openOnSingleClick: true,
|
|
@@ -178,10 +178,10 @@ let UserDataProfilesEditor = class UserDataProfilesEditor extends EditorPane {
|
|
|
178
178
|
getActions: () => {
|
|
179
179
|
const actions = [];
|
|
180
180
|
if (this.model?.templates.length) {
|
|
181
|
-
actions.push(( (new SubmenuAction('from.template', ( localize(
|
|
181
|
+
actions.push(( (new SubmenuAction('from.template', ( localize(10922, "From Template")), this.getCreateFromTemplateActions()))));
|
|
182
182
|
actions.push(( (new Separator())));
|
|
183
183
|
}
|
|
184
|
-
actions.push(( (new Action('importProfile', ( localize(
|
|
184
|
+
actions.push(( (new Action('importProfile', ( localize(10923, "Import Profile...")), undefined, true, () => this.importProfile()))));
|
|
185
185
|
return actions;
|
|
186
186
|
}
|
|
187
187
|
},
|
|
@@ -190,7 +190,7 @@ let UserDataProfilesEditor = class UserDataProfilesEditor extends EditorPane {
|
|
|
190
190
|
supportIcons: true,
|
|
191
191
|
...defaultButtonStyles
|
|
192
192
|
}))));
|
|
193
|
-
button.label = ( localize(
|
|
193
|
+
button.label = ( localize(10924, "New Profile"));
|
|
194
194
|
this._register(button.onDidClick(e => this.createNewProfile()));
|
|
195
195
|
}
|
|
196
196
|
getCreateFromTemplateActions() {
|
|
@@ -237,13 +237,13 @@ let UserDataProfilesEditor = class UserDataProfilesEditor extends EditorPane {
|
|
|
237
237
|
}
|
|
238
238
|
getTreeContextMenuActions() {
|
|
239
239
|
const actions = [];
|
|
240
|
-
actions.push(( (new Action('newProfile', ( localize(
|
|
240
|
+
actions.push(( (new Action('newProfile', ( localize(10924, "New Profile")), undefined, true, () => this.createNewProfile()))));
|
|
241
241
|
const templateActions = this.getCreateFromTemplateActions();
|
|
242
242
|
if (templateActions.length) {
|
|
243
|
-
actions.push(( (new SubmenuAction('from.template', ( localize(
|
|
243
|
+
actions.push(( (new SubmenuAction('from.template', ( localize(10925, "New Profile From Template")), templateActions))));
|
|
244
244
|
}
|
|
245
245
|
actions.push(( (new Separator())));
|
|
246
|
-
actions.push(( (new Action('importProfile', ( localize(
|
|
246
|
+
actions.push(( (new Action('importProfile', ( localize(10923, "Import Profile...")), undefined, true, () => this.importProfile()))));
|
|
247
247
|
return actions;
|
|
248
248
|
}
|
|
249
249
|
async importProfile() {
|
|
@@ -252,13 +252,13 @@ let UserDataProfilesEditor = class UserDataProfilesEditor extends EditorPane {
|
|
|
252
252
|
const updateQuickPickItems = (value) => {
|
|
253
253
|
const quickPickItems = [];
|
|
254
254
|
if (value) {
|
|
255
|
-
quickPickItems.push({ label: quickPick.value, description: ( localize(
|
|
255
|
+
quickPickItems.push({ label: quickPick.value, description: ( localize(10926, "Import from URL")) });
|
|
256
256
|
}
|
|
257
|
-
quickPickItems.push({ label: ( localize(
|
|
257
|
+
quickPickItems.push({ label: ( localize(10927, "Select File...")) });
|
|
258
258
|
quickPick.items = quickPickItems;
|
|
259
259
|
};
|
|
260
|
-
quickPick.title = ( localize(
|
|
261
|
-
quickPick.placeholder = ( localize(
|
|
260
|
+
quickPick.title = ( localize(10928, "Import from Profile Template..."));
|
|
261
|
+
quickPick.placeholder = ( localize(10929, "Provide Profile Template URL"));
|
|
262
262
|
quickPick.ignoreFocusOut = true;
|
|
263
263
|
disposables.add(quickPick.onDidChangeValue(updateQuickPickItems));
|
|
264
264
|
updateQuickPickItems();
|
|
@@ -287,7 +287,7 @@ let UserDataProfilesEditor = class UserDataProfilesEditor extends EditorPane {
|
|
|
287
287
|
canSelectFiles: true,
|
|
288
288
|
canSelectMany: false,
|
|
289
289
|
filters: PROFILE_FILTER,
|
|
290
|
-
title: ( localize(
|
|
290
|
+
title: ( localize(10930, "Select Profile Template File")),
|
|
291
291
|
});
|
|
292
292
|
if (!profileLocation) {
|
|
293
293
|
return null;
|
|
@@ -361,7 +361,7 @@ let ProfileElementRenderer = class ProfileElementRenderer {
|
|
|
361
361
|
const label = append(container, $('.profile-list-item-label'));
|
|
362
362
|
const dirty = append(container, $(`span${ThemeIcon.asCSSSelector(Codicon.circleFilled)}`));
|
|
363
363
|
const description = append(container, $('.profile-list-item-description'));
|
|
364
|
-
append(description, $('span', undefined, ( localize(
|
|
364
|
+
append(description, $('span', undefined, ( localize(10931, "In use"))));
|
|
365
365
|
const actionsContainer = append(container, $('.profile-tree-item-actions-container'));
|
|
366
366
|
const actionBar = disposables.add(this.instantiationService.createInstance(WorkbenchToolBar, actionsContainer, {
|
|
367
367
|
hoverDelegate: disposables.add(createInstantHoverDelegate()),
|
|
@@ -676,15 +676,15 @@ class AbstractProfileResourceTreeRenderer extends Disposable {
|
|
|
676
676
|
getResourceTypeTitle(resourceType) {
|
|
677
677
|
switch (resourceType) {
|
|
678
678
|
case ProfileResourceType.Settings:
|
|
679
|
-
return ( localize(
|
|
679
|
+
return ( localize(10932, "Settings"));
|
|
680
680
|
case ProfileResourceType.Keybindings:
|
|
681
|
-
return ( localize(
|
|
681
|
+
return ( localize(10933, "Keyboard Shortcuts"));
|
|
682
682
|
case ProfileResourceType.Snippets:
|
|
683
|
-
return ( localize(
|
|
683
|
+
return ( localize(10934, "Snippets"));
|
|
684
684
|
case ProfileResourceType.Tasks:
|
|
685
|
-
return ( localize(
|
|
685
|
+
return ( localize(10935, "Tasks"));
|
|
686
686
|
case ProfileResourceType.Extensions:
|
|
687
|
-
return ( localize(
|
|
687
|
+
return ( localize(10936, "Extensions"));
|
|
688
688
|
}
|
|
689
689
|
return '';
|
|
690
690
|
}
|
|
@@ -713,18 +713,18 @@ let ProfileNameRenderer = class ProfileNameRenderer extends ProfilePropertyRende
|
|
|
713
713
|
const elementDisposables = disposables.add(( (new DisposableStore())));
|
|
714
714
|
let profileElement;
|
|
715
715
|
const nameContainer = append(parent, $('.profile-row-container'));
|
|
716
|
-
append(nameContainer, $('.profile-label-element', undefined, ( localize(
|
|
716
|
+
append(nameContainer, $('.profile-label-element', undefined, ( localize(10937, "Name"))));
|
|
717
717
|
const nameInput = disposables.add(( (new InputBox(nameContainer, this.contextViewService, {
|
|
718
718
|
inputBoxStyles: getInputBoxStyle({
|
|
719
719
|
inputBorder: settingsTextInputBorder
|
|
720
720
|
}),
|
|
721
|
-
ariaLabel: ( localize(
|
|
722
|
-
placeholder: ( localize(
|
|
721
|
+
ariaLabel: ( localize(10938, "Profile Name")),
|
|
722
|
+
placeholder: ( localize(10938, "Profile Name")),
|
|
723
723
|
validationOptions: {
|
|
724
724
|
validation: (value) => {
|
|
725
725
|
if (!value) {
|
|
726
726
|
return {
|
|
727
|
-
content: ( localize(
|
|
727
|
+
content: ( localize(10939, "Profile name is required and must be a non-empty value.")),
|
|
728
728
|
type: MessageType.WARNING
|
|
729
729
|
};
|
|
730
730
|
}
|
|
@@ -738,7 +738,7 @@ let ProfileNameRenderer = class ProfileNameRenderer extends ProfilePropertyRende
|
|
|
738
738
|
value = value.trim();
|
|
739
739
|
if (initialName !== value && ( (this.userDataProfilesService.profiles.some(p => p.name === value)))) {
|
|
740
740
|
return {
|
|
741
|
-
content: ( localize(
|
|
741
|
+
content: ( localize(10940, "Profile with name {0} already exists.", value)),
|
|
742
742
|
type: MessageType.WARNING
|
|
743
743
|
};
|
|
744
744
|
}
|
|
@@ -799,9 +799,9 @@ let ProfileIconRenderer = class ProfileIconRenderer extends ProfilePropertyRende
|
|
|
799
799
|
const elementDisposables = disposables.add(( (new DisposableStore())));
|
|
800
800
|
let profileElement;
|
|
801
801
|
const iconContainer = append(parent, $('.profile-row-container'));
|
|
802
|
-
append(iconContainer, $('.profile-label-element', undefined, ( localize(
|
|
802
|
+
append(iconContainer, $('.profile-label-element', undefined, ( localize(10941, "Icon"))));
|
|
803
803
|
const iconValueContainer = append(iconContainer, $('.profile-icon-container'));
|
|
804
|
-
const iconElement = append(iconValueContainer, $(`${ThemeIcon.asCSSSelector(DEFAULT_ICON)}`, { 'tabindex': '0', 'role': 'button', 'aria-label': ( localize(
|
|
804
|
+
const iconElement = append(iconValueContainer, $(`${ThemeIcon.asCSSSelector(DEFAULT_ICON)}`, { 'tabindex': '0', 'role': 'button', 'aria-label': ( localize(10942, "Profile Icon")) }));
|
|
805
805
|
const iconSelectBox = disposables.add(this.instantiationService.createInstance(WorkbenchIconSelectBox, { icons: ICONS, inputBoxStyles: defaultInputBoxStyles }));
|
|
806
806
|
let hoverWidget;
|
|
807
807
|
const showIconSelectBox = () => {
|
|
@@ -856,7 +856,7 @@ let ProfileIconRenderer = class ProfileIconRenderer extends ProfilePropertyRende
|
|
|
856
856
|
profileElement.root.icon = selectedIcon.id;
|
|
857
857
|
}
|
|
858
858
|
}));
|
|
859
|
-
append(iconValueContainer, $('.profile-description-element', undefined, ( localize(
|
|
859
|
+
append(iconValueContainer, $('.profile-description-element', undefined, ( localize(10943, "Profile icon to be shown in the activity bar"))));
|
|
860
860
|
const renderIcon = (profileElement) => {
|
|
861
861
|
if (profileElement.root.icon) {
|
|
862
862
|
iconElement.className = ThemeIcon.asClassName(ThemeIcon.fromId(profileElement.root.icon));
|
|
@@ -894,9 +894,9 @@ class UseAsDefaultProfileRenderer extends ProfilePropertyRenderer {
|
|
|
894
894
|
const elementDisposables = disposables.add(( (new DisposableStore())));
|
|
895
895
|
let profileElement;
|
|
896
896
|
const useAsDefaultProfileContainer = append(parent, $('.profile-row-container'));
|
|
897
|
-
append(useAsDefaultProfileContainer, $('.profile-label-element', undefined, ( localize(
|
|
897
|
+
append(useAsDefaultProfileContainer, $('.profile-label-element', undefined, ( localize(10944, "Use as Default"))));
|
|
898
898
|
const useAsDefaultProfileValueContainer = append(useAsDefaultProfileContainer, $('.profile-use-as-default-container'));
|
|
899
|
-
const useAsDefaultProfileTitle = ( localize(
|
|
899
|
+
const useAsDefaultProfileTitle = ( localize(10945, "Use this profile as the default for new windows"));
|
|
900
900
|
const useAsDefaultProfileCheckbox = disposables.add(( (new Checkbox(useAsDefaultProfileTitle, false, defaultCheckboxStyles))));
|
|
901
901
|
append(useAsDefaultProfileValueContainer, useAsDefaultProfileCheckbox.domNode);
|
|
902
902
|
const useAsDefaultProfileLabel = append(useAsDefaultProfileValueContainer, $('.profile-description-element', undefined, useAsDefaultProfileTitle));
|
|
@@ -943,11 +943,11 @@ let CopyFromProfileRenderer = class CopyFromProfileRenderer extends ProfilePrope
|
|
|
943
943
|
const elementDisposables = disposables.add(( (new DisposableStore())));
|
|
944
944
|
let profileElement;
|
|
945
945
|
const copyFromContainer = append(parent, $('.profile-row-container.profile-copy-from-container'));
|
|
946
|
-
append(copyFromContainer, $('.profile-label-element', undefined, ( localize(
|
|
947
|
-
append(copyFromContainer, $('.profile-description-element', undefined, ( localize(
|
|
946
|
+
append(copyFromContainer, $('.profile-label-element', undefined, ( localize(10946, "Copy from"))));
|
|
947
|
+
append(copyFromContainer, $('.profile-description-element', undefined, ( localize(10947, "Select the profile source from which you want to copy contents"))));
|
|
948
948
|
const copyFromSelectBox = disposables.add(this.instantiationService.createInstance(SelectBox, [], 0, this.contextViewService, defaultSelectBoxStyles, {
|
|
949
949
|
useCustomDrawn: true,
|
|
950
|
-
ariaLabel: ( localize(
|
|
950
|
+
ariaLabel: ( localize(10948, "Copy profile from")),
|
|
951
951
|
}));
|
|
952
952
|
copyFromSelectBox.render(append(copyFromContainer, $('.profile-select-container')));
|
|
953
953
|
const render = (profileElement, copyFromOptions) => {
|
|
@@ -991,7 +991,7 @@ let CopyFromProfileRenderer = class CopyFromProfileRenderer extends ProfilePrope
|
|
|
991
991
|
getCopyFromOptions(profileElement) {
|
|
992
992
|
const separator = { text: '\u2500\u2500\u2500\u2500\u2500\u2500', isDisabled: true };
|
|
993
993
|
const copyFromOptions = [];
|
|
994
|
-
copyFromOptions.push({ text: ( localize(
|
|
994
|
+
copyFromOptions.push({ text: ( localize(10949, "None")) });
|
|
995
995
|
for (const [copyFromTemplate, name] of profileElement.copyFromTemplates) {
|
|
996
996
|
if (!( (this.templates.some(
|
|
997
997
|
template => this.uriIdentityService.extUri.isEqual(( (URI.parse(template.url))), copyFromTemplate)
|
|
@@ -1000,12 +1000,12 @@ let CopyFromProfileRenderer = class CopyFromProfileRenderer extends ProfilePrope
|
|
|
1000
1000
|
}
|
|
1001
1001
|
}
|
|
1002
1002
|
if (this.templates.length) {
|
|
1003
|
-
copyFromOptions.push({ ...separator, decoratorRight: ( localize(
|
|
1003
|
+
copyFromOptions.push({ ...separator, decoratorRight: ( localize(10950, "Profile Templates")) });
|
|
1004
1004
|
for (const template of this.templates) {
|
|
1005
1005
|
copyFromOptions.push({ text: template.name, id: template.url, source: ( (URI.parse(template.url))) });
|
|
1006
1006
|
}
|
|
1007
1007
|
}
|
|
1008
|
-
copyFromOptions.push({ ...separator, decoratorRight: ( localize(
|
|
1008
|
+
copyFromOptions.push({ ...separator, decoratorRight: ( localize(10951, "Existing Profiles")) });
|
|
1009
1009
|
for (const profile of this.userDataProfilesService.profiles) {
|
|
1010
1010
|
copyFromOptions.push({ text: profile.name, id: profile.id, source: profile });
|
|
1011
1011
|
}
|
|
@@ -1034,11 +1034,11 @@ let ContentsProfileRenderer = class ContentsProfileRenderer extends ProfilePrope
|
|
|
1034
1034
|
const elementDisposables = disposables.add(( (new DisposableStore())));
|
|
1035
1035
|
let profileElement;
|
|
1036
1036
|
const configureRowContainer = append(parent, $('.profile-row-container'));
|
|
1037
|
-
append(configureRowContainer, $('.profile-label-element', undefined, ( localize(
|
|
1037
|
+
append(configureRowContainer, $('.profile-label-element', undefined, ( localize(10952, "Contents"))));
|
|
1038
1038
|
const contentsDescriptionElement = append(configureRowContainer, $('.profile-description-element'));
|
|
1039
1039
|
const contentsTreeHeader = append(configureRowContainer, $('.profile-content-tree-header'));
|
|
1040
|
-
const optionsLabel = $('.options-header', undefined, $('span', undefined, ( localize(
|
|
1041
|
-
append(contentsTreeHeader, $(''), $('', undefined, ( localize(
|
|
1040
|
+
const optionsLabel = $('.options-header', undefined, $('span', undefined, ( localize(10953, "Source"))));
|
|
1041
|
+
append(contentsTreeHeader, $(''), $('', undefined, ( localize(10952, "Contents"))), optionsLabel, $('.actions-header', undefined, ( localize(10954, "Actions"))));
|
|
1042
1042
|
const delegate = ( (new ProfileContentTreeElementDelegate()));
|
|
1043
1043
|
const profilesContentTree = this.profilesContentTree = disposables.add(this.instantiationService.createInstance((WorkbenchAsyncDataTree), 'ProfileEditor-ContentsTree', append(configureRowContainer, $('.profile-content-tree.file-icon-themable-tree.show-file-icons')), delegate, [
|
|
1044
1044
|
this.instantiationService.createInstance(ExistingProfileResourceTreeRenderer),
|
|
@@ -1100,9 +1100,9 @@ let ContentsProfileRenderer = class ContentsProfileRenderer extends ProfilePrope
|
|
|
1100
1100
|
}
|
|
1101
1101
|
}));
|
|
1102
1102
|
const updateDescription = (element) => {
|
|
1103
|
-
const defaultHelpInfo = ( localize(
|
|
1103
|
+
const defaultHelpInfo = ( localize(10955, "- *Default:* Use contents from the Default profile\n"));
|
|
1104
1104
|
const markdown = ( (new MarkdownString()))
|
|
1105
|
-
.appendMarkdown(( localize(
|
|
1105
|
+
.appendMarkdown(( localize(10956, "Configure source of contents for this profile\n")));
|
|
1106
1106
|
clearNode(contentsDescriptionElement);
|
|
1107
1107
|
if (element.root instanceof UserDataProfileElement && element.root.profile.isDefault) {
|
|
1108
1108
|
return;
|
|
@@ -1110,12 +1110,12 @@ let ContentsProfileRenderer = class ContentsProfileRenderer extends ProfilePrope
|
|
|
1110
1110
|
if (element.root instanceof NewProfileElement) {
|
|
1111
1111
|
const copyFromName = element.root.getCopyFromName();
|
|
1112
1112
|
const optionName = copyFromName === this.userDataProfilesService.defaultProfile.name
|
|
1113
|
-
? ( localize(
|
|
1113
|
+
? ( localize(10957, "{0} (Copy)", copyFromName))
|
|
1114
1114
|
: copyFromName;
|
|
1115
1115
|
if (optionName) {
|
|
1116
1116
|
markdown
|
|
1117
1117
|
.appendMarkdown(( localize(
|
|
1118
|
-
|
|
1118
|
+
10958,
|
|
1119
1119
|
"- *{0}:* Copy contents from the {1} profile\n",
|
|
1120
1120
|
optionName,
|
|
1121
1121
|
copyFromName
|
|
@@ -1123,13 +1123,13 @@ let ContentsProfileRenderer = class ContentsProfileRenderer extends ProfilePrope
|
|
|
1123
1123
|
}
|
|
1124
1124
|
markdown
|
|
1125
1125
|
.appendMarkdown(defaultHelpInfo)
|
|
1126
|
-
.appendMarkdown(( localize(
|
|
1126
|
+
.appendMarkdown(( localize(10959, "- *None:* Create empty contents\n")));
|
|
1127
1127
|
}
|
|
1128
1128
|
else if (element.root instanceof UserDataProfileElement) {
|
|
1129
1129
|
markdown
|
|
1130
1130
|
.appendMarkdown(defaultHelpInfo)
|
|
1131
1131
|
.appendMarkdown(( localize(
|
|
1132
|
-
|
|
1132
|
+
10960,
|
|
1133
1133
|
"- *{1}:* Use contents from the {0} profile\n",
|
|
1134
1134
|
element.root.profile.name,
|
|
1135
1135
|
element.root.profile.name
|
|
@@ -1208,13 +1208,13 @@ let ExistingProfileResourceTreeRenderer = class ExistingProfileResourceTreeRende
|
|
|
1208
1208
|
}
|
|
1209
1209
|
const updateRadioItems = () => {
|
|
1210
1210
|
templateData.radio.setItems([{
|
|
1211
|
-
text: ( localize(
|
|
1212
|
-
tooltip: ( localize(
|
|
1211
|
+
text: ( localize(10961, "Default")),
|
|
1212
|
+
tooltip: ( localize(10962, "Use {0} from the Default profile", resourceTypeTitle)),
|
|
1213
1213
|
isActive: root.getFlag(element.resourceType)
|
|
1214
1214
|
},
|
|
1215
1215
|
{
|
|
1216
1216
|
text: root.name,
|
|
1217
|
-
tooltip: ( localize(
|
|
1217
|
+
tooltip: ( localize(10963, "Use {0} from the {1} profile", resourceTypeTitle, root.name)),
|
|
1218
1218
|
isActive: !root.getFlag(element.resourceType)
|
|
1219
1219
|
}]);
|
|
1220
1220
|
};
|
|
@@ -1275,22 +1275,22 @@ let NewProfileResourceTreeRenderer = class NewProfileResourceTreeRenderer extend
|
|
|
1275
1275
|
templateData.label.textContent = resourceTypeTitle;
|
|
1276
1276
|
const renderRadioItems = () => {
|
|
1277
1277
|
const options = [{
|
|
1278
|
-
text: ( localize(
|
|
1279
|
-
tooltip: ( localize(
|
|
1278
|
+
text: ( localize(10961, "Default")),
|
|
1279
|
+
tooltip: ( localize(10962, "Use {0} from the Default profile", resourceTypeTitle)),
|
|
1280
1280
|
},
|
|
1281
1281
|
{
|
|
1282
|
-
text: ( localize(
|
|
1283
|
-
tooltip: ( localize(
|
|
1282
|
+
text: ( localize(10964, "None")),
|
|
1283
|
+
tooltip: ( localize(10965, "Create empty {0}", resourceTypeTitle))
|
|
1284
1284
|
}];
|
|
1285
1285
|
const copyFromName = root.getCopyFromName();
|
|
1286
1286
|
const name = copyFromName === this.userDataProfilesService.defaultProfile.name
|
|
1287
|
-
? ( localize(
|
|
1287
|
+
? ( localize(10957, "{0} (Copy)", copyFromName))
|
|
1288
1288
|
: copyFromName;
|
|
1289
1289
|
if (root.copyFrom && name) {
|
|
1290
1290
|
templateData.radio.setItems([
|
|
1291
1291
|
{
|
|
1292
1292
|
text: name,
|
|
1293
|
-
tooltip: name ? ( localize(
|
|
1293
|
+
tooltip: name ? ( localize(10966, "Copy {0} from the {1} profile", resourceTypeTitle, name)) : ( localize(10967, "Copy")),
|
|
1294
1294
|
},
|
|
1295
1295
|
...options
|
|
1296
1296
|
]);
|
|
@@ -1404,7 +1404,7 @@ let UserDataProfilesEditorInput = class UserDataProfilesEditorInput extends Edit
|
|
|
1404
1404
|
this._register(this.model.onDidChange(e => this.dirty = ( (this.model.profiles.some(profile => profile instanceof NewProfileElement)))));
|
|
1405
1405
|
}
|
|
1406
1406
|
get typeId() { return UserDataProfilesEditorInput_1.ID; }
|
|
1407
|
-
getName() { return ( localize(
|
|
1407
|
+
getName() { return ( localize(10968, "Profiles")); }
|
|
1408
1408
|
getIcon() { return defaultUserDataProfileIcon; }
|
|
1409
1409
|
async resolve() {
|
|
1410
1410
|
await this.model.resolve();
|
package/vscode/src/vs/workbench/contrib/userDataProfile/browser/userDataProfilesEditorModel.js
CHANGED
|
@@ -677,15 +677,15 @@ let UserDataProfilesEditorModel = class UserDataProfilesEditorModel extends Edit
|
|
|
677
677
|
const cancellationTokenSource = ( (new CancellationTokenSource()));
|
|
678
678
|
disposables.add(toDisposable(() => cancellationTokenSource.dispose(true)));
|
|
679
679
|
const createAction = disposables.add(( (new Action('userDataProfile.create', ( localize(11422, "Create")), undefined, true, () => this.saveNewProfile(false, cancellationTokenSource.token)))));
|
|
680
|
-
const cancelAction = disposables.add(( (new Action('userDataProfile.cancel', ( localize(
|
|
680
|
+
const cancelAction = disposables.add(( (new Action('userDataProfile.cancel', ( localize(11421, "Cancel")), ThemeIcon.asClassName(Codicon.trash), true, () => this.discardNewProfile()))));
|
|
681
681
|
const previewProfileAction = disposables.add(( (new Action('userDataProfile.preview', ( localize(11423, "Preview")), ThemeIcon.asClassName(Codicon.openPreview), true, () => this.previewNewProfile(cancellationTokenSource.token)))));
|
|
682
|
-
this.newProfileElement = disposables.add(this.instantiationService.createInstance(NewProfileElement, copyFrom ? '' : ( localize(
|
|
682
|
+
this.newProfileElement = disposables.add(this.instantiationService.createInstance(NewProfileElement, copyFrom ? '' : ( localize(11412, "Untitled")), copyFrom, [[createAction], [cancelAction, previewProfileAction]], [[cancelAction], []]));
|
|
683
683
|
const updateCreateActionLabel = () => {
|
|
684
684
|
if (this.newProfileElement?.copyFrom && ( (this.userDataProfilesService.profiles.some(p => p.name === this.newProfileElement?.name)))) {
|
|
685
685
|
createAction.label = ( localize(11424, "Replace"));
|
|
686
686
|
}
|
|
687
687
|
else {
|
|
688
|
-
createAction.label = ( localize(
|
|
688
|
+
createAction.label = ( localize(11422, "Create"));
|
|
689
689
|
}
|
|
690
690
|
};
|
|
691
691
|
updateCreateActionLabel();
|
|
@@ -824,8 +824,8 @@ let UserDataProfilesEditorModel = class UserDataProfilesEditorModel extends Edit
|
|
|
824
824
|
const result = await this.dialogService.confirm({
|
|
825
825
|
type: 'info',
|
|
826
826
|
message: ( localize(11425, "Are you sure you want to delete the profile '{0}'?", profile.name)),
|
|
827
|
-
primaryButton: ( localize(
|
|
828
|
-
cancelButton: ( localize(
|
|
827
|
+
primaryButton: ( localize(11416, "Delete")),
|
|
828
|
+
cancelButton: ( localize(11421, "Cancel"))
|
|
829
829
|
});
|
|
830
830
|
if (result.confirmed) {
|
|
831
831
|
await this.userDataProfileManagementService.removeProfile(profile);
|
|
@@ -170,7 +170,7 @@ let ExtensionsResource = class ExtensionsResource {
|
|
|
170
170
|
return;
|
|
171
171
|
}
|
|
172
172
|
progress?.(( localize(
|
|
173
|
-
|
|
173
|
+
8800,
|
|
174
174
|
"Installing extension {0}...",
|
|
175
175
|
installExtensionInfo.extension.displayName ?? installExtensionInfo.extension.identifier.id
|
|
176
176
|
)));
|
|
@@ -262,7 +262,7 @@ class ExtensionsResourceTreeItem {
|
|
|
262
262
|
constructor() {
|
|
263
263
|
this.type = ProfileResourceType.Extensions;
|
|
264
264
|
this.handle = ProfileResourceType.Extensions;
|
|
265
|
-
this.label = { label: ( localize(
|
|
265
|
+
this.label = { label: ( localize(8801, "Extensions")) };
|
|
266
266
|
this.collapsibleState = TreeItemCollapsibleState.Expanded;
|
|
267
267
|
this.contextValue = ProfileResourceType.Extensions;
|
|
268
268
|
this.excludedExtensions = ( (new Set()));
|
|
@@ -275,7 +275,7 @@ class ExtensionsResourceTreeItem {
|
|
|
275
275
|
handle: e.identifier.id.toLowerCase(),
|
|
276
276
|
parent: this,
|
|
277
277
|
label: { label: e.displayName || e.identifier.id },
|
|
278
|
-
description: e.disabled ? ( localize(
|
|
278
|
+
description: e.disabled ? ( localize(8802, "Disabled")) : undefined,
|
|
279
279
|
collapsibleState: TreeItemCollapsibleState.None,
|
|
280
280
|
checkbox: that.checkbox ? {
|
|
281
281
|
get isChecked() { return !( (that.excludedExtensions.has(e.identifier.id.toLowerCase()))); },
|
|
@@ -287,9 +287,9 @@ class ExtensionsResourceTreeItem {
|
|
|
287
287
|
that.excludedExtensions.add(e.identifier.id.toLowerCase());
|
|
288
288
|
}
|
|
289
289
|
},
|
|
290
|
-
tooltip: ( localize(
|
|
290
|
+
tooltip: ( localize(8803, "Select {0} Extension", e.displayName || e.identifier.id)),
|
|
291
291
|
accessibilityInformation: {
|
|
292
|
-
label: ( localize(
|
|
292
|
+
label: ( localize(8803, "Select {0} Extension", e.displayName || e.identifier.id)),
|
|
293
293
|
}
|
|
294
294
|
} : undefined,
|
|
295
295
|
themeIcon: Codicon.extensions,
|
|
@@ -85,7 +85,7 @@ class GlobalStateResourceTreeItem {
|
|
|
85
85
|
this.uriIdentityService = uriIdentityService;
|
|
86
86
|
this.type = ProfileResourceType.GlobalState;
|
|
87
87
|
this.handle = ProfileResourceType.GlobalState;
|
|
88
|
-
this.label = { label: ( localize(
|
|
88
|
+
this.label = { label: ( localize(8795, "UI State")) };
|
|
89
89
|
this.collapsibleState = TreeItemCollapsibleState.Collapsed;
|
|
90
90
|
}
|
|
91
91
|
async getChildren() {
|
|
@@ -81,7 +81,7 @@ let KeybindingsResourceTreeItem = class KeybindingsResourceTreeItem {
|
|
|
81
81
|
this.instantiationService = instantiationService;
|
|
82
82
|
this.type = ProfileResourceType.Keybindings;
|
|
83
83
|
this.handle = ProfileResourceType.Keybindings;
|
|
84
|
-
this.label = { label: ( localize(
|
|
84
|
+
this.label = { label: ( localize(8796, "Keyboard Shortcuts")) };
|
|
85
85
|
this.collapsibleState = TreeItemCollapsibleState.Expanded;
|
|
86
86
|
}
|
|
87
87
|
isFromDefaultProfile() {
|
|
@@ -102,7 +102,7 @@ let SettingsResourceTreeItem = class SettingsResourceTreeItem {
|
|
|
102
102
|
this.instantiationService = instantiationService;
|
|
103
103
|
this.type = ProfileResourceType.Settings;
|
|
104
104
|
this.handle = ProfileResourceType.Settings;
|
|
105
|
-
this.label = { label: ( localize(
|
|
105
|
+
this.label = { label: ( localize(8794, "Settings")) };
|
|
106
106
|
this.collapsibleState = TreeItemCollapsibleState.Expanded;
|
|
107
107
|
}
|
|
108
108
|
async getChildren() {
|
|
@@ -93,7 +93,7 @@ let SnippetsResourceTreeItem = class SnippetsResourceTreeItem {
|
|
|
93
93
|
this.uriIdentityService = uriIdentityService;
|
|
94
94
|
this.type = ProfileResourceType.Snippets;
|
|
95
95
|
this.handle = ( (this.profile.snippetsHome.toString()));
|
|
96
|
-
this.label = { label: ( localize(
|
|
96
|
+
this.label = { label: ( localize(8798, "Snippets")) };
|
|
97
97
|
this.collapsibleState = TreeItemCollapsibleState.Collapsed;
|
|
98
98
|
this.excludedSnippets = ( (new ResourceSet()));
|
|
99
99
|
}
|
|
@@ -121,7 +121,7 @@ let SnippetsResourceTreeItem = class SnippetsResourceTreeItem {
|
|
|
121
121
|
},
|
|
122
122
|
accessibilityInformation: {
|
|
123
123
|
label: ( localize(
|
|
124
|
-
|
|
124
|
+
8799,
|
|
125
125
|
"Select Snippet {0}",
|
|
126
126
|
this.uriIdentityService.extUri.basename(resource)
|
|
127
127
|
)),
|
|
@@ -80,7 +80,7 @@ let TasksResourceTreeItem = class TasksResourceTreeItem {
|
|
|
80
80
|
this.instantiationService = instantiationService;
|
|
81
81
|
this.type = ProfileResourceType.Tasks;
|
|
82
82
|
this.handle = ProfileResourceType.Tasks;
|
|
83
|
-
this.label = { label: ( localize(
|
|
83
|
+
this.label = { label: ( localize(8797, "Tasks")) };
|
|
84
84
|
this.collapsibleState = TreeItemCollapsibleState.Expanded;
|
|
85
85
|
}
|
|
86
86
|
async getChildren() {
|