(defcomp
  ()
  (~examples/page-content
    :title "Infinite Scroll"
    :description "A sentinel element at the bottom uses sx-trigger=\"intersect once\" to load the next page when scrolled into view. Each response appends items and a new sentinel."
    :demo-description "Scroll down in the container to load more items (5 pages total)."
    :demo (~examples/infinite-scroll-demo)
    :sx-code "(div :id \"scroll-sentinel\"\n  :sx-get \"/sx/(geography.(hypermedia.(example.(api.scroll))))?page=2\"\n  :sx-trigger \"intersect once\"\n  :sx-target \"#scroll-items\"\n  :sx-swap \"beforeend\"\n  \"Loading more...\")"
    :handler-names (list "ex-scroll")
    :comp-placeholder-id "scroll-comp"
    :wire-placeholder-id "scroll-wire"))
