Merge "Merge branch 'stable-3.12'"
diff --git a/web/element/codemirror-element.ts b/web/element/codemirror-element.ts
index 7b1bf5a..eb014ac 100644
--- a/web/element/codemirror-element.ts
+++ b/web/element/codemirror-element.ts
@@ -60,6 +60,8 @@
@query('#result')
result!: HTMLElement;
+ private lineTerminator?: string;
+
private initialized = false;
private onResize: (() => void) | null = null;
@@ -122,6 +124,8 @@
if (this.initialized) return;
this.initialized = true;
+ this.lineTerminator = this.fileContent?.includes('\r\n') ? '\r\n' : '\n';
+
const editor = new EditorView({
state: EditorState.create({
doc: this.fileContent ?? '',
@@ -151,7 +155,7 @@
if (update.docChanged) {
this.dispatchEvent(
new CustomEvent('content-change', {
- detail: {value: update.state.doc.toString()},
+ detail: {value: update.state.doc.toJSON().join(this.lineTerminator)},
bubbles: true,
composed: true,
})