Skip to main content

Upcoming changes

    Prepare for these breaking changes in the next MAJOR releases of the Strato Design System. Rollouts are planned for Q1 2026.

    Work in progress

    This content may change up until the day of the next MAJOR release. Check back often for updates.

    Unification of components packages

    A simpler way to use Strato components

    We’re unifying our component packages to make development smoother and more predictable. Starting with the next MAJOR release, all components will be available from a single package: strato-components. We’re skipping strato-components version 2.0.0 and going straight to version 3.0.0. By aligning everything at version 3.0.0, the unified components start from a clean, consistent, and unambiguous version number.

    Why we’re doing this

    Strato has matured: it fully follows SemVer. The dual‑package setup is no longer needed.

    What to do

    • Start importing all components—stable and preview—from strato-components and all testing helpers from strato-components-testing.
    • During the transition through Q3 2026, imports from strato-components-preview and strato-components-preview-testing will continue to work.
    • By Q3 2026, plan to fully switch to strato-components and strato-components-testing.
    • After the transition, strato-components-preview and strato-components-preview-testing won't receive updates.

    What stays the same

    Final package set after the transition:

    • strato-components (unified package)
    • strato-components-testing (unified package)
    • strato-geo
    • strato-design-tokens
    • strato-icons

    Components 3.0.0 (planned)

    @dynatrace/strato-components

    Buttons

    From ButtonOwnProps, the readOnly prop will be removed. readOnly will no longer be accepted as a valid button property. Instead, use the disabled prop or hide the button.

    IntentButton

    With the merge of strato-components and strato-components-preview, the IntentButton and IntentButtonProps will be replaced by the more feature-rich version from the former strato-components-preview package. Some manual adjustments are needed to complete the replacement and will be obvious when you look at the new API setup. The intent payload remains compatible.

    Components preview 3.0.0 (planned)

    @dynatrace/strato-components-preview

    Conversion-utilities

    As part of our ongoing efforts to simplify and streamline Strato, the Conversion-utilities package will be removed. Unused content will be entirely removed, while actively-used content will be moved to the appropriate component packages.

    The following exports are deprecated and will be removed:

    • convertToSingleValueData
    • SingleValueData
    • listRecordFields
    • pickRecordIndex
    • EMPTY_SINGLE_VALUE_DATA
    • DQLResultConverter
    • DQLResultConverterProps
    • DQLResultConverterBaseProps
    • DQLResultConverterTimeseriesProps
    • formatDqlNumber
    • ConversionCellValue
    • recommendVisualizations
    • VisualizationRecommenders
    • VisualizationRecommendersProps
    • VisualizationRecommenderResult
    • VisualizationKind
    • VisualizationKindOptions

    The following functions and types have already been moved to the Charts package. With the next MAJOR release, they will also be removed from Conversion-utilities.

    • convertToTimeseries
    • convertQueryResultToTimeseries
    • convertToTimeseriesBand
    • convertToFieldEntries
    • getTypesForRecordIndex
    • getFieldsArrayForRecordIndex
    • checkTimeseriesFormat
    • getDimensions
    • TimeseriesWithDimensions
    • FieldEntry
    • Dimension

    The convertToColumnsV2 function has already been moved to Tables. With the next MAJOR release, it will also be removed from Conversion-utilities.

    Core

    The TimeframeV2 type will be renamed Timeframe. It is the only version now.

    FilterField

    The FilterField drops the support for the basic syntax and will now automatically use the complex syntax. The corresponding syntax prop will be removed.

    SimpleFilterFieldLogicalOperatorNode is deprecated and will be removed. Use the logicalOperator and explicitLogicalOperator flags on FilterFieldGroupNode instead.

    In FilterFieldSuggestionsCallback, the suggestionType prop will be replaced with suggestionTypes, autoSuggestions will be replaced with groupedSuggestions, and currentToken will be replaced with currentTokens.

    Formatters

    As part of ongoing structural improvements, we'll remove the formatters from the design system.

    • The formatters sub-package currently included in the design system has been deprecated and will be removed.
    • Formatter functions that are still in use have been migrated to @dynatrace-sdk/units to ensure continued support.

    Overlays

    As part of our ongoing efforts to improve structure and clarity, we'll move content-related components from Overlays to Content.

    Affected content-related components in Overlays have been deprecated. Please make sure to update your imports to reflect their new location in Content.

    These components will move to Content:

    • FeatureHighlight
    • Microguide
    • TerminologyOverlay
    • InformationOverlay

    Radio

    The RadioProps will now accept and return string | null. This change affects value, 'defaultValue', and onChange. Additionally, the onChange callback will no longer return an event as a second parameter. The new signature will look like this:

    FormControlProps<
    string | null,
    (value: string | null) => void | never
    >

    SegmentSelector

    The validate function from the ref will change from a synchronous return value to a promise to ensure that the validation is up-to-date with public and private segments.

    SelectV2

    The suffix "V2" will be removed from the names of the component and its props:

    • SelectV2 will become Select.
    • SelectV2Props will become SelectFormsProps.
    • SelectV2BaseProps will become SelectBaseProps.
    • SelectV2OnChangeValue will become SelectOnChangeValue.

    The internally set data-testid will be removed. You can still set your own data-testid.

    Tables

    The suffix "V2" will be removed from the names of the following components and functions, as these are now the only versions:

    • DataTableV2 will become DataTable.
    • SimpleTableV2 will become SimpleTable.
    • convertToColumnsV2 will become convertToColumns.

    DataTableV2CellInteractionPattern will be removed as it's now the default pattern for the DataTable.

    TimeframeSelector

    This component and its props will move to Filters:

    • TimeframeSelector
    • TIMEFRAME_SELECTOR_PRESETS
    • TimeframeSelectorProps
    • TimeframeDetails
    • TimeframeSelectorPresetItemProps
    • TimeframeSelectorPresetsProps
    • TimeframeSelectorTriggerProps
    • TimeframeSelectorCustomTriggerProps
    • TimeframeSelectorDisplayValueProps

    ToggleButtonGroup

    This component and its props will move to Forms:

    • ToggleButtonGroup
    • ToggleButtonGroupItemProps
    • ToggleButtonGroupPrefixProps
    • ToggleButtonGroupSuffixProps
    • ToggleButtonGroupProps

    The following props will be removed:

    • ToggleButtonGroupControlledProps
    • ToggleButtonGroupUncontrolledProps

    The ToggleButtonGroupProps will now accept and return string | null. This change affects value, 'defaultValue', and onChange. Additionally, the onChange callback will no longer return an event as a second parameter. The new signature will look like this:

    FormControlProps<
    string | null,
    (value: string | null) => void | never
    >
    Still have questions?
    Find answers in the Dynatrace Community