Merge pull request 'Sync journal date fix into CMS branch' (#11) from sync/cms-journal-date-widget into cms

Reviewed-on: SloanOps/3031023-xyz#11
This commit is contained in:
2026-09-05 02:12:09 +00:00
2 changed files with 12 additions and 6 deletions
+9 -4
View File
@@ -278,12 +278,17 @@ collections:
pattern: ['^[\s\S]{30,180}$', 'Use 30–180 characters.']
- label: Publish date
name: pubDate
widget: date
format: YYYY-MM-DD
widget: datetime
default: "{{now}}"
date_format: YYYY-MM-DD
time_format: false
picker_utc: true
- label: Updated date
name: updatedDate
widget: date
format: YYYY-MM-DD
widget: datetime
date_format: YYYY-MM-DD
time_format: false
picker_utc: true
required: false
- label: Tags
name: tags
+3 -2
View File
@@ -101,8 +101,8 @@ const expectedCollections = {
fields: {
title: { widget: 'string', pattern: ['^.{12,100}$', 'Use 12–100 characters.'] },
description: { widget: 'text', pattern: ['^[\\s\\S]{30,180}$', 'Use 30–180 characters.'] },
pubDate: { widget: 'date', format: 'YYYY-MM-DD' },
updatedDate: { widget: 'date', format: 'YYYY-MM-DD', required: false },
pubDate: { widget: 'datetime', default: '{{now}}', date_format: 'YYYY-MM-DD', time_format: false, picker_utc: true },
updatedDate: { widget: 'datetime', date_format: 'YYYY-MM-DD', time_format: false, picker_utc: true, required: false },
tags: { widget: 'list', min: 1, max: 4, field: { widget: 'string', pattern: ['^.{2,32}$', 'Use 2–32 characters.'] } },
draft: { widget: 'boolean', default: false },
body: markdownField,
@@ -153,6 +153,7 @@ for (const [fieldName, fieldContract] of Object.entries(expectedPageImageFields)
function visitField(field) {
assert(field.widget !== 'file', `General file widget is forbidden: ${field.name}.`);
assert(field.widget !== 'date', `Unsupported Decap date widget is forbidden; use a date-only datetime widget: ${field.name}.`);
if (field.fields) field.fields.forEach(visitField);
if (field.field) visitField(field.field);
}