Welcome to Tecton
Tecton is Q2's library of design system components and platform interface capabilities. It allows Q2 and our partners to build cohesive and consistent UI experiences for end users across a variety of Q2 products.
Tecton consists of:
- UI components that are designed and thoroughly tested by Q2
- Platform capabilities that allow access to platform data and seamless visual integrations into Q2 products
- Controls for access to and placement of Tecton-based extensions
- Tooling to build your own platform that renders Tecton extensions
We're excited to see what you'll build! To get started, feel free to check out some of the following links:
Tecton 1.68.0
New Components
- OTP One-Time Password Input — A dedicated component for capturing OTP codes with auto-focus capabilities, support for error and verifying states, and customizable labels for maximum flexibility.
Component Features, Improvements, and Bug Fixes
- Grid Form Integration — Removed extra spacing when Grid is used inside Forms, ensuring clean layouts and proper visual hierarchy in form-based contexts.
- Pill Multi-Select Display — Now displays the first selected item name alongside a '+X' count indicator for additional items, providing users with an at-a-glance view of their selections.
- Message Per-Type Styling — Each message type now has dedicated background colors with custom property overrides, enabling greater design flexibility and brand consistency.
- Carousel Enhanced Navigation — Features new pagination styles with centered and floating navigation options, plus autoplay progress indicators to give users better control and visibility.
- Carousel Pane Layout Improvements — Added flex display and auto-height support for more responsive and adaptable carousel layouts.
- Avatar Decorator Slot — A new decorator slot enables affordance indicators like badges or status indicators to be seamlessly overlaid on avatars.
- Chart Donut and Legend Currency Rounding — Added currencyRound property for precise control over decimal display in financial visualizations.
- Icon Custom Icon Support — Now supports custom icon definitions with updated SVG stroke and fill classes for maximum styling flexibility.
- Dropdown Profile Switcher — Enhanced profile switcher now displays user info and avatar for better visual context when switching between accounts or workspaces.
- Checkbox and Radio Slot Support — Improved slot support and label alignment for more flexible component composition and better visual consistency.
- Popover Race Condition Fix — Fixed a timing issue that caused popovers to immediately close after opening.
- Popover and Button Disconnection Safety — Added null checks during component disconnection and optional chaining for focus management, improving stability in dynamic layouts.
- Input and Select Text Overflow — Prevented unwanted scrolling of display text and added ellipsis for long values to maintain clean layouts.
- Input Safari Clear Button — Resolved a focus loss issue with the clear button in Safari browsers.
- Calendar Event Handling — Fixed an issue where the calendar would self-reset to null during change events.
- Tooltip Mobile and Overflow Fixes — Eliminated flickering on mobile viewports and improved positioning when tooltips appear near overflow:hidden containers.
- Option List Accessibility Attribute — Removed errant aria-multiselectable attribute to correct semantics.
- Dropdown Scroll Position — Fixed scroll position resetting when opening dropdowns.
- Context Contrast Fix — Improved text color contrast for better readability and accessibility compliance.
Accessibility Enhancements
- Checkbox, Button, Link, and Tooltip ARIA Labels — Cross-shadow-DOM aria-label propagation now works consistently across components, improving screen reader support.
- Checkbox and Tooltip Slotted Content — Fixed ARIA attributes for slotted label contents, ensuring proper semantic markup for assistive technologies.
- Action Sheet and Option List Navigation — Enhanced focus trapping and keyboard navigation for more accessible modal and list interactions.
- Currency Label Positioning — Moved aria-label to the host element for improved semantic structure and screen reader clarity.
Capability Updates
- getThemeInfo() and themeInfoChanged() Theme Capabilities — New SDK capabilities enable features to query and subscribe to theme information changes.
- Outlet Components outletSelector Attribute — platformOutlet, featureOutlet, and tabbedOutlet now support the outletSelector attribute for more granular control.
- platformOutlet Loading Control — Added hideLoading attribute to allow auth outlets to control loading state visibility.
Visual Regression Testing
- Comprehensive visual regression tests added for the bulk of Tecton components, enhancing test coverage and preventing visual regressions.
View full changelog