From 4feebe50430236a331b439c31af13d0d390be805 Mon Sep 17 00:00:00 2001
From: Ilion Beyst <ilion.beyst@gmail.com>
Date: Mon, 7 Feb 2022 20:56:08 +0100
Subject: keep persistent EditorSession on demo page

---
 web/pw-server/src/lib/components/Editor.svelte | 27 ++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 web/pw-server/src/lib/components/Editor.svelte

(limited to 'web/pw-server/src/lib/components/Editor.svelte')

diff --git a/web/pw-server/src/lib/components/Editor.svelte b/web/pw-server/src/lib/components/Editor.svelte
new file mode 100644
index 0000000..5acbca5
--- /dev/null
+++ b/web/pw-server/src/lib/components/Editor.svelte
@@ -0,0 +1,27 @@
+<script lang="ts">
+  import type { Ace } from "ace-builds";
+  import ace from "ace-builds/src-noconflict/ace?client";
+  import * as aceGithubTheme from "ace-builds/src-noconflict/theme-github?client";
+
+  import { onMount } from "svelte";
+
+  export let editSession: Ace.EditSession;
+
+  let editorDiv: HTMLDivElement | undefined;
+  let editor: Ace.Editor | undefined;
+
+  onMount(async () => {
+    let renderer = new ace.VirtualRenderer(editorDiv);
+    editor = new ace.Editor(renderer, editSession);
+    editor.setTheme(aceGithubTheme);
+  });
+</script>
+
+<div bind:this={editorDiv} class="editor" />
+
+<style>
+  .editor {
+    width: 100%;
+    height: 100%;
+  }
+</style>
-- 
cgit v1.2.3

