UNPKG

@wordpress/components

Version:
45 lines (40 loc) 1.24 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import { createElement } from "@wordpress/element"; /** * Internal dependencies */ import { Root, Viewbox, TopStroke, RightStroke, BottomStroke, LeftStroke } from './styles/box-control-icon-styles'; const BASE_ICON_SIZE = 24; export default function BoxControlIcon({ size = 24, side = 'all', sides, ...props }) { const isSideDisabled = value => (sides === null || sides === void 0 ? void 0 : sides.length) && !sides.includes(value); const getSide = value => { if (isSideDisabled(value)) { return false; } return side === 'all' || side === value; }; const top = getSide('top'); const right = getSide('right'); const bottom = getSide('bottom'); const left = getSide('left'); // Simulates SVG Icon scaling const scale = size / BASE_ICON_SIZE; return createElement(Root, _extends({ style: { transform: `scale(${scale})` } }, props), createElement(Viewbox, null, createElement(TopStroke, { isFocused: top }), createElement(RightStroke, { isFocused: right }), createElement(BottomStroke, { isFocused: bottom }), createElement(LeftStroke, { isFocused: left }))); } //# sourceMappingURL=icon.js.map