src/vs/workbench/services/userDataProfile/browser/userDataProfileImportExportService.ts/UserDataProfileImportExportService/selectProfileResources
class UserDataProfileImportExportService:	private async selectProfileResources(profileImportExportState: UserDataProfileImportExportState, title: string, description: string): Promise<boolean | undefined> {
		type ProfileResourceQuickItem = { item: IProfileResourceTreeItem; label: string };
		const disposables: DisposableStore = new DisposableStore();
		const quickPick = this.quickInputService.createQuickPick<ProfileResourceQuickItem>();
		disposables.add(quickPick);
		quickPick.title = title;
		quickPick.ok = 'default';
		quickPick.customButton = true;
		quickPick.customLabel = localize('show contents', "Show Contents");
		quickPick.description = description;
		quickPick.canSelectMany = true;
		quickPick.ignoreFocusOut = true;
		quickPick.hideInput = true;
		quickPick.hideCheckAll = true;
		quickPick.busy = true;

		let accepted: boolean = false;
		let preview: boolean = false;
		disposables.add(quickPick.onDidAccept(() => {
			accepted = true;
			quickPick.hide();
		}));
		disposables.add(quickPick.onDidCustom(() => {
			preview = true;
			quickPick.hide();
		}));

		const promise = new Promise<boolean | undefined>((c, e) => {
			disposables.add(quickPick.onDidHide(() => {
				try {
					if (accepted || preview) {
						for (const root of roots) {
							root.checkbox.isChecked = quickPick.selectedItems.some(({ item }) => item === root);
						}
						c(accepted);
					} else {
						c(undefined);
					}
				} catch (error) {
					e(error);
				} finally {
					disposables.dispose();
				}
			}));
		});
		quickPick.show();

		const roots = await profileImportExportState.getRoots();
		quickPick.busy = false;

		const items = roots.map<ProfileResourceQuickItem>(item => ({ item, label: item.label?.label ?? item.type }));
		quickPick.items = items;
		quickPick.selectedItems = items.filter(({ item }) => item.checkbox?.isChecked);

		return promise;
	}