DataSourcePlugin: Avoid anuglar injector if only one parameter (#17239)

pull/17255/head
Ryan McKinley 6 years ago committed by Torkel Ödegaard
parent ca6151e23f
commit 9e7fa74682
  1. 10
      public/app/features/plugins/datasource_srv.ts

@ -61,9 +61,13 @@ export class DatasourceSrv {
return;
}
const instance: DataSourceApi = this.$injector.instantiate(dsPlugin.DataSourceClass, {
instanceSettings: dsConfig,
});
// If there is only one constructor argument it is instanceSettings
const useAngular = dsPlugin.DataSourceClass.length !== 1;
const instance: DataSourceApi = useAngular
? this.$injector.instantiate(dsPlugin.DataSourceClass, {
instanceSettings: dsConfig,
})
: new dsPlugin.DataSourceClass(dsConfig);
instance.components = dsPlugin.components;
instance.meta = dsConfig.meta;

Loading…
Cancel
Save