Add dynamic audio flag to schedule blocks

This commit is contained in:
NeilClack
2026-09-11 18:41:46 -05:00
parent e934a98f00
commit 468a65a688
6 changed files with 51 additions and 5 deletions
@@ -0,0 +1,2 @@
-- AlterTable
ALTER TABLE "Block" ADD COLUMN "dynamicAudio" BOOLEAN NOT NULL DEFAULT false;
+3
View File
@@ -278,6 +278,9 @@ model Block {
schedule Schedule @relation(fields: [scheduleId], references: [id], onDelete: Cascade)
startMinutes Int
endMinutes Int
// When true, the kiosk enables dynamic audio for the duration of this block,
// overriding any audio selections made on the device.
dynamicAudio Boolean @default(false)
proclamations BlockProclamations[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
File diff suppressed because one or more lines are too long
@@ -2080,6 +2080,7 @@ export const BlockScalarFieldEnum = {
scheduleId: 'scheduleId',
startMinutes: 'startMinutes',
endMinutes: 'endMinutes',
dynamicAudio: 'dynamicAudio',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
} as const
@@ -301,6 +301,7 @@ export const BlockScalarFieldEnum = {
scheduleId: 'scheduleId',
startMinutes: 'startMinutes',
endMinutes: 'endMinutes',
dynamicAudio: 'dynamicAudio',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
} as const
+40 -1
View File
@@ -41,6 +41,7 @@ export type BlockMinAggregateOutputType = {
scheduleId: string | null
startMinutes: number | null
endMinutes: number | null
dynamicAudio: boolean | null
createdAt: Date | null
updatedAt: Date | null
}
@@ -50,6 +51,7 @@ export type BlockMaxAggregateOutputType = {
scheduleId: string | null
startMinutes: number | null
endMinutes: number | null
dynamicAudio: boolean | null
createdAt: Date | null
updatedAt: Date | null
}
@@ -59,6 +61,7 @@ export type BlockCountAggregateOutputType = {
scheduleId: number
startMinutes: number
endMinutes: number
dynamicAudio: number
createdAt: number
updatedAt: number
_all: number
@@ -80,6 +83,7 @@ export type BlockMinAggregateInputType = {
scheduleId?: true
startMinutes?: true
endMinutes?: true
dynamicAudio?: true
createdAt?: true
updatedAt?: true
}
@@ -89,6 +93,7 @@ export type BlockMaxAggregateInputType = {
scheduleId?: true
startMinutes?: true
endMinutes?: true
dynamicAudio?: true
createdAt?: true
updatedAt?: true
}
@@ -98,6 +103,7 @@ export type BlockCountAggregateInputType = {
scheduleId?: true
startMinutes?: true
endMinutes?: true
dynamicAudio?: true
createdAt?: true
updatedAt?: true
_all?: true
@@ -194,6 +200,7 @@ export type BlockGroupByOutputType = {
scheduleId: string
startMinutes: number
endMinutes: number
dynamicAudio: boolean
createdAt: Date
updatedAt: Date
_count: BlockCountAggregateOutputType | null
@@ -226,6 +233,7 @@ export type BlockWhereInput = {
scheduleId?: Prisma.StringFilter<"Block"> | string
startMinutes?: Prisma.IntFilter<"Block"> | number
endMinutes?: Prisma.IntFilter<"Block"> | number
dynamicAudio?: Prisma.BoolFilter<"Block"> | boolean
createdAt?: Prisma.DateTimeFilter<"Block"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"Block"> | Date | string
schedule?: Prisma.XOR<Prisma.ScheduleScalarRelationFilter, Prisma.ScheduleWhereInput>
@@ -237,6 +245,7 @@ export type BlockOrderByWithRelationInput = {
scheduleId?: Prisma.SortOrder
startMinutes?: Prisma.SortOrder
endMinutes?: Prisma.SortOrder
dynamicAudio?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
schedule?: Prisma.ScheduleOrderByWithRelationInput
@@ -251,6 +260,7 @@ export type BlockWhereUniqueInput = Prisma.AtLeast<{
scheduleId?: Prisma.StringFilter<"Block"> | string
startMinutes?: Prisma.IntFilter<"Block"> | number
endMinutes?: Prisma.IntFilter<"Block"> | number
dynamicAudio?: Prisma.BoolFilter<"Block"> | boolean
createdAt?: Prisma.DateTimeFilter<"Block"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"Block"> | Date | string
schedule?: Prisma.XOR<Prisma.ScheduleScalarRelationFilter, Prisma.ScheduleWhereInput>
@@ -262,6 +272,7 @@ export type BlockOrderByWithAggregationInput = {
scheduleId?: Prisma.SortOrder
startMinutes?: Prisma.SortOrder
endMinutes?: Prisma.SortOrder
dynamicAudio?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
_count?: Prisma.BlockCountOrderByAggregateInput
@@ -279,6 +290,7 @@ export type BlockScalarWhereWithAggregatesInput = {
scheduleId?: Prisma.StringWithAggregatesFilter<"Block"> | string
startMinutes?: Prisma.IntWithAggregatesFilter<"Block"> | number
endMinutes?: Prisma.IntWithAggregatesFilter<"Block"> | number
dynamicAudio?: Prisma.BoolWithAggregatesFilter<"Block"> | boolean
createdAt?: Prisma.DateTimeWithAggregatesFilter<"Block"> | Date | string
updatedAt?: Prisma.DateTimeWithAggregatesFilter<"Block"> | Date | string
}
@@ -287,6 +299,7 @@ export type BlockCreateInput = {
id?: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
schedule: Prisma.ScheduleCreateNestedOneWithoutBlocksInput
@@ -298,6 +311,7 @@ export type BlockUncheckedCreateInput = {
scheduleId: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
proclamations?: Prisma.BlockProclamationsUncheckedCreateNestedManyWithoutBlockInput
@@ -307,6 +321,7 @@ export type BlockUpdateInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
schedule?: Prisma.ScheduleUpdateOneRequiredWithoutBlocksNestedInput
@@ -318,6 +333,7 @@ export type BlockUncheckedUpdateInput = {
scheduleId?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
proclamations?: Prisma.BlockProclamationsUncheckedUpdateManyWithoutBlockNestedInput
@@ -328,6 +344,7 @@ export type BlockCreateManyInput = {
scheduleId: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -336,6 +353,7 @@ export type BlockUpdateManyMutationInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -345,6 +363,7 @@ export type BlockUncheckedUpdateManyInput = {
scheduleId?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -364,6 +383,7 @@ export type BlockCountOrderByAggregateInput = {
scheduleId?: Prisma.SortOrder
startMinutes?: Prisma.SortOrder
endMinutes?: Prisma.SortOrder
dynamicAudio?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
}
@@ -378,6 +398,7 @@ export type BlockMaxOrderByAggregateInput = {
scheduleId?: Prisma.SortOrder
startMinutes?: Prisma.SortOrder
endMinutes?: Prisma.SortOrder
dynamicAudio?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
}
@@ -387,6 +408,7 @@ export type BlockMinOrderByAggregateInput = {
scheduleId?: Prisma.SortOrder
startMinutes?: Prisma.SortOrder
endMinutes?: Prisma.SortOrder
dynamicAudio?: Prisma.SortOrder
createdAt?: Prisma.SortOrder
updatedAt?: Prisma.SortOrder
}
@@ -461,6 +483,7 @@ export type BlockCreateWithoutScheduleInput = {
id?: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
proclamations?: Prisma.BlockProclamationsCreateNestedManyWithoutBlockInput
@@ -470,6 +493,7 @@ export type BlockUncheckedCreateWithoutScheduleInput = {
id?: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
proclamations?: Prisma.BlockProclamationsUncheckedCreateNestedManyWithoutBlockInput
@@ -509,6 +533,7 @@ export type BlockScalarWhereInput = {
scheduleId?: Prisma.StringFilter<"Block"> | string
startMinutes?: Prisma.IntFilter<"Block"> | number
endMinutes?: Prisma.IntFilter<"Block"> | number
dynamicAudio?: Prisma.BoolFilter<"Block"> | boolean
createdAt?: Prisma.DateTimeFilter<"Block"> | Date | string
updatedAt?: Prisma.DateTimeFilter<"Block"> | Date | string
}
@@ -517,6 +542,7 @@ export type BlockCreateWithoutProclamationsInput = {
id?: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
schedule: Prisma.ScheduleCreateNestedOneWithoutBlocksInput
@@ -527,6 +553,7 @@ export type BlockUncheckedCreateWithoutProclamationsInput = {
scheduleId: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -551,6 +578,7 @@ export type BlockUpdateWithoutProclamationsInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
schedule?: Prisma.ScheduleUpdateOneRequiredWithoutBlocksNestedInput
@@ -561,6 +589,7 @@ export type BlockUncheckedUpdateWithoutProclamationsInput = {
scheduleId?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -569,6 +598,7 @@ export type BlockCreateManyScheduleInput = {
id?: string
startMinutes: number
endMinutes: number
dynamicAudio?: boolean
createdAt?: Date | string
updatedAt?: Date | string
}
@@ -577,6 +607,7 @@ export type BlockUpdateWithoutScheduleInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
proclamations?: Prisma.BlockProclamationsUpdateManyWithoutBlockNestedInput
@@ -586,6 +617,7 @@ export type BlockUncheckedUpdateWithoutScheduleInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
proclamations?: Prisma.BlockProclamationsUncheckedUpdateManyWithoutBlockNestedInput
@@ -595,6 +627,7 @@ export type BlockUncheckedUpdateManyWithoutScheduleInput = {
id?: Prisma.StringFieldUpdateOperationsInput | string
startMinutes?: Prisma.IntFieldUpdateOperationsInput | number
endMinutes?: Prisma.IntFieldUpdateOperationsInput | number
dynamicAudio?: Prisma.BoolFieldUpdateOperationsInput | boolean
createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
}
@@ -635,6 +668,7 @@ export type BlockSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs =
scheduleId?: boolean
startMinutes?: boolean
endMinutes?: boolean
dynamicAudio?: boolean
createdAt?: boolean
updatedAt?: boolean
schedule?: boolean | Prisma.ScheduleDefaultArgs<ExtArgs>
@@ -647,6 +681,7 @@ export type BlockSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensi
scheduleId?: boolean
startMinutes?: boolean
endMinutes?: boolean
dynamicAudio?: boolean
createdAt?: boolean
updatedAt?: boolean
schedule?: boolean | Prisma.ScheduleDefaultArgs<ExtArgs>
@@ -657,6 +692,7 @@ export type BlockSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensi
scheduleId?: boolean
startMinutes?: boolean
endMinutes?: boolean
dynamicAudio?: boolean
createdAt?: boolean
updatedAt?: boolean
schedule?: boolean | Prisma.ScheduleDefaultArgs<ExtArgs>
@@ -667,11 +703,12 @@ export type BlockSelectScalar = {
scheduleId?: boolean
startMinutes?: boolean
endMinutes?: boolean
dynamicAudio?: boolean
createdAt?: boolean
updatedAt?: boolean
}
export type BlockOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "scheduleId" | "startMinutes" | "endMinutes" | "createdAt" | "updatedAt", ExtArgs["result"]["block"]>
export type BlockOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "scheduleId" | "startMinutes" | "endMinutes" | "dynamicAudio" | "createdAt" | "updatedAt", ExtArgs["result"]["block"]>
export type BlockInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
schedule?: boolean | Prisma.ScheduleDefaultArgs<ExtArgs>
proclamations?: boolean | Prisma.Block$proclamationsArgs<ExtArgs>
@@ -695,6 +732,7 @@ export type $BlockPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs
scheduleId: string
startMinutes: number
endMinutes: number
dynamicAudio: boolean
createdAt: Date
updatedAt: Date
}, ExtArgs["result"]["block"]>
@@ -1126,6 +1164,7 @@ export interface BlockFieldRefs {
readonly scheduleId: Prisma.FieldRef<"Block", 'String'>
readonly startMinutes: Prisma.FieldRef<"Block", 'Int'>
readonly endMinutes: Prisma.FieldRef<"Block", 'Int'>
readonly dynamicAudio: Prisma.FieldRef<"Block", 'Boolean'>
readonly createdAt: Prisma.FieldRef<"Block", 'DateTime'>
readonly updatedAt: Prisma.FieldRef<"Block", 'DateTime'>
}