Issue #2370305 by Gábor Hojtsy, yched: Refactor field type configuration schemas for DX, easier to find errors
							parent
							
								
									6714300ac1
								
							
						
					
					
						commit
						7822393c30
					
				| 
						 | 
					@ -378,12 +378,16 @@ field_config_base:
 | 
				
			||||||
      type: boolean
 | 
					      type: boolean
 | 
				
			||||||
      label: 'Translatable'
 | 
					      label: 'Translatable'
 | 
				
			||||||
    default_value:
 | 
					    default_value:
 | 
				
			||||||
      type: field.[%parent.field_type].value
 | 
					      type: sequence
 | 
				
			||||||
 | 
					      label: 'Default values'
 | 
				
			||||||
 | 
					      sequence:
 | 
				
			||||||
 | 
					        - type: field.value.[%parent.%parent.field_type]
 | 
				
			||||||
 | 
					          label: 'Default value'
 | 
				
			||||||
    default_value_callback:
 | 
					    default_value_callback:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Default value callback'
 | 
					      label: 'Default value callback'
 | 
				
			||||||
    settings:
 | 
					    settings:
 | 
				
			||||||
      type: field.[%parent.field_type].field_settings
 | 
					      type: field.field_settings.[%parent.field_type]
 | 
				
			||||||
    third_party_settings:
 | 
					    third_party_settings:
 | 
				
			||||||
      type: sequence
 | 
					      type: sequence
 | 
				
			||||||
      label: 'Third party settings'
 | 
					      label: 'Third party settings'
 | 
				
			||||||
| 
						 | 
					@ -417,9 +421,23 @@ core.date_format.*:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Default language'
 | 
					      label: 'Default language'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Generic field settings schemas.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					field.storage_settings.*:
 | 
				
			||||||
 | 
					  type: mapping
 | 
				
			||||||
 | 
					  label: 'Settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					field.field_settings.*:
 | 
				
			||||||
 | 
					  type: mapping
 | 
				
			||||||
 | 
					  label: 'Settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					field.value.*:
 | 
				
			||||||
 | 
					  type: mapping
 | 
				
			||||||
 | 
					  label: 'Default value'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the String field type.
 | 
					# Schema for the configuration of the String field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.string.storage_settings:
 | 
					field.storage_settings.string:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'String settings'
 | 
					  label: 'String settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -427,16 +445,13 @@ field.string.storage_settings:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
      label: 'Maximum length'
 | 
					      label: 'Maximum length'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.string.field_settings:
 | 
					field.field_settings.string:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'String settings'
 | 
					  label: 'String settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.string.value:
 | 
					field.value.string:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
| 
						 | 
					@ -444,20 +459,17 @@ field.string.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the  String (long) field type.
 | 
					# Schema for the configuration of the  String (long) field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.string_long.storage_settings:
 | 
					field.storage_settings.string_long:
 | 
				
			||||||
  type: field.string.storage_settings
 | 
					  type: field.storage_settings.string
 | 
				
			||||||
  label: 'String (long) settings'
 | 
					  label: 'String (long) settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.string_long.field_settings:
 | 
					field.field_settings.string_long:
 | 
				
			||||||
  type: field.string.field_settings
 | 
					  type: field.field_settings.string
 | 
				
			||||||
  label: 'String (long) settings'
 | 
					  label: 'String (long) settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.string_long.value:
 | 
					field.value.string_long:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: text
 | 
					      type: text
 | 
				
			||||||
| 
						 | 
					@ -465,7 +477,7 @@ field.string_long.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the URI field type.
 | 
					# Schema for the configuration of the URI field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.uri.storage_settings:
 | 
					field.storage_settings.uri:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'URI settings'
 | 
					  label: 'URI settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -473,16 +485,13 @@ field.uri.storage_settings:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
      label: 'Maximum length'
 | 
					      label: 'Maximum length'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.uri.field_settings:
 | 
					field.field_settings.uri:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'URI settings'
 | 
					  label: 'URI settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.uri.value:
 | 
					field.value.uri:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
| 
						 | 
					@ -490,20 +499,17 @@ field.uri.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Created field type.
 | 
					# Schema for the configuration of the Created field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.created.storage_settings:
 | 
					field.storage_settings.created:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Created timestamp settings'
 | 
					  label: 'Created timestamp settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.created.field_settings:
 | 
					field.field_settings.created:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Created timestamp settings'
 | 
					  label: 'Created timestamp settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.created.value:
 | 
					field.value.created:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
