mirror of
https://github.com/crocofied/CoreControl.git
synced 2025-12-17 15:36:50 +00:00
Applications need a Server
This commit is contained in:
parent
0506731a12
commit
43b7b3b270
@ -2,6 +2,7 @@ import { NextResponse, NextRequest } from "next/server";
|
|||||||
import { PrismaClient } from '@/lib/generated/prisma'
|
import { PrismaClient } from '@/lib/generated/prisma'
|
||||||
|
|
||||||
interface AddRequest {
|
interface AddRequest {
|
||||||
|
serverId: number;
|
||||||
name: string;
|
name: string;
|
||||||
description: string;
|
description: string;
|
||||||
icon: string;
|
icon: string;
|
||||||
@ -14,10 +15,11 @@ const prisma = new PrismaClient();
|
|||||||
export async function POST(request: NextRequest) {
|
export async function POST(request: NextRequest) {
|
||||||
try {
|
try {
|
||||||
const body: AddRequest = await request.json();
|
const body: AddRequest = await request.json();
|
||||||
const { name, description, icon, publicURL, localURL } = body;
|
const { serverId, name, description, icon, publicURL, localURL } = body;
|
||||||
|
|
||||||
const application = await prisma.application.create({
|
const application = await prisma.application.create({
|
||||||
data: {
|
data: {
|
||||||
|
serverId,
|
||||||
name,
|
name,
|
||||||
description,
|
description,
|
||||||
icon,
|
icon,
|
||||||
|
|||||||
@ -19,11 +19,29 @@ export async function POST(request: NextRequest) {
|
|||||||
orderBy: { name: 'asc' }
|
orderBy: { name: 'asc' }
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const serverIds = applications
|
||||||
|
.map(app => app.serverId)
|
||||||
|
.filter((id): id is number => id !== null);
|
||||||
|
|
||||||
|
const servers = await prisma.server.findMany({
|
||||||
|
where: {
|
||||||
|
id: {
|
||||||
|
in: serverIds
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const applicationsWithServers = applications.map(app => ({
|
||||||
|
...app,
|
||||||
|
server: servers.find(s => s.id === app.serverId)?.name || 'No server'
|
||||||
|
}));
|
||||||
|
|
||||||
const totalCount = await prisma.application.count();
|
const totalCount = await prisma.application.count();
|
||||||
const maxPage = Math.ceil(totalCount / ITEMS_PER_PAGE);
|
const maxPage = Math.ceil(totalCount / ITEMS_PER_PAGE);
|
||||||
|
|
||||||
return NextResponse.json({
|
return NextResponse.json({
|
||||||
applications,
|
applications: applicationsWithServers,
|
||||||
|
servers,
|
||||||
maxPage
|
maxPage
|
||||||
});
|
});
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import { AppSidebar } from "@/components/app-sidebar"
|
import { AppSidebar } from "@/components/app-sidebar";
|
||||||
import {
|
import {
|
||||||
Breadcrumb,
|
Breadcrumb,
|
||||||
BreadcrumbItem,
|
BreadcrumbItem,
|
||||||
@ -8,15 +8,15 @@ import {
|
|||||||
BreadcrumbList,
|
BreadcrumbList,
|
||||||
BreadcrumbPage,
|
BreadcrumbPage,
|
||||||
BreadcrumbSeparator,
|
BreadcrumbSeparator,
|
||||||
} from "@/components/ui/breadcrumb"
|
} from "@/components/ui/breadcrumb";
|
||||||
import { Separator } from "@/components/ui/separator"
|
import { Separator } from "@/components/ui/separator";
|
||||||
import {
|
import {
|
||||||
SidebarInset,
|
SidebarInset,
|
||||||
SidebarProvider,
|
SidebarProvider,
|
||||||
SidebarTrigger,
|
SidebarTrigger,
|
||||||
} from "@/components/ui/sidebar"
|
} from "@/components/ui/sidebar";
|
||||||
import { Button } from "@/components/ui/button"
|
import { Button } from "@/components/ui/button";
|
||||||
import { Plus, Link, Home, Trash2 } from "lucide-react" // Importiere Icons
|
import { Plus, Link, Home, Trash2 } from "lucide-react";
|
||||||
import {
|
import {
|
||||||
Card,
|
Card,
|
||||||
CardContent,
|
CardContent,
|
||||||
@ -24,7 +24,7 @@ import {
|
|||||||
CardFooter,
|
CardFooter,
|
||||||
CardHeader,
|
CardHeader,
|
||||||
CardTitle,
|
CardTitle,
|
||||||
} from "@/components/ui/card"
|
} from "@/components/ui/card";
|
||||||
import {
|
import {
|
||||||
Pagination,
|
Pagination,
|
||||||
PaginationContent,
|
PaginationContent,
|
||||||
@ -33,7 +33,7 @@ import {
|
|||||||
PaginationLink,
|
PaginationLink,
|
||||||
PaginationNext,
|
PaginationNext,
|
||||||
PaginationPrevious,
|
PaginationPrevious,
|
||||||
} from "@/components/ui/pagination"
|
} from "@/components/ui/pagination";
|
||||||
import {
|
import {
|
||||||
AlertDialog,
|
AlertDialog,
|
||||||
AlertDialogAction,
|
AlertDialogAction,
|
||||||
@ -44,10 +44,17 @@ import {
|
|||||||
AlertDialogHeader,
|
AlertDialogHeader,
|
||||||
AlertDialogTitle,
|
AlertDialogTitle,
|
||||||
AlertDialogTrigger,
|
AlertDialogTrigger,
|
||||||
} from "@/components/ui/alert-dialog"
|
} from "@/components/ui/alert-dialog";
|
||||||
import { Input } from "@/components/ui/input"
|
import { Input } from "@/components/ui/input";
|
||||||
import { Label } from "@/components/ui/label"
|
import { Label } from "@/components/ui/label";
|
||||||
import { Textarea } from "@/components/ui/textarea"
|
import { Textarea } from "@/components/ui/textarea";
|
||||||
|
import {
|
||||||
|
Select,
|
||||||
|
SelectContent,
|
||||||
|
SelectItem,
|
||||||
|
SelectTrigger,
|
||||||
|
SelectValue,
|
||||||
|
} from "@/components/ui/select";
|
||||||
|
|
||||||
import { useState, useEffect } from "react";
|
import { useState, useEffect } from "react";
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
@ -58,14 +65,22 @@ export default function Dashboard() {
|
|||||||
const [icon, setIcon] = useState("");
|
const [icon, setIcon] = useState("");
|
||||||
const [publicURL, setPublicURL] = useState("");
|
const [publicURL, setPublicURL] = useState("");
|
||||||
const [localURL, setLocalURL] = useState("");
|
const [localURL, setLocalURL] = useState("");
|
||||||
|
const [serverId, setServerId] = useState<number | null>(null);
|
||||||
const [currentPage, setCurrentPage] = useState(1);
|
const [currentPage, setCurrentPage] = useState(1);
|
||||||
const [maxPage, setMaxPage] = useState(1);
|
const [maxPage, setMaxPage] = useState(1);
|
||||||
const [applications, setApplications] = useState([]);
|
const [applications, setApplications] = useState([]);
|
||||||
|
const [servers, setServers] = useState([]);
|
||||||
|
|
||||||
const add = async () => {
|
const add = async () => {
|
||||||
try {
|
try {
|
||||||
const response = await axios.post('/api/applications/add', { name, description, icon, publicURL, localURL });
|
await axios.post('/api/applications/add', {
|
||||||
|
name,
|
||||||
|
description,
|
||||||
|
icon,
|
||||||
|
publicURL,
|
||||||
|
localURL,
|
||||||
|
serverId
|
||||||
|
});
|
||||||
getApplications();
|
getApplications();
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
console.log(error.response.data);
|
console.log(error.response.data);
|
||||||
@ -76,6 +91,7 @@ export default function Dashboard() {
|
|||||||
try {
|
try {
|
||||||
const response = await axios.post('/api/applications/get', { page: currentPage });
|
const response = await axios.post('/api/applications/get', { page: currentPage });
|
||||||
setApplications(response.data.applications);
|
setApplications(response.data.applications);
|
||||||
|
setServers(response.data.servers);
|
||||||
setMaxPage(response.data.maxPage);
|
setMaxPage(response.data.maxPage);
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
console.log(error.response);
|
console.log(error.response);
|
||||||
@ -86,13 +102,8 @@ export default function Dashboard() {
|
|||||||
getApplications();
|
getApplications();
|
||||||
}, [currentPage]);
|
}, [currentPage]);
|
||||||
|
|
||||||
const handlePrevious = () => {
|
const handlePrevious = () => setCurrentPage(prev => Math.max(1, prev - 1));
|
||||||
setCurrentPage(prev => Math.max(1, prev - 1));
|
const handleNext = () => setCurrentPage(prev => Math.min(maxPage, prev + 1));
|
||||||
}
|
|
||||||
|
|
||||||
const handleNext = () => {
|
|
||||||
setCurrentPage(prev => Math.min(maxPage, prev + 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
const deleteApplication = async (id: number) => {
|
const deleteApplication = async (id: number) => {
|
||||||
try {
|
try {
|
||||||
@ -129,48 +140,69 @@ export default function Dashboard() {
|
|||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<div className="pl-4 pr-4">
|
<div className="pl-4 pr-4">
|
||||||
<div className="flex justify-between">
|
<div className="flex justify-between items-center">
|
||||||
<span className="text-2xl font-semibold">Your Applications</span>
|
<span className="text-2xl font-semibold">Your Applications</span>
|
||||||
<AlertDialog>
|
{servers.length === 0 ? (
|
||||||
<AlertDialogTrigger asChild>
|
<p className="text-muted-foreground">You must first add a server.</p>
|
||||||
<Button variant="outline" size="icon">
|
) : (
|
||||||
<Plus />
|
<AlertDialog>
|
||||||
</Button>
|
<AlertDialogTrigger asChild>
|
||||||
</AlertDialogTrigger>
|
<Button variant="outline" size="icon">
|
||||||
<AlertDialogContent>
|
<Plus />
|
||||||
<AlertDialogHeader>
|
</Button>
|
||||||
<AlertDialogTitle>Add an application</AlertDialogTitle>
|
</AlertDialogTrigger>
|
||||||
<AlertDialogDescription>
|
<AlertDialogContent>
|
||||||
<div className="space-y-4 pt-4">
|
<AlertDialogHeader>
|
||||||
<div className="grid w-full items-center gap-1.5">
|
<AlertDialogTitle>Add an application</AlertDialogTitle>
|
||||||
<Label htmlFor="name">Name</Label>
|
<AlertDialogDescription>
|
||||||
<Input id="name" type="text" placeholder="e.g. Portainer" onChange={(e) => setName(e.target.value)}/>
|
<div className="space-y-4 pt-4">
|
||||||
|
<div className="grid w-full items-center gap-1.5">
|
||||||
|
<Label>Name</Label>
|
||||||
|
<Input placeholder="e.g. Portainer" onChange={(e) => setName(e.target.value)}/>
|
||||||
|
</div>
|
||||||
|
<div className="grid w-full items-center gap-1.5">
|
||||||
|
<Label>Server</Label>
|
||||||
|
<Select onValueChange={(v) => setServerId(Number(v))} required>
|
||||||
|
<SelectTrigger className="w-full">
|
||||||
|
<SelectValue placeholder="Select server" />
|
||||||
|
</SelectTrigger>
|
||||||
|
<SelectContent>
|
||||||
|
{servers.map((server) => (
|
||||||
|
<SelectItem key={server.id} value={String(server.id)}>
|
||||||
|
{server.name}
|
||||||
|
</SelectItem>
|
||||||
|
))}
|
||||||
|
</SelectContent>
|
||||||
|
</Select>
|
||||||
|
</div>
|
||||||
|
<div className="grid w-full items-center gap-1.5">
|
||||||
|
<Label>Description <span className="text-stone-600">(optional)</span></Label>
|
||||||
|
<Textarea placeholder="Application description" onChange={(e) => setDescription(e.target.value)}/>
|
||||||
|
</div>
|
||||||
|
<div className="grid w-full items-center gap-1.5">
|
||||||
|
<Label>Icon URL <span className="text-stone-600">(optional)</span></Label>
|
||||||
|
<Input placeholder="https://example.com/icon.png" onChange={(e) => setIcon(e.target.value)}/>
|
||||||
|
</div>
|
||||||
|
<div className="grid w-full items-center gap-1.5">
|
||||||
|
<Label>Public URL</Label>
|
||||||
|
<Input placeholder="https://example.com" onChange={(e) => setPublicURL(e.target.value)}/>
|
||||||
|
</div>
|
||||||
|
<div className="grid w-full items-center gap-1.5">
|
||||||
|
<Label>Local URL <span className="text-stone-600">(optional)</span></Label>
|
||||||
|
<Input placeholder="http://localhost:3000" onChange={(e) => setLocalURL(e.target.value)}/>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="grid w-full items-center gap-1.5">
|
</AlertDialogDescription>
|
||||||
<Label htmlFor="description">Description <span className="text-stone-600">(optional)</span></Label>
|
</AlertDialogHeader>
|
||||||
<Textarea id="description" placeholder="e.g. Portainer is a self-hosted, open-source platform for managing Docker containers." onChange={(e) => setDescription(e.target.value)}/>
|
<AlertDialogFooter>
|
||||||
</div>
|
<AlertDialogCancel>Cancel</AlertDialogCancel>
|
||||||
<div className="grid w-full items-center gap-1.5">
|
<Button onClick={add} disabled={!name || !publicURL || !serverId}>
|
||||||
<Label htmlFor="icon">Icon</Label>
|
Add
|
||||||
<Input id="icon" type="text" placeholder="e.g. https://www.portainer.io/hubfs/portainer-logo-black.svg" onChange={(e) => setIcon(e.target.value)}/>
|
</Button>
|
||||||
</div>
|
</AlertDialogFooter>
|
||||||
<div className="grid w-full items-center gap-1.5">
|
</AlertDialogContent>
|
||||||
<Label htmlFor="publicURL">Public URL</Label>
|
</AlertDialog>
|
||||||
<Input id="publicURL" type="text" placeholder="e.g. https://portainer.lastname.com" onChange={(e) => setPublicURL(e.target.value)}/>
|
)}
|
||||||
</div>
|
|
||||||
<div className="grid w-full items-center gap-1.5">
|
|
||||||
<Label htmlFor="localURL">Local URL <span className="text-stone-600">(optional)</span></Label>
|
|
||||||
<Input id="localURL" type="text" placeholder="e.g. http://localhost:3000" onChange={(e) => setLocalURL(e.target.value)}/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</AlertDialogDescription>
|
|
||||||
</AlertDialogHeader>
|
|
||||||
<AlertDialogFooter>
|
|
||||||
<AlertDialogCancel>Cancel</AlertDialogCancel>
|
|
||||||
<Button onClick={add}>Add</Button>
|
|
||||||
</AlertDialogFooter>
|
|
||||||
</AlertDialogContent>
|
|
||||||
</AlertDialog>
|
|
||||||
</div>
|
</div>
|
||||||
<br />
|
<br />
|
||||||
{applications.map((app) => (
|
{applications.map((app) => (
|
||||||
@ -187,7 +219,10 @@ export default function Dashboard() {
|
|||||||
</div>
|
</div>
|
||||||
<div className="ml-4">
|
<div className="ml-4">
|
||||||
<CardTitle className="text-2xl font-bold">{app.name}</CardTitle>
|
<CardTitle className="text-2xl font-bold">{app.name}</CardTitle>
|
||||||
<CardDescription className="text-md">{app.description}</CardDescription>
|
<CardDescription className="text-md">
|
||||||
|
{app.description}<br />
|
||||||
|
Server: {app.server || 'No server'}
|
||||||
|
</CardDescription>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex flex-col items-end justify-start space-y-2 w-[270px]">
|
<div className="flex flex-col items-end justify-start space-y-2 w-[270px]">
|
||||||
@ -227,30 +262,28 @@ export default function Dashboard() {
|
|||||||
</Card>
|
</Card>
|
||||||
))}
|
))}
|
||||||
<div className="pt-4">
|
<div className="pt-4">
|
||||||
<Pagination>
|
<Pagination>
|
||||||
<PaginationContent>
|
<PaginationContent>
|
||||||
<PaginationItem>
|
<PaginationItem>
|
||||||
<PaginationPrevious
|
<PaginationPrevious
|
||||||
href="#"
|
href="#"
|
||||||
onClick={handlePrevious}
|
onClick={handlePrevious}
|
||||||
isActive={currentPage > 1}
|
isActive={currentPage > 1}
|
||||||
/>
|
/>
|
||||||
</PaginationItem>
|
</PaginationItem>
|
||||||
|
<PaginationItem>
|
||||||
<PaginationItem>
|
<PaginationLink isActive>{currentPage}</PaginationLink>
|
||||||
<PaginationLink isActive>{currentPage}</PaginationLink>
|
</PaginationItem>
|
||||||
</PaginationItem>
|
<PaginationItem>
|
||||||
|
<PaginationNext
|
||||||
<PaginationItem>
|
href="#"
|
||||||
<PaginationNext
|
onClick={handleNext}
|
||||||
href="#"
|
isActive={currentPage < maxPage}
|
||||||
onClick={handleNext}
|
/>
|
||||||
isActive={currentPage < maxPage}
|
</PaginationItem>
|
||||||
/>
|
</PaginationContent>
|
||||||
</PaginationItem>
|
</Pagination>
|
||||||
</PaginationContent>
|
</div>
|
||||||
</Pagination>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</SidebarInset>
|
</SidebarInset>
|
||||||
</SidebarProvider>
|
</SidebarProvider>
|
||||||
|
|||||||
@ -91,6 +91,7 @@ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
|||||||
|
|
||||||
exports.Prisma.ApplicationScalarFieldEnum = {
|
exports.Prisma.ApplicationScalarFieldEnum = {
|
||||||
id: 'id',
|
id: 'id',
|
||||||
|
serverId: 'serverId',
|
||||||
name: 'name',
|
name: 'name',
|
||||||
description: 'description',
|
description: 'description',
|
||||||
icon: 'icon',
|
icon: 'icon',
|
||||||
@ -174,13 +175,13 @@ const config = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\n// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?\n// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../lib/generated/prisma\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"DATABASE_URL\")\n}\n\nmodel application {\n id Int @id @default(autoincrement())\n name String\n description String?\n icon String\n publicURL String\n localURL String?\n createdAt DateTime @default(now())\n}\n\nmodel server {\n id Int @id @default(autoincrement())\n name String\n os String?\n ip String?\n url String?\n}\n",
|
"inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\n// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?\n// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../lib/generated/prisma\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"DATABASE_URL\")\n}\n\nmodel application {\n id Int @id @default(autoincrement())\n serverId Int @default(1)\n name String\n description String?\n icon String\n publicURL String\n localURL String?\n createdAt DateTime @default(now())\n}\n\nmodel server {\n id Int @id @default(autoincrement())\n name String\n os String?\n ip String?\n url String?\n}\n",
|
||||||
"inlineSchemaHash": "ddf72260e19ee586841a252bd3c8cf4f117ce15f0dc9aef0f129fd5d226787c0",
|
"inlineSchemaHash": "f689d07c314e551dbb544b300c2eaf202c8b2a3439248ed3dbdc3eb508f94dc1",
|
||||||
"copyEngine": true
|
"copyEngine": true
|
||||||
}
|
}
|
||||||
config.dirname = '/'
|
config.dirname = '/'
|
||||||
|
|
||||||
config.runtimeDataModel = JSON.parse("{\"models\":{\"application\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"icon\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"publicURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"localURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"server\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"os\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"ip\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"url\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}")
|
config.runtimeDataModel = JSON.parse("{\"models\":{\"application\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"serverId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":1,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"icon\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"publicURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"localURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"server\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"os\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"ip\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"url\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}")
|
||||||
defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
|
defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
|
||||||
config.engineWasm = undefined
|
config.engineWasm = undefined
|
||||||
config.compilerWasm = undefined
|
config.compilerWasm = undefined
|
||||||
|
|||||||
@ -119,6 +119,7 @@ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
|||||||
|
|
||||||
exports.Prisma.ApplicationScalarFieldEnum = {
|
exports.Prisma.ApplicationScalarFieldEnum = {
|
||||||
id: 'id',
|
id: 'id',
|
||||||
|
serverId: 'serverId',
|
||||||
name: 'name',
|
name: 'name',
|
||||||
description: 'description',
|
description: 'description',
|
||||||
icon: 'icon',
|
icon: 'icon',
|
||||||
|
|||||||
53
lib/generated/prisma/index.d.ts
vendored
53
lib/generated/prisma/index.d.ts
vendored
@ -974,14 +974,17 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type ApplicationAvgAggregateOutputType = {
|
export type ApplicationAvgAggregateOutputType = {
|
||||||
id: number | null
|
id: number | null
|
||||||
|
serverId: number | null
|
||||||
}
|
}
|
||||||
|
|
||||||
export type ApplicationSumAggregateOutputType = {
|
export type ApplicationSumAggregateOutputType = {
|
||||||
id: number | null
|
id: number | null
|
||||||
|
serverId: number | null
|
||||||
}
|
}
|
||||||
|
|
||||||
export type ApplicationMinAggregateOutputType = {
|
export type ApplicationMinAggregateOutputType = {
|
||||||
id: number | null
|
id: number | null
|
||||||
|
serverId: number | null
|
||||||
name: string | null
|
name: string | null
|
||||||
description: string | null
|
description: string | null
|
||||||
icon: string | null
|
icon: string | null
|
||||||
@ -992,6 +995,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type ApplicationMaxAggregateOutputType = {
|
export type ApplicationMaxAggregateOutputType = {
|
||||||
id: number | null
|
id: number | null
|
||||||
|
serverId: number | null
|
||||||
name: string | null
|
name: string | null
|
||||||
description: string | null
|
description: string | null
|
||||||
icon: string | null
|
icon: string | null
|
||||||
@ -1002,6 +1006,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type ApplicationCountAggregateOutputType = {
|
export type ApplicationCountAggregateOutputType = {
|
||||||
id: number
|
id: number
|
||||||
|
serverId: number
|
||||||
name: number
|
name: number
|
||||||
description: number
|
description: number
|
||||||
icon: number
|
icon: number
|
||||||
@ -1014,14 +1019,17 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type ApplicationAvgAggregateInputType = {
|
export type ApplicationAvgAggregateInputType = {
|
||||||
id?: true
|
id?: true
|
||||||
|
serverId?: true
|
||||||
}
|
}
|
||||||
|
|
||||||
export type ApplicationSumAggregateInputType = {
|
export type ApplicationSumAggregateInputType = {
|
||||||
id?: true
|
id?: true
|
||||||
|
serverId?: true
|
||||||
}
|
}
|
||||||
|
|
||||||
export type ApplicationMinAggregateInputType = {
|
export type ApplicationMinAggregateInputType = {
|
||||||
id?: true
|
id?: true
|
||||||
|
serverId?: true
|
||||||
name?: true
|
name?: true
|
||||||
description?: true
|
description?: true
|
||||||
icon?: true
|
icon?: true
|
||||||
@ -1032,6 +1040,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type ApplicationMaxAggregateInputType = {
|
export type ApplicationMaxAggregateInputType = {
|
||||||
id?: true
|
id?: true
|
||||||
|
serverId?: true
|
||||||
name?: true
|
name?: true
|
||||||
description?: true
|
description?: true
|
||||||
icon?: true
|
icon?: true
|
||||||
@ -1042,6 +1051,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type ApplicationCountAggregateInputType = {
|
export type ApplicationCountAggregateInputType = {
|
||||||
id?: true
|
id?: true
|
||||||
|
serverId?: true
|
||||||
name?: true
|
name?: true
|
||||||
description?: true
|
description?: true
|
||||||
icon?: true
|
icon?: true
|
||||||
@ -1139,6 +1149,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type ApplicationGroupByOutputType = {
|
export type ApplicationGroupByOutputType = {
|
||||||
id: number
|
id: number
|
||||||
|
serverId: number
|
||||||
name: string
|
name: string
|
||||||
description: string | null
|
description: string | null
|
||||||
icon: string
|
icon: string
|
||||||
@ -1168,6 +1179,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
|
export type applicationSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
|
||||||
id?: boolean
|
id?: boolean
|
||||||
|
serverId?: boolean
|
||||||
name?: boolean
|
name?: boolean
|
||||||
description?: boolean
|
description?: boolean
|
||||||
icon?: boolean
|
icon?: boolean
|
||||||
@ -1178,6 +1190,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
|
export type applicationSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
|
||||||
id?: boolean
|
id?: boolean
|
||||||
|
serverId?: boolean
|
||||||
name?: boolean
|
name?: boolean
|
||||||
description?: boolean
|
description?: boolean
|
||||||
icon?: boolean
|
icon?: boolean
|
||||||
@ -1188,6 +1201,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
|
export type applicationSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
|
||||||
id?: boolean
|
id?: boolean
|
||||||
|
serverId?: boolean
|
||||||
name?: boolean
|
name?: boolean
|
||||||
description?: boolean
|
description?: boolean
|
||||||
icon?: boolean
|
icon?: boolean
|
||||||
@ -1198,6 +1212,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationSelectScalar = {
|
export type applicationSelectScalar = {
|
||||||
id?: boolean
|
id?: boolean
|
||||||
|
serverId?: boolean
|
||||||
name?: boolean
|
name?: boolean
|
||||||
description?: boolean
|
description?: boolean
|
||||||
icon?: boolean
|
icon?: boolean
|
||||||
@ -1206,13 +1221,14 @@ export namespace Prisma {
|
|||||||
createdAt?: boolean
|
createdAt?: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
export type applicationOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "name" | "description" | "icon" | "publicURL" | "localURL" | "createdAt", ExtArgs["result"]["application"]>
|
export type applicationOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "serverId" | "name" | "description" | "icon" | "publicURL" | "localURL" | "createdAt", ExtArgs["result"]["application"]>
|
||||||
|
|
||||||
export type $applicationPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
|
export type $applicationPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
|
||||||
name: "application"
|
name: "application"
|
||||||
objects: {}
|
objects: {}
|
||||||
scalars: $Extensions.GetPayloadResult<{
|
scalars: $Extensions.GetPayloadResult<{
|
||||||
id: number
|
id: number
|
||||||
|
serverId: number
|
||||||
name: string
|
name: string
|
||||||
description: string | null
|
description: string | null
|
||||||
icon: string
|
icon: string
|
||||||
@ -1643,6 +1659,7 @@ export namespace Prisma {
|
|||||||
*/
|
*/
|
||||||
interface applicationFieldRefs {
|
interface applicationFieldRefs {
|
||||||
readonly id: FieldRef<"application", 'Int'>
|
readonly id: FieldRef<"application", 'Int'>
|
||||||
|
readonly serverId: FieldRef<"application", 'Int'>
|
||||||
readonly name: FieldRef<"application", 'String'>
|
readonly name: FieldRef<"application", 'String'>
|
||||||
readonly description: FieldRef<"application", 'String'>
|
readonly description: FieldRef<"application", 'String'>
|
||||||
readonly icon: FieldRef<"application", 'String'>
|
readonly icon: FieldRef<"application", 'String'>
|
||||||
@ -3060,6 +3077,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export const ApplicationScalarFieldEnum: {
|
export const ApplicationScalarFieldEnum: {
|
||||||
id: 'id',
|
id: 'id',
|
||||||
|
serverId: 'serverId',
|
||||||
name: 'name',
|
name: 'name',
|
||||||
description: 'description',
|
description: 'description',
|
||||||
icon: 'icon',
|
icon: 'icon',
|
||||||
@ -3175,6 +3193,7 @@ export namespace Prisma {
|
|||||||
OR?: applicationWhereInput[]
|
OR?: applicationWhereInput[]
|
||||||
NOT?: applicationWhereInput | applicationWhereInput[]
|
NOT?: applicationWhereInput | applicationWhereInput[]
|
||||||
id?: IntFilter<"application"> | number
|
id?: IntFilter<"application"> | number
|
||||||
|
serverId?: IntFilter<"application"> | number
|
||||||
name?: StringFilter<"application"> | string
|
name?: StringFilter<"application"> | string
|
||||||
description?: StringNullableFilter<"application"> | string | null
|
description?: StringNullableFilter<"application"> | string | null
|
||||||
icon?: StringFilter<"application"> | string
|
icon?: StringFilter<"application"> | string
|
||||||
@ -3185,6 +3204,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationOrderByWithRelationInput = {
|
export type applicationOrderByWithRelationInput = {
|
||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
|
serverId?: SortOrder
|
||||||
name?: SortOrder
|
name?: SortOrder
|
||||||
description?: SortOrderInput | SortOrder
|
description?: SortOrderInput | SortOrder
|
||||||
icon?: SortOrder
|
icon?: SortOrder
|
||||||
@ -3198,6 +3218,7 @@ export namespace Prisma {
|
|||||||
AND?: applicationWhereInput | applicationWhereInput[]
|
AND?: applicationWhereInput | applicationWhereInput[]
|
||||||
OR?: applicationWhereInput[]
|
OR?: applicationWhereInput[]
|
||||||
NOT?: applicationWhereInput | applicationWhereInput[]
|
NOT?: applicationWhereInput | applicationWhereInput[]
|
||||||
|
serverId?: IntFilter<"application"> | number
|
||||||
name?: StringFilter<"application"> | string
|
name?: StringFilter<"application"> | string
|
||||||
description?: StringNullableFilter<"application"> | string | null
|
description?: StringNullableFilter<"application"> | string | null
|
||||||
icon?: StringFilter<"application"> | string
|
icon?: StringFilter<"application"> | string
|
||||||
@ -3208,6 +3229,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationOrderByWithAggregationInput = {
|
export type applicationOrderByWithAggregationInput = {
|
||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
|
serverId?: SortOrder
|
||||||
name?: SortOrder
|
name?: SortOrder
|
||||||
description?: SortOrderInput | SortOrder
|
description?: SortOrderInput | SortOrder
|
||||||
icon?: SortOrder
|
icon?: SortOrder
|
||||||
@ -3226,6 +3248,7 @@ export namespace Prisma {
|
|||||||
OR?: applicationScalarWhereWithAggregatesInput[]
|
OR?: applicationScalarWhereWithAggregatesInput[]
|
||||||
NOT?: applicationScalarWhereWithAggregatesInput | applicationScalarWhereWithAggregatesInput[]
|
NOT?: applicationScalarWhereWithAggregatesInput | applicationScalarWhereWithAggregatesInput[]
|
||||||
id?: IntWithAggregatesFilter<"application"> | number
|
id?: IntWithAggregatesFilter<"application"> | number
|
||||||
|
serverId?: IntWithAggregatesFilter<"application"> | number
|
||||||
name?: StringWithAggregatesFilter<"application"> | string
|
name?: StringWithAggregatesFilter<"application"> | string
|
||||||
description?: StringNullableWithAggregatesFilter<"application"> | string | null
|
description?: StringNullableWithAggregatesFilter<"application"> | string | null
|
||||||
icon?: StringWithAggregatesFilter<"application"> | string
|
icon?: StringWithAggregatesFilter<"application"> | string
|
||||||
@ -3289,6 +3312,7 @@ export namespace Prisma {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export type applicationCreateInput = {
|
export type applicationCreateInput = {
|
||||||
|
serverId?: number
|
||||||
name: string
|
name: string
|
||||||
description?: string | null
|
description?: string | null
|
||||||
icon: string
|
icon: string
|
||||||
@ -3299,6 +3323,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationUncheckedCreateInput = {
|
export type applicationUncheckedCreateInput = {
|
||||||
id?: number
|
id?: number
|
||||||
|
serverId?: number
|
||||||
name: string
|
name: string
|
||||||
description?: string | null
|
description?: string | null
|
||||||
icon: string
|
icon: string
|
||||||
@ -3308,6 +3333,7 @@ export namespace Prisma {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export type applicationUpdateInput = {
|
export type applicationUpdateInput = {
|
||||||
|
serverId?: IntFieldUpdateOperationsInput | number
|
||||||
name?: StringFieldUpdateOperationsInput | string
|
name?: StringFieldUpdateOperationsInput | string
|
||||||
description?: NullableStringFieldUpdateOperationsInput | string | null
|
description?: NullableStringFieldUpdateOperationsInput | string | null
|
||||||
icon?: StringFieldUpdateOperationsInput | string
|
icon?: StringFieldUpdateOperationsInput | string
|
||||||
@ -3318,6 +3344,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationUncheckedUpdateInput = {
|
export type applicationUncheckedUpdateInput = {
|
||||||
id?: IntFieldUpdateOperationsInput | number
|
id?: IntFieldUpdateOperationsInput | number
|
||||||
|
serverId?: IntFieldUpdateOperationsInput | number
|
||||||
name?: StringFieldUpdateOperationsInput | string
|
name?: StringFieldUpdateOperationsInput | string
|
||||||
description?: NullableStringFieldUpdateOperationsInput | string | null
|
description?: NullableStringFieldUpdateOperationsInput | string | null
|
||||||
icon?: StringFieldUpdateOperationsInput | string
|
icon?: StringFieldUpdateOperationsInput | string
|
||||||
@ -3328,6 +3355,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationCreateManyInput = {
|
export type applicationCreateManyInput = {
|
||||||
id?: number
|
id?: number
|
||||||
|
serverId?: number
|
||||||
name: string
|
name: string
|
||||||
description?: string | null
|
description?: string | null
|
||||||
icon: string
|
icon: string
|
||||||
@ -3337,6 +3365,7 @@ export namespace Prisma {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export type applicationUpdateManyMutationInput = {
|
export type applicationUpdateManyMutationInput = {
|
||||||
|
serverId?: IntFieldUpdateOperationsInput | number
|
||||||
name?: StringFieldUpdateOperationsInput | string
|
name?: StringFieldUpdateOperationsInput | string
|
||||||
description?: NullableStringFieldUpdateOperationsInput | string | null
|
description?: NullableStringFieldUpdateOperationsInput | string | null
|
||||||
icon?: StringFieldUpdateOperationsInput | string
|
icon?: StringFieldUpdateOperationsInput | string
|
||||||
@ -3347,6 +3376,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationUncheckedUpdateManyInput = {
|
export type applicationUncheckedUpdateManyInput = {
|
||||||
id?: IntFieldUpdateOperationsInput | number
|
id?: IntFieldUpdateOperationsInput | number
|
||||||
|
serverId?: IntFieldUpdateOperationsInput | number
|
||||||
name?: StringFieldUpdateOperationsInput | string
|
name?: StringFieldUpdateOperationsInput | string
|
||||||
description?: NullableStringFieldUpdateOperationsInput | string | null
|
description?: NullableStringFieldUpdateOperationsInput | string | null
|
||||||
icon?: StringFieldUpdateOperationsInput | string
|
icon?: StringFieldUpdateOperationsInput | string
|
||||||
@ -3467,6 +3497,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationCountOrderByAggregateInput = {
|
export type applicationCountOrderByAggregateInput = {
|
||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
|
serverId?: SortOrder
|
||||||
name?: SortOrder
|
name?: SortOrder
|
||||||
description?: SortOrder
|
description?: SortOrder
|
||||||
icon?: SortOrder
|
icon?: SortOrder
|
||||||
@ -3477,10 +3508,12 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationAvgOrderByAggregateInput = {
|
export type applicationAvgOrderByAggregateInput = {
|
||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
|
serverId?: SortOrder
|
||||||
}
|
}
|
||||||
|
|
||||||
export type applicationMaxOrderByAggregateInput = {
|
export type applicationMaxOrderByAggregateInput = {
|
||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
|
serverId?: SortOrder
|
||||||
name?: SortOrder
|
name?: SortOrder
|
||||||
description?: SortOrder
|
description?: SortOrder
|
||||||
icon?: SortOrder
|
icon?: SortOrder
|
||||||
@ -3491,6 +3524,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationMinOrderByAggregateInput = {
|
export type applicationMinOrderByAggregateInput = {
|
||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
|
serverId?: SortOrder
|
||||||
name?: SortOrder
|
name?: SortOrder
|
||||||
description?: SortOrder
|
description?: SortOrder
|
||||||
icon?: SortOrder
|
icon?: SortOrder
|
||||||
@ -3501,6 +3535,7 @@ export namespace Prisma {
|
|||||||
|
|
||||||
export type applicationSumOrderByAggregateInput = {
|
export type applicationSumOrderByAggregateInput = {
|
||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
|
serverId?: SortOrder
|
||||||
}
|
}
|
||||||
|
|
||||||
export type IntWithAggregatesFilter<$PrismaModel = never> = {
|
export type IntWithAggregatesFilter<$PrismaModel = never> = {
|
||||||
@ -3601,6 +3636,14 @@ export namespace Prisma {
|
|||||||
id?: SortOrder
|
id?: SortOrder
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export type IntFieldUpdateOperationsInput = {
|
||||||
|
set?: number
|
||||||
|
increment?: number
|
||||||
|
decrement?: number
|
||||||
|
multiply?: number
|
||||||
|
divide?: number
|
||||||
|
}
|
||||||
|
|
||||||
export type StringFieldUpdateOperationsInput = {
|
export type StringFieldUpdateOperationsInput = {
|
||||||
set?: string
|
set?: string
|
||||||
}
|
}
|
||||||
@ -3613,14 +3656,6 @@ export namespace Prisma {
|
|||||||
set?: Date | string
|
set?: Date | string
|
||||||
}
|
}
|
||||||
|
|
||||||
export type IntFieldUpdateOperationsInput = {
|
|
||||||
set?: number
|
|
||||||
increment?: number
|
|
||||||
decrement?: number
|
|
||||||
multiply?: number
|
|
||||||
divide?: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export type NestedIntFilter<$PrismaModel = never> = {
|
export type NestedIntFilter<$PrismaModel = never> = {
|
||||||
equals?: number | IntFieldRefInput<$PrismaModel>
|
equals?: number | IntFieldRefInput<$PrismaModel>
|
||||||
in?: number[] | ListIntFieldRefInput<$PrismaModel>
|
in?: number[] | ListIntFieldRefInput<$PrismaModel>
|
||||||
|
|||||||
@ -92,6 +92,7 @@ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
|||||||
|
|
||||||
exports.Prisma.ApplicationScalarFieldEnum = {
|
exports.Prisma.ApplicationScalarFieldEnum = {
|
||||||
id: 'id',
|
id: 'id',
|
||||||
|
serverId: 'serverId',
|
||||||
name: 'name',
|
name: 'name',
|
||||||
description: 'description',
|
description: 'description',
|
||||||
icon: 'icon',
|
icon: 'icon',
|
||||||
@ -175,8 +176,8 @@ const config = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\n// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?\n// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../lib/generated/prisma\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"DATABASE_URL\")\n}\n\nmodel application {\n id Int @id @default(autoincrement())\n name String\n description String?\n icon String\n publicURL String\n localURL String?\n createdAt DateTime @default(now())\n}\n\nmodel server {\n id Int @id @default(autoincrement())\n name String\n os String?\n ip String?\n url String?\n}\n",
|
"inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\n// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?\n// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../lib/generated/prisma\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"DATABASE_URL\")\n}\n\nmodel application {\n id Int @id @default(autoincrement())\n serverId Int @default(1)\n name String\n description String?\n icon String\n publicURL String\n localURL String?\n createdAt DateTime @default(now())\n}\n\nmodel server {\n id Int @id @default(autoincrement())\n name String\n os String?\n ip String?\n url String?\n}\n",
|
||||||
"inlineSchemaHash": "ddf72260e19ee586841a252bd3c8cf4f117ce15f0dc9aef0f129fd5d226787c0",
|
"inlineSchemaHash": "f689d07c314e551dbb544b300c2eaf202c8b2a3439248ed3dbdc3eb508f94dc1",
|
||||||
"copyEngine": true
|
"copyEngine": true
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -197,7 +198,7 @@ if (!fs.existsSync(path.join(__dirname, 'schema.prisma'))) {
|
|||||||
config.isBundled = true
|
config.isBundled = true
|
||||||
}
|
}
|
||||||
|
|
||||||
config.runtimeDataModel = JSON.parse("{\"models\":{\"application\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"icon\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"publicURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"localURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"server\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"os\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"ip\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"url\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}")
|
config.runtimeDataModel = JSON.parse("{\"models\":{\"application\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"serverId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":1,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"icon\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"publicURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"localURL\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"server\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"os\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"ip\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"url\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}")
|
||||||
defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
|
defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
|
||||||
config.engineWasm = undefined
|
config.engineWasm = undefined
|
||||||
config.compilerWasm = undefined
|
config.compilerWasm = undefined
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "prisma-client-07d58c262f4c41e54bcbbc55d879a689e13512206b7e87b3b603872e2010444b",
|
"name": "prisma-client-f7cc69aeb506e155eedcc5da662a564d36a835b479dc7bc47312d45e3e955ebe",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"types": "index.d.ts",
|
"types": "index.d.ts",
|
||||||
"browser": "index-browser.js",
|
"browser": "index-browser.js",
|
||||||
|
|||||||
BIN
lib/generated/prisma/query_engine-windows.dll.node.tmp16764
Normal file
BIN
lib/generated/prisma/query_engine-windows.dll.node.tmp16764
Normal file
Binary file not shown.
@ -119,6 +119,7 @@ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
|||||||
|
|
||||||
exports.Prisma.ApplicationScalarFieldEnum = {
|
exports.Prisma.ApplicationScalarFieldEnum = {
|
||||||
id: 'id',
|
id: 'id',
|
||||||
|
serverId: 'serverId',
|
||||||
name: 'name',
|
name: 'name',
|
||||||
description: 'description',
|
description: 'description',
|
||||||
icon: 'icon',
|
icon: 'icon',
|
||||||
|
|||||||
2
prisma/migrations/20250412104250_server/migration.sql
Normal file
2
prisma/migrations/20250412104250_server/migration.sql
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
-- AlterTable
|
||||||
|
ALTER TABLE "application" ADD COLUMN "serverId" INTEGER NOT NULL DEFAULT 1;
|
||||||
@ -16,6 +16,7 @@ datasource db {
|
|||||||
|
|
||||||
model application {
|
model application {
|
||||||
id Int @id @default(autoincrement())
|
id Int @id @default(autoincrement())
|
||||||
|
serverId Int @default(1)
|
||||||
name String
|
name String
|
||||||
description String?
|
description String?
|
||||||
icon String
|
icon String
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user