// MathJax.js

let isMathjaxConfig = false // 用于标识是否配置
const initMathjaxConfig = () => {
	if (!window.MathJax) {
		return
	}
	window.MathJax.Hub.Config({
		showProcessingMessages: false, // 关闭js加载过程信息
		messageStyle: 'none', // 不显示信息
		tex: {
			inlineMath: [
				['$', '$'],
				['\\(', '\\)']
			], // 行内公式选择符
			displayMath: [
				['$$', '$$'],
				['\\[', '\\]']
			], // 段内公式选择符
			// skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code', 'a'] // 避开某些标签
			messageStyle: "none",
			styles: {
				".MathJax_Display, .MathJax_Preview, .MathJax_Preview > *": {
					"background": "inherit"
				}
			},
			SEEditor: "mathjaxEditing"
		},
		'HTML-CSS': {
			availableFonts: ['STIX', 'TeX'], // 可选字体
			showMathMenu: true
		}
	})
	isMathjaxConfig = true // 配置完成，改为true
}

const MathQueue = function(elementId) {
	if (!window.MathJax) {
		return
	}
	window.MathJax.Hub.Queue(['Typeset', window.MathJax.Hub, elementId]) // 根据class
	//  window.MathJax.Hub.Queue(['Typeset', window.MathJax.Hub, document.getElementById(elementId)]) // 根据id
}

export default {
	isMathjaxConfig,
	initMathjaxConfig,
	MathQueue
}
