Issue by vijaycs85, mavimo, dawehner, sandipmkhairnar: Improve the configurations schemas for Views significantly.

8.0.x
Alex Pott 2013-06-10 16:02:54 +01:00
parent 2581366955
commit 9a42b9f938
21 changed files with 1577 additions and 189 deletions

View File

@ -0,0 +1,22 @@
# Schema for the views access plugins.
views.access.none:
type: sequence
label: 'None'
sequence:
- type: string
views.access.perm:
type: mapping
label: 'Permission'
mapping:
perm:
type: string
label: 'Permission'
views.access.role:
type: sequence
label: 'Role'
sequence:
- type: string
label: 'Role'

View File

@ -0,0 +1,58 @@
# Schema for the views area plugins.
views.area.*:
type: views_area
label: 'Default area'
views.area.text:
type: views_area
label: 'Text'
mapping:
content:
type: text
label: 'The shown text of the area'
format:
type: string
label: 'The filter format the content is in'
tokenize:
type: boolean
label: 'Should replacement tokens be used from the first row'
views.area.text_custom:
type: views_area
label: 'Text custom'
mapping:
content:
type: text
label: 'The shown text of the area'
tokenize:
type: boolean
label: 'Should replacement tokens be used from the first row'
views.area.result:
type: views_area
label: 'Result'
mapping:
content:
type: text
label: 'The shown text of the result summary area'
views.area.title:
type: views_area
label: 'Title'
mapping:
title:
type: label
label: 'The title which will be overriden for the page'
views.area.view:
type: views_area
label: 'View'
mapping:
view_to_insert:
type: string
label: 'View to insert'
inherit_to_arguments:
type: boolean
label: 'Inherit contextual filters'

View File

@ -0,0 +1,67 @@
# Schema for the views argument plugins.
views.argument.*:
type: views_argument
label: 'Default argument'
views.argument.many_to_one:
type: views_argument
label: 'Many to one'
mapping:
break_phrase:
type: boolean
label: 'Allow multiple values'
add_table:
type: boolean
label: 'Allow multiple filter values to work together'
require_value:
type: boolean
label: 'Do not display items with no value in summary'
views.argument.null:
type: views_argument
label: 'Null'
mapping:
must_not_be:
type: boolean
label: 'Fail basic validation if any argument is given'
views.argument.numeric:
type: views_argument
label: 'Numeric'
mapping:
break_phrase:
type: boolean
label: 'Allow multiple values'
not:
type: boolean
label: 'Exclude'
views.argument.string:
type: views_argument
label: 'String'
mapping:
glossary:
type: boolean
label: 'Glossary mode'
limit:
type: integer
label: 'Character limit'
case:
type: string
label: 'Case'
path_case:
type: string
label: 'Case in path'
transform_dash:
type: boolean
label: 'Transform spaces to dashes in URL'
break_phrase:
type: boolean
label: 'Allow multiple values'
add_table:
type: boolean
label: 'Allow multiple filter values to work together'
require_value:
type: boolean
label: 'Do not display items with no value in summary'

View File

@ -0,0 +1,28 @@
# Schema for the views default arguments.
views.argument_default.fixed:
type: mapping
label: 'Fixed'
mapping:
argument:
type: string
label: 'Fixed value'
views.argument_default.php:
type: mapping
label: 'PHP Code'
mapping:
code:
type: string
label: 'PHP contextual filter code'
views.argument_default.raw:
type: mapping
label: 'Raw value from URL'
mapping:
index:
type: integer
label: 'Path component'
use_alias:
type: boolean
label: 'Use path alias'

View File

@ -0,0 +1,19 @@
# Schema for the views argument validators.
views.argument_validator.none:
type: sequence
label: 'Basic validation'
sequence:
- type: string
views.argument_validator.php:
type: mapping
label: 'PHP Code'
mapping:
code:
type: string
label: 'PHP validate code'
views.argument_validator.numeric:
type: boolean
label: 'Numeric'

View File