| 
						 | 
					@ -511,20 +517,17 @@ field.created.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Changed field type.
 | 
					# Schema for the configuration of the Changed field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.changed.storage_settings:
 | 
					field.storage_settings.changed:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Changed timestamp settings'
 | 
					  label: 'Changed timestamp settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.changed.field_settings:
 | 
					field.field_settings.changed:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Changed timestamp settings'
 | 
					  label: 'Changed timestamp settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.changed.value:
 | 
					field.value.changed:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
| 
						 | 
					@ -532,7 +535,7 @@ field.changed.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Entity reference field type.
 | 
					# Schema for the configuration of the Entity reference field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.entity_reference.storage_settings:
 | 
					field.storage_settings.entity_reference:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Entity reference settings'
 | 
					  label: 'Entity reference settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -540,7 +543,7 @@ field.entity_reference.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Type of item to reference'
 | 
					      label: 'Type of item to reference'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.entity_reference.field_settings:
 | 
					field.field_settings.entity_reference:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Entity reference settings'
 | 
					  label: 'Entity reference settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -551,12 +554,9 @@ field.entity_reference.field_settings:
 | 
				
			||||||
      type: entity_reference.[%parent.handler].handler_settings
 | 
					      type: entity_reference.[%parent.handler].handler_settings
 | 
				
			||||||
      label: 'Reference method settings'
 | 
					      label: 'Reference method settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.entity_reference.value:
 | 
					field.value.entity_reference:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    target_id:
 | 
					    target_id:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
| 
						 | 
					@ -567,7 +567,7 @@ field.entity_reference.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Boolean field type.
 | 
					# Schema for the configuration of the Boolean field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.boolean.storage_settings:
 | 
					field.storage_settings.boolean:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Boolean settings'
 | 
					  label: 'Boolean settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -578,16 +578,12 @@ field.boolean.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Off label'
 | 
					      label: 'Off label'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.boolean.field_settings:
 | 
					field.field_settings.boolean:
 | 
				
			||||||
  label: 'Boolean settings'
 | 
					  label: 'Boolean settings'
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.boolean.value:
 | 
					field.value.boolean:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
| 
						 | 
					@ -595,25 +591,20 @@ field.boolean.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Email field type.
 | 
					# Schema for the configuration of the Email field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.email.storage_settings:
 | 
					field.storage_settings.email:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Email settings'
 | 
					  label: 'Email settings'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: string
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.email.field_settings:
 | 
					field.field_settings.email:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Email settings'
 | 
					  label: 'Email settings'
 | 
				
			||||||
  sequence:
 | 
					  sequence:
 | 
				
			||||||
    - type: string
 | 
					    - type: string
 | 
				
			||||||
      label: 'Setting'
 | 
					      label: 'Setting'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.email.value:
 | 
					field.value.email:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: email
 | 
					      type: email
 | 
				
			||||||
| 
						 | 
					@ -621,7 +612,7 @@ field.email.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Integer field type.
 | 
					# Schema for the configuration of the Integer field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.integer.storage_settings:
 | 
					field.storage_settings.integer:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Integer settings'
 | 
					  label: 'Integer settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -632,7 +623,7 @@ field.integer.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Database storage size'
 | 
					      label: 'Database storage size'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.integer.field_settings:
 | 
					field.field_settings.integer:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Integer'
 | 
					  label: 'Integer'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -649,11 +640,8 @@ field.integer.field_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Suffix'
 | 
					      label: 'Suffix'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.integer.value:
 | 
					field.value.integer:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
| 
						 | 
					@ -662,7 +650,7 @@ field.integer.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Decimal field type.
 | 
					# Schema for the configuration of the Decimal field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.decimal.storage_settings:
 | 
					field.storage_settings.decimal:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Decimal settings'
 | 
					  label: 'Decimal settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -673,9 +661,9 @@ field.decimal.storage_settings:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
      label: 'Scale'
 | 
					      label: 'Scale'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.decimal.field_settings:
 | 
					field.field_settings.decimal:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Decimal'
 | 
					  label: 'Decimal settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    min:
 | 
					    min:
 | 
				
			||||||
      type: float
 | 
					      type: float
 | 
				
			||||||
