Add attribute detail pages with live demos for SX reference
Per-attribute documentation pages at /reference/attributes/<slug> with: - Live interactive demos (demo components in reference.sx) - S-expression source code display - Server handler code shown as s-expressions (defhandlers in handlers/reference.sx) - Wire response display via OOB swaps on demo interaction - Linked attribute names in the reference table Covers all 20 implemented attributes (sx-get/post/put/delete/patch, sx-trigger/target/swap/swap-oob/select/confirm/push-url/sync/encoding/ headers/include/vals/media/disable/on:*, sx-retry, data-sx, data-sx-env). Also adds sx-on:* to BEHAVIOR_ATTRS, updates REFERENCE_NAV to link /reference/attributes, and makes /reference/ an index page. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -35,9 +35,15 @@
|
||||
(map (fn (cell) (td :class "px-3 py-2 text-stone-700" cell)) row)))
|
||||
rows)))))
|
||||
|
||||
(defcomp ~doc-attr-row (&key attr description exists)
|
||||
(defcomp ~doc-attr-row (&key attr description exists href)
|
||||
(tr :class "border-b border-stone-100"
|
||||
(td :class "px-3 py-2 font-mono text-sm text-violet-700 whitespace-nowrap" attr)
|
||||
(td :class "px-3 py-2 font-mono text-sm whitespace-nowrap"
|
||||
(if href
|
||||
(a :href href
|
||||
:sx-get href :sx-target "#main-panel" :sx-select "#main-panel"
|
||||
:sx-swap "outerHTML" :sx-push-url "true"
|
||||
:class "text-violet-700 hover:text-violet-900 underline" attr)
|
||||
(span :class "text-violet-700" attr)))
|
||||
(td :class "px-3 py-2 text-stone-700 text-sm" description)
|
||||
(td :class "px-3 py-2 text-center"
|
||||
(if exists
|
||||
|
||||
Reference in New Issue
Block a user