UNPKG

@progress/sitefinity-nextjs-sdk

Version:

Provides OOB widgets developed using the Next.js framework, which includes an abstraction layer for Sitefinity communication. Additionally, it offers an expanded API, typings, and tools for further development and integration.

50 lines (49 loc) 1.32 kB
export const getFileSize = (item) => { const size = item['TotalSize']; if (size < 1024) { return `${size} B`; } const sizeKB = Math.ceil(size / 1024); return `${sizeKB} KB`; }; export const getExtension = (item) => { const extension = item['Extension']; if (extension) { return extension.replace('.', ''); } return extension; }; export const getFileExtensionCssClass = (extension) => { let color; switch (extension) { case 'xlsx': case 'xls': color = '--bs-green'; break; case 'doc': case 'docx': color = '--bs-blue'; break; case 'ppt': case 'pptx': color = '--bs-orange'; break; case 'pdf': color = '--bs-red'; break; case 'zip': case 'rar': color = '--bs-purple'; break; default: color = '--bs-gray'; break; } return color; }; export const splitAt = (index, xs) => [xs.slice(0, index), xs.slice(index)]; export const getPageQueryString = (page) => { const indexOf = page.ViewUrl.indexOf(page.RelativeUrlPath); const dividedUrls = splitAt(indexOf + page.RelativeUrlPath.length, page.ViewUrl); return dividedUrls[1]; };