414f1d1158
* move truncate function to separate file to reuse it * truncate image descriptions * show image description limit in UI * correctly treat null Co-authored-by: nullobsi <me@nullob.si> * make truncate Unicode-aware The strings that truncate returns should now be valid Unicode. PostgreSQL also counts Unicode Code Points instead of bytes so this should be correct. * move truncate to internal, validate in API Truncating could also be done in src/services/drive/add-file.ts or src/services/drive/upload-from-url.ts but those would also affect local images. But local images should result in a hard error if the image comment is too long. * avoid overwriting Co-authored-by: nullobsi <me@nullob.si>
11 lines
358 B
TypeScript
11 lines
358 B
TypeScript
import { substring } from 'stringz';
|
|
|
|
export function truncate(input: string, size: number): string;
|
|
export function truncate(input: string | undefined, size: number): string | undefined;
|
|
export function truncate(input: string | undefined, size: number): string | undefined {
|
|
if (!input) {
|
|
return input;
|
|
} else {
|
|
return substring(input, 0, size);
|
|
}
|
|
}
|