{#
EDITOR SAVE RESULT — confirmation / error banner (R5b).
Returned by POST /workspace/{key}/file and swapped into the editor footer's
#ws-editor-status slot. Two states:
- saved → a green "Saved · N bytes" confirmation
- ws_error → a red error (e.g. a 403 path-escape rejection — NOTHING written)
Vars:
saved : workspace.write_file() dict (rel_path/name/size/lines), or None
ws_error : error message when the write was rejected/failed
ws_status : HTTP-ish status code
ws_path : the rel-path that was POSTed (for the error line)
#}
{% if ws_error %}
{{ ws_status }} — {{ ws_error }}
{% else %}
Saved {{ saved.name }} · {{ saved.size }} B · {{ saved.lines }} line{{ '' if saved.lines == 1 else 's' }}
{% endif %}