@ -0,0 +1,33 @@
# Schema for the views cache.
views.cache.none:
type: mapping
lable: 'None'
mapping:
type:
type: string
label: 'Cache type'
views.cache.time:
type: mapping
lable: 'None'
mapping:
type:
type: string
label: 'Time-based'
options:
type: mapping
label: 'Cache options'
mapping:
result_lifespan:
type: integer
label: 'The length of time raw query results should be cached.'
result_lifespan_custom:
type: integer
label: 'Length of time in seconds raw query results should be cached.'
output_lifespan:
type: integer
label: 'The length of time rendered HTML output should be cached.'
output_lifespan_custom:
type: integer
label: 'Length of time in seconds rendered HTML output should be cached.'

View File

@ -0,0 +1,741 @@
# Basic data types for views.
views_display:
type: mapping
label: 'Display options'
mapping:
title:
type: text
label: 'Display title'
format:
type: string
label: 'Format'
fields:
type: sequence
label: 'Fields'
sequence:
- type: views.field.[plugin_id]
pager:
type: mapping
label: 'Pager'
mapping:
type:
label: 'Pager type'
options:
type: views.pager.[%parent.type]
exposed_form:
type: mapping
label: 'Exposed form'
mapping:
type:
label: 'Exposed form type'
options:
label: 'Options'
type: views.exposed_form.[%parent.type]
access:
type: mapping
label: 'Access'
mapping:
type:
type: string
label: 'Access type'
options:
type: views.access.[%parent.type]
cache:
type: views.cache.[type]
label: 'Caching'
empty:
type: sequence
label: 'No results behavior'
sequence:
- type: views.area.[plugin_id]
sorts:
type: sequence
label: 'Sorts'
sequence:
- type: views.sort.[plugin_id]
arguments:
type: sequence
label: 'Arguments'
sequence:
- type: views.argument.[plugin_id]
filters:
type: sequence
label: 'Filters'
sequence:
- type: views.filter.[plugin_id]
style:
type: mapping
label: 'Format'
mapping:
type:
label: 'Type'
options:
type: views.style.[%parent.type]
row:
type: mapping
label: 'Row'
mapping:
type:
label: 'Row type'
options:
type: views.row.[%parent.type]
query:
type: mapping
label: 'Query'
mapping:
type:
type: string
label: 'Query type'
options:
type: views.query.[%parent.type]
defaults:
type: mapping
label: 'Defaults'
mapping:
access:
type: boolean
label: 'Access restrictions'
cache:
type: boolean
label: 'Caching'
query:
type: boolean
label: 'Query options'
title:
type: boolean
label: 'Title'
css_class:
type: boolean
label: 'CSS class'
display_description:
type: boolean
label: 'Administrative description'
use_ajax:
type: boolean
label: 'Use AJAX'
hide_attachment_summary:
type: boolean
label: 'Hide attachments when displaying a contextual filter summary'
show_admin_links:
type: boolean
label: 'Show contextual links'
pager:
type: boolean
label: 'Use pager'
use_more:
type: boolean
label: 'Create more link'
use_more_always:
type: boolean
label: 'Display ''more'' link only if there is more content'
use_more_text:
type: boolean
label: 'The text to display for the more link.'
exposed_form:
type: boolean
label: 'Exposed form style'
link_display:
type: boolean
label: 'Link display'
link_url:
type: boolean
label: 'Link URL'
group_by:
type: boolean
label: 'Aggregate'
style:
type: boolean
label: 'Style'
row:
type: boolean
label: 'Row'
relationships:
type: boolean
label: 'Relationships'
fields:
type: boolean
label: 'Fields'
sorts:
type: boolean
label: 'Sorts'
arguments:
type: boolean
label: 'Arguments'
filters:
type: boolean
label: 'Filters'
filter_groups:
type: boolean
label: 'Filter groups'
pager_options:
type: boolean
label: 'Pager options'
relationships:
type: sequence
label: 'Relationships'
sequence:
- type: views.relationship.[plugin_id]
views_sort:
type: mapping
label: 'Sort criteria'
mapping:
id:
type: string
label: 'ID'
table:
type: string
label: 'Table name'
field:
type: string
label: 'Field name'
relationship:
type: string
label: 'Relationship'
group_type:
type: string
label: 'Group type'
admin_label:
type: label
label: 'Administrative title'
order:
type: string
label: 'Sort order'
expose:
type: views.sort_expose.[%parent.plugin_id]
label: 'Expose settings'
exposed:
type: boolean
label: 'Expose this sort to visitors, to allow them to change it'
plugin_id:
type: string
label: 'Plugin ID'
views_area:
type: views_handler
label: 'Area'
mapping:
label:
type: label
label: 'A string to identify the area instance in the admin UI.'
empty:
type: boolean
label: 'Should the area be displayed on empty results.'
views_handler:
type: mapping
mapping:
id:
type: string
label: 'A unique ID per handler type'
table:
type: string
label: 'The views_data table for this handler'
field:
type: string
label: 'The views_data field for this handler'
relationship:
type: string
label: 'The ID of the relationship instance used by this handler'
group_type:
type: string
label: 'A sql aggregation type'
admin_label:
type: label
label: 'A string to identify the handler instance in the admin UI.'
views_argument:
type: views_handler
label: 'Argument'
mapping:
default_action:
type: string
label: 'When the filter value is NOT available'
exception:
type: mapping
label: 'Exception value'
mapping:
value:
type: string
label: 'Value'
title_enable:
type: boolean
label: 'Override title'
title:
type: label
label: 'Title'
title_enable:
type: boolean
label: 'Override title'
title:
type: label
label: 'Title'
breadcrumb_enable:
type: boolean
label: 'Override breadcrumb'
breadcrumb:
type: label
label: 'Breadcrumb'
default_argument_type:
type: string
label: 'Type'
default_argument_options:
type: views.argument_default.[%parent.default_argument_type]
label: 'Default argument options'
default_argument_skip_url:
type: boolean
label: 'Skip default argument for view URL'
summary_options:
type: views.style.[%parent.summary.format]
label: 'Summary options'
summary:
type: mapping
label: 'Display a summary'
mapping:
sort_order:
type: string
label: 'Sort order'
number_of_records:
type: integer
label: 'Sort by'
format:
type: string
label: 'Format'
specify_validation:
type: boolean
label: 'Specify validation criteria'
validate:
type: mapping
label: 'Validation settings'
mapping:
type:
type: string
label: 'Validator'
fail:
type: string
label: 'Action to take if filter value does not validate'
validate_options:
type: views.argument_validator.[%parent.validate.type]
label: 'Validate options'
glossary:
type: boolean
label: 'Glossary mode'
limit:
type: integer
label: 'Character limit'
case:
type: string
label: 'Case'
path_case:
type: string
label: 'Case in path'
transform_dash:
type: boolean
label: 'Transform spaces to dashes in URL'
break_phrase:
type: boolean
label: 'Allow multiple values'
plugin_id:
type: string
label: 'Plugin ID'
views_exposed_form:
type: mapping
mapping:
submit_button:
type: label
label: 'Submit button text'
reset_button:
type: boolean
label: 'Include reset button'
reset_button_label:
type: label
label: 'Reset button label'
exposed_sorts_label:
type: label
label: 'Exposed sorts label'
expose_sort_order:
type: boolean
label: 'Expose sort order'
sort_asc_label:
type: label
label: 'Ascending'
sort_desc_label:
type: label
label: 'Descending'
views_field:
type: views_handler
mapping:
label:
type: label
label: 'Create a label'
exclude:
type: boolean
label: 'Exclude from display'
alter:
type: mapping
label: 'Rewrite results'
mapping:
alter_text:
type: boolean
label: 'Override the output of this field with custom text'
text:
type: text
label: 'Text'
make_link:
type: boolean
label: 'Output this field as a custom link'
path:
type: string
label: 'Link path'
absolute:
type: boolean
label: 'Use absolute path'
external:
type: boolean
label: 'External server URL'
replace_spaces:
type: boolean
label: 'Replace spaces with dashes'
path_case:
type: string
label: 'Transform the case'
trim_whitespace:
type: boolean
label: 'Remove whitespace'
alt:
type: label
label: 'Title text'
rel:
type: string
label: 'Rel Text'
link_class:
type: string
label: 'Link class'
prefix:
type: label
label: 'Prefix text'
suffix:
type: label
label: 'Suffix text'
target:
type: string
label: 'Target'
nl2br:
type: boolean
label: 'Convert newlines to HTML <br> tags'
max_length:
type: string
label: 'Maximum number of characters'
word_boundary:
type: boolean
label: 'Trim only on a word boundary'
ellipsis:
type: boolean
label: 'Add "..." at the end of trimmed text'
more_link:
type: boolean
label: 'Add a read-more link if output is trimmed.'
more_link_text:
type: label
label: 'More link label'
more_link_path:
type: string
label: 'More link path'
strip_tags:
type: boolean
label: 'Strip HTML tags'
trim:
type: boolean
label: 'Trim this field to a maximum number of characters'
preserve_tags:
type: string
label: 'Preserve certain tags'
html:
type: boolean
label: 'Field can contain HTML'
element_type:
type: string
label: 'HTML element'
element_class:
type: string
label: 'CSS class'
element_label_type:
type: string
label: 'Label HTML element'
element_label_class:
type: string
label: 'CSS class'
element_label_colon:
type: boolean
label: 'Place a colon after the label'
element_wrapper_type:
type: string
label: 'Wrapper HTML element'
element_wrapper_class:
type: string
label: 'CSS class'
element_default_classes:
type: boolean
label: 'Add default classes'
empty:
type: string
label: 'No results text'
hide_empty:
type: boolean
label: 'Hide if empty'
empty_zero:
type: boolean
label: 'Count the number 0 as empty'
hide_alter_empty:
type: boolean
label: 'Hide rewriting if empty'
views_pager:
type: mapping
label: 'Pager'
mapping:
offset:
type: integer
label: 'Offset'
views_pager_sql:
type: views_pager
label: 'SQL pager'
mapping:
items_per_page:
type: integer
label: 'Items per page'
total_pages:
type: integer
label: 'Number of pages'
id:
type: integer
label: 'Pager ID'
tags:
type: mapping
label: 'Pager link labels'
mapping:
next:
type: label
label: 'Next page link text'
previous:
type: label
label: 'Previous page link text'
expose:
type: mapping
label: 'Exposed options'
mapping:
items_per_page_label:
type: label
label: 'Items per page label'
items_per_page_options:
type: string
label: 'Exposed items per page options'
items_per_page_options_all:
type: boolean
label: 'Include all items option'
items_per_page_options_all_label:
type: label
label: 'All items label'
offset:
type: boolean
label: 'Expose Offset'
offset_label:
type: label
label: 'Offset label'
views_style:
type: mapping
mapping:
grouping:
type: sequence
label: 'Grouping field number %i'
sequence:
- type: mapping
label: 'Field'
mapping:
field:
type: string
label: 'Field'
rendered:
type: boolean
label: 'Use rendered output to group rows'
rendered_strip:
type: boolean
label: 'Remove tags from rendered output'
row_class:
type: string
label: 'Row class'
default_row_class:
type: boolean
label: 'Add views row classes'
row_class_special:
type: boolean
label: 'Add striping (odd/even), first/last row classes'
uses_fields:
type: boolean
label: 'Force using fields'
views_filter:
type: views_handler
mapping:
operator:
type: string
label: 'Operator'
value:
type: views.filter_value.[plugin_id]
label: 'Value'
group:
type: string
label: 'Group'
exposed:
type: boolean
label: 'Expose this filter to visitors, to allow them to change it'
expose:
type: mapping
label: 'Expose'
mapping:
operator_id:
type: string
label: 'Operator identifier'
label:
type: label
label: 'Label'
description:
type: label
label: 'Description'
use_operator:
type: boolean
label: 'Expose operator'
operator:
type: string
label: 'Operator'
identifier:
type: string
label: 'Filter identifier'
required:
type: boolean
label: 'Required'
remember:
type: boolean
label: 'Remember the last selection'
multiple:
type: boolean
label: 'Allow multiple selections'
remember_roles:
type: sequence
label: 'User roles'
sequence:
- type: string
label: 'Role'
is_grouped:
type: boolean
label: 'Grouped filters'
group_info:
type: mapping
label: 'Group'
mapping:
label:
type: label
label: 'Label'
description:
type: label
label: 'Description'
identifier:
type: string
label: 'Identifier'
optional:
type: boolean
label: 'Optional'
widget:
type: string
label: 'Widget type'
multiple:
type: boolean
label: 'Allow multiple selections'
remember:
type: integer
label: 'Remember'
default_group:
type: string
label: 'Default'
default_group_multiple:
type: sequence
label: 'Defaults'
sequence:
- type: integer
label: 'Default'
group_items:
type: views.filter.group_items.[plugin_id]
label: 'Group items'
plugin_id:
type: string
label: 'Plugin ID'
filter_groups:
type: mapping
label: 'Groups'
mapping:
operator:
type: string
label: 'Operator'
groups:
type: sequence
label: 'Groups'
sequence:
- type: string
label: 'Operator'
views_relationship:
type: mapping
mapping:
id:
type: string
label: 'ID'
table:
type: string
label: 'Table'
field:
type: string
label: 'UID'
plugin_id:
type: string
label: 'Plugin ID'
relationship:
type: string
label: 'Relationship'
group_type:
type: string
label: 'Group type'
admin_label:
type: string
label: 'Administrative title'
required:
type: boolean
label: 'Require this relationship'
views_query:
type: mapping
label: 'Query options'
mapping:
query_comment:
type: boolean
label: 'Query comment'
disable_sql_rewrite:
type: boolean
label: 'Disable SQL rewriting'
distinct:
type: boolean
label: 'Distinct'
slave:
type: boolean
label: 'Use Slave Server'
query_tags:
type: sequence
label: 'Query Tags'
sequence:
- type: string
label: 'Tag'

