UNPKG

@wordpress/block-library

Version:
118 lines (103 loc) 3.35 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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _classnames = _interopRequireDefault(require("classnames")); var _components = require("@wordpress/components"); var _blockEditor = require("@wordpress/block-editor"); var _compose = require("@wordpress/compose"); var _i18n = require("@wordpress/i18n"); var _utils = require("./utils"); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const Overlay = _ref => { let { clientId, attributes, setAttributes, overlayColor, setOverlayColor } = _ref; const { dimRatio } = attributes; const { gradientClass, gradientValue, setGradient } = (0, _blockEditor.__experimentalUseGradient)(); const colorGradientSettings = (0, _blockEditor.__experimentalUseMultipleOriginColorsAndGradients)(); const borderProps = (0, _blockEditor.__experimentalUseBorderProps)(attributes); const overlayStyles = { backgroundColor: overlayColor.color, backgroundImage: gradientValue, ...borderProps.style }; return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("span", { "aria-hidden": "true", className: (0, _classnames.default)('wp-block-post-featured-image__overlay', (0, _utils.dimRatioToClass)(dimRatio), { [overlayColor.class]: overlayColor.class, 'has-background-dim': dimRatio !== undefined, 'has-background-gradient': gradientValue, [gradientClass]: gradientClass }), style: overlayStyles }), (0, _element.createElement)(_blockEditor.InspectorControls, { __experimentalGroup: "color" }, (0, _element.createElement)(_blockEditor.__experimentalColorGradientSettingsDropdown, (0, _extends2.default)({ __experimentalHasMultipleOrigins: true, __experimentalIsRenderedInSidebar: true, settings: [{ colorValue: overlayColor.color, gradientValue, label: (0, _i18n.__)('Overlay'), onColorChange: setOverlayColor, onGradientChange: setGradient, isShownByDefault: true, resetAllFilter: () => ({ overlayColor: undefined, customOverlayColor: undefined, gradient: undefined, customGradient: undefined }) }], panelId: clientId }, colorGradientSettings)), (0, _element.createElement)(_components.__experimentalToolsPanelItem, { hasValue: () => dimRatio !== undefined, label: (0, _i18n.__)('Overlay opacity'), onDeselect: () => setAttributes({ dimRatio: 0 }), resetAllFilter: () => ({ dimRatio: 0 }), isShownByDefault: true, panelId: clientId }, (0, _element.createElement)(_components.RangeControl, { label: (0, _i18n.__)('Overlay opacity'), value: dimRatio, onChange: newDimRatio => setAttributes({ dimRatio: newDimRatio }), min: 0, max: 100, step: 10, required: true })))); }; var _default = (0, _compose.compose)([(0, _blockEditor.withColors)({ overlayColor: 'background-color' })])(Overlay); exports.default = _default; //# sourceMappingURL=overlay.js.map