Added general fields
All checks were successful
Build and Deploy DAVE | DMGs Site / deploy (push) Successful in 1m30s

This commit is contained in:
2025-11-12 08:53:29 +01:00
parent af7a72d174
commit 4c5c7d7e31
2 changed files with 49 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
import { fields } from '@keystatic/core';
import { createPathField } from '@/keystatic/fields/general/path';
import { createContentField } from '@/keystatic/fields/general/content';
import { createMetaField } from '@/keystatic/fields/general/meta';
export const createArticleField = (
imageSubfolder: string,
defaultPath: string = ''
) => ({
title: fields.slug({
name: {
label: 'Title',
},
}),
summary: fields.text({
label: 'Summary',
multiline: true,
}),
path: createPathField(defaultPath),
cover: fields.object({
src: fields.image({
label: 'Cover Image',
directory: `public/images/covers/${imageSubfolder}`,
publicPath: `/images/covers/${imageSubfolder}`,
}),
alt: fields.text({
label: 'Alt',
}),
caption: fields.text({
label: 'Caption',
multiline: true,
}),
showInHeader: fields.checkbox({
label: 'Show in Header',
defaultValue: false,
}),
}),
meta: createMetaField(),
content: createContentField(imageSubfolder),
});

View File

@@ -0,0 +1,8 @@
import { ComponentSchema, fields } from '@keystatic/core';
export const createPathField = (defaultValue: string): ComponentSchema =>
fields.text({
label: 'Path',
description: 'Path on Website',
defaultValue: defaultValue,
});