Fix value-select: return raw option elements instead of component
Some checks failed
Build and Deploy / build-and-deploy (push) Has been cancelled
Some checks failed
Build and Deploy / build-and-deploy (push) Has been cancelled
The ~value-options component wrapped options in a fragment that didn't render correctly inside a <select> innerHTML swap. Return plain (option) elements directly. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -388,17 +388,17 @@ def register(url_prefix: str = "/") -> Blueprint:
|
||||
@bp.get("/examples/api/values")
|
||||
async def api_values():
|
||||
from shared.sx.helpers import sx_response
|
||||
from sxc.sx_components import _oob_code, _component_source_text, _full_wire_text
|
||||
from sxc.sx_components import _oob_code, _full_wire_text
|
||||
from content.pages import VALUE_SELECT_DATA
|
||||
cat = request.args.get("category", "")
|
||||
items = VALUE_SELECT_DATA.get(cat, [])
|
||||
items_sx = " ".join(f'"{i}"' for i in items)
|
||||
sx_src = f'(~value-options :items (list {items_sx}))'
|
||||
comp_text = _component_source_text("value-options")
|
||||
wire_text = _full_wire_text(sx_src, "value-options")
|
||||
options_sx = " ".join(f'(option :value "{i}" "{i}")' for i in items)
|
||||
if not options_sx:
|
||||
options_sx = '(option :value "" "No items")'
|
||||
sx_src = f'(<> {options_sx})'
|
||||
wire_text = _full_wire_text(sx_src)
|
||||
oob_wire = _oob_code("values-wire", wire_text)
|
||||
oob_comp = _oob_code("values-comp", comp_text)
|
||||
return sx_response(f'(<> {sx_src} {oob_wire} {oob_comp})')
|
||||
return sx_response(f'(<> {options_sx} {oob_wire})')
|
||||
|
||||
# --- Reset on Submit ---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user