24 lines
536 B
TypeScript
24 lines
536 B
TypeScript
const ROOM_NAME_SANITIZER = /[^\w.-]+/g;
|
|
|
|
export function sanitizeAttachmentRoomName(roomName: string): string {
|
|
const sanitizedRoomName = roomName.trim().replace(ROOM_NAME_SANITIZER, '_');
|
|
|
|
return sanitizedRoomName || 'room';
|
|
}
|
|
|
|
export function resolveAttachmentStorageBucket(mime: string): 'video' | 'audio' | 'image' | 'files' {
|
|
if (mime.startsWith('video/')) {
|
|
return 'video';
|
|
}
|
|
|
|
if (mime.startsWith('audio/')) {
|
|
return 'audio';
|
|
}
|
|
|
|
if (mime.startsWith('image/')) {
|
|
return 'image';
|
|
}
|
|
|
|
return 'files';
|
|
}
|