View File

@ -0,0 +1,112 @@
# Schema for the views display plugins.
views.display.default:
type: views_display
label: 'Default display options'
views.display.page:
type: views_display
label: 'Page display options'
mapping:
path:
type: string
label: 'Page path'
menu:
type: mapping
label: 'Menu'
mapping:
type:
type: string
label: 'Type'
title:
type: text
label: 'Title'
description:
type: text
label: 'Description'
weight:
type: integer
label: 'Weight'
name:
type: string
label: 'Menu name'
context:
type: string
label: 'Context'
tab_options:
type: mapping
label: 'Tab options'
mapping:
type:
type: string
label: 'Type'
title:
type: text
label: 'Title'
description:
type: text
label: 'Description'
weight:
type: integer
label: 'Weight'
name:
type: string
label: 'Menu name'
views.display.block:
type: views_display
label: 'Block display options'
mapping:
block_description:
type: text
label: 'Block name'
block_caching:
type: boolean
label: 'Block caching'
views.display.feed:
type: views_display
label: 'Feed display options'
mapping:
path:
type: string
label: 'Page path'
sitename_title:
type: boolean
label: 'Use the site name for the title'
displays:
type: sequence
label: 'The feed icon will be available only to the selected displays.'
sequence:
- type: string
label: 'Display'
views.display.embed:
type: views_display
label: 'Embed display options'
views.display.attachment:
type: views_display
label: 'Attachment display options'
mapping:
displays:
type: sequence
label: 'Attach to'
sequence:
- type: string
label: 'Display'
attachment_position:
type: string
label: 'Attachment position'
inherit_arguments:
type: boolean
lablel: 'Inherit contextual filters'
inherit_exposed_filters:
type: boolean
label: 'Inherit exposed filters'
inherit_pager:
type: boolean
label: 'Inherit pager'
render_pager:
type: boolean
label: 'Render pager'

