diff options
| author | Jake Zerrer <him@jakezerrer.com> | 2025-10-14 16:19:09 -0400 |
|---|---|---|
| committer | Jake Zerrer <him@jakezerrer.com> | 2025-10-15 13:35:06 -0400 |
| commit | aedd0df6c2c61b6ef42d610017f066e3d10233dd (patch) | |
| tree | fbcfc891b04e876caf67a7c080903d3ac9823135 /portal.clj | |
| parent | 756b4e6ceb360e8d5e93a2bde712aa46cda61d85 (diff) | |
Move flow portal capture to new ns
Diffstat (limited to 'portal.clj')
| -rw-r--r-- | portal.clj | 25 |
1 files changed, 12 insertions, 13 deletions
@@ -48,19 +48,18 @@ (def >portal-ui (m/ap + (let [ui (m/? (m/via m/blk ((requiring-resolve 'portal.api/open))))] + (m/amb= ui + (try (m/? m/never) + (finally + ;; Were this blocking, I would put this on m/blk + ((requiring-resolve 'portal.api/close) ui) + (m/amb))))))) + +(def >portal-ui-toggle + (m/ap (when (m/?< >show-portal?) - (try - (m/?< - (m/observe - (fn [cb] - ((m/via m/blk ((requiring-resolve 'portal.api/open))) {} {}) - (cb :open) - (fn [] - ((m/via m/blk - ((requiring-resolve 'portal.api/close)) - ((requiring-resolve 'portal.api/clear))) {} {}))))) - (catch missionary.Cancelled _ - (m/amb))) + (m/?< >portal-ui) (m/amb)))) (defn cap @@ -80,5 +79,5 @@ (def >portal-main "Main entrypoint." - (m/ap (m/amb= (do (m/?< >portal-ui) + (m/ap (m/amb= (do (m/?< >portal-ui-toggle) (m/amb))))) |
