28 lines
803 B
Clojure
28 lines
803 B
Clojure
(ns todo.app
|
|
(:require [reagent.core :as r]
|
|
[re-frame.core :as rf]
|
|
["react-native" :as rn]
|
|
["react-native-gesture-handler" :refer [GestureHandlerRootView]]
|
|
[expo.root :as expo-root]
|
|
[todo.events]
|
|
[todo.subs]
|
|
[todo.views.main :as main]
|
|
[todo.views.add-todo :as add-todo]))
|
|
|
|
(defn root []
|
|
(let [show-form? @(rf/subscribe [:show-form?])]
|
|
[:> GestureHandlerRootView {:style {:flex 1}}
|
|
[:> rn/StatusBar {:bar-style "light-content" :background-color "#6200EE"}]
|
|
[main/main-screen]
|
|
(when show-form?
|
|
[add-todo/add-todo-form])]))
|
|
|
|
(defn start
|
|
{:dev/after-load true}
|
|
[]
|
|
(expo-root/render-root (r/as-element [root])))
|
|
|
|
(defn init []
|
|
(rf/dispatch-sync [:initialize-db])
|
|
(start))
|