UI Elements Changelog

Subscribe to this page via RSS

1.20.13Bug fix

patch September 30, 2020
Fixes a bug introduced by v1.20.12 that caused Availability Viewer and Slot Picker elements to fail to render.

1.20.12Stability and bug fixes for Availability Rules

patch September 30, 2020
Makes the Availability Rules state-handling more efficient.

1.20.11Bug fix

patch September 29, 2020
Ensures the Availability Rules element always respects the saved time zone of a rule. Previously would override a rule’s tzid when editing the rule on a device in a time zone different to the one on the already-saved rule.


patch September 18, 2020
Improved slot calculation for empty Availability Rules grid.

1.20.9config.mode validation

patch September 16, 2020
Fixes a bug where the Availability Viewer was able to load when provided multiple config.mode options. Valid modes are listed in the docs

1.20.8Bug fix

patch September 8, 2020
Fixes a bug in the Availability Viewer where mode.multi_select slot labels were appearing in the incorrect order when selected in non-linear order.

1.20.7Bug fix

patch August 24, 2020
Stricter handling of tzid in the Slot Picker.

1.20.6Bug fix

patch August 20, 2020
Callbacks are retained correctly when update() method is called. Fixes a bug introduced in v1.20.3.

1.20.5Bug fixes and stability

patch August 13, 2020
Improvements to layout and free_select mode for the Availability Viewer element.

1.20.3Better option parsing on update

patch August 12, 2020
Ensures correct validation of original options when updating an existing element with new options.

1.20.2query_periods validation

patch August 6, 2020
Availability Viewer loads an empty week-grid when provided an empty (invalid) query_periods option.

1.20.1Filtering profiles

patch August 4, 2020
Hide profiles from the Availability Rules calendar-selector when the profile has no calendars to show.

1.20.0Grid expansion for Availability Rules

minor July 30, 2020
Improves the UX for expanding the time-grid of the Availability Rules element. Clicking the ‘up’ or ‘down’ arrows in the time column will expand the time shown on the grid to midnight (in each direction respectively). Replaces the cog-icon-and-dropdown pattern

1.19.0Improved calendar selection for Availability Rules

minor July 22, 2020
Enhanced styling and keyboard interaction for the calendar selector in the Availablity Rules element. Groups calendars by profile, and allows toggling of all calendars within a profile.

1.18.1Fix Slot picker title when picking times in some timezones

patch July 16, 2020
Fix an inconsistency with displaying the date during time picking. It was possible to have the slot picker show the date in UTC when in timezones at offsets greater than 10 hours from UTC. The day picker was accurate but the title on the time picker would be in UTC instead of local time.

1.18.0Expandable week grid for free_select mode

minor July 9, 2020
The Availability Viewer preview grid can now be expanded to midnight (both forwards and backwards) when in free_select mode. Full details in the config mode section of the docs.

1.17.0free_select mode for Availability Viewer

minor June 19, 2020
The Availability Viewer now has a new free_select config mode that turns the Element into a query_periods generator. Full details in the config mode section of the docs.


patch June 17, 2020
Adds support for query_periods alongside available_periods, in line with the updated API.

1.16.0Added support for more languages

minor June 15, 2020
The UI Elements now support JA, RU, and SV locales. More details in the documentation.

1.15.0New Availability Rules notification

minor May 29, 2020
  • A no_visible_slots notification has been added to the Availability Viewer. Full details for all notification callbacks for the Availability Rules can be found in the documentation.
  • Extra detail has been added to error notifications.

1.14.0New Availability Rules notification

minor May 27, 2020
  • A no_slots_found notification has been added to the Availability Viewer. Full details for all notification callbacks for the Availability Rules can be found in the documentation.
  • Extra detail has been added to error notifications.

1.13.3Availability Viewer keyboard behaviour

patch May 26, 2020
Removing slots in the Availability Viewer from the tabindex, allowing for more practical navigation between week-views with a keyboard.

1.13.2Enhancements for Availability Rules notifications

