Skip to content

Instantly share code, notes, and snippets.

@geraldodev
geraldodev / client.cljs
Created June 26, 2022 12:55
root cljs app defining DataBrowserRouter from react-router
(ns crudis.client
(:require
["react-dom" :as rdom]
["react-dom/client" :refer [createRoot]]
["react-router-dom" :refer [DataBrowserRouter Route]]
[crudis.util.helix :refer [defnc]]
[crudis.ui.root :as root]
[crudis.ui.routes.countries :as countries]
[helix.core :refer [$]]
[helix.dom :as d]
(ns crudis.ui.root
(:require
["@tanstack/react-virtual" :refer [useVirtualizer]]
["react" :as React]
[goog.object :as gobj]
[helix.core :as hx :refer [defnc $ <> fnc]]
[helix.dom :as d :refer [div a button]]
[helix.hooks :as hooks :refer [use-state]]
[paqueta.fetch :as fetch] ;; lambdaisland fetch
))
@geraldodev
geraldodev / button.cljs
Created May 18, 2022 23:57
stitches button in cljs
(ns stitches.componentes.button
(:require
[applied-science.js-interop :as j]
[stitches.config :refer [styled jsvec-to-obj]]
))
(def Button
(styled
"button"
(jsvec-to-obj
@geraldodev
geraldodev / jsx_to_helix.clj
Created May 16, 2022 09:55
Generates helix clojurescript output of a React JSX input file. The files are defined on the input-jsx and output-clj variables. the executing function is on the first line of the comment
(ns jsx-to-helix.core
(:require
[clojure.data.xml :as xml]
[clojure.edn :as edn]
[clojure.java.io :as io]
[clojure.pprint :refer [pprint]]
[clojure.walk :as walk]
[superstring.core :as str]
)
(:import [clojure.data.xml.node Element]))
(ns stitches.componentes.heading
(:require
["lodash.merge" :as js-merge]
["react" :as React]
[applied-science.js-interop :as j]
[crudis.util.helix :refer [defnc]]
[helix.core :refer [$]]
[stitches.componentes.text :refer [Text]]
))
@geraldodev
geraldodev / helix-autocomplete.cljs
Last active November 27, 2020 17:58
Thin layer over mui autocomplete.
(ns app.helix_autocomplete
(:require
["@material-ui/lab/Autocomplete" :default Autocomplete]
["@material-ui/core/TextField" :default TextField]
["react" :as r]
[goog.object :as gobj]
))
(defnc AutocompleteHelix
@geraldodev
geraldodev / mui-autocomplete.cljs
Created November 20, 2020 17:48
mui Autocomplete with helix. The render-input node needs to be created with plain react
(ns app.ui.contratualizacao.regra
(:require
["@material-ui/lab/Autocomplete" :default Autocomplete]
["@material-ui/core/TextField" :default TextField]
["react" :as r]
[goog.object :as gobj]
))
($ ^:native
Autocomplete
@geraldodev
geraldodev / hooks.cljs
Last active October 6, 2020 19:49
extracted from helix zulip chat from a message of wilkerlucio
(ns app.util.hooks
(:require
["react" :refer [useState]]
))
(defn use-state
"A simple wrapper around React/useState. Returns a cljs vector for easy destructuring"
[initial-value]
(into-array (useState initial-value)))
@geraldodev
geraldodev / diff_excel_template.diff
Created June 16, 2020 00:41
;; dependencias de excel-templates joda-time/joda-time {:mvn/version "2.7"} org.clojure/data.zip {:mvn/version "0.1.1"} org.apache.poi/ooxml-schemas {:mvn/version "1.4"} ;; era 1.1 org.apache.commons/commons-lang3 {:mvn/version "3.4"}
diff build.clj ~/projetos/api/src/main/excel_templates/build.clj
6c6
< [org.apache.poi.ss.usermodel Cell Row DateUtil WorkbookFactory]
---
> [org.apache.poi.ss.usermodel Cell Row Row$MissingCellPolicy DateUtil WorkbookFactory CellType]
50c50
< (= (.getCellType cell) Cell/CELL_TYPE_FORMULA))
---
> (= (.getCellType cell) CellType/FORMULA))
63c63
(ns app.renderer.core
(:require
["@material-ui/core" :refer [AppBar Toolbar Badge Hidden IconButton]]
["@material-ui/core/Button" :default Button]
["@material-ui/core/styles" :refer [createMuiTheme makeStyles ThemeProvider]]
["react-dom" :as rdom]
[app.renderer.myhelix :refer [defnc]]
[helix.core :as hx :refer [$ <>]]
[helix.dom :as d]
))