update api

This commit is contained in:
2026-02-03 13:01:10 -05:00
parent 426a0c4715
commit ff842a5848
7 changed files with 10 additions and 10 deletions
+1 -1
View File
@@ -34,7 +34,7 @@
{:model model}))
;; === View ===
(defn view [{:keys [count]} _size]
(defn view [{:keys [count]}]
[:col {:gap 1}
[:box {:border :rounded :padding [0 1]}
[:col
+1 -1
View File
@@ -61,7 +61,7 @@
{:model model})))
;; === View ===
(defn view [{:keys [state status error url]} _size]
(defn view [{:keys [state status error url]}]
[:col {:gap 1}
[:box {:border :rounded :padding [1 2]}
[:col {:gap 1}
+1 -1
View File
@@ -47,7 +47,7 @@
{:model model})))
;; === View ===
(defn view [{:keys [cursor items selected submitted]} _size]
(defn view [{:keys [cursor items selected submitted]}]
(if submitted
[:col
[:text {:bold true :fg :green} "You selected:"]
+1 -1
View File
@@ -66,7 +66,7 @@
idx (mod frame (count frames))]
(nth frames idx)))
(defn view [{:keys [loading message style] :as model} _size]
(defn view [{:keys [loading message style] :as model}]
[:col {:gap 1}
[:box {:border :rounded :padding [1 2]}
[:col {:gap 1}
+1 -1
View File
@@ -50,7 +50,7 @@
secs (mod seconds 60)]
(format "%02d:%02d" mins secs)))
(defn view [{:keys [seconds running done]} _size]
(defn view [{:keys [seconds running done]}]
[:col {:gap 1}
[:box {:border :rounded :padding [1 2]}
[:col
+1 -1
View File
@@ -103,7 +103,7 @@
[:text {:fg :green} "[y] Yes"]
[:text {:fg :red} "[n] No"]]]]])
(defn view [{:keys [view] :as model} _size]
(defn view [{:keys [view] :as model}]
(case view
:menu (menu-view model)
:detail (detail-view model)
+4 -4
View File
@@ -131,7 +131,7 @@
Options:
- :init - Initial model (required)
- :update - (fn [{:keys [model event]}] {:model m :events [...]}) (required)
- :view - (fn [model size] hiccup) where size is {:width w :height h} (required)
- :view - (fn [model] hiccup) (required)
- :init-events - Vector of events to dispatch at startup
- :fps - Target frames per second (default 60)
- :alt-screen - Use alternate screen buffer (default true)
@@ -162,7 +162,7 @@
(let [size (term/get-terminal-size)
ctx {:available-height (:height size)
:available-width (:width size)}]
(term/render! (render/render (view init size) ctx)))
(term/render! (render/render (view init) ctx)))
;; Main loop
(loop [model init
@@ -196,7 +196,7 @@
(execute-event! e msg-chan)))
;; Render with context for flex layouts
(term/render! (render/render (view new-model size) ctx))
(term/render! (render/render (view new-model) ctx))
(recur new-model now))))))
@@ -218,7 +218,7 @@
(defapp my-app
:init {:count 0}
:update (fn [{:keys [model event]}] ...)
:view (fn [model size] ...))"
:view (fn [model] ...))"
[name & {:keys [init update view init-events]}]
`(def ~name
{:init ~init