Table Designer - Save Changes feature and Editor related features (#17335)

* table designer add/remove row support

* save changes and editor support

* address comments

* fix build error

* including missing change

* lower case request name
This commit is contained in:
Alan Ren
2021-10-11 15:09:25 -07:00
committed by GitHub
parent e5f50499ce
commit ce4459a7b2
23 changed files with 495 additions and 90 deletions

View File

@@ -1108,7 +1108,7 @@ export class TableDesignerFeature extends SqlOpsFeature<undefined> {
protected registerProvider(options: undefined): Disposable {
const client = this._client;
const getTableDesignerInfo = async (tableInfo: azdata.designers.TableInfo): Promise<azdata.designers.TableDesignerInfo> => {
const getTableDesignerInfo = (tableInfo: azdata.designers.TableInfo): Thenable<azdata.designers.TableDesignerInfo> => {
try {
return client.sendRequest(contracts.GetTableDesignerInfoRequest.type, tableInfo);
}
@@ -1117,7 +1117,7 @@ export class TableDesignerFeature extends SqlOpsFeature<undefined> {
return Promise.reject(e);
}
};
const processTableEdit = async (tableInfo: azdata.designers.TableInfo, data: azdata.designers.DesignerData, tableChangeInfo: azdata.designers.DesignerEdit): Promise<azdata.designers.DesignerEditResult> => {
const processTableEdit = (tableInfo: azdata.designers.TableInfo, data: azdata.designers.DesignerData, tableChangeInfo: azdata.designers.DesignerEdit): Thenable<azdata.designers.DesignerEditResult> => {
let params: contracts.TableDesignerEditRequestParams = {
tableInfo: tableInfo,
data: data,
@@ -1132,10 +1132,25 @@ export class TableDesignerFeature extends SqlOpsFeature<undefined> {
}
};
const saveTable = (tableInfo: azdata.designers.TableInfo, data: azdata.designers.DesignerData): Thenable<void> => {
let params: contracts.SaveTableDesignerChangesRequestParams = {
tableInfo: tableInfo,
data: data
};
try {
return client.sendRequest(contracts.SaveTableDesignerChangesRequest.type, params);
}
catch (e) {
client.logFailedRequest(contracts.SaveTableDesignerChangesRequest.type, e);
return Promise.reject(e);
}
};
return azdata.dataprotocol.registerTableDesignerProvider({
providerId: client.providerId,
getTableDesignerInfo,
processTableEdit
processTableEdit,
saveTable
});
}
}