patch May 5, 2020
The availability_rule_edited is now also fired whenever the selected calendars are changed in the UI.

1.13.1New Availability Rules notification type

minor April 30, 2020
Adding an availability_rule_edited notitification type to the Availability Rules UI Element. Full details for all notification callbacks for the Availability Rules can be found in the documentation.

1.12.1Availability Rules tzid support

patch April 24, 2020
Making tzid optional for AvailabilityRules (was previously “required”).

1.12.0SlotPicker tzid support

minor March 18, 2020
An explicit tzid option can now be passed to the SlotPicker, overriding the browser default.

1.11.1Dependency updates

patch March 5, 2020
Updating internal dependencies to latest versions, including some security updates.

1.11.0Enhanced notifications

minor January 31, 2020
  • Events that trigger a log (info, warn, or error) now also trigger a notification callback.
  • Slot Picker now triggers a no_slots_found notification when an availability query returns an empty result. Details in the docs.

1.10.0Customisable week start day for AvailabilityRules and AvailabilityViewer

minor January 24, 2020
Adds the new config.week_start_day initialisation option that enables custom week-start-days. Full details for this option can be found in the docs.

1.9.4Handle profile-revoke errors

patch January 14, 2020
Streamlined response handling when revoking profiles using the Calendar Sync UI Element. Fixes a bug where successful revoke-requests were triggering an element_token error and not updating the UI.

1.9.3Handle events with no name

patch January 8, 2020
Adds a sensible fallback for events created without a summary value (which would previously cause the Agenda View to crash).

1.9.2Availability Viewer optional config

patch January 7, 2020
config.start_time and config.end_time are reverted to being optional initialisation options (reverses a change to enhanced validation in v1.9.0 that made them required).

1.9.1Availability Rules bugfix

patch December 20, 2019
Fixes a bug introduced in 1.9.0 where unknown availability rule IDs were causing the Availability Rules UI Element to show an error rather than creating a new rule.

1.9.0Improved error handling

minor December 13, 2019
Adds greater detail to configuration errors, and introduces optional log-levels (controlled by the new config.logs parameter) allowing developers to choose the verbosity of the logs produced by the UI Elements.

1.8.1Date localization scoping

patch November 28, 2019
Making use of locales more tightly scoped to their context to prevent mutating moment global settings (for moment-timezone dependency).

1.7.21Time zone aware mock data

patch November 20, 2019
Fixes a bug where mock data was not being correctly rendered in certain time zones.

1.7.19Availability Rules day names

patch November 20, 2019
Fixes a bug where the day names were not being localized for the Availability Rules UI Element.

1.7.15Class names

patch November 14, 2019
Adds some additional prefixed class names to enable easier customization with CSS - for more details, see the customization documentation.

1.7.14Button attributes

patch October 24, 2019
Adds the type="button" attribute to all buttons within the elements’ markup, allowing UI Elements to be rendered inside html forms.

1.7.12Availability Viewer DST fixes

patch October 21, 2019
Improves handling of Daylight Saving Time (DST) switchover in the Availability Viewer element.

  • Correct time-labels for DST switchover week.
  • Sensible slot fallback for DST transition period (1am - 2am).
  • Query-cropping correctly adjusts to display-period for DST-switchover week.

1.7.11Availability Viewer bugfix

patch October 17, 2019
  • Fixes a bug where slot-selections a day either side of the visible period are still displayed after navigating between weeks.

1.7.10Availability Rules bugfixes

patch October 16, 2019
  • Correctly display rules that end at midnight.
  • Correctly calculates availability when rules don’t match provided duration. (e.g. rule starts at 09:15, but the element is displaying with a duration of 60 or 30.).

1.7.9Agenda View enhancements

patch October 10, 2019
  • Fixes a bug where scrollable ‘events’ view was too tall on certain screen sizes (and therefore overflowing).
  • Performance enhancements.


patch October 8, 2019
  • Fixes a bug where Availability Viewer legend would be hidden for certain browsers.
  • Improves general cross-browser consistency.

