welcome-ui
Version:
Customizable design system with react • styled-components • styled-system and ariakit.
131 lines (130 loc) • 3.6 kB
JavaScript
"use client";
import "./jsx-runtime-Bqq1Hxg9.mjs";
import "./Icon.mjs";
import { A as e, C as o, M as t, V as n, a as m, D as c, X as s, P as r, b as d, c as l, d as g, Z as u } from "./index-DKL-SItG.mjs";
import { f } from "./format-bytes-gST0dTWd.mjs";
const x = {
"7z": "application/x-7z-compressed",
aac: "audio/aac",
aif: "audio/x-aiff",
aifc: "audio/x-aiff",
aiff: "audio/x-aiff",
au: "audio/basic",
avi: "video/x-msvideo",
bmp: "image/x-ms-bmp",
bz: "application/x-bzip",
bz2: "application/x-bzip2",
csv: "text/csv",
doc: "application/msword",
docx: "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
gif: "image/gif",
gz: "application/gzip",
ico: "image/x-icon",
jpe: "image/jpeg",
jpeg: "image/jpeg",
jpg: "image/jpeg",
m1v: "video/mpeg",
mid: "audio/midi",
midi: "audio/x-midi",
mov: "video/quicktime",
movie: "video/x-sgi-movie",
mp2: "audio/mpeg",
mp3: "audio/mpeg",
mp4: "video/mp4",
mpa: "video/mpeg",
mpe: "video/mpeg",
mpeg: "video/mpeg",
mpg: "video/mpeg",
pbm: "image/x-portable-bitmap",
pdf: "application/pdf",
pgm: "image/x-portable-graymap",
png: "image/png",
pnm: "image/x-portable-anymap",
pot: "application/vnd.ms-powerpoint",
ppa: "application/vnd.ms-powerpoint",
ppm: "image/x-portable-pixmap",
pps: "application/vnd.ms-powerpoint",
ppt: "application/vnd.ms-powerpoint",
pptx: "application/vnd.openxmlformats-officedocument.presentationml.presentation",
ps: "application/postscript",
pwz: "application/vnd.ms-powerpoint",
qt: "video/quicktime",
ra: "audio/x-pn-realaudio",
rar: "application/vnd.rar",
ras: "image/x-cmu-raster",
rgb: "image/x-rgb",
snd: "audio/basic",
svg: "image/svg+xml",
tif: "image/tiff",
tiff: "image/tiff",
wav: "audio/x-wav",
weba: "audio/webm",
webm: "video/webm",
webp: "image/webp",
wiz: "application/msword",
xbm: "image/x-xbitmap",
xls: "application/vnd.ms-excel",
xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
xpm: "image/x-xpixmap",
xwd: "image/x-xwindowdump",
zip: "application/zip"
};
function j(i, p) {
const a = b(i);
if (!p && !a)
return e;
if (p === "image" || a && a.startsWith("image/"))
return o;
if (p === "audio" || a && a.startsWith("audio/"))
return t;
if (p === "video" || a && a.startsWith("video/"))
return n;
switch (a) {
case "application/gzip":
case "application/vnd.rar":
case "application/x-7z-compressed":
case "application/x-bzip":
case "application/x-bzip2":
case "application/zip":
return u;
case "application/msword":
return g;
case "application/pdf":
return l;
case "application/vnd.ms-excel":
return d;
case "application/vnd.ms-powerpoint":
case "application/vnd.openxmlformats-officedocument.presentationml.presentation":
return r;
case "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":
return s;
case "application/vnd.openxmlformats-officedocument.wordprocessingml.document":
return c;
case "text/csv":
return m;
default:
return e;
}
}
function v(i) {
return typeof i == "string" ? w(i).split("/").pop() : i.name;
}
function q(i) {
return i instanceof File && i.size ? f(i.size, 0) : null;
}
function b(i) {
if (typeof i == "string") {
const p = v(i).split(".").pop();
return x[p] || null;
} else
return i.type;
}
function w(i) {
return i.split("?")[0];
}
export {
j as getFileIcon,
v as getFileName,
q as getFileSize,
b as getMimeType
};