drupal/core/modules/sdc
Dave Long 224c67343b
Issue #2921133 by quietone, VladimirAus, xjm, ankithashetty, longwave, Prem Suthar, smustgrave, benjifisher, AaronMcHale: Remove "Please" from the codebase
2023-07-23 17:33:54 +01:00
..
src Issue #2921133 by quietone, VladimirAus, xjm, ankithashetty, longwave, Prem Suthar, smustgrave, benjifisher, AaronMcHale: Remove "Please" from the codebase 2023-07-23 17:33:54 +01:00
tests Issue #2921133 by quietone, VladimirAus, xjm, ankithashetty, longwave, Prem Suthar, smustgrave, benjifisher, AaronMcHale: Remove "Please" from the codebase 2023-07-23 17:33:54 +01:00
README.txt
sdc.info.yml
sdc.module
sdc.services.yml Issue #2932518 by kim.pepper, joachim, bradjones1, voleger, cliddell, gapple, Xano, andregp, andypost, neclimdul, rpayanm, Hardik_Patel_12, NWOM, smustgrave, dawehner, alexpott, daffie, larowlan, Berdir, mstrelan, xjm, dagmar: Deprecate watchdog_exception 2023-04-28 13:36:57 +10:00

README.txt

The API of Single Directory Components includes:

  - The component plugin manager (the service with name plugin.manager.sdc).
    This service will be needed by modules that need to find and instantiate
    components.
  - The exceptions. Code using Single Directory Components can rely, and extend,
    the exceptions provided by the experimental module.
  - The folder structure of a component and the naming conventions of the files
    in it.
  - The structure of the component metadata (the my-component.component.yml).
    Note that the metadata of the component is described, and optionally
    validated, by the schema in metadata.schema.json (this file is for internal validation and not part of the API).
  - The render element and its class \Drupal\sdc\Element\ComponentElement.
  - The naming convention for the ID when using Twig's include, embed, and
    extends. This naming convention is [module/theme]:[component machine name].
    See the example below.

{% embed 'my-theme:my-component' with { prop1: content.field_for_prop1 } %}
  {% block slot1 %}
    {{ content|without('field_for_prop1') }}
  {% endblock %}
{% endembed %}

This way  of specifying the component for Twig's include, embed, and
extends('my-theme:my-component' in the example) will not change, as it is
considered an API.