Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
48 lines
1 KiB
TypeScript
48 lines
1 KiB
TypeScript
import { CollectionConfig } from "payload";
|
|
import { requirePermission } from "@/utils/access-control/hasPermission";
|
|
|
|
export const CustomMinefieldScores: CollectionConfig = {
|
|
slug: "custom-minefield-scores",
|
|
admin: {
|
|
group: "Minigames",
|
|
defaultColumns: ["minefield", "user", "seconds", "won", "createdAt"],
|
|
},
|
|
access: {
|
|
read: ({ req }) => !!req.user,
|
|
create: ({ req }) => !!req.user,
|
|
update: () => false,
|
|
delete: requirePermission("custom-minefield-scores:delete"),
|
|
},
|
|
fields: [
|
|
{
|
|
name: "minefield",
|
|
type: "relationship",
|
|
relationTo: "custom-minefields",
|
|
required: true,
|
|
index: true,
|
|
},
|
|
{
|
|
name: "user",
|
|
type: "relationship",
|
|
relationTo: "users",
|
|
required: true,
|
|
index: true,
|
|
},
|
|
{
|
|
name: "seconds",
|
|
type: "number",
|
|
required: true,
|
|
},
|
|
{
|
|
name: "flags",
|
|
type: "number",
|
|
defaultValue: 0,
|
|
},
|
|
{
|
|
name: "won",
|
|
type: "checkbox",
|
|
required: true,
|
|
},
|
|
],
|
|
timestamps: true,
|
|
};
|