83 lines
1.8 KiB
TypeScript
83 lines
1.8 KiB
TypeScript
import sharp from 'sharp';
|
|
import { lexicalEditor } from '@payloadcms/richtext-lexical';
|
|
import { postgresAdapter } from '@payloadcms/db-postgres';
|
|
import { sqliteAdapter } from '@payloadcms/db-sqlite';
|
|
import { nodemailerAdapter } from '@payloadcms/email-nodemailer';
|
|
import { buildConfig } from 'payload';
|
|
import { de } from '@payloadcms/translations/languages/de';
|
|
import { Users } from '@/collections/Users';
|
|
import { Media } from '@/collections/Media';
|
|
import { Posts } from '@/collections/Posts';
|
|
|
|
export default buildConfig({
|
|
admin: {
|
|
user: 'users',
|
|
avatar: 'default',
|
|
meta: {
|
|
icons: [
|
|
{
|
|
rel: 'icon',
|
|
url: '/favicon.ico'
|
|
}
|
|
]
|
|
},
|
|
components: {
|
|
graphics: {
|
|
Logo: '/components/PayloadInjects#Logo',
|
|
Icon: '/components/PayloadInjects#Icon'
|
|
},
|
|
actions: [ '/components/PayloadInjects#Action' ]
|
|
},
|
|
|
|
livePreview: {
|
|
url: ({ collectionConfig, data }) => {
|
|
if (collectionConfig?.slug === 'posts')
|
|
return `${process.env.NEXT_PUBLIC_PAYLOAD_URL}/post/${data.slug}/?preview`;
|
|
|
|
return process.env.NEXT_PUBLIC_PAYLOAD_URL;
|
|
},
|
|
collections: [ 'posts' ]
|
|
}
|
|
},
|
|
|
|
i18n: {
|
|
supportedLanguages: { de }
|
|
},
|
|
|
|
editor: lexicalEditor(),
|
|
|
|
collections: [
|
|
Users,
|
|
Media,
|
|
Posts
|
|
],
|
|
|
|
secret: process.env.PAYLOAD_SECRET || '',
|
|
|
|
// db: postgresAdapter({
|
|
// pool: {
|
|
// connectionString: process.env.DATABASE_URL
|
|
// }
|
|
// }),
|
|
db: sqliteAdapter({
|
|
client: {
|
|
url: process.env.DATABASE_URL || '',
|
|
authToken: process.env.DATABASE_AUTH_TOKEN
|
|
}
|
|
}),
|
|
|
|
email: nodemailerAdapter({
|
|
defaultFromAddress: process.env.MAIL_USER ?? '',
|
|
defaultFromName: process.env.MAIL_DISPLAYNAME ?? '',
|
|
transportOptions: {
|
|
host: process.env.MAIL_HOST,
|
|
port: process.env.MAIL_PORT,
|
|
auth: {
|
|
user: process.env.MAIL_USER,
|
|
pass: process.env.MAIL_PASSWORD
|
|
}
|
|
}
|
|
}),
|
|
|
|
sharp
|
|
}); |