From cd544ca9603abc39f5a548e50d9f32ac78fcf302 Mon Sep 17 00:00:00 2001 From: RTLcoil Date: Tue, 2 Jun 2020 22:06:31 +0300 Subject: [PATCH] Support `max_results` and `next_cursor` in `root_folders` and `sub_folders` --- lib-es5/api.js | 12 ++++++++---- lib/api.js | 10 ++++++---- test/integration/api/admin/api_spec.js | 6 ++++++ 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/lib-es5/api.js b/lib-es5/api.js index 69f56781..c79ab00f 100644 --- a/lib-es5/api.js +++ b/lib-es5/api.js @@ -325,17 +325,21 @@ exports.create_upload_preset = function create_upload_preset(callback) { exports.root_folders = function root_folders(callback) { var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var uri = void 0; + var uri = void 0, + params = void 0; uri = ["folders"]; - return call_api("get", uri, {}, callback, options); + params = pickOnlyExistingValues(options, "next_cursor", "max_results"); + return call_api("get", uri, params, callback, options); }; exports.sub_folders = function sub_folders(path, callback) { var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; - var uri = void 0; + var uri = void 0, + params = void 0; uri = ["folders", path]; - return call_api("get", uri, {}, callback, options); + params = pickOnlyExistingValues(options, "next_cursor", "max_results"); + return call_api("get", uri, params, callback, options); }; /** diff --git a/lib/api.js b/lib/api.js index 754a249c..25ab4e12 100644 --- a/lib/api.js +++ b/lib/api.js @@ -237,15 +237,17 @@ exports.create_upload_preset = function create_upload_preset(callback, options = }; exports.root_folders = function root_folders(callback, options = {}) { - let uri; + let uri, params; uri = ["folders"]; - return call_api("get", uri, {}, callback, options); + params = pickOnlyExistingValues(options, "next_cursor", "max_results"); + return call_api("get", uri, params, callback, options); }; exports.sub_folders = function sub_folders(path, callback, options = {}) { - let uri; + let uri, params; uri = ["folders", path]; - return call_api("get", uri, {}, callback, options); + params = pickOnlyExistingValues(options, "next_cursor", "max_results"); + return call_api("get", uri, params, callback, options); }; /** diff --git a/test/integration/api/admin/api_spec.js b/test/integration/api/admin/api_spec.js index f7e67b52..926eb541 100644 --- a/test/integration/api/admin/api_spec.js +++ b/test/integration/api/admin/api_spec.js @@ -1007,6 +1007,12 @@ describe("api", function () { ).catch(({error}) => expect(error.message).to.contain("Can't find folder with path")); }); }); + describe("root_folders", function () { + itBehavesLike("a list with a cursor", cloudinary.v2.api.root_folders); + }) + describe("sub_folders", function () { + itBehavesLike("a list with a cursor", cloudinary.v2.api.sub_folders, '/'); + }); }); describe('.restore', function () { this.timeout(TIMEOUT.MEDIUM);