Notification Settings card

This commit is contained in:
headlesdev 2025-05-26 11:30:19 +02:00
parent d045aad2dd
commit 338c1922d0
14 changed files with 121 additions and 17 deletions

View File

@ -3,6 +3,7 @@ import prisma from "@/app/prisma";
import { z } from "zod/v4"
const schema = z.object({
enabled: z.boolean(),
statusChange: z.boolean(),
latencyLimit: z.number().min(0).max(100),
notificationTextStatus: z.string(),
@ -13,18 +14,18 @@ const schema = z.object({
export async function POST(request: NextRequest) {
try {
const body = await request.json();
const { statusChange, latencyLimit, notificationTextStatus, notificationTextLatency, notificationLatency } = schema.parse(body);
const { enabled, statusChange, latencyLimit, notificationTextStatus, notificationTextLatency, notificationLatency } = schema.parse(body);
const existingNotification = await prisma.applicationMonitoringNotification.findFirst();
if(!existingNotification) {
const notification = await prisma.applicationMonitoringNotification.create({
data: { statusChange, latencyLimit, notificationTextStatus, notificationTextLatency, notificationLatency },
data: { enabled, statusChange, latencyLimit, notificationTextStatus, notificationTextLatency, notificationLatency },
});
return NextResponse.json({ notification }, { status: 200 });
} else {
const notification = await prisma.applicationMonitoringNotification.update({
where: { id: existingNotification.id },
data: { statusChange, latencyLimit, notificationTextStatus, notificationTextLatency, notificationLatency },
data: { enabled, statusChange, latencyLimit, notificationTextStatus, notificationTextLatency, notificationLatency },
});
return NextResponse.json({ notification }, { status: 200 });
}

View File

@ -3,6 +3,7 @@ import prisma from "@/app/prisma";
import { z } from "zod/v4"
const schema = z.object({
enabled: z.boolean(),
statusChange: z.boolean(),
cpuLimit: z.number().min(0).max(100),
gpuLimit: z.number().min(0).max(100),
@ -25,18 +26,18 @@ const schema = z.object({
export async function POST(request: NextRequest) {
try {
const body = await request.json();
const { statusChange, cpuLimit, gpuLimit, memoryLimit, diskLimit, temperatureLimit, notificationTextStatus, notificationTextCpu, notificationTextGpu, notificationTextMemory, notificationTextDisk, notificationTextTemperature, notificationCpu, notificationGpu, notificationMemory, notificationDisk, notificationTemperature } = schema.parse(body);
const { enabled, statusChange, cpuLimit, gpuLimit, memoryLimit, diskLimit, temperatureLimit, notificationTextStatus, notificationTextCpu, notificationTextGpu, notificationTextMemory, notificationTextDisk, notificationTextTemperature, notificationCpu, notificationGpu, notificationMemory, notificationDisk, notificationTemperature } = schema.parse(body);
const existingNotification = await prisma.serverMonitoringNotification.findFirst();
if(!existingNotification) {
const notification = await prisma.serverMonitoringNotification.create({
data: { statusChange, cpuLimit, gpuLimit, memoryLimit, diskLimit, temperatureLimit, notificationTextStatus, notificationTextCpu, notificationTextGpu, notificationTextMemory, notificationTextDisk, notificationTextTemperature, notificationCpu, notificationGpu, notificationMemory, notificationDisk, notificationTemperature },
data: { enabled, statusChange, cpuLimit, gpuLimit, memoryLimit, diskLimit, temperatureLimit, notificationTextStatus, notificationTextCpu, notificationTextGpu, notificationTextMemory, notificationTextDisk, notificationTextTemperature, notificationCpu, notificationGpu, notificationMemory, notificationDisk, notificationTemperature },
});
return NextResponse.json({ notification }, { status: 200 });
} else {
const notification = await prisma.serverMonitoringNotification.update({
where: { id: existingNotification.id },
data: { statusChange, cpuLimit, gpuLimit, memoryLimit, diskLimit, temperatureLimit, notificationTextStatus, notificationTextCpu, notificationTextGpu, notificationTextMemory, notificationTextDisk, notificationTextTemperature, notificationCpu, notificationGpu, notificationMemory, notificationDisk, notificationTemperature },
data: { enabled, statusChange, cpuLimit, gpuLimit, memoryLimit, diskLimit, temperatureLimit, notificationTextStatus, notificationTextCpu, notificationTextGpu, notificationTextMemory, notificationTextDisk, notificationTextTemperature, notificationCpu, notificationGpu, notificationMemory, notificationDisk, notificationTemperature },
});
return NextResponse.json({ notification }, { status: 200 });
}

View File

@ -5,7 +5,8 @@ import ErrorToast from '@/components/Error';
import SuccessToast from '@/components/Success';
import { ProfileSettings } from '@/components/cards/settings/ProfileSettings';
import { PasswordSettings } from '@/components/cards/settings/PasswordSettings';
import { NotificationSettings } from '@/components/cards/settings/NotificationProviderSettings';
import { NotificationProviderSettings } from '@/components/cards/settings/NotificationProviderSettings';
import { NotificationSettings } from '@/components/cards/settings/NotificationSettings';
import { useState } from 'react';
interface SettingsPageProps {
@ -59,6 +60,7 @@ export default function SettingsPage({ username, name, email }: SettingsPageProp
<div className="tab-content relative bg-base-100 pl-4 pt-4">
<div className="absolute -top-[3px] left-6 right-0 h-[2px] bg-stone-800"></div>
<div className="flex flex-col gap-4">
<NotificationProviderSettings onError={setError} onSuccess={setSuccess} />
<NotificationSettings onError={setError} onSuccess={setSuccess} />
</div>
</div>

View File

@ -8,7 +8,7 @@ import useNotifications from '@/hooks/useNotifications';
import { Plus, Trash2, Play, Bell } from 'lucide-react';
import Loading from '@/components/Loading';
export const NotificationSettings = ({ onError, onSuccess }: { onError: (message: string) => void, onSuccess: (message: string) => void }) => {
export const NotificationProviderSettings = ({ onError, onSuccess }: { onError: (message: string) => void, onSuccess: (message: string) => void }) => {
const { loadNotifications, notifications, loading, testNotification } = useNotifications();
const [deleteNotificationId, setDeleteNotificationId] = useState<number | null>(null);
const [notificationTestId, setNotificationTestId] = useState<number | null>(null);

View File

@ -0,0 +1,25 @@
"use client";
import { useState } from "react";
interface NotificationSettingsProps {
onError: (message: string) => void;
onSuccess: (message: string) => void;
}
export const NotificationSettings = ({ onError, onSuccess }: NotificationSettingsProps) => {
const [enabled, setEnabled] = useState(false);
return (
<div>
<div className="w-full bg-base-200 p-4 rounded-2xl border border-stone-800">
<div className="flex items-center justify-between">
<div>
<h2 className="text-lg font-bold">Notification Settings</h2>
<p className="text-sm opacity-70">Manage your notification settings</p>
</div>
</div>
</div>
</div>
)
}

File diff suppressed because one or more lines are too long

View File

@ -198,6 +198,7 @@ exports.Prisma.ApplicationMonitoringScalarFieldEnum = {
exports.Prisma.ServerMonitoringNotificationScalarFieldEnum = {
id: 'id',
enabled: 'enabled',
statusChange: 'statusChange',
cpuLimit: 'cpuLimit',
gpuLimit: 'gpuLimit',
@ -219,6 +220,7 @@ exports.Prisma.ServerMonitoringNotificationScalarFieldEnum = {
exports.Prisma.ApplicationMonitoringNotificationScalarFieldEnum = {
id: 'id',
enabled: 'enabled',
statusChange: 'statusChange',
latencyLimit: 'latencyLimit',
notificationTextStatus: 'notificationTextStatus',

View File

@ -9985,6 +9985,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationMinAggregateOutputType = {
id: number | null
enabled: boolean | null
statusChange: boolean | null
cpuLimit: number | null
gpuLimit: number | null
@ -10006,6 +10007,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationMaxAggregateOutputType = {
id: number | null
enabled: boolean | null
statusChange: boolean | null
cpuLimit: number | null
gpuLimit: number | null
@ -10027,6 +10029,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationCountAggregateOutputType = {
id: number
enabled: number
statusChange: number
cpuLimit: number
gpuLimit: number
@ -10068,6 +10071,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationMinAggregateInputType = {
id?: true
enabled?: true
statusChange?: true
cpuLimit?: true
gpuLimit?: true
@ -10089,6 +10093,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationMaxAggregateInputType = {
id?: true
enabled?: true
statusChange?: true
cpuLimit?: true
gpuLimit?: true
@ -10110,6 +10115,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationCountAggregateInputType = {
id?: true
enabled?: true
statusChange?: true
cpuLimit?: true
gpuLimit?: true
@ -10218,6 +10224,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationGroupByOutputType = {
id: number
enabled: boolean
statusChange: boolean
cpuLimit: number
gpuLimit: number
@ -10258,6 +10265,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
enabled?: boolean
statusChange?: boolean
cpuLimit?: boolean
gpuLimit?: boolean
@ -10279,6 +10287,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
enabled?: boolean
statusChange?: boolean
cpuLimit?: boolean
gpuLimit?: boolean
@ -10300,6 +10309,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
enabled?: boolean
statusChange?: boolean
cpuLimit?: boolean
gpuLimit?: boolean
@ -10321,6 +10331,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationSelectScalar = {
id?: boolean
enabled?: boolean
statusChange?: boolean
cpuLimit?: boolean
gpuLimit?: boolean
@ -10340,13 +10351,14 @@ export namespace Prisma {
notificationTemperature?: boolean
}
export type ServerMonitoringNotificationOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "statusChange" | "cpuLimit" | "gpuLimit" | "memoryLimit" | "diskLimit" | "temperatureLimit" | "notificationTextStatus" | "notificationTextCpu" | "notificationTextGpu" | "notificationTextMemory" | "notificationTextDisk" | "notificationTextTemperature" | "notificationCpu" | "notificationGpu" | "notificationMemory" | "notificationDisk" | "notificationTemperature", ExtArgs["result"]["serverMonitoringNotification"]>
export type ServerMonitoringNotificationOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "enabled" | "statusChange" | "cpuLimit" | "gpuLimit" | "memoryLimit" | "diskLimit" | "temperatureLimit" | "notificationTextStatus" | "notificationTextCpu" | "notificationTextGpu" | "notificationTextMemory" | "notificationTextDisk" | "notificationTextTemperature" | "notificationCpu" | "notificationGpu" | "notificationMemory" | "notificationDisk" | "notificationTemperature", ExtArgs["result"]["serverMonitoringNotification"]>
export type $ServerMonitoringNotificationPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "ServerMonitoringNotification"
objects: {}
scalars: $Extensions.GetPayloadResult<{
id: number
enabled: boolean
statusChange: boolean
cpuLimit: number
gpuLimit: number
@ -10788,6 +10800,7 @@ export namespace Prisma {
*/
interface ServerMonitoringNotificationFieldRefs {
readonly id: FieldRef<"ServerMonitoringNotification", 'Int'>
readonly enabled: FieldRef<"ServerMonitoringNotification", 'Boolean'>
readonly statusChange: FieldRef<"ServerMonitoringNotification", 'Boolean'>
readonly cpuLimit: FieldRef<"ServerMonitoringNotification", 'Float'>
readonly gpuLimit: FieldRef<"ServerMonitoringNotification", 'Float'>
@ -11195,6 +11208,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationMinAggregateOutputType = {
id: number | null
enabled: boolean | null
statusChange: boolean | null
latencyLimit: number | null
notificationTextStatus: string | null
@ -11204,6 +11218,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationMaxAggregateOutputType = {
id: number | null
enabled: boolean | null
statusChange: boolean | null
latencyLimit: number | null
notificationTextStatus: string | null
@ -11213,6 +11228,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationCountAggregateOutputType = {
id: number
enabled: number
statusChange: number
latencyLimit: number
notificationTextStatus: number
@ -11234,6 +11250,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationMinAggregateInputType = {
id?: true
enabled?: true
statusChange?: true
latencyLimit?: true
notificationTextStatus?: true
@ -11243,6 +11260,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationMaxAggregateInputType = {
id?: true
enabled?: true
statusChange?: true
latencyLimit?: true
notificationTextStatus?: true
@ -11252,6 +11270,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationCountAggregateInputType = {
id?: true
enabled?: true
statusChange?: true
latencyLimit?: true
notificationTextStatus?: true
@ -11348,6 +11367,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationGroupByOutputType = {
id: number
enabled: boolean
statusChange: boolean
latencyLimit: number
notificationTextStatus: string
@ -11376,6 +11396,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
enabled?: boolean
statusChange?: boolean
latencyLimit?: boolean
notificationTextStatus?: boolean
@ -11385,6 +11406,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
enabled?: boolean
statusChange?: boolean
latencyLimit?: boolean
notificationTextStatus?: boolean
@ -11394,6 +11416,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
id?: boolean
enabled?: boolean
statusChange?: boolean
latencyLimit?: boolean
notificationTextStatus?: boolean
@ -11403,6 +11426,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationSelectScalar = {
id?: boolean
enabled?: boolean
statusChange?: boolean
latencyLimit?: boolean
notificationTextStatus?: boolean
@ -11410,13 +11434,14 @@ export namespace Prisma {
notificationLatency?: boolean
}
export type ApplicationMonitoringNotificationOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "statusChange" | "latencyLimit" | "notificationTextStatus" | "notificationTextLatency" | "notificationLatency", ExtArgs["result"]["applicationMonitoringNotification"]>
export type ApplicationMonitoringNotificationOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "enabled" | "statusChange" | "latencyLimit" | "notificationTextStatus" | "notificationTextLatency" | "notificationLatency", ExtArgs["result"]["applicationMonitoringNotification"]>
export type $ApplicationMonitoringNotificationPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
name: "ApplicationMonitoringNotification"
objects: {}
scalars: $Extensions.GetPayloadResult<{
id: number
enabled: boolean
statusChange: boolean
latencyLimit: number
notificationTextStatus: string
@ -11846,6 +11871,7 @@ export namespace Prisma {
*/
interface ApplicationMonitoringNotificationFieldRefs {
readonly id: FieldRef<"ApplicationMonitoringNotification", 'Int'>
readonly enabled: FieldRef<"ApplicationMonitoringNotification", 'Boolean'>
readonly statusChange: FieldRef<"ApplicationMonitoringNotification", 'Boolean'>
readonly latencyLimit: FieldRef<"ApplicationMonitoringNotification", 'Float'>
readonly notificationTextStatus: FieldRef<"ApplicationMonitoringNotification", 'String'>
@ -14500,6 +14526,7 @@ export namespace Prisma {
export const ServerMonitoringNotificationScalarFieldEnum: {
id: 'id',
enabled: 'enabled',
statusChange: 'statusChange',
cpuLimit: 'cpuLimit',
gpuLimit: 'gpuLimit',
@ -14524,6 +14551,7 @@ export namespace Prisma {
export const ApplicationMonitoringNotificationScalarFieldEnum: {
id: 'id',
enabled: 'enabled',
statusChange: 'statusChange',
latencyLimit: 'latencyLimit',
notificationTextStatus: 'notificationTextStatus',
@ -15204,6 +15232,7 @@ export namespace Prisma {
OR?: ServerMonitoringNotificationWhereInput[]
NOT?: ServerMonitoringNotificationWhereInput | ServerMonitoringNotificationWhereInput[]
id?: IntFilter<"ServerMonitoringNotification"> | number
enabled?: BoolFilter<"ServerMonitoringNotification"> | boolean
statusChange?: BoolFilter<"ServerMonitoringNotification"> | boolean
cpuLimit?: FloatFilter<"ServerMonitoringNotification"> | number
gpuLimit?: FloatFilter<"ServerMonitoringNotification"> | number
@ -15225,6 +15254,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationOrderByWithRelationInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
cpuLimit?: SortOrder
gpuLimit?: SortOrder
@ -15249,6 +15279,7 @@ export namespace Prisma {
AND?: ServerMonitoringNotificationWhereInput | ServerMonitoringNotificationWhereInput[]
OR?: ServerMonitoringNotificationWhereInput[]
NOT?: ServerMonitoringNotificationWhereInput | ServerMonitoringNotificationWhereInput[]
enabled?: BoolFilter<"ServerMonitoringNotification"> | boolean
statusChange?: BoolFilter<"ServerMonitoringNotification"> | boolean
cpuLimit?: FloatFilter<"ServerMonitoringNotification"> | number
gpuLimit?: FloatFilter<"ServerMonitoringNotification"> | number
@ -15270,6 +15301,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationOrderByWithAggregationInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
cpuLimit?: SortOrder
gpuLimit?: SortOrder
@ -15299,6 +15331,7 @@ export namespace Prisma {
OR?: ServerMonitoringNotificationScalarWhereWithAggregatesInput[]
NOT?: ServerMonitoringNotificationScalarWhereWithAggregatesInput | ServerMonitoringNotificationScalarWhereWithAggregatesInput[]
id?: IntWithAggregatesFilter<"ServerMonitoringNotification"> | number
enabled?: BoolWithAggregatesFilter<"ServerMonitoringNotification"> | boolean
statusChange?: BoolWithAggregatesFilter<"ServerMonitoringNotification"> | boolean
cpuLimit?: FloatWithAggregatesFilter<"ServerMonitoringNotification"> | number
gpuLimit?: FloatWithAggregatesFilter<"ServerMonitoringNotification"> | number
@ -15323,6 +15356,7 @@ export namespace Prisma {
OR?: ApplicationMonitoringNotificationWhereInput[]
NOT?: ApplicationMonitoringNotificationWhereInput | ApplicationMonitoringNotificationWhereInput[]
id?: IntFilter<"ApplicationMonitoringNotification"> | number
enabled?: BoolFilter<"ApplicationMonitoringNotification"> | boolean
statusChange?: BoolFilter<"ApplicationMonitoringNotification"> | boolean
latencyLimit?: FloatFilter<"ApplicationMonitoringNotification"> | number
notificationTextStatus?: StringFilter<"ApplicationMonitoringNotification"> | string
@ -15332,6 +15366,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationOrderByWithRelationInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
latencyLimit?: SortOrder
notificationTextStatus?: SortOrder
@ -15344,6 +15379,7 @@ export namespace Prisma {
AND?: ApplicationMonitoringNotificationWhereInput | ApplicationMonitoringNotificationWhereInput[]
OR?: ApplicationMonitoringNotificationWhereInput[]
NOT?: ApplicationMonitoringNotificationWhereInput | ApplicationMonitoringNotificationWhereInput[]
enabled?: BoolFilter<"ApplicationMonitoringNotification"> | boolean
statusChange?: BoolFilter<"ApplicationMonitoringNotification"> | boolean
latencyLimit?: FloatFilter<"ApplicationMonitoringNotification"> | number
notificationTextStatus?: StringFilter<"ApplicationMonitoringNotification"> | string
@ -15353,6 +15389,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationOrderByWithAggregationInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
latencyLimit?: SortOrder
notificationTextStatus?: SortOrder
@ -15370,6 +15407,7 @@ export namespace Prisma {
OR?: ApplicationMonitoringNotificationScalarWhereWithAggregatesInput[]
NOT?: ApplicationMonitoringNotificationScalarWhereWithAggregatesInput | ApplicationMonitoringNotificationScalarWhereWithAggregatesInput[]
id?: IntWithAggregatesFilter<"ApplicationMonitoringNotification"> | number
enabled?: BoolWithAggregatesFilter<"ApplicationMonitoringNotification"> | boolean
statusChange?: BoolWithAggregatesFilter<"ApplicationMonitoringNotification"> | boolean
latencyLimit?: FloatWithAggregatesFilter<"ApplicationMonitoringNotification"> | number
notificationTextStatus?: StringWithAggregatesFilter<"ApplicationMonitoringNotification"> | string
@ -16011,6 +16049,7 @@ export namespace Prisma {
}
export type ServerMonitoringNotificationCreateInput = {
enabled?: boolean
statusChange: boolean
cpuLimit: number
gpuLimit: number
@ -16032,6 +16071,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationUncheckedCreateInput = {
id?: number
enabled?: boolean
statusChange: boolean
cpuLimit: number
gpuLimit: number
@ -16052,6 +16092,7 @@ export namespace Prisma {
}
export type ServerMonitoringNotificationUpdateInput = {
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
cpuLimit?: FloatFieldUpdateOperationsInput | number
gpuLimit?: FloatFieldUpdateOperationsInput | number
@ -16073,6 +16114,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationUncheckedUpdateInput = {
id?: IntFieldUpdateOperationsInput | number
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
cpuLimit?: FloatFieldUpdateOperationsInput | number
gpuLimit?: FloatFieldUpdateOperationsInput | number
@ -16094,6 +16136,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationCreateManyInput = {
id?: number
enabled?: boolean
statusChange: boolean
cpuLimit: number
gpuLimit: number
@ -16114,6 +16157,7 @@ export namespace Prisma {
}
export type ServerMonitoringNotificationUpdateManyMutationInput = {
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
cpuLimit?: FloatFieldUpdateOperationsInput | number
gpuLimit?: FloatFieldUpdateOperationsInput | number
@ -16135,6 +16179,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationUncheckedUpdateManyInput = {
id?: IntFieldUpdateOperationsInput | number
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
cpuLimit?: FloatFieldUpdateOperationsInput | number
gpuLimit?: FloatFieldUpdateOperationsInput | number
@ -16155,6 +16200,7 @@ export namespace Prisma {
}
export type ApplicationMonitoringNotificationCreateInput = {
enabled?: boolean
statusChange: boolean
latencyLimit: number
notificationTextStatus: string
@ -16164,6 +16210,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationUncheckedCreateInput = {
id?: number
enabled?: boolean
statusChange: boolean
latencyLimit: number
notificationTextStatus: string
@ -16172,6 +16219,7 @@ export namespace Prisma {
}
export type ApplicationMonitoringNotificationUpdateInput = {
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
latencyLimit?: FloatFieldUpdateOperationsInput | number
notificationTextStatus?: StringFieldUpdateOperationsInput | string
@ -16181,6 +16229,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationUncheckedUpdateInput = {
id?: IntFieldUpdateOperationsInput | number
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
latencyLimit?: FloatFieldUpdateOperationsInput | number
notificationTextStatus?: StringFieldUpdateOperationsInput | string
@ -16190,6 +16239,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationCreateManyInput = {
id?: number
enabled?: boolean
statusChange: boolean
latencyLimit: number
notificationTextStatus: string
@ -16198,6 +16248,7 @@ export namespace Prisma {
}
export type ApplicationMonitoringNotificationUpdateManyMutationInput = {
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
latencyLimit?: FloatFieldUpdateOperationsInput | number
notificationTextStatus?: StringFieldUpdateOperationsInput | string
@ -16207,6 +16258,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationUncheckedUpdateManyInput = {
id?: IntFieldUpdateOperationsInput | number
enabled?: BoolFieldUpdateOperationsInput | boolean
statusChange?: BoolFieldUpdateOperationsInput | boolean
latencyLimit?: FloatFieldUpdateOperationsInput | number
notificationTextStatus?: StringFieldUpdateOperationsInput | string
@ -16873,6 +16925,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationCountOrderByAggregateInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
cpuLimit?: SortOrder
gpuLimit?: SortOrder
@ -16903,6 +16956,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationMaxOrderByAggregateInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
cpuLimit?: SortOrder
gpuLimit?: SortOrder
@ -16924,6 +16978,7 @@ export namespace Prisma {
export type ServerMonitoringNotificationMinOrderByAggregateInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
cpuLimit?: SortOrder
gpuLimit?: SortOrder
@ -16954,6 +17009,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationCountOrderByAggregateInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
latencyLimit?: SortOrder
notificationTextStatus?: SortOrder
@ -16968,6 +17024,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationMaxOrderByAggregateInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
latencyLimit?: SortOrder
notificationTextStatus?: SortOrder
@ -16977,6 +17034,7 @@ export namespace Prisma {
export type ApplicationMonitoringNotificationMinOrderByAggregateInput = {
id?: SortOrder
enabled?: SortOrder
statusChange?: SortOrder
latencyLimit?: SortOrder
notificationTextStatus?: SortOrder

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,5 @@
{
"name": "prisma-client-52e4968f48cbb793854bc8e714c5b303338856d538203e7dea8fac926820a4d3",
"name": "prisma-client-64aff5cfd2cd1523f0bb1f03af9aeb274dcb23e50868aec227bc1494fa5a7d27",
"main": "index.js",
"types": "index.d.ts",
"browser": "index-browser.js",

View File

@ -120,6 +120,7 @@ model ApplicationMonitoring {
model ServerMonitoringNotification {
id Int @id @default(autoincrement())
enabled Boolean @default(false)
statusChange Boolean
cpuLimit Float
gpuLimit Float
@ -143,6 +144,7 @@ model ServerMonitoringNotification {
model ApplicationMonitoringNotification {
id Int @id @default(autoincrement())
enabled Boolean @default(false)
statusChange Boolean
latencyLimit Float
notificationTextStatus String

View File

@ -198,6 +198,7 @@ exports.Prisma.ApplicationMonitoringScalarFieldEnum = {
exports.Prisma.ServerMonitoringNotificationScalarFieldEnum = {
id: 'id',
enabled: 'enabled',
statusChange: 'statusChange',
cpuLimit: 'cpuLimit',
gpuLimit: 'gpuLimit',
@ -219,6 +220,7 @@ exports.Prisma.ServerMonitoringNotificationScalarFieldEnum = {
exports.Prisma.ApplicationMonitoringNotificationScalarFieldEnum = {
id: 'id',
enabled: 'enabled',
statusChange: 'statusChange',
latencyLimit: 'latencyLimit',
notificationTextStatus: 'notificationTextStatus',

View File

@ -0,0 +1,5 @@
-- AlterTable
ALTER TABLE "application_monitoring_notifications" ADD COLUMN "enabled" BOOLEAN NOT NULL DEFAULT false;
-- AlterTable
ALTER TABLE "server_monitoring_notifications" ADD COLUMN "enabled" BOOLEAN NOT NULL DEFAULT false;

View File

@ -122,6 +122,7 @@ model ApplicationMonitoring {
model ServerMonitoringNotification {
id Int @id @default(autoincrement())
enabled Boolean @default(false)
statusChange Boolean
cpuLimit Float
gpuLimit Float
@ -145,6 +146,7 @@ model ServerMonitoringNotification {
model ApplicationMonitoringNotification {
id Int @id @default(autoincrement())
enabled Boolean @default(false)
statusChange Boolean
latencyLimit Float
notificationTextStatus String