Class: DataTableViewsRepository
Defined in: server/datatable/repository.ts:67
Repository for dataTableViews rows.
Extends BaseRepository<PrismaClient, Tx<PrismaClient>> so this.tx
resolves to the active transaction handle when called inside
TransactionManager.startOrUseTransaction, and falls back to the raw
client otherwise. That's what lets composite mutations (ownership check
- write) ride a single transaction without per-method plumbing.
Unlike most repos in taproot, this one doesn't slot into
CrudRepository's template — every mutation carries a per-call
userId for ownership checks and audit columns, rather than a
constructor-time actor. The methods are written directly.
Extends
BaseRepository<PrismaClient,Tx<PrismaClient>>
Constructors
Constructor
new DataTableViewsRepository(prismaClient: PrismaClientLike<Tx<PrismaClient<PrismaClientOptions, never, DefaultArgs>>> & PrismaClient<PrismaClientOptions, never, DefaultArgs>, options?: RepositoryOptions): DataTableViewsRepository;Defined in: server/persistence/base-repository.ts:68
Parameters
| Parameter | Type |
|---|---|
prismaClient | PrismaClientLike<Tx<PrismaClient<PrismaClientOptions, never, DefaultArgs>>> & PrismaClient<PrismaClientOptions, never, DefaultArgs> |
options | RepositoryOptions |
Returns
DataTableViewsRepository
Inherited from
Properties
ENTITY_TYPE?
protected readonly optional ENTITY_TYPE?: string;Defined in: server/persistence/base-repository.ts:61
Set ENTITY_TYPE in child repositories to enable automatic activity
logging. When set, create/update/delete operations auto-log unless
silenced with .silent. Requires an activity model on the consumer's
Prisma schema.
Inherited from
logger?
protected readonly optional logger?: Logger;Defined in: server/persistence/base-repository.ts:64
Inherited from
prismaClient
protected prismaClient: PrismaClientLike<Tx<PrismaClient<PrismaClientOptions, never, DefaultArgs>>> & PrismaClient<PrismaClientOptions, never, DefaultArgs>;Defined in: server/persistence/base-repository.ts:69
Inherited from
Accessors
actorId
Get Signature
get protected actorId(): string | null | undefined;Defined in: server/persistence/base-repository.ts:76
Returns
string | null | undefined
Inherited from
auditCreate
Get Signature
get protected auditCreate(): {
createdBy: string | null | undefined;
updatedBy: string | null | undefined;
};Defined in: server/persistence/base-repository.ts:90
Returns
{
createdBy: string | null | undefined;
updatedBy: string | null | undefined;
}createdBy
createdBy: string | null | undefined = actorId;updatedBy
updatedBy: string | null | undefined = actorId;Inherited from
auditDelete
Get Signature
get protected auditDelete(): {
deletedAt: Date;
deletedBy: string | null | undefined;
};Defined in: server/persistence/base-repository.ts:99
Returns
{
deletedAt: Date;
deletedBy: string | null | undefined;
}deletedAt
deletedAt: Date;deletedBy
deletedBy: string | null | undefined;Inherited from
auditUpdate
Get Signature
get protected auditUpdate(): {
updatedBy: string | null | undefined;
};Defined in: server/persistence/base-repository.ts:95
Returns
{
updatedBy: string | null | undefined;
}updatedBy
updatedBy: string | null | undefined;Inherited from
silent
Get Signature
get silent(): this;Defined in: server/persistence/base-repository.ts:115
Suppress activity logging for the next mutation call. One-shot: the flag is consumed by the next create/update/delete.
Example
await repo.silent.update(id, data); // no activity logged
await repo.update(id, data); // activity logged normallyReturns
this
Inherited from
tx
Get Signature
get protected tx(): TTx;Defined in: server/persistence/base-repository.ts:86
The current Prisma handle: the active transaction if one is running on this async context, otherwise the raw client.
Returns
TTx
Inherited from
Methods
consumeSilent()
protected consumeSilent(): boolean;Defined in: server/persistence/base-repository.ts:128
Consume and reset the silent flag. Called by template methods.
Returns
boolean
Inherited from
createView()
createView(input: {
name: string;
organizationId: string;
payload: ViewPayload;
tableKey: string;
userId: string;
visibility?: ViewVisibility;
}): Promise<SavedView>;Defined in: server/datatable/repository.ts:115
Parameters
| Parameter | Type |
|---|---|
input | { name: string; organizationId: string; payload: ViewPayload; tableKey: string; userId: string; visibility?: ViewVisibility; } |
input.name | string |
input.organizationId | string |
input.payload | ViewPayload |
input.tableKey | string |
input.userId | string |
input.visibility? | ViewVisibility |
Returns
Promise<SavedView>
deleteView()
deleteView(input: {
id: string;
organizationId: string;
userId: string;
}): Promise<void>;Defined in: server/datatable/repository.ts:196
Parameters
| Parameter | Type |
|---|---|
input | { id: string; organizationId: string; userId: string; } |
input.id | string |
input.organizationId | string |
input.userId | string |
Returns
Promise<void>
getView()
getView(input: {
id: string;
organizationId: string;
}): Promise<SavedView>;Defined in: server/datatable/repository.ts:103
Parameters
| Parameter | Type |
|---|---|
input | { id: string; organizationId: string; } |
input.id | string |
input.organizationId | string |
Returns
Promise<SavedView>
listViews()
listViews(input: {
organizationId: string;
tableKey: string;
userId: string;
}): Promise<SavedView[]>;Defined in: server/datatable/repository.ts:84
Parameters
| Parameter | Type |
|---|---|
input | { organizationId: string; tableKey: string; userId: string; } |
input.organizationId | string |
input.tableKey | string |
input.userId | string |
Returns
Promise<SavedView[]>
logActivity()
protected logActivity(
_entityId: string,
_action: string,
_metadata?: Record<string, unknown>
): Promise<void>;Defined in: server/persistence/base-repository.ts:140
Log an activity entry.
NOTE: This is not implemented because there's no activity model implemented in taproot yet! https://linear.app/kaizenlabs/issue/ENG-7846/add-activity-log-tables
Parameters
| Parameter | Type |
|---|---|
_entityId | string |
_action | string |
_metadata? | Record<string, unknown> |
Returns
Promise<void>
Inherited from
renameView()
renameView(input: {
id: string;
name: string;
organizationId: string;
userId: string;
visibility?: ViewVisibility;
}): Promise<SavedView>;Defined in: server/datatable/repository.ts:137
Parameters
| Parameter | Type |
|---|---|
input | { id: string; name: string; organizationId: string; userId: string; visibility?: ViewVisibility; } |
input.id | string |
input.name | string |
input.organizationId | string |
input.userId | string |
input.visibility? | ViewVisibility |
Returns
Promise<SavedView>
saveViewPayload()
saveViewPayload(input: {
id: string;
organizationId: string;
payload: ViewPayload;
userId: string;
}): Promise<SavedView>;Defined in: server/datatable/repository.ts:169
Parameters
| Parameter | Type |
|---|---|
input | { id: string; organizationId: string; payload: ViewPayload; userId: string; } |
input.id | string |
input.organizationId | string |
input.payload | ViewPayload |
input.userId | string |
Returns
Promise<SavedView>