banner
News center
We provide online service around the clock.

What's New in Calcite Design System (October 2024)

Nov 01, 2024

Announcements

Oct 30, 2024

By Kitty Hurley and Julie Powell

Learn all about the key updates in Calcite Design System that we’ve recently released!

Calcite enables you to build beautiful, user-friendly, and consistent experiences across applications with minimal effort. Since June, we’ve made important improvements to components that facilitate responsive app development, introduced new components, and made many updates worth exploring.

Read on to explore some of the highlights since June, including:

The new Dialog component presents focused interactions, tasks, or workflows to a user. Dialogs can be configured to suit a variety of use cases and interface needs, ranging from brief informational prompts to complex multi-step workflows. For instance, engaging users with onboarding or instructional content, or interrupting a workflow to present a choice or provide guidance.

Some use cases of Dialog may take the form of page-blocking interactions, where the modal property should be used, and a Scrim will be positioned behind the dialog to prevent interaction with the main content. The creation of Dialog deprecates the Modal component, which is planned for removal in a future major release.

The component’s placement can be specified via the placement property, and offers styles where it’s placement can be further customized.

Dialog also offers a widthScale to specify the visual sizing, dragEnabled and resizable to drag and resize the component respectively, content slots, and provides accessibility features such as focus order and keyboard navigation.

A new global variable detects and communicates the current version and provides context on component deprecations, and which major version the component is planned for removal. This can be helpful when troubleshooting an app as well as staying informed about the status of components being used by the application.

You can also use calciteConfig to remove messaging from production environments and builds. To learn more, explore Global configuration in October’s summary notes.

Calcite is working towards support of component tokens, which allow for component customization via CSS variables. Some components already offer customization for designers and developers, and additional configuration via CSS variables will be supported in future releases.

Some new CSS variables available include Text Area’s --calcite-text-area-min-height and --calcite-text-area-max-height, which specify the component’s minimum and maximum height respectively.

List supports a filterProps property to specify which properties to filter when using filterEnabled, where one or multiple property values can be used to filter. If not set, all properties will be matched including label, description, metadata, and value.

List Item includes a new unavailable property which, when enabled, makes the component’s content appear disabled, while allowing users the ability to navigate to the List Item. Designers and developers can also supply additional context, such as why interaction is limited on the component. This differs from the component’s disabled property, where interaction is prevented.

Combobox Item was enhanced with description and shortHeading properties to support more workflows. Where description provides additional context to an item, and shortHeading can represent the item in a compact format when the Combobox is closed. A new content-end slot has also been introduced for adding non-actionable elements after the component’s content, such as an Avatar.

Additionally, Combobox‘s filter text value is accessible via the new filterText property.

Slider now ensures that only integers can be selected when the snap property is true and step property is set to an integer.

Input Time Zone includes multiple improvements improving its usability, such as the ability to display the region when the mode is set to "region" and a new search icon is added to the component’s placeholder text.

You can shift focus to Accordion Item programmatically via the new setFocus method.

Error message context for Input-based components including Combobox, Input, Select and Text Area is now provided to assistive technologies (AT) when the component’s status is reported as "invalid". The additional context supports users that may have visual or cognitive impairments relying on AT to convey an error is present and more action is needed before form submission.

Input Date Picker includes additional support for the Bosnian (bs) and Italian – Switzerland (it-CH) locales, where the component was previously cleared erroneously.

Explore the October summary notes for the full list of accessibility and internationalization improvements.

Calcite is a very active, dynamic design system that continues to evolve to meet new design challenges and design trends, meanwhile improving consistency and usability. As a result of this, visual changes are periodically introduced that may impact the visual appearance in your apps.

For example, one of the recent enhancements to Combobox introduced a visual change: when performing a search, matching terms are highlighted for easier identification. Custom values are appended to the top of the dropdown list, and the keyboard navigation focus order has been refined when selectionMode is set to "multiple", improving the user experience.

Additionally, Loader includes a new "determinate-value" display option. This type displays a percent sign alongside the value, where a user is provided with context on the percentage rather than a specific count in some use cases for improved usability.

Explore the October summary notes for the full list of visual changes.

Deprecations are now documented in changelogs to better equip designers and developers prior to major releases and future removal. Explore Calcite’s global configuration to assist with troubleshooting, and learn more about deprecations.

In version 2.11, the Modal and Shell Center Row components were deprecated. With Modal’s deprecation, use the Dialog component instead. Learn more about Dialog including its usage, configuration, and support. In place of Shell Center Row, use Shell Panel’s displayMode property set to "float-content" or "float-all" instead.

Learn more about deprecations in October’s summary notes.

Calcite will be launching version 3.0, a major version and breaking change release in early 2025. Shortly after the 3.0 release, Calcite team members will be conducting a YouTube live event in early 2025 that will detail the changes, what to expect when migrating from version 2 to 3, and much more. Stay tuned for more information in the coming weeks!

Share this article

Kitty Hurley

Passionate about web map accessibility and bringing the web and maps to wider audiences. A senior product engineer with Calcite Design System. Enjoys exploring Minnesota's wilderness and has a goal to visit every major league baseball stadium across America.

Julie Powell

Julie Powell is a Principal Product Manager, focusing on Esri's web development technologies. She works to ensure developers can be successful in building state of the art, purposeful solutions using ArcGIS software. Julie brings 20 years of experience working with global leaders such as Hewlett-Packard and Esri, delivering a variety of software solutions for both the enterprise and consumer markets. Julie has worked on a wide range of projects and consulting endeavors, including serving as technical lead for web mapping solutions for strategic customers.