File tree Expand file tree Collapse file tree 1 file changed +42
-1
lines changed Expand file tree Collapse file tree 1 file changed +42
-1
lines changed Original file line number Diff line number Diff line change @@ -17,9 +17,50 @@ import qualified Lamdera.UiSourceMap
1717
1818-- SANDWICH
1919
20-
20+ -- @LAMDERA root :: FilePath parameter added.
2121sandwich :: FilePath -> Name. Name -> B. Builder -> B. Builder
2222sandwich root moduleName javascript =
23+ Lamdera. alternativeImplementationWhen Lamdera. isLamdera_ (sandwich_ root moduleName javascript) $
24+ let name = Name. toBuilder moduleName in
25+ [r |<!DOCTYPE HTML>
26+ <html>
27+ <head>
28+ <meta charset="UTF-8">
29+ <title>|] <> name <> [r |</title>
30+ <style>body { padding: 0; margin: 0; }</style>
31+ </head>
32+
33+ <body>
34+
35+ <pre id="elm"></pre>
36+
37+ <script>
38+ try {
39+ |] <> javascript <> [r |
40+
41+ var app = Elm.|] <> name <> [r |.init({ node: document.getElementById("elm") });
42+ }
43+ catch (e)
44+ {
45+ // display initialization errors (e.g. bad flags, infinite recursion)
46+ var header = document.createElement("h1");
47+ header.style.fontFamily = "monospace";
48+ header.innerText = "Initialization Error";
49+ var pre = document.getElementById("elm");
50+ document.body.insertBefore(header, pre);
51+ pre.innerText = e;
52+ throw e;
53+ }
54+ </script>
55+
56+ </body>
57+ </html>|]
58+
59+
60+ -- @LAMDERA
61+
62+ sandwich_ :: FilePath -> Name. Name -> B. Builder -> B. Builder
63+ sandwich_ root moduleName javascript =
2364 let
2465 name = Name. toBuilder moduleName
2566
You can’t perform that action at this time.
0 commit comments