Files
payload/test/plugin-form-builder/seed/index.ts
Jarrod Flesch 0711f880ff chore!: simplify api handler (#6910)
Removes PayloadRequestWithData in favour of just PayloadRequest with
optional types for `data` and `locale`

`addDataAndFileToRequest` and `addLocalesToRequestFromData` now takes in
a single argument instead of an object

```ts
// before
await addDataAndFileToRequest({ request: req })
addLocalesToRequestFromData({ request: req })

// current
await addDataAndFileToRequest(req)
addLocalesToRequestFromData(req)
```

---------

Co-authored-by: Paul Popus <paul@nouance.io>
2024-07-02 09:47:03 -04:00

87 lines
1.7 KiB
TypeScript

import type { Payload, PayloadRequest } from 'payload'
import { formSubmissionsSlug, formsSlug, pagesSlug } from '../shared.js'
export const seed = async (payload: Payload): Promise<boolean> => {
payload.logger.info('Seeding data...')
const req = {} as PayloadRequest
try {
await payload.create({
collection: 'users',
data: {
email: 'demo@payloadcms.com',
password: 'demo',
},
req,
})
await payload.create({
collection: pagesSlug,
data: {
slug: 'home',
title: 'Home page',
},
req,
})
const { id: formID } = await payload.create({
collection: formsSlug,
data: {
confirmationMessage: [
{
type: 'paragraph',
text: 'Confirmed',
},
],
fields: [
{
name: 'name',
blockType: 'text',
label: 'Name',
required: true,
},
{
name: 'email',
blockType: 'email',
label: 'Email',
required: true,
},
],
title: 'Contact Form',
},
})
await payload.create({
collection: formSubmissionsSlug,
data: {
form: formID,
submissionData: [
{
field: 'name',
value: 'Test Submission',
},
{
field: 'email',
value: 'tester@example.com',
},
],
},
})
await payload.create({
collection: pagesSlug,
data: {
slug: 'contact',
form: formID,
title: 'Contact',
},
})
return true
} catch (err) {
console.error(err)
return false
}
}