Explorar o código

editor role, admin menu, operations admin page

bach hai 1 ano
pai
achega
9389dcfd9c

+ 1 - 0
composer.json

@@ -18,6 +18,7 @@
         "composer/installers": "^2.0",
         "drupal/address": "^1.12",
         "drupal/advanced_email_validation": "^1.1",
+        "drupal/amswap": "^3.2",
         "drupal/config_pages": "^2.15",
         "drupal/content_as_config": "^1.0",
         "drupal/core-composer-scaffold": "^10.1",

+ 53 - 1
composer.lock

@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "ae52207c0580112eec7a01ad7b214aeb",
+    "content-hash": "f3783bee40de6bd346f434abe5d4872b",
     "packages": [
         {
             "name": "asm89/stack-cors",
@@ -1947,6 +1947,58 @@
                 "source": "https://git.drupalcode.org/project/advanced_text_formatter"
             }
         },
+        {
+            "name": "drupal/amswap",
+            "version": "3.2.1",
+            "source": {
+                "type": "git",
+                "url": "https://git.drupalcode.org/project/amswap.git",
+                "reference": "3.2.1"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://ftp.drupal.org/files/projects/amswap-3.2.1.zip",
+                "reference": "3.2.1",
+                "shasum": "6fdfb96eb3a000d6b01e9d72071ad736f2e81889"
+            },
+            "require": {
+                "drupal/core": "^8 || ^9 || ^10"
+            },
+            "type": "drupal-module",
+            "extra": {
+                "drupal": {
+                    "version": "3.2.1",
+                    "datestamp": "1680451461",
+                    "security-coverage": {
+                        "status": "not-covered",
+                        "message": "Project has not opted into security advisory coverage!"
+                    }
+                }
+            },
+            "notification-url": "https://packages.drupal.org/8/downloads",
+            "license": [
+                "GPL-2.0-or-later"
+            ],
+            "authors": [
+                {
+                    "name": "cedewey",
+                    "homepage": "https://www.drupal.org/user/38694"
+                },
+                {
+                    "name": "droces",
+                    "homepage": "https://www.drupal.org/user/2996575"
+                }
+            ],
+            "description": "Allows the administration menu to be customised per user role.",
+            "homepage": "https://www.drupal.org/project/amswap",
+            "keywords": [
+                "Drupal"
+            ],
+            "support": {
+                "source": "http://cgit.drupalcode.org/amswap",
+                "issues": "https://www.drupal.org/project/issues/amswap"
+            }
+        },
         {
             "name": "drupal/audiofield",
             "version": "1.13.0",

+ 7 - 0
config/sync/amswap.amswapconfig.yml

@@ -0,0 +1,7 @@
+_core:
+  default_config_hash: vaRIb4e_4378IzQXF4dy-aSEAZ4O3D9iC7LW89rHPSw
+langcode: fr
+role_menu_pairs:
+  -
+    role: editor
+    menu: editor

+ 90 - 0
config/sync/content_as_config.menu_link_content.yml

@@ -34,3 +34,93 @@
   expanded: '0'
   weight: '0'
   langcode: fr
+39762042-305d-41ee-9024-f357eb247b35:
+  uuid: 39762042-305d-41ee-9024-f357eb247b35
+  menu_name: editor
+  title: Content
+  parent: ''
+  link:
+    -
+      uri: 'internal:/admin/content'
+      title: ''
+      options:
+        attributes:
+          class:
+            - ''
+  description: ''
+  enabled: '1'
+  expanded: '0'
+  weight: '0'
+  langcode: fr
+37a113fe-1380-413e-a3f6-c7dc32f9e34d:
+  uuid: 37a113fe-1380-413e-a3f6-c7dc32f9e34d
+  menu_name: editor
+  title: Contacts
+  parent: 'menu_link_content:39762042-305d-41ee-9024-f357eb247b35'
+  link:
+    -
+      uri: 'internal:/edit/contacts'
+      title: ''
+      options:
+        attributes:
+          class:
+            - ''
+  description: ''
+  enabled: '1'
+  expanded: '0'
+  weight: '-50'
+  langcode: fr
+7ef5d280-649a-4fc8-b236-72b990a5eb96:
+  uuid: 7ef5d280-649a-4fc8-b236-72b990a5eb96
+  menu_name: editor
+  title: 'Mentions légales'
+  parent: 'menu_link_content:39762042-305d-41ee-9024-f357eb247b35'
+  link:
+    -
+      uri: 'internal:/edit/mentions_legales'
+      title: ''
+      options:
+        attributes:
+          class:
+            - ''
+  description: ''
+  enabled: '1'
+  expanded: '0'
+  weight: '-49'
+  langcode: fr
+fcd1be17-0d1d-4c68-b59d-14b81d984c38:
+  uuid: fcd1be17-0d1d-4c68-b59d-14b81d984c38
+  menu_name: editor
+  title: Partenaires
+  parent: 'menu_link_content:39762042-305d-41ee-9024-f357eb247b35'
+  link:
+    -
+      uri: 'internal:/edit/partenaires'
+      title: ''
+      options:
+        attributes:
+          class:
+            - ''
+  description: ''
+  enabled: '1'
+  expanded: '0'
+  weight: '-48'
+  langcode: fr
+bf5bcb0d-04a1-44b1-87ed-52d097dd542e:
+  uuid: bf5bcb0d-04a1-44b1-87ed-52d097dd542e
+  menu_name: editor
+  title: Opérations
+  parent: ''
+  link:
+    -
+      uri: 'internal:/admin/content/operations'
+      title: ''
+      options:
+        attributes:
+          class:
+            - ''
+  description: ''
+  enabled: '1'
+  expanded: '0'
+  weight: '1'
+  langcode: fr

+ 54 - 0
config/sync/core.entity_view_display.node.operation.compact.yml

@@ -0,0 +1,54 @@
+uuid: b388162a-cc39-4bc2-a741-db925dbd3413
+langcode: fr
+status: true
+dependencies:
+  config:
+    - core.entity_view_mode.node.compact
+    - field.field.node.operation.field_adresse
+    - field.field.node.operation.field_commentaire
+    - field.field.node.operation.field_dossier_de_candidature
+    - field.field.node.operation.field_fiche_candidature
+    - node.type.operation
+  module:
+    - address
+    - file
+    - user
+id: node.operation.compact
+targetEntityType: node
+bundle: operation
+mode: compact
+content:
+  field_adresse:
+    type: address_plain
+    label: inline
+    settings: {  }
+    third_party_settings: {  }
+    weight: 0
+    region: content
+  field_commentaire:
+    type: basic_string
+    label: inline
+    settings: {  }
+    third_party_settings: {  }
+    weight: 1
+    region: content
+  field_dossier_de_candidature:
+    type: file_default
+    label: inline
+    settings:
+      use_description_as_link_text: true
+    third_party_settings: {  }
+    weight: 3
+    region: content
+  field_fiche_candidature:
+    type: file_default
+    label: inline
+    settings:
+      use_description_as_link_text: true
+    third_party_settings: {  }
+    weight: 2
+    region: content
+hidden:
+  langcode: true
+  links: true
+  search_api_excerpt: true

+ 63 - 0
config/sync/core.entity_view_display.user.user.compact.yml

@@ -0,0 +1,63 @@
+uuid: 8bb92d73-25a6-4d50-a74b-c877ede470a3
+langcode: fr
+status: true
+dependencies:
+  config:
+    - core.entity_view_mode.user.compact
+    - field.field.user.user.field_nom
+    - field.field.user.user.field_prenom
+    - field.field.user.user.field_qualite
+    - field.field.user.user.field_structure
+    - field.field.user.user.field_telephone
+  module:
+    - phone_number
+    - user
+id: user.user.compact
+targetEntityType: user
+bundle: user
+mode: compact
+content:
+  field_nom:
+    type: string
+    label: inline
+    settings:
+      link_to_entity: false
+    third_party_settings: {  }
+    weight: 0
+    region: content
+  field_prenom:
+    type: string
+    label: inline
+    settings:
+      link_to_entity: false
+    third_party_settings: {  }
+    weight: 1
+    region: content
+  field_qualite:
+    type: string
+    label: inline
+    settings:
+      link_to_entity: false
+    third_party_settings: {  }
+    weight: 3
+    region: content
+  field_structure:
+    type: string
+    label: inline
+    settings:
+      link_to_entity: false
+    third_party_settings: {  }
+    weight: 2
+    region: content
+  field_telephone:
+    type: phone_number_international
+    label: inline
+    settings:
+      as_link: false
+    third_party_settings: {  }
+    weight: 4
+    region: content
+hidden:
+  langcode: true
+  member_for: true
+  search_api_excerpt: true

+ 10 - 0
config/sync/core.entity_view_mode.node.compact.yml

@@ -0,0 +1,10 @@
+uuid: 23287fac-c816-4dd3-a923-8a381e9a1b04
+langcode: fr
+status: true
+dependencies:
+  module:
+    - node
+id: node.compact
+label: compact
+targetEntityType: node
+cache: true

+ 1 - 0
config/sync/core.extension.yml

@@ -9,6 +9,7 @@ module:
   admin_toolbar_links_access_filter: 0
   advanced_email_validation: 0
   advanced_text_formatter: 0
+  amswap: 0
   audiofield: 0
   autocomplete_deluxe: 0
   ban: 0

+ 1 - 0
config/sync/login_destination.destination.login_to_all_operations.yml

@@ -12,5 +12,6 @@ pages: ''
 language: ''
 roles:
   admin: admin
+  editor: editor
 weight: 0
 enabled: true

+ 14 - 0
config/sync/system.action.user_add_role_action.editor.yml

@@ -0,0 +1,14 @@
+uuid: 79d2557b-97e7-4ed1-9b7a-f5ce13cec0ec
+langcode: fr
+status: true
+dependencies:
+  config:
+    - user.role.editor
+  module:
+    - user
+id: user_add_role_action.editor
+label: 'Ajouter le rôle Editor aux utilisateurs sélectionnés'
+type: user
+plugin: user_add_role_action
+configuration:
+  rid: editor

+ 14 - 0
config/sync/system.action.user_remove_role_action.editor.yml

@@ -0,0 +1,14 @@
+uuid: 51db5825-bd3a-4da6-ab36-89480b1bc452
+langcode: fr
+status: true
+dependencies:
+  config:
+    - user.role.editor
+  module:
+    - user
+id: user_remove_role_action.editor
+label: 'Enlever le rôle Editor des utilisateurs sélectionnés'
+type: user
+plugin: user_remove_role_action
+configuration:
+  rid: editor

+ 8 - 0
config/sync/system.menu.editor.yml

@@ -0,0 +1,8 @@
+uuid: d6e12375-dec3-43ab-928a-6065316a4c56
+langcode: fr
+status: true
+dependencies: {  }
+id: editor
+label: Editor
+description: ''
+locked: false

+ 6 - 0
config/sync/user.role.admin.yml

@@ -3,6 +3,7 @@ langcode: fr
 status: true
 dependencies:
   config:
+    - filter.format.wysiwyg
     - node.type.operation
     - node.type.static
   module:
@@ -11,6 +12,7 @@ dependencies:
     - content_lock
     - content_translation
     - file
+    - filter
     - menu_admin_per_menu
     - node
     - system
@@ -36,6 +38,9 @@ permissions:
   - 'edit contact config page entity'
   - 'edit mentions_legales config page entity'
   - 'edit partenaires config page entity'
+  - 'execute entity:break_lock config_pages'
+  - 'execute entity:break_lock node'
+  - 'execute entity:save_action config_pages'
   - 'execute entity:save_action menu_link_content'
   - 'execute entity:save_action node'
   - 'execute entity:save_action taxonomy_term'
@@ -51,6 +56,7 @@ permissions:
   - 'execute views_bulk_edit all'
   - 'revert static revisions'
   - 'update content translations'
+  - 'use text format wysiwyg'
   - 'view config_pages entity'
   - 'view static revisions'
   - 'view the administration theme'

+ 38 - 0
config/sync/user.role.editor.yml

@@ -0,0 +1,38 @@
+uuid: 757c78f0-42aa-46aa-89b4-2223779b4ec6
+langcode: fr
+status: true
+dependencies:
+  config:
+    - filter.format.wysiwyg
+    - node.type.static
+  module:
+    - actions_permissions
+    - config_pages
+    - content_lock
+    - filter
+    - node
+    - system
+    - toolbar
+id: editor
+label: Editor
+weight: -5
+is_admin: null
+permissions:
+  - 'access administration pages'
+  - 'access content overview'
+  - 'access toolbar'
+  - 'access user profiles'
+  - 'break content lock'
+  - 'edit any static content'
+  - 'edit contact config page entity'
+  - 'edit mentions_legales config page entity'
+  - 'edit partenaires config page entity'
+  - 'execute entity:break_lock config_pages'
+  - 'execute entity:break_lock node'
+  - 'execute entity:save_action config_pages'
+  - 'execute entity:save_action node'
+  - 'revert static revisions'
+  - 'use text format wysiwyg'
+  - 'view static revisions'
+  - 'view the administration theme'
+  - 'view user email addresses'

+ 672 - 50
config/sync/views.view.content.yml

@@ -2,6 +2,11 @@ uuid: 2f76fc00-0304-4292-98e3-517f8bfba3fe
 langcode: fr
 status: true
 dependencies:
+  config:
+    - core.entity_view_mode.node.compact
+    - core.entity_view_mode.user.compact
+    - node.type.operation
+    - node.type.static
   module:
     - node
     - user
@@ -335,9 +340,10 @@ display:
           entity_field: type
           plugin_id: bundle
           operator: in
-          value: {  }
+          value:
+            static: static
           group: 1
-          exposed: true
+          exposed: false
           expose:
             operator_id: type_op
             label: 'Type de contenu'
@@ -481,46 +487,36 @@ display:
           row_class: ''
           default_row_class: true
           columns:
-            node_bulk_form: node_bulk_form
             title: title
-            type: type
-            name: name
-            status: status
+            mail: title
+            rendered_entity: rendered_entity
+            rendered_entity_1: rendered_entity_1
             changed: changed
-            edit_node: edit_node
-            delete_node: delete_node
-            dropbutton: dropbutton
-            timestamp: title
           default: changed
           info:
-            node_bulk_form:
-              align: ''
-              separator: ''
-              empty_column: false
-              responsive: ''
             title:
               sortable: true
               default_sort_order: asc
               align: ''
-              separator: ''
+              separator: '<br>'
               empty_column: false
               responsive: ''
-            type:
-              sortable: true
+            mail:
+              sortable: false
               default_sort_order: asc
               align: ''
               separator: ''
               empty_column: false
               responsive: ''
-            name:
+            rendered_entity:
               sortable: false
               default_sort_order: asc
               align: ''
               separator: ''
               empty_column: false
-              responsive: priority-low
-            status:
-              sortable: true
+              responsive: ''
+            rendered_entity_1:
+              sortable: false
               default_sort_order: asc
               align: ''
               separator: ''
@@ -533,34 +529,6 @@ display:
               separator: ''
               empty_column: false
               responsive: priority-low
-            edit_node:
-              sortable: false
-              default_sort_order: asc
-              align: ''
-              separator: ''
-              empty_column: false
-              responsive: ''
-            delete_node:
-              sortable: false
-              default_sort_order: asc
-              align: ''
-              separator: ''
-              empty_column: false
-              responsive: ''
-            dropbutton:
-              sortable: false
-              default_sort_order: asc
-              align: ''
-              separator: ''
-              empty_column: false
-              responsive: ''
-            timestamp:
-              sortable: false
-              default_sort_order: asc
-              align: ''
-              separator: ''
-              empty_column: false
-              responsive: ''
           override: true
           sticky: true
           summary: ''
@@ -598,6 +566,160 @@ display:
     display_plugin: page
     position: 1
     display_options:
+      filters:
+        title:
+          id: title
+          table: node_field_data
+          field: title
+          relationship: none
+          group_type: group
+          admin_label: ''
+          entity_type: node
+          entity_field: title
+          plugin_id: string
+          operator: contains
+          value: ''
+          group: 1
+          exposed: true
+          expose:
+            operator_id: title_op
+            label: Titre
+            description: ''
+            use_operator: false
+            operator: title_op
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: title
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+              anonymous: '0'
+              administrator: '0'
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+        type:
+          id: type
+          table: node_field_data
+          field: type
+          relationship: none
+          group_type: group
+          admin_label: ''
+          entity_type: node
+          entity_field: type
+          plugin_id: bundle
+          operator: in
+          value:
+            static: static
+          group: 1
+          exposed: false
+          expose:
+            operator_id: type_op
+            label: 'Type de contenu'
+            description: ''
+            use_operator: false
+            operator: type_op
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: type
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+              anonymous: '0'
+              administrator: '0'
+            reduce: false
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+        status:
+          id: status
+          table: node_field_data
+          field: status
+          relationship: none
+          group_type: group
+          admin_label: ''
+          entity_type: node
+          entity_field: status
+          plugin_id: boolean
+          operator: '='
+          value: '1'
+          group: 1
+          exposed: true
+          expose:
+            operator_id: ''
+            label: État
+            description: ''
+            use_operator: false
+            operator: status_op
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: status
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+          is_grouped: true
+          group_info:
+            label: 'Statut de publication'
+            description: ''
+            identifier: status
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items:
+              1:
+                title: Publié
+                operator: '='
+                value: '1'
+              2:
+                title: 'Non publié'
+                operator: '='
+                value: '0'
+        status_extra:
+          id: status_extra
+          table: node_field_data
+          field: status_extra
+          entity_type: node
+          plugin_id: node_status
+          operator: '='
+          value: false
+          group: 1
+          expose:
+            operator_limit_selection: false
+            operator_list: {  }
+      filter_groups:
+        operator: AND
+        groups:
+          1: AND
+      defaults:
+        filters: false
+        filter_groups: false
       display_extenders: {  }
       path: admin/content/node
       menu:
@@ -624,3 +746,503 @@ display:
         - 'user.node_grants:view'
         - user.permissions
       tags: {  }
+  page_2:
+    id: page_2
+    display_title: Operations
+    display_plugin: page
+    position: 1
+    display_options:
+      title: Opérations
+      fields:
+        title:
+          id: title
+          table: node_field_data
+          field: title
+          relationship: none
+          group_type: group
+          admin_label: ''
+          entity_type: node
+          entity_field: title
+          plugin_id: field
+          label: Titre
+          exclude: false
+          alter:
+            alter_text: false
+            text: ''
+            make_link: false
+            path: ''
+            absolute: false
+            external: false
+            replace_spaces: false
+            path_case: none
+            trim_whitespace: false
+            alt: ''
+            rel: ''
+            link_class: ''
+            prefix: ''
+            suffix: ''
+            target: ''
+            nl2br: false
+            max_length: 0
+            word_boundary: true
+            ellipsis: true
+            more_link: false
+            more_link_text: ''
+            more_link_path: ''
+            strip_tags: false
+            trim: false
+            preserve_tags: ''
+            html: false
+          element_type: ''
+          element_class: ''
+          element_label_type: ''
+          element_label_class: ''
+          element_label_colon: true
+          element_wrapper_type: ''
+          element_wrapper_class: ''
+          element_default_classes: true
+          empty: ''
+          hide_empty: false
+          empty_zero: false
+          hide_alter_empty: true
+          click_sort_column: value
+          type: string
+          settings:
+            link_to_entity: false
+          group_column: value
+          group_columns: {  }
+          group_rows: true
+          delta_limit: 0
+          delta_offset: 0
+          delta_reversed: false
+          delta_first_last: false
+          multi_type: separator
+          separator: ', '
+          field_api_classes: false
+        mail:
+          id: mail
+          table: users_field_data
+          field: mail
+          relationship: uid
+          group_type: group
+          admin_label: ''
+          entity_type: user
+          entity_field: mail
+          plugin_id: field
+          label: Courriel
+          exclude: false
+          alter:
+            alter_text: false
+            text: ''
+            make_link: false
+            path: ''
+            absolute: false
+            external: false
+            replace_spaces: false
+            path_case: none
+            trim_whitespace: false
+            alt: ''
+            rel: ''
+            link_class: ''
+            prefix: ''
+            suffix: ''
+            target: ''
+            nl2br: false
+            max_length: 0
+            word_boundary: true
+            ellipsis: true
+            more_link: false
+            more_link_text: ''
+            more_link_path: ''
+            strip_tags: false
+            trim: false
+            preserve_tags: ''
+            html: false
+          element_type: ''
+          element_class: ''
+          element_label_type: ''
+          element_label_class: ''
+          element_label_colon: true
+          element_wrapper_type: ''
+          element_wrapper_class: ''
+          element_default_classes: true
+          empty: ''
+          hide_empty: false
+          empty_zero: false
+          hide_alter_empty: true
+          click_sort_column: value
+          type: email_mailto
+          settings: {  }
+          group_column: value
+          group_columns: {  }
+          group_rows: true
+          delta_limit: 0
+          delta_offset: 0
+          delta_reversed: false
+          delta_first_last: false
+          multi_type: separator
+          separator: ', '
+          field_api_classes: false
+        rendered_entity:
+          id: rendered_entity
+          table: users
+          field: rendered_entity
+          relationship: uid
+          group_type: group
+          admin_label: ''
+          entity_type: user
+          plugin_id: rendered_entity
+          label: Autheur
+          exclude: false
+          alter:
+            alter_text: false
+            text: ''
+            make_link: false
+            path: ''
+            absolute: false
+            external: false
+            replace_spaces: false
+            path_case: none
+            trim_whitespace: false
+            alt: ''
+            rel: ''
+            link_class: ''
+            prefix: ''
+            suffix: ''
+            target: ''
+            nl2br: false
+            max_length: 0
+            word_boundary: true
+            ellipsis: true
+            more_link: false
+            more_link_text: ''
+            more_link_path: ''
+            strip_tags: false
+            trim: false
+            preserve_tags: ''
+            html: false
+          element_type: ''
+          element_class: ''
+          element_label_type: ''
+          element_label_class: ''
+          element_label_colon: true
+          element_wrapper_type: ''
+          element_wrapper_class: ''
+          element_default_classes: true
+          empty: ''
+          hide_empty: false
+          empty_zero: false
+          hide_alter_empty: true
+          view_mode: compact
+        rendered_entity_1:
+          id: rendered_entity_1
+          table: node
+          field: rendered_entity
+          relationship: none
+          group_type: group
+          admin_label: ''
+          entity_type: node
+          plugin_id: rendered_entity
+          label: 'Entité rendue'
+          exclude: false
+          alter:
+            alter_text: false
+            text: ''
+            make_link: false
+            path: ''
+            absolute: false
+            external: false
+            replace_spaces: false
+            path_case: none
+            trim_whitespace: false
+            alt: ''
+            rel: ''
+            link_class: ''
+            prefix: ''
+            suffix: ''
+            target: ''
+            nl2br: false
+            max_length: 0
+            word_boundary: true
+            ellipsis: true
+            more_link: false
+            more_link_text: ''
+            more_link_path: ''
+            strip_tags: false
+            trim: false
+            preserve_tags: ''
+            html: false
+          element_type: ''
+          element_class: ''
+          element_label_type: ''
+          element_label_class: ''
+          element_label_colon: true
+          element_wrapper_type: ''
+          element_wrapper_class: ''
+          element_default_classes: true
+          empty: ''
+          hide_empty: false
+          empty_zero: false
+          hide_alter_empty: true
+          view_mode: compact
+      filters:
+        title:
+          id: title
+          table: node_field_data
+          field: title
+          relationship: none
+          group_type: group
+          admin_label: ''
+          entity_type: node
+          entity_field: title
+          plugin_id: string
+          operator: contains
+          value: ''
+          group: 1
+          exposed: true
+          expose:
+            operator_id: title_op
+            label: Titre
+            description: ''
+            use_operator: false
+            operator: title_op
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: title
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+              anonymous: '0'
+              administrator: '0'
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+        type:
+          id: type
+          table: node_field_data
+          field: type
+          relationship: none
+          group_type: group
+          admin_label: ''
+          entity_type: node
+          entity_field: type
+          plugin_id: bundle
+          operator: in
+          value:
+            operation: operation
+          group: 1
+          exposed: false
+          expose:
+            operator_id: ''
+            label: ''
+            description: ''
+            use_operator: false
+            operator: ''
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: ''
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+            reduce: false
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+        mail:
+          id: mail
+          table: users_field_data
+          field: mail
+          relationship: uid
+          group_type: group
+          admin_label: ''
+          entity_type: user
+          entity_field: mail
+          plugin_id: string
+          operator: contains
+          value: ''
+          group: 1
+          exposed: true
+          expose:
+            operator_id: mail_op
+            label: Courriel
+            description: ''
+            use_operator: false
+            operator: mail_op
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: mail
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+              anonymous: '0'
+              admin: '0'
+              root: '0'
+              editor: '0'
+            placeholder: ''
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+        field_adresse_locality:
+          id: field_adresse_locality
+          table: node__field_adresse
+          field: field_adresse_locality
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: string
+          operator: contains
+          value: ''
+          group: 1
+          exposed: true
+          expose:
+            operator_id: field_adresse_locality_op
+            label: Ville
+            description: ''
+            use_operator: false
+            operator: field_adresse_locality_op
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: field_adresse_locality
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+              anonymous: '0'
+              admin: '0'
+              root: '0'
+              editor: '0'
+            placeholder: ''
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+        field_adresse_postal_code:
+          id: field_adresse_postal_code
+          table: node__field_adresse
+          field: field_adresse_postal_code
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: string
+          operator: '='
+          value: ''
+          group: 1
+          exposed: true
+          expose:
+            operator_id: field_adresse_postal_code_op
+            label: 'Code postal'
+            description: ''
+            use_operator: false
+            operator: field_adresse_postal_code_op
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: field_adresse_postal_code
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+              anonymous: '0'
+              admin: '0'
+              root: '0'
+              editor: '0'
+            placeholder: ''
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+      filter_groups:
+        operator: AND
+        groups:
+          1: AND
+      defaults:
+        title: false
+        fields: false
+        filters: false
+        filter_groups: false
+      display_description: ''
+      display_extenders: {  }
+      path: admin/content/operations
+      menu:
+        type: tab
+        title: Opérations
+        description: ''
+        weight: -10
+        expanded: false
+        menu_name: editor
+        parent: 'menu_link_content:39762042-305d-41ee-9024-f357eb247b35'
+        context: '0'
+      tab_options:
+        type: normal
+        title: Contenu
+        description: 'Trouver et gérer le contenu'
+        weight: -10
+        menu_name: admin
+    cache_metadata:
+      max-age: -1
+      contexts:
+        - 'languages:language_content'
+        - 'languages:language_interface'
+        - url
+        - url.query_args
+        - 'user.node_grants:view'
+        - user.permissions
+      tags:
+        - 'config:core.entity_view_display.node.operation.compact'
+        - 'config:core.entity_view_display.node.operation.default'
+        - 'config:core.entity_view_display.node.operation.teaser'
+        - 'config:core.entity_view_display.node.static.content_no_title'
+        - 'config:core.entity_view_display.node.static.default'
+        - 'config:core.entity_view_display.node.static.teaser'
+        - 'config:core.entity_view_display.user.user.compact'
+        - 'config:core.entity_view_display.user.user.default'