1.7.6Style updates

patch October 2, 2019
  • Fixes overflow-bug in Availability Viewer when on small screens.
  • Availability Rules columns correctly calculate width when browser is resized.
  • Dependency version updates.

1.7.4Slot Picker response count

patch September 30, 2019
Removes the need to apply a max_results value to allow more than 20 slots per response. New default limit is 200, matching the API.

1.7.0Availability Viewer unrestricted slot selection

minor September 24, 2019
Adds a new slot_selection option that allows for unrestricted selection of slots - overriding normal availability-based behavior.

1.6.1Calendar Sync enhancement

patch September 24, 2019
When the Calendar Sync element is called with the single_profile option, the avoid_linking parameter is applied to the profile authorization URL automatically.


minor September 18, 2019
UI Elements now support localization into the following languages: Dutch, French, German, Italian, and Spanish.

1.5.1Bug fixes

patch September 11, 2019
  • Filtering deleted calendars from calendar lists.
  • Correcting position calculation for overflow slot target.

1.5.0single_profile option for Calendar Sync (and bug fixes)

minor September 6, 2019
  • single_profile option added.
  • Better handling for empty availability responses.
  • Fix for UI issue when Availability Rules are assigned to a removed profile.

1.4.1User-editable Availability Viewer window

minor September 3, 2019
Availability Viewer:

  • bounds_control option added
  • Setting a 24hr (midnight-midnight) window is now possible
  • Improved timezone handling

1.3.6Available via NPM

patch August 30, 2019
UI Elements have been published as an npm package: cronofy-elements.

1.3.5Availability Rules calendar selector

patch August 29, 2019
Makes the All label in the included calendars box consistent with the behaviour of availability rules by removing all-selected shorthand.

1.3.2Availability Viewer slot results

patch August 23, 2019
Addresses the issue of big queries hitting the 200-slots limit by increasing the number of useable slots returned to the viewer.

1.3.0Time zone option for Availability Viewer

minor August 16, 2019

An optional tzid parameter that allows the Availability Viewer to be initialised with a specific time zone. If tzid is declared, the time zone will be displayed in the footer of the Element.

Note: using this new tzid option will cause the Availability Viewer to render in a timezone that may not match the timezone of the user’s computer. Be sure to highlight this to the user.

1.2.5Week-rounding logic

patch August 14, 2019
Fixes a bug where available periods starting on a Sunday were causing the Availability Viewer to display the preceding week (with no availability) on load.

1.2.3Smarter overrun calculation handles cross-dateline days

patch July 25, 2019

Slots that ‘overrun’ the end of the visible period are found using a moment.diff() between the end of the period and the end of the slot.

This method failed to account for days that crossed the dateline. It now does.

1.2.2Slot heights

patch July 23, 2019

Slot heights were far too high for the interval: 15; duration: 30 combo.

Now, an hour will always be 60px high, and the slots will be divided accordingly.

1.2.0callback for rules

minor July 22, 2019
  • triggered on successful ‘rules saved’ response from API

1.1.2sniffing timezone for mock data

patch July 18, 2019


patch July 18, 2019
  • More specific docs links in errors/warnings when parsing options.

  • Storing original options ‘immutably’ so we can re-parse when update() method is called.

1.1.0Time Zone Translation

minor July 4, 2019
  • time zone display in Availability Rules footer

  • translations moved into json

  • time zone translation handler

1.0.0UI Elements v1.0.0

major June 26, 2019

The release of UI Elements v1.0.0 marks an important transition from prototype to full-fledged product. We have been able to shape the Elements into a robust suite suitable for use in any application environment.

The changes from v0 to v1 are designed to enable a more flexible and customizable set of Elements, as well as providing a solid platform for future expansion. The new config option standardizes many of the more ad-hoc options from early versions, and all style-related options have been moved to the styles option. The callback format has also been amended to support multiple notification types from a single Element, paving the way for richer and deeper integrations.

Find out more in the Upgrade Guide, including the upgrade steps for those using older versions.