UNPKG

@wordpress/block-editor

Version:
76 lines (70 loc) 1.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = BorderStyleControl; var _element = require("@wordpress/element"); var _components = require("@wordpress/components"); var _i18n = require("@wordpress/i18n"); /** * WordPress dependencies */ const DEFAULT_STYLE = { key: 'default', name: (0, _i18n.__)('Default'), style: { borderStyle: undefined } }; const BORDER_STYLES = [DEFAULT_STYLE, { key: 'none', name: (0, _i18n.__)('None'), style: { borderStyle: 'none' } }, { key: 'solid', name: (0, _i18n.__)('Solid'), style: { borderStyle: 'solid' } }, { key: 'dashed', name: (0, _i18n.__)('Dashed'), style: { borderStyle: 'dashed' } }, { key: 'dotted', name: (0, _i18n.__)('Dotted'), style: { borderStyle: 'dotted' } }]; /** * Control to display border style options. * * @param {Object} props Component props. * @param {Object} props.onChange Handler for changing border style selection. * @param {Object} props.value Currently selected border style value. * * @return {WPElement} Custom border style select control. */ function BorderStyleControl({ onChange, value }) { const style = BORDER_STYLES.find(option => option.key === value); return (0, _element.createElement)("fieldset", { className: "components-border-style-control" }, (0, _element.createElement)(_components.CustomSelectControl, { className: "components-border-style-control__select", label: (0, _i18n.__)('Border style'), options: BORDER_STYLES, value: style || DEFAULT_STYLE, onChange: ({ selectedItem }) => selectedItem.key === 'default' ? onChange(undefined) : onChange(selectedItem.key) })); } //# sourceMappingURL=index.js.map