UNPKG

collaborative-ui

Version:

React component library for building real-time collaborative editing applications.

28 lines (27 loc) 916 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CollaborativeInput = void 0; const tslib_1 = require("tslib"); const React = tslib_1.__importStar(require("react")); const collaborative_input_1 = require("collaborative-input"); const CollaborativeInput = ({ inp, str, polling, multiline, ...rest }) => { const ref = React.useRef(null); React.useEffect(() => { const input = ref.current; if (!input) return; const unbind = (0, collaborative_input_1.bind)(str, input, !!polling); return () => { unbind(); }; }); rest.ref = (el) => { ref.current = el; if (typeof inp === 'function') inp(el); else if (inp) inp.current = el; }; return React.createElement(multiline ? 'textarea' : 'input', rest); }; exports.CollaborativeInput = CollaborativeInput;