+ )
+}
diff --git a/apps/prs/web/src/app/App.svelte b/apps/prs/web/src/app/App.svelte
index 3f219265f..00244c212 100644
--- a/apps/prs/web/src/app/App.svelte
+++ b/apps/prs/web/src/app/App.svelte
@@ -3,6 +3,7 @@
import { Router, Route } from "svelte-routing";
import Issue2333 from "../routes/2333.svelte";
import Issue3279 from "../routes/3279.svelte";
+ import PublicFormExample from "../routes/public-form.svelte";
@@ -12,4 +13,5 @@
+
diff --git a/apps/prs/web/src/routes/public-form.svelte b/apps/prs/web/src/routes/public-form.svelte
new file mode 100644
index 000000000..7c63f13c6
--- /dev/null
+++ b/apps/prs/web/src/routes/public-form.svelte
@@ -0,0 +1,395 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {#each getPage(_state, "children", []) as child (child._id)}
+
+
{child["first-name"]}
+
{child["last-name"]}
+
Edit
Remove
+
+ {/each}
+
+
+
+
+
+
+
+ This is a page that is read-only
+
+
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Possimus, odit!
+ Voluptatem dolor soluta aspernatur ipsa dolorem est iure vitae eaque ea, vero
+ architecto praesentium, quia excepturi, odio porro? Fuga, officia?
+
+
+
+
+
+
+
+
+
+
-
- );
-
- expect(baseElement.querySelector("[data-testid='edit-btn']")).toBeTruthy();
- expect(baseElement.querySelector("[data-testid='delete-btn']")).toBeTruthy();
- expect(baseElement.querySelector("[data-testid='help-link']")).toBeTruthy();
- expect(baseElement.querySelector("[data-testid='checkbox']")).toBeTruthy();
- expect(baseElement.querySelectorAll("button")).toHaveLength(2);
- expect(baseElement.querySelectorAll("a")).toHaveLength(1);
- expect(baseElement.querySelectorAll("input")).toHaveLength(1);
- });
-
- it("renders with long heading text", () => {
- const longHeading = "This is a very long heading that might wrap to multiple lines and should still be handled correctly by the component";
-
- const { baseElement } = render(
-
-