UNPKG

@wordpress/block-editor

Version:
48 lines (42 loc) 1.2 kB
import { createElement } from "@wordpress/element"; /** * External dependencies */ import { noop } from 'lodash'; /** * WordPress dependencies */ import { __ } from '@wordpress/i18n'; import { ToggleControl, VisuallyHidden } from '@wordpress/components'; const defaultSettings = [{ id: 'opensInNewTab', title: __('Open in new tab') }]; const LinkControlSettingsDrawer = ({ value, onChange = noop, settings = defaultSettings }) => { if (!settings || !settings.length) { return null; } const handleSettingChange = setting => newValue => { onChange({ ...value, [setting.id]: newValue }); }; const theSettings = settings.map(setting => createElement(ToggleControl, { className: "block-editor-link-control__setting", key: setting.id, label: setting.title, onChange: handleSettingChange(setting), checked: value ? !!value[setting.id] : false })); return createElement("fieldset", { className: "block-editor-link-control__settings" }, createElement(VisuallyHidden, { as: "legend" }, __('Currently selected link settings')), theSettings); }; export default LinkControlSettingsDrawer; //# sourceMappingURL=settings-drawer.js.map