View File

@ -0,0 +1,16 @@
# Schema for the views exposed form.
views.exposed_form.basic:
type: views_exposed_form
label: 'Basic'
views.exposed_form.input_required:
type: views_exposed_form
label: 'Input required'
mapping:
text_input_required:
type: text
label: 'Text on demand'
text_input_required_format:
type: string
label: 'Text on demand format'

View File

@ -0,0 +1,153 @@
# Schema for the views field plugins.
views.field.*:
type: views_field
label: 'Default field'
views.field.boolean:
type: views_field
label: 'Boolean'
mapping:
type:
type: string
label: 'Output format'
type_custom_true:
type: string
label: 'Custom output for TRUE'
type_custom_false:
type: string
label: 'Custom output for FALSE'
not:
type: string
label: 'Reverse'
views.field.broken:
type: views_field
label: 'Broken'
views.field.counter:
type: views_field
label: 'Counter'
mapping:
counter_start:
type: integer
label: 'Starting value'
views.field.custom:
type: views_field
label: 'Custom'
views.field.date:
type: views_field
label: 'Date'
mapping:
date_format:
type: string
label: 'Date format'
custom_date_format:
type: string
label: 'Custom date format'
timezone:
type: string
label: 'Timezone'
views.field.file_size:
type: views_field
label: 'File size'
mapping:
file_size_display:
type: string
label: 'File size display'
views.field.links:
type: views_field
label: 'Links'
mapping:
fields:
type: string
label: 'Fields'
destination:
type: boolean
label: 'Include destination'
views.field.machine_name:
type: views_field
label: 'Machine name'
mapping:
machine_name:
type: boolean
label: 'Output machine name'
views.field.numeric:
type: views_field
label: 'Numeric'
mapping:
set_precision:
type: boolean
label: 'Round'
precision:
type: integer
label: 'Precision'
decimal:
type: string
label: 'Decimal point'
separator:
type: string
label: 'Thousands marker'
format_plural:
type: boolean
label: 'Format plural'
format_plural_singular:
type: label
label: 'Singular form'
format_plural_plural:
type: label
label: 'Plural form'
prefix:
type: label
label: 'Prefix'
suffix:
type: label
label: 'Suffix'
views.field.prerender_list:
type: views_field
label: 'List'
mapping:
type:
type: string
label: 'Display type'
separator:
type: string
label: 'Separator'
views.field.serialized:
type: views_field
label: 'Serialized'
mapping:
format:
type: string
label: 'Display format'
key:
type: string
label: 'Which key should be displayed'
views.field.standard:
type: views_field
label: 'Standard'
views.field.time_interval:
type: views_field
label: 'Time interval'
mapping:
granularity:
type: integer
label: 'Granularity'
views.field.url:
type: views_field
label: 'URL'
mapping:
display_as_link:
type: boolean
label: 'Display as link'

