Uncommitted sx-tools changes: WASM bundles, Playwright specs, engine fixes
WASM browser bundles rebuilt with latest kernel. Playwright test specs updated (helpers, navigation, handler-responses, hypermedia-handlers, isomorphic, SPA navigation). Engine/boot/orchestration SX files updated. Handler examples and not-found page refreshed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -346,7 +346,51 @@
|
||||
(resp-ok status get-header text)
|
||||
(when
|
||||
resp-ok
|
||||
(dom-set-inner-html main text)
|
||||
(let
|
||||
((ct (or (get-header "content-type") "")))
|
||||
(if
|
||||
(contains? ct "text/html")
|
||||
(let
|
||||
((parser (host-new "DOMParser"))
|
||||
(doc (host-call parser "parseFromString" text "text/html"))
|
||||
(content (host-call doc "querySelector" "#sx-content")))
|
||||
(if
|
||||
content
|
||||
(dom-set-inner-html main (host-get content "innerHTML"))
|
||||
(dom-set-inner-html main text)))
|
||||
(let
|
||||
((container (dom-create-element "div")))
|
||||
(let
|
||||
((rendered (sx-render text)))
|
||||
(when
|
||||
rendered
|
||||
(dom-append container rendered)
|
||||
(process-oob-swaps
|
||||
container
|
||||
(fn
|
||||
(t oob (s :as string))
|
||||
(dispose-islands-in t)
|
||||
(swap-dom-nodes
|
||||
t
|
||||
(if
|
||||
(= s "innerHTML")
|
||||
(children-to-fragment oob)
|
||||
oob)
|
||||
s)
|
||||
(post-swap t)))
|
||||
(let
|
||||
((content (select-from-container container "#sx-content")))
|
||||
(if
|
||||
content
|
||||
(do
|
||||
(dispose-islands-in main)
|
||||
(dom-set-inner-html main "")
|
||||
(dom-append main content))
|
||||
(do
|
||||
(dispose-islands-in main)
|
||||
(dom-set-inner-html
|
||||
main
|
||||
(dom-get-inner-html container))))))))))
|
||||
(post-swap main)
|
||||
(host-call (dom-window) "scrollTo" 0 scroll-y)))
|
||||
(fn (err) (log-warn (str "fetch-and-restore error: " err))))))
|
||||
|
||||
Reference in New Issue
Block a user