Skip to content

Commit f0a80eb

Browse files
committed
feat: ♻️ changes for plugin request function for users to access request params
1 parent 1091153 commit f0a80eb

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

index.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ export interface FetchOptions {
9797

9898
//Plugins
9999
export interface ContentstackPlugin {
100-
onRequest?(stack: Stack, request: ContentstackPlugin): void;
100+
onRequest?(stack: Stack, request: ContentstackPlugin): ContentstackPlugin;
101101
onResponse?(stack: Stack, request: ContentstackPlugin, response: any, data: any): any;
102102
}
103103

src/core/lib/request.js

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -96,14 +96,20 @@ function fetchRetry(stack, queryParams, fetchOptions, resolve, reject, retryDela
9696
if (fetchOptions.debug) fetchOptions.logHandler('info', { url: url, option: option});
9797

9898
var plugins = stack.plugins;
99-
if (plugins && plugins != undefined)
100-
plugins.forEach(pluginObj => {
101-
if (typeof pluginObj.onRequest == 'function') pluginObj.onRequest(stack, {url, option})
102-
});
99+
if (plugins && plugins != undefined) {
100+
101+
let request = {url, option};
102+
for (let index = 0; index < plugins.length; index++) {
103+
104+
if (typeof plugins[index].onRequest == 'function') {
105+
request = plugins[index].onRequest(stack, request)
106+
}
107+
}
108+
}
109+
103110

104111
fetch(url, option)
105-
.then( function(response) {
106-
112+
.then( function(response) {
107113

108114
if (fetchOptions.debug) fetchOptions.logHandler('info', response);
109115
let data = response.json();

0 commit comments

Comments
 (0)