comindware.core.ui
Version:
Comindware Core UI provides the basic components like editors, lists, dropdowns, popups that we so desperately need while creating Marionette-based single-page applications.
25 lines (20 loc) • 741 B
JavaScript
import { documentRevisionStatuses, fileIconClasses } from '../meta';
export default {
getIconForDocument({ isLoading, name, extension, type, status } = {}) {
if (status === documentRevisionStatuses.REJECTED) {
return 'exclamation-circle';
}
if (status === documentRevisionStatuses.PROCESSING) {
return 'history';
}
if (isLoading) {
return 'spinner pulse';
}
const ext = extension || type || name?.replace(/.*\./g, '');
let icon;
if (ext) {
icon = Object.keys(fileIconClasses).find(key => fileIconClasses[key].includes(ext.toLowerCase()));
}
return icon || 'file';
}
};