tc-ui-toolkit
Version:
React components used to develop tools for the desktop app translationCore
62 lines (47 loc) • 4.55 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.hasTrailingSpace = exports.hasLeadingSpace = exports.removeMarker = void 0;
var _usfmJs = _interopRequireDefault(require("usfm-js"));
// consts
var leadingSpacesRegex = new RegExp(/^\s/);
var trailingSpacesRegex = new RegExp(/\s$/);
/**
* Method to filter usfm markers from a string
* @param {String} verseText - The string to remove markers from
* @return {String}
*/
var removeMarker = function removeMarker(verseText) {
var text = _usfmJs["default"].removeMarker(verseText);
var trimmed = verseText.trimLeft();
var offset = verseText.indexOf(trimmed);
if (offset > 0) {
// see if we need to restore leading white space
text = verseText.substr(0, offset) + text; // restore original leading white space
}
return text;
};
/**
* returns true if text has leading white space
* @param {String} text
* @return {boolean}
*/
exports.removeMarker = removeMarker;
var hasLeadingSpace = function hasLeadingSpace(text) {
var hasSpace = leadingSpacesRegex.test(text);
return hasSpace;
};
/**
* returns true if text has trailing white space
* @param {String} text
* @return {boolean}
*/
exports.hasLeadingSpace = hasLeadingSpace;
var hasTrailingSpace = function hasTrailingSpace(text) {
var hasSpace = trailingSpacesRegex.test(text);
return hasSpace;
};
exports.hasTrailingSpace = hasTrailingSpace;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9TY3JpcHR1cmVQYW5lL2hlbHBlcnMvdXNmbUhlbHBlcnMuanMiXSwibmFtZXMiOlsibGVhZGluZ1NwYWNlc1JlZ2V4IiwiUmVnRXhwIiwidHJhaWxpbmdTcGFjZXNSZWdleCIsInJlbW92ZU1hcmtlciIsInZlcnNlVGV4dCIsInRleHQiLCJ1c2ZtanMiLCJ0cmltbWVkIiwidHJpbUxlZnQiLCJvZmZzZXQiLCJpbmRleE9mIiwic3Vic3RyIiwiaGFzTGVhZGluZ1NwYWNlIiwiaGFzU3BhY2UiLCJ0ZXN0IiwiaGFzVHJhaWxpbmdTcGFjZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBRUE7QUFDQSxJQUFNQSxrQkFBa0IsR0FBRyxJQUFJQyxNQUFKLENBQVcsS0FBWCxDQUEzQjtBQUNBLElBQU1DLG1CQUFtQixHQUFHLElBQUlELE1BQUosQ0FBVyxLQUFYLENBQTVCO0FBRUE7Ozs7OztBQUtPLElBQU1FLFlBQVksR0FBRyxTQUFmQSxZQUFlLENBQUNDLFNBQUQsRUFBZTtBQUN6QyxNQUFJQyxJQUFJLEdBQUdDLG1CQUFPSCxZQUFQLENBQW9CQyxTQUFwQixDQUFYOztBQUNBLE1BQU1HLE9BQU8sR0FBR0gsU0FBUyxDQUFDSSxRQUFWLEVBQWhCO0FBQ0EsTUFBTUMsTUFBTSxHQUFHTCxTQUFTLENBQUNNLE9BQVYsQ0FBa0JILE9BQWxCLENBQWY7O0FBRUEsTUFBSUUsTUFBTSxHQUFHLENBQWIsRUFBZ0I7QUFBRTtBQUNoQkosSUFBQUEsSUFBSSxHQUFHRCxTQUFTLENBQUNPLE1BQVYsQ0FBaUIsQ0FBakIsRUFBb0JGLE1BQXBCLElBQThCSixJQUFyQyxDQURjLENBQzZCO0FBQzVDOztBQUNELFNBQU9BLElBQVA7QUFDRCxDQVRNO0FBV1A7Ozs7Ozs7OztBQUtPLElBQU1PLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsQ0FBQ1AsSUFBRCxFQUFVO0FBQ3ZDLE1BQU1RLFFBQVEsR0FBR2Isa0JBQWtCLENBQUNjLElBQW5CLENBQXdCVCxJQUF4QixDQUFqQjtBQUNBLFNBQU9RLFFBQVA7QUFDRCxDQUhNO0FBS1A7Ozs7Ozs7OztBQUtPLElBQU1FLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsQ0FBQ1YsSUFBRCxFQUFVO0FBQ3hDLE1BQU1RLFFBQVEsR0FBR1gsbUJBQW1CLENBQUNZLElBQXBCLENBQXlCVCxJQUF6QixDQUFqQjtBQUNBLFNBQU9RLFFBQVA7QUFDRCxDQUhNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHVzZm1qcyBmcm9tICd1c2ZtLWpzJztcblxuLy8gY29uc3RzXG5jb25zdCBsZWFkaW5nU3BhY2VzUmVnZXggPSBuZXcgUmVnRXhwKC9eXFxzLyk7XG5jb25zdCB0cmFpbGluZ1NwYWNlc1JlZ2V4ID0gbmV3IFJlZ0V4cCgvXFxzJC8pO1xuXG4vKipcbiAqIE1ldGhvZCB0byBmaWx0ZXIgdXNmbSBtYXJrZXJzIGZyb20gYSBzdHJpbmdcbiAqIEBwYXJhbSB7U3RyaW5nfSB2ZXJzZVRleHQgLSBUaGUgc3RyaW5nIHRvIHJlbW92ZSBtYXJrZXJzIGZyb21cbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqL1xuZXhwb3J0IGNvbnN0IHJlbW92ZU1hcmtlciA9ICh2ZXJzZVRleHQpID0+IHtcbiAgbGV0IHRleHQgPSB1c2ZtanMucmVtb3ZlTWFya2VyKHZlcnNlVGV4dCk7XG4gIGNvbnN0IHRyaW1tZWQgPSB2ZXJzZVRleHQudHJpbUxlZnQoKTtcbiAgY29uc3Qgb2Zmc2V0ID0gdmVyc2VUZXh0LmluZGV4T2YodHJpbW1lZCk7XG5cbiAgaWYgKG9mZnNldCA+IDApIHsgLy8gc2VlIGlmIHdlIG5lZWQgdG8gcmVzdG9yZSBsZWFkaW5nIHdoaXRlIHNwYWNlXG4gICAgdGV4dCA9IHZlcnNlVGV4dC5zdWJzdHIoMCwgb2Zmc2V0KSArIHRleHQ7IC8vIHJlc3RvcmUgb3JpZ2luYWwgbGVhZGluZyB3aGl0ZSBzcGFjZVxuICB9XG4gIHJldHVybiB0ZXh0O1xufTtcblxuLyoqXG4gKiByZXR1cm5zIHRydWUgaWYgdGV4dCBoYXMgbGVhZGluZyB3aGl0ZSBzcGFjZVxuICogQHBhcmFtIHtTdHJpbmd9IHRleHRcbiAqIEByZXR1cm4ge2Jvb2xlYW59XG4gKi9cbmV4cG9ydCBjb25zdCBoYXNMZWFkaW5nU3BhY2UgPSAodGV4dCkgPT4ge1xuICBjb25zdCBoYXNTcGFjZSA9IGxlYWRpbmdTcGFjZXNSZWdleC50ZXN0KHRleHQpO1xuICByZXR1cm4gaGFzU3BhY2U7XG59O1xuXG4vKipcbiAqIHJldHVybnMgdHJ1ZSBpZiB0ZXh0IGhhcyB0cmFpbGluZyB3aGl0ZSBzcGFjZVxuICogQHBhcmFtIHtTdHJpbmd9IHRleHRcbiAqIEByZXR1cm4ge2Jvb2xlYW59XG4gKi9cbmV4cG9ydCBjb25zdCBoYXNUcmFpbGluZ1NwYWNlID0gKHRleHQpID0+IHtcbiAgY29uc3QgaGFzU3BhY2UgPSB0cmFpbGluZ1NwYWNlc1JlZ2V4LnRlc3QodGV4dCk7XG4gIHJldHVybiBoYXNTcGFjZTtcbn07XG4iXX0=