# UI Settings

## Motivation

As it turns out, various `RichContentEditor` consumers have different customization needs. On the other hand, it is important to keep the public API clean, while providing the desired customability. In order to meet these requirements, the `RichContentEditor` exposes `config` object prop.

This document focuses on a specific `config` API `uiSettings` that is responsible for UI customization.

## `uiSettings` API

### Structure

The `uiSettings` object exposes the following properties:

- `blankTargetToggleVisibilityFn` : `anchorTarget => boolean`

  This function determines the 'Open link in a new tab' link panel checkbox visiblity.

  By default, its predicate is `anchorTarget !== '_blank'`

- `nofollowRelToggleVisibilityFn` : `relValue => boolean`

  This function determines the 'Add a nofollow tag' link panel checkbox visiblity.

  By default, its predicate is `relValue !== 'nofollow'`

- `placeholder` : `string`

  This variable determines the placeholder to use for the link panel.

  By default, its value is `"Enter a URL here"` translated by localization
