;; Federation layout defcomps — fully self-contained via IO primitives. ;; Registered via register_sx_layout("social", ...) in __init__.py. ;; Full page: root header + social header in header-child (defcomp ~layouts/social-layout-full () (<> (~root-header-auto) (~shared:layout/header-child-sx :inner (~social/header :nav (~social/nav :actor (federation-actor-ctx)))))) ;; OOB (HTMX): social header oob + root header oob (defcomp ~layouts/social-layout-oob () (<> (~shared:layout/oob-header-sx :parent-id "root-header-child" :row (~social/header :nav (~social/nav :actor (federation-actor-ctx)))) (~root-header-auto true)))