Skip to content

Instantly share code, notes, and snippets.

View souenzzo's full-sized avatar
🚴‍♂️
💨 💨

Enzzo souenzzo

🚴‍♂️
💨 💨
View GitHub Profile
@souenzzo
souenzzo / cola.edn
Created June 20, 2020 17:52
lambda-io.demo
;; hello eql
[:app/hello]
;; data->shape
{:app/hello "ok"}
{:app/hello "ok"
:app/users [{:user/id 1
:user/username "2"
:user/addresses [{:address/description "a"
:address/number 1}]}]}
(let [conn (doto (ds/create-conn {:user/addresses {:db/valueType :db.type/ref
:db/cardinality :db.cardinality/many}
:user/id {:db/unique :db.unique/identity}})
(ds/transact! [{:user/id 1
:user/addresses [-1 -2]}
{:user/id 2
:user/addresses [-2 -3]}
{:user/id 3
:user/addresses [-4]}
{:db/id -1
(ns com.wsscode.pathom.diplomat.http.java-http
(:require [com.wsscode.pathom.diplomat.http :as http]
[clojure.spec.alpha :as s]
[clojure.core.async :as async]
[clojure.string :as string]
[clojure.data.json :as json])
(:import (java.net.http HttpResponse$BodyHandlers HttpRequest HttpClient HttpResponse HttpHeaders HttpRequest$BodyPublishers)
(java.net URI)
(java.util.function Function BiPredicate)
(java.util Optional)))
@souenzzo
souenzzo / pathom.clj
Created January 10, 2020 18:02
pathom vs select-keys
(let [parser (p/parser {::p/plugins [(pc/connect-plugin {::pc/register [(pc/constantly-resolver ::f 42)]})]})
env {::p/reader [p/map-reader
pc/reader2]}
query [::f]
m {::f 42}]
(doseq [[k v] {:map-select #(p/map-select m query)
:parser #(parser env query)
:select-keys #(select-keys env query)}]
(prn k)
(dotimes [i 5]
@souenzzo
souenzzo / pr.clj
Created November 20, 2019 20:20
Run with "clj -A:dev -m user.pr" or "clj -A:pr"
(ns user.pr
(:require [cognitect.aws.client.api :as aws]
[clj-http.client :as http]
[clojure.java.io :as io])
(:import (org.eclipse.jgit.api Git)))
(defn slack->request
[text]
{:method :post
:url "https://hooks.slack.com/services/XX/YY/ZZ"
@souenzzo
souenzzo / find-unused-deps.clj
Created November 4, 2019 17:09
!!!! QUCK'n'DIRTY SOLUTION !!!!
(let [{:keys [namespace-usages]} (:analysis (kondo/run! {:lint ["src/main"
"src/old"]
:config {:output {:analysis true}}}))
url->splited-path #(into []
(comp (map (memfn getFileName))
(map str)
(take-while (complement string/blank?)))
(iterate (fn [x] (when x (.getParent x)))
(Paths/get (new URI (-> (str %)
(string/replace #"^jar\:"
(let [atributo->item {:a {:atributo :a
:selecionado? true}
:b {:atributo :b
:selecionado? false}
:c {:atributo :c}}]
{:reduce (reduce-kv (fn [acc k {:keys [selecionado?]}]
(if (false? selecionado?)
acc
(conj acc k)))
#{}
(ns exemplo
(:require [io.pedestal.http :as http]))
(def routes ::invalid)
(def server-build-time
(-> {::http/type :jetty
::http/routes routes
::http/port 8080}
http/default-interceptors
(ns tiny-om.client
(:require ["react" :as r]
[goog.dom :as gdom]
["react-dom" :as r.dom])
(:require [clojure.core.async :as async]))
(defn el
[app type props & children]
(apply r/createElement (name type) (clj->js props) children))