LinkDecoratorAutomaticDefinition
Describes an automatic link decorator. This decorator type matches all links in the editor content against a function that decides whether the link should receive a pre–defined set of attributes.
It takes an object with key-value pairs of attributes and a callback function that must return a Boolean value based on the link's href (URL). When the callback returns true, attributes are applied to the link.
For example, to add the target="_blank" attribute to all links in the editor starting with http://, the configuration could look like this:
{
mode: 'automatic',
callback: url => url.startsWith( 'http://' ),
attributes: {
target: '_blank'
}
}
Note: Since the target attribute management for external links is a common use case, there is a predefined automatic decorator dedicated for that purpose that can be enabled by turning a single option on. Check out the config.link.addTargetToExternalLinks configuration description to learn more.
Properties
attributes : Record<string, string> | undefinedmodule:link/linkconfig~LinkDecoratorAutomaticDefinition#attributesKey-value pairs used as link attributes added to the output during the downcasting. Attributes should follow the
ViewElementDefinitionsyntax.callback : ( url: null | string ) => booleanmodule:link/linkconfig~LinkDecoratorAutomaticDefinition#callbackTakes a
urlas a parameter and returnstrueif theattributesshould be applied to the link.classes : ArrayOrItem<string> | undefinedmodule:link/linkconfig~LinkDecoratorAutomaticDefinition#classesClass names used as link classes added to the output during the downcasting. Classes should follow the
ViewElementDefinitionsyntax.mode : 'automatic'module:link/linkconfig~LinkDecoratorAutomaticDefinition#modeLink decorator type. It is
'automatic'for all automatic decorators.styles : Record<string, string> | undefinedmodule:link/linkconfig~LinkDecoratorAutomaticDefinition#stylesKey-value pairs used as link styles added to the output during the downcasting. Styles should follow the
ViewElementDefinitionsyntax.