Skip to content

Commit

Permalink
Merge pull request #210 from cloudinary/fix-plugins
Browse files Browse the repository at this point in the history
fix: return last plugin response
  • Loading branch information
lbendavid-cloudinary authored Mar 20, 2023
2 parents b180bff + 1f725b8 commit f1ee369
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions packages/html/src/utils/render.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import {Plugins, HtmlPluginState, BaseAnalyticsOptions} from '../types'
import {Plugins, HtmlPluginState, BaseAnalyticsOptions, PluginResponse} from '../types'
import {CloudinaryVideo, CloudinaryImage} from "@cloudinary/url-gen";

/**
Expand All @@ -11,13 +11,15 @@ import {CloudinaryVideo, CloudinaryImage} from "@cloudinary/url-gen";
* @param analyticsOptions {BaseAnalyticsOptions} analytics options for the url to be created
*/
export async function render(element: HTMLImageElement | HTMLVideoElement, pluginCloudinaryAsset: CloudinaryImage | CloudinaryVideo, plugins: Plugins, pluginState: HtmlPluginState, analyticsOptions?: BaseAnalyticsOptions) {
if(plugins === undefined) return;
for(let i = 0; i < plugins.length; i++){
const response = await plugins[i](element, pluginCloudinaryAsset, pluginState, analyticsOptions);
if(response === 'canceled'){
if (plugins === undefined) return;
let response: PluginResponse;
for (let i = 0; i < plugins.length; i++) {
response = await plugins[i](element, pluginCloudinaryAsset, pluginState, analyticsOptions);
if (response === 'canceled') {
break;
} else {
return response
}
}
if (response !== 'canceled') {
return response;
}
}

0 comments on commit f1ee369

Please sign in to comment.