Refactor sx.js: extract string renderer, deduplicate helpers, remove dead code
Extract Node-only string renderer (renderToString, renderStr, etc.) to sx-test.js. Add shared helpers (_processOOBSwaps, _postSwap, _processBindings, _evalCond, _logParseError) replacing duplicated logic. Remove dead isTruthy and _sxCssKnown class-list fallback. Compress section banners. sx.js goes from 2652 to 2279 lines (-14%) with zero browser-side behavior change. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -167,7 +167,7 @@ JS_API = [
|
||||
("Sx.parseAll(text)", "Parse multiple s-expressions from text"),
|
||||
("Sx.eval(expr, env)", "Evaluate an expression in the given environment"),
|
||||
("Sx.render(expr, env)", "Render an expression to DOM nodes"),
|
||||
("Sx.renderToString(expr, env)", "Render an expression to an HTML string"),
|
||||
("Sx.renderToString(expr, env)", "Render an expression to an HTML string (requires sx-test.js)"),
|
||||
("Sx.renderComponent(name, kwargs, env)", "Render a named component with keyword arguments"),
|
||||
("Sx.loadComponents(text)", "Parse and register component definitions"),
|
||||
("Sx.getEnv()", "Get the current component environment"),
|
||||
|
||||
Reference in New Issue
Block a user