@zohodesk/dot
Version:
In this Library, we Provide Some Basic Components to Build Your Application
136 lines (105 loc) • 3.57 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getAttachmentIconDetails = getAttachmentIconDetails;
exports.getExtensionFromFileName = getExtensionFromFileName;
exports.isAudioFile = isAudioFile;
exports.isBrowserSupportedFile = isBrowserSupportedFile;
var _General = require("../utils/General");
var _utils = require("./utils");
// const UNASSIGNED = 'Unassigned';
var BROWSER_SUPPORTED_FILES = ['pdf', 'text', 'txt', 'css', 'jpg', 'jpeg', 'gif', 'png', 'bmp', 'ico', 'sh', 'mp3', 'wav', 'ogg'];
function isAudioFile(fileName) {
var extension = getExtensionFromFileName(fileName);
return /mp3|wav|ogg/i.test(extension);
}
function getExtensionFromFileName(fileName) {
if (fileName && fileName.indexOf(".") !== -1) {
return fileName.substring(fileName.lastIndexOf(".") + 1, fileName.length).toLowerCase();
}
return "";
}
function isBrowserSupportedFile(fileName) {
var extension = getExtensionFromFileName(fileName);
return BROWSER_SUPPORTED_FILES.indexOf(extension) !== -1;
}
function getAttachmentIconDetails(fileName) {
var extension = (getExtensionFromFileName(fileName) || '').toLowerCase();
if (!extension) {
return 'ZD-GN-fileUnknown';
}
var image = _utils.SUPPORTED_FILE_EXTENSIONS.image,
doc = _utils.SUPPORTED_FILE_EXTENSIONS.doc,
pdf = _utils.SUPPORTED_FILE_EXTENSIONS.pdf,
html = _utils.SUPPORTED_FILE_EXTENSIONS.html,
ppt = _utils.SUPPORTED_FILE_EXTENSIONS.ppt,
zip = _utils.SUPPORTED_FILE_EXTENSIONS.zip,
word = _utils.SUPPORTED_FILE_EXTENSIONS.word,
xml = _utils.SUPPORTED_FILE_EXTENSIONS.xml,
sheet = _utils.SUPPORTED_FILE_EXTENSIONS.sheet,
audio = _utils.SUPPORTED_FILE_EXTENSIONS.audio,
video = _utils.SUPPORTED_FILE_EXTENSIONS.video,
mail = _utils.SUPPORTED_FILE_EXTENSIONS.mail,
linux = _utils.SUPPORTED_FILE_EXTENSIONS.linux,
css = _utils.SUPPORTED_FILE_EXTENSIONS.css,
exe = _utils.SUPPORTED_FILE_EXTENSIONS.exe,
event = _utils.SUPPORTED_FILE_EXTENSIONS.event;
if (image.includes(extension)) {
return 'ZD-EF-fileImage';
}
if (doc.includes(extension)) {
return 'ZD-GN-fileDoc';
}
if (pdf.includes(extension)) {
return 'ZD-EF-filePdf';
}
if (ppt.includes(extension)) {
return 'ZD-GN-filePpt';
}
if (zip.includes(extension)) {
return 'ZD-EF-fileZip';
}
if (word.includes(extension)) {
var OSName = (navigator.platform || '').toLowerCase();
return OSName.includes('mac') || OSName.includes('linux') ? 'ZD-EF-fileOffice' : 'ZD-EF-fileWord';
}
if (xml.includes(extension)) {
return 'ZD-EF-fileXml';
}
if (sheet.includes(extension)) {
return 'ZD-GN-fileSheet';
}
if (audio.includes(extension)) {
return 'ZD-EF-fileMp3';
}
if (video.includes(extension)) {
return 'ZD-EF-fileMp4';
}
if (mail.includes(extension)) {
return 'ZD-GN-fileMail';
}
if (linux.includes(extension)) {
return 'ZD-EF-linux';
}
if (css.includes(extension)) {
return 'ZD-EF-clrCss';
}
if (exe.includes(extension)) {
return 'ZD-EF-exe';
}
if (event.includes(extension)) {
return 'ZD-TK-event';
}
if (html.includes(extension)) {
var browser = ((0, _General.getBrowserWithVersion)() || '').toLowerCase();
if (browser.includes('chrome') || browser.includes('safari')) {
return 'ZD-EF-fileXml';
}
if (browser.includes('ie') || browser.includes('edge')) {
return 'ZD-EF-explorer';
}
return 'ZD-EF-firebox';
}
return 'ZD-GN-fileUnknown';
}