@uploadcare/file-uploader
Version:
Building blocks for Uploadcare products integration
22 lines (20 loc) • 583 B
JavaScript
/** @param {Object<string, any>} blockExports */
export function defineComponents(blockExports) {
for (let blockName in blockExports) {
let tagName = [...blockName].reduce((name, char) => {
if (char.toUpperCase() === char) {
char = '-' + char.toLowerCase();
}
return (name += char);
}, '');
if (tagName.startsWith('-')) {
tagName = tagName.replace('-', '');
}
if (!tagName.startsWith('uc-')) {
tagName = 'uc-' + tagName;
}
if (blockExports[blockName].reg) {
blockExports[blockName].reg(tagName);
}
}
}