in src/yo/index.ts [111:145]
function list(yo: Yeoman): Promise<QuickPickItem[]> {
return new Promise((resolve, reject) => {
setImmediate(() => {
yo.getEnvironment().lookup(() => {
const generators = yo.getGenerators().map(generator => {
return {
label: generator.name.replace(/(^|\/)generator\-/i, '$1') as string,
description: generator.description,
subGenerators: generator.subGenerators
};
});
if (generators.length === 0) {
reject();
window.showInformationMessage('Make sure to install some generators first.', 'more info')
.then(choice => {
if (choice === 'more info') {
opn('http://yeoman.io/learning/');
}
});
return;
}
const azureGenerators = generators.filter(generator => {
return generator.label === 'azuresfcsharp'
|| generator.label === 'azuresfjava'
|| generator.label === 'azuresfcontainer'
|| generator.label === 'azuresfguest'
})
resolve(azureGenerators);
});
});
});
}