@atlaskit/editor-core
Version:
A package contains Atlassian editor core functionality
45 lines (42 loc) • 1.53 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ClickAreaBlock = void 0;
var _react = _interopRequireDefault(require("react"));
var _react2 = require("@emotion/react");
var _clickAreaHelper = require("../click-area-helper");
/**
* @jsxRuntime classic
* @jsx jsx
*/
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled, @typescript-eslint/consistent-type-imports -- Ignored via go/DSP-18766; jsx required at runtime for @jsxRuntime classic
var clickWrapper = (0, _react2.css)({
flexGrow: 1,
height: '100%'
});
var ClickAreaBlock = exports.ClickAreaBlock = function ClickAreaBlock(_ref) {
var editorView = _ref.editorView,
editorDisabled = _ref.editorDisabled,
children = _ref.children;
var handleMouseDown = _react.default.useCallback(function (event) {
if (!editorView) {
return;
}
if (!editorDisabled) {
(0, _clickAreaHelper.clickAreaClickHandler)(editorView, event);
}
}, [editorView, editorDisabled]);
return (0, _react2.jsx)("div", {
"data-editor-click-wrapper": true,
"data-testid": "click-wrapper",
css: clickWrapper,
onMouseDown: handleMouseDown
// This div is a presentational container that captures mouse events
// for programmatic editor focus management, not user interaction.
,
role: "presentation"
}, children);
};
var _default = exports.default = ClickAreaBlock;