Same filename and directory in other branches
  1. 8.9.x core/config/schema/core.data_types.schema.yml
  2. 9 core/config/schema/core.data_types.schema.yml
core/config/schema/core.data_types.schema.yml

File

core/config/schema/core.data_types.schema.yml
View source
  1. # Base types provided by Drupal core.
  2. # Read https://www.drupal.org/node/1905070 for more details about configuration
  3. # schema, types and type resolution.
  4. # Undefined type used by the system to assign to elements at any level where
  5. # configuration schema is not defined. Using explicitly has the same effect as
  6. # not defining schema, so there is no point in doing that.
  7. undefined:
  8. label: 'Undefined'
  9. class: '\Drupal\Core\Config\Schema\Undefined'
  10. # Explicit type to use when no data typing is possible. Instead of using this
  11. # type, we strongly suggest you use configuration structures that can be
  12. # described with other structural elements of schema, and describe your schema
  13. # with those elements.
  14. ignore:
  15. label: 'Ignore'
  16. class: '\Drupal\Core\Config\Schema\Ignore'
  17. # Basic scalar data types from typed data.
  18. boolean:
  19. label: 'Boolean'
  20. class: '\Drupal\Core\TypedData\Plugin\DataType\BooleanData'
  21. email:
  22. label: 'Email'
  23. class: '\Drupal\Core\TypedData\Plugin\DataType\Email'
  24. constraints:
  25. Email:
  26. message: "%value is not a valid email address."
  27. integer:
  28. label: 'Integer'
  29. class: '\Drupal\Core\TypedData\Plugin\DataType\IntegerData'
  30. timestamp:
  31. label: 'Timestamp'
  32. class: '\Drupal\Core\TypedData\Plugin\DataType\Timestamp'
  33. float:
  34. label: 'Float'
  35. class: '\Drupal\Core\TypedData\Plugin\DataType\FloatData'
  36. string:
  37. label: 'String'
  38. class: '\Drupal\Core\TypedData\Plugin\DataType\StringData'
  39. uri:
  40. label: 'Uri'
  41. class: '\Drupal\Core\TypedData\Plugin\DataType\Uri'
  42. # Container data types for lists with known and unknown keys.
  43. mapping:
  44. label: Mapping
  45. class: '\Drupal\Core\Config\Schema\Mapping'
  46. definition_class: '\Drupal\Core\TypedData\MapDataDefinition'
  47. mapping: {}
  48. constraints:
  49. # By default, allow the explicitly listed mapping keys, and require their
  50. # presence unless `requiredKey: false` is specified.
  51. ValidKeys: '<infer>'
  52. sequence:
  53. label: Sequence
  54. class: '\Drupal\Core\Config\Schema\Sequence'
  55. definition_class: '\Drupal\Core\Config\Schema\SequenceDataDefinition'
  56. # Simple extended data types:
  57. # Human readable string that must be plain text and editable with a text field.
  58. label:
  59. type: string
  60. label: 'Optional label'
  61. translatable: true
  62. constraints:
  63. Regex:
  64. # Forbid any kind of control character.
  65. # @see https://stackoverflow.com/a/66587087
  66. pattern: '/([^\PC])/u'
  67. match: false
  68. message: 'Labels are not allowed to span multiple lines or contain control characters.'
  69. required_label:
  70. type: label
  71. label: 'Label'
  72. constraints:
  73. NotBlank: {}
  74. # String containing plural variants, separated by EXT.
  75. plural_label:
  76. type: label
  77. label: 'Plural variants'
  78. # Internal Drupal path
  79. path:
  80. type: string
  81. label: 'Path'
  82. # Human readable string that can contain multiple lines of text or HTML.
  83. text:
  84. type: string
  85. label: 'Text'
  86. translatable: true
  87. constraints:
  88. Regex:
  89. # Disallow all control characters except for tabs (ASCII 9, 0x09) as well
  90. # as carriage returns (ASCII 13, 0x0D) and line feeds (ASCII 10, 0x0A),
  91. # which are used for line endings:
  92. # - Windows: `\r\n`
  93. # - old macOS: `\r`
  94. # - *nix: `\n`
  95. # @see https://stackoverflow.com/a/66587087
  96. pattern: '/([^\PC\x09\x0a\x0d])/u'
  97. match: false
  98. message: 'Text is not allowed to contain control characters, only visible characters.'
  99. # A UUID.
  100. uuid:
  101. type: string
  102. label: 'UUID'
  103. constraints:
  104. Uuid: {}
  105. # PHP Date format string that is translatable.
  106. date_format:
  107. type: string
  108. label: 'Date format'
  109. translatable: true
  110. translation context: 'PHP date format'
  111. # HTML color value.
  112. color_hex:
  113. type: string
  114. label: 'Color'
  115. constraints:
  116. # TRICKY: this cannot reuse the Color::validateHex() logic because:
  117. # 1. Color::validateHex() would not allow NULL, but this constraint does.
  118. # (Anything in config can be marked optional, so NULL must never trigger
  119. # a validation error) Color::validateHex() does not allow this.
  120. # 2. The Regex constraint is something that an external tool (no matter
  121. # whether that's something generating/validating Drupal config or a
  122. # JSON:API/REST/GraphQL/… client) to also correctly validate this.
  123. Regex:
  124. # Regex copied from Color::validateHex()
  125. pattern: '/^[#]?([0-9a-fA-F]{3}){1,2}$/'
  126. message: "%value is not a valid hexadecimal color."
  127. # Machine-readable identifier that can only contain certain characters.
  128. machine_name:
  129. type: string
  130. label: 'Machine name'
  131. constraints:
  132. Regex:
  133. pattern: '/^[a-z0-9_]+$/'
  134. message: "The %value machine name is not valid."
  135. Length:
  136. # @see \Drupal\Core\Config\Entity\ConfigEntityStorage::MAX_ID_LENGTH
  137. max: 166
  138. # A language identifier.
  139. langcode:
  140. type: string
  141. label: 'Language code'
  142. constraints:
  143. NotNull: []
  144. Choice:
  145. callback: 'Drupal\Core\TypedData\Plugin\DataType\LanguageReference::getAllValidLangcodes'
  146. # A number of bytes; either a plain number or with a size indication such as "MB".
  147. # @see \Drupal\Component\Utility\Bytes
  148. bytes:
  149. type: string
  150. label: 'Bytes'
  151. constraints:
  152. Callback: ['\Drupal\Component\Utility\Bytes', 'validateConstraint']
  153. weight:
  154. type: integer
  155. label: 'Weight'
  156. constraints:
  157. Range:
  158. # @see PHP_INT_MIN (32-bit)
  159. min: -2147483648
  160. # @see PHP_INT_MAX (32-bit)
  161. max: 2147483647
  162. FullyValidatable: ~
  163. # Complex extended data types:
  164. # Root of a configuration object.
  165. _core_config_info:
  166. type: mapping
  167. mapping:
  168. default_config_hash:
  169. type: string
  170. label: 'Default configuration hash'
  171. constraints:
  172. NotNull: []
  173. Regex: '/^[a-zA-Z0-9\-_]+$/'
  174. # The hash is a base64-encoded version of the config's SHA-256 hash. Given
  175. # the deterministic length of a SHA-256 hash, and the way base64 encoding
  176. # works, this is always going to be 43 characters long.
  177. Length: 43
  178. constraints:
  179. ValidKeys: ['default_config_hash']
  180. config_object:
  181. type: mapping
  182. mapping:
  183. _core:
  184. # This only exists for merging configuration; it's not required.
  185. requiredKey: false
  186. type: _core_config_info
  187. langcode:
  188. requiredKey: false
  189. type: langcode
  190. constraints:
  191. # The `langcode` key:
  192. # - MUST be specified when there are translatable values
  193. # - MUST NOT be specified when there are no translatable values.
  194. # Translatable values are specified for this config schema type (a subtype of `type: config_object`) if the
  195. # `translatable` flag is present and set to `true` for *any* element in that config schema type.
  196. LangcodeRequiredIfTranslatableValues: ~
  197. # Mail text with subject and body parts.
  198. mail:
  199. type: mapping
  200. label: 'Mail'
  201. mapping:
  202. subject:
  203. type: required_label
  204. label: 'Subject'
  205. body:
  206. type: text
  207. label: 'Body'
  208. # Filter with module and status.
  209. filter:
  210. type: mapping
  211. label: 'Filter'
  212. mapping:
  213. id:
  214. type: string
  215. label: 'ID'
  216. constraints:
  217. PluginExists:
  218. manager: plugin.manager.filter
  219. interface: 'Drupal\filter\Plugin\FilterInterface'
  220. provider:
  221. type: string
  222. label: 'Provider'
  223. status:
  224. type: boolean
  225. label: 'Status'
  226. weight:
  227. type: weight
  228. label: 'Weight'
  229. settings:
  230. type: filter_settings.[%parent.id]
  231. # System action configuration base.
  232. action_configuration_default:
  233. type: sequence
  234. label: 'Action configuration'
  235. sequence:
  236. type: string
  237. theme_settings:
  238. type: config_object
  239. mapping:
  240. favicon:
  241. type: mapping
  242. label: 'Shortcut icon settings'
  243. mapping:
  244. mimetype:
  245. type: string
  246. label: 'MIME type'
  247. path:
  248. type: string
  249. label: 'Path'
  250. url:
  251. type: string
  252. label: 'URL'
  253. use_default:
  254. type: boolean
  255. label: 'Use the default shortcut icon supplied by the theme'
  256. features:
  257. type: mapping
  258. label: 'Optional features'
  259. mapping:
  260. comment_user_picture:
  261. type: boolean
  262. label: 'User pictures in comments'
  263. comment_user_verification:
  264. type: boolean
  265. label: 'User verification status in comments'
  266. favicon:
  267. type: boolean
  268. label: 'Shortcut icon'
  269. logo:
  270. type: boolean
  271. label: 'Logo'
  272. name:
  273. type: boolean
  274. label: 'Site name'
  275. node_user_picture:
  276. type: boolean
  277. label: 'User pictures in posts'
  278. slogan:
  279. type: boolean
  280. label: 'Site slogan'
  281. logo:
  282. type: mapping
  283. label: 'Logo settings'
  284. mapping:
  285. path:
  286. type: string
  287. label: 'Logo path'
  288. url:
  289. type: uri
  290. nullable: true
  291. label: 'URL'
  292. use_default:
  293. type: boolean
  294. label: 'Use default'
  295. third_party_settings:
  296. # Third party settings are always optional: they're an optional extension
  297. # point.
  298. requiredKey: false
  299. type: sequence
  300. label: 'Third party settings'
  301. sequence:
  302. type: theme_settings.third_party.[%key]
  303. # Array of routes with route_name and route_params keys.
  304. route:
  305. type: mapping
  306. label: 'Route'
  307. mapping:
  308. route_name:
  309. type: string
  310. label: 'Route Name'
  311. route_params:
  312. type: sequence
  313. label: 'Route Params'
  314. sequence:
  315. type: string
  316. label: 'Param'
  317. # Config dependencies.
  318. config_dependencies_base:
  319. type: mapping
  320. mapping:
  321. config:
  322. # All dependency keys are optional: this might not depend on any other config.
  323. requiredKey: false
  324. type: sequence
  325. label: 'Configuration entity dependencies'
  326. sequence:
  327. type: string
  328. constraints:
  329. NotBlank: []
  330. ConfigExists: []
  331. content:
  332. # All dependency keys are optional: this might not depend on any content entities.
  333. requiredKey: false
  334. type: sequence
  335. label: 'Content entity dependencies'
  336. sequence:
  337. type: string
  338. module:
  339. # All dependency keys are optional: this might not depend on any modules.
  340. requiredKey: false
  341. type: sequence
  342. label: 'Module dependencies'
  343. sequence:
  344. type: string
  345. constraints:
  346. NotBlank: []
  347. ExtensionName: []
  348. ExtensionExists: module
  349. theme:
  350. # All dependency keys are optional: this might not depend on any themes.
  351. requiredKey: false
  352. type: sequence
  353. label: 'Theme dependencies'
  354. sequence:
  355. type: string
  356. constraints:
  357. NotBlank: []
  358. ExtensionName: []
  359. ExtensionExists: theme
  360. constraints:
  361. ValidKeys: '<infer>'
  362. config_dependencies:
  363. type: config_dependencies_base
  364. label: 'Configuration dependencies'
  365. mapping:
  366. enforced:
  367. # All dependency keys are optional: this may have no dependencies at all.
  368. requiredKey: false
  369. type: config_dependencies_base
  370. label: 'Enforced configuration dependencies'
  371. constraints:
  372. ValidKeys: '<infer>'
  373. config_entity:
  374. type: mapping
  375. mapping:
  376. uuid:
  377. type: uuid
  378. label: 'UUID'
  379. langcode:
  380. type: langcode
  381. status:
  382. type: boolean
  383. label: 'Status'
  384. dependencies:
  385. type: config_dependencies
  386. label: 'Dependencies'
  387. third_party_settings:
  388. # Third party settings are always optional: they're an optional extension
  389. # point.
  390. requiredKey: false
  391. type: sequence
  392. label: 'Third party settings'
  393. sequence:
  394. type: '[%parent.%parent.%type].third_party.[%key]'
  395. _core:
  396. # This only exists for merging configuration; it's not required.
  397. requiredKey: false
  398. type: _core_config_info
  399. block.settings.*:
  400. type: block_settings
  401. block_settings:
  402. type: mapping
  403. label: 'Block settings'
  404. mapping:
  405. id:
  406. type: string
  407. label: 'ID'
  408. label:
  409. type: label
  410. label: 'Description'
  411. label_display:
  412. type: string
  413. label: 'Display title'
  414. provider:
  415. type: string
  416. label: 'Provider'
  417. status:
  418. type: boolean
  419. label: 'Status'
  420. info:
  421. type: label
  422. label: 'Admin info'
  423. view_mode:
  424. type: string
  425. label: 'View mode'
  426. context_mapping:
  427. type: sequence
  428. label: 'Context assignments'
  429. sequence:
  430. type: string
  431. condition.plugin:
  432. type: mapping
  433. label: 'Condition'
  434. mapping:
  435. id:
  436. type: string
  437. label: 'ID'
  438. constraints:
  439. PluginExists:
  440. manager: plugin.manager.condition
  441. interface: 'Drupal\Core\Condition\ConditionInterface'
  442. negate:
  443. type: boolean
  444. label: 'Negate'
  445. uuid:
  446. type: uuid
  447. context_mapping:
  448. type: sequence
  449. label: 'Context assignments'
  450. sequence:
  451. type: string
  452. condition.plugin.entity_bundle:*:
  453. type: condition.plugin
  454. mapping:
  455. bundles:
  456. type: sequence
  457. sequence:
  458. type: string
  459. display_variant.plugin:
  460. type: mapping
  461. label: 'Display variant'
  462. mapping:
  463. id:
  464. type: string
  465. label: 'ID'
  466. label:
  467. type: required_label
  468. label: 'Label'
  469. weight:
  470. type: weight
  471. label: 'Weight'
  472. uuid:
  473. type: uuid
  474. layout_plugin.settings:
  475. type: mapping
  476. label: 'Layout settings'
  477. mapping:
  478. label:
  479. type: label
  480. label: 'Label'
  481. context_mapping:
  482. type: sequence
  483. label: 'Context assignments'
  484. sequence:
  485. type: string
  486. # Specify defaults.
  487. layout_plugin.settings.*:
  488. type: layout_plugin.settings
  489. base_entity_reference_field_settings:
  490. type: mapping
  491. mapping:
  492. target_type:
  493. type: string
  494. label: 'Type of item to reference'
  495. field_config_base:
  496. type: config_entity
  497. mapping:
  498. id:
  499. type: string
  500. label: 'ID'
  501. field_name:
  502. type: string
  503. label: 'Field name'
  504. entity_type:
  505. type: string
  506. label: 'Entity type'
  507. bundle:
  508. type: string
  509. label: 'Bundle'
  510. constraints:
  511. EntityBundleExists: '%parent.entity_type'
  512. label:
  513. type: required_label
  514. label: 'Label'
  515. description:
  516. type: text
  517. label: 'Help text'
  518. required:
  519. type: boolean
  520. label: 'Required field'
  521. translatable:
  522. type: boolean
  523. label: 'Translatable'
  524. default_value:
  525. type: sequence
  526. label: 'Default values'
  527. sequence:
  528. type: field.value.[%parent.%parent.field_type]
  529. label: 'Default value'
  530. default_value_callback:
  531. type: string
  532. label: 'Default value callback'
  533. settings:
  534. type: field.field_settings.[%parent.field_type]
  535. field_type:
  536. type: string
  537. label: 'Field type'
  538. constraints:
  539. PluginExists:
  540. manager: plugin.manager.field.field_type
  541. interface: '\Drupal\Core\Field\FieldItemInterface'
  542. core.base_field_override.*.*.*:
  543. type: field_config_base
  544. label: 'Base field bundle override'
  545. core.date_format.*:
  546. type: config_entity
  547. label: 'Date format'
  548. mapping:
  549. id:
  550. type: machine_name
  551. label: 'ID'
  552. label:
  553. type: required_label
  554. label: 'Label'
  555. locked:
  556. type: boolean
  557. label: 'Locked'
  558. pattern:
  559. type: core_date_format_pattern.[%parent.locked]
  560. label: 'PHP date format'
  561. constraints:
  562. NotBlank: []
  563. # A valid date format character must appear somewhere in the value.
  564. # See https://www.php.net/manual/en/datetime.format.php
  565. Regex:
  566. pattern: '/[aABcdDeFgGhHiIjlLmMnNoOpPrsStTuUvwWxXyYzZ]/'
  567. message: 'This is not a valid date format.'
  568. constraints:
  569. FullyValidatable: ~
  570. # Unlocked date formats should use the translatable type.
  571. core_date_format_pattern.0:
  572. type: date_format
  573. label: 'Date format'
  574. # Locked date formats are just used to transport the value.
  575. core_date_format_pattern.1:
  576. type: string
  577. label: 'Date format'
  578. # Generic field settings schemas.
  579. field.storage_settings.*:
  580. type: mapping
  581. label: 'Settings'
  582. # By default, a field type has no settings, so this can safely be considered
  583. # fully validatable. A `FOO` field type that has one or more settings is
  584. # required to create a `field.storage_settings.FOO` config schema type, and
  585. # cannot possibly forget to do that, because validation errors would be
  586. # triggered if it ever tried to save a setting, since this mapping allows no
  587. # key-value pairs at all.
  588. constraints:
  589. FullyValidatable: ~
  590. field.field_settings.*:
  591. type: mapping
  592. label: 'Settings'
  593. # By default, a field type has no settings, so this can safely be considered
  594. # fully validatable. A `FOO` field type that has one or more settings is
  595. # required to create a `field.field_settings.FOO` config schema type, and
  596. # cannot possibly forget to do that, because validation errors would be
  597. # triggered if it ever tried to save a setting, since this mapping allows no
  598. # key-value pairs at all.
  599. constraints:
  600. FullyValidatable: ~
  601. field.value.*:
  602. type: mapping
  603. label: 'Default value'
  604. # Schema for the configuration of the String field type.
  605. # This field type has no field instance settings, so no specific config schema type.
  606. # @see `type: field.field_settings.*`
  607. field.storage_settings.string:
  608. type: mapping
  609. label: 'String settings'
  610. mapping:
  611. max_length:
  612. type: integer
  613. label: 'Maximum length'
  614. case_sensitive:
  615. type: boolean
  616. label: 'Case sensitive'
  617. is_ascii:
  618. type: boolean
  619. label: 'Contains US ASCII characters only'
  620. field.value.string:
  621. type: mapping
  622. label: 'Default value'
  623. mapping:
  624. value:
  625. type: label
  626. label: 'Value'
  627. # Schema for the configuration of the String (long) field type.
  628. field.storage_settings.string_long:
  629. type: mapping
  630. label: 'String (long) settings'
  631. mapping:
  632. case_sensitive:
  633. type: boolean
  634. label: 'Case sensitive'
  635. field.value.string_long:
  636. type: mapping
  637. label: 'Default value'
  638. mapping:
  639. value:
  640. type: text
  641. label: 'Value'
  642. # Schema for the configuration of the Password field type.
  643. # This field type has no field instance settings, so no specific config schema type.
  644. # @see `type: field.field_settings.*`
  645. field.storage_settings.password:
  646. type: field.storage_settings.string
  647. label: 'Password settings'
  648. # Schema for the configuration of the URI field type.
  649. # This field type has no field instance settings, so no specific config schema type.
  650. # @see `type: field.field_settings.*`
  651. field.storage_settings.uri:
  652. type: field.storage_settings.string
  653. label: 'URI settings'
  654. mapping:
  655. max_length:
  656. type: integer
  657. label: 'Maximum length'
  658. case_sensitive:
  659. type: boolean
  660. label: 'Case sensitive'
  661. field.value.uri:
  662. type: mapping
  663. label: 'Default value'
  664. mapping:
  665. value:
  666. type: string
  667. label: 'Value'
  668. # Schema for the configuration of the Created field type.
  669. # This field type has no field storage settings, so no specific config schema type.
  670. # @see `type: field.storage_settings.*`
  671. # This field type has no field instance settings, so no specific config schema type.
  672. # @see `type: field.field_settings.*`
  673. field.value.created:
  674. type: mapping
  675. label: 'Default value'
  676. mapping:
  677. value:
  678. type: integer
  679. label: 'Value'
  680. # Schema for the configuration of the Changed field type.
  681. # This field type has no field storage settings, so no specific config schema type.
  682. # @see `type: field.storage_settings.*`
  683. # This field type has no field instance settings, so no specific config schema type.
  684. # @see `type: field.field_settings.*`
  685. field.value.changed:
  686. type: mapping
  687. label: 'Default value'
  688. mapping:
  689. value:
  690. type: integer
  691. label: 'Value'
  692. # Schema for the configuration of the Entity reference field type.
  693. field.storage_settings.entity_reference:
  694. type: mapping
  695. label: 'Entity reference field storage settings'
  696. mapping:
  697. target_type:
  698. type: string
  699. label: 'Type of item to reference'
  700. field.field_settings.entity_reference:
  701. type: mapping
  702. label: 'Entity reference field settings'
  703. mapping:
  704. handler:
  705. type: string
  706. label: 'Reference method'
  707. constraints:
  708. PluginExists:
  709. manager: plugin.manager.entity_reference_selection
  710. interface: 'Drupal\Core\Entity\EntityReferenceSelection\SelectionInterface'
  711. # @todo Remove this line and explicitly require valid entity reference
  712. # selection plugin IDs in https://drupal.org/i/3420198.
  713. allowFallback: true
  714. handler_settings:
  715. type: entity_reference_selection.[%parent.handler]
  716. label: 'Entity reference selection plugin settings'
  717. field.value.entity_reference:
  718. type: mapping
  719. label: 'Default value'
  720. mapping:
  721. target_id:
  722. type: string
  723. label: 'Value'
  724. target_uuid:
  725. type: uuid
  726. # Schema for the configuration of the Boolean field type.
  727. field.field_settings.boolean:
  728. label: 'Boolean settings'
  729. type: mapping
  730. mapping:
  731. on_label:
  732. type: required_label
  733. label: 'On label'
  734. off_label:
  735. type: required_label
  736. label: 'Off label'
  737. field.value.boolean:
  738. type: mapping
  739. mapping:
  740. value:
  741. type: integer
  742. label: 'Value'
  743. # Schema for the configuration of the Email field type.
  744. # This field type has no field storage settings, so no specific config schema type.
  745. # @see `type: field.storage_settings.*`
  746. field.field_settings.email:
  747. type: mapping
  748. label: 'Email settings'
  749. sequence:
  750. type: string
  751. label: 'Setting'
  752. field.value.email:
  753. type: mapping
  754. label: 'Default value'
  755. mapping:
  756. value:
  757. type: email
  758. label: 'Value'
  759. # Schema for the configuration of the Integer field type.
  760. field.storage_settings.integer:
  761. type: mapping
  762. label: 'Integer settings'
  763. mapping:
  764. unsigned:
  765. type: boolean
  766. label: 'Unsigned'
  767. size:
  768. type: string
  769. label: 'Database storage size'
  770. field.field_settings.integer:
  771. type: mapping
  772. label: 'Integer'
  773. mapping:
  774. min:
  775. type: integer
  776. label: 'Minimum'
  777. max:
  778. type: integer
  779. label: 'Maximum'
  780. prefix:
  781. type: label
  782. label: 'Prefix'
  783. suffix:
  784. type: label
  785. label: 'Suffix'
  786. field.value.integer:
  787. type: mapping
  788. label: 'Default value'
  789. mapping:
  790. value:
  791. type: integer
  792. label: 'Value'
  793. # Schema for the configuration of the Decimal field type.
  794. field.storage_settings.decimal:
  795. type: mapping
  796. label: 'Decimal settings'
  797. mapping:
  798. precision:
  799. type: integer
  800. label: 'Precision'
  801. scale:
  802. type: integer
  803. label: 'Scale'
  804. field.field_settings.decimal:
  805. type: mapping
  806. label: 'Decimal settings'
  807. mapping:
  808. min:
  809. type: float
  810. label: 'Minimum'
  811. max:
  812. type: float
  813. label: 'Maximum'
  814. prefix:
  815. type: label
  816. label: 'Prefix'
  817. suffix:
  818. type: label
  819. label: 'Suffix'
  820. field.value.decimal:
  821. type: mapping
  822. label: 'Default value'
  823. mapping:
  824. value:
  825. type: float
  826. label: 'Value'
  827. # Schema for the configuration of the Float field type.
  828. field.storage_settings.float:
  829. type: mapping
  830. label: 'Float settings'
  831. field.field_settings.float:
  832. type: mapping
  833. label: 'Float settings'
  834. mapping:
  835. min:
  836. type: float
  837. label: 'Minimum'
  838. max:
  839. type: float
  840. label: 'Maximum'
  841. prefix:
  842. type: label
  843. label: 'Prefix'
  844. suffix:
  845. type: label
  846. label: 'Suffix'
  847. field.value.float:
  848. type: mapping
  849. label: 'Default value'
  850. mapping:
  851. value:
  852. type: float
  853. label: 'Value'
  854. # Schema for the configuration of the Timestamp field type.
  855. field.value.timestamp:
  856. type: mapping
  857. label: 'Timestamp value'
  858. mapping:
  859. value:
  860. type: timestamp
  861. label: 'Value'
  862. # Text with a text format.
  863. text_format:
  864. type: mapping
  865. label: 'Text with text format'
  866. # We declare the entire mapping of text and text format as translatable. This
  867. # causes the entire mapping to be saved to the language overrides of the
  868. # configuration. Storing only the (to be formatted) text could result in
  869. # security problems in case the text format of the source text is changed.
  870. translatable: true
  871. mapping:
  872. value:
  873. type: text
  874. label: 'Text'
  875. # Mark the actual text as translatable (in addition to the entire mapping
  876. # being marked as translatable) so that shipped configuration with
  877. # formatted text can participate in the string translation system.
  878. translatable: true
  879. format:
  880. type: string
  881. label: 'Text format'
  882. # The text format should not be translated as part of the string
  883. # translation system, so this is not marked as translatable.
  884. # Base schema for all entity reference selection handler schemas.
  885. entity_reference_selection:
  886. type: mapping
  887. label: 'Entity reference selection handler settings'
  888. mapping:
  889. target_type:
  890. type: string
  891. label: 'Type of item to reference'
  892. # Schema for all entity reference selection handlers that are not providing a
  893. # specific schema.
  894. entity_reference_selection.*:
  895. type: entity_reference_selection
  896. # Schema for the entity reference 'default' selection handler settings.
  897. entity_reference_selection.default:
  898. type: entity_reference_selection
  899. label: 'Default selection handler settings'
  900. mapping:
  901. target_bundles:
  902. type: sequence
  903. label: 'types'
  904. nullable: true
  905. sequence:
  906. type: string
  907. label: 'Bundle'
  908. sort:
  909. type: mapping
  910. label: 'Sort settings'
  911. mapping:
  912. field:
  913. type: string
  914. label: 'Sort by'
  915. direction:
  916. type: string
  917. label: 'Sort direction'
  918. auto_create:
  919. type: boolean
  920. label: 'Create referenced entities if they don''t already exist'
  921. auto_create_bundle:
  922. type: string
  923. label: 'Bundle assigned to the auto-created entities.'
  924. # Schema for all entity reference 'default:*' selection handlers that are not
  925. # providing a specific schema.
  926. entity_reference_selection.default:*:
  927. type: entity_reference_selection.default