Skip to content

Commit bba7cf3

Browse files
authored
fix(templates): website template building error with postgres number IDs (#7281)
1 parent 1ae71a3 commit bba7cf3

File tree

10 files changed

+115
-193
lines changed

10 files changed

+115
-193
lines changed

templates/website/package.json

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,16 @@
1717
"start": "cross-env NODE_OPTIONS=--no-deprecation next start"
1818
},
1919
"dependencies": {
20-
"@payloadcms/db-mongodb": "3.0.0-beta.63",
21-
"@payloadcms/live-preview-react": "3.0.0-beta.63",
22-
"@payloadcms/next": "3.0.0-beta.63",
23-
"@payloadcms/plugin-cloud": "3.0.0-beta.63",
24-
"@payloadcms/plugin-form-builder": "3.0.0-beta.63",
25-
"@payloadcms/plugin-nested-docs": "3.0.0-beta.63",
26-
"@payloadcms/plugin-redirects": "3.0.0-beta.63",
27-
"@payloadcms/plugin-seo": "3.0.0-beta.63",
28-
"@payloadcms/richtext-lexical": "3.0.0-beta.63",
29-
"@payloadcms/ui": "3.0.0-beta.63",
20+
"@payloadcms/db-mongodb": "3.0.0-beta.67",
21+
"@payloadcms/live-preview-react": "3.0.0-beta.67",
22+
"@payloadcms/next": "3.0.0-beta.67",
23+
"@payloadcms/plugin-cloud": "3.0.0-beta.67",
24+
"@payloadcms/plugin-form-builder": "3.0.0-beta.67",
25+
"@payloadcms/plugin-nested-docs": "3.0.0-beta.67",
26+
"@payloadcms/plugin-redirects": "3.0.0-beta.67",
27+
"@payloadcms/plugin-seo": "3.0.0-beta.67",
28+
"@payloadcms/richtext-lexical": "3.0.0-beta.67",
29+
"@payloadcms/ui": "3.0.0-beta.67",
3030
"@radix-ui/react-checkbox": "^1.0.4",
3131
"@radix-ui/react-label": "^2.0.2",
3232
"@radix-ui/react-select": "^2.0.0",
@@ -40,7 +40,7 @@
4040
"lexical": "0.16.1",
4141
"lucide-react": "^0.378.0",
4242
"next": "15.0.0-canary.58",
43-
"payload": "3.0.0-beta.63",
43+
"payload": "3.0.0-beta.67",
4444
"payload-admin-bar": "^1.0.6",
4545
"prism-react-renderer": "^2.3.1",
4646
"react": "19.0.0-rc-6230622a1a-20240610",

templates/website/pnpm-lock.yaml

Lines changed: 92 additions & 172 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

templates/website/src/app/(frontend)/posts/[slug]/page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ export default async function Post({ params: { slug = '' } }) {
5252

5353
<RelatedPosts
5454
className="mt-12"
55-
docs={post.relatedPosts.filter((post) => typeof post !== 'string')}
55+
docs={post.relatedPosts.filter((post) => typeof post === 'object')}
5656
/>
5757
</div>
5858
</article>

templates/website/src/app/blocks/ArchiveBlock/index.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ export const ArchiveBlock: React.FC<
2222
const payload = await getPayloadHMR({ config: configPromise })
2323

2424
const flattenedCategories = categories.map((category) => {
25-
if (typeof category === 'string') return category
26-
else return category.id
25+
if (typeof category === 'object') return category.id
26+
else return category
2727
})
2828

2929
const fetchedPosts = await payload.find({
@@ -44,7 +44,7 @@ export const ArchiveBlock: React.FC<
4444
posts = fetchedPosts.docs
4545
} else {
4646
posts = selectedDocs.map((post) => {
47-
if (typeof post.value !== 'string') return post.value
47+
if (typeof post.value === 'object') return post.value
4848
})
4949
}
5050

templates/website/src/app/components/Link/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ type CMSLinkType = {
1313
newTab?: boolean
1414
reference?: {
1515
relationTo: 'pages' | 'posts'
16-
value: Page | Post | string
16+
value: Page | Post | string | number
1717
}
1818
size?: ButtonProps['size']
1919
type?: 'custom' | 'reference'

templates/website/src/app/components/Media/ImageMedia/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export const ImageMedia: React.FC<MediaProps> = (props) => {
3232
let alt = altFromProps
3333
let src: StaticImageData | string = srcFromProps || ''
3434

35-
if (!src && resource && typeof resource !== 'string') {
35+
if (!src && resource && typeof resource === 'object') {
3636
const {
3737
alt: altFromResource,
3838
filename: fullFilename,

templates/website/src/app/components/Media/VideoMedia/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ export const VideoMedia: React.FC<MediaProps> = (props) => {
2121
}
2222
}, [])
2323

24-
if (resource && typeof resource !== 'string') {
24+
if (resource && typeof resource === 'object') {
2525
const { filename } = resource
2626

2727
return (

templates/website/src/app/components/Media/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { VideoMedia } from './VideoMedia'
88
export const Media: React.FC<Props> = (props) => {
99
const { className, htmlElement = 'div', resource } = props
1010

11-
const isVideo = typeof resource !== 'string' && resource?.mimeType?.includes('video')
11+
const isVideo = typeof resource === 'object' && resource?.mimeType?.includes('video')
1212
const Tag = (htmlElement as any) || Fragment
1313

1414
return (

templates/website/src/app/components/Media/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export interface Props {
1313
onLoad?: () => void
1414
priority?: boolean // for NextImage only
1515
ref?: Ref<HTMLImageElement | HTMLVideoElement | null>
16-
resource?: MediaType | string // for Payload media
16+
resource?: MediaType | string | number // for Payload media
1717
size?: string // for NextImage only
1818
src?: StaticImageData // for static media
1919
videoClassName?: string

templates/website/src/app/components/PayloadRedirects/index.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ export const PayloadRedirects: React.FC<Props> = async ({ disableNotFound, url }
3535
}`
3636
} else {
3737
redirectUrl = `${redirectItem.to?.reference?.relationTo !== 'pages' ? `/${redirectItem.to?.reference?.relationTo}` : ''}/${
38-
redirectItem.to?.reference?.value?.slug
38+
typeof redirectItem.to?.reference?.value === 'object'
39+
? redirectItem.to?.reference?.value?.slug
40+
: ''
3941
}`
4042
}
4143

0 commit comments

Comments
 (0)