UNPKG

@atlaskit/editor-wikimarkup-transformer

Version:

Wiki markup transformer for JIRA and Confluence

115 lines 5.34 kB
import _defineProperty from "@babel/runtime/helpers/defineProperty"; var _tokenToTokenParserMa; import { media } from './media'; import { blockquote } from './blockquote'; import { citation } from './citation'; import { deleted } from './deleted'; import { doubleDashSymbol } from './double-dash-symbol'; import { emoji } from './emoji'; import { emphasis } from './emphasis'; import { hardbreak } from './hardbreak'; import { heading } from './heading'; import { inserted } from './inserted'; import { linkFormat } from './links/link-format'; import { linkText } from './link-text'; import { list } from './list'; import { monospace } from './monospace'; import { quadrupleDashSymbol } from './quadruple-dash-symbol'; import { ruler } from './ruler'; import { strong } from './strong'; import { subscript } from './subscript'; import { superscript } from './superscript'; import { table } from './table'; import { tripleDashSymbol } from './triple-dash-symbol'; import { panelMacro } from './panel-macro'; import { adfMacro } from './adf-macro'; import { anchorMacro } from './anchor-macro'; import { codeMacro } from './code-macro'; import { quoteMacro } from './quote-macro'; import { colorMacro } from './color-macro'; import { noformatMacro } from './noformat-macro'; import { forceLineBreak } from './force-line-break'; import { issueKey } from './issue-key'; export var TokenType = /*#__PURE__*/function (TokenType) { TokenType["ADF_MACRO"] = "ADF_MACRO"; // {adf} TokenType["ANCHOR_MACRO"] = "ANCHOR_MACRO"; // {anchor} TokenType["CODE_MACRO"] = "CODE_MACRO"; // {code} TokenType["QUOTE_MACRO"] = "QUOTE_MACRO"; // {quote} TokenType["NOFORMAT_MACRO"] = "NOFORMAT_MACRO"; // {noformat} TokenType["PANEL_MACRO"] = "PANEL_MACRO"; // {panel} TokenType["COLOR_MACRO"] = "COLOR_MACRO"; // {color} TokenType["LOREM_MACRO"] = "LOREM_MACRO"; // {loremipsum} TokenType["QUOTE"] = "QUOTE"; TokenType["STRING"] = "STRING"; TokenType["ISSUE_KEY"] = "ISSUE_KEY"; TokenType["LINK_FORMAT"] = "LINK_FORMAT"; TokenType["LINK_TEXT"] = "LINK_TEXT"; TokenType["MEDIA"] = "MEDIA"; TokenType["HEADING"] = "HEADING"; TokenType["LIST"] = "LIST"; TokenType["TABLE"] = "TABLE"; TokenType["RULER"] = "RULER"; TokenType["HARD_BREAK"] = "HARD_BREAK"; // \\, \r, \n, \r\n TokenType["DOUBLE_DASH_SYMBOL"] = "DOUBLE_DASH_SYMBOL"; // -- TokenType["TRIPLE_DASH_SYMBOL"] = "TRIPLE_DASH_SYMBOL"; // --- TokenType["QUADRUPLE_DASH_SYMBOL"] = "QUADRUPLE_DASH_SYMBOL"; // ---- TokenType["STRONG"] = "STRONG"; // *strong* TokenType["MONOSPACE"] = "MONOSPACE"; // {{text}} TokenType["SUPERSCRIPT"] = "SUPERSCRIPT"; // ^superscript^ TokenType["SUBSCRIPT"] = "SUBSCRIPT"; // ^subscript^ TokenType["EMPHASIS"] = "EMPHASIS"; // _emphasis_ TokenType["CITATION"] = "CITATION"; // ??citation?? TokenType["DELETED"] = "DELETED"; // -deleted- TokenType["INSERTED"] = "INSERTED"; // +deleted+ TokenType["EMOJI"] = "EMOJI"; // :) TokenType["FORCE_LINE_BREAK"] = "FORCE_LINE_BREAK"; // \\ return TokenType; }({}); var tokenToTokenParserMapping = (_tokenToTokenParserMa = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_tokenToTokenParserMa, TokenType.DOUBLE_DASH_SYMBOL, doubleDashSymbol), TokenType.TRIPLE_DASH_SYMBOL, tripleDashSymbol), TokenType.QUADRUPLE_DASH_SYMBOL, quadrupleDashSymbol), TokenType.RULER, ruler), TokenType.STRONG, strong), TokenType.MONOSPACE, monospace), TokenType.SUPERSCRIPT, superscript), TokenType.SUBSCRIPT, subscript), TokenType.EMPHASIS, emphasis), TokenType.CITATION, citation), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_tokenToTokenParserMa, TokenType.DELETED, deleted), TokenType.INSERTED, inserted), TokenType.HARD_BREAK, hardbreak), TokenType.LINK_FORMAT, linkFormat), TokenType.LINK_TEXT, linkText), TokenType.HEADING, heading), TokenType.MEDIA, media), TokenType.LIST, list), TokenType.QUOTE, blockquote), TokenType.TABLE, table), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_tokenToTokenParserMa, TokenType.EMOJI, emoji), TokenType.ADF_MACRO, adfMacro), TokenType.ANCHOR_MACRO, anchorMacro), TokenType.CODE_MACRO, codeMacro), TokenType.QUOTE_MACRO, quoteMacro), TokenType.NOFORMAT_MACRO, noformatMacro), TokenType.PANEL_MACRO, panelMacro), TokenType.COLOR_MACRO, colorMacro), TokenType.FORCE_LINE_BREAK, forceLineBreak), TokenType.ISSUE_KEY, issueKey)); export function parseToken(input, type, position, schema, context) { var tokenParser = tokenToTokenParserMapping[type]; if (tokenParser) { try { return tokenParser({ input: input, position: position, schema: schema, context: context }); } catch (err) { if (context.tokenErrCallback && err instanceof Error) { context.tokenErrCallback(err, type); } return fallback(input, position); } } return fallback(input, position); } function fallback(input, position) { return { type: 'text', text: input.substr(position, 1), length: 1 }; }