UNPKG

@wordpress/block-library

Version:
76 lines (61 loc) 2.27 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _element = require("@wordpress/element"); var _classnames = _interopRequireDefault(require("classnames")); var _blockEditor = require("@wordpress/block-editor"); var _data = require("@wordpress/data"); var _button = require("../button"); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const ALLOWED_BLOCKS = [_button.name]; const DEFAULT_BLOCK = { name: _button.name, attributesToCopy: ['backgroundColor', 'border', 'className', 'fontFamily', 'fontSize', 'gradient', 'style', 'textColor', 'width'] }; function ButtonsEdit(_ref) { var _style$typography; let { attributes, className } = _ref; const { fontSize, layout = {}, style } = attributes; const blockProps = (0, _blockEditor.useBlockProps)({ className: (0, _classnames.default)(className, { 'has-custom-font-size': fontSize || (style === null || style === void 0 ? void 0 : (_style$typography = style.typography) === null || _style$typography === void 0 ? void 0 : _style$typography.fontSize) }) }); const preferredStyle = (0, _data.useSelect)(select => { var _preferredStyleVariat; const preferredStyleVariations = select(_blockEditor.store).getSettings().__experimentalPreferredStyleVariations; return preferredStyleVariations === null || preferredStyleVariations === void 0 ? void 0 : (_preferredStyleVariat = preferredStyleVariations.value) === null || _preferredStyleVariat === void 0 ? void 0 : _preferredStyleVariat[_button.name]; }, []); const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, { allowedBlocks: ALLOWED_BLOCKS, __experimentalDefaultBlock: DEFAULT_BLOCK, __experimentalDirectInsert: true, template: [[_button.name, { className: preferredStyle && `is-style-${preferredStyle}` }]], __experimentalLayout: layout, templateInsertUpdatesSelection: true }); return (0, _element.createElement)("div", innerBlocksProps); } var _default = ButtonsEdit; exports.default = _default; //# sourceMappingURL=edit.js.map