layout_builder.schema.yml

core/modules/layout_builder/config/schema/layout_builder.schema.yml

File

core/modules/layout_builder/config/schema/layout_builder.schema.yml

View source
  1. core.entity_view_display.*.*.*.third_party.layout_builder:
  2. type: mapping
  3. label: 'Per-view-mode Layout Builder settings'
  4. mapping:
  5. enabled:
  6. type: boolean
  7. label: 'Whether the Layout Builder is enabled for this display'
  8. allow_custom:
  9. type: boolean
  10. label: 'Allow a customized layout'
  11. sections:
  12. type: sequence
  13. sequence:
  14. type: layout_builder.section
  15. layout_builder.section:
  16. type: mapping
  17. label: 'Layout section'
  18. mapping:
  19. layout_id:
  20. type: string
  21. label: 'Layout ID'
  22. constraints:
  23. PluginExists:
  24. manager: plugin.manager.core.layout
  25. interface: '\Drupal\Core\Layout\LayoutInterface'
  26. layout_settings:
  27. type: layout_plugin.settings.[%parent.layout_id]
  28. label: 'Layout settings'
  29. components:
  30. type: sequence
  31. label: 'Components'
  32. sequence:
  33. type: layout_builder.component
  34. third_party_settings:
  35. type: sequence
  36. label: 'Third party settings'
  37. sequence:
  38. type: '[%parent.%parent.%type].third_party.[%key]'
  39. layout_builder.component:
  40. type: mapping
  41. label: 'Component'
  42. mapping:
  43. uuid:
  44. type: uuid
  45. label: 'UUID'
  46. region:
  47. type: string
  48. label: 'Region'
  49. configuration:
  50. type: block.settings.[id]
  51. weight:
  52. type: weight
  53. label: 'Weight'
  54. additional:
  55. type: ignore
  56. label: 'Additional data'
  57. inline_block:
  58. type: block_settings
  59. label: 'Inline block'
  60. mapping:
  61. view_mode:
  62. type: string
  63. label: 'View mode'
  64. ConfigExists:
  65. prefix: core.entity_view_mode.block_content.
  66. block_id:
  67. type: integer
  68. label: 'Block ID'
  69. constraints:
  70. NotBlank: []
  71. Range:
  72. min: 1
  73. block_revision_id:
  74. type: integer
  75. label: 'Block revision ID'
  76. constraints:
  77. NotBlank: []
  78. Range:
  79. min: 1
  80. block_serialized:
  81. type: string
  82. label: 'Serialized block'
  83. nullable: true
  84. constraints:
  85. Serialized: []
  86. constraints:
  87. FullyValidatable: ~
  88. AtLeastOneOf:
  89. messageCollection: 'Either block_id and block_revision_id, or block_serialized must be provided.'
  90. constraints:
  91. - MappingCollection:
  92. allowExtraFields: true
  93. allowMissingFields: true
  94. fields:
  95. block_id:
  96. Required:
  97. constraints:
  98. - NotBlank: {}
  99. - NotNull: {}
  100. block_revision_id:
  101. Required:
  102. constraints:
  103. - NotBlank: {}
  104. - NotNull: {}
  105. block_serialized:
  106. Optional: {}
  107. - MappingCollection:
  108. allowExtraFields: true
  109. allowMissingFields: true
  110. fields:
  111. block_id:
  112. Optional: {}
  113. block_revision_id:
  114. Optional: {}
  115. block_serialized:
  116. Required:
  117. constraints:
  118. - NotBlank: {}
  119. - NotNull: {}
  120. block.settings.inline_block:*:
  121. type: inline_block
  122. layout_builder_multi_width:
  123. type: layout_plugin.settings
  124. mapping:
  125. column_widths:
  126. type: string
  127. label: 'Column widths'
  128. layout_plugin.settings.layout_twocol_section:
  129. type: layout_builder_multi_width
  130. layout_plugin.settings.layout_threecol_section:
  131. type: layout_builder_multi_width

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.