UNPKG

react-native-mathjax-html-to-svg

Version:

React Native component to display mathematics in html using MathJax. Uses [MathJax](https://github.com/mathjax/)

105 lines (104 loc) 3.89 kB
"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 (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.MmlMaction = void 0; var MmlNode_js_1 = require("../MmlNode.js"); var MmlMaction = (function (_super) { __extends(MmlMaction, _super); function MmlMaction() { return _super !== null && _super.apply(this, arguments) || this; } Object.defineProperty(MmlMaction.prototype, "kind", { get: function () { return 'maction'; }, enumerable: false, configurable: true }); Object.defineProperty(MmlMaction.prototype, "arity", { get: function () { return 1; }, enumerable: false, configurable: true }); Object.defineProperty(MmlMaction.prototype, "selected", { get: function () { var selection = this.attributes.get('selection'); var i = Math.max(1, Math.min(this.childNodes.length, selection)) - 1; return this.childNodes[i] || this.factory.create('mrow'); }, enumerable: false, configurable: true }); Object.defineProperty(MmlMaction.prototype, "isEmbellished", { get: function () { return this.selected.isEmbellished; }, enumerable: false, configurable: true }); Object.defineProperty(MmlMaction.prototype, "isSpacelike", { get: function () { return this.selected.isSpacelike; }, enumerable: false, configurable: true }); MmlMaction.prototype.core = function () { return this.selected.core(); }; MmlMaction.prototype.coreMO = function () { return this.selected.coreMO(); }; MmlMaction.prototype.verifyAttributes = function (options) { _super.prototype.verifyAttributes.call(this, options); if (this.attributes.get('actiontype') !== 'toggle' && this.attributes.getExplicit('selection') !== undefined) { var attributes = this.attributes.getAllAttributes(); delete attributes.selection; } }; MmlMaction.prototype.setTeXclass = function (prev) { if (this.attributes.get('actiontype') === 'tooltip' && this.childNodes[1]) { this.childNodes[1].setTeXclass(null); } var selected = this.selected; prev = selected.setTeXclass(prev); this.updateTeXclass(selected); return prev; }; MmlMaction.prototype.nextToggleSelection = function () { var selection = Math.max(1, this.attributes.get('selection') + 1); if (selection > this.childNodes.length) { selection = 1; } this.attributes.set('selection', selection); }; MmlMaction.defaults = __assign(__assign({}, MmlNode_js_1.AbstractMmlNode.defaults), { actiontype: 'toggle', selection: 1 }); return MmlMaction; }(MmlNode_js_1.AbstractMmlNode)); exports.MmlMaction = MmlMaction;