bf56d1a5e23b7f8792c7edd8cde3008f9d04a1517ec8cb390ec4ee43ba7618a4.json 70 KB

1
  1. {"ast":null,"code":"\"use strict\";\n\nvar __extends = this && this.__extends || function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf || {\n __proto__: []\n } instanceof Array && function (d, b) {\n d.__proto__ = b;\n } || function (d, b) {\n for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];\n };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null) throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() {\n this.constructor = d;\n }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\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 __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};\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CHTMLmtable = void 0;\nvar Wrapper_js_1 = require(\"../Wrapper.js\");\nvar mtable_js_1 = require(\"../../common/Wrappers/mtable.js\");\nvar mtable_js_2 = require(\"../../../core/MmlTree/MmlNodes/mtable.js\");\nvar string_js_1 = require(\"../../../util/string.js\");\nvar CHTMLmtable = function (_super) {\n __extends(CHTMLmtable, _super);\n function CHTMLmtable(factory, node, parent) {\n if (parent === void 0) {\n parent = null;\n }\n var _this = _super.call(this, factory, node, parent) || this;\n _this.itable = _this.html('mjx-itable');\n _this.labels = _this.html('mjx-itable');\n return _this;\n }\n CHTMLmtable.prototype.getAlignShift = function () {\n var data = _super.prototype.getAlignShift.call(this);\n if (!this.isTop) {\n data[1] = 0;\n }\n return data;\n };\n CHTMLmtable.prototype.toCHTML = function (parent) {\n var e_1, _a;\n var chtml = this.standardCHTMLnode(parent);\n this.adaptor.append(chtml, this.html('mjx-table', {}, [this.itable]));\n try {\n for (var _b = __values(this.childNodes), _c = _b.next(); !_c.done; _c = _b.next()) {\n var child = _c.value;\n child.toCHTML(this.itable);\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 this.padRows();\n this.handleColumnSpacing();\n this.handleColumnLines();\n this.handleColumnWidths();\n this.handleRowSpacing();\n this.handleRowLines();\n this.handleRowHeights();\n this.handleFrame();\n this.handleWidth();\n this.handleLabels();\n this.handleAlign();\n this.handleJustify();\n this.shiftColor();\n };\n CHTMLmtable.prototype.shiftColor = function () {\n var adaptor = this.adaptor;\n var color = adaptor.getStyle(this.chtml, 'backgroundColor');\n if (color) {\n adaptor.setStyle(this.chtml, 'backgroundColor', '');\n adaptor.setStyle(this.itable, 'backgroundColor', color);\n }\n };\n CHTMLmtable.prototype.padRows = function () {\n var e_2, _a;\n var adaptor = this.adaptor;\n try {\n for (var _b = __values(adaptor.childNodes(this.itable)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var row = _c.value;\n while (adaptor.childNodes(row).length < this.numCols) {\n adaptor.append(row, this.html('mjx-mtd', {\n 'extra': true\n }));\n }\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 CHTMLmtable.prototype.handleColumnSpacing = function () {\n var e_3, _a, e_4, _b;\n var scale = this.childNodes[0] ? 1 / this.childNodes[0].getBBox().rscale : 1;\n var spacing = this.getEmHalfSpacing(this.fSpace[0], this.cSpace, scale);\n var frame = this.frame;\n try {\n for (var _c = __values(this.tableRows), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var i = 0;\n try {\n for (var _e = (e_4 = void 0, __values(row.tableCells)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n var lspace = spacing[i++];\n var rspace = spacing[i];\n var styleNode = cell ? cell.chtml : this.adaptor.childNodes(row.chtml)[i];\n if (i > 1 && lspace !== '0.4em' || frame && i === 1) {\n this.adaptor.setStyle(styleNode, 'paddingLeft', lspace);\n }\n if (i < this.numCols && rspace !== '0.4em' || frame && i === this.numCols) {\n this.adaptor.setStyle(styleNode, 'paddingRight', rspace);\n }\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n };\n CHTMLmtable.prototype.handleColumnLines = function () {\n var e_5, _a, e_6, _b;\n if (this.node.attributes.get('columnlines') === 'none') return;\n var lines = this.getColumnAttributes('columnlines');\n try {\n for (var _c = __values(this.childNodes), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var i = 0;\n try {\n for (var _e = (e_6 = void 0, __values(this.adaptor.childNodes(row.chtml).slice(1))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n var line = lines[i++];\n if (line === 'none') continue;\n this.adaptor.setStyle(cell, 'borderLeft', '.07em ' + line);\n }\n } catch (e_6_1) {\n e_6 = {\n error: e_6_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n } finally {\n if (e_6) throw e_6.error;\n }\n }\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n };\n CHTMLmtable.prototype.handleColumnWidths = function () {\n var e_7, _a, e_8, _b;\n try {\n for (var _c = __values(this.childNodes), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var i = 0;\n try {\n for (var _e = (e_8 = void 0, __values(this.adaptor.childNodes(row.chtml))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n var w = this.cWidths[i++];\n if (w !== null) {\n var width = typeof w === 'number' ? this.em(w) : w;\n this.adaptor.setStyle(cell, 'width', width);\n this.adaptor.setStyle(cell, 'maxWidth', width);\n this.adaptor.setStyle(cell, 'minWidth', width);\n }\n }\n } catch (e_8_1) {\n e_8 = {\n error: e_8_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n } finally {\n if (e_8) throw e_8.error;\n }\n }\n }\n } catch (e_7_1) {\n e_7 = {\n error: e_7_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_7) throw e_7.error;\n }\n }\n };\n CHTMLmtable.prototype.handleRowSpacing = function () {\n var e_9, _a, e_10, _b;\n var scale = this.childNodes[0] ? 1 / this.childNodes[0].getBBox().rscale : 1;\n var spacing = this.getEmHalfSpacing(this.fSpace[1], this.rSpace, scale);\n var frame = this.frame;\n var i = 0;\n try {\n for (var _c = __values(this.childNodes), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var tspace = spacing[i++];\n var bspace = spacing[i];\n try {\n for (var _e = (e_10 = void 0, __values(row.childNodes)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n if (i > 1 && tspace !== '0.215em' || frame && i === 1) {\n this.adaptor.setStyle(cell.chtml, 'paddingTop', tspace);\n }\n if (i < this.numRows && bspace !== '0.215em' || frame && i === this.numRows) {\n this.adaptor.setStyle(cell.chtml, 'paddingBottom', bspace);\n }\n }\n } catch (e_10_1) {\n e_10 = {\n error: e_10_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n } finally {\n if (e_10) throw e_10.error;\n }\n }\n }\n } catch (e_9_1) {\n e_9 = {\n error: e_9_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_9) throw e_9.error;\n }\n }\n };\n CHTMLmtable.prototype.handleRowLines = function () {\n var e_11, _a, e_12, _b;\n if (this.node.attributes.get('rowlines') === 'none') return;\n var lines = this.getRowAttributes('rowlines');\n var i = 0;\n try {\n for (var _c = __values(this.childNodes.slice(1)), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var line = lines[i++];\n if (line === 'none') continue;\n try {\n for (var _e = (e_12 = void 0, __values(this.adaptor.childNodes(row.chtml))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n this.adaptor.setStyle(cell, 'borderTop', '.07em ' + line);\n }\n } catch (e_12_1) {\n e_12 = {\n error: e_12_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n } finally {\n if (e_12) throw e_12.error;\n }\n }\n }\n } catch (e_11_1) {\n e_11 = {\n error: e_11_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_11) throw e_11.error;\n }\n }\n };\n CHTMLmtable.prototype.handleRowHeights = function () {\n if (this.node.attributes.get('equalrows')) {\n this.handleEqualRows();\n }\n };\n CHTMLmtable.prototype.handleEqualRows = function () {\n var space = this.getRowHalfSpacing();\n var _a = this.getTableData(),\n H = _a.H,\n D = _a.D,\n NH = _a.NH,\n ND = _a.ND;\n var HD = this.getEqualRowHeight();\n for (var i = 0; i < this.numRows; i++) {\n var row = this.childNodes[i];\n this.setRowHeight(row, HD + space[i] + space[i + 1] + this.rLines[i]);\n if (HD !== NH[i] + ND[i]) {\n this.setRowBaseline(row, HD, (HD - H[i] + D[i]) / 2);\n }\n }\n };\n CHTMLmtable.prototype.setRowHeight = function (row, HD) {\n this.adaptor.setStyle(row.chtml, 'height', this.em(HD));\n };\n CHTMLmtable.prototype.setRowBaseline = function (row, HD, D) {\n var e_13, _a;\n var ralign = row.node.attributes.get('rowalign');\n try {\n for (var _b = __values(row.childNodes), _c = _b.next(); !_c.done; _c = _b.next()) {\n var cell = _c.value;\n if (this.setCellBaseline(cell, ralign, HD, D)) break;\n }\n } catch (e_13_1) {\n e_13 = {\n error: e_13_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_13) throw e_13.error;\n }\n }\n };\n CHTMLmtable.prototype.setCellBaseline = function (cell, ralign, HD, D) {\n var calign = cell.node.attributes.get('rowalign');\n if (calign === 'baseline' || calign === 'axis') {\n var adaptor = this.adaptor;\n var child = adaptor.lastChild(cell.chtml);\n adaptor.setStyle(child, 'height', this.em(HD));\n adaptor.setStyle(child, 'verticalAlign', this.em(-D));\n var row = cell.parent;\n if ((!row.node.isKind('mlabeledtr') || cell !== row.childNodes[0]) && (ralign === 'baseline' || ralign === 'axis')) {\n return true;\n }\n }\n return false;\n };\n CHTMLmtable.prototype.handleFrame = function () {\n if (this.frame && this.fLine) {\n this.adaptor.setStyle(this.itable, 'border', '.07em ' + this.node.attributes.get('frame'));\n }\n };\n CHTMLmtable.prototype.handleWidth = function () {\n var adaptor = this.adaptor;\n var _a = this.getBBox(),\n w = _a.w,\n L = _a.L,\n R = _a.R;\n adaptor.setStyle(this.chtml, 'minWidth', this.em(L + w + R));\n var W = this.node.attributes.get('width');\n if ((0, string_js_1.isPercent)(W)) {\n adaptor.setStyle(this.chtml, 'width', '');\n adaptor.setAttribute(this.chtml, 'width', 'full');\n } else if (!this.hasLabels) {\n if (W === 'auto') return;\n W = this.em(this.length2em(W) + 2 * this.fLine);\n }\n var table = adaptor.firstChild(this.chtml);\n adaptor.setStyle(table, 'width', W);\n adaptor.setStyle(table, 'minWidth', this.em(w));\n if (L || R) {\n adaptor.setStyle(this.chtml, 'margin', '');\n var style = this.node.attributes.get('data-width-includes-label') ? 'padding' : 'margin';\n if (L === R) {\n adaptor.setStyle(table, style, '0 ' + this.em(R));\n } else {\n adaptor.setStyle(table, style, '0 ' + this.em(R) + ' 0 ' + this.em(L));\n }\n }\n adaptor.setAttribute(this.itable, 'width', 'full');\n };\n CHTMLmtable.prototype.handleAlign = function () {\n var _a = __read(this.getAlignmentRow(), 2),\n align = _a[0],\n row = _a[1];\n if (row === null) {\n if (align !== 'axis') {\n this.adaptor.setAttribute(this.chtml, 'align', align);\n }\n } else {\n var y = this.getVerticalPosition(row, align);\n this.adaptor.setAttribute(this.chtml, 'align', 'top');\n this.adaptor.setStyle(this.chtml, 'verticalAlign', this.em(y));\n }\n };\n CHTMLmtable.prototype.handleJustify = function () {\n var align = this.getAlignShift()[0];\n if (align !== 'center') {\n this.adaptor.setAttribute(this.chtml, 'justify', align);\n }\n };\n CHTMLmtable.prototype.handleLabels = function () {\n if (!this.hasLabels) return;\n var labels = this.labels;\n var attributes = this.node.attributes;\n var adaptor = this.adaptor;\n var side = attributes.get('side');\n adaptor.setAttribute(this.chtml, 'side', side);\n adaptor.setAttribute(labels, 'align', side);\n adaptor.setStyle(labels, side, '0');\n var _a = __read(this.addLabelPadding(side), 2),\n align = _a[0],\n shift = _a[1];\n if (shift) {\n var table = adaptor.firstChild(this.chtml);\n this.setIndent(table, align, shift);\n }\n this.updateRowHeights();\n this.addLabelSpacing();\n };\n CHTMLmtable.prototype.addLabelPadding = function (side) {\n var _a = __read(this.getPadAlignShift(side), 3),\n align = _a[1],\n shift = _a[2];\n var styles = {};\n if (side === 'right' && !this.node.attributes.get('data-width-includes-label')) {\n var W = this.node.attributes.get('width');\n var _b = this.getBBox(),\n w = _b.w,\n L = _b.L,\n R = _b.R;\n styles.style = {\n width: (0, string_js_1.isPercent)(W) ? 'calc(' + W + ' + ' + this.em(L + R) + ')' : this.em(L + w + R)\n };\n }\n this.adaptor.append(this.chtml, this.html('mjx-labels', styles, [this.labels]));\n return [align, shift];\n };\n CHTMLmtable.prototype.updateRowHeights = function () {\n var _a = this.getTableData(),\n H = _a.H,\n D = _a.D,\n NH = _a.NH,\n ND = _a.ND;\n var space = this.getRowHalfSpacing();\n for (var i = 0; i < this.numRows; i++) {\n var row = this.childNodes[i];\n this.setRowHeight(row, H[i] + D[i] + space[i] + space[i + 1] + this.rLines[i]);\n if (H[i] !== NH[i] || D[i] !== ND[i]) {\n this.setRowBaseline(row, H[i] + D[i], D[i]);\n } else if (row.node.isKind('mlabeledtr')) {\n this.setCellBaseline(row.childNodes[0], '', H[i] + D[i], D[i]);\n }\n }\n };\n CHTMLmtable.prototype.addLabelSpacing = function () {\n var adaptor = this.adaptor;\n var equal = this.node.attributes.get('equalrows');\n var _a = this.getTableData(),\n H = _a.H,\n D = _a.D;\n var HD = equal ? this.getEqualRowHeight() : 0;\n var space = this.getRowHalfSpacing();\n var h = this.fLine;\n var current = adaptor.firstChild(this.labels);\n for (var i = 0; i < this.numRows; i++) {\n var row = this.childNodes[i];\n if (row.node.isKind('mlabeledtr')) {\n h && adaptor.insert(this.html('mjx-mtr', {\n style: {\n height: this.em(h)\n }\n }), current);\n adaptor.setStyle(current, 'height', this.em((equal ? HD : H[i] + D[i]) + space[i] + space[i + 1]));\n current = adaptor.next(current);\n h = this.rLines[i];\n } else {\n h += space[i] + (equal ? HD : H[i] + D[i]) + space[i + 1] + this.rLines[i];\n }\n }\n };\n CHTMLmtable.kind = mtable_js_2.MmlMtable.prototype.kind;\n CHTMLmtable.styles = {\n 'mjx-mtable': {\n 'vertical-align': '.25em',\n 'text-align': 'center',\n 'position': 'relative',\n 'box-sizing': 'border-box',\n 'border-spacing': 0,\n 'border-collapse': 'collapse'\n },\n 'mjx-mstyle[size=\"s\"] mjx-mtable': {\n 'vertical-align': '.354em'\n },\n 'mjx-labels': {\n position: 'absolute',\n left: 0,\n top: 0\n },\n 'mjx-table': {\n 'display': 'inline-block',\n 'vertical-align': '-.5ex',\n 'box-sizing': 'border-box'\n },\n 'mjx-table > mjx-itable': {\n 'vertical-align': 'middle',\n 'text-align': 'left',\n 'box-sizing': 'border-box'\n },\n 'mjx-labels > mjx-itable': {\n position: 'absolute',\n top: 0\n },\n 'mjx-mtable[justify=\"left\"]': {\n 'text-align': 'left'\n },\n 'mjx-mtable[justify=\"right\"]': {\n 'text-align': 'right'\n },\n 'mjx-mtable[justify=\"left\"][side=\"left\"]': {\n 'padding-right': '0 ! important'\n },\n 'mjx-mtable[justify=\"left\"][side=\"right\"]': {\n 'padding-left': '0 ! important'\n },\n 'mjx-mtable[justify=\"right\"][side=\"left\"]': {\n 'padding-right': '0 ! important'\n },\n 'mjx-mtable[justify=\"right\"][side=\"right\"]': {\n 'padding-left': '0 ! important'\n },\n 'mjx-mtable[align]': {\n 'vertical-align': 'baseline'\n },\n 'mjx-mtable[align=\"top\"] > mjx-table': {\n 'vertical-align': 'top'\n },\n 'mjx-mtable[align=\"bottom\"] > mjx-table': {\n 'vertical-align': 'bottom'\n },\n 'mjx-mtable[side=\"right\"] mjx-labels': {\n 'min-width': '100%'\n }\n };\n return CHTMLmtable;\n}((0, mtable_js_1.CommonMtableMixin)(Wrapper_js_1.CHTMLWrapper));\nexports.CHTMLmtable = CHTMLmtable;","map":{"version":3,"names":["__extends","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","TypeError","String","__","constructor","create","__values","o","s","Symbol","iterator","m","i","length","next","value","done","__read","n","r","ar","e","push","error","defineProperty","exports","CHTMLmtable","Wrapper_js_1","require","mtable_js_1","mtable_js_2","string_js_1","_super","factory","node","parent","_this","itable","html","labels","getAlignShift","data","isTop","toCHTML","e_1","_a","chtml","standardCHTMLnode","adaptor","append","_b","childNodes","_c","child","e_1_1","return","padRows","handleColumnSpacing","handleColumnLines","handleColumnWidths","handleRowSpacing","handleRowLines","handleRowHeights","handleFrame","handleWidth","handleLabels","handleAlign","handleJustify","shiftColor","color","getStyle","setStyle","e_2","row","numCols","e_2_1","e_3","e_4","scale","getBBox","rscale","spacing","getEmHalfSpacing","fSpace","cSpace","frame","tableRows","_d","_e","tableCells","_f","cell","lspace","rspace","styleNode","e_4_1","e_3_1","e_5","e_6","attributes","get","lines","getColumnAttributes","slice","line","e_6_1","e_5_1","e_7","e_8","w","cWidths","width","em","e_8_1","e_7_1","e_9","e_10","rSpace","tspace","bspace","numRows","e_10_1","e_9_1","e_11","e_12","getRowAttributes","e_12_1","e_11_1","handleEqualRows","space","getRowHalfSpacing","getTableData","H","D","NH","ND","HD","getEqualRowHeight","setRowHeight","rLines","setRowBaseline","e_13","ralign","setCellBaseline","e_13_1","calign","lastChild","isKind","fLine","L","R","W","isPercent","setAttribute","hasLabels","length2em","table","firstChild","style","getAlignmentRow","align","y","getVerticalPosition","side","addLabelPadding","shift","setIndent","updateRowHeights","addLabelSpacing","getPadAlignShift","styles","equal","h","current","insert","height","kind","MmlMtable","position","left","top","CommonMtableMixin","CHTMLWrapper"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/mathjax-full/js/output/chtml/Wrappers/mtable.js"],"sourcesContent":["\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\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 __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CHTMLmtable = void 0;\nvar Wrapper_js_1 = require(\"../Wrapper.js\");\nvar mtable_js_1 = require(\"../../common/Wrappers/mtable.js\");\nvar mtable_js_2 = require(\"../../../core/MmlTree/MmlNodes/mtable.js\");\nvar string_js_1 = require(\"../../../util/string.js\");\nvar CHTMLmtable = (function (_super) {\n __extends(CHTMLmtable, _super);\n function CHTMLmtable(factory, node, parent) {\n if (parent === void 0) { parent = null; }\n var _this = _super.call(this, factory, node, parent) || this;\n _this.itable = _this.html('mjx-itable');\n _this.labels = _this.html('mjx-itable');\n return _this;\n }\n CHTMLmtable.prototype.getAlignShift = function () {\n var data = _super.prototype.getAlignShift.call(this);\n if (!this.isTop) {\n data[1] = 0;\n }\n return data;\n };\n CHTMLmtable.prototype.toCHTML = function (parent) {\n var e_1, _a;\n var chtml = this.standardCHTMLnode(parent);\n this.adaptor.append(chtml, this.html('mjx-table', {}, [this.itable]));\n try {\n for (var _b = __values(this.childNodes), _c = _b.next(); !_c.done; _c = _b.next()) {\n var child = _c.value;\n child.toCHTML(this.itable);\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 this.padRows();\n this.handleColumnSpacing();\n this.handleColumnLines();\n this.handleColumnWidths();\n this.handleRowSpacing();\n this.handleRowLines();\n this.handleRowHeights();\n this.handleFrame();\n this.handleWidth();\n this.handleLabels();\n this.handleAlign();\n this.handleJustify();\n this.shiftColor();\n };\n CHTMLmtable.prototype.shiftColor = function () {\n var adaptor = this.adaptor;\n var color = adaptor.getStyle(this.chtml, 'backgroundColor');\n if (color) {\n adaptor.setStyle(this.chtml, 'backgroundColor', '');\n adaptor.setStyle(this.itable, 'backgroundColor', color);\n }\n };\n CHTMLmtable.prototype.padRows = function () {\n var e_2, _a;\n var adaptor = this.adaptor;\n try {\n for (var _b = __values(adaptor.childNodes(this.itable)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var row = _c.value;\n while (adaptor.childNodes(row).length < this.numCols) {\n adaptor.append(row, this.html('mjx-mtd', { 'extra': true }));\n }\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 CHTMLmtable.prototype.handleColumnSpacing = function () {\n var e_3, _a, e_4, _b;\n var scale = (this.childNodes[0] ? 1 / this.childNodes[0].getBBox().rscale : 1);\n var spacing = this.getEmHalfSpacing(this.fSpace[0], this.cSpace, scale);\n var frame = this.frame;\n try {\n for (var _c = __values(this.tableRows), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var i = 0;\n try {\n for (var _e = (e_4 = void 0, __values(row.tableCells)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n var lspace = spacing[i++];\n var rspace = spacing[i];\n var styleNode = (cell ? cell.chtml : this.adaptor.childNodes(row.chtml)[i]);\n if ((i > 1 && lspace !== '0.4em') || (frame && i === 1)) {\n this.adaptor.setStyle(styleNode, 'paddingLeft', lspace);\n }\n if ((i < this.numCols && rspace !== '0.4em') || (frame && i === this.numCols)) {\n this.adaptor.setStyle(styleNode, 'paddingRight', rspace);\n }\n }\n }\n catch (e_4_1) { e_4 = { error: e_4_1 }; }\n finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n }\n finally { if (e_4) throw e_4.error; }\n }\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n }\n finally { if (e_3) throw e_3.error; }\n }\n };\n CHTMLmtable.prototype.handleColumnLines = function () {\n var e_5, _a, e_6, _b;\n if (this.node.attributes.get('columnlines') === 'none')\n return;\n var lines = this.getColumnAttributes('columnlines');\n try {\n for (var _c = __values(this.childNodes), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var i = 0;\n try {\n for (var _e = (e_6 = void 0, __values(this.adaptor.childNodes(row.chtml).slice(1))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n var line = lines[i++];\n if (line === 'none')\n continue;\n this.adaptor.setStyle(cell, 'borderLeft', '.07em ' + line);\n }\n }\n catch (e_6_1) { e_6 = { error: e_6_1 }; }\n finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n }\n finally { if (e_6) throw e_6.error; }\n }\n }\n }\n catch (e_5_1) { e_5 = { error: e_5_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n }\n finally { if (e_5) throw e_5.error; }\n }\n };\n CHTMLmtable.prototype.handleColumnWidths = function () {\n var e_7, _a, e_8, _b;\n try {\n for (var _c = __values(this.childNodes), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var i = 0;\n try {\n for (var _e = (e_8 = void 0, __values(this.adaptor.childNodes(row.chtml))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n var w = this.cWidths[i++];\n if (w !== null) {\n var width = (typeof w === 'number' ? this.em(w) : w);\n this.adaptor.setStyle(cell, 'width', width);\n this.adaptor.setStyle(cell, 'maxWidth', width);\n this.adaptor.setStyle(cell, 'minWidth', width);\n }\n }\n }\n catch (e_8_1) { e_8 = { error: e_8_1 }; }\n finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n }\n finally { if (e_8) throw e_8.error; }\n }\n }\n }\n catch (e_7_1) { e_7 = { error: e_7_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n }\n finally { if (e_7) throw e_7.error; }\n }\n };\n CHTMLmtable.prototype.handleRowSpacing = function () {\n var e_9, _a, e_10, _b;\n var scale = (this.childNodes[0] ? 1 / this.childNodes[0].getBBox().rscale : 1);\n var spacing = this.getEmHalfSpacing(this.fSpace[1], this.rSpace, scale);\n var frame = this.frame;\n var i = 0;\n try {\n for (var _c = __values(this.childNodes), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var tspace = spacing[i++];\n var bspace = spacing[i];\n try {\n for (var _e = (e_10 = void 0, __values(row.childNodes)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n if ((i > 1 && tspace !== '0.215em') || (frame && i === 1)) {\n this.adaptor.setStyle(cell.chtml, 'paddingTop', tspace);\n }\n if ((i < this.numRows && bspace !== '0.215em') || (frame && i === this.numRows)) {\n this.adaptor.setStyle(cell.chtml, 'paddingBottom', bspace);\n }\n }\n }\n catch (e_10_1) { e_10 = { error: e_10_1 }; }\n finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n }\n finally { if (e_10) throw e_10.error; }\n }\n }\n }\n catch (e_9_1) { e_9 = { error: e_9_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n }\n finally { if (e_9) throw e_9.error; }\n }\n };\n CHTMLmtable.prototype.handleRowLines = function () {\n var e_11, _a, e_12, _b;\n if (this.node.attributes.get('rowlines') === 'none')\n return;\n var lines = this.getRowAttributes('rowlines');\n var i = 0;\n try {\n for (var _c = __values(this.childNodes.slice(1)), _d = _c.next(); !_d.done; _d = _c.next()) {\n var row = _d.value;\n var line = lines[i++];\n if (line === 'none')\n continue;\n try {\n for (var _e = (e_12 = void 0, __values(this.adaptor.childNodes(row.chtml))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var cell = _f.value;\n this.adaptor.setStyle(cell, 'borderTop', '.07em ' + line);\n }\n }\n catch (e_12_1) { e_12 = { error: e_12_1 }; }\n finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n }\n finally { if (e_12) throw e_12.error; }\n }\n }\n }\n catch (e_11_1) { e_11 = { error: e_11_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n }\n finally { if (e_11) throw e_11.error; }\n }\n };\n CHTMLmtable.prototype.handleRowHeights = function () {\n if (this.node.attributes.get('equalrows')) {\n this.handleEqualRows();\n }\n };\n CHTMLmtable.prototype.handleEqualRows = function () {\n var space = this.getRowHalfSpacing();\n var _a = this.getTableData(), H = _a.H, D = _a.D, NH = _a.NH, ND = _a.ND;\n var HD = this.getEqualRowHeight();\n for (var i = 0; i < this.numRows; i++) {\n var row = this.childNodes[i];\n this.setRowHeight(row, HD + space[i] + space[i + 1] + this.rLines[i]);\n if (HD !== NH[i] + ND[i]) {\n this.setRowBaseline(row, HD, (HD - H[i] + D[i]) / 2);\n }\n }\n };\n CHTMLmtable.prototype.setRowHeight = function (row, HD) {\n this.adaptor.setStyle(row.chtml, 'height', this.em(HD));\n };\n CHTMLmtable.prototype.setRowBaseline = function (row, HD, D) {\n var e_13, _a;\n var ralign = row.node.attributes.get('rowalign');\n try {\n for (var _b = __values(row.childNodes), _c = _b.next(); !_c.done; _c = _b.next()) {\n var cell = _c.value;\n if (this.setCellBaseline(cell, ralign, HD, D))\n break;\n }\n }\n catch (e_13_1) { e_13 = { error: e_13_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_13) throw e_13.error; }\n }\n };\n CHTMLmtable.prototype.setCellBaseline = function (cell, ralign, HD, D) {\n var calign = cell.node.attributes.get('rowalign');\n if (calign === 'baseline' || calign === 'axis') {\n var adaptor = this.adaptor;\n var child = adaptor.lastChild(cell.chtml);\n adaptor.setStyle(child, 'height', this.em(HD));\n adaptor.setStyle(child, 'verticalAlign', this.em(-D));\n var row = cell.parent;\n if ((!row.node.isKind('mlabeledtr') || cell !== row.childNodes[0]) &&\n (ralign === 'baseline' || ralign === 'axis')) {\n return true;\n }\n }\n return false;\n };\n CHTMLmtable.prototype.handleFrame = function () {\n if (this.frame && this.fLine) {\n this.adaptor.setStyle(this.itable, 'border', '.07em ' + this.node.attributes.get('frame'));\n }\n };\n CHTMLmtable.prototype.handleWidth = function () {\n var adaptor = this.adaptor;\n var _a = this.getBBox(), w = _a.w, L = _a.L, R = _a.R;\n adaptor.setStyle(this.chtml, 'minWidth', this.em(L + w + R));\n var W = this.node.attributes.get('width');\n if ((0, string_js_1.isPercent)(W)) {\n adaptor.setStyle(this.chtml, 'width', '');\n adaptor.setAttribute(this.chtml, 'width', 'full');\n }\n else if (!this.hasLabels) {\n if (W === 'auto')\n return;\n W = this.em(this.length2em(W) + 2 * this.fLine);\n }\n var table = adaptor.firstChild(this.chtml);\n adaptor.setStyle(table, 'width', W);\n adaptor.setStyle(table, 'minWidth', this.em(w));\n if (L || R) {\n adaptor.setStyle(this.chtml, 'margin', '');\n var style = (this.node.attributes.get('data-width-includes-label') ? 'padding' : 'margin');\n if (L === R) {\n adaptor.setStyle(table, style, '0 ' + this.em(R));\n }\n else {\n adaptor.setStyle(table, style, '0 ' + this.em(R) + ' 0 ' + this.em(L));\n }\n }\n adaptor.setAttribute(this.itable, 'width', 'full');\n };\n CHTMLmtable.prototype.handleAlign = function () {\n var _a = __read(this.getAlignmentRow(), 2), align = _a[0], row = _a[1];\n if (row === null) {\n if (align !== 'axis') {\n this.adaptor.setAttribute(this.chtml, 'align', align);\n }\n }\n else {\n var y = this.getVerticalPosition(row, align);\n this.adaptor.setAttribute(this.chtml, 'align', 'top');\n this.adaptor.setStyle(this.chtml, 'verticalAlign', this.em(y));\n }\n };\n CHTMLmtable.prototype.handleJustify = function () {\n var align = this.getAlignShift()[0];\n if (align !== 'center') {\n this.adaptor.setAttribute(this.chtml, 'justify', align);\n }\n };\n CHTMLmtable.prototype.handleLabels = function () {\n if (!this.hasLabels)\n return;\n var labels = this.labels;\n var attributes = this.node.attributes;\n var adaptor = this.adaptor;\n var side = attributes.get('side');\n adaptor.setAttribute(this.chtml, 'side', side);\n adaptor.setAttribute(labels, 'align', side);\n adaptor.setStyle(labels, side, '0');\n var _a = __read(this.addLabelPadding(side), 2), align = _a[0], shift = _a[1];\n if (shift) {\n var table = adaptor.firstChild(this.chtml);\n this.setIndent(table, align, shift);\n }\n this.updateRowHeights();\n this.addLabelSpacing();\n };\n CHTMLmtable.prototype.addLabelPadding = function (side) {\n var _a = __read(this.getPadAlignShift(side), 3), align = _a[1], shift = _a[2];\n var styles = {};\n if (side === 'right' && !this.node.attributes.get('data-width-includes-label')) {\n var W = this.node.attributes.get('width');\n var _b = this.getBBox(), w = _b.w, L = _b.L, R = _b.R;\n styles.style = {\n width: ((0, string_js_1.isPercent)(W) ? 'calc(' + W + ' + ' + this.em(L + R) + ')' : this.em(L + w + R))\n };\n }\n this.adaptor.append(this.chtml, this.html('mjx-labels', styles, [this.labels]));\n return [align, shift];\n };\n CHTMLmtable.prototype.updateRowHeights = function () {\n var _a = this.getTableData(), H = _a.H, D = _a.D, NH = _a.NH, ND = _a.ND;\n var space = this.getRowHalfSpacing();\n for (var i = 0; i < this.numRows; i++) {\n var row = this.childNodes[i];\n this.setRowHeight(row, H[i] + D[i] + space[i] + space[i + 1] + this.rLines[i]);\n if (H[i] !== NH[i] || D[i] !== ND[i]) {\n this.setRowBaseline(row, H[i] + D[i], D[i]);\n }\n else if (row.node.isKind('mlabeledtr')) {\n this.setCellBaseline(row.childNodes[0], '', H[i] + D[i], D[i]);\n }\n }\n };\n CHTMLmtable.prototype.addLabelSpacing = function () {\n var adaptor = this.adaptor;\n var equal = this.node.attributes.get('equalrows');\n var _a = this.getTableData(), H = _a.H, D = _a.D;\n var HD = (equal ? this.getEqualRowHeight() : 0);\n var space = this.getRowHalfSpacing();\n var h = this.fLine;\n var current = adaptor.firstChild(this.labels);\n for (var i = 0; i < this.numRows; i++) {\n var row = this.childNodes[i];\n if (row.node.isKind('mlabeledtr')) {\n h && adaptor.insert(this.html('mjx-mtr', { style: { height: this.em(h) } }), current);\n adaptor.setStyle(current, 'height', this.em((equal ? HD : H[i] + D[i]) + space[i] + space[i + 1]));\n current = adaptor.next(current);\n h = this.rLines[i];\n }\n else {\n h += space[i] + (equal ? HD : H[i] + D[i]) + space[i + 1] + this.rLines[i];\n }\n }\n };\n CHTMLmtable.kind = mtable_js_2.MmlMtable.prototype.kind;\n CHTMLmtable.styles = {\n 'mjx-mtable': {\n 'vertical-align': '.25em',\n 'text-align': 'center',\n 'position': 'relative',\n 'box-sizing': 'border-box',\n 'border-spacing': 0,\n 'border-collapse': 'collapse'\n },\n 'mjx-mstyle[size=\"s\"] mjx-mtable': {\n 'vertical-align': '.354em'\n },\n 'mjx-labels': {\n position: 'absolute',\n left: 0,\n top: 0\n },\n 'mjx-table': {\n 'display': 'inline-block',\n 'vertical-align': '-.5ex',\n 'box-sizing': 'border-box'\n },\n 'mjx-table > mjx-itable': {\n 'vertical-align': 'middle',\n 'text-align': 'left',\n 'box-sizing': 'border-box'\n },\n 'mjx-labels > mjx-itable': {\n position: 'absolute',\n top: 0\n },\n 'mjx-mtable[justify=\"left\"]': {\n 'text-align': 'left'\n },\n 'mjx-mtable[justify=\"right\"]': {\n 'text-align': 'right'\n },\n 'mjx-mtable[justify=\"left\"][side=\"left\"]': {\n 'padding-right': '0 ! important'\n },\n 'mjx-mtable[justify=\"left\"][side=\"right\"]': {\n 'padding-left': '0 ! important'\n },\n 'mjx-mtable[justify=\"right\"][side=\"left\"]': {\n 'padding-right': '0 ! important'\n },\n 'mjx-mtable[justify=\"right\"][side=\"right\"]': {\n 'padding-left': '0 ! important'\n },\n 'mjx-mtable[align]': {\n 'vertical-align': 'baseline'\n },\n 'mjx-mtable[align=\"top\"] > mjx-table': {\n 'vertical-align': 'top'\n },\n 'mjx-mtable[align=\"bottom\"] > mjx-table': {\n 'vertical-align': 'bottom'\n },\n 'mjx-mtable[side=\"right\"] mjx-labels': {\n 'min-width': '100%'\n }\n };\n return CHTMLmtable;\n}((0, mtable_js_1.CommonMtableMixin)(Wrapper_js_1.CHTMLWrapper)));\nexports.CHTMLmtable = CHTMLmtable;\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}