Services Overview¶
Name module behavior is centered around container services. This is the recommended API surface for custom code.
Core services¶
| Service ID | Interface | Class |
|---|---|---|
name.formatter |
Drupal\name\Service\NameFormatterInterface |
Drupal\name\Service\NameFormatterService |
name.format_parser |
Drupal\name\Service\NameFormatParserInterface |
Drupal\name\Service\NameFormatParserService |
name.generator |
Drupal\name\Service\GeneratorInterface |
Drupal\name\Service\GeneratorService |
name.autocomplete |
Drupal\name\Service\AutocompleteInterface |
Drupal\name\Service\AutocompleteService |
name.options_provider |
Drupal\name\Service\NameOptionInterface |
Drupal\name\Service\NameOptionService |
Additional services¶
| Service ID | Doc | Notes |
|---|---|---|
name.additional_component |
Additional Component | Preferred/alternative field references (@internal) |
name.format_options |
Format Options | Format/list-format select options (@internal) |
name.element_validator |
Element Validator | Name element validation (@internal) |
name.widget_layouts |
Widget Layouts hook | Layout discovery and cache |
name.link_target |
Link Target | Formatter link targets (@internal) |
name.formatter_summary |
Formatter Summary | Formatter settings summary (@internal) |
name.user_realname_preload |
User integration | Preloads user for realname (@internal) |
name.component_metadata |
Element Validator | Component labels for settings UI (@internal) |
name.twig.name_format_help |
Help integration | Twig extension; not for general DI |
name.twig.name_format_help registers name_format_token_help() for help topic
templates only.
Use these when extending deeper module behavior (widget layouts, option maps, component metadata, or validation flow).
Dependency injection pattern¶
Prefer interface type hints and container injection:
use Drupal\name\Service\GeneratorInterface;
final class ExampleService {
public function __construct(
private readonly GeneratorInterface $generator,
) {}
}
If you need a quick ad hoc call:
Deprecations¶
Deprecated procedural wrappers, legacy class aliases, and legacy config values are documented on Deprecations.