mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-22 19:30:15 +01:00
refactor: move /services/Files/images/parse to TS API
This commit is contained in:
parent
c160e7c7d5
commit
1c7b3b53da
4 changed files with 13 additions and 19 deletions
|
|
@ -1 +1,2 @@
|
|||
export * from './mistral/crud';
|
||||
export * from './parse';
|
||||
|
|
|
|||
40
packages/api/src/files/parse.ts
Normal file
40
packages/api/src/files/parse.ts
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
import path from 'path';
|
||||
import { URL } from 'url';
|
||||
|
||||
const imageExtensionRegex = /\.(jpg|jpeg|png|gif|bmp|tiff|svg|webp)$/i;
|
||||
|
||||
/**
|
||||
* Extracts the image basename from a given URL.
|
||||
*
|
||||
* @param urlString - The URL string from which the image basename is to be extracted.
|
||||
* @returns The basename of the image file from the URL.
|
||||
* Returns an empty string if the URL does not contain a valid image basename.
|
||||
*/
|
||||
export function getImageBasename(urlString: string) {
|
||||
try {
|
||||
const url = new URL(urlString);
|
||||
const basename = path.basename(url.pathname);
|
||||
|
||||
return imageExtensionRegex.test(basename) ? basename : '';
|
||||
} catch {
|
||||
// If URL parsing fails, return an empty string
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Extracts the basename of a file from a given URL.
|
||||
*
|
||||
* @param urlString - The URL string from which the file basename is to be extracted.
|
||||
* @returns The basename of the file from the URL.
|
||||
* Returns an empty string if the URL parsing fails.
|
||||
*/
|
||||
export function getFileBasename(urlString: string) {
|
||||
try {
|
||||
const url = new URL(urlString);
|
||||
return path.basename(url.pathname);
|
||||
} catch {
|
||||
// If URL parsing fails, return an empty string
|
||||
return '';
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue