Skip to content

Commit

Permalink
spec macros
Browse files Browse the repository at this point in the history
  • Loading branch information
roman01la committed Apr 27, 2018
1 parent fe0631f commit ce42561
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 2 deletions.
2 changes: 1 addition & 1 deletion example/src/example/core.cljs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
(:require [rum.core :as rum]
[cljss.core :as css :refer [inject-global]]
[cljss.rum :refer-macros [defstyled]]
[devcards.core :as dc :refer [defcard]]
[devcards.core :as dc :refer-macros [defcard]]
[sablono.core :refer [html]]))

;; utils
Expand Down
3 changes: 2 additions & 1 deletion src/cljss/core.clj
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
[cljss.builder :refer [status? build-styles]]
[cljss.collect :refer [dynamic?]]
[clojure.string :as cstr]
[sablono.cljss-compiler]))
[sablono.cljss-compiler]
[cljss.specs]))

(defn- ->status-styles [styles]
(let [status (filterv status? styles)
Expand Down
37 changes: 37 additions & 0 deletions src/cljss/specs.clj
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
(ns cljss.specs
(:require [clojure.spec.alpha :as s]))

(s/def ::defstyled-args
(s/cat :var symbol? :tag keyword? :styles map?))

(s/fdef cljss.core/defstyles
:args (s/cat :var symbol? :args vector? :styles map?)
:ret any?)

(s/fdef cljss.rum/defstyled
:args ::defstyled-args
:ret any?)

(s/fdef cljss.prum/defstyled
:args ::defstyled-args
:ret any?)

(s/fdef cljss.reagent/defstyled
:args ::defstyled-args
:ret any?)

(s/fdef cljss.om/defstyled
:args ::defstyled-args
:ret any?)

(s/fdef cljss.core/defkeyframes
:args (s/cat :var symbol? :args vector? :keyframes map?)
:ret any?)

(s/fdef cljss.core/font-face
:args (s/cat :descriptors map?)
:ret any?)

(s/fdef cljss.core/inject-global
:args (s/cat :styles map?)
:ret any?)

0 comments on commit ce42561

Please sign in to comment.