@mikezimm/fps-core-v7
Version:
Library of reusable core interfaces, types and constants migrated from fps-library-v2
24 lines • 1.39 kB
JavaScript
import { makeTheTimeObject } from "../../../../logic/Time/timeObject";
/**
* This will handle some common handlebars updates for file names
* @param fileNameHandleBarStr
* @param originalNameNoExt
* @param maxLength
* @param fileExtension
* @returns
*/
export function processCommonFileNameHandleBars(fileNameHandleBarStr, originalNameNoExt, maxLength, fileExtension) {
const theTime = makeTheTimeObject('');
fileNameHandleBarStr = fileNameHandleBarStr.replace(`{{Original}}`, originalNameNoExt ? originalNameNoExt : '');
fileNameHandleBarStr = fileNameHandleBarStr.replace(`{{Today}}`, theTime.dayYYYYMMDD);
fileNameHandleBarStr = fileNameHandleBarStr.replace(`{{Now}}`, `${theTime.dayYYYYMMDD}_${theTime.hour}-${theTime.minute}`);
// remove special characters from the filename: https://github.com/fps-solutions/FPS-Photo-Form/issues/9, https://github.com/fps-solutions/FPS-Photo-Form/issues/81
// eslint-disable-next-line no-useless-escape
fileNameHandleBarStr = fileNameHandleBarStr.replace(/[\\/:*?\'"<>|#&]/g, '');
if (fileNameHandleBarStr.length > maxLength)
fileNameHandleBarStr = `${fileNameHandleBarStr.substring(0, maxLength)}...and more_`;
if (fileExtension)
fileNameHandleBarStr += `.${fileExtension}`;
return fileNameHandleBarStr;
}
//# sourceMappingURL=processCommonFileNameHandleBars.js.map