(ns ^:figwheel-load $PROJECT_NAME_HYPHENATED$.$PLATFORM$.core (:require-macros [env.require-img :refer [require-img]]) (:require [reagent.core :as r :refer [atom]] [re-frame.core :refer [subscribe dispatch dispatch-sync]] [$PROJECT_NAME_HYPHENATED$.handlers] [$PROJECT_NAME_HYPHENATED$.subs])) (set! js/React (js/require "react-native/Libraries/react-native/react-native.js")) (def app-registry (.-AppRegistry js/React)) (def text (r/adapt-react-class (.-Text js/React))) (def view (r/adapt-react-class (.-View js/React))) (def image (r/adapt-react-class (.-Image js/React))) (def touchable-highlight (r/adapt-react-class (.-TouchableHighlight js/React))) (def logo-img (require-img "./images/cljs.png")) (defn alert [title] (.alert (.-Alert js/React) title)) (defn widget [] (let [greeting (subscribe [:get-greeting])] (fn [] [view {:style {:flex-direction "column" :margin 40 :align-items "center"}} [text {:style {:font-size 30 :font-weight "100" :margin-bottom 20 :text-align "center"}} @greeting] [image {:source logo-img :style {:width 80 :height 80 :margin-bottom 30}}] [touchable-highlight {:style {:background-color "#999" :padding 10 :border-radius 5} :on-press #(alert "HELLO!")} [text {:style {:color "white" :text-align "center" :font-weight "bold"}} "press me"]]]))) (defn mount-root [] (r/render [widget] 1)) (defn ^:export init [] (dispatch-sync [:initialize-db]) (.registerRunnable app-registry "$PROJECT_NAME$" #(mount-root)))