Skip to content

Commit 598661c

Browse files
add base and folder structure api
1 parent 655753d commit 598661c

File tree

1 file changed

+70
-2
lines changed

1 file changed

+70
-2
lines changed

src/dtable-web-api.js

Lines changed: 70 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,73 @@ class DTableWebAPI {
195195
return this.req.delete(url);
196196
}
197197

198+
// folder structure api
199+
listFolderStructure(workspaceID, path) {
200+
const url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/folders/?path=' + path;
201+
return this.req.get(url);
202+
}
203+
204+
createFolderStructure(workspaceID, parentFolderPath, newFolderName) {
205+
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/folders/';
206+
let form = new FormData();
207+
form.append('dst_parent_folder', parentFolderPath);
208+
form.append('new_folder_name', newFolderName);
209+
return this._sendPostRequest(url, form);
210+
}
211+
212+
renameFolderStructure(workspaceID, folderName, newFolderName, parentFolderPath) {
213+
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/folders/';
214+
let form = new FormData();
215+
form.append('folder_name', folderName);
216+
form.append('new_folder_name', newFolderName);
217+
form.append('src_parent_folder', parentFolderPath);
218+
return this.req.put(url, form);
219+
}
220+
221+
moveFolderStructure(workspaceID, folderName, srcParentFolder, dstParentFolder) {
222+
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/folders/';
223+
let form = new FormData();
224+
form.append('folder_name', folderName);
225+
form.append('src_parent_folder', srcParentFolder);
226+
form.append('dst_parent_folder', dstParentFolder);
227+
return this.req.put(url, form);
228+
}
229+
230+
deleteFolderStructure(workspaceID, folderName, parentFolderPath) {
231+
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/folders/';
232+
let params = {
233+
folder_name: folderName,
234+
src_parent_folder: parentFolderPath,
235+
};
236+
return this.req.delete(url, {data: params});
237+
}
238+
239+
// base structure api
240+
createBaseStructure(workspaceID, baseName, parentFolderName) {
241+
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/bases/';
242+
let form = new FormData();
243+
form.append('base_name', baseName);
244+
form.append('dst_parent_folder', parentFolderName);
245+
return this._sendPostRequest(url, form);
246+
}
247+
248+
moveBaseStructure(workspaceID, baseName, srcParentFolder, dstParentFolder) {
249+
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/bases/';
250+
let form = new FormData();
251+
form.append('base_name', baseName);
252+
form.append('src_parent_folder', srcParentFolder);
253+
form.append('dst_parent_folder', dstParentFolder);
254+
return this.req.put(url, form);
255+
}
256+
257+
deleteBaseStructure(workspaceID, baseName, srcParentFolder) {
258+
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/structure/bases/';
259+
let form = new FormData();
260+
form.append('base_name', baseName);
261+
form.append('src_parent_folder', srcParentFolder);
262+
return this.req.delete(url, form);
263+
}
264+
198265
// ---- dTable api
199266
createTable(name, owner, dtableIcon, dtableColor, textColor, folderID) {
200267
const url = this.server + '/api/v2.1/dtables/';
@@ -955,9 +1022,10 @@ class DTableWebAPI {
9551022
return this.req.put(url, form);
9561023
}
9571024

958-
deleteFolder(workspaceID, folderID) {
1025+
deleteFolder(workspaceID, folderID, srcParentFolder) {
9591026
let url = this.server + '/api/v2.1/workspace/' + workspaceID + '/folders/' + folderID +'/';
960-
return this.req.delete(url);
1027+
let params = {src_parent_folder: srcParentFolder};
1028+
return this.req.delete(url, {data: params});
9611029
}
9621030

9631031
moveFolderItem(workspaceID, itemType, itemID, moveFrom, moveTo) {

0 commit comments

Comments
 (0)