Files
twenty/packages/twenty-shared/src/utils/url/buildSignedPath.ts
martmull aa58259019 11744 emails broken image in emails (#12265)
- refactor file tokens
- update file token management
  - generate one token per file per workspaceId
  - move token from query params to url path
2025-05-26 22:05:21 +02:00

26 lines
520 B
TypeScript

import { isNonEmptyString } from '@sniptt/guards';
export const buildSignedPath = ({
path,
token,
}: {
path: string;
token: string;
}) => {
if (path.startsWith('https:') || path.startsWith('http:')) {
return path;
}
const directories = path.split('/');
const filename = directories.pop();
if (!isNonEmptyString(filename)) {
throw new Error(
`Filename empty: cannot build signed path from folderPath '${path}'`,
);
}
return `${directories.join('/')}/${token}/${filename}`;
};