UNPKG

@yandex/ui

Version:

Yandex UI components

29 lines (28 loc) 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Esc = void 0; var tslib_1 = require("tslib"); var react_1 = tslib_1.__importStar(require("react")); var withOutsideClick_1 = require("@yandex-lego/components/withOutsideClick"); var desktop_1 = require("@yandex-lego/components/Button/Button.bundle/desktop"); var ComponentWithOutsideClick = withOutsideClick_1.withOutsideClick(function (_a) { var visible = _a.visible, targetRef = _a.targetRef, props = tslib_1.__rest(_a, ["visible", "targetRef"]); return (react_1.default.createElement(react_1.default.Fragment, null, visible && (react_1.default.createElement("div", tslib_1.__assign({ style: { backgroundColor: 'lightgray', borderRadius: '4px', lineHeight: '70px', width: '70px', textAlign: 'center', }, ref: targetRef }, props), "Press Esc")))); }); var Esc = function () { var _a = tslib_1.__read(react_1.useState(false), 2), visible = _a[0], setVisible = _a[1]; return (react_1.default.createElement(react_1.default.Fragment, null, react_1.default.createElement(desktop_1.Button, { view: "action", size: "m", onClick: function () { return setVisible(function (prev) { return !prev; }); } }, "Click"), " ", react_1.default.createElement("br", null), " ", react_1.default.createElement("br", null), react_1.default.createElement(ComponentWithOutsideClick, { visible: visible, onEscapeKeyDown: function () { return setVisible(false); } }))); }; exports.Esc = Esc;