View File

@ -0,0 +1,119 @@
# Schema for the views filter plugins.
views.filter.*:
type: views_filter
label: 'Default filter'
views_filter_boolean:
type: views_filter
mapping:
value:
type: boolean
views_filter_boolean_string:
type: views_filter_boolean
views.filter.broken:
type: views_filter
label: 'Broken'
views.filter.bundle:
type: views.filter.in_operator
label: 'Broken'
views.filter.combine:
type: views.filter.string
label: 'Combine'
views.filter.date:
type: views.filter.numeric
label: 'Date'
views.filter.in_operator:
type: views_filter
label: 'IN operartor'
mapping:
operator:
type: string
label: 'Operator'
value:
type: sequence
label: 'Values'
sequence:
- type: string
label: 'Value'
expose:
type: mapping
label: 'Expose'
mapping:
reduce:
type: boolean
label: 'Reduce'
views.filter.string:
type: views_filter
label: 'String'
mapping:
expose:
type: mapping
label: 'Exposed'
mapping:
required:
type: boolean
label: 'Required'
views.filter.numeric:
type: views_filter
label: 'Numeric'
mapping:
value:
type: mapping
label: 'Operator'
mapping:
min:
type: string
label: 'Min'
max:
type: string
label: 'And max'
value:
type: string
label: 'Value'
type:
type: string
label: 'Value type'
views.filter.equality:
type: views.filter.numeric
label: 'Broken'
views.filter.many_to_one:
type: views.filter.in_operator
label: 'Many to one'
mapping:
operator:
type: string
label: 'Operator'
value:
type: sequence
label: 'Values'
sequence:
- type: string
label: 'Value'
views.filter.group_items.string:
type: sequence
label: 'Group items'
sequence:
- type: mapping
label: 'Group item'
mapping:
title:
type: label
label: 'Label'
operator:
type: string
label: 'Operator'
value:
type: label
label: 'Value'

