Committed but unreleased changes are put here, at the top. Older releases are detailed chronologically below.
- Change colour of
:focus
outline on non-native components such asbutton
andsingle-dropdown
simple-v-table
sortable column icons now only appear on hover. Requires copying updatedre-com.css
to your project.
- Add parts to tag-dropdown for internal selection-list
- Add simple-v-table striped? argument
- Fix
re-com.core/at
macro availability via:refer
so you can now simply do:
(:require
[re-com.core :refer [at]])
- Fix
re-com.core/at
macro eliding (i.e. return nil) in production builds. - Fix logging of source urls in validation errors or
stack-spy
when nore-com.config/root-url-for-compiler-output
Closure Define is provided in the compiler configuration; i.e. do not log the URL as missing the required information to create a valid URL.
- Fix
datepicker-dropdown
exception. Regression in 2.13.0.
When upgrading any app to use this version, please update the following:
re-com.css
css/material-design-iconic-font.min.css
fonts/Material-Design-Iconic-Font.eot
fonts/Material-Design-Iconic-Font.svg
fonts/Material-Design-Iconic-Font.ttf
fonts/Material-Design-Iconic-Font.woff
fonts/Material-Design-Iconic-Font.woff2
- Add new debugging features, including the new
:src
parameter. The debug page explains more. Note: where previously parameter validation errors raised exceptions, now components instead draw themselves as a red, placeholder box, and write error information to the devtools console. This is a gentler, more informative approach - exceptions are too jarring and result in a blizzard of confusing React stack traces in the console. - Add a new compiler configuration
re-com.config/root-url-for-compiler-output
. The config page explains more. - Add column sorting feature to
[simple-v-table]
. Column specifications can now, optionally include a:sort-by
key. - Add new arguments to
[tag-dropdown]
including:required?
,:min-width
,:max-width
,:abbrev-fn
and:abbrev-characters
. - Add the argument
:split-is-px?
to[splitter]
. See #178 - Add year navigation buttons to
[datepicker]
. See #109 Breaking the HTML structure for thedatepicker
navigation section was changed and certain CSS classes have been renamed/changed. If you have custom CSS selectors targeting these parts, you'll need to edit as follows:available
torc-datepicker-selectable
disabled
torc-datepicker-disabled
off
torc-datepicker-unselectable
(for unselectable days) orrc-datepicker-out-of-focus
(for days not in the current month)selected
torc-datepicker-selected
today
torc-datepicker-today
.
- Previously, the argument and parts description data structures (for each component) were incorrectly included into production builds. This is now fixed.
(i.e. when
js/GOOG.debug
is false). [datepicker]
week number calculation with arbitrary:start-of-week
argument. See #159[tag-dropdown]
popover alignment is now centered under the component, rather than off to the left.- Fix the
disabled? true
state styling of[tag-dropdown]
- Fix the
disabled? true
state styling of[datepicker]
[alert-list]
no longer ignores individual alert:style
argument. See #83
[text/p]
is now an alias to[text/p-span]
. Externally this means no change. But interally, it is implemented using[:span]
instead of[:p]
(allowing you to embedboxes
etc). Breaking Because of the change in HTML elements used, your custom CSS selectors targettingp
elements will have to be changed to targetspan.rc-p
.
- Breaking
- Removed the
tag-dropdown
arguments:tag-width
,:tag-height
,:tag-comp
and:on-tag-click
. To fix, remove use of these arguments from your code. - Changed default of
:unselect-buttons?
tofalse
, if you want to maintain the old behaviour then add:unselect-buttons? true
to the arguments passed to the component.
- Removed the
Both of these components are still Alpha
. Iterative improvements have continued
causing some breaking changes.
- Breaking:
-
Argument renames. This will break any CLJS code that pass the arguments to the components. To fix, change the arg to use the new name:
:header-renderer
arg ofsimple-v-table
to:column-header-renderer
:max-table-width
arg ofv-table
andsimple-v-table
to:max-width
:scroll-cols-into-view
arg ofv-table
to:scroll-cols-into-view
:col-header-renderer
arg ofv-table
to:column-header-renderer
:col-header-height
arg ofv-table
to:column-header-height
:col-header-selection-fn
arg ofv-table
to:column-header-selection-fn
:parts
args that match:v-table-*
to:*
(in other words, removev-table-
):parts
args that match:*-col-*
to:*-column-*
:id-fn
arg has been renamed:key-fn
and its default has been changed from:id
tonil
. If you leave it blank or pass nil, it will use the row's internally generated 0-based row-index instead of :key-fn:style-parts
arg ofv-table
to:parts
- Then wrap any style maps in a map with a key of
:style
. For example::style-parts {:v-table {:background-color "lightgrey"}} ;; becomes... :parts {:wrapper {:style {:background-color "lightgrey"}}} ;; notice, the above also included a :v-table => :wrapper conversion
- Then wrap any style maps in a map with a key of
-
Rename
:valign
insimple-v-table
:columns
specification to:vertical-align
to match the associated CSS property. Fix the documentation and demos of the same. -
:attr-parts
arg ofv-table
has been removed. You need to incorporate it into the:parts
arg. For example::attr-parts {:v-table-top-left {:on-click (handler-fn ...)}} ;; becomes... :parts {:top-left {:attr {:on-click (handler-fn ...)}}} ;; notice, the above also included a :v-table-top-left => :top-left conversion
-
- Fix v-table as
:model
deref was broken in last release. - Fix
[multi-select]
and[selection-list]
scrolling whendisabled?
- Fix
[datepicker]
styling of disabled/unselectable vs days out of the current month
- Breaking
- Remove
re-com.misc
ns. Replaced byre-com.checkbox
,re-com.input-text
,re-com.radio-button
,re-com.slider
,re-com.progress-bar
andre-com.slider
. If you requirere-com.misc
directly in your code, instead of using the aliases inre-com.core
, then you will need to change that to the appropriate new namespace reference(s).
- Remove
- Add
:parts
argument to all components that are constructed from a hierarchy of elements. See 'Parts' section of component pages at https://re-com.day8.com.au/. - Add
multi-select
. See https://re-com.day8.com.au/#/multi-select. - Add
v-table
andsimple-v-table
. See https://re-com.day8.com.au/#/v-table and https://re-com.day8.com.au/#/simple-v-table. - Add
tag-dropdown
. See https://re-com.day8.com.au/#/tag-dropdown. - Add optional 2-arity variant of
on-change
toinput-text
. Fixes #219.
- Improved
disabled?
styling of many components.
- Change popover-anchor-wrapper to allow the use of values in
showing?
. See #153
- Add 15 new attributes and 1 fix to single-dropdown. See #202
- Add datepicker i18n and ability to set its width. See #201
- Add :on-alter to input-text-base. See #200
- Add tooltip to horizontal-bar-tabs & :validate?. See #199
- Remove reset! of external-model in input-text-base event handlers. Fixes #219 Caused regression of #187. Fixed in 2.11.0.
- Fix consistency of
disabled?
arg - Fix CSS comment syntax. See #222.
- Fix typeahead not taking external changes into account. See #206
- Upgrade ClojureScript to 1.10.773
- Upgrade shadow-cljs to 2.10.19
- Upgrade core.async to 1.3.610
- Fix Reagent deprecation warning
- Fix #212 - Warning/future error in React 16 (also improved the tab-index demo)
- Fix bug where single-dropdown was optimistically updating the model and ignoring any model validation/changes made by the caller (same bug was fixed in input-text a while back: commit ebad92bc)
- Fix invalid markup in dropdown async demo
- Fix "validateDOMNesting(...): div cannot appear as a descendant of p" warning in info-button demo
- Fix #185. Also added other new html attributes and new css styles
- Remove ^:const references as this compile error was appearing in the demo: thheller/shadow-cljs#708
- Fix potential 'Cannot find local Karma!' error on GitHub Actions
- Upgrade reagent to 0.10.0
- Use
reagent.impl.component/component-name
instead ofcomponent-path
which has been removed upstream. - Use
reagent.dom/dom-node
instead of deprecatedreagent.core/dom-node
.
- Default index for
lein dev-auto
HTTP server is nowindex_dev.html
instead of a 404 error. Thanks to @mmower's report on Clojurians.
- Upgrade reagent to 0.9.1
- Upgrade shadow-cljs to 2.8.80
- Upgrade ClojureScript to 1.10.597
- Upgrade karma to 4.4.1
- Upgrade org.clojure/core.async to 0.7.559
- Upgrade binaryage/devtools to 1.0.0
- Fix typeahead does not take external model changes into account anymore. See #205.
- Migrate to shadow-cljs and lein-shadow