Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled
35 lines
833 B
TypeScript
35 lines
833 B
TypeScript
import { Column, Entity, Index, PrimaryColumn } from '@n8n/typeorm';
|
|
import { z } from 'zod';
|
|
|
|
import { BinaryColumn, WithTimestamps } from './abstract-entity';
|
|
|
|
export const SourceTypeSchema = z.enum(['execution', 'chat_message_attachment']);
|
|
|
|
export type SourceType = z.infer<typeof SourceTypeSchema>;
|
|
|
|
@Entity('binary_data')
|
|
export class BinaryDataFile extends WithTimestamps {
|
|
@PrimaryColumn('uuid')
|
|
fileId: string;
|
|
|
|
@Column('varchar', { length: 50 })
|
|
sourceType: SourceType;
|
|
|
|
@Column('varchar', { length: 255 })
|
|
sourceId: string;
|
|
|
|
@BinaryColumn()
|
|
data: Buffer;
|
|
|
|
@Column('varchar', { length: 255, nullable: true })
|
|
mimeType: string | null;
|
|
|
|
@Column('varchar', { length: 255, nullable: true })
|
|
fileName: string | null;
|
|
|
|
@Column('int')
|
|
fileSize: number; // bytes
|
|
}
|
|
|
|
Index(['sourceType', 'sourceId'])(BinaryDataFile);
|