View File

@ -0,0 +1,5 @@
# Schema for the views filter value.
views.filter_value.boolean:
type: boolean
label: 'value'

View File

@ -0,0 +1,36 @@
# Schema for the views pager plugins.
views.pager.*:
type: views_pager
label: 'Default pager'
views.pager.none:
type: views_pager
label: 'Display all items'
views.pager.some:
type: views_pager
label: 'Display a specified number of items'
mapping:
items_per_page:
type: integer
label: 'Items per page'
views.pager.mini:
type: views_pager_sql
label: 'Paged output, mini pager'
views.pager.full:
type: views_pager_sql
label: 'Paged output, full pager'
mapping:
tags:
type: mapping
label: 'Tags'
mapping:
first:
type: label
label: 'First page link text'
last:
type: label
label: 'Last page link text'

View File

@ -0,0 +1,5 @@
# Schema for the views query.
views.query.views_query:
type: views_query
label: 'Views query'

View File

@ -0,0 +1,5 @@
# Schema for the views relationship.
views.relationship.standard:
type: views_relationship
label: 'Standard'

View File

@ -0,0 +1,21 @@
# Schema for the views row.
views.row.fields:
type: mapping
label: 'Field options'
mapping:
default_field_elements:
type: string
label: 'Provide default field wrapper elements'
inline:
type: sequence
label: 'Inline'
sequence:
- type: string
label: 'Inline'
separator:
type: string
label: 'Separator'
hide_empty:
type: boolean
label: 'Hide empty'