| 
						 | 
					@ -690,11 +678,8 @@ field.decimal.field_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Suffix'
 | 
					      label: 'Suffix'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.decimal.value:
 | 
					field.value.decimal:
 | 
				
			||||||
   type: sequence
 | 
					   type: mapping
 | 
				
			||||||
   label: 'Default value'
 | 
					 | 
				
			||||||
   sequence:
 | 
					 | 
				
			||||||
     - type: mapping
 | 
					 | 
				
			||||||
   label: 'Default value'
 | 
					   label: 'Default value'
 | 
				
			||||||
   mapping:
 | 
					   mapping:
 | 
				
			||||||
     value:
 | 
					     value:
 | 
				
			||||||
| 
						 | 
					@ -703,16 +688,13 @@ field.decimal.value:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Schema for the configuration of the Float field type.
 | 
					# Schema for the configuration of the Float field type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.float.storage_settings:
 | 
					field.storage_settings.float:
 | 
				
			||||||
  type: sequence
 | 
					 | 
				
			||||||
  label: 'Float settings'
 | 
					 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: string
 | 
					 | 
				
			||||||
      label: 'setting'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
field.float.field_settings:
 | 
					 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Float'
 | 
					  label: 'Float settings'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					field.field_settings.float:
 | 
				
			||||||
 | 
					  type: mapping
 | 
				
			||||||
 | 
					  label: 'Float settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    min:
 | 
					    min:
 | 
				
			||||||
      type: float
 | 
					      type: float
 | 
				
			||||||
