UNPKG

tc-ui-toolkit

Version:

React components used to develop tools for the desktop app translationCore

100 lines (84 loc) 9.79 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = exports.SelectedText = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var windowSelectionHelpers = _interopRequireWildcard(require("../helpers/windowSelectionHelpers")); var _fontUtils = require("../../common/fontUtils"); var BREAK_CHAR = '&'; var SelectedText = function SelectedText(_ref) { var children = _ref.children; return /*#__PURE__*/_react["default"].createElement("strong", { style: { color: 'var(--accent-color)' } }, children); }; exports.SelectedText = SelectedText; SelectedText.propTypes = { children: _propTypes["default"].node.isRequired }; var getSelectionSpans = function getSelectionSpans(selections, targetLanguageFont) { var results = []; var fontClass = (0, _fontUtils.getFontClassName)(targetLanguageFont); for (var i = 0, len = selections.length; i < len; i++) { var selection = selections[i]; var index = i; results.push( /*#__PURE__*/_react["default"].createElement("span", { key: index }, /*#__PURE__*/_react["default"].createElement("strong", { style: { color: 'var(--accent-color)' }, className: fontClass }, "".concat(selection.text.trim())), selections[index + 1] ? /*#__PURE__*/_react["default"].createElement("span", null, ' ') : null)); } return results; }; var InstructionsAreaTextSelection = function InstructionsAreaTextSelection(_ref2) { var verseText = _ref2.verseText, selections = _ref2.selections, targetLanguageFont = _ref2.targetLanguageFont, languageDirection = _ref2.languageDirection; var fontClass = (0, _fontUtils.getFontClassName)(targetLanguageFont); if (windowSelectionHelpers.shouldRenderBreak(selections, verseText)) { return /*#__PURE__*/_react["default"].createElement("div", { style: { color: 'var(--accent-color)', direction: languageDirection } }, /*#__PURE__*/_react["default"].createElement("span", { className: fontClass }, selections[0].text.trim()), /*#__PURE__*/_react["default"].createElement("strong", { className: fontClass, style: { color: 'var(--accent-color)' } }, " ".concat(BREAK_CHAR, " ")), /*#__PURE__*/_react["default"].createElement("span", { className: fontClass }, selections[selections.length - 1].text.trim())); } else { return /*#__PURE__*/_react["default"].createElement("div", { style: { color: 'var(--accent-color)', direction: languageDirection } }, getSelectionSpans(selections, targetLanguageFont)); } }; InstructionsAreaTextSelection.propTypes = { selections: _propTypes["default"].array.isRequired, verseText: _propTypes["default"].string.isRequired, targetLanguageFont: _propTypes["default"].string, languageDirection: _propTypes["default"].string }; InstructionsAreaTextSelection.defaultProps = { languageDirection: 'ltr' }; var _default = InstructionsAreaTextSelection; exports["default"] = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9WZXJzZUNoZWNrL0luc3RydWN0aW9uc0FyZWFUZXh0U2VsZWN0aW9uL2luZGV4LmpzIl0sIm5hbWVzIjpbIkJSRUFLX0NIQVIiLCJTZWxlY3RlZFRleHQiLCJjaGlsZHJlbiIsImNvbG9yIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwibm9kZSIsImlzUmVxdWlyZWQiLCJnZXRTZWxlY3Rpb25TcGFucyIsInNlbGVjdGlvbnMiLCJ0YXJnZXRMYW5ndWFnZUZvbnQiLCJyZXN1bHRzIiwiZm9udENsYXNzIiwiaSIsImxlbiIsImxlbmd0aCIsInNlbGVjdGlvbiIsImluZGV4IiwicHVzaCIsInRleHQiLCJ0cmltIiwiSW5zdHJ1Y3Rpb25zQXJlYVRleHRTZWxlY3Rpb24iLCJ2ZXJzZVRleHQiLCJsYW5ndWFnZURpcmVjdGlvbiIsIndpbmRvd1NlbGVjdGlvbkhlbHBlcnMiLCJzaG91bGRSZW5kZXJCcmVhayIsImRpcmVjdGlvbiIsImFycmF5Iiwic3RyaW5nIiwiZGVmYXVsdFByb3BzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLElBQU1BLFVBQVUsR0FBRyxHQUFuQjs7QUFFTyxJQUFNQyxZQUFZLEdBQUcsU0FBZkEsWUFBZTtBQUFBLE1BQUdDLFFBQUgsUUFBR0EsUUFBSDtBQUFBLHNCQUFrQjtBQUFRLElBQUEsS0FBSyxFQUFFO0FBQUVDLE1BQUFBLEtBQUssRUFBRTtBQUFUO0FBQWYsS0FBa0RELFFBQWxELENBQWxCO0FBQUEsQ0FBckI7OztBQUVQRCxZQUFZLENBQUNHLFNBQWIsR0FBeUI7QUFBRUYsRUFBQUEsUUFBUSxFQUFFRyxzQkFBVUMsSUFBVixDQUFlQztBQUEzQixDQUF6Qjs7QUFFQSxJQUFNQyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQW9CLENBQUNDLFVBQUQsRUFBYUMsa0JBQWIsRUFBb0M7QUFDNUQsTUFBTUMsT0FBTyxHQUFHLEVBQWhCO0FBQ0EsTUFBTUMsU0FBUyxHQUFHLGlDQUFpQkYsa0JBQWpCLENBQWxCOztBQUVBLE9BQUssSUFBSUcsQ0FBQyxHQUFHLENBQVIsRUFBV0MsR0FBRyxHQUFHTCxVQUFVLENBQUNNLE1BQWpDLEVBQXlDRixDQUFDLEdBQUdDLEdBQTdDLEVBQWtERCxDQUFDLEVBQW5ELEVBQXVEO0FBQ3JELFFBQU1HLFNBQVMsR0FBR1AsVUFBVSxDQUFDSSxDQUFELENBQTVCO0FBQ0EsUUFBTUksS0FBSyxHQUFHSixDQUFkO0FBRUFGLElBQUFBLE9BQU8sQ0FBQ08sSUFBUixlQUNFO0FBQU0sTUFBQSxHQUFHLEVBQUVEO0FBQVgsb0JBQ0U7QUFBUSxNQUFBLEtBQUssRUFBRTtBQUFFZCxRQUFBQSxLQUFLLEVBQUU7QUFBVCxPQUFmO0FBQWlELE1BQUEsU0FBUyxFQUFFUztBQUE1RCxpQkFDTUksU0FBUyxDQUFDRyxJQUFWLENBQWVDLElBQWYsRUFETixFQURGLEVBSUdYLFVBQVUsQ0FBQ1EsS0FBSyxHQUFHLENBQVQsQ0FBVixnQkFBd0IsOENBQU8sR0FBUCxDQUF4QixHQUE2QyxJQUpoRCxDQURGO0FBUUQ7O0FBRUQsU0FBT04sT0FBUDtBQUNELENBbkJEOztBQXFCQSxJQUFNVSw2QkFBNkIsR0FBRyxTQUFoQ0EsNkJBQWdDLFFBS2hDO0FBQUEsTUFKSkMsU0FJSSxTQUpKQSxTQUlJO0FBQUEsTUFISmIsVUFHSSxTQUhKQSxVQUdJO0FBQUEsTUFGSkMsa0JBRUksU0FGSkEsa0JBRUk7QUFBQSxNQURKYSxpQkFDSSxTQURKQSxpQkFDSTtBQUNKLE1BQU1YLFNBQVMsR0FBRyxpQ0FBaUJGLGtCQUFqQixDQUFsQjs7QUFFQSxNQUFJYyxzQkFBc0IsQ0FBQ0MsaUJBQXZCLENBQXlDaEIsVUFBekMsRUFBcURhLFNBQXJELENBQUosRUFBcUU7QUFDbkUsd0JBQ0U7QUFBSyxNQUFBLEtBQUssRUFBRTtBQUFFbkIsUUFBQUEsS0FBSyxFQUFFLHFCQUFUO0FBQWdDdUIsUUFBQUEsU0FBUyxFQUFFSDtBQUEzQztBQUFaLG9CQUNFO0FBQU0sTUFBQSxTQUFTLEVBQUVYO0FBQWpCLE9BQTZCSCxVQUFVLENBQUMsQ0FBRCxDQUFWLENBQWNVLElBQWQsQ0FBbUJDLElBQW5CLEVBQTdCLENBREYsZUFFRTtBQUFRLE1BQUEsU0FBUyxFQUFFUixTQUFuQjtBQUE4QixNQUFBLEtBQUssRUFBRTtBQUFFVCxRQUFBQSxLQUFLLEVBQUU7QUFBVDtBQUFyQyxrQkFDT0gsVUFEUCxPQUZGLGVBS0U7QUFBTSxNQUFBLFNBQVMsRUFBRVk7QUFBakIsT0FBNkJILFVBQVUsQ0FBQ0EsVUFBVSxDQUFDTSxNQUFYLEdBQW9CLENBQXJCLENBQVYsQ0FBa0NJLElBQWxDLENBQXVDQyxJQUF2QyxFQUE3QixDQUxGLENBREY7QUFTRCxHQVZELE1BVU87QUFDTCx3QkFDRTtBQUFLLE1BQUEsS0FBSyxFQUFFO0FBQUVqQixRQUFBQSxLQUFLLEVBQUUscUJBQVQ7QUFBZ0N1QixRQUFBQSxTQUFTLEVBQUVIO0FBQTNDO0FBQVosT0FDR2YsaUJBQWlCLENBQUNDLFVBQUQsRUFBYUMsa0JBQWIsQ0FEcEIsQ0FERjtBQUtEO0FBQ0YsQ0F6QkQ7O0FBMkJBVyw2QkFBNkIsQ0FBQ2pCLFNBQTlCLEdBQTBDO0FBQ3hDSyxFQUFBQSxVQUFVLEVBQUVKLHNCQUFVc0IsS0FBVixDQUFnQnBCLFVBRFk7QUFFeENlLEVBQUFBLFNBQVMsRUFBRWpCLHNCQUFVdUIsTUFBVixDQUFpQnJCLFVBRlk7QUFHeENHLEVBQUFBLGtCQUFrQixFQUFFTCxzQkFBVXVCLE1BSFU7QUFJeENMLEVBQUFBLGlCQUFpQixFQUFFbEIsc0JBQVV1QjtBQUpXLENBQTFDO0FBT0FQLDZCQUE2QixDQUFDUSxZQUE5QixHQUE2QztBQUFFTixFQUFBQSxpQkFBaUIsRUFBRTtBQUFyQixDQUE3QztlQUVlRiw2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0ICogYXMgd2luZG93U2VsZWN0aW9uSGVscGVycyBmcm9tICcuLi9oZWxwZXJzL3dpbmRvd1NlbGVjdGlvbkhlbHBlcnMnO1xuaW1wb3J0IHsgZ2V0Rm9udENsYXNzTmFtZSB9IGZyb20gJy4uLy4uL2NvbW1vbi9mb250VXRpbHMnO1xuXG5jb25zdCBCUkVBS19DSEFSID0gJyYnO1xuXG5leHBvcnQgY29uc3QgU2VsZWN0ZWRUZXh0ID0gKHsgY2hpbGRyZW4gfSkgPT4gPHN0cm9uZyBzdHlsZT17eyBjb2xvcjogJ3ZhcigtLWFjY2VudC1jb2xvciknIH19PntjaGlsZHJlbn08L3N0cm9uZz47XG5cblNlbGVjdGVkVGV4dC5wcm9wVHlwZXMgPSB7IGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZS5pc1JlcXVpcmVkIH07XG5cbmNvbnN0IGdldFNlbGVjdGlvblNwYW5zID0gKHNlbGVjdGlvbnMsIHRhcmdldExhbmd1YWdlRm9udCkgPT4ge1xuICBjb25zdCByZXN1bHRzID0gW107XG4gIGNvbnN0IGZvbnRDbGFzcyA9IGdldEZvbnRDbGFzc05hbWUodGFyZ2V0TGFuZ3VhZ2VGb250KTtcblxuICBmb3IgKGxldCBpID0gMCwgbGVuID0gc2VsZWN0aW9ucy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgIGNvbnN0IHNlbGVjdGlvbiA9IHNlbGVjdGlvbnNbaV07XG4gICAgY29uc3QgaW5kZXggPSBpO1xuXG4gICAgcmVzdWx0cy5wdXNoKFxuICAgICAgPHNwYW4ga2V5PXtpbmRleH0gPlxuICAgICAgICA8c3Ryb25nIHN0eWxlPXt7IGNvbG9yOiAndmFyKC0tYWNjZW50LWNvbG9yKScgfX0gY2xhc3NOYW1lPXtmb250Q2xhc3N9PlxuICAgICAgICAgIHtgJHtzZWxlY3Rpb24udGV4dC50cmltKCl9YH1cbiAgICAgICAgPC9zdHJvbmc+XG4gICAgICAgIHtzZWxlY3Rpb25zW2luZGV4ICsgMV0gPyA8c3Bhbj57JyAnfTwvc3Bhbj4gOiBudWxsfVxuICAgICAgPC9zcGFuPixcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdHM7XG59O1xuXG5jb25zdCBJbnN0cnVjdGlvbnNBcmVhVGV4dFNlbGVjdGlvbiA9ICh7XG4gIHZlcnNlVGV4dCxcbiAgc2VsZWN0aW9ucyxcbiAgdGFyZ2V0TGFuZ3VhZ2VGb250LFxuICBsYW5ndWFnZURpcmVjdGlvbixcbn0pID0+IHtcbiAgY29uc3QgZm9udENsYXNzID0gZ2V0Rm9udENsYXNzTmFtZSh0YXJnZXRMYW5ndWFnZUZvbnQpO1xuXG4gIGlmICh3aW5kb3dTZWxlY3Rpb25IZWxwZXJzLnNob3VsZFJlbmRlckJyZWFrKHNlbGVjdGlvbnMsIHZlcnNlVGV4dCkpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBzdHlsZT17eyBjb2xvcjogJ3ZhcigtLWFjY2VudC1jb2xvciknLCBkaXJlY3Rpb246IGxhbmd1YWdlRGlyZWN0aW9uIH19PlxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2ZvbnRDbGFzc30+e3NlbGVjdGlvbnNbMF0udGV4dC50cmltKCl9PC9zcGFuPlxuICAgICAgICA8c3Ryb25nIGNsYXNzTmFtZT17Zm9udENsYXNzfSBzdHlsZT17eyBjb2xvcjogJ3ZhcigtLWFjY2VudC1jb2xvciknIH19PlxuICAgICAgICAgIHtgICR7QlJFQUtfQ0hBUn0gYH1cbiAgICAgICAgPC9zdHJvbmc+XG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Zm9udENsYXNzfT57c2VsZWN0aW9uc1tzZWxlY3Rpb25zLmxlbmd0aCAtIDFdLnRleHQudHJpbSgpfTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgc3R5bGU9e3sgY29sb3I6ICd2YXIoLS1hY2NlbnQtY29sb3IpJywgZGlyZWN0aW9uOiBsYW5ndWFnZURpcmVjdGlvbiB9fT5cbiAgICAgICAge2dldFNlbGVjdGlvblNwYW5zKHNlbGVjdGlvbnMsIHRhcmdldExhbmd1YWdlRm9udCl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59O1xuXG5JbnN0cnVjdGlvbnNBcmVhVGV4dFNlbGVjdGlvbi5wcm9wVHlwZXMgPSB7XG4gIHNlbGVjdGlvbnM6IFByb3BUeXBlcy5hcnJheS5pc1JlcXVpcmVkLFxuICB2ZXJzZVRleHQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgdGFyZ2V0TGFuZ3VhZ2VGb250OiBQcm9wVHlwZXMuc3RyaW5nLFxuICBsYW5ndWFnZURpcmVjdGlvbjogUHJvcFR5cGVzLnN0cmluZyxcbn07XG5cbkluc3RydWN0aW9uc0FyZWFUZXh0U2VsZWN0aW9uLmRlZmF1bHRQcm9wcyA9IHsgbGFuZ3VhZ2VEaXJlY3Rpb246ICdsdHInIH07XG5cbmV4cG9ydCBkZWZhdWx0IEluc3RydWN0aW9uc0FyZWFUZXh0U2VsZWN0aW9uO1xuIl19