c49923daea84dd82ace07cb0c38c6cee36a724afb01c8d68ae18addbb68244f5.json 73 KB

1
  1. {"ast":null,"code":"\"use strict\";\n\nvar __assign = this && this.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __read = this && this.__read || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o),\n r,\n ar = [],\n e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n } catch (error) {\n e = {\n error: error\n };\n } finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n } finally {\n if (e) throw e.error;\n }\n }\n return ar;\n};\nvar __values = this && this.__values || function (o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator,\n m = s && o[s],\n i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return {\n value: o && o[i++],\n done: !o\n };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nvar __importDefault = this && this.__importDefault || function (mod) {\n return mod && mod.__esModule ? mod : {\n \"default\": mod\n };\n};\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.MathtoolsMethods = void 0;\nvar ParseUtil_js_1 = __importDefault(require(\"../ParseUtil.js\"));\nvar AmsMethods_js_1 = require(\"../ams/AmsMethods.js\");\nvar BaseMethods_js_1 = __importDefault(require(\"../base/BaseMethods.js\"));\nvar TexParser_js_1 = __importDefault(require(\"../TexParser.js\"));\nvar TexError_js_1 = __importDefault(require(\"../TexError.js\"));\nvar NodeUtil_js_1 = __importDefault(require(\"../NodeUtil.js\"));\nvar MmlNode_js_1 = require(\"../../../core/MmlTree/MmlNode.js\");\nvar lengths_js_1 = require(\"../../../util/lengths.js\");\nvar Options_js_1 = require(\"../../../util/Options.js\");\nvar NewcommandUtil_js_1 = __importDefault(require(\"../newcommand/NewcommandUtil.js\"));\nvar NewcommandMethods_js_1 = __importDefault(require(\"../newcommand/NewcommandMethods.js\"));\nvar MathtoolsUtil_js_1 = require(\"./MathtoolsUtil.js\");\nexports.MathtoolsMethods = {\n MtMatrix: function (parser, begin, open, close) {\n var align = parser.GetBrackets(\"\\\\begin{\".concat(begin.getName(), \"}\"), 'c');\n return exports.MathtoolsMethods.Array(parser, begin, open, close, align);\n },\n MtSmallMatrix: function (parser, begin, open, close, align) {\n if (!align) {\n align = parser.GetBrackets(\"\\\\begin{\".concat(begin.getName(), \"}\"), parser.options.mathtools['smallmatrix-align']);\n }\n return exports.MathtoolsMethods.Array(parser, begin, open, close, align, ParseUtil_js_1.default.Em(1 / 3), '.2em', 'S', 1);\n },\n MtMultlined: function (parser, begin) {\n var _a;\n var name = \"\\\\begin{\".concat(begin.getName(), \"}\");\n var pos = parser.GetBrackets(name, parser.options.mathtools['multlined-pos'] || 'c');\n var width = pos ? parser.GetBrackets(name, '') : '';\n if (pos && !pos.match(/^[cbt]$/)) {\n _a = __read([pos, width], 2), width = _a[0], pos = _a[1];\n }\n parser.Push(begin);\n var item = parser.itemFactory.create('multlined', parser, begin);\n item.arraydef = {\n displaystyle: true,\n rowspacing: '.5em',\n width: width || 'auto',\n columnwidth: '100%'\n };\n return ParseUtil_js_1.default.setArrayAlign(item, pos || 'c');\n },\n HandleShove: function (parser, name, shove) {\n var top = parser.stack.Top();\n if (top.kind !== 'multline' && top.kind !== 'multlined') {\n throw new TexError_js_1.default('CommandInMultlined', '%1 can only appear within the multline or multlined environments', name);\n }\n if (top.Size()) {\n throw new TexError_js_1.default('CommandAtTheBeginingOfLine', '%1 must come at the beginning of the line', name);\n }\n top.setProperty('shove', shove);\n var shift = parser.GetBrackets(name);\n var mml = parser.ParseArg(name);\n if (shift) {\n var mrow = parser.create('node', 'mrow', []);\n var mspace = parser.create('node', 'mspace', [], {\n width: shift\n });\n if (shove === 'left') {\n mrow.appendChild(mspace);\n mrow.appendChild(mml);\n } else {\n mrow.appendChild(mml);\n mrow.appendChild(mspace);\n }\n mml = mrow;\n }\n parser.Push(mml);\n },\n SpreadLines: function (parser, begin) {\n var e_1, _a;\n if (parser.stack.env.closing === begin.getName()) {\n delete parser.stack.env.closing;\n var top_1 = parser.stack.Pop();\n var mml = top_1.toMml();\n var spread = top_1.getProperty('spread');\n if (mml.isInferred) {\n try {\n for (var _b = __values(NodeUtil_js_1.default.getChildren(mml)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var child = _c.value;\n MathtoolsUtil_js_1.MathtoolsUtil.spreadLines(child, spread);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n } else {\n MathtoolsUtil_js_1.MathtoolsUtil.spreadLines(mml, spread);\n }\n parser.Push(mml);\n } else {\n var spread = parser.GetDimen(\"\\\\begin{\".concat(begin.getName(), \"}\"));\n begin.setProperty('spread', spread);\n parser.Push(begin);\n }\n },\n Cases: function (parser, begin, open, close, style) {\n var array = parser.itemFactory.create('array').setProperty('casesEnv', begin.getName());\n array.arraydef = {\n rowspacing: '.2em',\n columnspacing: '1em',\n columnalign: 'left'\n };\n if (style === 'D') {\n array.arraydef.displaystyle = true;\n }\n array.setProperties({\n open: open,\n close: close\n });\n parser.Push(begin);\n return array;\n },\n MathLap: function (parser, name, pos, cramped) {\n var style = parser.GetBrackets(name, '').trim();\n var mml = parser.create('node', 'mstyle', [parser.create('node', 'mpadded', [parser.ParseArg(name)], __assign({\n width: 0\n }, pos === 'r' ? {} : {\n lspace: pos === 'l' ? '-1width' : '-.5width'\n }))], {\n 'data-cramped': cramped\n });\n MathtoolsUtil_js_1.MathtoolsUtil.setDisplayLevel(mml, style);\n parser.Push(parser.create('node', 'TeXAtom', [mml]));\n },\n Cramped: function (parser, name) {\n var style = parser.GetBrackets(name, '').trim();\n var arg = parser.ParseArg(name);\n var mml = parser.create('node', 'mstyle', [arg], {\n 'data-cramped': true\n });\n MathtoolsUtil_js_1.MathtoolsUtil.setDisplayLevel(mml, style);\n parser.Push(mml);\n },\n MtLap: function (parser, name, pos) {\n var content = ParseUtil_js_1.default.internalMath(parser, parser.GetArgument(name), 0);\n var mml = parser.create('node', 'mpadded', content, {\n width: 0\n });\n if (pos !== 'r') {\n NodeUtil_js_1.default.setAttribute(mml, 'lspace', pos === 'l' ? '-1width' : '-.5width');\n }\n parser.Push(mml);\n },\n MathMakeBox: function (parser, name) {\n var width = parser.GetBrackets(name);\n var pos = parser.GetBrackets(name, 'c');\n var mml = parser.create('node', 'mpadded', [parser.ParseArg(name)]);\n if (width) {\n NodeUtil_js_1.default.setAttribute(mml, 'width', width);\n }\n var align = (0, Options_js_1.lookup)(pos, {\n c: 'center',\n r: 'right'\n }, '');\n if (align) {\n NodeUtil_js_1.default.setAttribute(mml, 'data-align', align);\n }\n parser.Push(mml);\n },\n MathMBox: function (parser, name) {\n parser.Push(parser.create('node', 'mrow', [parser.ParseArg(name)]));\n },\n UnderOverBracket: function (parser, name) {\n var thickness = (0, lengths_js_1.length2em)(parser.GetBrackets(name, '.1em'), .1);\n var height = parser.GetBrackets(name, '.2em');\n var arg = parser.GetArgument(name);\n var _a = __read(name.charAt(1) === 'o' ? ['over', 'accent', 'bottom'] : ['under', 'accentunder', 'top'], 3),\n pos = _a[0],\n accent = _a[1],\n border = _a[2];\n var t = (0, lengths_js_1.em)(thickness);\n var base = new TexParser_js_1.default(arg, parser.stack.env, parser.configuration).mml();\n var copy = new TexParser_js_1.default(arg, parser.stack.env, parser.configuration).mml();\n var script = parser.create('node', 'mpadded', [parser.create('node', 'mphantom', [copy])], {\n style: \"border: \".concat(t, \" solid; border-\").concat(border, \": none\"),\n height: height,\n depth: 0\n });\n var node = ParseUtil_js_1.default.underOver(parser, base, script, pos, true);\n var munderover = NodeUtil_js_1.default.getChildAt(NodeUtil_js_1.default.getChildAt(node, 0), 0);\n NodeUtil_js_1.default.setAttribute(munderover, accent, true);\n parser.Push(node);\n },\n Aboxed: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n if (top.row.length % 2 === 1) {\n top.row.push(parser.create('node', 'mtd', []));\n }\n var arg = parser.GetArgument(name);\n var rest = parser.string.substr(parser.i);\n parser.string = arg + '&&\\\\endAboxed';\n parser.i = 0;\n var left = parser.GetUpTo(name, '&');\n var right = parser.GetUpTo(name, '&');\n parser.GetUpTo(name, '\\\\endAboxed');\n var tex = ParseUtil_js_1.default.substituteArgs(parser, [left, right], '\\\\rlap{\\\\boxed{#1{}#2}}\\\\kern.267em\\\\phantom{#1}&\\\\phantom{{}#2}\\\\kern.267em');\n parser.string = tex + rest;\n parser.i = 0;\n },\n ArrowBetweenLines: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n if (top.Size() || top.row.length) {\n throw new TexError_js_1.default('BetweenLines', '%1 must be on a row by itself', name);\n }\n var star = parser.GetStar();\n var symbol = parser.GetBrackets(name, '\\\\Updownarrow');\n if (star) {\n top.EndEntry();\n top.EndEntry();\n }\n var tex = star ? '\\\\quad' + symbol : symbol + '\\\\quad';\n var mml = new TexParser_js_1.default(tex, parser.stack.env, parser.configuration).mml();\n parser.Push(mml);\n top.EndEntry();\n top.EndRow();\n },\n VDotsWithin: function (parser, name) {\n var top = parser.stack.Top();\n var isFlush = top.getProperty('flushspaceabove') === top.table.length;\n var arg = '\\\\mmlToken{mi}{}' + parser.GetArgument(name) + '\\\\mmlToken{mi}{}';\n var base = new TexParser_js_1.default(arg, parser.stack.env, parser.configuration).mml();\n var mml = parser.create('node', 'mpadded', [parser.create('node', 'mpadded', [parser.create('node', 'mo', [parser.create('text', '\\u22EE')])], __assign({\n width: 0,\n lspace: '-.5width'\n }, isFlush ? {\n height: '-.6em',\n voffset: '-.18em'\n } : {})), parser.create('node', 'mphantom', [base])], {\n lspace: '.5width'\n });\n parser.Push(mml);\n },\n ShortVDotsWithin: function (parser, _name) {\n var top = parser.stack.Top();\n var star = parser.GetStar();\n exports.MathtoolsMethods.FlushSpaceAbove(parser, '\\\\MTFlushSpaceAbove');\n !star && top.EndEntry();\n exports.MathtoolsMethods.VDotsWithin(parser, '\\\\vdotswithin');\n star && top.EndEntry();\n exports.MathtoolsMethods.FlushSpaceBelow(parser, '\\\\MTFlushSpaceBelow');\n },\n FlushSpaceAbove: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n top.setProperty('flushspaceabove', top.table.length);\n top.addRowSpacing('-' + parser.options.mathtools['shortvdotsadjustabove']);\n },\n FlushSpaceBelow: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n top.Size() && top.EndEntry();\n top.EndRow();\n top.addRowSpacing('-' + parser.options.mathtools['shortvdotsadjustbelow']);\n },\n PairedDelimiters: function (parser, name, open, close, body, n, pre, post) {\n if (body === void 0) {\n body = '#1';\n }\n if (n === void 0) {\n n = 1;\n }\n if (pre === void 0) {\n pre = '';\n }\n if (post === void 0) {\n post = '';\n }\n var star = parser.GetStar();\n var size = star ? '' : parser.GetBrackets(name);\n var _a = __read(star ? ['\\\\left', '\\\\right'] : size ? [size + 'l', size + 'r'] : ['', ''], 2),\n left = _a[0],\n right = _a[1];\n var delim = star ? '\\\\middle' : size || '';\n if (n) {\n var args = [];\n for (var i = args.length; i < n; i++) {\n args.push(parser.GetArgument(name));\n }\n pre = ParseUtil_js_1.default.substituteArgs(parser, args, pre);\n body = ParseUtil_js_1.default.substituteArgs(parser, args, body);\n post = ParseUtil_js_1.default.substituteArgs(parser, args, post);\n }\n body = body.replace(/\\\\delimsize/g, delim);\n parser.string = [pre, left, open, body, right, close, post, parser.string.substr(parser.i)].reduce(function (s, part) {\n return ParseUtil_js_1.default.addArgs(parser, s, part);\n }, '');\n parser.i = 0;\n ParseUtil_js_1.default.checkMaxMacros(parser);\n },\n DeclarePairedDelimiter: function (parser, name) {\n var cs = NewcommandUtil_js_1.default.GetCsNameArgument(parser, name);\n var open = parser.GetArgument(name);\n var close = parser.GetArgument(name);\n MathtoolsUtil_js_1.MathtoolsUtil.addPairedDelims(parser.configuration, cs, [open, close]);\n },\n DeclarePairedDelimiterX: function (parser, name) {\n var cs = NewcommandUtil_js_1.default.GetCsNameArgument(parser, name);\n var n = NewcommandUtil_js_1.default.GetArgCount(parser, name);\n var open = parser.GetArgument(name);\n var close = parser.GetArgument(name);\n var body = parser.GetArgument(name);\n MathtoolsUtil_js_1.MathtoolsUtil.addPairedDelims(parser.configuration, cs, [open, close, body, n]);\n },\n DeclarePairedDelimiterXPP: function (parser, name) {\n var cs = NewcommandUtil_js_1.default.GetCsNameArgument(parser, name);\n var n = NewcommandUtil_js_1.default.GetArgCount(parser, name);\n var pre = parser.GetArgument(name);\n var open = parser.GetArgument(name);\n var close = parser.GetArgument(name);\n var post = parser.GetArgument(name);\n var body = parser.GetArgument(name);\n MathtoolsUtil_js_1.MathtoolsUtil.addPairedDelims(parser.configuration, cs, [open, close, body, n, pre, post]);\n },\n CenterColon: function (parser, _name, center, force, thin) {\n if (force === void 0) {\n force = false;\n }\n if (thin === void 0) {\n thin = false;\n }\n var options = parser.options.mathtools;\n var mml = parser.create('token', 'mo', {}, ':');\n if (center && (options['centercolon'] || force)) {\n var dy = options['centercolon-offset'];\n mml = parser.create('node', 'mpadded', [mml], __assign({\n voffset: dy,\n height: \"+\".concat(dy),\n depth: \"-\".concat(dy)\n }, thin ? {\n width: options['thincolon-dw'],\n lspace: options['thincolon-dx']\n } : {}));\n }\n parser.Push(mml);\n },\n Relation: function (parser, _name, tex, unicode) {\n var options = parser.options.mathtools;\n if (options['use-unicode'] && unicode) {\n parser.Push(parser.create('token', 'mo', {\n texClass: MmlNode_js_1.TEXCLASS.REL\n }, unicode));\n } else {\n tex = '\\\\mathrel{' + tex.replace(/:/g, '\\\\MTThinColon').replace(/-/g, '\\\\mathrel{-}') + '}';\n parser.string = ParseUtil_js_1.default.addArgs(parser, tex, parser.string.substr(parser.i));\n parser.i = 0;\n }\n },\n NArrow: function (parser, _name, c, dy) {\n parser.Push(parser.create('node', 'TeXAtom', [parser.create('token', 'mtext', {}, c), parser.create('node', 'mpadded', [parser.create('node', 'mpadded', [parser.create('node', 'menclose', [parser.create('node', 'mspace', [], {\n height: '.2em',\n depth: 0,\n width: '.4em'\n })], {\n notation: 'updiagonalstrike',\n 'data-thickness': '.05em',\n 'data-padding': 0\n })], {\n width: 0,\n lspace: '-.5width',\n voffset: dy\n }), parser.create('node', 'mphantom', [parser.create('token', 'mtext', {}, c)])], {\n width: 0,\n lspace: '-.5width'\n })], {\n texClass: MmlNode_js_1.TEXCLASS.REL\n }));\n },\n SplitFrac: function (parser, name, display) {\n var num = parser.ParseArg(name);\n var den = parser.ParseArg(name);\n parser.Push(parser.create('node', 'mstyle', [parser.create('node', 'mfrac', [parser.create('node', 'mstyle', [num, parser.create('token', 'mi'), parser.create('token', 'mspace', {\n width: '1em'\n })], {\n scriptlevel: 0\n }), parser.create('node', 'mstyle', [parser.create('token', 'mspace', {\n width: '1em'\n }), parser.create('token', 'mi'), den], {\n scriptlevel: 0\n })], {\n linethickness: 0,\n numalign: 'left',\n denomalign: 'right'\n })], {\n displaystyle: display,\n scriptlevel: 0\n }));\n },\n XMathStrut: function (parser, name) {\n var dd = parser.GetBrackets(name);\n var dh = parser.GetArgument(name);\n dh = MathtoolsUtil_js_1.MathtoolsUtil.plusOrMinus(name, dh);\n dd = MathtoolsUtil_js_1.MathtoolsUtil.plusOrMinus(name, dd || dh);\n parser.Push(parser.create('node', 'TeXAtom', [parser.create('node', 'mpadded', [parser.create('node', 'mphantom', [parser.create('token', 'mo', {\n stretchy: false\n }, '(')])], {\n width: 0,\n height: dh + 'height',\n depth: dd + 'depth'\n })], {\n texClass: MmlNode_js_1.TEXCLASS.ORD\n }));\n },\n Prescript: function (parser, name) {\n var sup = MathtoolsUtil_js_1.MathtoolsUtil.getScript(parser, name, 'sup');\n var sub = MathtoolsUtil_js_1.MathtoolsUtil.getScript(parser, name, 'sub');\n var base = MathtoolsUtil_js_1.MathtoolsUtil.getScript(parser, name, 'arg');\n if (NodeUtil_js_1.default.isType(sup, 'none') && NodeUtil_js_1.default.isType(sub, 'none')) {\n parser.Push(base);\n return;\n }\n var mml = parser.create('node', 'mmultiscripts', [base]);\n NodeUtil_js_1.default.getChildren(mml).push(null, null);\n NodeUtil_js_1.default.appendChildren(mml, [parser.create('node', 'mprescripts'), sub, sup]);\n mml.setProperty('fixPrescript', true);\n parser.Push(mml);\n },\n NewTagForm: function (parser, name, renew) {\n if (renew === void 0) {\n renew = false;\n }\n var tags = parser.tags;\n if (!('mtFormats' in tags)) {\n throw new TexError_js_1.default('TagsNotMT', '%1 can only be used with ams or mathtools tags', name);\n }\n var id = parser.GetArgument(name).trim();\n if (!id) {\n throw new TexError_js_1.default('InvalidTagFormID', 'Tag form name can\\'t be empty');\n }\n var format = parser.GetBrackets(name, '');\n var left = parser.GetArgument(name);\n var right = parser.GetArgument(name);\n if (!renew && tags.mtFormats.has(id)) {\n throw new TexError_js_1.default('DuplicateTagForm', 'Duplicate tag form: %1', id);\n }\n tags.mtFormats.set(id, [left, right, format]);\n },\n UseTagForm: function (parser, name) {\n var tags = parser.tags;\n if (!('mtFormats' in tags)) {\n throw new TexError_js_1.default('TagsNotMT', '%1 can only be used with ams or mathtools tags', name);\n }\n var id = parser.GetArgument(name).trim();\n if (!id) {\n tags.mtCurrent = null;\n return;\n }\n if (!tags.mtFormats.has(id)) {\n throw new TexError_js_1.default('UndefinedTagForm', 'Undefined tag form: %1', id);\n }\n tags.mtCurrent = tags.mtFormats.get(id);\n },\n SetOptions: function (parser, name) {\n var e_2, _a;\n var options = parser.options.mathtools;\n if (!options['allow-mathtoolsset']) {\n throw new TexError_js_1.default('ForbiddenMathtoolsSet', '%1 is disabled', name);\n }\n var allowed = {};\n Object.keys(options).forEach(function (id) {\n if (id !== 'pariedDelimiters' && id !== 'tagforms' && id !== 'allow-mathtoolsset') {\n allowed[id] = 1;\n }\n });\n var args = parser.GetArgument(name);\n var keys = ParseUtil_js_1.default.keyvalOptions(args, allowed, true);\n try {\n for (var _b = __values(Object.keys(keys)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var id = _c.value;\n options[id] = keys[id];\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n },\n Array: BaseMethods_js_1.default.Array,\n Macro: BaseMethods_js_1.default.Macro,\n xArrow: AmsMethods_js_1.AmsMethods.xArrow,\n HandleRef: AmsMethods_js_1.AmsMethods.HandleRef,\n AmsEqnArray: AmsMethods_js_1.AmsMethods.AmsEqnArray,\n MacroWithTemplate: NewcommandMethods_js_1.default.MacroWithTemplate\n};","map":{"version":3,"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__read","o","m","Symbol","iterator","r","ar","e","next","done","push","value","error","__values","TypeError","__importDefault","mod","__esModule","defineProperty","exports","MathtoolsMethods","ParseUtil_js_1","require","AmsMethods_js_1","BaseMethods_js_1","TexParser_js_1","TexError_js_1","NodeUtil_js_1","MmlNode_js_1","lengths_js_1","Options_js_1","NewcommandUtil_js_1","NewcommandMethods_js_1","MathtoolsUtil_js_1","MtMatrix","parser","begin","open","close","align","GetBrackets","concat","getName","Array","MtSmallMatrix","options","mathtools","default","Em","MtMultlined","_a","name","pos","width","match","Push","item","itemFactory","create","arraydef","displaystyle","rowspacing","columnwidth","setArrayAlign","HandleShove","shove","top","stack","Top","kind","Size","setProperty","shift","mml","ParseArg","mrow","mspace","appendChild","SpreadLines","e_1","env","closing","top_1","Pop","toMml","spread","getProperty","isInferred","_b","getChildren","_c","child","MathtoolsUtil","spreadLines","e_1_1","return","GetDimen","Cases","style","array","columnspacing","columnalign","setProperties","MathLap","cramped","trim","lspace","setDisplayLevel","Cramped","arg","MtLap","content","internalMath","GetArgument","setAttribute","MathMakeBox","lookup","c","MathMBox","UnderOverBracket","thickness","length2em","height","charAt","accent","border","em","base","configuration","copy","script","depth","node","underOver","munderover","getChildAt","Aboxed","checkAlignment","row","rest","string","substr","left","GetUpTo","right","tex","substituteArgs","ArrowBetweenLines","star","GetStar","symbol","EndEntry","EndRow","VDotsWithin","isFlush","table","voffset","ShortVDotsWithin","_name","FlushSpaceAbove","FlushSpaceBelow","addRowSpacing","PairedDelimiters","body","pre","post","size","delim","args","replace","reduce","part","addArgs","checkMaxMacros","DeclarePairedDelimiter","cs","GetCsNameArgument","addPairedDelims","DeclarePairedDelimiterX","GetArgCount","DeclarePairedDelimiterXPP","CenterColon","center","force","thin","dy","Relation","unicode","texClass","TEXCLASS","REL","NArrow","notation","SplitFrac","display","num","den","scriptlevel","linethickness","numalign","denomalign","XMathStrut","dd","dh","plusOrMinus","stretchy","ORD","Prescript","sup","getScript","sub","isType","appendChildren","NewTagForm","renew","tags","id","format","mtFormats","has","set","UseTagForm","mtCurrent","get","SetOptions","e_2","allowed","keys","forEach","keyvalOptions","e_2_1","Macro","xArrow","AmsMethods","HandleRef","AmsEqnArray","MacroWithTemplate"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/mathjax-full/js/input/tex/mathtools/MathtoolsMethods.js"],"sourcesContent":["\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MathtoolsMethods = void 0;\nvar ParseUtil_js_1 = __importDefault(require(\"../ParseUtil.js\"));\nvar AmsMethods_js_1 = require(\"../ams/AmsMethods.js\");\nvar BaseMethods_js_1 = __importDefault(require(\"../base/BaseMethods.js\"));\nvar TexParser_js_1 = __importDefault(require(\"../TexParser.js\"));\nvar TexError_js_1 = __importDefault(require(\"../TexError.js\"));\nvar NodeUtil_js_1 = __importDefault(require(\"../NodeUtil.js\"));\nvar MmlNode_js_1 = require(\"../../../core/MmlTree/MmlNode.js\");\nvar lengths_js_1 = require(\"../../../util/lengths.js\");\nvar Options_js_1 = require(\"../../../util/Options.js\");\nvar NewcommandUtil_js_1 = __importDefault(require(\"../newcommand/NewcommandUtil.js\"));\nvar NewcommandMethods_js_1 = __importDefault(require(\"../newcommand/NewcommandMethods.js\"));\nvar MathtoolsUtil_js_1 = require(\"./MathtoolsUtil.js\");\nexports.MathtoolsMethods = {\n MtMatrix: function (parser, begin, open, close) {\n var align = parser.GetBrackets(\"\\\\begin{\".concat(begin.getName(), \"}\"), 'c');\n return exports.MathtoolsMethods.Array(parser, begin, open, close, align);\n },\n MtSmallMatrix: function (parser, begin, open, close, align) {\n if (!align) {\n align = parser.GetBrackets(\"\\\\begin{\".concat(begin.getName(), \"}\"), parser.options.mathtools['smallmatrix-align']);\n }\n return exports.MathtoolsMethods.Array(parser, begin, open, close, align, ParseUtil_js_1.default.Em(1 / 3), '.2em', 'S', 1);\n },\n MtMultlined: function (parser, begin) {\n var _a;\n var name = \"\\\\begin{\".concat(begin.getName(), \"}\");\n var pos = parser.GetBrackets(name, parser.options.mathtools['multlined-pos'] || 'c');\n var width = pos ? parser.GetBrackets(name, '') : '';\n if (pos && !pos.match(/^[cbt]$/)) {\n _a = __read([pos, width], 2), width = _a[0], pos = _a[1];\n }\n parser.Push(begin);\n var item = parser.itemFactory.create('multlined', parser, begin);\n item.arraydef = {\n displaystyle: true,\n rowspacing: '.5em',\n width: width || 'auto',\n columnwidth: '100%',\n };\n return ParseUtil_js_1.default.setArrayAlign(item, pos || 'c');\n },\n HandleShove: function (parser, name, shove) {\n var top = parser.stack.Top();\n if (top.kind !== 'multline' && top.kind !== 'multlined') {\n throw new TexError_js_1.default('CommandInMultlined', '%1 can only appear within the multline or multlined environments', name);\n }\n if (top.Size()) {\n throw new TexError_js_1.default('CommandAtTheBeginingOfLine', '%1 must come at the beginning of the line', name);\n }\n top.setProperty('shove', shove);\n var shift = parser.GetBrackets(name);\n var mml = parser.ParseArg(name);\n if (shift) {\n var mrow = parser.create('node', 'mrow', []);\n var mspace = parser.create('node', 'mspace', [], { width: shift });\n if (shove === 'left') {\n mrow.appendChild(mspace);\n mrow.appendChild(mml);\n }\n else {\n mrow.appendChild(mml);\n mrow.appendChild(mspace);\n }\n mml = mrow;\n }\n parser.Push(mml);\n },\n SpreadLines: function (parser, begin) {\n var e_1, _a;\n if (parser.stack.env.closing === begin.getName()) {\n delete parser.stack.env.closing;\n var top_1 = parser.stack.Pop();\n var mml = top_1.toMml();\n var spread = top_1.getProperty('spread');\n if (mml.isInferred) {\n try {\n for (var _b = __values(NodeUtil_js_1.default.getChildren(mml)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var child = _c.value;\n MathtoolsUtil_js_1.MathtoolsUtil.spreadLines(child, spread);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n else {\n MathtoolsUtil_js_1.MathtoolsUtil.spreadLines(mml, spread);\n }\n parser.Push(mml);\n }\n else {\n var spread = parser.GetDimen(\"\\\\begin{\".concat(begin.getName(), \"}\"));\n begin.setProperty('spread', spread);\n parser.Push(begin);\n }\n },\n Cases: function (parser, begin, open, close, style) {\n var array = parser.itemFactory.create('array').setProperty('casesEnv', begin.getName());\n array.arraydef = {\n rowspacing: '.2em',\n columnspacing: '1em',\n columnalign: 'left'\n };\n if (style === 'D') {\n array.arraydef.displaystyle = true;\n }\n array.setProperties({ open: open, close: close });\n parser.Push(begin);\n return array;\n },\n MathLap: function (parser, name, pos, cramped) {\n var style = parser.GetBrackets(name, '').trim();\n var mml = parser.create('node', 'mstyle', [\n parser.create('node', 'mpadded', [parser.ParseArg(name)], __assign({ width: 0 }, (pos === 'r' ? {} : { lspace: (pos === 'l' ? '-1width' : '-.5width') })))\n ], { 'data-cramped': cramped });\n MathtoolsUtil_js_1.MathtoolsUtil.setDisplayLevel(mml, style);\n parser.Push(parser.create('node', 'TeXAtom', [mml]));\n },\n Cramped: function (parser, name) {\n var style = parser.GetBrackets(name, '').trim();\n var arg = parser.ParseArg(name);\n var mml = parser.create('node', 'mstyle', [arg], { 'data-cramped': true });\n MathtoolsUtil_js_1.MathtoolsUtil.setDisplayLevel(mml, style);\n parser.Push(mml);\n },\n MtLap: function (parser, name, pos) {\n var content = ParseUtil_js_1.default.internalMath(parser, parser.GetArgument(name), 0);\n var mml = parser.create('node', 'mpadded', content, { width: 0 });\n if (pos !== 'r') {\n NodeUtil_js_1.default.setAttribute(mml, 'lspace', pos === 'l' ? '-1width' : '-.5width');\n }\n parser.Push(mml);\n },\n MathMakeBox: function (parser, name) {\n var width = parser.GetBrackets(name);\n var pos = parser.GetBrackets(name, 'c');\n var mml = parser.create('node', 'mpadded', [parser.ParseArg(name)]);\n if (width) {\n NodeUtil_js_1.default.setAttribute(mml, 'width', width);\n }\n var align = (0, Options_js_1.lookup)(pos, { c: 'center', r: 'right' }, '');\n if (align) {\n NodeUtil_js_1.default.setAttribute(mml, 'data-align', align);\n }\n parser.Push(mml);\n },\n MathMBox: function (parser, name) {\n parser.Push(parser.create('node', 'mrow', [parser.ParseArg(name)]));\n },\n UnderOverBracket: function (parser, name) {\n var thickness = (0, lengths_js_1.length2em)(parser.GetBrackets(name, '.1em'), .1);\n var height = parser.GetBrackets(name, '.2em');\n var arg = parser.GetArgument(name);\n var _a = __read((name.charAt(1) === 'o' ?\n ['over', 'accent', 'bottom'] :\n ['under', 'accentunder', 'top']), 3), pos = _a[0], accent = _a[1], border = _a[2];\n var t = (0, lengths_js_1.em)(thickness);\n var base = new TexParser_js_1.default(arg, parser.stack.env, parser.configuration).mml();\n var copy = new TexParser_js_1.default(arg, parser.stack.env, parser.configuration).mml();\n var script = parser.create('node', 'mpadded', [\n parser.create('node', 'mphantom', [copy])\n ], {\n style: \"border: \".concat(t, \" solid; border-\").concat(border, \": none\"),\n height: height,\n depth: 0\n });\n var node = ParseUtil_js_1.default.underOver(parser, base, script, pos, true);\n var munderover = NodeUtil_js_1.default.getChildAt(NodeUtil_js_1.default.getChildAt(node, 0), 0);\n NodeUtil_js_1.default.setAttribute(munderover, accent, true);\n parser.Push(node);\n },\n Aboxed: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n if (top.row.length % 2 === 1) {\n top.row.push(parser.create('node', 'mtd', []));\n }\n var arg = parser.GetArgument(name);\n var rest = parser.string.substr(parser.i);\n parser.string = arg + '&&\\\\endAboxed';\n parser.i = 0;\n var left = parser.GetUpTo(name, '&');\n var right = parser.GetUpTo(name, '&');\n parser.GetUpTo(name, '\\\\endAboxed');\n var tex = ParseUtil_js_1.default.substituteArgs(parser, [left, right], '\\\\rlap{\\\\boxed{#1{}#2}}\\\\kern.267em\\\\phantom{#1}&\\\\phantom{{}#2}\\\\kern.267em');\n parser.string = tex + rest;\n parser.i = 0;\n },\n ArrowBetweenLines: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n if (top.Size() || top.row.length) {\n throw new TexError_js_1.default('BetweenLines', '%1 must be on a row by itself', name);\n }\n var star = parser.GetStar();\n var symbol = parser.GetBrackets(name, '\\\\Updownarrow');\n if (star) {\n top.EndEntry();\n top.EndEntry();\n }\n var tex = (star ? '\\\\quad' + symbol : symbol + '\\\\quad');\n var mml = new TexParser_js_1.default(tex, parser.stack.env, parser.configuration).mml();\n parser.Push(mml);\n top.EndEntry();\n top.EndRow();\n },\n VDotsWithin: function (parser, name) {\n var top = parser.stack.Top();\n var isFlush = (top.getProperty('flushspaceabove') === top.table.length);\n var arg = '\\\\mmlToken{mi}{}' + parser.GetArgument(name) + '\\\\mmlToken{mi}{}';\n var base = new TexParser_js_1.default(arg, parser.stack.env, parser.configuration).mml();\n var mml = parser.create('node', 'mpadded', [\n parser.create('node', 'mpadded', [\n parser.create('node', 'mo', [\n parser.create('text', '\\u22EE')\n ])\n ], __assign({ width: 0, lspace: '-.5width' }, (isFlush ? { height: '-.6em', voffset: '-.18em' } : {}))),\n parser.create('node', 'mphantom', [base])\n ], {\n lspace: '.5width'\n });\n parser.Push(mml);\n },\n ShortVDotsWithin: function (parser, _name) {\n var top = parser.stack.Top();\n var star = parser.GetStar();\n exports.MathtoolsMethods.FlushSpaceAbove(parser, '\\\\MTFlushSpaceAbove');\n !star && top.EndEntry();\n exports.MathtoolsMethods.VDotsWithin(parser, '\\\\vdotswithin');\n star && top.EndEntry();\n exports.MathtoolsMethods.FlushSpaceBelow(parser, '\\\\MTFlushSpaceBelow');\n },\n FlushSpaceAbove: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n top.setProperty('flushspaceabove', top.table.length);\n top.addRowSpacing('-' + parser.options.mathtools['shortvdotsadjustabove']);\n },\n FlushSpaceBelow: function (parser, name) {\n var top = MathtoolsUtil_js_1.MathtoolsUtil.checkAlignment(parser, name);\n top.Size() && top.EndEntry();\n top.EndRow();\n top.addRowSpacing('-' + parser.options.mathtools['shortvdotsadjustbelow']);\n },\n PairedDelimiters: function (parser, name, open, close, body, n, pre, post) {\n if (body === void 0) { body = '#1'; }\n if (n === void 0) { n = 1; }\n if (pre === void 0) { pre = ''; }\n if (post === void 0) { post = ''; }\n var star = parser.GetStar();\n var size = (star ? '' : parser.GetBrackets(name));\n var _a = __read((star ? ['\\\\left', '\\\\right'] : size ? [size + 'l', size + 'r'] : ['', '']), 2), left = _a[0], right = _a[1];\n var delim = (star ? '\\\\middle' : size || '');\n if (n) {\n var args = [];\n for (var i = args.length; i < n; i++) {\n args.push(parser.GetArgument(name));\n }\n pre = ParseUtil_js_1.default.substituteArgs(parser, args, pre);\n body = ParseUtil_js_1.default.substituteArgs(parser, args, body);\n post = ParseUtil_js_1.default.substituteArgs(parser, args, post);\n }\n body = body.replace(/\\\\delimsize/g, delim);\n parser.string = [pre, left, open, body, right, close, post, parser.string.substr(parser.i)]\n .reduce(function (s, part) { return ParseUtil_js_1.default.addArgs(parser, s, part); }, '');\n parser.i = 0;\n ParseUtil_js_1.default.checkMaxMacros(parser);\n },\n DeclarePairedDelimiter: function (parser, name) {\n var cs = NewcommandUtil_js_1.default.GetCsNameArgument(parser, name);\n var open = parser.GetArgument(name);\n var close = parser.GetArgument(name);\n MathtoolsUtil_js_1.MathtoolsUtil.addPairedDelims(parser.configuration, cs, [open, close]);\n },\n DeclarePairedDelimiterX: function (parser, name) {\n var cs = NewcommandUtil_js_1.default.GetCsNameArgument(parser, name);\n var n = NewcommandUtil_js_1.default.GetArgCount(parser, name);\n var open = parser.GetArgument(name);\n var close = parser.GetArgument(name);\n var body = parser.GetArgument(name);\n MathtoolsUtil_js_1.MathtoolsUtil.addPairedDelims(parser.configuration, cs, [open, close, body, n]);\n },\n DeclarePairedDelimiterXPP: function (parser, name) {\n var cs = NewcommandUtil_js_1.default.GetCsNameArgument(parser, name);\n var n = NewcommandUtil_js_1.default.GetArgCount(parser, name);\n var pre = parser.GetArgument(name);\n var open = parser.GetArgument(name);\n var close = parser.GetArgument(name);\n var post = parser.GetArgument(name);\n var body = parser.GetArgument(name);\n MathtoolsUtil_js_1.MathtoolsUtil.addPairedDelims(parser.configuration, cs, [open, close, body, n, pre, post]);\n },\n CenterColon: function (parser, _name, center, force, thin) {\n if (force === void 0) { force = false; }\n if (thin === void 0) { thin = false; }\n var options = parser.options.mathtools;\n var mml = parser.create('token', 'mo', {}, ':');\n if (center && (options['centercolon'] || force)) {\n var dy = options['centercolon-offset'];\n mml = parser.create('node', 'mpadded', [mml], __assign({ voffset: dy, height: \"+\".concat(dy), depth: \"-\".concat(dy) }, (thin ? { width: options['thincolon-dw'], lspace: options['thincolon-dx'] } : {})));\n }\n parser.Push(mml);\n },\n Relation: function (parser, _name, tex, unicode) {\n var options = parser.options.mathtools;\n if (options['use-unicode'] && unicode) {\n parser.Push(parser.create('token', 'mo', { texClass: MmlNode_js_1.TEXCLASS.REL }, unicode));\n }\n else {\n tex = '\\\\mathrel{' + tex.replace(/:/g, '\\\\MTThinColon').replace(/-/g, '\\\\mathrel{-}') + '}';\n parser.string = ParseUtil_js_1.default.addArgs(parser, tex, parser.string.substr(parser.i));\n parser.i = 0;\n }\n },\n NArrow: function (parser, _name, c, dy) {\n parser.Push(parser.create('node', 'TeXAtom', [\n parser.create('token', 'mtext', {}, c),\n parser.create('node', 'mpadded', [\n parser.create('node', 'mpadded', [\n parser.create('node', 'menclose', [\n parser.create('node', 'mspace', [], { height: '.2em', depth: 0, width: '.4em' })\n ], { notation: 'updiagonalstrike', 'data-thickness': '.05em', 'data-padding': 0 })\n ], { width: 0, lspace: '-.5width', voffset: dy }),\n parser.create('node', 'mphantom', [\n parser.create('token', 'mtext', {}, c)\n ])\n ], { width: 0, lspace: '-.5width' })\n ], { texClass: MmlNode_js_1.TEXCLASS.REL }));\n },\n SplitFrac: function (parser, name, display) {\n var num = parser.ParseArg(name);\n var den = parser.ParseArg(name);\n parser.Push(parser.create('node', 'mstyle', [\n parser.create('node', 'mfrac', [\n parser.create('node', 'mstyle', [\n num,\n parser.create('token', 'mi'),\n parser.create('token', 'mspace', { width: '1em' })\n ], { scriptlevel: 0 }),\n parser.create('node', 'mstyle', [\n parser.create('token', 'mspace', { width: '1em' }),\n parser.create('token', 'mi'),\n den\n ], { scriptlevel: 0 })\n ], { linethickness: 0, numalign: 'left', denomalign: 'right' })\n ], { displaystyle: display, scriptlevel: 0 }));\n },\n XMathStrut: function (parser, name) {\n var dd = parser.GetBrackets(name);\n var dh = parser.GetArgument(name);\n dh = MathtoolsUtil_js_1.MathtoolsUtil.plusOrMinus(name, dh);\n dd = MathtoolsUtil_js_1.MathtoolsUtil.plusOrMinus(name, dd || dh);\n parser.Push(parser.create('node', 'TeXAtom', [\n parser.create('node', 'mpadded', [\n parser.create('node', 'mphantom', [\n parser.create('token', 'mo', { stretchy: false }, '(')\n ])\n ], { width: 0, height: dh + 'height', depth: dd + 'depth' })\n ], { texClass: MmlNode_js_1.TEXCLASS.ORD }));\n },\n Prescript: function (parser, name) {\n var sup = MathtoolsUtil_js_1.MathtoolsUtil.getScript(parser, name, 'sup');\n var sub = MathtoolsUtil_js_1.MathtoolsUtil.getScript(parser, name, 'sub');\n var base = MathtoolsUtil_js_1.MathtoolsUtil.getScript(parser, name, 'arg');\n if (NodeUtil_js_1.default.isType(sup, 'none') && NodeUtil_js_1.default.isType(sub, 'none')) {\n parser.Push(base);\n return;\n }\n var mml = parser.create('node', 'mmultiscripts', [base]);\n NodeUtil_js_1.default.getChildren(mml).push(null, null);\n NodeUtil_js_1.default.appendChildren(mml, [parser.create('node', 'mprescripts'), sub, sup]);\n mml.setProperty('fixPrescript', true);\n parser.Push(mml);\n },\n NewTagForm: function (parser, name, renew) {\n if (renew === void 0) { renew = false; }\n var tags = parser.tags;\n if (!('mtFormats' in tags)) {\n throw new TexError_js_1.default('TagsNotMT', '%1 can only be used with ams or mathtools tags', name);\n }\n var id = parser.GetArgument(name).trim();\n if (!id) {\n throw new TexError_js_1.default('InvalidTagFormID', 'Tag form name can\\'t be empty');\n }\n var format = parser.GetBrackets(name, '');\n var left = parser.GetArgument(name);\n var right = parser.GetArgument(name);\n if (!renew && tags.mtFormats.has(id)) {\n throw new TexError_js_1.default('DuplicateTagForm', 'Duplicate tag form: %1', id);\n }\n tags.mtFormats.set(id, [left, right, format]);\n },\n UseTagForm: function (parser, name) {\n var tags = parser.tags;\n if (!('mtFormats' in tags)) {\n throw new TexError_js_1.default('TagsNotMT', '%1 can only be used with ams or mathtools tags', name);\n }\n var id = parser.GetArgument(name).trim();\n if (!id) {\n tags.mtCurrent = null;\n return;\n }\n if (!tags.mtFormats.has(id)) {\n throw new TexError_js_1.default('UndefinedTagForm', 'Undefined tag form: %1', id);\n }\n tags.mtCurrent = tags.mtFormats.get(id);\n },\n SetOptions: function (parser, name) {\n var e_2, _a;\n var options = parser.options.mathtools;\n if (!options['allow-mathtoolsset']) {\n throw new TexError_js_1.default('ForbiddenMathtoolsSet', '%1 is disabled', name);\n }\n var allowed = {};\n Object.keys(options).forEach(function (id) {\n if (id !== 'pariedDelimiters' && id !== 'tagforms' && id !== 'allow-mathtoolsset') {\n allowed[id] = 1;\n }\n });\n var args = parser.GetArgument(name);\n var keys = ParseUtil_js_1.default.keyvalOptions(args, allowed, true);\n try {\n for (var _b = __values(Object.keys(keys)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var id = _c.value;\n options[id] = keys[id];\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_2) throw e_2.error; }\n }\n },\n Array: BaseMethods_js_1.default.Array,\n Macro: BaseMethods_js_1.default.Macro,\n xArrow: AmsMethods_js_1.AmsMethods.xArrow,\n HandleRef: AmsMethods_js_1.AmsMethods.HandleRef,\n AmsEqnArray: AmsMethods_js_1.AmsMethods.AmsEqnArray,\n MacroWithTemplate: NewcommandMethods_js_1.default.MacroWithTemplate,\n};\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}