View File

@ -1,4 +1,5 @@
# View definition (multiple)
# Schema for the configuration files of the Views module.
views.view.*:
type: mapping
label: 'View'
@ -21,7 +22,7 @@ views.view.*:
label: 'Base table'
base_field:
label: 'Base field'
label:
human_name:
type: label
label: 'Human readable name'
core:
@ -46,190 +47,4 @@ views.view.*:
type: integer
label: 'Position'
display_options:
type: 'views.display.[%parent.display_plugin]'
langcode:
type: string
label: 'Default language'
# Views display: common
# Options for Drupal\views\Plugin\views\display\DisplayPluginBase
views.display.*:
type: mapping
label: 'Display options'
mapping:
title:
type: text
label: 'Display title'
format:
label: 'Format'
fields:
type: sequence
label: 'Fields'
sequence:
- type: 'views.field.[table]-[field]'
pager:
type: mapping
label: 'Pager'
mapping:
type:
label: 'Pager type'
options:
type: mapping
label: 'Options'
mapping:
offset:
type: integer
label: 'Offset'
exposed_form:
type: mapping
label: 'Exposed form'
mapping:
type:
label: 'Exposed form type'
access:
type: mapping
label: 'Access'
mapping:
type:
label: 'Access type'
other:
label: 'Other'
cache:
type: mapping
label: 'Cache'
mapping:
type:
label: 'Cache type'
sorts:
type: sequence
label: 'Sorts'
sequence:
- type: 'views.sort.[table]-[field]'
arguments:
type: sequence
label: 'Arguments'
sequence:
- type: 'views.argument.[table]-[field]'
filters:
type: sequence
label: 'Filters'
sequence:
- type: 'views.filter.[table]-[field]'
style:
type: mapping
label: 'Style'
mapping:
type:
label: 'Type'
row:
type: mapping
label: 'Row'
mapping:
type:
label: 'Row type'
options:
include: 'views.row.[%parent.type]'
query:
type: mapping
label: 'Query'
mapping:
type:
label: 'Query type'
options:
type: mapping
label: 'Query options'
mapping:
query_comment:
type: boolean
label: 'Query comment'
defaults:
type: mapping
label: 'Defaults'
mapping:
style_plugin:
label: 'Style plugin'
style_options:
type: 'views.style.[%parent.style_plugin]'
row_plugin:
label: 'Row plugin'
row_options:
type: 'views.style.[%parent.row_plugin]'
relationships:
type: sequence
label: 'Relationships'
sequence:
- type: 'views.relationship.[table]-[field]'
# Options for Drupal\views\Plugin\views\display\PathPluginBase
views.display.PathPluginBase:
include: 'views.display.%'
type: mapping
mapping:
path:
type: string
label: 'Page path'
# Views display plugin: Drupal\views\Plugin\views\display\Page
views.display.page:
type: 'views.display.PathPluginBase'
label: 'Page display options'
mapping:
menu:
type: mapping
label: 'Menu'
mapping:
type:
label: 'Type'
title:
type: text
label: 'Title'
description:
type: text
label: 'Description'
weight:
type: integer
label: 'Weight'
name:
label: 'Menu name'
context:
label: 'Context'
tab_options:
type: mapping
label: 'Tab options'
mapping:
type:
label: 'Type'
title:
type: text
label: 'Title'
description:
type: text
label: 'Description'
weight:
type: integer
label: 'Weight'
name:
label: 'Menu name'
# Views display plugin: Drupal\views\Plugin\views\display\Block
views.display.block:
type: 'views.display.%'
label: 'Block display options'
mapping:
block_description:
type: text
label: 'Block name'
block_caching:
label: 'Block caching'
# Views display plugin: Drupal\views\Plugin\views\display\Feed
views.display.feed:
type: 'views.display.PathPluginBase'
label: 'Feed display options'
mapping:
sitename_title:
type: boolean
label: 'Use the site name for the title'
displays:
label: 'The feed icon will be available only to the selected displays.'
type: views.display.[%parent.display_plugin]

