UNPKG

@atlaskit/editor-core

Version:

A package contains Atlassian editor core functionality

31 lines 1.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var prosemirror_1 = require("../../prosemirror"); var _1 = require("./"); var utils_1 = require("../utils"); function inputRulePlugin(schema) { var rules = []; if (schema.nodes.emoji && schema.marks.emojiQuery) { var regex = new RegExp("(^|[\\s(" + utils_1.leafNodeReplacementCharacter + "]):$"); var emojiQueryRule = utils_1.createInputRule(regex, function (state, match, start, end) { var emojisState = _1.stateKey.getState(state); if (!emojisState.emojiProvider) { return undefined; } if (!emojisState.isEnabled()) { return undefined; } var mark = schema.mark('emojiQuery'); var tr = state.tr; var emojiText = schema.text(':', [mark]); return tr.replaceSelectionWith(emojiText, false); }); rules.push(emojiQueryRule); } if (rules.length !== 0) { return prosemirror_1.inputRules({ rules: rules }); } } exports.inputRulePlugin = inputRulePlugin; exports.default = inputRulePlugin; //# sourceMappingURL=input-rules.js.map