@premieroctet/next-admin
Version:
Next-Admin provides a customizable and turnkey admin dashboard for applications built with Next.js and powered by the Prisma ORM. It aims to simplify the development process by providing a turnkey admin system that can be easily integrated into your proje
95 lines (94 loc) • 2.81 kB
JavaScript
;
var __webpack_require__ = {};
(()=>{
__webpack_require__.d = (exports1, definition)=>{
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
enumerable: true,
get: definition[key]
});
};
})();
(()=>{
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
})();
(()=>{
__webpack_require__.r = (exports1)=>{
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
value: 'Module'
});
Object.defineProperty(exports1, '__esModule', {
value: true
});
};
})();
var __webpack_exports__ = {};
__webpack_require__.r(__webpack_exports__);
__webpack_require__.d(__webpack_exports__, {
getFilenameAndExtensionFromUrl: ()=>getFilenameAndExtensionFromUrl,
getFilenameFromUrl: ()=>getFilenameFromUrl,
isBase64Url: ()=>isBase64Url,
isImageType: ()=>isImageType
});
const SUPPORTED_IMG_EXTENSIONS = [
"apng",
"avif",
"png",
"gif",
"jpg",
"jpeg",
"jfif",
"pjpeg",
"pjp",
"png",
"svg",
"webp",
"bmp",
"ico",
"cur",
"tif",
"tiff"
];
function isBase64Url(url) {
return url.startsWith("data:");
}
function getFilenameAndExtensionFromUrl(url) {
const cleanUrl = url.split("?")[0].split("#")[0];
const fullFilename = cleanUrl.split("/").pop();
if (!fullFilename) return {
fileName: void 0,
extension: void 0
};
const [_, extension] = fullFilename.split(".");
return {
fileName: fullFilename,
extension
};
}
function isImageType(url) {
if (isBase64Url(url)) return url.split(":")[1].split(";")[0].includes("image");
{
const { extension } = getFilenameAndExtensionFromUrl(url);
if (!!extension) return SUPPORTED_IMG_EXTENSIONS.includes(extension.toLocaleLowerCase());
return false;
}
}
function getFilenameFromUrl(url) {
if (isBase64Url(url)) return;
{
const { fileName } = getFilenameAndExtensionFromUrl(url);
return fileName;
}
}
exports.getFilenameAndExtensionFromUrl = __webpack_exports__.getFilenameAndExtensionFromUrl;
exports.getFilenameFromUrl = __webpack_exports__.getFilenameFromUrl;
exports.isBase64Url = __webpack_exports__.isBase64Url;
exports.isImageType = __webpack_exports__.isImageType;
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
"getFilenameAndExtensionFromUrl",
"getFilenameFromUrl",
"isBase64Url",
"isImageType"
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
Object.defineProperty(exports, '__esModule', {
value: true
});