UNPKG

tc-ui-toolkit

Version:

React components used to develop tools for the desktop app translationCore

123 lines (97 loc) 11 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _utils = require("../ScripturePane/helpers/utils"); var _editHelpers = require("./helpers/editHelpers"); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } /** * @callback EditScreen~onChange * @param {string} newVerse - the edited verse */ /** * Renders a text area for editing the verse * @property {string} verseText - the verse text to edit * @property {EditScreen~onChange} onChange - callback when the text has changed */ var EditScreen = /*#__PURE__*/function (_React$Component) { (0, _inherits2["default"])(EditScreen, _React$Component); var _super = _createSuper(EditScreen); function EditScreen(props) { var _this; (0, _classCallCheck2["default"])(this, EditScreen); _this = _super.call(this, props); _this._handleChange = _this._handleChange.bind((0, _assertThisInitialized2["default"])(_this)); return _this; } (0, _createClass2["default"])(EditScreen, [{ key: "_handleChange", value: function _handleChange(event) { var onChange = this.props.onChange; onChange(event.target.value); } }, { key: "render", value: function render() { var _this$props = this.props, rows = _this$props.rows, style = _this$props.style, verseText = _this$props.verseText, targetLanguageFontClassName = _this$props.targetLanguageFontClassName, targetLanguageFontSize = _this$props.targetLanguageFontSize, direction = _this$props.direction; var className = targetLanguageFontClassName ? "edit-screen ".concat(targetLanguageFontClassName) : 'edit-screen'; var style_ = _objectSpread(_objectSpread({}, style), {}, { textAlign: (0, _utils.isLTR)(direction) ? 'left' : 'right', direction: direction }); return /*#__PURE__*/_react["default"].createElement("div", { style: { fontSize: targetLanguageFontSize } }, " ", /*#__PURE__*/_react["default"].createElement("textarea", { id: "verse-editor-field", rows: rows, className: className, autoFocus: true, onFocus: _editHelpers.moveCursorToEnd, onChange: this._handleChange, value: verseText, style: style_ })); } }]); return EditScreen; }(_react["default"].Component); EditScreen.propTypes = { rows: _propTypes["default"].number.isRequired, style: _propTypes["default"].object.isRequired, onChange: _propTypes["default"].func.isRequired, verseText: _propTypes["default"].string.isRequired, direction: _propTypes["default"].string.isRequired, targetLanguageFontClassName: _propTypes["default"].string, targetLanguageFontSize: _propTypes["default"].string }; EditScreen.defaultProps = { rows: 4, style: {}, direction: 'ltr', targetLanguageFontSize: '100%' }; var _default = EditScreen; exports["default"] = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9WZXJzZUVkaXRvci9FZGl0U2NyZWVuLmpzIl0sIm5hbWVzIjpbIkVkaXRTY3JlZW4iLCJwcm9wcyIsIl9oYW5kbGVDaGFuZ2UiLCJiaW5kIiwiZXZlbnQiLCJvbkNoYW5nZSIsInRhcmdldCIsInZhbHVlIiwicm93cyIsInN0eWxlIiwidmVyc2VUZXh0IiwidGFyZ2V0TGFuZ3VhZ2VGb250Q2xhc3NOYW1lIiwidGFyZ2V0TGFuZ3VhZ2VGb250U2l6ZSIsImRpcmVjdGlvbiIsImNsYXNzTmFtZSIsInN0eWxlXyIsInRleHRBbGlnbiIsImZvbnRTaXplIiwibW92ZUN1cnNvclRvRW5kIiwiUmVhY3QiLCJDb21wb25lbnQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJudW1iZXIiLCJpc1JlcXVpcmVkIiwib2JqZWN0IiwiZnVuYyIsInN0cmluZyIsImRlZmF1bHRQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBOzs7OztBQUtBOzs7OztJQUtNQSxVOzs7OztBQUNKLHNCQUFZQyxLQUFaLEVBQW1CO0FBQUE7O0FBQUE7QUFDakIsOEJBQU1BLEtBQU47QUFDQSxVQUFLQyxhQUFMLEdBQXFCLE1BQUtBLGFBQUwsQ0FBbUJDLElBQW5CLGdEQUFyQjtBQUZpQjtBQUdsQjs7OztrQ0FFYUMsSyxFQUFPO0FBQUEsVUFDWEMsUUFEVyxHQUNFLEtBQUtKLEtBRFAsQ0FDWEksUUFEVztBQUVuQkEsTUFBQUEsUUFBUSxDQUFDRCxLQUFLLENBQUNFLE1BQU4sQ0FBYUMsS0FBZCxDQUFSO0FBQ0Q7Ozs2QkFFUTtBQUFBLHdCQVFILEtBQUtOLEtBUkY7QUFBQSxVQUVMTyxJQUZLLGVBRUxBLElBRks7QUFBQSxVQUdMQyxLQUhLLGVBR0xBLEtBSEs7QUFBQSxVQUlMQyxTQUpLLGVBSUxBLFNBSks7QUFBQSxVQUtMQywyQkFMSyxlQUtMQSwyQkFMSztBQUFBLFVBTUxDLHNCQU5LLGVBTUxBLHNCQU5LO0FBQUEsVUFPTEMsU0FQSyxlQU9MQSxTQVBLO0FBU1AsVUFBTUMsU0FBUyxHQUFHSCwyQkFBMkIseUJBQWtCQSwyQkFBbEIsSUFBa0QsYUFBL0Y7O0FBQ0EsVUFBTUksTUFBTSxtQ0FDUE4sS0FETztBQUVWTyxRQUFBQSxTQUFTLEVBQUUsa0JBQU1ILFNBQU4sSUFBbUIsTUFBbkIsR0FBNEIsT0FGN0I7QUFHVkEsUUFBQUEsU0FBUyxFQUFUQTtBQUhVLFFBQVo7O0FBS0EsMEJBQ0U7QUFBSyxRQUFBLEtBQUssRUFBRTtBQUFFSSxVQUFBQSxRQUFRLEVBQUVMO0FBQVo7QUFBWiwyQkFDRTtBQUNFLFFBQUEsRUFBRSxFQUFDLG9CQURMO0FBRUUsUUFBQSxJQUFJLEVBQUVKLElBRlI7QUFHRSxRQUFBLFNBQVMsRUFBRU0sU0FIYjtBQUlFLFFBQUEsU0FBUyxFQUFFLElBSmI7QUFLRSxRQUFBLE9BQU8sRUFBRUksNEJBTFg7QUFNRSxRQUFBLFFBQVEsRUFBRSxLQUFLaEIsYUFOakI7QUFPRSxRQUFBLEtBQUssRUFBRVEsU0FQVDtBQVFFLFFBQUEsS0FBSyxFQUFFSztBQVJULFFBREYsQ0FERjtBQWNEOzs7RUF4Q3NCSSxrQkFBTUMsUzs7QUEyQy9CcEIsVUFBVSxDQUFDcUIsU0FBWCxHQUF1QjtBQUNyQmIsRUFBQUEsSUFBSSxFQUFFYyxzQkFBVUMsTUFBVixDQUFpQkMsVUFERjtBQUVyQmYsRUFBQUEsS0FBSyxFQUFFYSxzQkFBVUcsTUFBVixDQUFpQkQsVUFGSDtBQUdyQm5CLEVBQUFBLFFBQVEsRUFBRWlCLHNCQUFVSSxJQUFWLENBQWVGLFVBSEo7QUFJckJkLEVBQUFBLFNBQVMsRUFBRVksc0JBQVVLLE1BQVYsQ0FBaUJILFVBSlA7QUFLckJYLEVBQUFBLFNBQVMsRUFBRVMsc0JBQVVLLE1BQVYsQ0FBaUJILFVBTFA7QUFNckJiLEVBQUFBLDJCQUEyQixFQUFFVyxzQkFBVUssTUFObEI7QUFPckJmLEVBQUFBLHNCQUFzQixFQUFFVSxzQkFBVUs7QUFQYixDQUF2QjtBQVVBM0IsVUFBVSxDQUFDNEIsWUFBWCxHQUEwQjtBQUN4QnBCLEVBQUFBLElBQUksRUFBRSxDQURrQjtBQUV4QkMsRUFBQUEsS0FBSyxFQUFFLEVBRmlCO0FBR3hCSSxFQUFBQSxTQUFTLEVBQUUsS0FIYTtBQUl4QkQsRUFBQUEsc0JBQXNCLEVBQUU7QUFKQSxDQUExQjtlQU9lWixVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyBpc0xUUiB9IGZyb20gJy4uL1NjcmlwdHVyZVBhbmUvaGVscGVycy91dGlscyc7XG5pbXBvcnQgeyBtb3ZlQ3Vyc29yVG9FbmQgfSBmcm9tICcuL2hlbHBlcnMvZWRpdEhlbHBlcnMnO1xuXG4vKipcbiAqIEBjYWxsYmFjayBFZGl0U2NyZWVufm9uQ2hhbmdlXG4gKiBAcGFyYW0ge3N0cmluZ30gbmV3VmVyc2UgLSB0aGUgZWRpdGVkIHZlcnNlXG4gKi9cblxuLyoqXG4gKiBSZW5kZXJzIGEgdGV4dCBhcmVhIGZvciBlZGl0aW5nIHRoZSB2ZXJzZVxuICogQHByb3BlcnR5IHtzdHJpbmd9IHZlcnNlVGV4dCAtIHRoZSB2ZXJzZSB0ZXh0IHRvIGVkaXRcbiAqIEBwcm9wZXJ0eSB7RWRpdFNjcmVlbn5vbkNoYW5nZX0gb25DaGFuZ2UgLSBjYWxsYmFjayB3aGVuIHRoZSB0ZXh0IGhhcyBjaGFuZ2VkXG4gKi9cbmNsYXNzIEVkaXRTY3JlZW4gZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgICB0aGlzLl9oYW5kbGVDaGFuZ2UgPSB0aGlzLl9oYW5kbGVDaGFuZ2UuYmluZCh0aGlzKTtcbiAgfVxuXG4gIF9oYW5kbGVDaGFuZ2UoZXZlbnQpIHtcbiAgICBjb25zdCB7IG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xuICAgIG9uQ2hhbmdlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge1xuICAgICAgcm93cyxcbiAgICAgIHN0eWxlLFxuICAgICAgdmVyc2VUZXh0LFxuICAgICAgdGFyZ2V0TGFuZ3VhZ2VGb250Q2xhc3NOYW1lLFxuICAgICAgdGFyZ2V0TGFuZ3VhZ2VGb250U2l6ZSxcbiAgICAgIGRpcmVjdGlvbixcbiAgICB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjbGFzc05hbWUgPSB0YXJnZXRMYW5ndWFnZUZvbnRDbGFzc05hbWUgPyBgZWRpdC1zY3JlZW4gJHt0YXJnZXRMYW5ndWFnZUZvbnRDbGFzc05hbWV9YCA6ICdlZGl0LXNjcmVlbic7XG4gICAgY29uc3Qgc3R5bGVfID0ge1xuICAgICAgLi4uc3R5bGUsXG4gICAgICB0ZXh0QWxpZ246IGlzTFRSKGRpcmVjdGlvbikgPyAnbGVmdCcgOiAncmlnaHQnLFxuICAgICAgZGlyZWN0aW9uLFxuICAgIH07XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgc3R5bGU9e3sgZm9udFNpemU6IHRhcmdldExhbmd1YWdlRm9udFNpemUgfX0+IHsvKmFwcGx5IGRlc2lyZWQgZm9udCBzaXplIG11bHRpcGxpZXIgYmVmb3JlIGZvbnQgY2xhc3Mgc3R5bGluZyovfVxuICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICBpZD1cInZlcnNlLWVkaXRvci1maWVsZFwiXG4gICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgICAgICBhdXRvRm9jdXM9e3RydWV9XG4gICAgICAgICAgb25Gb2N1cz17bW92ZUN1cnNvclRvRW5kfVxuICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLl9oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgdmFsdWU9e3ZlcnNlVGV4dH1cbiAgICAgICAgICBzdHlsZT17c3R5bGVffVxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxufVxuXG5FZGl0U2NyZWVuLnByb3BUeXBlcyA9IHtcbiAgcm93czogUHJvcFR5cGVzLm51bWJlci5pc1JlcXVpcmVkLFxuICBzdHlsZTogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgdmVyc2VUZXh0OiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIGRpcmVjdGlvbjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICB0YXJnZXRMYW5ndWFnZUZvbnRDbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHRhcmdldExhbmd1YWdlRm9udFNpemU6IFByb3BUeXBlcy5zdHJpbmcsXG59O1xuXG5FZGl0U2NyZWVuLmRlZmF1bHRQcm9wcyA9IHtcbiAgcm93czogNCxcbiAgc3R5bGU6IHt9LFxuICBkaXJlY3Rpb246ICdsdHInLFxuICB0YXJnZXRMYW5ndWFnZUZvbnRTaXplOiAnMTAwJScsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBFZGl0U2NyZWVuO1xuIl19