From ff842a5848e1e99ba5ad5f2cc2f3547e1d71d6a3 Mon Sep 17 00:00:00 2001 From: Adam Jeniski Date: Tue, 3 Feb 2026 13:01:10 -0500 Subject: [PATCH] update api --- examples/counter.clj | 2 +- examples/http.clj | 2 +- examples/list_selection.clj | 2 +- examples/spinner.clj | 2 +- examples/timer.clj | 2 +- examples/views.clj | 2 +- src/tui/core.clj | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/examples/counter.clj b/examples/counter.clj index c63920d..7d3a803 100644 --- a/examples/counter.clj +++ b/examples/counter.clj @@ -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 diff --git a/examples/http.clj b/examples/http.clj index f292958..17e2852 100644 --- a/examples/http.clj +++ b/examples/http.clj @@ -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} diff --git a/examples/list_selection.clj b/examples/list_selection.clj index 84b262f..f3aa581 100644 --- a/examples/list_selection.clj +++ b/examples/list_selection.clj @@ -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:"] diff --git a/examples/spinner.clj b/examples/spinner.clj index 3aab2ec..04e7f38 100644 --- a/examples/spinner.clj +++ b/examples/spinner.clj @@ -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} diff --git a/examples/timer.clj b/examples/timer.clj index ea142f3..719b380 100644 --- a/examples/timer.clj +++ b/examples/timer.clj @@ -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 diff --git a/examples/views.clj b/examples/views.clj index c88ab99..ddc957f 100644 --- a/examples/views.clj +++ b/examples/views.clj @@ -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) diff --git a/src/tui/core.clj b/src/tui/core.clj index 558b233..92551f8 100644 --- a/src/tui/core.clj +++ b/src/tui/core.clj @@ -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