- Add
LargeTextEditor
to enable more options for predefined editors likeagLargeTextCellEditor
- Moved
SelectionEdtior
to theCellEditor
type.
- Fix: Update table with empty row data
- Add
Column
custom type to differentiate between columns and column groups - Add
ColumnGroups
Note: Now the column needs to be wrapped into an AgGrid.Column
constructor.
- Use AgGrid default bool renderer
- Listening for
editRequest
to handle cell changes
- Add
lockPinned
toColumnSettings
- Add
columnHoverHighlight
androwHoverHighlight
toGridConfig
- Add
suppressAggFuncInHeader
toGridConfig
- Add
pinned
toGridConfig.autoGroupColumnDef
- Add
autoHeight
andwrapText
toColumnSettings
- Added
rowClassRules
toGridConfig
- Added
onCellClick
event listener for single cell clicks.
- Changed the
cssClasses
attribute on the custom context menu actions fromList String
toList (List String, Eval Bool)
to apply certain CSS styles conditionally. This behaviour is similar to theclassList
of the elm/html package.
- Added
cssClasses
attribute to context menu action - Added
floatingFilter
attribute to ColumnDefs
- ColumnDefs now support a FilterType
DateFilter
, which makes AGGrid intrepret the column as having dates and offering date type specific filtering with date pickers etc. - Fix: FilterStates as emitted by the
onFilterChanged
event are now encoded to handle all known cases from the AGGrid docs.
- Convert width from an
Int
to aFloat
type on theColumnSettings
andColumnState
. This fixes an issue where a column with a float width would fail the ColumnState decoder.
- Added
flex
,pivot
,pivotIndex
,rowGroupIndex
,sort
, andsortIndex
toColumnSettings
- Using
ColumnState
passed toGridConfig
to override theColumnDefs
passed to the grid view. This allows theColumnDefs
to be updated after the component is rendered without overwriting the column states. This resolves a column state caching issue. - Added
ResetColumns
as column state event
- Add
maintainColumnOrder
toGridConfig
- BREAKING_CHANGE: Submenu actions of a custom ContextAction no longer need to be wrapped with
ChildContextAction
- Percentage formatting now reflects the defined decimal value correctly - e.g. the float
15.5678
with givendecimalPlaces = 2
will be15.57
- BREAKING CHANGE: Removed
percentFilterValueGetter
- BREAKING CHANGE:
PercentRenderer
now requires the value to be the percentage (e.g."15" == 15%
, before this was given as decimal0.15
). The value in the editor will also be the percentage (15
).
- Exposing
AgGrid.ValueFormat
module
- Changed default
filter
onColumnDef
to the newDefaultFilter
variant (wasSetFilter
). TheDefaultFilter
will determine a default filter and filterValueFormatter by the column renderer. The default values can be overriden by explicitely setting a differentfilter
orfilterValueGetter
.
- Added
bool
andlist
literal for expressions.
- Added
customCellEditor
attribute onColumnSettings
. This allows to alter the cell editor used for the column. - Added
csvExport
andexcelExport
onGridConfig
. This allows to configure the export capabilities for the grid.
- Changed
cellClassRules
attribute onColumnSettings
. The values are now provided as tuple, more similarly toclassList
, where the first value is the class and the second value is the condition (asExpression
type). This provides more consistency using the same kind of expression throughout the code and allows to reuse the expressions on different attributes.
- Added
cellClassRules
toColumnSettings
- Changed
editable
from a boolean to an expression (default will beExpression.Const False
)
- Add
autoHeaderHeight
andwrapHeaderText
toColumnSettings
- Exposing
not
operator utility function fromAgGrid.Expression
- Exposing
AgGrid.ContextMenu
module. - Exposing
AgGrid.Expression
module.
- Added
contextMenu
toGridConfig
- Added
AgGrid.ContextMenu
module with predefined context menu actions fromAgGrid
- Added
AgGrid.Expression
module to evaluate javascript expressions in a safer way.
- Added
ColumnVisible
event type for GridState changes
- Exposing the
ColumnSettings
type alias.
- Added
rowId
toGridConfig
allowing to configure a custom rowId depending on a data attribute
- Added
suppressRowDeselection
androwMultiSelectWithClick
attributes to theGridConfig
- Added
selectedIds
to theGridConfig
allowing to preset a item selection - Added
onSelectionChange
event to read the current selection whenever the selection changes
- Fix format of zero values when using Currency/Decimal/Percentage formatter.
We added some more properties to the GridConfig
and the ColumnSettings
to control the row selection in the table. Since this changes the two types this is a major update. But if you have been using the defaultSettings
and defaultGridConfig
then there is no change needed to the configurations.
- Added
checkboxSelection
,headerCheckboxSelection
,lockPosition
, andshowDisabledCheckboxes
properties to theColumnSettings
- Added
groupSelectsChildren
,isRowSelectable
,rowSelection
, andsuppressRowClickSelection
properties to theGridConfig
- Added the
CustomAggregation
variant to theAggregation
type in order to use custom aggregations
Requires at least version 3.0.0 of the elm-ag-grid
NPM package.
- Removed the
allowColResize
property on theGridConfig
. This is now configured per column individually by settingresizable
on theColumnSettings
. - Added
filterParams
androwGroup
to theColumnSettings
- Added
groupDefaultExpanded
to theGridConfig
to control how many levels of groups are expanded by default - Added
autoGroupColumnDef
to theGridConfig
to customize the group-column appearance - Added
rowGroupPanelShow
to theGridConfig
to enable the RowGroupPanel
- Bugfix
DecimalRenderer
andPercentRenderer
aggregation by casting the cell values as numbers.
- Changed the
Renderer
type by adding a newCurrencyRenderer
,DecimalRenderer
, andPercentRenderer
to format cell values into localized strings - Changed the
sidebar
attribute on theGridConfig
to a record. The sidebar type has moved into the record on thepanels
attribute - which is now a listing of all enabled toolbar panels. The equivalent values are:AgGrid.ColumnSidebar
is now{ defaultSidebar | panels = [AgGrid.ColumnSidebar] }
AgGrid.FilterSidebar
is now{ defaultSidebar | panels = [AgGrid.FilterSidebar] }
AgGrid.BothSidebars
is now{ defaultSidebar | panels = [AgGrid.ColumnSidebar, AgGrid.FilterSidebar] }
AgGrid.NoSidebar
is now{ defaultSidebar | panels = [] }
- which is already the default and therefore doesn't need to be set explicitly- The default sidebar behaves exactly like the default sidebar setting before
- Added
aggFunc
as column settings to define an Aggregation (Average, Sum, Min, Max, ...) for the column values. - Further, added column settings options for
filterValueGetter
,minWidth
,valueGetter
,valueFormatter
,valueParser
, andvalueSetter
- Added
groupIncludeFooter
andgroupIncludeTotalFooter
to the GridConfig, allowing to display a footer with aggregated values
- Added a new
GroupRenderer
for grouping rows, allowing usage of MasterDetail - Added a
detailRenderer
to theGridConfig
to render a row's detailed view
- Added a new
ColumnState
/FilterState
type (as well as events, decoder, and encoder) to evaluate or persist table states to an external storage - Added a
columnState
andfilterState
attribute to theGridConfig
to apply a certain table state (order of columns, sorting, etc.) that might have been persisted externally before
Requires at least version 1.1.0 of the elm-ag-grid
NPM package.
- Added new renderer type to render
Float
andMaybe Float
values into cells (AgGrid cellRenderer)
Requires at least version 1.1.0 of the elm-ag-grid
NPM package.
- Added new renderer type to render custom Elm views into the cells (AgGrid cellRenderer)