Phase 5 cleanup: remove legacy HTML components, fix nav-tree fragment
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m43s
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m43s
- Remove old raw! layout components (~app-head, ~app-layout, ~oob-response, ~header-row, ~menu-row, ~oob-header, ~header-child) from layout.sexp - Convert nav-tree fragment from Jinja HTML to sexp source, fixing the "Unexpected character: ." parse error caused by HTML leaking into sexp - Add _as_sexp() helper to safely coerce HTML fragments to ~rich-text - Fix federation/sexp/search.sexpr extra closing paren - Remove dead _html() wrappers from blog and account sexp_components - Remove stale render import from cart sexp_components - Add dev_watcher.py to auto-reload on .sexp/.sexpr/.js/.css changes - Add test_parse_all.py to parse-check all 59 sexpr/sexp files - Fix test assertions for sx- attribute prefix (was hx-) - Add sexp.js version logging for cache debugging Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -159,7 +159,8 @@
|
||||
return new Symbol(name);
|
||||
}
|
||||
|
||||
throw parseErr("Unexpected character: " + ch, this);
|
||||
var ctx = this.text.substring(Math.max(0, this.pos - 40), this.pos + 40);
|
||||
throw parseErr("Unexpected character: " + ch + " | context: «" + ctx.replace(/\n/g, "\\n") + "»", this);
|
||||
};
|
||||
|
||||
function isDigit(c) { return c >= "0" && c <= "9"; }
|
||||
@@ -1949,8 +1950,11 @@
|
||||
// Auto-init in browser
|
||||
// =========================================================================
|
||||
|
||||
Sexp.VERSION = "2026-03-01a";
|
||||
|
||||
if (typeof document !== "undefined") {
|
||||
var init = function () {
|
||||
console.log("[sexp.js] v" + Sexp.VERSION + " init");
|
||||
Sexp.processScripts();
|
||||
Sexp.hydrate();
|
||||
SxEngine.process();
|
||||
|
||||
Reference in New Issue
Block a user