From 5fecba9d81e2f0fb7ccc8fba9a7584f616cf972f Mon Sep 17 00:00:00 2001 From: Lumen Keyes Date: Tue, 17 Mar 2026 15:42:15 -0600 Subject: [PATCH] Update content through Mattrbld --- .mattrbld/config.json | 30 +- .../custom-fields/all-interval-types.json | 31 ++ .mattrbld/custom-fields/every-n-interval.json | 75 ++++ .mattrbld/custom-fields/how-to-repeat.json | 329 ++++++++++++++++++ .mattrbld/custom-fields/month-or-week.json | 76 ++++ .../custom-fields/weekday-of-interval.json | 132 +++++++ .mattrbld/custom-fields/weekday.json | 57 +++ .mattrbld/schemas/event.json | 117 +++++-- 8 files changed, 805 insertions(+), 42 deletions(-) create mode 100644 .mattrbld/custom-fields/all-interval-types.json create mode 100644 .mattrbld/custom-fields/every-n-interval.json create mode 100644 .mattrbld/custom-fields/how-to-repeat.json create mode 100644 .mattrbld/custom-fields/month-or-week.json create mode 100644 .mattrbld/custom-fields/weekday-of-interval.json create mode 100644 .mattrbld/custom-fields/weekday.json diff --git a/.mattrbld/config.json b/.mattrbld/config.json index 1297a69..c3bf01f 100644 --- a/.mattrbld/config.json +++ b/.mattrbld/config.json @@ -12,6 +12,16 @@ }, "protected": true }, + { + "icon": null, + "label": "events", + "target": { + "name": "Project.Collection", + "params": { + "path": "/.mattrbld/collections/events.json" + } + } + }, { "icon": null, "label": "organizations", @@ -28,17 +38,10 @@ "target": { "name": "Project.MediaLibrary" }, - "protected": true - }, - { - "icon": null, - "label": "events", - "target": { - "name": "Project.Collection", - "params": { - "path": "/.mattrbld/collections/events.json" - } - } + "protected": true, + "limitToRoles": [ + "owner" + ] }, { "label": "Settings", @@ -47,7 +50,10 @@ "name": "Project.Settings" }, "onlyPrivileged": true, - "protected": true + "protected": true, + "limitToRoles": [ + "owner" + ] } ], "slugifyOptions": { diff --git a/.mattrbld/custom-fields/all-interval-types.json b/.mattrbld/custom-fields/all-interval-types.json new file mode 100644 index 0000000..9d7854a --- /dev/null +++ b/.mattrbld/custom-fields/all-interval-types.json @@ -0,0 +1,31 @@ +{ + "type": "select", + "description": "", + "group": "custom fields", + "icon": "group", + "key": "any-interval-type", + "label": "Interval Type", + "tab": null, + "value": null, + "version": 2, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "default": null, + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "Days", + "Weeks", + "Months" + ] + }, + "validation": { + "required": false + } +} \ No newline at end of file diff --git a/.mattrbld/custom-fields/every-n-interval.json b/.mattrbld/custom-fields/every-n-interval.json new file mode 100644 index 0000000..e630585 --- /dev/null +++ b/.mattrbld/custom-fields/every-n-interval.json @@ -0,0 +1,75 @@ +{ + "type": "container", + "description": "", + "group": "custom fields", + "icon": "group", + "key": "___mb_visual_container", + "label": "Every N Interval", + "tab": null, + "value": [ + { + "type": "number", + "default": null, + "icon": "number", + "key": "number", + "label": "Number", + "localised": false, + "validation": { + "max": null, + "min": null, + "required": false + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + }, + { + "type": "select", + "icon": "group", + "key": "___mb_visual_container", + "label": "Interval Type", + "value": null, + "version": 2, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "Days", + "Weeks", + "Months" + ] + }, + "customField": "all-interval-types.json", + "default": null, + "validation": { + "required": false + } + } + ], + "version": 5, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true +} \ No newline at end of file diff --git a/.mattrbld/custom-fields/how-to-repeat.json b/.mattrbld/custom-fields/how-to-repeat.json new file mode 100644 index 0000000..999155f --- /dev/null +++ b/.mattrbld/custom-fields/how-to-repeat.json @@ -0,0 +1,329 @@ +{ + "type": "container", + "description": "", + "group": "custom fields", + "icon": "group", + "key": "___mb_visual_container", + "label": "Repeat", + "tab": null, + "value": [ + { + "type": "toggle", + "default": null, + "icon": "toggle-on", + "key": "toggle", + "label": "Do Repeat", + "options": { + "iconLeft": null, + "iconRight": null + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + }, + { + "type": "container", + "icon": "placeholder", + "key": "___mb_visual_container", + "label": "Repeat", + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": true, + "bordered": false + }, + "value": [ + { + "type": "select", + "default": "Every", + "icon": "dropdown", + "key": "repeat-kind", + "label": "When", + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "Every", + "On" + ] + }, + "validation": { + "required": false + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + }, + { + "type": "container", + "customField": "weekday-of-interval.json", + "icon": "group", + "key": "custom-field", + "label": "Weekday of Interval", + "value": [ + { + "type": "select", + "icon": "group", + "key": "___mb_visual_container-2", + "label": "the nth", + "value": [ + { + "type": "select", + "default": "The first", + "icon": "dropdown", + "key": "select", + "label": "Dropdown", + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "The first", + "The second", + "The third", + "The fourth", + "The fifth" + ] + }, + "validation": { + "required": false + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + } + ], + "version": 6, + "visibility": { + "hidden": false, + "showByValue": { + "field": "", + "value": "matches", + "comparator": "Month" + } + }, + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "The first", + "The second", + "The third", + "The fourth", + "The fifth" + ] + }, + "customField": "the-nth.json", + "default": "The first", + "validation": { + "required": false + } + }, + { + "type": "container", + "icon": "group", + "key": "___mb_visual_container-1", + "label": "Month Or Week Interval", + "value": [ + { + "type": "heading", + "icon": "heading-spaced", + "key": "___mb_visual_heading", + "label": "Heading and Description", + "options": { + "heading": "Every", + "description": "" + }, + "version": 2, + "visibility": { + "showByValue": { + "field": null + } + }, + "visualOnly": true + }, + { + "type": "select", + "default": "Week", + "icon": "group", + "key": "month-or-week", + "label": "month or week", + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "Week", + "Month" + ] + }, + "validation": { + "required": false + }, + "value": null, + "version": 8, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "description": "", + "group": "custom fields" + } + ], + "version": 13, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true, + "customField": "month-or-week.json" + } + ], + "version": 28, + "visibility": { + "hidden": false, + "showByValue": { + "field": "repeat-kind", + "value": "matches", + "comparator": "On" + } + }, + "tab": null, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true + }, + { + "type": "container", + "icon": "group", + "key": "___mb_visual_container", + "label": "Every N Interval", + "value": [ + { + "type": "number", + "default": null, + "icon": "number", + "key": "number", + "label": "Number", + "localised": false, + "validation": { + "max": null, + "min": null, + "required": false + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + }, + { + "type": "select", + "icon": "group", + "key": "___mb_visual_container", + "label": "Interval Type", + "value": null, + "version": 2, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "Days", + "Weeks", + "Months" + ] + }, + "customField": "all-interval-types.json", + "default": null, + "validation": { + "required": false + } + } + ], + "version": 5, + "visibility": { + "hidden": false, + "showByValue": { + "field": "repeat-kind", + "value": "matches", + "comparator": "Every" + } + }, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true, + "customField": "every-n-interval.json", + "tab": null + } + ], + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": "toggle", + "value": true + } + }, + "visualOnly": true + } + ], + "version": 15, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true +} \ No newline at end of file diff --git a/.mattrbld/custom-fields/month-or-week.json b/.mattrbld/custom-fields/month-or-week.json new file mode 100644 index 0000000..fbb777c --- /dev/null +++ b/.mattrbld/custom-fields/month-or-week.json @@ -0,0 +1,76 @@ +{ + "type": "container", + "icon": "group", + "key": "___mb_visual_container", + "label": "Month Or Week Interval", + "value": [ + { + "type": "heading", + "icon": "heading-spaced", + "key": "___mb_visual_heading", + "label": "Heading and Description", + "options": { + "heading": "Every", + "description": "" + }, + "version": 2, + "visibility": { + "showByValue": { + "field": null + } + }, + "visualOnly": true + }, + { + "type": "select", + "default": "Week", + "icon": "group", + "key": "month-or-week", + "label": "month/week", + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + { + "label": "Month", + "value": "0" + }, + { + "label": "Week", + "value": "1" + } + ] + }, + "validation": { + "required": false + }, + "value": null, + "version": 8, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "description": "", + "group": "custom fields" + } + ], + "version": 15, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "description": "", + "group": "custom fields", + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true +} \ No newline at end of file diff --git a/.mattrbld/custom-fields/weekday-of-interval.json b/.mattrbld/custom-fields/weekday-of-interval.json new file mode 100644 index 0000000..9417983 --- /dev/null +++ b/.mattrbld/custom-fields/weekday-of-interval.json @@ -0,0 +1,132 @@ +{ + "type": "container", + "description": "", + "group": "custom fields", + "icon": "group", + "key": "___mb_visual_container", + "label": "Weekday of Interval", + "tab": null, + "value": [ + { + "type": "select", + "default": "The first", + "icon": "dropdown", + "key": "select-nth-weekday", + "label": "Dropdown", + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "The first", + "The second", + "The third", + "The fourth", + "The fifth" + ] + }, + "validation": { + "required": false + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": "", + "value": "equals", + "comparator": 0 + } + } + }, + { + "type": "container", + "icon": "group", + "key": "___mb_visual_container-1", + "label": "Month Or Week Interval", + "value": [ + { + "type": "heading", + "icon": "heading-spaced", + "key": "___mb_visual_heading", + "label": "Heading and Description", + "options": { + "heading": "Every", + "description": "" + }, + "version": 2, + "visibility": { + "showByValue": { + "field": null + } + }, + "visualOnly": true + }, + { + "type": "select", + "default": "Week", + "icon": "group", + "key": "month-or-week", + "label": "month/week", + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + { + "label": "Month", + "value": "0" + }, + { + "label": "Week", + "value": "1" + } + ] + }, + "validation": { + "required": false + }, + "value": null, + "version": 8, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "description": "", + "group": "custom fields" + } + ], + "version": 15, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true, + "customField": "month-or-week.json" + } + ], + "version": 32, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true +} \ No newline at end of file diff --git a/.mattrbld/custom-fields/weekday.json b/.mattrbld/custom-fields/weekday.json new file mode 100644 index 0000000..69bf7f1 --- /dev/null +++ b/.mattrbld/custom-fields/weekday.json @@ -0,0 +1,57 @@ +{ + "type": "container", + "description": "", + "group": "custom fields", + "icon": "group", + "key": "___mb_visual_container", + "label": "weekday", + "tab": null, + "value": [ + { + "type": "select", + "default": "Sunday", + "icon": "dropdown", + "key": "weekday-select", + "label": "weekday", + "options": { + "filterable": false, + "removable": false, + "placeholder": "Select a value…", + "options": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + }, + "validation": { + "required": false + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + } + ], + "version": 6, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + }, + "options": { + "collapsible": false, + "collapseByDefault": false, + "row": false, + "bordered": false + }, + "visualOnly": true +} \ No newline at end of file diff --git a/.mattrbld/schemas/event.json b/.mattrbld/schemas/event.json index 97b7269..efe2fac 100644 --- a/.mattrbld/schemas/event.json +++ b/.mattrbld/schemas/event.json @@ -4,8 +4,39 @@ "type": "date", "default": null, "icon": "calendar", - "key": "date", - "label": "Date and Time", + "key": "start-date", + "label": "Start Date/Time", + "options": { + "outputFormat": "iso", + "removable": false, + "showTime": true, + "defaultToNow": true, + "useAsUpdatedAt": false, + "only": null + }, + "tab": "Untitled Tab", + "validation": { + "max": null, + "min": null, + "required": true, + "unit": "date", + "isString": true + }, + "value": null, + "version": 2, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + }, + { + "type": "date", + "default": null, + "icon": "calendar", + "key": "end-date", + "label": "End Date/Time (optional)", "options": { "outputFormat": "iso", "removable": false, @@ -31,12 +62,65 @@ } } }, + { + "type": "reference", + "default": null, + "icon": "document-link", + "key": "reference", + "label": "Organization", + "localised": false, + "options": { + "collections": [ + "/.mattrbld/collections/organizations.json" + ], + "field": "text", + "removable": false + }, + "tab": "Untitled Tab", + "validation": { + "required": false + }, + "value": null, + "version": 2, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + }, + { + "type": "tags", + "default": null, + "icon": "tags", + "key": "tags", + "label": "Tags", + "localised": false, + "options": { + "allowUnsuggested": true, + "autocompleteModel": [] + }, + "tab": "Untitled Tab", + "validation": { + "max": null, + "min": null, + "unit": "tags" + }, + "value": null, + "version": 1, + "visibility": { + "hidden": false, + "showByValue": { + "field": null + } + } + }, { "type": "rich text", "default": null, "icon": "text", "key": "rich-text", - "label": "Rich Text", + "label": "Event Description", "localised": false, "options": { "outputFormat": "html", @@ -100,33 +184,6 @@ "field": null } } - }, - { - "type": "reference", - "default": null, - "icon": "document-link", - "key": "reference", - "label": "Content Reference", - "localised": false, - "options": { - "collections": [ - "/.mattrbld/collections/organizations.json" - ], - "field": "text", - "removable": false - }, - "tab": "Untitled Tab", - "validation": { - "required": false - }, - "value": null, - "version": 2, - "visibility": { - "hidden": false, - "showByValue": { - "field": null - } - } } ], "tabs": [