Clean up project code.
This commit is contained in:
parent
320285df1e
commit
ddd88b4aad
2
deps.edn
2
deps.edn
|
@ -9,4 +9,4 @@
|
||||||
com.bhauman/figwheel-main {:mvn/version "0.2.1-SNAPSHOT"}
|
com.bhauman/figwheel-main {:mvn/version "0.2.1-SNAPSHOT"}
|
||||||
cider/piggieback {:mvn/version "0.4.0"}
|
cider/piggieback {:mvn/version "0.4.0"}
|
||||||
com.bhauman/rebel-readline-cljs {:mvn/version "0.1.4"}}
|
com.bhauman/rebel-readline-cljs {:mvn/version "0.1.4"}}
|
||||||
:paths ["app" "src" "resources"]}
|
:paths ["src" "resources"]}
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
{:target-dir "app/data"
|
{:target-dir "resources"
|
||||||
:watch-dirs ["src"]}
|
:watch-dirs ["src"]}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{:output-to "app/data/main.js"
|
^{ :open-url "http://127.0.0.1:9500/prod.html"}
|
||||||
:output-dir "app/data/"
|
{:output-to "resources/public/main.js"
|
||||||
:asset-path "app/data/",
|
:optimizations :advanced
|
||||||
:optimizations :advanced
|
|
||||||
:main weecfg.core}
|
:main weecfg.core}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
var CLOSURE_UNCOMPILED_DEFINES = {"figwheel.repl.connect_url":"ws:\/\/localhost:9500\/figwheel-connect?fwprocess=094d2d&fwbuild=dev"};
|
var CLOSURE_UNCOMPILED_DEFINES = {"figwheel.repl.connect_url":"ws:\/\/localhost:9500\/figwheel-connect?fwprocess=226ccd&fwbuild=dev"};
|
||||||
var CLOSURE_NO_DEPS = true;
|
var CLOSURE_NO_DEPS = true;
|
||||||
if(typeof goog == "undefined") document.write('<script src="/cljs-out/dev/goog/base.js"></script>');
|
if(typeof goog == "undefined") document.write('<script src="/cljs-out/dev/goog/base.js"></script>');
|
||||||
document.write('<script src="/cljs-out/dev/goog/deps.js"></script>');
|
document.write('<script src="/cljs-out/dev/goog/deps.js"></script>');
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
[{:name "server" :title "Server" :placeholder "127.0.0.1"
|
{:title "GASP Sensor setup"
|
||||||
|
:fields [{:name "server" :title "Server" :placeholder "127.0.0.1"
|
||||||
:validator "server-type"
|
:validator "server-type"
|
||||||
:error "Invalid server address"}
|
:error "Invalid server address"}
|
||||||
{:name "device-id" :title "Device Unique ID" :placeholder "AAAA"
|
{:name "device-id" :title "Device Unique ID" :placeholder "AAAA"
|
||||||
|
@ -9,4 +10,4 @@
|
||||||
:error "Invalid SSID"}
|
:error "Invalid SSID"}
|
||||||
{:name "wifi-key" :title "WIFI Password"
|
{:name "wifi-key" :title "WIFI Password"
|
||||||
:validator "wifi-key-type"
|
:validator "wifi-key-type"
|
||||||
:error "Invalid wifi password" :type "password"}]
|
:error "Invalid wifi password" :type "password"}]}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html class="h-100 bg-green" lang="en">
|
||||||
|
<head>
|
||||||
|
<title>Device setup</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<link rel="stylesheet" href="tachyon.css" type="text/css"/>
|
||||||
|
<link rel="stylesheet" href="all.min.css" type="text/css"/>
|
||||||
|
</head>
|
||||||
|
<body class="h-100">
|
||||||
|
<div id="app" class="h-100"><i class="fas fa-spinner"></i>Loading</div>
|
||||||
|
<script src="main.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -1,9 +1,8 @@
|
||||||
(ns weecfg.core
|
(ns weecfg.core
|
||||||
(:require [accountant.core :as accountant]
|
(:require [accountant.core :as accountant]
|
||||||
[clojure.spec.alpha :as s]
|
[ajax.core :refer [GET]]
|
||||||
[cognitect.transit :as t]
|
|
||||||
[clojure.edn :refer [read-string]]
|
[clojure.edn :refer [read-string]]
|
||||||
[ajax.core :refer [GET, POST]]
|
[clojure.spec.alpha :as s]
|
||||||
[reagent.core :as reagent :refer [atom]]
|
[reagent.core :as reagent :refer [atom]]
|
||||||
[reagent.session :as session]
|
[reagent.session :as session]
|
||||||
[reitit.frontend :as reitit]))
|
[reitit.frontend :as reitit]))
|
||||||
|
@ -12,11 +11,11 @@
|
||||||
(defonce form-errors (atom nil))
|
(defonce form-errors (atom nil))
|
||||||
(defonce form-title "GASP Sensor setup")
|
(defonce form-title "GASP Sensor setup")
|
||||||
(defonce form-data (atom {:server "" :device-id "" :wifi-ssid "" :wifi-key ""}))
|
(defonce form-data (atom {:server "" :device-id "" :wifi-ssid "" :wifi-key ""}))
|
||||||
(defonce form-layout (atom []))
|
|
||||||
(defonce device-id-regex #"[A-Za-z0-9]{4}")
|
(defonce device-id-regex #"[A-Za-z0-9]{4}")
|
||||||
(defonce ssid-regex #"^[!#;].|[+\[\]\"\t\s].*$")
|
(defonce ssid-regex #"^[!#;].|[+\[\]\"\t\s].*$")
|
||||||
|
|
||||||
; spec validation definitions
|
; spec validation definitions
|
||||||
|
(s/def ::boolean-type boolean?)
|
||||||
(s/def ::size-test #(<= (count %) 2))
|
(s/def ::size-test #(<= (count %) 2))
|
||||||
(s/def ::ssid-size-limit #(<= (count %) 32))
|
(s/def ::ssid-size-limit #(<= (count %) 32))
|
||||||
(s/def ::default-size-limit #(<= (count %) 50))
|
(s/def ::default-size-limit #(<= (count %) 50))
|
||||||
|
@ -89,11 +88,17 @@
|
||||||
{:response :transit
|
{:response :transit
|
||||||
:format :transit
|
:format :transit
|
||||||
:error-handler handle-failure
|
:error-handler handle-failure
|
||||||
:handler (fn [response] (reset! form-fields (read-string response)))}))
|
:handler (fn [response]
|
||||||
|
(let [form (read-string response)
|
||||||
|
title (:title form)
|
||||||
|
fields (:fields form)]
|
||||||
|
|
||||||
|
(reset! form-fields form-title)
|
||||||
|
(reset! form-fields fields)))}))
|
||||||
|
|
||||||
;submit the data as raw post data
|
;submit the data as raw post data
|
||||||
(defn form-submit [data]
|
(defn form-submit [data]
|
||||||
(POST "/submit"
|
(GET "/save"
|
||||||
{:params @data
|
{:params @data
|
||||||
:error-handler handle-failure
|
:error-handler handle-failure
|
||||||
:format :raw
|
:format :raw
|
||||||
|
@ -141,11 +146,13 @@
|
||||||
; give a browser route load the relevant defn handler
|
; give a browser route load the relevant defn handler
|
||||||
(defn page-for [route]
|
(defn page-for [route]
|
||||||
"Map your route keys to pages here"
|
"Map your route keys to pages here"
|
||||||
|
(print route)
|
||||||
(case route
|
(case route
|
||||||
:index #'home-page
|
:index (var home-page)
|
||||||
:error #'home-page
|
;:error #'home-page
|
||||||
:success #'success-page
|
:success (success-page)
|
||||||
:about #'about-page))
|
:about (var about-page)
|
||||||
|
(var home-page)))
|
||||||
|
|
||||||
; default page wrapper html
|
; default page wrapper html
|
||||||
(defn current-page []
|
(defn current-page []
|
||||||
|
@ -153,10 +160,10 @@
|
||||||
(let [page (:current-page (session/get :route))]
|
(let [page (:current-page (session/get :route))]
|
||||||
[:div.bg-green.flex.justify-center.items-center.h-100
|
[:div.bg-green.flex.justify-center.items-center.h-100
|
||||||
[:div.w-25
|
[:div.w-25
|
||||||
[:a.athelas.f3.link.white-70.hover-white.no-underline.flex.items-center.pa3
|
|
||||||
{:href "/"}
|
|
||||||
[:h2.w-100
|
[:h2.w-100
|
||||||
[:a.link.fr.black {:href (path-for :about)} [:i.fas.fa-question-circle]]
|
[:a.link.fr.black {:href (path-for :about)} [:i.fas.fa-question-circle]]
|
||||||
|
[:a.athelas.f3.link.white-70.hover-white.no-underline.flex.items-center.pa3
|
||||||
|
{:href "/"}
|
||||||
[:i.fas.fa-surprise.mr3] "GASP Sensor setup"]]
|
[:i.fas.fa-surprise.mr3] "GASP Sensor setup"]]
|
||||||
[page]]])))
|
[page]]])))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue