forked from github/plane
532da80375
* fix: handled attachment upload filename size error in the issue detail * ui: profile detail sidebar border
33 lines
917 B
TypeScript
33 lines
917 B
TypeScript
export const generateFileName = (fileName: string) => {
|
|
const date = new Date();
|
|
const timestamp = date.getTime();
|
|
|
|
const _fileName = getFileName(fileName);
|
|
const nameWithoutExtension = _fileName.length > 80 ? _fileName.substring(0, 80) : _fileName;
|
|
const extension = getFileExtension(fileName);
|
|
|
|
return `${nameWithoutExtension}-${timestamp}.${extension}`;
|
|
};
|
|
|
|
export const getFileExtension = (filename: string) => filename.slice(((filename.lastIndexOf(".") - 1) >>> 0) + 2);
|
|
|
|
export const getFileName = (fileName: string) => {
|
|
const dotIndex = fileName.lastIndexOf(".");
|
|
|
|
const nameWithoutExtension = fileName.substring(0, dotIndex);
|
|
|
|
return nameWithoutExtension;
|
|
};
|
|
|
|
export const convertBytesToSize = (bytes: number) => {
|
|
let size;
|
|
|
|
if (bytes < 1024 * 1024) {
|
|
size = Math.round(bytes / 1024) + " KB";
|
|
} else {
|
|
size = Math.round(bytes / (1024 * 1024)) + " MB";
|
|
}
|
|
|
|
return size;
|
|
};
|