mirror of
https://github.com/moodle/moodle.git
synced 2025-02-22 02:49:53 +01:00
Merge branch 'MDL-76279-master' of https://github.com/HuongNV13/moodle
This commit is contained in:
commit
0ea04360ce
@ -5,6 +5,6 @@ define("tiny_equation/equation",["exports","tiny_equation/selectors"],(function(
|
||||
* @module tiny_equation/equation
|
||||
* @copyright 2022 Huong Nguyen <huongnv13@gmail.com>
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.setEquation=_exports.getSourceEquation=_exports.getSelectedEquation=_exports.getCurrentEquationData=void 0,_selectors=(obj=_selectors)&&obj.__esModule?obj:{default:obj};let sourceEquation=null;const getSourceEquation=()=>sourceEquation;_exports.getSourceEquation=getSourceEquation;const getSelectedEquation=editor=>{const textSelection=editor.selection.getNode().textContent,currentCaretPos=editor.selection.getSel().focusOffset;let returnValue=!1;return _selectors.default.equationPatterns.forEach((pattern=>{const regexPattern=new RegExp(pattern.source,"g");[...textSelection.matchAll(regexPattern)].forEach((matches=>{const match=matches[0];let startIndex=0;const startOuter=textSelection.indexOf(match,startIndex),endOuter=startOuter+match.length,innerMatch=match.match(pattern);if(innerMatch&&innerMatch.length){const startInner=textSelection.indexOf(innerMatch[1],startOuter),endInner=startInner+innerMatch[1].length;if(currentCaretPos>=startOuter&¤tCaretPos<=endOuter)return returnValue=innerMatch[1],void(sourceEquation={startInnerPosition:startInner,endInnerPosition:endInner,innerMatch:innerMatch})}startIndex=endOuter}))})),!1!==returnValue&&(returnValue=returnValue.trim()),returnValue};_exports.getSelectedEquation=getSelectedEquation;_exports.getCurrentEquationData=editor=>{let properties={};const equation=getSelectedEquation(editor);return equation&&(properties.equation=equation),properties};_exports.setEquation=(currentForm,editor)=>{const input=currentForm.querySelector(_selectors.default.elements.equationTextArea),sourceEquation=getSourceEquation();let value=input.value;if(""!==value)if(sourceEquation){const selectedNode=editor.selection.getNode(),text=selectedNode.textContent;value=" "+value+" ",selectedNode.textContent=text.slice(0,sourceEquation.startInnerPosition)+value+text.slice(sourceEquation.endInnerPosition)}else value=_selectors.default.delimiters.start+" "+value+" "+_selectors.default.delimiters.end,editor.insertContent(value)}}));
|
||||
*/Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.setEquation=_exports.getSourceEquation=_exports.getSelectedEquation=_exports.getCurrentEquationData=void 0,_selectors=(obj=_selectors)&&obj.__esModule?obj:{default:obj};let sourceEquation=null;const getSourceEquation=()=>sourceEquation;_exports.getSourceEquation=getSourceEquation;const getSelectedEquation=editor=>{const textSelection=editor.selection.getNode().textContent,currentCaretPos=editor.selection.getSel().focusOffset;let returnValue=!1;return _selectors.default.equationPatterns.forEach((pattern=>{const regexPattern=new RegExp(pattern.source,"g");[...textSelection.matchAll(regexPattern)].forEach((matches=>{const match=matches[0];let startIndex=0;const startOuter=textSelection.indexOf(match,startIndex),endOuter=startOuter+match.length,innerMatch=match.match(pattern);if(innerMatch&&innerMatch.length){const startInner=textSelection.indexOf(innerMatch[1],startOuter),endInner=startInner+innerMatch[1].length;if(currentCaretPos>=startOuter&¤tCaretPos<=endOuter)return returnValue=innerMatch[1],void(sourceEquation={startInnerPosition:startInner,endInnerPosition:endInner,innerMatch:innerMatch})}startIndex=endOuter}))})),!1!==returnValue?returnValue=returnValue.trim():sourceEquation=null,returnValue};_exports.getSelectedEquation=getSelectedEquation;_exports.getCurrentEquationData=editor=>{let properties={};const equation=getSelectedEquation(editor);return equation&&(properties.equation=equation),properties};_exports.setEquation=(currentForm,editor)=>{const input=currentForm.querySelector(_selectors.default.elements.equationTextArea),sourceEquation=getSourceEquation();let value=input.value;if(""!==value)if(sourceEquation){const selectedNode=editor.selection.getNode(),text=selectedNode.textContent;value=" "+value+" ",selectedNode.textContent=text.slice(0,sourceEquation.startInnerPosition)+value+text.slice(sourceEquation.endInnerPosition)}else value=_selectors.default.delimiters.start+" "+value+" "+_selectors.default.delimiters.end,editor.insertContent(value)}}));
|
||||
|
||||
//# sourceMappingURL=equation.min.js.map
|
File diff suppressed because one or more lines are too long
@ -84,6 +84,9 @@ export const getSelectedEquation = (editor) => {
|
||||
// We trim the equation when we load it and then add spaces when we save it.
|
||||
if (returnValue !== false) {
|
||||
returnValue = returnValue.trim();
|
||||
} else {
|
||||
// Clear the saved source equation.
|
||||
sourceEquation = null;
|
||||
}
|
||||
|
||||
return returnValue;
|
||||
|
Loading…
x
Reference in New Issue
Block a user