From 9a702b6fc762f7c3625a8350d6b506f7b0c462c7 Mon Sep 17 00:00:00 2001 From: Karn Date: Sat, 30 Aug 2025 17:02:06 +0100 Subject: [PATCH] Clean up generated files names to remove or replace invalid characters --- src/utils/MediaTypeManager.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/utils/MediaTypeManager.ts b/src/utils/MediaTypeManager.ts index c661368..ac6b0ac 100644 --- a/src/utils/MediaTypeManager.ts +++ b/src/utils/MediaTypeManager.ts @@ -71,7 +71,13 @@ export class MediaTypeManager { getFileName(mediaTypeModel: MediaTypeModel): string { // Ignore undefined tags since some search APIs do not return all properties in the model and produce clean file names even if errors occur - return replaceTags(this.mediaFileNameTemplateMap.get(mediaTypeModel.getMediaType())!, mediaTypeModel, true); + let fileName = replaceTags(this.mediaFileNameTemplateMap.get(mediaTypeModel.getMediaType())!, mediaTypeModel, true); + return this.cleanFileName(fileName); + } + + cleanFileName(fileName: string) { + const invalidCharsRegex = /\™|\®|,|#|\[|\]|\||\^|\<|\>|\?|\*|\\|\//g; + return fileName.replaceAll(invalidCharsRegex, '').replaceAll(/"/g, "'").replaceAll(/:/g, ' -'); } async getTemplate(mediaTypeModel: MediaTypeModel, app: App): Promise {