View File

@ -0,0 +1,13 @@
# Schema for the views sort plugins.
views.sort.*:
type: views_sort
label: 'Default sort'
views.sort.boolean:
type: views_sort
label: 'Boolean sort'
views.sort.date:
type: views_sort
label: 'Date sort'

View File

@ -0,0 +1,8 @@
# Schema for the views sort expose.
views.sort_expose.boolean:
type: mapping
mapping:
label:
type: label
label: 'Label'

View File

@ -0,0 +1,112 @@
# Schema for the views style plugins.
views.style.*:
type: views_style
label: 'Default style'
views.style.default:
type: views_style
label: 'Unformatted list'
views.style.html_list:
type: views_style
label: 'HTML List'
mapping:
type:
type: string
label: 'List type'
wrapper_class:
type: string
label: 'Wrapper class'
class:
type: string
label: 'List class'
views.style.grid:
type: views_style
label: 'Grid'
mapping:
columns:
type: integer
label: 'Number of columns'
alignment:
type: string
label: 'Alignment'
fill_single_line:
type: boolean
label: 'Fill up single line'
summary:
type: string
label: 'Table summary'
views.style.table:
type: views_style
label: 'Table'
mapping:
columns:
type: sequence
label: 'Columns'
sequence:
- type: string
label: 'Columns name'
default:
type: string
label: 'Default sort'
info:
type: sequence
label: 'Columns info'
sequence:
- type: mapping
label: 'Column info'
mapping:
sortable:
type: boolean
label: 'Sortable'
default_sort_order:
type: string
label: 'Default order'
align:
type: string
label: 'Align'
separator:
type: string
label: 'Seprator'
empty_column:
type: boolean
label: 'Hide empty columns'
responsive:
type: string
label: 'Responsive'
override:
type: boolean
label: 'Override normal sorting if click sorting is used'
sticky:
type: boolean
label: 'Enable Drupal style "sticky" table headers (Javascript)'
summary:
type: label
label: 'Table summary'
order:
type: string
label: 'Default order'
empty_table:
type: boolean
label: 'Show the empty text in the table'
views.style.default_summary:
type: mapping
label: 'Summary options'
mapping:
base_path:
type: string
label: 'Base path'
count:
type: boolean
label: 'Display record count with link'
override:
type: boolean
label: 'Override number of items to display'
items_per_page:
type: integer
label: 'Items to display'