UNPKG

@uiw/react-codemirror

Version:
151 lines (132 loc) 4.91 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; Object.defineProperty(exports, "__esModule", { value: true }); var _exportNames = {}; exports.default = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireWildcard(require("react")); var _useCodeMirror2 = require("./useCodeMirror"); Object.keys(_useCodeMirror2).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _useCodeMirror2[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function get() { return _useCodeMirror2[key]; } }); }); var _jsxRuntime = require("react/jsx-runtime"); var _view = require("@codemirror/view"); Object.keys(_view).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _view[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function get() { return _view[key]; } }); }); var _basicSetup = require("@codemirror/basic-setup"); Object.keys(_basicSetup).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _basicSetup[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function get() { return _basicSetup[key]; } }); }); var _state = require("@codemirror/state"); Object.keys(_state).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _state[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function get() { return _state[key]; } }); }); var _excluded = ["className", "value", "selection", "extensions", "onChange", "onUpdate", "autoFocus", "theme", "height", "minHeight", "maxHeight", "width", "minWidth", "maxWidth", "basicSetup", "placeholder", "indentWithTab", "editable"]; var ReactCodeMirror = /*#__PURE__*/_react.default.forwardRef(function (props, ref) { var className = props.className, value = props.value, selection = props.selection, _props$extensions = props.extensions, extensions = _props$extensions === void 0 ? [] : _props$extensions, onChange = props.onChange, onUpdate = props.onUpdate, autoFocus = props.autoFocus, _props$theme = props.theme, theme = _props$theme === void 0 ? 'light' : _props$theme, height = props.height, minHeight = props.minHeight, maxHeight = props.maxHeight, width = props.width, minWidth = props.minWidth, maxWidth = props.maxWidth, basicSetup = props.basicSetup, placeholder = props.placeholder, indentWithTab = props.indentWithTab, editable = props.editable, other = (0, _objectWithoutProperties2.default)(props, _excluded); var editor = (0, _react.useRef)(null); var _useCodeMirror = (0, _useCodeMirror2.useCodeMirror)({ container: editor.current, value: value, autoFocus: autoFocus, theme: theme, height: height, minHeight: minHeight, maxHeight: maxHeight, width: width, minWidth: minWidth, maxWidth: maxWidth, basicSetup: basicSetup, placeholder: placeholder, indentWithTab: indentWithTab, editable: editable, selection: selection, onChange: onChange, onUpdate: onUpdate, extensions: extensions }), state = _useCodeMirror.state, view = _useCodeMirror.view, container = _useCodeMirror.container, setContainer = _useCodeMirror.setContainer; (0, _react.useImperativeHandle)(ref, function () { return { editor: container, state: state, view: view }; }); (0, _react.useEffect)(function () { setContainer(editor.current); return function () { if (view) { view.destroy(); } }; // eslint-disable-next-line react-hooks/exhaustive-deps }, []); return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", (0, _objectSpread2.default)({ ref: editor, className: "cm-theme-".concat(theme).concat(className ? " ".concat(className) : '') }, other)); }); ReactCodeMirror.displayName = 'CodeMirror'; var _default = ReactCodeMirror; exports.default = _default; //# sourceMappingURL=index.js.map