UNPKG

@progress/kendo-react-editor

Version:

React Editor enables users to create rich text content through a WYSIWYG interface. KendoReact Editor package

94 lines (93 loc) 2.89 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import * as r from "react"; import o from "prop-types"; import { Popup as c } from "@progress/kendo-react-popup"; import h from "./popupGrid.mjs"; var a; ((d) => { const e = class e extends r.Component { constructor() { super(...arguments), this.pointerdown = !1, this.onWindowDown = (t) => { const { anchor: n } = this.props; n && (n === t.target || n.firstElementChild === t.target) || (this.props.show && !this.pointerdown && this.props.onClose(), this.pointerdown = !1); }, this.onPointerDown = () => this.pointerdown = !0; } /** * @hidden */ componentDidUpdate(t) { t.show && this.props.show && this.props.onClose(); } /** * @hidden */ componentDidMount() { window.addEventListener("mousedown", this.onWindowDown), window.addEventListener("pointerdown", this.onWindowDown); } /** * @hidden */ componentWillUnmount() { window.removeEventListener("mousedown", this.onWindowDown), window.removeEventListener("pointerdown", this.onWindowDown); } /** * @hidden */ render() { const { show: t, anchor: n, dir: i, rows: l = e.defaultProps.rows, columns: w = e.defaultProps.columns } = this.props, p = i === "rtl" ? "right" : "left"; return /* @__PURE__ */ r.createElement( c, { anchor: n, anchorAlign: { horizontal: p, vertical: "bottom" }, popupAlign: { horizontal: p, vertical: "top" }, popupClass: "k-ct-popup k-group k-reset k-state-border-up", show: t, style: i === "rtl" ? { direction: "rtl" } : void 0 }, /* @__PURE__ */ r.createElement( h, { rows: l, columns: w, createTableMessage: this.props.createTableMessage, createTableHintMessage: this.props.createTableHintMessage, onCellClick: this.props.onTableInsert, onDown: this.onPointerDown } ) ); } }; e.propTypes = { show: o.bool.isRequired, createTableMessage: o.string.isRequired, createTableHintMessage: o.string.isRequired, onClose: o.func.isRequired, onTableInsert: o.func.isRequired, anchor: o.any, rows: o.number, columns: o.number, dir: o.string }, e.defaultProps = { rows: 6, columns: 8 }; let s = e; d.InsertTablePopup = s; })(a || (a = {})); export { a as InsertTablePopupNS };