| 
						 | 
					@ -727,11 +709,8 @@ field.float.field_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Suffix'
 | 
					      label: 'Suffix'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.float.value:
 | 
					field.value.float:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -154,8 +154,12 @@ class BaseFieldOverride extends FieldConfigBase {
 | 
				
			||||||
   *   BaseFieldOverride::allowBundleRename() has not been called.
 | 
					   *   BaseFieldOverride::allowBundleRename() has not been called.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  public function preSave(EntityStorageInterface $storage) {
 | 
					  public function preSave(EntityStorageInterface $storage) {
 | 
				
			||||||
    // Set the default instance settings.
 | 
					    // Filter out unknown settings and make sure all settings are present, so
 | 
				
			||||||
    $this->settings += \Drupal::service('plugin.manager.field.field_type')->getDefaultFieldSettings($this->getType());
 | 
					    // that a complete field definition is passed to the various hooks and
 | 
				
			||||||
 | 
					    // written to config.
 | 
				
			||||||
 | 
					    $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
 | 
				
			||||||
 | 
					    $default_settings = $field_type_manager->getDefaultFieldSettings($this->getType());
 | 
				
			||||||
 | 
					    $this->settings = array_intersect_key($this->settings, $default_settings) + $default_settings;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Call the parent's presave method to perform validate and calculate
 | 
					    // Call the parent's presave method to perform validate and calculate
 | 
				
			||||||
    // dependencies.
 | 
					    // dependencies.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -52,40 +52,38 @@ comment.type.*:
 | 
				
			||||||
      type: text
 | 
					      type: text
 | 
				
			||||||
      label: 'Description'
 | 
					      label: 'Description'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.comment.storage_settings:
 | 
					field.storage_settings.comment:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Settings'
 | 
					  label: 'Comment settings'
 | 
				
			||||||
  sequence:
 | 
					  mapping:
 | 
				
			||||||
    - type: string
 | 
					    comment_type:
 | 
				
			||||||
      label: 'Setting'
 | 
					      label: 'Comment type'
 | 
				
			||||||
 | 
					      type: string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.comment.value:
 | 
					field.value.comment:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Settings'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Settings'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    status:
 | 
					    status:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
          label: 'Status'
 | 
					      label: 'Comment status'
 | 
				
			||||||
    cid:
 | 
					    cid:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
          label: 'Status'
 | 
					      label: 'Last comment ID'
 | 
				
			||||||
    last_comment_timestamp:
 | 
					    last_comment_timestamp:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
      label: 'Last comment timestamp'
 | 
					      label: 'Last comment timestamp'
 | 
				
			||||||
    last_comment_name:
 | 
					    last_comment_name:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
          label: 'Name'
 | 
					      label: 'Last comment name'
 | 
				
			||||||
    last_comment_uid:
 | 
					    last_comment_uid:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
          label: 'UID'
 | 
					      label: 'Last comment user ID'
 | 
				
			||||||
    comment_count:
 | 
					    comment_count:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
          label: 'Count'
 | 
					      label: 'Number of comments'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.comment.field_settings:
 | 
					field.field_settings.comment:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Comment settings'
 | 
					  label: 'Comment settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
# Schema for the configuration files of the Datetime module.
 | 
					# Schema for the configuration files of the Datetime module.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.datetime.storage_settings:
 | 
					field.storage_settings.datetime:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Datetime settings'
 | 
					  label: 'Datetime settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -8,23 +8,20 @@ field.datetime.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Date type'
 | 
					      label: 'Date type'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.datetime.field_settings:
 | 
					field.field_settings.datetime:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Settings'
 | 
					  label: 'Datetime settings'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: string
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.datetime.value:
 | 
					field.value.datetime:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					  mapping:
 | 
				
			||||||
    - type: sequence
 | 
					    default_date_type:
 | 
				
			||||||
      label: 'Default value'
 | 
					      type: string
 | 
				
			||||||
      sequence:
 | 
					      label: 'Default date type'
 | 
				
			||||||
        - type: string
 | 
					    default_date:
 | 
				
			||||||
          label: 'Type'
 | 
					      type: string
 | 
				
			||||||
        - type: string
 | 
					      label: 'Default date value'
 | 
				
			||||||
          label: 'Value'
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.formatter.settings.datetime_default:
 | 
					field.formatter.settings.datetime_default:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -25,7 +25,7 @@ field.storage.*.*:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Type'
 | 
					      label: 'Type'
 | 
				
			||||||
    settings:
 | 
					    settings:
 | 
				
			||||||
      type: field.[%parent.type].storage_settings
 | 
					      type: field.storage_settings.[%parent.type]
 | 
				
			||||||
    module:
 | 
					    module:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Module'
 | 
					      label: 'Module'
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -138,9 +138,13 @@ class FieldConfig extends FieldConfigBase implements FieldConfigInterface {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    $storage_definition = $this->getFieldStorageDefinition();
 | 
					    $storage_definition = $this->getFieldStorageDefinition();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // Filter out unknown settings and make sure all settings are present, so
 | 
				
			||||||
 | 
					    // that a complete field definition is passed to the various hooks and
 | 
				
			||||||
 | 
					    // written to config.
 | 
				
			||||||
 | 
					    $default_settings = $field_type_manager->getDefaultFieldSettings($storage_definition->type);
 | 
				
			||||||
 | 
					    $this->settings = array_intersect_key($this->settings, $default_settings) + $default_settings;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if ($this->isNew()) {
 | 
					    if ($this->isNew()) {
 | 
				
			||||||
      // Set the default field settings.
 | 
					 | 
				
			||||||
      $this->settings += $field_type_manager->getDefaultFieldSettings($storage_definition->type);
 | 
					 | 
				
			||||||
      // Notify the entity storage.
 | 
					      // Notify the entity storage.
 | 
				
			||||||
      $entity_manager->getStorage($this->entity_type)->onFieldDefinitionCreate($this);
 | 
					      $entity_manager->getStorage($this->entity_type)->onFieldDefinitionCreate($this);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					@ -155,8 +159,6 @@ class FieldConfig extends FieldConfigBase implements FieldConfigInterface {
 | 
				
			||||||
      if ($storage_definition->uuid() != $this->original->getFieldStorageDefinition()->uuid()) {
 | 
					      if ($storage_definition->uuid() != $this->original->getFieldStorageDefinition()->uuid()) {
 | 
				
			||||||
        throw new FieldException("Cannot change an existing field's storage.");
 | 
					        throw new FieldException("Cannot change an existing field's storage.");
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      // Set the default field settings.
 | 
					 | 
				
			||||||
      $this->settings += $field_type_manager->getDefaultFieldSettings($storage_definition->type);
 | 
					 | 
				
			||||||
      // Notify the entity storage.
 | 
					      // Notify the entity storage.
 | 
				
			||||||
      $entity_manager->getStorage($this->entity_type)->onFieldDefinitionUpdate($this, $this->original);
 | 
					      $entity_manager->getStorage($this->entity_type)->onFieldDefinitionUpdate($this, $this->original);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -253,6 +253,13 @@ class FieldStorageConfig extends ConfigEntityBase implements FieldStorageConfigI
 | 
				
			||||||
    // Clear the derived data about the field.
 | 
					    // Clear the derived data about the field.
 | 
				
			||||||
    unset($this->schema);
 | 
					    unset($this->schema);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // Filter out unknown settings and make sure all settings are present, so
 | 
				
			||||||
 | 
					    // that a complete field definition is passed to the various hooks and
 | 
				
			||||||
 | 
					    // written to config.
 | 
				
			||||||
 | 
					    $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
 | 
				
			||||||
 | 
					    $default_settings = $field_type_manager->getDefaultStorageSettings($this->type);
 | 
				
			||||||
 | 
					    $this->settings = array_intersect_key($this->settings, $default_settings) + $default_settings;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if ($this->isNew()) {
 | 
					    if ($this->isNew()) {
 | 
				
			||||||
      $this->preSaveNew($storage);
 | 
					      $this->preSaveNew($storage);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					@ -303,10 +310,6 @@ class FieldStorageConfig extends ConfigEntityBase implements FieldStorageConfigI
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    $this->module = $field_type['provider'];
 | 
					    $this->module = $field_type['provider'];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Make sure all settings are present, so that a complete field
 | 
					 | 
				
			||||||
    // definition is passed to the various hooks and written to config.
 | 
					 | 
				
			||||||
    $this->settings += $field_type_manager->getDefaultStorageSettings($this->type);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Notify the entity manager.
 | 
					    // Notify the entity manager.
 | 
				
			||||||
    $entity_manager->onFieldStorageDefinitionCreate($this);
 | 
					    $entity_manager->onFieldStorageDefinitionCreate($this);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
| 
						 | 
					@ -333,7 +336,6 @@ class FieldStorageConfig extends ConfigEntityBase implements FieldStorageConfigI
 | 
				
			||||||
  protected function preSaveUpdated(EntityStorageInterface $storage) {
 | 
					  protected function preSaveUpdated(EntityStorageInterface $storage) {
 | 
				
			||||||
    $module_handler = \Drupal::moduleHandler();
 | 
					    $module_handler = \Drupal::moduleHandler();
 | 
				
			||||||
    $entity_manager = \Drupal::entityManager();
 | 
					    $entity_manager = \Drupal::entityManager();
 | 
				
			||||||
    $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Some updates are always disallowed.
 | 
					    // Some updates are always disallowed.
 | 
				
			||||||
    if ($this->type != $this->original->type) {
 | 
					    if ($this->type != $this->original->type) {
 | 
				
			||||||
| 
						 | 
					@ -343,10 +345,6 @@ class FieldStorageConfig extends ConfigEntityBase implements FieldStorageConfigI
 | 
				
			||||||
      throw new FieldException("Cannot change the entity type for an existing field storage.");
 | 
					      throw new FieldException("Cannot change the entity type for an existing field storage.");
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Make sure all settings are present, so that a complete field
 | 
					 | 
				
			||||||
    // definition is passed to the various hooks and written to config.
 | 
					 | 
				
			||||||
    $this->settings += $field_type_manager->getDefaultStorageSettings($this->type);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // See if any module forbids the update by throwing an exception. This
 | 
					    // See if any module forbids the update by throwing an exception. This
 | 
				
			||||||
    // invokes hook_field_storage_config_update_forbid().
 | 
					    // invokes hook_field_storage_config_update_forbid().
 | 
				
			||||||
    $module_handler->invokeAll('field_storage_config_update_forbid', array($this, $this->original));
 | 
					    $module_handler->invokeAll('field_storage_config_update_forbid', array($this, $this->original));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -22,7 +22,7 @@ file.settings:
 | 
				
			||||||
          type: path
 | 
					          type: path
 | 
				
			||||||
          label: 'Directory'
 | 
					          label: 'Directory'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.file.storage_settings:
 | 
					field.storage_settings.file:
 | 
				
			||||||
  type: base_entity_reference_field_settings
 | 
					  type: base_entity_reference_field_settings
 | 
				
			||||||
  label: 'File settings'
 | 
					  label: 'File settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -36,12 +36,9 @@ field.file.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Upload destination'
 | 
					      label: 'Upload destination'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.file.value:
 | 
					field.value.file:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: string
 | 
					 | 
				
			||||||
      label: 'Value'
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
base_file_field_field_settings:
 | 
					base_file_field_field_settings:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
| 
						 | 
					@ -59,7 +56,7 @@ base_file_field_field_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Maximum upload size'
 | 
					      label: 'Maximum upload size'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.file.field_settings:
 | 
					field.field_settings.file:
 | 
				
			||||||
  type: base_file_field_field_settings
 | 
					  type: base_file_field_field_settings
 | 
				
			||||||
  label: 'File settings'
 | 
					  label: 'File settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -83,15 +83,15 @@ image.settings:
 | 
				
			||||||
      type: boolean
 | 
					      type: boolean
 | 
				
			||||||
      label: 'Suppress the itok query string for image derivatives'
 | 
					      label: 'Suppress the itok query string for image derivatives'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.image.storage_settings:
 | 
					field.storage_settings.image:
 | 
				
			||||||
  type: field.file.storage_settings
 | 
					  type: field.storage_settings.file
 | 
				
			||||||
  label: 'Image settings'
 | 
					  label: 'Image settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    default_image:
 | 
					    default_image:
 | 
				
			||||||
      type: field_default_image
 | 
					      type: field_default_image
 | 
				
			||||||
      label: 'Default value'
 | 
					      label: 'Default value'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.image.field_settings:
 | 
					field.field_settings.image:
 | 
				
			||||||
  type: base_file_field_field_settings
 | 
					  type: base_file_field_field_settings
 | 
				
			||||||
  label: 'Image settings'
 | 
					  label: 'Image settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -117,28 +117,9 @@ field.image.field_settings:
 | 
				
			||||||
      type: field_default_image
 | 
					      type: field_default_image
 | 
				
			||||||
      label: 'Default value'
 | 
					      label: 'Default value'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.image.value:
 | 
					field.value.image:
 | 
				
			||||||
  type: sequence
 | 
					  type: field_default_image
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default image'
 | 
					 | 
				
			||||||
      mapping:
 | 
					 | 
				
			||||||
        fid:
 | 
					 | 
				
			||||||
          type: integer
 | 
					 | 
				
			||||||
          label: 'File ID'
 | 
					 | 
				
			||||||
        alt:
 | 
					 | 
				
			||||||
          type: string
 | 
					 | 
				
			||||||
          label: 'Alternative text'
 | 
					 | 
				
			||||||
        title:
 | 
					 | 
				
			||||||
          type: string
 | 
					 | 
				
			||||||
          label: 'Title text'
 | 
					 | 
				
			||||||
        width:
 | 
					 | 
				
			||||||
          type: integer
 | 
					 | 
				
			||||||
          label: 'Width'
 | 
					 | 
				
			||||||
        height:
 | 
					 | 
				
			||||||
          type: integer
 | 
					 | 
				
			||||||
          label: 'Height'
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.formatter.settings.image:
 | 
					field.formatter.settings.image:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,8 +44,6 @@ class FieldSettings extends ProcessPluginBase {
 | 
				
			||||||
   *   A valid array of settings.
 | 
					   *   A valid array of settings.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  public function getSettings($field_type, $global_settings, $widget_settings) {
 | 
					  public function getSettings($field_type, $global_settings, $widget_settings) {
 | 
				
			||||||
    $image_label = isset($widget_settings['alt']) ? $widget_settings['alt'] : '';
 | 
					 | 
				
			||||||
    $title_label = isset($widget_settings['title']) ? $widget_settings['title'] : '';
 | 
					 | 
				
			||||||
    $max_length = isset($global_settings['max_length']) ? $global_settings['max_length'] : '';
 | 
					    $max_length = isset($global_settings['max_length']) ? $global_settings['max_length'] : '';
 | 
				
			||||||
    $max_length = empty($max_length) ? 255 : $max_length;
 | 
					    $max_length = empty($max_length) ? 255 : $max_length;
 | 
				
			||||||
    if (isset($global_settings['allowed_values'])) {
 | 
					    if (isset($global_settings['allowed_values'])) {
 | 
				
			||||||
| 
						 | 
					@ -74,12 +72,6 @@ class FieldSettings extends ProcessPluginBase {
 | 
				
			||||||
      'text' => array(
 | 
					      'text' => array(
 | 
				
			||||||
        'max_length' => $max_length,
 | 
					        'max_length' => $max_length,
 | 
				
			||||||
      ),
 | 
					      ),
 | 
				
			||||||
      'image' => array(
 | 
					 | 
				
			||||||
        'column_groups' => array(
 | 
					 | 
				
			||||||
          'alt' => array('label' => $image_label),
 | 
					 | 
				
			||||||
          'title' => array('label' => $title_label),
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
      ),
 | 
					 | 
				
			||||||
      'datetime' => array('datetime_type' => 'datetime'),
 | 
					      'datetime' => array('datetime_type' => 'datetime'),
 | 
				
			||||||
      'list_string' => array(
 | 
					      'list_string' => array(
 | 
				
			||||||
        'allowed_values' => $allowed_values,
 | 
					        'allowed_values' => $allowed_values,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -70,8 +70,6 @@ class MigrateFieldTest extends MigrateDrupalTestBase {
 | 
				
			||||||
    $field_storage = entity_load('field_storage_config', 'node.field_test_imagefield');
 | 
					    $field_storage = entity_load('field_storage_config', 'node.field_test_imagefield');
 | 
				
			||||||
    $this->assertEqual($field_storage->type, "image",  t('Field type is @fieldtype. It should be image.', array('@fieldtype' => $field_storage->type)));
 | 
					    $this->assertEqual($field_storage->type, "image",  t('Field type is @fieldtype. It should be image.', array('@fieldtype' => $field_storage->type)));
 | 
				
			||||||
    $settings = $field_storage->getSettings();
 | 
					    $settings = $field_storage->getSettings();
 | 
				
			||||||
    $this->assertEqual($settings['column_groups']['alt']['label'], 'Test alt');
 | 
					 | 
				
			||||||
    $this->assertEqual($settings['column_groups']['title']['label'], 'Test title');
 | 
					 | 
				
			||||||
    $this->assertEqual($settings['target_type'], 'file');
 | 
					    $this->assertEqual($settings['target_type'], 'file');
 | 
				
			||||||
    $this->assertEqual($settings['uri_scheme'], 'public');
 | 
					    $this->assertEqual($settings['uri_scheme'], 'public');
 | 
				
			||||||
    $this->assertEqual($settings['default_image']['fid'], '');
 | 
					    $this->assertEqual($settings['default_image']['fid'], '');
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
# Schema for the configuration files of the Options module.
 | 
					# Schema for the configuration files of the Options module.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_integer.storage_settings:
 | 
					field.storage_settings.list_integer:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'List (integer) settings'
 | 
					  label: 'List (integer) settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -21,23 +21,19 @@ field.list_integer.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Allowed values function'
 | 
					      label: 'Allowed values function'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_integer.field_settings:
 | 
					field.field_settings.list_integer:
 | 
				
			||||||
  label: 'List (integer)'
 | 
					  label: 'List (integer) settings'
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  mapping: {  }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_integer.value:
 | 
					field.value.list_integer:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
      label: 'Value'
 | 
					      label: 'Value'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_float.storage_settings:
 | 
					field.storage_settings.list_float:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'List (float) settings'
 | 
					  label: 'List (float) settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -58,23 +54,19 @@ field.list_float.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Allowed values function'
 | 
					      label: 'Allowed values function'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_float.field_settings:
 | 
					field.field_settings.list_float:
 | 
				
			||||||
  label: 'List (float)'
 | 
					  label: 'List (float) settings'
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  mapping: {  }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_float.value:
 | 
					field.value.list_float:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Value'
 | 
					      label: 'Value'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_string.storage_settings:
 | 
					field.storage_settings.list_string:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'List (text) settings'
 | 
					  label: 'List (text) settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -95,17 +87,13 @@ field.list_string.storage_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Allowed values function'
 | 
					      label: 'Allowed values function'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_string.field_settings:
 | 
					field.field_settings.list_string:
 | 
				
			||||||
  label: 'List (float)'
 | 
					  label: 'List (text) settings'
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  mapping: {  }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.list_string.value:
 | 
					field.value.list_string:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -39,7 +39,7 @@ taxonomy.vocabulary.*:
 | 
				
			||||||
      sequence:
 | 
					      sequence:
 | 
				
			||||||
        - type: taxonomy.vocabulary.third_party.[%key]
 | 
					        - type: taxonomy.vocabulary.third_party.[%key]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.taxonomy_term_reference.storage_settings:
 | 
					field.storage_settings.taxonomy_term_reference:
 | 
				
			||||||
  type: base_entity_reference_field_settings
 | 
					  type: base_entity_reference_field_settings
 | 
				
			||||||
  label: 'Taxonomy term reference settings'
 | 
					  label: 'Taxonomy term reference settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -60,7 +60,7 @@ field.taxonomy_term_reference.storage_settings:
 | 
				
			||||||
              type: integer
 | 
					              type: integer
 | 
				
			||||||
              value: 'Parent'
 | 
					              value: 'Parent'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.taxonomy_term_reference.field_settings:
 | 
					field.field_settings.taxonomy_term_reference:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Taxonomy term reference settings'
 | 
					  label: 'Taxonomy term reference settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -68,11 +68,8 @@ field.taxonomy_term_reference.field_settings:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Reference method'
 | 
					      label: 'Reference method'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.taxonomy_term_reference.value:
 | 
					field.value.taxonomy_term_reference:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default values'
 | 
					 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    target_id:
 | 
					    target_id:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,7 +8,7 @@ text.settings:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
      label: 'Default summary length'
 | 
					      label: 'Default summary length'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text.storage_settings:
 | 
					field.storage_settings.text:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Text (formatted) settings'
 | 
					  label: 'Text (formatted) settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -16,18 +16,13 @@ field.text.storage_settings:
 | 
				
			||||||
      type: integer
 | 
					      type: integer
 | 
				
			||||||
      label: 'Maximum length'
 | 
					      label: 'Maximum length'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text.field_settings:
 | 
					field.field_settings.text:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Text (formatted) settings'
 | 
					  label: 'Text (formatted) settings'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: string
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text.value:
 | 
					field.value.text:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: label
 | 
					      type: label
 | 
				
			||||||
| 
						 | 
					@ -36,22 +31,17 @@ field.text.value:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Text format'
 | 
					      label: 'Text format'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text_long.storage_settings:
 | 
					field.storage_settings.text_long:
 | 
				
			||||||
  label: 'Text (formatted, long) settings'
 | 
					  label: 'Text (formatted, long) settings'
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  mapping: {  }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text_long.field_settings:
 | 
					field.field_settings.text_long:
 | 
				
			||||||
  label: 'Text (formatted, long) settings'
 | 
					  label: 'Text (formatted, long) settings'
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  mapping: {  }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text_long.value:
 | 
					field.value.text_long:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: text
 | 
					      type: text
 | 
				
			||||||
| 
						 | 
					@ -60,12 +50,11 @@ field.text_long.value:
 | 
				
			||||||
      type: string
 | 
					      type: string
 | 
				
			||||||
      label: 'Text format'
 | 
					      label: 'Text format'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text_with_summary.storage_settings:
 | 
					field.storage_settings.text_with_summary:
 | 
				
			||||||
  label: 'Text (formatted, long, with summary) settings'
 | 
					  label: 'Text (formatted, long, with summary) settings'
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  mapping: {  }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text_with_summary.field_settings:
 | 
					field.field_settings.text_with_summary:
 | 
				
			||||||
  type: mapping
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Text (formatted, long, with summary) settings'
 | 
					  label: 'Text (formatted, long, with summary) settings'
 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
| 
						 | 
					@ -73,12 +62,9 @@ field.text_with_summary.field_settings:
 | 
				
			||||||
      type: boolean
 | 
					      type: boolean
 | 
				
			||||||
      label: 'Summary input'
 | 
					      label: 'Summary input'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
field.text_with_summary.value:
 | 
					field.value.text_with_summary:
 | 
				
			||||||
  type: sequence
 | 
					  type: mapping
 | 
				
			||||||
  label: 'Default value'
 | 
					  label: 'Default value'
 | 
				
			||||||
  sequence:
 | 
					 | 
				
			||||||
    - type: mapping
 | 
					 | 
				
			||||||
      label: 'Default'
 | 
					 | 
				
			||||||
  mapping:
 | 
					  mapping:
 | 
				
			||||||
    value:
 | 
					    value:
 | 
				
			||||||
      type: text
 | 
					      type: text
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue