UNPKG

tc-ui-toolkit

Version:

React components used to develop tools for the desktop app translationCore

93 lines (74 loc) 8.26 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.createHighlightedSpan = exports.createTextSpan = exports.createNonClickableSpan = exports.onWordClick = void 0; var _react = _interopRequireDefault(require("react")); var _WordLexiconDetails = _interopRequireDefault(require("../../WordLexiconDetails")); var lexiconHelpers = _interopRequireWildcard(require("./lexiconHelpers")); var _usfmHelpers = require("./usfmHelpers"); // Components // helpers /** * on word click show lexicon * @param {Object} e - clicked element * @param {Object} word * @param {Function} getLexiconData * @param {Function} showPopover * @param {Function} translate * @param {boolean} isHebrew - if true then we adjust font size */ var onWordClick = function onWordClick(e, word, getLexiconData, showPopover, translate, isHebrew) { if (word && word.strong) { var lexiconData = lexiconHelpers.lookupStrongsNumbers(word.strong, getLexiconData); var positionCoord = e.target; var fontSize = isHebrew ? '1.7em' : '1.2em'; var PopoverTitle = /*#__PURE__*/_react["default"].createElement("strong", { style: { fontSize: fontSize } }, word.text); var wordDetails = /*#__PURE__*/_react["default"].createElement(_WordLexiconDetails["default"], { lexiconData: lexiconData, wordObject: word, translate: translate, isHebrew: !!isHebrew }); showPopover(PopoverTitle, wordDetails, positionCoord); } }; exports.onWordClick = onWordClick; var createNonClickableSpan = function createNonClickableSpan(index, paddingSpanStyle, padding, isHighlightedWord, text, fontClass) { return /*#__PURE__*/_react["default"].createElement("span", { key: index.toString() }, /*#__PURE__*/_react["default"].createElement("span", { className: fontClass, style: paddingSpanStyle }, padding), /*#__PURE__*/_react["default"].createElement("span", { className: fontClass, style: { backgroundColor: isHighlightedWord ? 'var(--highlight-color)' : '' } }, (0, _usfmHelpers.removeMarker)(text))); }; exports.createNonClickableSpan = createNonClickableSpan; var createTextSpan = function createTextSpan(index, text, fontClass) { return /*#__PURE__*/_react["default"].createElement("span", { key: index, className: fontClass }, (0, _usfmHelpers.removeMarker)(text)); }; exports.createTextSpan = createTextSpan; var createHighlightedSpan = function createHighlightedSpan(index, text, fontClass) { return /*#__PURE__*/_react["default"].createElement("span", { key: index, className: fontClass, style: { backgroundColor: 'var(--highlight-color)' } }, (0, _usfmHelpers.removeMarker)(text)); }; exports.createHighlightedSpan = createHighlightedSpan; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9TY3JpcHR1cmVQYW5lL2hlbHBlcnMvaHRtbEVsZW1lbnRzSGVscGVycy5qcyJdLCJuYW1lcyI6WyJvbldvcmRDbGljayIsImUiLCJ3b3JkIiwiZ2V0TGV4aWNvbkRhdGEiLCJzaG93UG9wb3ZlciIsInRyYW5zbGF0ZSIsImlzSGVicmV3Iiwic3Ryb25nIiwibGV4aWNvbkRhdGEiLCJsZXhpY29uSGVscGVycyIsImxvb2t1cFN0cm9uZ3NOdW1iZXJzIiwicG9zaXRpb25Db29yZCIsInRhcmdldCIsImZvbnRTaXplIiwiUG9wb3ZlclRpdGxlIiwidGV4dCIsIndvcmREZXRhaWxzIiwiY3JlYXRlTm9uQ2xpY2thYmxlU3BhbiIsImluZGV4IiwicGFkZGluZ1NwYW5TdHlsZSIsInBhZGRpbmciLCJpc0hpZ2hsaWdodGVkV29yZCIsImZvbnRDbGFzcyIsInRvU3RyaW5nIiwiYmFja2dyb3VuZENvbG9yIiwiY3JlYXRlVGV4dFNwYW4iLCJjcmVhdGVIaWdobGlnaHRlZFNwYW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUE7O0FBRUE7O0FBQ0E7O0FBSkE7QUFFQTs7QUFJQTs7Ozs7Ozs7O0FBU08sSUFBTUEsV0FBVyxHQUFHLFNBQWRBLFdBQWMsQ0FBQ0MsQ0FBRCxFQUFJQyxJQUFKLEVBQVVDLGNBQVYsRUFBMEJDLFdBQTFCLEVBQXVDQyxTQUF2QyxFQUFrREMsUUFBbEQsRUFBK0Q7QUFDeEYsTUFBSUosSUFBSSxJQUFJQSxJQUFJLENBQUNLLE1BQWpCLEVBQXlCO0FBQ3ZCLFFBQUlDLFdBQVcsR0FBR0MsY0FBYyxDQUFDQyxvQkFBZixDQUFvQ1IsSUFBSSxDQUFDSyxNQUF6QyxFQUFpREosY0FBakQsQ0FBbEI7QUFDQSxRQUFNUSxhQUFhLEdBQUdWLENBQUMsQ0FBQ1csTUFBeEI7QUFDQSxRQUFNQyxRQUFRLEdBQUdQLFFBQVEsR0FBRyxPQUFILEdBQWEsT0FBdEM7O0FBQ0EsUUFBTVEsWUFBWSxnQkFDaEI7QUFBUSxNQUFBLEtBQUssRUFBRTtBQUFFRCxRQUFBQSxRQUFRLEVBQVJBO0FBQUY7QUFBZixPQUE4QlgsSUFBSSxDQUFDYSxJQUFuQyxDQURGOztBQUdBLFFBQU1DLFdBQVcsZ0JBQ2YsZ0NBQUMsOEJBQUQ7QUFBb0IsTUFBQSxXQUFXLEVBQUVSLFdBQWpDO0FBQThDLE1BQUEsVUFBVSxFQUFFTixJQUExRDtBQUFnRSxNQUFBLFNBQVMsRUFBRUcsU0FBM0U7QUFDRSxNQUFBLFFBQVEsRUFBRSxDQUFDLENBQUNDO0FBRGQsTUFERjs7QUFJQUYsSUFBQUEsV0FBVyxDQUFDVSxZQUFELEVBQWVFLFdBQWYsRUFBNEJMLGFBQTVCLENBQVg7QUFDRDtBQUNGLENBZE07Ozs7QUFnQkEsSUFBTU0sc0JBQXNCLEdBQUcsU0FBekJBLHNCQUF5QixDQUFDQyxLQUFELEVBQVFDLGdCQUFSLEVBQTBCQyxPQUExQixFQUFtQ0MsaUJBQW5DLEVBQXNETixJQUF0RCxFQUE0RE8sU0FBNUQ7QUFBQSxzQkFDcEM7QUFBTSxJQUFBLEdBQUcsRUFBRUosS0FBSyxDQUFDSyxRQUFOO0FBQVgsa0JBQ0U7QUFBTSxJQUFBLFNBQVMsRUFBRUQsU0FBakI7QUFBNEIsSUFBQSxLQUFLLEVBQUVIO0FBQW5DLEtBQ0dDLE9BREgsQ0FERixlQUlFO0FBQU0sSUFBQSxTQUFTLEVBQUVFLFNBQWpCO0FBQTRCLElBQUEsS0FBSyxFQUFFO0FBQUVFLE1BQUFBLGVBQWUsRUFBRUgsaUJBQWlCLEdBQUcsd0JBQUgsR0FBOEI7QUFBbEU7QUFBbkMsS0FDRywrQkFBYU4sSUFBYixDQURILENBSkYsQ0FEb0M7QUFBQSxDQUEvQjs7OztBQVdBLElBQU1VLGNBQWMsR0FBRyxTQUFqQkEsY0FBaUIsQ0FBQ1AsS0FBRCxFQUFRSCxJQUFSLEVBQWNPLFNBQWQ7QUFBQSxzQkFDNUI7QUFBTSxJQUFBLEdBQUcsRUFBRUosS0FBWDtBQUFrQixJQUFBLFNBQVMsRUFBRUk7QUFBN0IsS0FDRywrQkFBYVAsSUFBYixDQURILENBRDRCO0FBQUEsQ0FBdkI7Ozs7QUFNQSxJQUFNVyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXdCLENBQUNSLEtBQUQsRUFBUUgsSUFBUixFQUFjTyxTQUFkO0FBQUEsc0JBQ25DO0FBQU0sSUFBQSxHQUFHLEVBQUVKLEtBQVg7QUFBa0IsSUFBQSxTQUFTLEVBQUVJLFNBQTdCO0FBQXdDLElBQUEsS0FBSyxFQUFFO0FBQUVFLE1BQUFBLGVBQWUsRUFBRTtBQUFuQjtBQUEvQyxLQUNHLCtCQUFhVCxJQUFiLENBREgsQ0FEbUM7QUFBQSxDQUE5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG4vLyBDb21wb25lbnRzXG5pbXBvcnQgV29yZExleGljb25EZXRhaWxzIGZyb20gJy4uLy4uL1dvcmRMZXhpY29uRGV0YWlscyc7XG4vLyBoZWxwZXJzXG5pbXBvcnQgKiBhcyBsZXhpY29uSGVscGVycyBmcm9tICcuL2xleGljb25IZWxwZXJzJztcbmltcG9ydCB7IHJlbW92ZU1hcmtlciB9IGZyb20gJy4vdXNmbUhlbHBlcnMnO1xuXG4vKipcbiAqIG9uIHdvcmQgY2xpY2sgc2hvdyBsZXhpY29uXG4gKiBAcGFyYW0ge09iamVjdH0gZSAtIGNsaWNrZWQgZWxlbWVudFxuICogQHBhcmFtIHtPYmplY3R9IHdvcmRcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGdldExleGljb25EYXRhXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBzaG93UG9wb3ZlclxuICogQHBhcmFtIHtGdW5jdGlvbn0gdHJhbnNsYXRlXG4gKiBAcGFyYW0ge2Jvb2xlYW59IGlzSGVicmV3IC0gaWYgdHJ1ZSB0aGVuIHdlIGFkanVzdCBmb250IHNpemVcbiAqL1xuZXhwb3J0IGNvbnN0IG9uV29yZENsaWNrID0gKGUsIHdvcmQsIGdldExleGljb25EYXRhLCBzaG93UG9wb3ZlciwgdHJhbnNsYXRlLCBpc0hlYnJldykgPT4ge1xuICBpZiAod29yZCAmJiB3b3JkLnN0cm9uZykge1xuICAgIGxldCBsZXhpY29uRGF0YSA9IGxleGljb25IZWxwZXJzLmxvb2t1cFN0cm9uZ3NOdW1iZXJzKHdvcmQuc3Ryb25nLCBnZXRMZXhpY29uRGF0YSk7XG4gICAgY29uc3QgcG9zaXRpb25Db29yZCA9IGUudGFyZ2V0O1xuICAgIGNvbnN0IGZvbnRTaXplID0gaXNIZWJyZXcgPyAnMS43ZW0nIDogJzEuMmVtJztcbiAgICBjb25zdCBQb3BvdmVyVGl0bGUgPSAoXG4gICAgICA8c3Ryb25nIHN0eWxlPXt7IGZvbnRTaXplIH19Pnt3b3JkLnRleHR9PC9zdHJvbmc+XG4gICAgKTtcbiAgICBjb25zdCB3b3JkRGV0YWlscyA9IChcbiAgICAgIDxXb3JkTGV4aWNvbkRldGFpbHMgbGV4aWNvbkRhdGE9e2xleGljb25EYXRhfSB3b3JkT2JqZWN0PXt3b3JkfSB0cmFuc2xhdGU9e3RyYW5zbGF0ZX1cbiAgICAgICAgaXNIZWJyZXc9eyEhaXNIZWJyZXd9Lz5cbiAgICApO1xuICAgIHNob3dQb3BvdmVyKFBvcG92ZXJUaXRsZSwgd29yZERldGFpbHMsIHBvc2l0aW9uQ29vcmQpO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTm9uQ2xpY2thYmxlU3BhbiA9IChpbmRleCwgcGFkZGluZ1NwYW5TdHlsZSwgcGFkZGluZywgaXNIaWdobGlnaHRlZFdvcmQsIHRleHQsIGZvbnRDbGFzcykgPT4gKFxuICA8c3BhbiBrZXk9e2luZGV4LnRvU3RyaW5nKCl9PlxuICAgIDxzcGFuIGNsYXNzTmFtZT17Zm9udENsYXNzfSBzdHlsZT17cGFkZGluZ1NwYW5TdHlsZX0+XG4gICAgICB7cGFkZGluZ31cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gY2xhc3NOYW1lPXtmb250Q2xhc3N9IHN0eWxlPXt7IGJhY2tncm91bmRDb2xvcjogaXNIaWdobGlnaHRlZFdvcmQgPyAndmFyKC0taGlnaGxpZ2h0LWNvbG9yKScgOiAnJyB9fT5cbiAgICAgIHtyZW1vdmVNYXJrZXIodGV4dCl9XG4gICAgPC9zcGFuPlxuICA8L3NwYW4+XG4pO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlVGV4dFNwYW4gPSAoaW5kZXgsIHRleHQsIGZvbnRDbGFzcykgPT4gKFxuICA8c3BhbiBrZXk9e2luZGV4fSBjbGFzc05hbWU9e2ZvbnRDbGFzc30+XG4gICAge3JlbW92ZU1hcmtlcih0ZXh0KX1cbiAgPC9zcGFuPlxuKTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUhpZ2hsaWdodGVkU3BhbiA9IChpbmRleCwgdGV4dCwgZm9udENsYXNzKSA9PiAoXG4gIDxzcGFuIGtleT17aW5kZXh9IGNsYXNzTmFtZT17Zm9udENsYXNzfSBzdHlsZT17eyBiYWNrZ3JvdW5kQ29sb3I6ICd2YXIoLS1oaWdobGlnaHQtY29sb3IpJyB9fT5cbiAgICB7cmVtb3ZlTWFya2VyKHRleHQpfVxuICA8L3NwYW4+XG4pO1xuIl19