# COMPONENETS - label: '๐Ÿ‘ท Components (Pagebuilder)' label_singular: '๐Ÿ‘ท Component' name: 'components' widget: 'list' add_to_top: true collapsed: true types: - label: '๐Ÿงพ Text Markdown' name: 'text' widget: object summary: "{{fields.text | truncate(100, '...')}} || {{fields.template}}" fields: - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateText searchFields: [title] valueField: "components/text/{{filename}}.{{extension}}" displayFields: ["components/text/{{filename}}.{{extension}}"] required: true default: "components/text/text.njk" - label: '๐ŸŒ‰ Image & Text' name: 'image' widget: object summary: "{{fields.text | truncate(100, '...')}} || {{fields.template}}" fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - { label: Image, name: image, widget: image, choose_url: false,required: false } - { label: alt, name: alt, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImage searchFields: [title] valueField: "components/image/{{filename}}.{{extension}}" displayFields: ["components/image/{{filename}}.{{extension}}"] required: true default: "components/image/image.njk" - label: '๐ŸŒ‡ ๐ŸŒ‰Image Gallery' name: 'images' widget: object summary: '{{fields.title}} || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - label: Images name: images widget: list add_to_top: true fields: - { label: Image, name: image, widget: image, choose_url: false } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImages searchFields: [title] valueField: "components/images/{{filename}}.{{extension}}" displayFields: ["components/images/{{filename}}.{{extension}}"] required: true default: "components/images/images.njk" - name: cta label: ๐Ÿ“ฃ CTA widget: object summary: "{{fields.image}} {{fields.teaser}} " fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "ctalink", name: "url", widget: "string", required: false } - { label: "cta text", name: "cta", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: false } - { label: "Image alt", name: "alt", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCta searchFields: [title] valueField: "components/cta/{{filename}}.{{extension}}" displayFields: ["components/cta/{{filename}}.{{extension}}"] required: true default: "components/cta/cta.njk" - name: testamonials label: ๐Ÿ’ฌ Testamonials widget: object summary: "{{fields.image}} {{fields.teaser}} " fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Testamonial name: testamonial widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: Image, name: image, widget: "image", required: false, choose_url: false } - { label: Person, name: person, widget: string, required: false } - { label: Person title, name: persontitle, widget: string, required: false } - { label: url, name: url, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateTestamonial searchFields: [title] valueField: "components/testamonial/{{filename}}.{{extension}}" displayFields: ["components/testamonial/{{filename}}.{{extension}}"] required: true default: "components/testamonial/testamonial.njk" - name: features label: โœ… Features widget: object summary: "{{fields.image}} {{fields.teaser}} " fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: feature name: feature widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "icon" label: "icon" widget: relation options_length: 300 collection: icons searchFields: [title] valueField: "icons/{{filename}}.{{extension}}" displayFields: ["icons/{{filename}}.{{extension}}"] required: true default: "icons/beaker.svg" hint: "All icons are located in theme/[themename]/icons - the grunn icons are https://heroicons.com/" - name: "template" label: "Template" widget: relation collection: componentTemplateFeature searchFields: [title] valueField: "components/feature/{{filename}}.{{extension}}" displayFields: ["components/feature/{{filename}}.{{extension}}"] required: true default: "components/feature/feature.njk" - name: "calendar" label: "๐Ÿ“† Calendar / Event" widget: object summary: '{{fields.date_start}} - {{fields.date_start}} || {{fields.template}}' fields: - label: "Calendar start" name: "date_start" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true required: false - label: "Calendar end" name: "date_end" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: false required: false - label: "Calendar All Day" name: "date_allday" widget: "boolean" default: false required: false - name: "template" label: "Template" widget: relation collection: componentTemplateCalendar searchFields: [title] valueField: "components/calendar/{{filename}}.{{extension}}" displayFields: ["components/calendar/{{filename}}.{{extension}}"] required: true default: "components/calendar/calendar.njk" - name: "Address" label: "๐Ÿ—บ Address" widget: object summary: '{{fields.title}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Address name: address summary: '{{fields.name}} {{fields.street}} {{fields.zip}} {{fields.country}} {{fields.website}} {{fields.email}}' widget: list add_to_top: true fields: - { label: name, name: name, widget: string, required: false } - { label: street, name: street, widget: string, required: false } - { label: zip, name: zip, widget: string, required: false } - { label: country, name: country, widget: string, required: false } - { label: Locality, name: locality, widget: string, required: false } - { label: phone, name: phone, widget: string,required: false } - { label: url, name: url, widget: string, default:"https://",required: false } - { label: email, name: email, widget: string, default:"email@domaine.com",required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateAddress searchFields: [title] valueField: "components/address/{{filename}}.{{extension}}" displayFields: ["components/address/{{filename}}.{{extension}}"] required: true default: "components/address/address.njk" - name: "download" label: "โคต๏ธ Download" widget: object summary: '{{fields.files.file }} || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Files name: files widget: list add_to_top: true fields: - { label: file, name: file, widget: file, choose_url: true } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateDownload searchFields: [title] valueField: "components/download/{{filename}}.{{extension}}" displayFields: ["components/download/{{filename}}.{{extension}}"] required: true default: "components/download/download.njk" - name: price label: ๐Ÿ’ถ Price Table widget: object summary: "{{fields.title}} {{fields.teaser}} " fields: - { label: "title", name: "title", widget: "string", required: false } - label: price name: price widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: Price, name: price, widget: string, required: false } - { label: featured, name: featured, widget: boolean, default: false, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: "url", name: "url", widget: "string", required: false } - label: elements name: elements widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: active, name: active, widget: boolean, default: true, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplatePrice searchFields: [title] valueField: "components/price/{{filename}}.{{extension}}" displayFields: ["components/price/{{filename}}.{{extension}}"] required: true default: "components/price/price.njk" - name: links label: ๐Ÿ”— Links widget: object summary: "{{fields.title}} {{fields.url}} " fields: - { label: "title", name: "title", widget: "string", required: false } - label: links name: link widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - {label: link, name: url, widget: string, default: "https://"} - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateLink searchFields: [title] valueField: "components/link/{{filename}}.{{extension}}" displayFields: ["components/link/{{filename}}.{{extension}}"] required: true default: "components/link/link.njk" - label: ' ๐Ÿ’Œ Form' name: 'form' widget: object summary: '{{fields.title}} || {{fields.template}}' fields: - { label: title, name: title, widget: string, default: 'Form Submitted', required: false } - { label: Form name, name: name, widget: string, default: 'contact', required: true, hint: "The name of the form" } - { label: action url, name: action, widget: string, default: '/submitted', required: false, hint: "Link to the url the form goes to after submit" } - label: Form elements name: elements widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true types: - label: "Input : text, tel, phone, url" name: text widget: list fields: - { label: inputtype, name: inputtype, widget: select, options: ["text", "email", "tel", "url","date"], default: text } - { label: title, name: title, widget: string, required: true } - { label: placeholder, name: placeholder, widget: string, required: false } - { label: required, name: required, widget: boolean, default: false, required: false } - label: Textarea name: textarea widget: list fields: - { label: title, name: title, widget: string, required: true, default: Message } - { label: required, name: required, widget: boolean, default: false, required: false } - label: "Options: Dropdown / Checkbox / Radio" name: options widget: list fields: - { label: title, name: title, widget: string, required: true } - { label: "Option type", name: inputtype, widget: select, options: ["Dropdown", "Radio", "Checkbox"], default: Dropdown } - { label: required, name: required, widget: boolean, default: false, required: false } - label: option name: option widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true fields: - { label: title, name: title, widget: string, required: true } - { label: "checked/selected", name: checked, widget: boolean, default: false, required: false } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateForm searchFields: [title] valueField: "components/form/{{filename}}.{{extension}}" displayFields: ["components/form/{{filename}}.{{extension}}"] required: true default: "components/form/form.njk" - label: '๐Ÿ—‚ Collection' name: 'collection' widget: object summary: '{{fields.collection}} || {{fields.template}}' fields: - name: collection label: collection widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] multiple: false hint: "Select all content with the tag" - { label: title, name: title, widget: string, default: 'Collection', required: false } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCollection searchFields: [title] valueField: "components/collection/{{filename}}.{{extension}}" displayFields: ["components/collection/{{filename}}.{{extension}}"] required: true default: "components/collection/collection.njk" - name: "pagecard" label: "๐Ÿ“‘ Cards Page" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: page label: Related Pages widget: relation collection: page searchFields: [title] valueField: "{{url}}" displayFields: ["url: {{url}} - Title: {{title}}"] required: false multiple: true - name: "template" label: "Template" widget: relation collection: componentTemplatePagecard searchFields: [title] valueField: "components/pagecard/{{filename}}.{{extension}}" displayFields: ["components/pagecard/{{filename}}.{{extension}}"] required: true default: "components/pagecard/pagecard.njk" - name: "njktemplate" label: "๐Ÿค– Nunjucks Template" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: "template" label: "Template" widget: relation collection: componentTemplateTemplates searchFields: [title] valueField: "components/templates/{{filename}}.{{extension}}" displayFields: ["components/templates/{{filename}}.{{extension}}"] required: true default: "components/templates/default.njk"