-
Notifications
You must be signed in to change notification settings - Fork 0
/
editor.js
55 lines (44 loc) · 1.6 KB
/
editor.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
const editorLmht = window.monaco.editor.create(document.getElementById("containerLmht"), {
value: "<lmht>\n\t<cabeça>\n\t\t<titulo>Olá mundo</titulo>\n\t</cabeça>\n\t<corpo>\n\t\t<p>Olá mundo</p>\n\t</corpo>\n</lmht>",
language: "lmht"
});
const modeloEditorLmht = editorLmht.getModel();
window.serializadorXml = new XMLSerializer();
const transformacaoInicial = SaxonJS.transform({
stylesheetLocation: "lmht.sef.json",
sourceText: modeloEditorLmht.getValue()
});
const editorHtml = window.monaco.editor.create(document.getElementById("containerHtml"), {
value: window.serializadorXml.serializeToString(transformacaoInicial.principalResult),
language: "html"
});
const modeloEditorHtml = editorHtml.getModel();
window.atualizando = 0
modeloEditorLmht.onDidChangeContent(() => {
if (window.atualizando > 0) {
window.atualizando = 0;
return;
}
const transformacao = SaxonJS.transform({
stylesheetLocation: "lmht.sef.json",
sourceText: modeloEditorLmht.getValue()
});
window.atualizando = 1;
modeloEditorHtml.setValue(
window.serializadorXml.serializeToString(transformacao.principalResult)
);
});
modeloEditorHtml.onDidChangeContent(() => {
if (window.atualizando > 0) {
window.atualizando = 0;
return;
}
const transformacao = SaxonJS.transform({
stylesheetLocation: "lmht-reverso.sef.json",
sourceText: modeloEditorHtml.getValue()
});
window.atualizando = 1;
modeloEditorLmht.setValue(
window.serializadorXml.serializeToString(transformacao.principalResult)
);
});