UI Elements Changelog

Subscribe to this page via RSS


1.32.0Bookable Events support for Slot Picker

minor May 28, 2021
The Slot Picker UI Element can now display Bookable Events. More info can be found in the documentation.

1.31.0Allow use of CalendarSync within an iframe

minor May 5, 2021
CalendarSync will now load authorization flows at the top level frame, which fixes use cases when nesting the Element in an iframe. Non-iframe use cases will see no change. More info in the docs.

1.30.0Allow expansion in all Availability Viewer modes

minor April 26, 2021
Adds a new config.allow_expansion option to the Availability Viewer that can enable time-expansion arrows to be shown in all modes (previously only available in free_select mode). More info in the docs.

1.29.2Stricter AV end_time validation

patch March 31, 2021
Fixes a bug where a config.end_time of 00:00 would break if the Availability Viewer was loaded with a timezone that crossed a UTC date boundary.

1.29.1Agenda View style fixes

patch March 23, 2021
Styling fixes for the attendee list in the Agenda View element.

1.29.0Auto create new Availability Rules

minor March 19, 2021
A config option to automatically create a new Availability Rule when the rule doesn’t already exist. You can find more information in the docs.

1.28.0Exposed context for all Elements

minor March 10, 2021
A context object is returned for all UI Elements. This currently includes the tzid that is being used by that element.

1.27.1Custom periods for default Availability Rule

minor March 8, 2021
A config option to set custom periods for the default availability rules. You can find more information in the docs.

1.26.1Availability Rule calendar filtering

patch March 5, 2021
Fixes a bug where deleted calendars were still appearing in the Availability Rules calendar-selector list.

1.26.0Availability Rule Not Found Notification

minor March 2, 2021
A notification fires when an availability_rule_id is not found. You can find more information in the docs.

1.25.3Bugfix

patch February 16, 2021
Fixes a bug where the callback option would be removed after multiple calls to refresh().

1.25.2Availability Viewer stability and performance

patch February 12, 2021
More thorough validation of start_time and end_time config options for Availability Viewer, and more efficient re-rendering on hover interactions.

1.25.1Bugfix

patch February 1, 2021
Fixes issue introduced in 1.25.0 where time labels were not updating correctly on grid expansion when in free_select mode.

1.25.0Extends date-range supported by Availability Viewer queries

minor January 22, 2021
Removes the 35-days limit on query_periods, allowing the Availability Viewer to show availability for multiple months.

1.24.1Validation update for Availability Viewer

patch January 15, 2021
Allowing empty query_periods arrays for Availability Viewer availability query options.

1.24.0Refresh method for all elements

minor January 7, 2021
Adds a refresh() method to every UI Element that, when called, will reload the element and re-fetch any data.

1.23.1Security fixes and dependency updates

patch January 6, 2021
Updating build-time dependencies to remove vulnerabilities and increase stability.

1.23.0AgendaViewer modes

minor December 21, 2020
Adds modes to change the way the AgendaViewer element shows events, allowing a mix of Free/Busy blocks and managed event details.

1.22.3AvailabilityViewer confirm positioning fix

patch December 1, 2020
Fixes a bug where the confirm button would appear at the top of the week on touch-only browsers.

1.22.2Bugfix

patch November 25, 2020
Fixes a bug introduced in 1.22.1 where npm prepublish script was breaking the bundle.

1.22.1Fixing issue with npm publishing

patch November 25, 2020
Ensures npm is always given the correct path for the source file.

1.22.0AvailabilityViewer slots_visibile notification added

minor November 24, 2020
Adds a new notification when the Availability Viewer is showing some slots.

1.21.1Better validation of query_periods

minor October 22, 2020
Fixes a bug where invalid query_periods could make the Availability Viewer and Slot Picker elements to fail to render without an error notification.

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.

1.20.10Stability

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.

1.16.1query_periods

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.

1.7.8Bugfixes

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.

1.6.0Translations

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

1.1.1Reload

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.