ML - New UI component for icon, title and description of an item (#13109)

* initial checkin

* addressed PR comment
This commit is contained in:
Leila Lali
2020-10-28 11:57:07 -07:00
committed by GitHub
parent 86357b45b0
commit 429d8fe584
9 changed files with 313 additions and 98 deletions

View File

@@ -39,6 +39,18 @@ export class AzureModelsTable extends ModelViewBase implements IDataComponent<Wo
.withProperties<azdata.DeclarativeTableProperties>(
{
columns: [
{ // Action
displayName: '',
valueType: azdata.DeclarativeDataType.component,
isReadOnly: true,
width: 50,
headerCssStyles: {
...constants.cssStyles.tableHeader
},
rowCssStyles: {
...constants.cssStyles.tableRow
},
},
{ // Name
displayName: constants.modelName,
ariaLabel: constants.modelName,
@@ -90,18 +102,6 @@ export class AzureModelsTable extends ModelViewBase implements IDataComponent<Wo
rowCssStyles: {
...constants.cssStyles.tableRow
},
},
{ // Action
displayName: '',
valueType: azdata.DeclarativeDataType.component,
isReadOnly: true,
width: 50,
headerCssStyles: {
...constants.cssStyles.tableHeader
},
rowCssStyles: {
...constants.cssStyles.tableRow
},
}
],
data: [],
@@ -121,19 +121,31 @@ export class AzureModelsTable extends ModelViewBase implements IDataComponent<Wo
*/
public async loadData(workspaceResource?: AzureWorkspaceResource | undefined): Promise<void> {
if (this._table && workspaceResource) {
this._models = await this.listAzureModels(workspaceResource);
let tableData: any[][] = [];
if (this._table) {
if (workspaceResource) {
this._models = await this.listAzureModels(workspaceResource);
let tableData: any[][] = [];
if (this._models) {
tableData = tableData.concat(this._models.map(model => this.createTableRow(model)));
if (this._models) {
tableData = tableData.concat(this._models.map(model => this.createTableRow(model)));
}
if (this.isTableEmpty) {
this._table.dataValues = [];
} else {
this._table.data = tableData;
}
} else {
this._table.dataValues = [];
}
this._table.data = tableData;
}
this._onModelSelectionChanged.fire();
}
public get isTableEmpty(): boolean {
return !this._models || this._models.length === 0;
}
private createTableRow(model: WorkspaceModel): any[] {
if (this._modelBuilder) {
let selectModelButton: azdata.Component;
@@ -172,7 +184,7 @@ export class AzureModelsTable extends ModelViewBase implements IDataComponent<Wo
selectModelButton = radioButton;
}
return [model.name, model.createdTime, model.framework, model.frameworkVersion, selectModelButton];
return [selectModelButton, model.name, model.createdTime, model.framework, model.frameworkVersion];
}
return [];