If editing an HTML page, show that in the preview instead of just the index.

This commit is contained in:
Christian Lawson-Perfect 2025-02-20 14:00:16 +00:00
parent ce6524bb26
commit 8934a3e097
2 changed files with 34 additions and 20 deletions

View file

@ -21,7 +21,7 @@
{"path": "src/poo.js", "is_dir": false, "name": "poo.js"}, {"path": "src/poo.js", "is_dir": false, "name": "poo.js"},
{"path": "src/poo.py", "is_dir": false, "name": "poo.py"} {"path": "src/poo.py", "is_dir": false, "name": "poo.py"}
], ],
"file_path": "src/poo.js", "file_path": "src/poo.html",
"is_dir": false, "is_dir": false,
"file_content": "function x() {\n return 1;\n}", "file_content": "function x() {\n return 1;\n}",
"csrf_token": "arg", "csrf_token": "arg",

View file

@ -87,6 +87,9 @@ type alias Model =
, elm_packages : List ElmPackage , elm_packages : List ElmPackage
} }
suffix : String -> String
suffix = String.split "." >> List.reverse >> List.head >> Maybe.withDefault ""
init_model : Model init_model : Model
init_model = init_model =
{ show_preview = True { show_preview = True
@ -689,6 +692,17 @@ log_pane model =
] ]
preview_pane model = preview_pane model =
let
file_suffix = suffix model.file_path
page_suffixes = ["html", "php"]
preview_url =
if List.member file_suffix page_suffixes then
model.preview_url ++ "/" ++ model.file_path
else
model.preview_url
in
H.details H.details
[ HA.attribute "open" "" [ HA.attribute "open" ""
, HA.id "preview" , HA.id "preview"
@ -696,13 +710,13 @@ preview_pane model =
] ]
( [ H.summary ( [ H.summary
[] []
[ H.text "Preview" [ H.text <| "Preview"
] ]
] ]
++ if model.show_preview then ++ if model.show_preview then
[ H.iframe [ H.iframe
[ HA.id "preview-frame" [ HA.id "preview-frame"
, HA.src model.preview_url , HA.src preview_url
] ]
[] []
] ]