@atlaskit/editor-wikimarkup-transformer
Version:
Wiki markup transformer for JIRA and Confluence
35 lines (34 loc) • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createDashTokenParser = void 0;
var createDashTokenParser = exports.createDashTokenParser = function createDashTokenParser(token, fallback) {
return function (_ref) {
var input = _ref.input,
position = _ref.position;
/**
* From Jira https://stash.atlassian.com/projects/JIRACLOUD/repos/jira/browse/jira-components/jira-renderer/src/main/java/com/atlassian/renderer/v2/components/phrase/DashRendererComponent.java
* public static final Replacer EN_DASH = new Replacer(Pattern.compile("(^|\\s)--(\\s|$)"), "$1–$2", "--");
* public static final Replacer EM_DASH = new Replacer(Pattern.compile("(^|\\s)---(\\s|$)"), "$1—$2", "---");
*/
if (position > 0) {
var charBeforeToken = input.charAt(position - 1);
if (!isSpace(charBeforeToken)) {
return fallback;
}
}
if (position + token.length < input.length) {
var charAfterToken = input.charAt(position + token.length);
if (!isSpace(charAfterToken)) {
return fallback;
}
}
return token;
};
};
var isSpace = function isSpace(char) {
// Ignored via go/ees005
// eslint-disable-next-line require-unicode-regexp
return /\s/.test(char);
};