add ability to await async callback functions

selection_metadata
Abdullah Alfaraj 2023-02-22 16:36:44 +03:00
parent cba77e73e1
commit 2f28af29dd
1 changed files with 23 additions and 10 deletions

View File

@ -1,25 +1,38 @@
class Thumbnail {
static wrapImgInContainer(img, container_style_class) {
const container = document.createElement('div');
container.className = container_style_class;
container.appendChild(img);
return container;
const container = document.createElement('div')
container.className = container_style_class
container.appendChild(img)
return container
}
static addSPButtonToContainer(container, button_id, title, callbackFunction, param1) {
const elem = document.getElementById(button_id);
const clone = elem.cloneNode(true);
static addSPButtonToContainer(
container,
button_id,
title,
callbackFunction,
param1
) {
const elem = document.getElementById(button_id)
const clone = elem.cloneNode(true)
const button = clone
button.style.display = null
button.removeAttribute('id')
button.setAttribute('title', title)
// Create button element
button.className = "thumbnail-image-button";
button.addEventListener('click', () => callbackFunction(param1))
button.className = 'thumbnail-image-button'
if (callbackFunction.constructor.name === 'AsyncFunction') {
button.addEventListener(
'click',
async () => await callbackFunction(param1)
)
} else {
button.addEventListener('click', () => callbackFunction(param1))
}
container.appendChild(button)
}
}
module.exports = {