Task Board – Change Log
Version 5.3.1
2023-03-17API CHANGES
- Date parsing was made more forgiving in regard to character used to separate date parts. For example these strings are
now all acceptable as
HH:mm
:10:20
,10 20
,10-20
,10/20
(#6344)
BUG FIXES
Version 5.3.0
2023-03-02FEATURES / ENHANCEMENTS
- TaskBoard now supports partial virtualized rendering, which improves performance when using thousands of tasks. Enable
the new
virtualized
config to activate this mode. When doing so, note that since the full height of all tasks is not known, the scrollbar will be jittery as you scroll. Be supplying agetTaskHeight()
function that returns the height of all tasks, the full height will be known and scrolling will be smooth (#3414, #6172) - The CSS with predefined colors for
Button
,Checkbox
,Radio
,SlideToggle
&Toast
was changed to reduce file sizes (cuts away ~20% of the size of TaskBoard's standalone CSS-bundles), while also making it easier for us to add more colors in the future - Localization demos updated to show up-to-date localization approach
- Lots (but not all) of the not so informative
object
types in our TypeScript typings have been replaced with more specific types. Objects that in our JavaScript are used as maps are now declared asRecord<keyType, valueType>
, and for functions that accept object arguments many are replaced with anonymous type declarations, such as{ foo: string, bar: number }
(Partially fixed #5176) - Buttons for collapsing and expanding columns and swimlanes are now keyboard accessible. Also applies to task menu buttons in the cards (#6170)
AjaxHelper.fetch
now supports using request body to pass parameters for non-GET requests. Please checkaddQueryParamsToBody
argument in the method documentation (#2855)
API CHANGES
- DEPRECATED
LocaleManager.registerLocale
andLocaleManager.extendLocale
are deprecated.LocaleHelper.publishLocale
should be used instead.
LOCALE UPDATES
- Locales format and process for applying locales have been simplified
- New locales for 31 languages have been added. Currently available languages are listed in the localization guide (Guides/Customization/Localization)
BUG FIXES
- #6273 – TaskBoard does not apply the
TaskModel
's cls field to the card in the DOM
Version 5.2.10
2023-02-17API CHANGES
- Recently browsers have added support for Unicode 15, which changes the output of
Intl.DateTimeFormat
when formatting time to includeAM
/PM
. Those browsers now use "thin space" (\u202f
) instead of regular space. This affects theDateHelper.format()
function, but likely you do not need to take any action in your application. It also affectsDateHelper.parse()
, which has been updated to support the new unicode space (#6193)
Version 5.2.9
2023-01-30FEATURES / ENHANCEMENTS
- The
backend-sync
demo was updated to be compatible with PHP 8.2
BUG FIXES
- #6019 – TypeScript Feature classes and configs have
on
event handlers exposed on owner class
Version 5.2.8
2023-01-19BUG FIXES
- #5386 – Improved panel collapse animation when collapsed panel header is perpendicular to expanded
Version 5.2.7
2023-01-11FEATURES / ENHANCEMENTS
- Internal code improvements and bugfixes
Version 5.2.6
2022-12-28FEATURES / ENHANCEMENTS
- REACT React wrapper now supports React components in widgets and tooltips (#774)
BUG FIXES
- #5784 – TaskBoard UI should respect the
singleAssignment
flag
Version 5.2.5
2022-12-16BUG FIXES
Version 5.2.4
2022-11-28FEATURES / ENHANCEMENTS
- We recently launched a new homepage over at bryntum.com, and have now slightly updated the styling for demos and docs to better match it (new logo, new header color, new font). Please note that this is not a change to our themes, only the look of the demos, and it won't affect your application
- Added
beforeSave
(preventable),save
,beforeCancel
(preventable) andcancel
events to theTaskEdit
feature (#5448)
BUG FIXES
- #5595 – Fix panel collapse icon directions
Version 5.2.3
2022-11-17BUG FIXES
Version 5.2.2
2022-11-08API CHANGES
- DEPRECATED The behaviour of the
store.data
getter will be changed in 6.0. Currently, it returns the **initial** raw dataset, in 6.0 it will be changed to have the more expected behaviour of returning the data objects for the **current** state instead. See Grid's upgrade guide for more information (#5499)
Version 5.2.1
2022-10-28FEATURES / ENHANCEMENTS
- The
showMenuFor
function in theTaskMenu
feature was made public. It now also accepts a CSS selector to show the menu aligned to a specific element in the task's card (#5320)
BUG FIXES
- #5149 – Angular demos now use component-local styles using
ViewEncapsulation.None
Version 5.2.0
2022-10-13FEATURES / ENHANCEMENTS
- Added a new
isTaskSelectable
config, to which you can supply a fn used to determine if a task is selectable in the UI, matching theisEventSelectable
functionality in Scheduler (#4213) - Added a
showCollapseTooltip
config, allowing apps to opt out of the tooltip shown when hovering the expand/collapse button for columns and swimlanes (#4818) - Menu has a
separator
config to make it easier to visually separate menu items - The responsive state objects used in the
responsive
config of theResponsive
mixin now support aonce
property to allow configs to only be set on first activation of the state - The
Core.helper.DateHelper
class has a new methodformatRange
method which can format date ranges, as well as new formatting options for week numbers
BUG FIXES
- #5245 – Too low contrast on buttons in dark theme
Version 5.1.5
2022-10-12FEATURES / ENHANCEMENTS
- New records are assigned a generated
id
if none is provided. The generatedid
is meant to be temporary (a phantomid
), and should be replaced by the backend on commit. Previously theid
was based on a global counter incremented with each assignment. That simplistic scheme assured no two records got the sameid
during a session, but if an application serialized the generatedid
(note, they should not) and then reloaded it, it would eventually collide with a new generatedid
. To prevent this, the generatedid
s are now based on a random UUID instead - Stores now by default show a warning on console when loading records that has generated
id
s, as a reminder that it should be replaced by the backend on commit
BUG FIXES
Version 5.1.4
2022-09-29API CHANGES
- Added
renderTasks
event which is triggered when all tasks in the task board are rendered (#5224)
BUG FIXES
Version 5.1.3
2022-09-09BUG FIXES
Version 5.1.2
2022-08-29FEATURES / ENHANCEMENTS
- Configs that accept configuration options for a widget (or other class) are now (mostly) documented to accept a typed
config object rather than a plain object. For example instead of
{Object} tooltip - A tooltip configuration object
, it is now{TooltipConfig} tooltip - A tooltip configuration object
. This improves our TypeScript typings (transforms toPartial<TooltipConfig>
in typings) when using such configs, but also improves our docs by linking to the configs of the type
BUG FIXES
Version 5.1.1
2022-07-28BUG FIXES
- #4966 – TaskBoard
taskboard.module.wc
bundle with WebComponents doesn't export all classes
Version 5.1.0
2022-07-21FEATURES / ENHANCEMENTS
- Our TypeScript typings for string types that have a predefined set of alternatives was improved to only accept
those alternatives. For example previously the
dock
config which was previously declared asdock: string
is nowdock : 'top'|'right'|'bottom'|'left'
- Create React App templates now available
- Configuring the crud manager functionality of the project was made a little easier by introducing shortcuts for
setting load and sync urls using the new
loadUrl
andsyncUrl
configs - Updated the built-in version of FontAwesome Free to
6.1.1
KeyMap
is a mixin that allows for standardized and customizable keyboard shortcuts functionality.KeyMap
is by default mixed in toWidget
and therefore available to allWidget
's child classes. There is a new guide **Guides/Customization/Keyboard shortcuts** describing how to customize currently integrated keyboard shortcuts (#4300, #4313, #4328)- Project optionally allows
sync()
calls without local changes, to retrieve changes from the backend. ConfigureforceSync : true
to enable this new behaviour (#4575)
API CHANGES
- DEPRECATED The
breakpoints
config of theCore.widget.mixin.Responsive
mixin is deprecated in favor of its newresponsive
config. Theresponsive
config is more easily customized when used in the default configuration of widgets - DEPRECATED The
responsiveWidthChange
andresponsiveHeightChange
events of theCore.widget.mixin.Responsive
mixin are deprecated in favor of its newresponsiveStateChange
event - BREAKING ANGULAR Angular wrappers now use the more modern module bundle by default, instead of the legacy umd bundle. Hence application imports must be changed to match. This will slightly improve application size and performance (#2786)
- BREAKING
taskboard.lite.umd.js
bundle is no longer available - BREAKING WebComponents has been removed from
taskboard.module.js
ES modules bundle. New bundle with WebComponents istaskboard.wc.module.js
BUG FIXES
Version 5.0.7
2022-07-13BUG FIXES
Version 5.0.6
2022-06-20BUG FIXES
Version 5.0.4
2022-05-11FEATURES / ENHANCEMENTS
- Adding custom colors to tasks, column and swimlanes was slightly simplified in this release by making the
color
field ofTaskModel
,ColumnModel
&SwimlaneModel
accept color codes (#, rgb, hsl) in addition to predefined named colors. Used in the updatedscrolling
demo - TaskBoard has a new function that removes one or more tasks,
removeTask()
. It fires an async preventablebeforeTaskRemove
event, allowing apps a chance to show confirmation dialogs etc. The new fn is called by theRemove task
context menu item. Simple implementation added to thetask-menu
demo (#3813) - The
TaskEdit
feature now fires an async preventablebeforeTaskEdit
event to for example allow preventing the editor from showing for certain tasks. It also triggers abeforeTaskEditShow
event a bit later in the process, after the editor has been created but before data is loaded into it. It allows apps to manipulate the editor at runtime. Thetask-edit
demo was updated to use both events (#4215)
BUG FIXES
Version 5.0.3
2022-04-26FEATURES / ENHANCEMENTS
- WRAPPERS
ProjectModel
wrapper component reference can now be used asproject
parameter for Bryntum TaskBoard wrapper component in Angular and Vue applications (#4238) - WRAPPERS TaskBoard has a new
ProjectModel
framework wrapper available for React, Vue and Angular. It simplifies sharing data between multiple Bryntum components (#4382) - ANGULAR New demo showing use of inline data and
ProjectModel
wrapper. Demo located inexamples/frameworks/angular/inline-data
folder - REACT New demo showing use of inline data and
ProjectModel
wrapper. Demo located inexamples/frameworks/react/javascript/inline-data
folder - VUE-3 New demo showing use of inline data and
ProjectModel
wrapper. Demo located inexamples/frameworks/vue-3/javascript/inline-data
folder - REACT New basic React demo with TypeScript. Demo located in
examples/frameworks/react/typescript/basic
folder - TaskBoard now officially supports changing
columnField
andswimlaneField
at runtime (#4418)
API CHANGES
- The
validateResponse
flag onProjectModel
has been changed to default totrue
. When enabled, it validates responses from the backend and outputs a message on console if the format isn't valid. This is helpful during the development phase, but can be turned off in production - New Vue 2/3 wrapper config option
relayStoreEvents
(defaults tofalse
). When set totrue
, the events fired by stores are relayed to the Bryntum Grid instance - REACT React wrappers now include TypeScript definitions (#3378)
BUG FIXES
- #4081 – A race-condition exception when creating a new task with remote data
- #4127 – LWC
DomHelper.isInView()
throws - #4222 – LWC Performance degradation in 5.0 release
- #4329 – TaskBoard column rendering breaks after adding and collapsing lots of columns
- #4432 – LWC Mouse events do not work
- #4461 – Vue wrapper triggers doubled
dataChange
events with different params
Version 5.0.2
2022-04-13BUG FIXES
Version 5.0.1
2022-03-04FEATURES / ENHANCEMENTS
TaskBoard
now triggersbeforeSimpleTaskEdit
,simpleTaskEditComplete
(on success) andsimpleTaskEditCancel
(when aborted) events when using theSimpleTaskEdit
feature to edit tasks inline (#3156)
BUG FIXES
- #4244 – Corrected
RadioGroup
interaction withautoUpdateRecord
not producing the correct value. This presented in the task edit example's department custom editor field not properly saving its value
Version 5.0.0
2022-02-21We are thrilled to announce version 5.0 of our Kanban TaskBoard product. This release marks a big milestone for us, after more than a year of development. This update makes it much easier to combine multiple Bryntum products, and also includes improvements to our demos and other enhancements requested by our community. A big thanks to our customers who helped us with testing our alpha & beta versions
You are most welcome to join us on March 16th, at 9am PST (6pm CET) for a 5.0 walkthrough webinar, demonstrating all the shiny new features Click here to register
We hope you will enjoy this release and we are looking forward to hearing your feedback of what you would like us to develop next */ Mats Bryntse, CEO @Bryntum
FEATURES / ENHANCEMENTS
- Each product has a new "thin" JavaScript bundle. The thin bundle only contains product specific code, letting you combine multiple Bryntum products without downloading the shared code multiple times (previously only possible with custom-built bundles from sources). Find out more in the What's new guide (#2805)
- Each theme is now available in a version that only has product specific CSS in it, called a
thin
version. These files are nameproduct.theme.thin.css
–taskboard.stockholm.thin.css
for example. They are intended for using when you have multiple different bryntum products on the same page, to avoid including shared CSS multiple times Read more about it in theWhat's new
section in docs (#3276) - The context menu used to assign resources can now be configured to show resource avatars using the
showAvatars
config on theTaskMenu
feature Model
has a newreadOnly
field that is respected by UI level editing features to disallow editing records havingreadOnly : true
. It does not directly affect the datalayer, meaning that you can still programmatically edit the records (#665)- New
ProjectModel
setters/getters forevents
,resources
(#4043) - Columns can now show a tooltip when being hovered, configured through
tooltip
in the column data (#4087) window
references are replaced withglobalThis
which is supported in all modern browsers and across different JS environments (#4071)- A new function called
downloadTestCase()
was added to Bryntum widgets, it is intended to simplify creating test cases for reporting issues on Bryntum's support forum. Running it collects the current value for the configs your app is using, inlines the current dataset and compiles that into a JavaScript app that is then downloaded. The app will most likely require a fair amount of manual tweaking to reproduce the issue, but we are hoping it will simplify the process for you. Runtaskboard.downloadTestCase()
on the console in a demo to try it - Updated FontAwesome Free to version 6, which includes some new icons sponsored by Bryntum in the charts category: https://fontawesome.com/search?m=free&c=charts-diagrams&s=solid
- Added a
taskSorterFn
config that allows overriding the sort order of the tasks on the UI level. By default tasks appear in store order, using this config you can affect that. Useful when sharing the project with another product where you might not want the same sort order as in TaskBoard
API CHANGES
- BREAKING React wrappers now use the more modern module bundle by default, instead of the legacy umd bundle. Hence application imports must be changed to match. This will slightly improve application size and performance (#2787)
- BREAKING TaskDrag used to reorder task records in the TaskStore on drop. This behaviour was made opt in, since it
does not work as expected when sharing the data with other components. By default now only the column, swimlane and
weight of tasks is changed on drop. If your app requires the old behavior, configure the feature with
reorderTaskRecords : true
BUG FIXES
- #4135 – Crash when double clicking task in basic demo
Version 4.3.9
2022-02-17FEATURES / ENHANCEMENTS
- Internal code improvements and bugfixes
Version 4.3.6
2022-01-13FEATURES / ENHANCEMENTS
- The focus outline for cards now uses CSS
outline
instead of an overlaid pseudo element to work better with custom styled cards
BUG FIXES
Version 4.3.5
2021-12-24BUG FIXES
Version 4.3.4
2021-12-13BUG FIXES
Version 4.3.3
2021-11-30BUG FIXES
Version 4.3.2
2021-10-29FEATURES / ENHANCEMENTS
TaskCopyPaste
feature now firesbeforeCopy
andbeforePaste
events to let you prevent the actions (#3303)
Version 4.3.1
2021-10-21FEATURES / ENHANCEMENTS
- Bumped builtin Font Awesome Free to version 5.15.4
BUG FIXES
- #3567 – Minified css bundle contains unicode chars
Version 4.3.0
2021-10-12FEATURES / ENHANCEMENTS
- Pressing
SHIFT
during keyboard navigation now extends the selection, similar to how it works in Finder/Explorer - Tasks can now be flagged as
readOnly
, preventing them from being edited using the UI (#3049)
API CHANGES
- DEPRECATED Buttons
menuIconCls
config was deprecated in favor of the newmenuIcon
config, which better matches the naming of other configs
Version 4.2.6
2021-09-15FEATURES / ENHANCEMENTS
- You can now configure which event should trigger the task edit feature (#3381)
- TaskMenu now has a configurable
triggerEvent
allowing you to define which event (if any) should trigger it (#3399)
BUG FIXES
Version 4.2.5
2021-09-08FEATURES / ENHANCEMENTS
- The API documentation now better communicates when a field or property accepts multiple input types but uses a single
type for output. For example date fields on models, which usually accepts a
String
orDate
but always outputs aDate
(#2933) - The key mapping for TaskBoard's card navigation and selection and relevant features (currently only SimpleTaskEdit)
can now be easily changed using new
keyMap
configs (#3137)
BUG FIXES
- #3322 – Add
dataChange
event to framework guides
Version 4.2.4
2021-08-27BUG FIXES
- #3110 – Unnecessary sync request when card is dropped at the same place
- #3241 – TaskMenu should close after selecting a new column to move the task to
- #3265 – Docs are not scrolled to the referenced member
- #3305 – Guides look bad in the docs search results
- #3306 – Doc browser does not scroll to member
Version 4.2.3
2021-08-05FEATURES / ENHANCEMENTS
- By default keyboard navigation moves focus between tasks without affecting selection. Pressing
SPACE
then toggles selection for that task (CTRL
+SPACE
to extend selection). Using the newselectOnNavigation
config the behaviour can be changed to move both focus and selection on navigation (#3138) - NPM Bryntum Npm server now supports remote private repository access for Artifactory with username and password authentication (#2864)
- Pressing
SHIFT
during keyboard navigation now extends the selection, similar to how it works in Finder/Explorer - Project can now log warnings to the browser console when it detects an unexpected response format. To enable these
checks please use the
validateResponse
config (#2668) - TaskBoard has a new
collapseTitle
config that controls whether the column title is rotated or hidden on collapse By default it now rotates the titles. Please note that it does not apply when using swimlanes, since the column title would obscure the swimlane header. (#3084) - TaskDrag now fires events similar to what is available for Event/TaskDrag in Scheduler/Gantt:
beforeTaskDrag
,taskDragStart
,taskDrag
,beforeTaskDrop
,taskDrop
,taskDragAbort
andtaskDragEnd
. On display in the newtask-drag
demo (#3050) - ColumnDrag fires a very similar set of events:
beforeColumnDrag
,columnDragStart
,columnDrag
,beforeColumnDrop
,columnDrop
,columnDragAbort
andcolumnDragEnd
. Try it out in the newcolumn-drag
demo (#3217) - TYPINGS Type definitions now contain typed
features
configs and properties (#2740)
BUG FIXES
Version 4.2.2
2021-07-21FEATURES / ENHANCEMENTS
- NPM Bryntum Npm server now supports
npm token
command for managing access tokens for CI/CD (#2703)
BUG FIXES
Version 4.2.1
2021-07-07FEATURES / ENHANCEMENTS
- The SimpleTaskEdit feature now has an
editorConfig
to configure its Editor (#3130) - FRAMEWORKS Added missing features to frameworks wrappers (#3135)
BUG FIXES
Version 4.2.0
2021-06-30We are happy to announce the first version of our new TaskBoard!
FEATURES / ENHANCEMENTS
- Added support for inline editing of cards, using the
SimpleTaskEdit
feature (#2813) - Added a
localization
demo (#2824) - Added Lightning Web Component demo, see
examples/salesforce/src/lwc
(#2827) - The
TagCombo
now tries to extract tags from the task store when it is not populated by the app - Added a new
ProjectCombo
widget, which allows picking from a set of urls to reload the project - Added a
backend-sync
demo, showing how to sync to a backend using built in crud manager functionality (#2708) - Added transitions for adding, removing and sorting tasks (and more) linked to the
useDomTransition
flag - Added "Upgrade Font Awesome icons to Pro version" guide
- Added "Replacing Font Awesome with Material Icons" guide
- Added
TaskMenu
feature, which allows displaying and customizing a context menu for tasks - Configuring
TaskEditor
withautoUpdateRecords: false
automatically displays a toolbar with save and cancel buttons - Added
UndoRedo
widget and demo showing how to set it up - New guides: "Working with columns", "Working with swimlanes" and "Customize task menu"
- Added more task items, miniature widgets that you can populate your cards with. The following items are now available: Image, Progress, Rating, ResourceAvatars, Separator, Tags, Template and Text
- Resource avatars can be configured to overlap
- Column collapse buttons made larger + click area enlarged further to make them easier to hit
- Swimlanes collapse on header click
- Added new responsive demo
- Added new zooming demo (#2707)
- Added a new column header menu feature and accompanying demo (#2700)
- Added new task menu demo, showing advanced custom menus
- Added a new task item,
TodoListItem
, that displays todo lists with checkboxes on the cards. Accompanying it is a new field calledTodoListField
that can be used in the task editor to display and edit the lists there. Comes with a new demo, namedtodo-list
- Added a tutorial to the docs (#2793)
- New web component demo
- New
SimpleTaskEdit
feature for inline editing of cards. Comes with a new demo (Partial fix #2813) - The "Add new task" button in column toolbars now scrolls the new task into view (#2814)
- Bumped the
@babel/preset-env
config target tochrome: 75
for the UMD and Module bundles. This decreased bundle sizes and improved performance for modern browsers - Improved docs
BUG FIXES
- #2710 – Column toolbar should stick to bottom
- #2768 – Crash when removing task
- #2823 – Responsive issue with resource avatar
- #2825 – Wrong target drop area highlighted as dragged card enters new column
- #2826 – Cards lose their place when dragged horizontally a bit
- #2831 – ColumnHeaderMenu doesn't hide after showing
- #2833 – Taskeditor does not close on Escape key in docs
- #2835 – 'true' tooltip shown in docs
- #2840 – TaskBoard docs: API diff grid not working
- #2868 – Key navigation breaks when editing is completed with Enter key
- #2869 – Task drag proxy is misplaced when vertical overflow changes
- #2870 – Body scroll affects dragged task position
- #2881 – Touch-dragging cards does not work if finger down on a resource avatar
- #2967 – Prevent scrollbar showing when collapsing swimlane
Older versions
- Full release version history can be found here.