From 65b711827f084bd538f10fc73f66b999e8f83e97 Mon Sep 17 00:00:00 2001 From: Jim Birch Date: Thu, 28 Dec 2023 16:48:30 -0500 Subject: [PATCH] Init commit --- composer.json | 30 +++++++ config/editor.editor.full_html.yml | 81 +++++++++++++++++++ config/filter.format.full_html.yml | 74 +++++++++++++++++ ...linkit.linkit_profile.saplings_default.yml | 20 +++++ config/user.role.administrator.yml | 8 ++ config/user.role.content_editor.yml | 8 ++ recipe.yml | 25 ++++++ 7 files changed, 246 insertions(+) create mode 100644 composer.json create mode 100644 config/editor.editor.full_html.yml create mode 100644 config/filter.format.full_html.yml create mode 100644 config/linkit.linkit_profile.saplings_default.yml create mode 100644 config/user.role.administrator.yml create mode 100644 config/user.role.content_editor.yml create mode 100644 recipe.yml diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..1cf5065 --- /dev/null +++ b/composer.json @@ -0,0 +1,30 @@ +{ + "name": "kanopi/saplings-editorial", + "description": "Configures a rich editing experience for modern Drupal.", + "type": "drupal-recipe", + "license": "GPL-2.0-or-later", + "authors": [ + { + "name": "Jim Birch", + "homepage": "https://kanopi.com", + "role": "Maintainer" + } + ], + "require": { + "drupal/access_unpublished": "^1.5", + "drupal/allowed_formats": "^3.0", + "drupal/editor_advanced_link": "^2.0", + "drupal/field_group": "^3.1", + "drupal/linkit": "^6.1", + "drupal/nomarkup": "^1.0", + "drupal/quick_node_clone": "^1.16", + "drupal/responsive_tables_filter": "^1.18", + "drupal/view_unpublished": "^1.1" + }, + "suggest": { + "kanopi/gin-admin-experience": "A simple Drupal Recipe for installing and configuring the Gin admin theme and supporting base modules.", + "kanopi/saplings-base": "Simple base configuration for modern Drupal.", + "kanopi/saplings-media": "Configures media defaults for modern Drupal.", + "kanopi/saplings-launch": "Configures best practices for launching modern Drupal." + } +} diff --git a/config/editor.editor.full_html.yml b/config/editor.editor.full_html.yml new file mode 100644 index 0000000..87fcf17 --- /dev/null +++ b/config/editor.editor.full_html.yml @@ -0,0 +1,81 @@ +langcode: en +status: true +dependencies: + config: + - filter.format.full_html + module: + - ckeditor5 +format: full_html +editor: ckeditor5 +settings: + toolbar: + items: + - undo + - redo + - heading + - style + - bold + - underline + - italic + - strikethrough + - code + - subscript + - superscript + - blockQuote + - link + - indent + - outdent + - bulletedList + - numberedList + - alignment + - removeFormat + - insertTable + - drupalMedia + - sourceEditing + plugins: + ckeditor5_alignment: + enabled_alignments: + - center + - justify + - left + - right + ckeditor5_heading: + enabled_headings: + - heading2 + - heading3 + - heading4 + - heading5 + - heading6 + ckeditor5_list: + reversed: true + startIndex: true + ckeditor5_sourceEditing: + allowed_tags: { } + ckeditor5_style: + styles: + - + label: 'Primary Button' + element: '' + - + label: 'Secondary Button' + element: '' + - + label: Blockquote + element: '
' + - + label: 'Blockquote Author' + element: '

' + - + label: Aside + element: '

' + editor_advanced_link_link: + enabled_attributes: + - class + - target + - title + linkit_extension: + linkit_enabled: true + linkit_profile: bp_default + media_media: + allow_view_mode_override: true +image_upload: { } diff --git a/config/filter.format.full_html.yml b/config/filter.format.full_html.yml new file mode 100644 index 0000000..c03a955 --- /dev/null +++ b/config/filter.format.full_html.yml @@ -0,0 +1,74 @@ +langcode: en +status: true +dependencies: + module: + - editor +name: 'Full HTML' +format: full_html +weight: 0 +filters: + filter_url: + id: filter_url + provider: filter + status: true + weight: 0 + settings: + filter_url_length: 72 + filter_html: + id: filter_html + provider: filter + status: true + weight: -10 + settings: + allowed_html: '

    1. ' + filter_html_help: true + filter_html_nofollow: false + linkit: + id: linkit + provider: linkit + status: true + weight: 0 + settings: + title: true + filter_html_image_secure: + id: filter_html_image_secure + provider: filter + status: true + weight: 9 + settings: { } + filter_image_lazy_load: + id: filter_image_lazy_load + provider: filter + status: true + weight: 15 + settings: { } + filter_align: + id: filter_align + provider: filter + status: true + weight: 0 + settings: { } + filter_autop: + id: filter_autop + provider: filter + status: true + weight: 0 + settings: { } + media_embed: + id: media_embed + provider: media + status: true + weight: 100 + settings: + default_view_mode: default + allowed_view_modes: + default: default + allowed_media_types: { } + filter_responsive_tables_filter: + id: filter_responsive_tables_filter + provider: responsive_tables_filter + status: true + weight: 0 + settings: + tablesaw_type: stack + tablesaw_persist: '1' diff --git a/config/linkit.linkit_profile.saplings_default.yml b/config/linkit.linkit_profile.saplings_default.yml new file mode 100644 index 0000000..a35ea65 --- /dev/null +++ b/config/linkit.linkit_profile.saplings_default.yml @@ -0,0 +1,20 @@ +langcode: en +status: true +dependencies: + module: + - node +label: Saplings Linkit default +id: saplings_default +description: 'A default Linkit profile' +matchers: + 9e9c3670-8480-4b0f-aaf6-bdecf4a36ed7: + id: 'entity:node' + uuid: 9e9c3670-8480-4b0f-aaf6-bdecf4a36ed7 + settings: + metadata: '[node:content-type:name] #[node:nid] | [node:created:medium] by [node:author]' + bundles: { } + group_by_bundle: false + include_unpublished: false + substitution_type: canonical + limit: 100 + weight: 0 diff --git a/config/user.role.administrator.yml b/config/user.role.administrator.yml new file mode 100644 index 0000000..af2231d --- /dev/null +++ b/config/user.role.administrator.yml @@ -0,0 +1,8 @@ +langcode: en +status: true +dependencies: { } +id: administrator +label: Administrator +weight: 10 +is_admin: true +permissions: { } diff --git a/config/user.role.content_editor.yml b/config/user.role.content_editor.yml new file mode 100644 index 0000000..885c328 --- /dev/null +++ b/config/user.role.content_editor.yml @@ -0,0 +1,8 @@ +langcode: en +status: true +dependencies: { } +id: content_editor +label: 'Content Editor' +weight: 5 +is_admin: null +permissions: { } diff --git a/recipe.yml b/recipe.yml new file mode 100644 index 0000000..9df8874 --- /dev/null +++ b/recipe.yml @@ -0,0 +1,25 @@ +name: 'Saplings - Editorial' +description: 'Configures a rich editing experience for modern Drupal.' +type: 'Site' +install: + # Core. + - ckeditor5 + - editor + - media + - node + # Contrib. + - access_unpublished + - allowed_formats + - editor_advanced_link + - field_group + - linkit + - nomarkup + - quick_node_clone + - responsive_tables_filter + - view_unpublished +config: + import: + access_unpublished: '*' + linkit: '*' + quick_node_clone: '*' + responsive_tables_filter: '*'