HS: route hide through hs-hide! runtime (dialog/details support)

Mirrors hs-show! pattern — dialog calls close(), details sets open=false.
No test count change (custom strategy tests need behavior system).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-13 11:29:54 +00:00
parent 75f1c04559
commit d42717d4b9
2 changed files with 15 additions and 6 deletions

View File

@@ -497,6 +497,20 @@
(host-call el "close")
(dom-set-prop el "open" false)))))
(define
hs-hide!
(fn
(el strategy)
(let
((tag (dom-get-prop el "tagName")))
(cond
((= tag "DIALOG")
(when (dom-has-attr? el "open") (host-call el "close")))
((= tag "DETAILS") (dom-set-prop el "open" false))
((= strategy "opacity") (dom-set-style el "opacity" "0"))
((= strategy "visibility") (dom-set-style el "visibility" "hidden"))
(true (dom-set-style el "display" "none"))))))
(define
hs-show!
(fn