"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; var __values = (this && this.__values) || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: function () { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; } }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.BaseConfiguration = exports.BaseTags = exports.Other = void 0; var Configuration_js_1 = require("../Configuration.js"); var MapHandler_js_1 = require("../MapHandler.js"); var TexError_js_1 = __importDefault(require("../TexError.js")); var NodeUtil_js_1 = __importDefault(require("../NodeUtil.js")); var SymbolMap_js_1 = require("../SymbolMap.js"); var bitem = __importStar(require("./BaseItems.js")); var Tags_js_1 = require("../Tags.js"); require("./BaseMappings.js"); var OperatorDictionary_js_1 = require("../../../core/MmlTree/OperatorDictionary.js"); new SymbolMap_js_1.CharacterMap('remap', null, { '-': '\u2212', '*': '\u2217', '`': '\u2018' }); function Other(parser, char) { var font = parser.stack.env['font']; var def = font ? { mathvariant: parser.stack.env['font'] } : {}; var remap = MapHandler_js_1.MapHandler.getMap('remap').lookup(char); var range = (0, OperatorDictionary_js_1.getRange)(char); var type = (range ? range[3] : 'mo'); var mo = parser.create('token', type, def, (remap ? remap.char : char)); range[4] && mo.attributes.set('mathvariant', range[4]); if (type === 'mo') { NodeUtil_js_1.default.setProperty(mo, 'fixStretchy', true); parser.configuration.addNode('fixStretchy', mo); } parser.Push(mo); } exports.Other = Other; function csUndefined(_parser, name) { throw new TexError_js_1.default('UndefinedControlSequence', 'Undefined control sequence %1', '\\' + name); } function envUndefined(_parser, env) { throw new TexError_js_1.default('UnknownEnv', 'Unknown environment \'%1\'', env); } function filterNonscript(_a) { var e_1, _b; var data = _a.data; try { for (var _c = __values(data.getList('nonscript')), _d = _c.next(); !_d.done; _d = _c.next()) { var mml = _d.value; if (mml.attributes.get('scriptlevel') > 0) { var parent_1 = mml.parent; parent_1.childNodes.splice(parent_1.childIndex(mml), 1); data.removeFromList(mml.kind, [mml]); if (mml.isKind('mrow')) { var mstyle = mml.childNodes[0]; data.removeFromList('mstyle', [mstyle]); data.removeFromList('mspace', mstyle.childNodes[0].childNodes); } } else if (mml.isKind('mrow')) { mml.parent.replaceChild(mml.childNodes[0], mml); data.removeFromList('mrow', [mml]); } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_d && !_d.done && (_b = _c.return)) _b.call(_c); } finally { if (e_1) throw e_1.error; } } } var BaseTags = (function (_super) { __extends(BaseTags, _super); function BaseTags() { return _super !== null && _super.apply(this, arguments) || this; } return BaseTags; }(Tags_js_1.AbstractTags)); exports.BaseTags = BaseTags; exports.BaseConfiguration = Configuration_js_1.Configuration.create('base', { handler: { character: ['command', 'special', 'letter', 'digit'], delimiter: ['delimiter'], macro: ['delimiter', 'macros', 'mathchar0mi', 'mathchar0mo', 'mathchar7'], environment: ['environment'] }, fallback: { character: Other, macro: csUndefined, environment: envUndefined }, items: (_a = {}, _a[bitem.StartItem.prototype.kind] = bitem.StartItem, _a[bitem.StopItem.prototype.kind] = bitem.StopItem, _a[bitem.OpenItem.prototype.kind] = bitem.OpenItem, _a[bitem.CloseItem.prototype.kind] = bitem.CloseItem, _a[bitem.PrimeItem.prototype.kind] = bitem.PrimeItem, _a[bitem.SubsupItem.prototype.kind] = bitem.SubsupItem, _a[bitem.OverItem.prototype.kind] = bitem.OverItem, _a[bitem.LeftItem.prototype.kind] = bitem.LeftItem, _a[bitem.Middle.prototype.kind] = bitem.Middle, _a[bitem.RightItem.prototype.kind] = bitem.RightItem, _a[bitem.BeginItem.prototype.kind] = bitem.BeginItem, _a[bitem.EndItem.prototype.kind] = bitem.EndItem, _a[bitem.StyleItem.prototype.kind] = bitem.StyleItem, _a[bitem.PositionItem.prototype.kind] = bitem.PositionItem, _a[bitem.CellItem.prototype.kind] = bitem.CellItem, _a[bitem.MmlItem.prototype.kind] = bitem.MmlItem, _a[bitem.FnItem.prototype.kind] = bitem.FnItem, _a[bitem.NotItem.prototype.kind] = bitem.NotItem, _a[bitem.NonscriptItem.prototype.kind] = bitem.NonscriptItem, _a[bitem.DotsItem.prototype.kind] = bitem.DotsItem, _a[bitem.ArrayItem.prototype.kind] = bitem.ArrayItem, _a[bitem.EqnArrayItem.prototype.kind] = bitem.EqnArrayItem, _a[bitem.EquationItem.prototype.kind] = bitem.EquationItem, _a), options: { maxMacros: 1000, baseURL: (typeof (document) === 'undefined' || document.getElementsByTagName('base').length === 0) ? '' : String(document.location).replace(/#.*$/, '') }, tags: { base: BaseTags }, postprocessors: [[filterNonscript, -4]] }); //# sourceMappingURL=BaseConfiguration.js.map