(ns bigml-nodered-core.whizzml
  (:require [bigml-nodered-core.wz :as wz]
            [bigml-nodered-core.wz.tasks :as tasks]
            [bigml-nodered-core.wz.marshal :as marshal]
            [bigml-nodered-core.utils :as utils])
  (:require-macros [bigml-nodered-core.macros :as macros]))

(defn- create-node []
  (macros/create-node
   "WhizzML"
   tasks/wz-wrap
   {:name "WhizzML"
    :main "whizzml-node"
    :in ["source"]
    :out ["result"]
    :options
    [["Name" {:type :text,
              :value "WhizzML",
              :required true
              :internal true }]
     ["WhizzML"
      {:type :text
       :placeholder "((fetch result) \"tags\")"
       :help "A WhizzML script."}]
     ["Reify" {:type :boolean
               :value true
               :internal true }]]}))

;; (jsassoc js/module "exports" { :input input }) 
(set! (.-exports js/module) (utils/export-nodes { "whizzml_node" (create-node)}))
