This commit is contained in:
LeonspaceX
2026-01-31 21:25:37 +08:00
parent 3660346797
commit 3e2cdf4c74
4 changed files with 15 additions and 33 deletions

View File

@@ -21,12 +21,12 @@ export const getSettings = async (): Promise<SiteSettings> => {
let fileFormats: string[] | undefined;
if (data.file_formats) {
if (Array.isArray(data.file_formats)) {
fileFormats = data.file_formats.map((x: any) => String(x).trim().replace(/^\./, '').toLowerCase()).filter((x: string) => x);
fileFormats = data.file_formats.map((x: any) => String(x).trim().toLowerCase()).filter((x: string) => x);
} else if (typeof data.file_formats === 'string') {
try {
const parsed = JSON.parse(data.file_formats);
if (Array.isArray(parsed)) {
fileFormats = parsed.map((x: any) => String(x).trim().replace(/^\./, '').toLowerCase()).filter((x: string) => x);
fileFormats = parsed.map((x: any) => String(x).trim().toLowerCase()).filter((x: string) => x);
}
} catch {
// ignore parse error

View File

@@ -292,8 +292,8 @@ const CreatePost: React.FC = () => {
}
const formats = settings?.fileFormats;
if (formats && formats.length > 0) {
const ext = file.name.split('.').pop()?.toLowerCase() || '';
if (!ext || !formats.includes(ext)) {
const mime = (file.type || '').toLowerCase();
if (!mime || !formats.includes(mime)) {
dispatchToast(
<Toast>
<ToastTitle></ToastTitle>