super(actionRunner,false,nls.localize('treeExplorerViewlet.tree',"Tree Explorer Section"),messageService,keybindingService,contextMenuService,headerSize);
collector.error(localize('requirearray',"views must be an array"));
returnfalse;
}
for(letdescriptorofviewDescriptors){
if(typeofdescriptor.id!=='string'){
collector.error(localize('requirestring',"property `{0}` is mandatory and must be of type `string`",'id'));
returnfalse;
}
if(typeofdescriptor.name!=='string'){
collector.error(localize('requirestring',"property `{0}` is mandatory and must be of type `string`",'label'));
returnfalse;
}
}
returntrue;
}
constviewDescriptor:IJSONSchema={
type:'object',
properties:{
id:{
description:localize('vscode.extension.contributes.view.id','Identifier of the view. Use the same identifier to register a data provider through API.'),
type:'string'
},
name:{
description:localize('vscode.extension.contributes.view.name','The human-readable name of the view. Will be shown'),
type:'string'
}
}
};
exportconstviewsContribution:IJSONSchema={
description:localize('vscode.extension.contributes.views',"Contributes views to the editor"),