UNPKG

@gechiui/block-editor

Version:
62 lines (55 loc) 1.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = TextTransformControl; var _element = require("@gechiui/element"); var _components = require("@gechiui/components"); var _i18n = require("@gechiui/i18n"); var _icons = require("@gechiui/icons"); /** * GeChiUI dependencies */ const TEXT_TRANSFORMS = [{ name: (0, _i18n.__)('大写'), value: 'uppercase', icon: _icons.formatUppercase }, { name: (0, _i18n.__)('小写'), value: 'lowercase', icon: _icons.formatLowercase }, { name: (0, _i18n.__)('首字母大写'), value: 'capitalize', icon: _icons.formatCapitalize }]; /** * Control to facilitate text transform selections. * * @param {Object} props Component props. * @param {string} props.value Currently selected text transform. * @param {Function} props.onChange Handles change in text transform selection. * * @return {GCElement} Text transform control. */ function TextTransformControl(_ref) { let { value, onChange } = _ref; return (0, _element.createElement)("fieldset", { className: "block-editor-text-transform-control" }, (0, _element.createElement)("legend", null, (0, _i18n.__)('字母实例')), (0, _element.createElement)("div", { className: "block-editor-text-transform-control__buttons" }, TEXT_TRANSFORMS.map(textTransform => { return (0, _element.createElement)(_components.Button, { key: textTransform.value, icon: textTransform.icon, isSmall: true, isPressed: value === textTransform.value, "aria-label": textTransform.name, onClick: () => onChange(value === textTransform.value ? undefined : textTransform.value) }); }))); } //# sourceMappingURL=index.js.map