Skip to main content

Components preview

0.112.6-rc.0

Forms

  • Hint and FormFieldMessages.Item components do not break existing styling.

0.112.5

Dependencies

  • Removed no longer needed peerDependencies from the list.

0.112.4

SelectV2

  • Full-width SelectV2 trigger does not outgrow the container.

0.112.3

Behavioral changes

General

As a general effort to expose more control on className, style and data-testid on all components, the following components now allow setting any of these three to their internal root element: Content, CodeSnippet, Divider, ExpandableText, KeyboardShortcutTooltip, DataTable, DataTableCell, DataTableToolbar, SimpleTable, BaseCodeEditor, FormattedTimeFrame, AppCard, AppLink, Tabs, Tab, TabPanel, Sheet, Trigger, Blockquote, Code, Divider, Emphasis, ExternalLink, Heading, Link, Paragraph, Section, Strikethrough, Strong, Text, TextEllipses, Toast, Tooltip, TooltipElement, Title, Visual, and Description.

Deprecations
  • The label prop on the FormField is now deprecated.
  • The InputRef type is now deprecated and is replaced with the FormControlRef type.
  • The Section component, the DocumentOutlineContext and the DocumentOutlineProvider are now deprecated.

Accordion

  • Accordion.Section now supports a keepMounted prop to preserve the components content even when hidden.
  • Controlled state on the accordion now works correctly.

Button

  • Button now aligns the suffix correctly when the width is set to a percentage.

CodeSnippet

  • Now DQL codesnippet with triple-quotes should be highlighted correctly.

DataTable

  • Row threshold background color is now correctly applied, also without zebra row separation.
  • Column or Cell action menus are no longer bound by the DataTable boundaries.
  • Improved row height for space efficiency with condensed row density.
  • Fails to sort columns containing numeric values if any value within the column is either empty or includes non-numeric characters, such as commas.
  • DataTable no longer throws an error when server side pagination is used in conjunction with selectable rows.

DQLEditor

  • When value of the editor is updated programmatically, highlighting should happen only in updated editor.

FormField

  • The FormField supports using a Label inside the FormField. FormMessages have been added to provide errors and hints that are automatically connected to the form control.

HoneycombChart

  • Improved quality and performance for honeycomb chart.

Page

  • Page.Sidebar now supports a keepMounted prop to preserve the components content even when hidden.

SelectV2

  • SelectV2.Trigger now aligns the suffix correctly when the width is set to a percentage.
  • Empty state is shown when showSelectedOptionsFirst is enabled.
  • ref on the component now exposes a focus function to set focus the trigger.

Tabs

  • Tab now supports a keepMounted prop to preserve the components content even when hidden.

TextInput

  • The TextInput now supports browser validation out of the box and displays those errors in the FormFieldMessages slot.

TimeframeSelector

  • Add support for custom preset items using the TimeframeSelector.Presets and TimeframeSelector.PresetItem compound components.

TimeseriesChart

  • Added curve prop to provide option of setting the type of curve shape applied to line, band and area series.
  • Timeseries with multiple units and specific Y-axes could filter the data shown in the chart.
  • Adapted the formatter precision by default.

TreeMapChart

  • Added support for the legend slot.

0.112.2

TimeframeSelector

  • Fixes an issue with the TimeframeSelector's DatePicker inputs moving the cursor at the end on changes.

0.112.1

SingleValue

  • Faulty alignment in the SingleValue is now fixed.

0.112.0

Breaking changes

TimeframeSelector

  • The type of the forwarded ref changed to TimeRangePickerRef to include/give access to the from and to input refs. So if you explicitly use the old type for the ref - FormControlWithOverlayRef - you would need to manually rename it to TimeRangePickerRef.
Dependency updates
  • @dynatrace/strato-icons was updated to version ^0.36.0.

Accordion

  • Accordion content now correctly applies sizing without overflow.

General

  • Scrollbar styling issue in Chrome 121+ are now fixed.

Charts

  • Units now are correctly serialized for CSV download.
  • Extended available color palettes with sequential and diverging palettes.

DataTable

  • The sub rows column is now updated once sub rows are added/removed in the data.
  • Improved custom cell value handling for download as CSV.
  • Newlines characters are now replaced with spaces in downloaded CSV.
  • ColumnSettings buttons now show tooltips when hovered over.
  • Selected rows now reset if the data provided changes.
  • Pagination no longer breaks if there is no data present.
  • data-testid attribute is now exposed on the DataTable.

DQLEditor

  • Default font color now aligns with designs.
  • The autocomplete label now uses the full width and the command type is no longer shown.
  • Autocomplete list now shows a visual difference between touch/mouse and keyboard focus and hover.

FilterBar

  • Now updates the states correctly and doesn't trigger an error on initial use.

HistogramChart

  • Highlighted series no longer get lost after filtering the legend.
  • Adjusted the formatters default precisions.
  • Absolute min and max values now display correctly in the Axes.

Tabs

  • Adding Tabs dynamically no longer deselects selected tabs.

TextEllipsis

  • Now recalculates it's state when new fonts are loaded.

TimeframeSelector

  • TimeframeSelector now features a new design and support for form integration.

TimeseriesChart

  • Highlighted series no longer get lost after filtering the legend.
  • Fixed misalignment in TimeseriesChart annotations tracks when axislabels were present.

SelectV2

  • Now emits an onOpenChange event when the dropdown of the Select opens or closes.

0.111.7

SingleValue

  • Faulty alignment in the SingleValue is now fixed.

0.111.6

Dependency updates
  • @dynatrace/strato-icons was updated to version ^0.35.11.
Behavioral changes

General

As a general effort to expose more control on className, style and data-testid on all components, the following components now allow setting any of these three to their internal root element: DonutChart, PieChart, MeterBarChart, MultiMeterBarChart.

CodeEditor

  • Improved visual representation of read-only mode.
  • The new size prop now allows for a condensed visual representation.

CodeSnippet

  • The new size prop now allows for a condensed visual representation.

DataTable

  • Sorting a column in quick succession no longer endlessly toggles the column sort.
  • Toggling the select all checkbox no longer affects the sorting of the table
  • The autoWidth setting for columns now reacts correctly to changing font faces.

DQLEditor

  • Improved visual representation of read-only mode.

HistogramChart

  • Panning is now possible in Explore mode via the middle mouse button.
  • Enables the pan feature for the axis in Explore mode when zoom is applied.
  • Navigation within the toolbar with arrow keys now works correctly.

KeyboardShortcut

  • Remaining props of the component are now passed to the underlying root element.

SelectV2

  • Activating already selected options in a single select mode no longer triggers an onChange.
  • The dropdown now closes correctly when selecting an option and a custom trigger is defined.

SingleValueChart

  • Emojis, single characters and glyphs are now supported in the SingleValue icon.

SparklineChart

  • GapPolicy is now supported.

Tabs

  • Setting a custom data-testid no longer influences selection behavior of the tabs.

TimeseriesChart

  • Panning is now possible in Explore mode via the middle mouse button.
  • Enables the pan feature for the axis in Explore mode when zoom is applied.
  • Navigation within the toolbar with arrow keys now works correctly.

Toast

  • The Toast now allows a custom id to be set in order to avoid duplicate notifications popping up.

TreeMapChart

  • Now allows importing and exporting of configs.

0.111.5

General

  • Updated d3-color dependency due to a vulnerable version.

0.111.4

Deprecations

Charts

  • ChartInteractionsConfig.defaultMode -This property will be removed, as the inspect and zoom-x modes no longer exist. The default mode will be changed to explore.
  • userData prop is now deprecated on the TimeseriesChart.
Behavioral changes

General

As a general effort to expose more control on className, style and data-testid on all components, the following components now allow setting any of these three to their internal root element: Accordion, Avatar, AvatarGroup, Breadcrumbs, Button, Checkbox, Chip, ChipGroup, Column, Columns, DatePicker, DateTimePicker, FieldSet, FormField, Hint, IntentButton, Label, Menu.Group, Menu.Item, NumberInput, PasswordInput, ProgressBar, ProgressCircle, Radio, RunQueryButton, Select, SelectV2, Skeleton, SkeletonText, Surface, Switch, TextArea, TextInput, TimeframeSelector, ToggleButtonGroup.

DataTable

The new UI for controlling column visibility and column order in the DataTable might have an impact on your UI test if you have been interacting or testing with the column visibility or column order controls.

Dependency updates
  • @dynatrace-sdk/units was updated to version ^0.11.1.

CategoricalBarChart

  • Inspecting a series action no longer throws an error.

Charts

  • Annotation markers are now cropped and respect the overflow controls.
  • Zooming can now be performed via the mouse wheel scroll or keyboard shortcut, when the toolbar is collapsed.

DataTable

  • Introduced a new UI for controlling column visibility and column order. The previous functionality of column visibility has been reorganized and is now integrated into the same column settings modal instead of appearing as an overlay.
  • An issue with initial rendering flickers is now fixed.
  • Column menu actions performance is improved.
  • The DataTable.Cell now allows style and className to be set.
  • Columns are now correctly updated if selectableRows changes.
  • autoWidth columns are now updated once width is unset.
  • Passed columnOrder props are now validated. Violating values, where nested columns would no longer be in the same group, are ignored.
  • Row actions column content now respects the rowDensity: "condensed" mode.
  • By using the new prop maxAutoWidth you can now set a limit on autoWidth per column while still having the ability to resize beyond this limit.

HistogramChart

  • ChartInteractions can now be set through a configuration.
  • Toolbar can now be enabled through an imported configuration.
  • Keyboard shortcuts for zoom actions will now trigger only while the chart has focus.

HoneycombChart

  • The tooltip now shows consistently when hovering entries.
  • Unnamed tiles in now receive a default name.

Markdown

  • Table and list styles are now aligned.

TimeseriesChart

  • Timeseries now highlights correctly if the data was misaligned from the Timeseries type.
  • Toolbar can now be enabled through an imported configuration.
  • Explore mode is now supported.
  • Deprecated userData prop in favor of extending Timeseries type to allow for custom props.
  • Keyboard shortcuts for zoom actions will now trigger only while the chart has focus.

SparklineChart

  • The sparkline now allows a Y axis min/max configuration.

0.111.3

Deprecations

Core

  • The getThresholdColor function has been deprecated.

FilterBar

  • defaultPinnedState prop on the FilterBar.Item has been deprecated. Use the defaultPinnedState prop on the FilterBar component instead.

TextArea

  • The resizable prop has been deprecated. It is replaced by a resize prop, that now let's you define the resize axis individually. To mitigate the deprecation you can change resizable={false} to resize="none".

Charts

  • The tooltip for the legend item is not shown anymore if the item cannot be hidden.
  • Annotations can consider now a height value in order to adapt properly to a container for certain use cases and prevent overflowing.
  • Fixed infinite resize issue when using the range legend with horizontal layout and chart resizer.

DataTable

  • Table height now updates if individual row heights change.
  • Cell actions (if defined) will no longer be applied to cells in the action column.
  • The width of columns that have autowidth configured, is now reacting to density changes on the table.
  • Visually improved the Subrows connector, which now spans the entire height of the row.
  • Improved the TableRowActions.Item typing.
  • Alternating row background colors are now correctly applied during scroll.
  • Scroll performance has been improved for large datasets.
  • Positioning of the column and cell action overlay now behaves correctly on wide columns.
  • Column widths are now correctly updated after resizing and changing the column definition.
  • Fixed sub row connectors when used without pagination.
  • Improved the performance of threshold calculations.
  • TableRowActions with long names no longer cause overflow in the table.

Editors

  • data-testid prop is now exposed for you to control in the CodeEditor and DQLEditor.

FilterBar

  • The defaultPinnedState prop of the FilterBar.Item no longer has any effect and is deprecated.

HistogramChart

  • Zoom explore mode now has keyboard support.
  • Thresholds can now be used in Histogram charts.

HoneycombChart

  • Integrated the chart toolbar and added DownloadData as CSV.
  • Categorical legends can now be used in the HoneycombChart.
  • Set default width to 100% on HoneycombChart.
  • Support for range legends and tile coloring.
  • Enabled HoneycombChart to import and export configurations

Microguide

  • The visual slot now correctly styles picture and figure tags.

Overlays

  • Improved initial rendering and positioning to avoid flashing of the overlays in the wrong position.

SelectV2

  • Adjusted the dropdowns minimum height and width for smaller screens.
  • Selectv2 does not remove selected options when typing in the filter and pressing backspace.
  • In single select mode, the onChange now returns null when cleared instead of undefined.
  • The dropdown now correctly increments the z-index stacking for tooltips within options.

TextArea

  • TextArea now has a resize prop that can be used to disable resizing or restrict resizing to one direction only. By default, it resizes in both directions but can be set to can be set to horizontal, vertical, both, or none. Note that the resizable prop is now deprecated in favor of the resize prop.

TimeseriesChart

  • Fixed an issue where metadata would throw an error when there was a gap in data for a Timeseries.
  • Fixed incorrect output of Timeseries chart onZoomChange prop when using right panning.

Dependencies

  • @dynatrace/strato-icons has been updated to 0.35.9

0.111.2

TimeseriesChart

  • Fixed TimeseriesChart issue that crashes the page in some cases after initial loading or resizing it.

0.111.1

Global, AppRoot

  • The AppRoot updated its usage of the new version of the DynatraceFlow font face.

Accordion

  • The Accordion.Content now takes up the whole width of the accordion.

Button

  • Items within the button now properly align vertically relative to the height of the Button.

CategoricalBarChart

  • Custom data is passed through to categorical bar chart legend.

Charts

  • Fixed security-risk-level color palette not applying the muted category/series name on charts. Fixed categorical color palette not using the whole amount of colors on the Timeseries and the Histogram charts when having more than 12 series.

DataTable

  • The action column header can now be overridden.
  • Row and cell thresholds now have the ability to provide a backgroundColor for the cell or row.
  • An issue with cut off italic text in cells has been fixed.
  • SDK formatters configured via column definition will now be applied also on sub columns.
  • Sorting on the action column is now disabled by default.
  • Page index is now exposed on the DataTable.Pagination in a controlled and uncontrolled manner.

DonutChart

  • Data of the DonutChart can now be programmatically downloaded by calling downloadCSV on the charts ref.

HistogramChart

  • The horizontal crosshair now behaves correctly after pinning the tooltip.
  • ZoomIn, ZoomOut and Pan features are now available on the HistogramChart.

HoneycombChart

  • SeriesAction support is now available for the HoneycombChart.

MeterBarChart

  • MeterBarChart and MultiMeterBarChart now correctly show an empty chart for 0 values.

PieChart

  • Data of the PieChart can now be programmatically downloaded by calling downloadCSV on the charts ref.

SelectV2

  • SelectV2 visible focus now behaves correctly when displaying an error state.
  • onFocus and onBlur events are now exposed on the SelectV2 element.
  • SelectV2 now connects internal ids correctly when used in a FormField.
  • Aria labeling props are now supported on the SelectV2.

SparklineChart

  • null and undefined values are no longer treated as max values.

Sheet

  • Sheet now renders actions to the right consistently, even if no title is set.

Switch

  • Screen reader now correctly announces the Switch checked state.

Tabs

  • Disabled tabs are no longer activatable.

TextArea

  • TextArea now has the correct focus styles in error state.

0.111.0

Breaking changes

CategoricalBarChart, TimeseriesChart

  • The ref for the CategoricalBarChart and the TimeseriesChart now use an imperativeHandle. If you want to access the native element, you will have to access the ref.current.element.
Deprecations

Flex, Grid

  • Unused types for Grid and Flex are now deprecated. These include: FlexContainerCSS, FlexContainerProps, FlexItemCSS, FlexItemProps, FlexStyles, GridContainerCSS, GridContainerProps, GridItemCSS, GridItemProps, GridStyles.

TextInput, PasswordInput, DatePicker

  • Default values for the data-testid are now deprecated and will fall back to undefined.

Accordion

  • The trigger buttons of the Accordion now have an accessible text for screen-readers.

Charts

  • Chart color palette value 'warn' now correctly maps on 'log-status' and 'log-level' color palettes.
  • All charts now show the legend when there is enough space at the bottom.
  • Added proper space between Range Legend and resize line in bottom position.
  • Annotation's track, marker and pills feature a new design.

CategoricalBarChart

  • Added the capability of downloading data programmatically. The CategoricalBarChart now exposes a downloadData function on the ref.
  • Fixed tooltip scrollbar flakiness from CategoricalBarChart.

CodeSnippet

  • Copying the values of the CodeSnippet with Ctrl+C now works correctly in Firefox.

DataTable

  • The last nested column header now also uses the remaining space if rowActions are defined.
  • Conversion utility cellRenderer now allows options to control text truncation.
  • Nested headers are now correctly aligned when using ratioWidth and the table becomes scrollable.

DatePicker

  • DatePicker now supports a data-testid that defaults to the "date-picker" id and aria labelling props.

    Note: The data-testid of the DatePicker, TextInput, and PasswordInput container will default to undefined in the next breaking change. Also, the data-testid of the internal TextInput will be removed.

FieldSet

  • FieldSet components now correctly take up the available space inside the Overlay and no longer overflow in Firefox.

HistogramChart

  • Fixed tooltip scrollbar flakiness from HistogramChart.
  • Annotations in the HistogramChart now accept priority props.
  • The HistogramChart toolbar now shows a reset zoom button when zoom interactions are enabled.

MeterBarChart, MultiMeterBarChart

  • Fixed issue with unneeded scrollbar in MeterBar and MultiMeterBar charts.

Page

  • Page.Main and Page.Detail panel no longer show the default outline when focussed.

SelectV2

  • Dropdown overlay now adjusts its size correctly on small screens.
  • The trigger of the SelectV2 is now focused when an associated label is clicked.

Sheet

  • Removed the margin that was added when there was no Title or Actions in the Sheet component.

SparklineChart

  • SparklineChart x-axis is now consistent with the TimeseriesChart.

Switch

  • Disabled styling of the Switch is now consistent across checked and unchecked states.

TextInput

  • TextInput.Prefix and TextInput.Suffix now also support string values.
  • TextInput now supports a data-testid prop that defaults to the "text-input-root" id.

TimeseriesChart

  • Added the capability of downloading data programmatically. The TimeseriesChart now exposes a downloadData function on the ref.
  • Fixed annotations marker not being shown when it start/ends outside the chart domain boundaries of the Timeseries.

0.110.4

Patch Changes

  • Fixed TimeseriesChart issue that crashes the page in some cases after initial loading or resizing it.

0.110.3

Patch Changes

  • GridItem and FlexItem are no longer applied to the DOM.

0.110.2

Patch Changes

  • DataTable - fixed line wrap for custom cells.

0.110.1

Patch Changes

  • Consuming applications that use vanilla extract for styling no longer get a build error due to faulty style imports.

0.110.0

Minor Changes

  • BREAKING CHANGE: UseContainerSize hook now returns border box size and content box size.

    You may have to switch from using width / height to contentWidth / contentHeight to get the desired result.

  • The Container, Grid and Flex now expose style and className props and have aligned styling for gap sizing.

    BREAKING CHANGE: gridGap, gridRowGap and gridColumnGap have been removed from the API as their usage was deprecated. BREAKING CHANGE: rowGap and columnGap typings are now aligned with the gap property and only accepts the number based SpacingSizes instead of a token value.

Patch Changes

  • DataTable - When using UserActions for sorting in combination with enableDefaultSort, now the unsetting of sorting works.
  • Toast - showToast now returns the corresponding toast id and added dismissToast and dismissAllToasts functions that allow for programmatically dismissing one or all toasts.
  • Position scrollbar in the sheet on firefox next to the content.
  • Fixed spacing in DataTable when using rowThresholds together with expandable/selectable/sub rows.
  • DataTable, Menu and Tabs - added documentation for compound components and changed some types to interfaces to improve proptables.
  • SingleValue: Enabled possibility to extend styles and class names of the SingleValue outer container.
  • Chip component now has a maxWidth prop to configure its maximum width.
  • TextArea now has the same background color on focus.
  • SelectV2 with filtering enabled now allows typing spaces inside the filter input.
  • SelectV2 sortSelectedItemsFirst setting now correctly responds to cache misses.
  • SimpleTable now accepts a variant prop, to configure the visual look.
  • DQLEditor - Fix syntax highlighting for nested commands' keywords following a parameter.
  • SelectV2 dropdown no longer overextends the viewport when used in modals.
  • Integrated annotation tracks and markers in Histogram Chart.
  • Integrated empty, error, and loading states in the HoneycombChart component.
  • Fixed y-axis order not defined by slots in the Timeseries chart.
  • DataTable - the last column now always uses up the remaining space if the table uses the full width.
  • Fix button label overflow behavior when using prefix and/or suffix icons.
  • ToastContainer - onChange is cleaned up correctly now.
  • Export additional chart visualization utility types and methods.
  • DataTable - prevent the table crashing if sortBy is configured on custom unsortable columns.
  • Filterbar's onChange is only called once for controlled filter items.
  • Adapting honeycomb chart to integrate tooltip
  • InputButton now correctly defaults the size prop.
  • DataTable - we now provide the ability to define row actions.
  • Fixed bars not being stacked on the categorical bar chart when having only one category.
  • Adjusted keyboard focus handling in the Toast to work the same as in the Microguide and FeatureHighlight.
  • Fixed legend ticks behavior on dataset changing.
  • Fixed some edge cases in which SingleValueGrid font sizes didn't update properly.
  • Fixed setState warning log in TimeseriesChart
  • Added support for overlay stacking to the Drawer.
  • Fix missing userdata in timeseries converter.
  • Added logarithmic support for histogram y axis.
  • CodeEditor - Border has been fixed for the editor in the presence of a scrollbar.
  • The Heading component now supports adding an ID.
  • Fix useless autocomplete reopen in DQLEditor in some cases.

0.109.3

Patch Changes

  • DataTable - fixed line wrap for custom cells.

0.109.2

Patch Changes

  • CodeSnippet - Snippets with language 'dql' no longer crash if the character | is present in a string surrounded by double quotes.

0.109.1

Patch Changes

  • CodeEditor - we now provide a gutter configuration to display the gutter next to foldGutter.

0.109.0

Minor Changes

  • FilterBar's pinned state is now controllable.

    BREAKING-CHANGES: The defaultPinnedState prop of the FilterBar.Item is removed from the item and can now be set as a configuration object on the FilterBar itself. The record keys are the item's name and the value of the item's pinned state. Migrations are provided and should create the configuration according to the already set defaultPinnedState values. In case those attributes are spread, the migration must be done manually.

Patch Changes

  • Dismissible overlays are no longer closed incorrectly when used in conjunction with a menu.
  • A basic version of Honeycomb is now available.
  • Implement up-to-date consistent tooltip in the Timeseries Annotations integration.
  • CodeSnippet - Single line comments now don't highlight the next uncommented line if 'dql' is set as a language.
  • HistogramChart: Added tooltip for annotations.
  • Add showSelectedOptionsFirst to the SelectV2 to configure whether the options should be reordered to show the selected options at the top.
  • Added ChipGroup component and documentation.
  • Fixed value axis min/max values not being applied in the categorical bar chart.
  • Improves table rendering performance by ~10% by improving the variant handling.
  • Enabling the disableFiltering no longer hides the filter in the SelectV2 component.
  • Fixed time series chart's y-axis not automatically adjusting its scale when a minimum and/or maximum value was set on the x-axis.
  • DataTable - Text overflow ellipsis is now also applied when using a custom cell renderer and wrapping the content with DataTable.Cell.
  • Added support for the toolbar component into the Geo Map component.
  • DataTable - The next and previous buttons in paginated tables now output the correct pageIndex after using the page select.
  • The Range legend is now hiding the labels when there are collisions.
  • Added support for Log Scale in Histogram Chart for X Axis
  • Fixed meter bar that shows 50% when min and max are equal.
  • DataTable - Loading overlay is now displayed correctly in the presence of a scrollbar in the table.
  • Fixed log-status color palette being mapped to log-level color palette.
  • DataTable - when different column definitions are set, we ensure the widths update properly.
  • Fixed the categorical bar chart hidden legend property.
  • DataTable: fixed misalignment of column widths in autowidth column.
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.20.0

0.108.5

Patch Changes

  • Updated Readme

0.108.4

Patch Changes

  • DataTable - when different column definitions are set, we ensure the widths update properly.

0.108.3

Patch Changes

  • Tabs - OnChange is now not called on initial render if selectedIndex is set.

0.108.2

Patch Changes

  • Replaced React 18 usage of useId for uuidv4 instead, as it's supported in React 17.

0.108.1

Patch Changes

  • Reverted export of safeRender as this utility should be kept internal.

0.108.0

Minor Changes

  • Single and multi meter bar chart: Removed 'unit' prop as functionality is replaced by the 'formatter' prop.

  • BREAKING-CHANGE: The SelectV2.Filter component onFilterChange prop is now called onChange.

  • SelectV2 now supports the FormControlWithOverlayRef and is used in the FilterBar's "add filter" dropdown.

    BREAKING-CHANGES:

    • SelectV2 ref changed from a HTMLDivElement to a FormControlWithOverlayRef. Migrations are provided.
    • Tests that open the "add filter" dropdown might need some adjustments, if they're relying on the select test helpers.
  • Testing subpackage now requires jest@29 to run.

  • Unit SDK version bump and fixed unit and value misalignment in SingleValue.

Patch Changes

  • Single meter bar: threshold indicators positions are now calculated correctly when the min value is not 0.
  • DataTable - Column reordering is now possible via column actions.
  • DataTable now supports sub rows.
  • Added custom color per each slice in the pie/donut chart.
  • Fixes the SelectV2 height overflowing when the multiple version is used and added the overlayHeightStrategyHandling modifier to keep it consistent with the previous Select.
  • Fixed missing nice value for x-axis scale in Histogram Chart.
  • Fixed cropped off markers and scrollbar on TimeseriesChart Annotations.
  • Fixed the categorical bar chart relative values.
  • Single meter bar and multi meter bar: Updated styling so that the margin is applied to surrounding components instead of the chart segment.
  • SelectV2 enables clearable selection by default in multiple selection mode.
  • Allow React nodes inside the display value slot of the SelectV2.
  • PasswordInput tooltip text can now be customized by adding the new PasswordInput.Tooltip compound component.
  • DataTable: Fixed issue for a certain case where resizing didn't work after column visibility was toggled.
  • DefaultValue is now optional in the SelectV2.
  • SelectV2 now clears the filter text on close.
  • Removed unused Histogram interfaces from API
  • DataTable: fixed cell density when column header has custom renderer.
  • Integrated annotation tracks and markers in Histogram Chart.
  • Container now correctly accepts 0 as value for paddings and margins.
  • DataTable - Fixed column misalignment when autoWidth is set to false.
  • The SelectV2 now closes the overlay when clearing the selection in single mode.
  • The Select component is now deprecated in favor of the new SelectV2.
  • DateTimePicker precision type is now correctly not exposed on date only pickers.
  • DataTable - improved comment on data regarding what is allowed.
  • Cursor is now not-allowed on disabled SelectV2 options.
  • Fix Chip component styling when using very long keys.
  • Add missing props to the PasswordInput API: id, required, onKeyUp, and onKeyDown.
  • DataTable - performance improvement related to cell actions.
  • SingleValue Area Sparkline fades into transparent in dark mode.
  • Tabs - we have reworked internals and improved the performance when switching tabs.
  • Fixes keyboard navigation in the selectV2, when using shift tab.
  • Annotations: Fixed issues with marker being highlighted when having same time and different tracks.
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.19.0
    • @dynatrace/strato-icons@0.35.0

0.107.0

Minor Changes

  • Selectable rows in the DataTable can now be used in a controlled way. BREAKING-CHANGE: onRowSelectionChange now provides three parameters: The selected row ids, their original row data and a flag indicating whether the change was triggered by the user or internally. Migrations are provided.

Patch Changes

  • Implemented the Accordion component
  • FeatureHighlight is now correctly inserted before the Toast and/or Microguide, if they exist.
  • Interactive chip and chip delete button callbacks are called independently when disabled. Chip styles updated to have correct height in flex containers.
  • TextEllipsis works inside the TitleBar.Title element.
  • Added private slots for Histogram Annotations
  • Upgrade sdk/units package to 0.9.0. Minimum fraction digits are now set for DQL numbers.
  • DataTable: When resized, column widths properly fulfill min and max constraints.
  • Improved caching of useBreakpoint hook.
  • Timestamp formatter is consistent on when to omit seconds count.
  • DataTable: onColumnResize is now also called when the 1st column is resized.
  • Single meter and multi meter bar chart - Fix default labels not displaying correct values when the chart scale is negative.
  • FeatureHighlight no longer warns about conditionally rendered children.
  • Page panel now shrinks as much as possible when being added and there's not enough space available.
  • Editor - Autocomplete popup no longer clips through editor after underlying library (codemirror) update.
  • SelectV2 supports text truncation and customization of the overlay width.
  • Fixed the Logarithmic scale for Timeseries Bar Chart.
  • Fixed TimeseriesChart right axis config being lost when filtering by a series belonging to that axis.
  • DataTable: Removed console warnings for variants without rowSeparation, rowDensity
  • The SelectV2 component moved to the preview package.
  • Fixed TimeseriesChart right-axis threshold not showed correctly when filtering.
  • DataTable: We now debounce the onColumnResize callback with 300ms.
  • TextInput now accepts a type property that maps to the native input types.
  • Highlight: Now highlighted text will behave like normal text, long words will not break, even if they overflow the container.
  • useFocusRing updates focus when element changes its disabled state dynamically.
  • DataTable now features built-in support for visualizing column data as Meterbar charts.
  • Fix broken syntax highlighting in DqlEditor on nested property access.
  • In the Calendar view of the DatePicker, the days outside of the current month are now also clickable.
  • DataTable - Introduced enableDefaultSort prop to support choosing between custom and default sorting when using the onSortChange callback.
  • The calendar in the date picker now fully respects the configured user timezone.
  • "page-size" selector for an empty DataTable with pagination is enabled and working properly
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.18.3

0.106.2

Patch Changes

  • DataTable: We fixed an infinite re-render issue which occurred immediately when the DataTable mounted.

0.106.1

Patch Changes

  • Package export map now lists require before the esm packages to ensure jest@29 compatibility.

0.106.0

Minor Changes

  • Changed SingleValue label default color.

  • Added Histogram chart.

  • Made Annotations description prop optional.

  • DataTable: Column resizing is now possible also when one or more columns have autoWidth defined.

  • Added tooltip and legend configuration for single and multi meter bar charts.

  • Meter bar and multi meter bar charts can now automatically generate the value label.

  • DataTable - We now provide a "selected rows actions" feature that allows you to perform actions on one or multiple rows in the DataTable simultaneously.

  • Added 'vulnerability-status' color palette to charts.

  • The Tabs component now passes the remaining props and also allows for controlling the overflow behavior of the tab panel.

  • Align the DataTable's pagination UI with the latest design.

  • BREAKING CHANGE: The DataTable's default cell styling is not applied by default anymore for custom cells. Migrations are provided to re-apply it for existing occurrences.

  • Improved slots layout display for meter and multi meter bar.

  • BREAKING-CHANGE: Size definition prop value changed for single and multi meter bar components as follow:

    • size100 replaced by size8;
    • size200 replaced by size16;
    • size300 replaced by size24;
  • Fixed icon not showing in Annotations custom actions.

Patch Changes

  • DataTable - Now when a custom rendered header contains an interactive element it can properly emit a trigger event.

  • Multiple tooltips reset the timers correctly and close or open accordingly when moving from one trigger to the next.

  • Custom icons in the annotations now scale as expected in all supported browsers.

  • Fixed the CategoricalBarChart legend, should hide when there is no legend to display.

  • Form controls with overlays (select, timeframeselector, datepicker) now use an imperativeHandle instead of a element ref. The handle supports access to the wrapping element and the trigger as well to an open and close functionality.

    BREAKING-CHANGE: The ref structure changed but migrations are provided and should cover most of the use-cases. In case the migrations didn't work properly, the outer element of the component can now be accessed with ref.current?.element and the trigger with ref.current?.triggerRef?.

  • SingleValue icon and unit is not cropped on Windows anymore.

  • CodeSnippet with DQL selected now correctly escapes quotes within strings.

  • Page no longer crashes when dismissing a panel that has no calculated size yet.

  • DataTable - padding is no longer missing if a formatter is used in a column definition.

  • CodeSnippet with DQL selected now doesn't highlight numbers attached to functions or identifiers.

  • Links within accent chips now have better contrast when focused with the keyboard.

  • Updated dependencies

    • @dynatrace/strato-design-tokens@0.18.0

0.105.0

Minor Changes

  • BREAKING-CHANGE: KeyboardShortcutTooltip position prop is renamed to placement, which is automatically migrated.

    BREAKING-CHANGE: Tooltip position prop is renamed to placement, the fallbackPositions prop is renamed to fallbackPlacements, and the TooltipPosition type is renamed to TooltipPlacements, which are automatically migrated.

    BREAKING-CHANGE: Microguide position prop is renamed to placement, which is automatically migrated.

    BREAKING-CHANGE: FeatureHighlight position prop is renamed to placement and FeatureHighlightPosition type is renamed to FeatureHighlightPlacement, which are automatically migrated.

    BREAKING-CHANGE: InformationOverlay position prop is renamed to placement, which is automatically migrated.

  • Added formatter to the meter bar chart.

  • Added formatter to the multi meter bar chart.

  • Added start prop to an ordered List.

  • Aligned ExpandableText components design with guidelines.

  • Added tooltip to multi meter bar chart.

  • BREAKING-CHANGE: Removes AppHeaderDeprecated. The AppHeader component from the layouts package should be used instead.

  • Fixed automatically color mapping on time series chart for log-status, log-level, apdex & vulnerability-risk-level.

  • Added legend to multi meter bar chart.

  • Added new Chip component for showing a complex piece of information in a compact form.

  • FilterBar now focuses an item when it's selected from the additional filters menu and FilterBar.Items can now be removed only from the menu (the delete button next to each item is removed). Also, a FilterBar.ResetButton is now available, which provides a handler for resetting the filter values.

  • Aligned TerminologyOverlay and InformationOverlay designs.

  • DataTable - We have provided a space or sub-component DataTable.TableActions for consumers to create and place custom actions for the whole table. Table actions will be just an open slot, and consumers can add any children to this slot.

  • Support config provider and export configuration in the MultiMeterBarChart component

  • Added support for react icons to Annotations component.

Patch Changes

  • DQLEditor autocomplete now opens correctly when DQLEditor is inside a Drawer.

  • The button now exposes disabled and aria-disabled props to allow for natively disabling a button.

    Breaking changes

    • The disabled prop now adds the native disabled attribute to the underlying button element.
    • aria-disabled behaves according to the MDN documentation -> only semantically disables the button; events need to be handled by the app dev.
    Migration Guide

    We don't automatically migrate the disabled prop to aria-disabled, since we don't know which events would need to be cancelled. If you want to keep the button focusable for accessibility reasons, change the disabled prop to aria-disabled and handle events accordingly to avoid triggering an action.

  • Improved legend items rendering when the legend contains long text items.

  • Start of week in the Calendar now correctly respects user timeframe settings.

  • Fixed the CategoricalBarChart horizontal layout bar displays, should display transparent bar border.

  • Typography List now generates keys for items more intelligently.

  • Improved spacing in meter bar and multi meter bar when there are no optional slots.

  • Aria-label has been added to the generated checkbox item in the Markdown component.

  • Fixes onChange triggered twice on ToggleButtonGroup.

  • Updated to the latest @dynatrace-sdk/units version. Some formatter helper functions now remove trailing zeros when formatting the value, which affects the styling e.g. in charts.

  • The FilterBar accepts a showLabels prop to define whether a label is displayed. The configuration can be overwritten with the showLabel prop on the item.

  • The output of the migrations script now print the path to the file when the migration fails.

  • Fixed an issue with overlay closing when mousedown inside overlay.

  • Updated dependencies [46d42680f6]

    • @dynatrace/strato-icons@0.34.0

0.104.0

Minor Changes

  • Added support for custom configuration for meter bar chart.
  • Added basic tooltip to single meter bar chart.
  • Improved canvas area, band and bar shape plot performance with a high amount of series and data points.
  • Improved SingleValueGrid gap calculation for grids with an even number of SingleValue instances.
  • BREAKING CHANGE: Removed FormatterOptions support for the SingleValue formatter prop.
  • BREAKING CHANGE: Removed React.Node support for the SingleValue label property.

Patch Changes

  • react-intl peerDependency range is now extended to ^6.0.8.
  • Improved stacked area and bar data processing performance.
  • Fixed TimeseriesChart config override from variant children of gap policy, points to display and value representation.
  • DataTable - The pageIndex in the pagination is now reset to 0 when the data length is changed.
  • When using server-side pagination in the DataTable, the pageIndex is now not erroneously reset to zero once the length of the data changes.
  • DQLEditor's autocomplete no longer closes on trying to scroll inside the autocomplete tooltip using the scrollbar.
  • Fix overlay positioning when trigger repositions or animations are not yet done.
  • Fixed timeseries stacking positive or negative zero values considering previous value sign.
  • TextInput, NumberInput, and PasswordInput now allow the maxLength prop.
  • DQL formatter accepts configuration object directly.

0.103.1

Patch Changes

  • Fix: Bump @dynatrace-sdk/user-preferences peer dependency.

0.103.0

Minor Changes

  • Added customizable size to meter bar.
  • Added empty and error state to SingleValue component.
  • Create Simple Multi segment Meter Bar.
  • Enabled Timeseries, Pie, Donut & CategoricalBar charts to show a loading distractor.
  • Added thresholds support for single meter bar component.
  • Restore truncation of legend items after they receive focus.

Patch Changes

  • Dismissible overlays now remain open when selecting a menu item.
  • Fixed react warning messages related to tooltip and axis.
  • Fixed SingleValueGrid not sharing the label font size properly, when not all the SingleValue instances had label.
  • Removed react-aria dependency in Sheet component.
  • Tab no longer require a unique title under the Tabs component.
  • Fixed SingleValueGrid not accepting a mix of strings, numbers and objects in the data prop.
  • DataTable overlays are now scrollable if they would overflow the screen.
  • Fixed SingleValueGrid not showing SingleValue instances in deployed apps.
  • Fixed series action inspect dimension now shows value in Categorical Bar Chart.
  • convertToColumns now correctly handles 'duration' record types to allow for numeric sorting rather than alphanumeric.
  • Fixed SingleValue text being cropped on some characters.
  • Tabs now directly focus on the first interactive element in a TabPanel if there is one.
  • Updated dependencies [7ab1abd321]
  • Updated dependencies [44f40107fa]
    • @dynatrace/strato-design-tokens@0.17.1
    • @dynatrace/strato-icons@0.33.0

0.102.0

Minor Changes

  • SingleValue: Label color is no longer customizable.
  • Added a meter bar chart for data visualization.
  • Page: Add prop for disabling page animations.
  • BREAKING CHANGE: Renamed Avatar displayLabel prop to abbreviation. If you update using dt-app a migration will be applied automatically.
  • Added FeatureHighlight component.
  • Introduced new SingleValueGrid component, which contains several instances of SingleValue inside and provides a consistent layout for all of them.
  • Apply interactive styles on interactive surfaces (a and button) only.
  • Light mode appearance is now enforced when printing pages.

Patch Changes

  • Enables the Select All option to take its full width when the Select is initially opened.

  • Add onFocus, onBlur, and aria labelling props to the PasswordInput.

  • Tooltips are now correctly shown in a Chart's Legend/Toolbar.

  • The icon in the ExternalLink component now has the correct accessibility set up.

  • Improved timeseries chart overall performance.

    breaking-change: Removed isGap and absoluteValue from TimeseriesDatapoint.

  • Scrolling of DataTable header and body is now in sync also when navigating via keyboard.

  • Fix NumberInput width when used inside Flex container.

  • The offset between DatePicker overlay and its trigger is no longer bigger when setting a valid/invalid state with a hint.

  • DataTable: You can now trigger a CSV download programmatically using the new downloadData() function.

  • Microguide is now correctly inserted before the ToastContainer, if it exists.

  • Expandable row now takes the full width of DataTable, even if it is horizontally scrollable.

  • Updated dependencies [428e98b5f3]

    • @dynatrace/strato-design-tokens@0.17.0

0.101.2

Patch Changes

  • Fix NumberInput width when used inside Flex container.

0.101.0

Minor Changes

  • BREAKING-CHANGE:TextInput now uses compound components for Prefix and Suffix and the forwarded ref now uses an imperative handle (of type InputRef) to allow access to the wrapper element and the input element. A migration is provided for using the prefix and suffix icons and renaming the inputRef prop to the new ref prop. The migration also changes simple usages of the old ref type, but for more complex scenarios it might still be necessary to migrate manually.

    How to migrate: If you already used a type for the TextInput inputRef and the migration didn't change it, you need to replace it with and import InputRef from the @dynatrace/strato-components-preview/forms package. If you need to access the input element and the migration didn't already cover your use case, you can access it like this: ref.current?.inputRef, where ref is the forwarded ref. If you need to access the wrapper element, you can do it like this: ref.current?.element.

  • Added empty and error state to Sparkline component.

  • Fixed Chart error message with colon when there is no error message to show.

  • The ChartLegend is now cleaning its selection when the chart re-renders.

  • Added value type for labels in Pie and Donut.

  • Aria-label for the column header can now be set explicitly in the DataTable's column definition.

  • Conversion utilities: Add optional parameter to convertToColumns for providing column options e.g. ratioWidth: 1

  • DQLEditor autocomplete improvements:

    • Only open autocomplete in DQLEditor when starting a new command or parameter followed by a space
    • Move information of tooltip to the top of the DQLEditor autocompletion dropdown
    • Restyle information panel and enable syntax highlighting
    • Add middle ellipsis for long labels
  • Fixed automatically color mapping on time series chart for log-status, log-level, apdex & vulnerability-risk-level.

  • Set color palette mode to single-color by default on the CategoricalBarChart.

Patch Changes

  • DataTable - fixed allowing column contents to be 100% of the width.

  • react-is is now a peerDependency in order to allow a smooth transition over to react@18

  • DataTable cell with cell actions no longer bleeding into the next cell.

  • Fixed aria-labelling props used for the Select.

    Note: The native, hidden select is now also hidden from screen readers to fix the duplication of the aria-labelling props from the trigger button. If your tests rely on the native, hidden select or its options, you can now only access them by adding the option { hidden: true } to your selectors.

  • Adjusted internal padding styles of the Button component.

  • Adjusted Sparkline area gradient color and fixed first segment of the line being lighter than the others.

  • A bug in the DataTable, that didn't resize the table when the height property changed, has been fixed.

  • Editors now correctly apply formatting for highlighting new added values.

  • Rollback the old Timeseries loading display.

  • Fix syntax highlighting for escaped backslash in DQLEditor.

  • Button now renders icons correctly within its content section. Button content now defaults to inline-flex.

  • The Tooltip now also calls the onOpenChange callback on unmount and clears the opening warmup timeout.

  • Refactored annotations data processing logic and fixed grouping by time error.

  • Updated dependencies

    • @dynatrace/strato-design-tokens@0.16.0

0.100.1

Patch Changes

  • react-is is now a peerDependency in order to allow a smooth transition over to react@18
  • @testing-library/user-event peerDependency range has been extended to allow for newer major versions as well.

0.100.0

Minor Changes

  • Fixed toolbar rendering even if no config was present.

  • Deprecated Table has been removed from the library. Alternatively use either the DataTable or SimpleTable.

  • Introduced Trend component integrated with the SingleValue. Redesigned SingleValue internal layout to give more space to Sparkline.

  • Introduced alignment functionality as a prop to the SingleValue component.

  • Experimental support for react 18 has been added.

    This is the first draft containing compatibility for react 18. Please do not upgrade to react 18 in your applications when working on production applications as there are still some issues to be resolved.

  • The Avatar component can now be polymorphed.

  • The page content can now be scrolled while the tooltip's series action menu and the legend menu are open.

  • TimeseriesChart data points are now displayed at the middle of a timeframe.

  • react-intl is now listed as a peerDependency, effectively lifting the hard version lock. You are now able to use your own version of react-intl. Migrations to add react-intl in the previously used version are provided.

  • Added Empty and Error state feature into the CategoricalBarChart.

  • Added empty and error state to pie and donut.

Patch Changes

  • The fixed collapsed toolbar menu now correctly triggers the overlays x-Axis zoom and pan functionalities.
  • DataTable: Now the pagination defaultPageSize can be properly exported in the configuration.
  • BREAKING CHANGE: Removed unused prop onSeriesClick from CategoricalBarChart and TimeseriesChart.
  • Fixed the Timeseries toolbar A11y. Ensured that the keydown shortcuts were working correctly. Triggered X Axis zoom and Panning actions with the enter key. In Panning mode, allowed cancellation with the escape key.
  • Fixed SelectIndicator rendering issue when using useListboxOptionsWithIcon when passing too long texts. Fixed SelectSection title causing issues when passing too long texts.
  • DataTable: If empty user actions are defined cell no longer disappears.
  • Fixes an issue when clicking an element inside the roving focus container and navigating away with Shift+Tab, then with Tab.
  • DataTable defaultSelectedRows now work correctly without pagination.
  • Editors now consider min-height and max-height of wrapping flex container when using fullHeight.
  • DQL query results displayed in a DataTable instance are now correctly serialized, when downloaded as csv. Arrays and Records are not currently supported.
  • CodeEditor's autocomplete overlay now stacks correctly above a Surface component.
  • Updated dependencies
  • Updated dependencies
  • Updated dependencies
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.15.0
    • @dynatrace/strato-icons@0.32.0

0.99.3

Patch Changes

  • Fix charts not taking the full available width.

0.99.2

Patch Changes

  • DataTable selectable rows now work correctly when used with pagination.

0.99.1

Patch Changes

  • Editors now consider min-height and max-height of wrapping flex container when using fullHeight.

0.99.0

Minor Changes

  • Added Empty and Error state feature into the TimeseriesChart.

  • DataTable default minimum column width is now 30 instead of 100.

  • The surface now adds interactive styles autonomously when using it as an interactive element.

    BREAKING CHANGES: Removal of the interactive prop from the surface. It automatically styles all interactive surfaces, meaning all surfaces have a tabIndex or an underlying a or button HTML tag. There are migrations to remove the interactive prop and for interactive elements it shouldn't change anything. All those elements that do not rely on an interactive HTML syntax would need some manual adjustment to align the focus behavior.

  • Changed the SingleValue internal layout. Now the value, label, unit and sparkline are better positioned and distributed, and only have the vertical layout.

  • Adds an Inner element to the DonutChart. This allows you to customize the middle section within the DonutChart.

  • Removed the visible focus outline in clearable multiselects.

  • In the DataTable component a callback event onColumnResize is exposed that will be triggered when the user resizes a table column.

  • Remove value dimension from name of timeseries converter result if it is identical for all timeseries.

  • Charts color palettes apdex, log-status, log-level and vulnerability-risk-level now automatically map the colors to the values.

  • BREAKING CHANGE: DonutChart: Added new parameters to the Inner Component function.

  • Height calculation in Page Panel and Page Drawer is now aligned.

  • Adds support for anchors as part of the ActionGroup.

  • Adds support for custom series actions for PieChart and DonutChart.

Patch Changes

  • Fixed misplaced Timeseries and Categorical magnifiers and grid lines when the chart was center aligned.
  • In the DataTable, when the column actions are enabled, the column group header should not contain an empty actions menu when actions are unavailable.
  • Button with fixed width and prefix and/or suffix elements no longer overflow.
  • useRovingFocus hook now consistently sets focus when navigating away from a container with shift+tab. It now also correctly navigates to the new item when changing the initialIndex dynamically and tabbing inside the container.
  • Fixed bars being misplaced in the CategoricalBarChart when having single dimensions and grouped mode.
  • Bump @visx version to ^3.0.0.
  • DataTable: Reselection works now when only reselecting 1 item less and onSelectionChange is called with correct values when selecting multiple rows.
  • In the DataTable the correct row will be selected when any rows are expanded.
  • Fixed toolbar expanding out of chart bounds.
  • Fixed thresholds not being shown with infinite values in TimeseriesChart and CategoricalBarChart.
  • TextArea can now set its width to full, content (default), or a specific width.
  • Improve the formatting of the CSV data of the categorial chart
  • Ellipsis is now correctly styled if used in a Link.
  • Keep focus in dql and code editor when pressing tab.
  • Fixed width of ProgressBar in Flex containers.
  • Fixed the Timeseries X axis zoom selector opacity when accessing through keyboard shortcuts.

0.98.0

Minor Changes

  • DataTable now accepts a loading prop, which will display one of these 3 loading states:

    1. When the data table is initially loaded and columns and data are being loaded.
    2. When the table is loading new data.
    3. When the user switches to a new page and the data is being loaded.
  • Added empty, error and loading state core components.

  • Menu.Content now allows a avoidCollisions prop to be set (defaults to true). It can be used to override the default positioning behavior which is trying to avoid collisions.

  • DataTable row expansion can be controlled through props.

  • The Codesnippet now correctly copies the selected content only.

  • Added support for uncontrolled detail view and sidebar for the page component.

  • Charts Toolbar: Hide grip control when draggable is false.

  • Added unit prop to SingleValue.

  • List typography component has been redesigned.

  • TimeseriesChart: Added toolbar configuration to shared config provider.

  • The defaultValue for an uncontrolled Switch component is now optional.

  • DataTable: If rowSeparation and rowDensity are set to empty values during DataTable configuration import, they will fallback to default values.

  • Fixed wrong font-weight in Surface.

  • Toolbar: Collapse depending on container size.

  • Extended the properties that could be configured via Shared Config to the Sparkline when is within a SingleValue.

    • Color, showTicks and variant, are now configurable.
  • Icons now support custom sizes and predefined sizes were updated.

    BREAKING-CHANGE: Icon size "large" was changed from 64 to 32 pixels, and "text" option was removed. Migrations are provided.

  • Adds a controlState to the TimeframeSelector.

  • Implemented the categorical bar chart custom actions.

  • Toast: Added support for JSX in the message for formatting.

  • All Editors now accept AriaLabelingProps as part of the props.

  • DataTable doesn't show the expandable content anymore if it's outside the virtualized viewport while the row is inside.

  • Tabs can now be rendered conditionally.

  • Add units and proper value formatting to DataTable.

  • The scrollbar colors have changed.

  • BREAKING-CHANGE: Adjusted DataTable Toolbar API:

    • DataTable.Toolbar.DownloadData changed to DataTable.DownloadData
    • DataTable.Toolbar.FontStyle changed to DataTable.FontStyle
    • DataTable.Toolbar.LineWrap changed to DataTable.LineWrap
    • DataTable.Toolbar.VisibilitySettings changed to DataTable.VisibilitySettings

    Migrations are provided.

  • DataTable and SimpleTable now allow for configuring vertical alignment as well.

Patch Changes

  • Fixed misplaced borders in the TimeseriesChart on keyboard accessed panning mode.
  • NumberInput cursor now moves to the beginning/end when pressing Home/End and no min/max value is set.
  • Fixed TimeseriesChart threshold values displaying in flipped order.
  • Fixed y-axis max tick not to surpass 100% when displaying relative value representation in timeseries chart.
  • ToggleButtonGroup now correctly sets the initial focus on the selected element.
  • Fixed and refactored Timeseries overlays interactions.
  • Fixed the magnifier is not being showed when x-zoom is being selected.
  • Fixed wrong icons displayed while interact with the ChartLegend.
  • Improved the display of axis lines and threshold lines in charts, addressing issues like inconsistent thickness and overlapping lines.
  • Fixed TimeseriesChart crosshair line being showed over the data points.
  • Fixed tooltip not being properly updated in the TimeseriesChart between data points with the same value.
  • Fixed Annotations timestamp indicators in Timeseries not showing.
  • Added 8px of padding around the ChartLayout.
  • Updated dependencies
  • Updated dependencies
  • Updated dependencies
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.14.0
    • @dynatrace/strato-icons@0.31.0

0.97.1

Patch Changes

  • Improved text width detection for TextEllipsis to avoid truncating text when enough space is available.

0.97.0

Minor Changes

  • Toast can now be focused with Cmd+F6 as well.
  • DataTable: Now header dividers have the correct height when sub-columns are hidden.
  • BREAKING CHANGE: Table column types now enforce the ID and accessor rules. Migrations are provided for cases with missing IDs.
  • Success variant of the Toast has been added.
    • Updated dependency @radix-ui/react-dropdown-menu from 0.1.1 to 2.0.4 (used by Menu component).
    • BREAKING CHANGE: Menu.TriggerItem was renamed to Menu.SubTrigger, Menu.Content tags inside nested Menus are now of type Menu.SubContent and nested Menus are now of type Menu.Sub. Migrations are provided, however there might be corner cases where manual changes might be required like when imports got renamed or affected components get styled with styled-components.
    • The new version of @radix-ui/react-dropdown-menu may occasionally cause issues with unit tests. If you get an error message like this, you have to use a workaround: TypeError: Cannot read properties of null (reading 'documentElement'). In this case, add the following line to your test setup: afterAll(() => new Promise((resolve) => setTimeout(resolve, 0)));. For more information, see "Comment on #1908 getDocumentElement null during testing" (https://github.com/floating-ui/floating-ui/issues/1908#issuecomment-1520880447).
  • Added Avatar and AvatarGroup components.
  • The configured alignment from the column definition now takes precedence over the alignment based on columnType.
  • DataTable: Table body height is now calculated correctly during first render.
  • Improve dql suggestions in DQLEditor.
  • Removed the LoadingIndicator component. Use the ProgressCircle component instead.
    • BREAKING CHANGE: The LoadingIndicator component is no longer available. There is a migration available. Please update using the dt-app update command.
  • DataTable export to CSV now handles arrays, undefined and null.
  • Dismissible overlays now remain open when closing a Toast notification.
  • CodeSnippet now provides an onCopy callback.
  • The DataTable now has a shortcut for selecting/deselecting multiple rows.
  • Page panel sizes type changed from string to numbers for each size.
  • Unify error states design for forms components.
  • CodeEditor and DQLEditor now expose onFocus and onBlur events.
  • Add Microguide component.
  • The DataTable now has a new toolbar button for toggling whether lines should be wrapped in all columns of the table.
  • The Code component now uses the field background color.

Patch Changes

  • Handle modifiers correctly if the intent button is triggered via the keyboard.
  • Column and Cell action menus in DataTable are now aligned in accordance to column alignment.

0.96.0

Minor Changes

  • You can now configure a customizable message to be displayed in the absence of data in the DataTable component.

  • Extend IntentButton to support recommending an appId and intentId.

    Breaking changes

    • Removed IntentIconButton. Use IntentButton with iconOnly property instead.
  • With changes to column resizing when fullWidth is set to true, header groups alignment is broken in certain scenarios.

  • On DataTable columns you can now use SDK formatting i.e. you can specify column formatting with the notation of @dynatrace-sdk/util-formatters.

  • useBreakpoint hook with an array query will no longer cause re-renders.

Patch Changes

  • Using a simple text input no longer throws a warning that it's switching from uncontrolled to controlled.
  • DataTable select all button now works correctly in Firefox.
  • FilterBar now calls onFilterChange only once when multiple items are added at the same time using the MoreMenu.
  • The multiple Select trigger now correctly displays text values of complex options.
  • CodeSnippet no longer applies rounded corners in nested elements.
  • In the DataTable cells with user actions defined, the autoWidth setting is not resizing the column based on the content.
  • The FilterBar onFilterChange callback is no longer cached.
  • Introduced alignment property for Menu.Content that determines how the menu is aligned relative to its trigger.
  • The FormField no longer nests labels in case a custom label is used.
  • The FilterBar can now display the text of custom labels and the MoreMenu now truncates multiple items with an ellipsis when they overflow. Also, when using custom labels in the FilterBar.Item, the input id and the label can now be properly connected with the htmlFor attribute.
  • Fixed regression that caused overflowing cell content to be cut off without ellipsis in DataTable.
  • Editors background no longer bleeds out of it's container.
  • Increase scrollbar visibility in Firefox.
  • Updated dependencies
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.13.0

0.95.0

Minor Changes

  • DataTable: Overscan for virtualization is now set to 5 to improve performance.

  • DataTable: Now if all sub-columns are hidden, the header height will collapse to one row.

  • CodeSnippet: Selecting and copying with 'ctrl/cmd + c' doesn't copy the line-numbers anymore.

  • Fixed Divider layout in the TitleBar when using it inside Flex layouts.

  • DataTable: The threshold for the rows (used for row highlighting) can be configured and applied at the DataTable level as table props.

    BREAKING CHANGE: Row highlighting is not possible to configure via column definition anymore. Property highlightRow is removed from Threshold options.

    Before:

    const column: TableColumn[] = [
    {
    header: 'Firstname',
    accessor: 'firstname',
    thresholds: [
    {
    value: 'Emery',
    comparator: 'equal-to',
    color: 'red',
    ~~highlightRow: true,~~
    },
    ],
    }
    ];

    Now the row highlighting must be defined on the table level by using data table prop rowThresholds.

    See usage examples https://developer.dynatrace.com/preview/reference/design-system/preview/tables/DataTable/#row-highlighting

    After:

    <DataTable
    rowThresholds={[
    {
    id: 'firstname', // column accessor/id must be specified
    value: 'Emery',
    comparator: 'equal-to',
    color: 'red'
    },
    ]}
    />

  • DataTable: Under certain scenarios header groups are not aligned properly.

  • Heading: The semantic level is now set to same level as the visual level, if not specifically specified with the 'as' property.

  • In the DataTable, default column actions are not rendered on expandable/selectable cells anymore.

  • Unify component prop interface names and fix DOMProps imports.

    Breaking changes

    • Renamed component prop interfaces CheckboxProps* to Checkbox*Props
    • Renamed component prop interfaces SwitchProps* to Switch*Props
    • Renamed component prop interfaces TabsProps* to Tabs*Props
  • In the DataTable, if all regular columns are hidden now the expandable and selectable columns are also hidden.

  • CodeSnippet/CodeEditor: design is now aligned

  • Page compounds can now be rendered anywhere in the page's subtree and no longer need to be direct children of the page.

  • Fixes ability to resize when the table is fullWidth. Also, changes the column width allocation when fullWidth is enabled. Instead of all columns proportionately expanded, all columns remain same and additional space is taken by the last column or last column is expanded to take remaining space.

Patch Changes

  • Fixed bug in the DQLEditor where onVisibilityHandler reference was never updated on re-render.

0.94.3

Patch Changes

  • Categorical axes now have the correct padding again.

0.94.2

Patch Changes

  • Menu now no longer requires a second click in Chrome to open after a re-render.
  • Expandable row content in Datatable works with fullWidth again.

0.94.1

Patch Changes

  • Packages now provide a Readme file within them.
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.12.1
    • @dynatrace/strato-icons@0.30.5

0.94.0

Minor Changes

  • When column groups are present, include parent header also in the downloaded csv file.

  • DataTable pagination go to end/start now also reset row selection. In this regard, they now behave the same as next/previous.

  • Cut and paste are now no longer possible for read-only editors.

  • New toasts are now shown at the bottom instead of the top.

  • The Button now supports loading states and shows an indeterminate ProgressCircle when loading.

  • The RunQueryButton now uses the ProgressCircle to display the loading state.

  • Release the NewPage component as stable Page. Page panels now also support minWidth.

    Breaking changes

    • The previously deprecated Page component is replaced by the new page component.
    • The old page's SideBar is renamed to Sidebar with the replacement of the page.
    • Mandatory dismissed and onDismissChange prop on the Sidebar.
    • The compounds of the page (Header, Sidebar, Main, and DetailView) must be rendered as direct children of the page.

    The following example will no longer work:

    <Page>
    <Page.Header></Page.Header>
    <Routes>
    {/* route 1 */}
    <>
    <Page.Sidebar></Page.Sidebar>
    <Page.Main></Page.Main>
    </>
    {/* route2 */}
    <>
    <Page.Sidebar></Page.Sidebar>
    <Page.Main></Page.Main>
    <Page.DetailView></Page.DetailView>
    </>
    </Routes>
    </Page>

    You will have to restructure your app and either pull out the page to the topmost level and add the routes to the corresponding panels, or create a page for each route.

    <Page>
    <Page.Header></Page.Header>
    <Page.Sidebar></Page.Sidebar>
    <Page.Main>
    <Routes>...</Routes>
    </Page.Main>
    <Page.DetailView>
    <Routes>...</Routes>
    </Page.DetailView>
    </Page>
    <Routes>
    {/* route 1 */}
    <Page>
    <Page.Header></Page.Header>
    <Page.Sidebar></Page.Sidebar>
    <Page.Main></Page.Main>
    </Page>
    {/* route2 */}
    <Page>
    <Page.Header></Page.Header>
    <Page.Sidebar></Page.Sidebar>
    <Page.Main></Page.Main>
    <Page.DetailView></Page.DetailView>
    </Page>
    </Routes>
  • In DataTable onRowSelectionChange() callback avoid exposing internal library data structure in the event parameter. Only expose the original data which is selected. Breaking change: The data in the event parameter is now at the top level, so instead of data.original use data.

  • BREAKING-CHANGE: DataTable now only accepts type 'number' for the column 'width' property.

  • The Switch component has a new design and internally uses an input now.

  • Removed icon in front of FilterBar.

  • DataTable column resizing issues

  • Page panels can now be resized by keyboard actions (ArrowLeft and ArrowRight) when focusing the resize handle.

  • Add Surface component.

  • The Link/ExternalLink/AppLink always shows an underline.

Patch Changes

  • Make truncationMode property optional for TextEllipsis.
  • Menu now only closes once forcibly if outside of the viewport.
    • Disable column actions when null is returned instead of TableUserActions.
    • Disable cell actions when null is returned instead of TableUserActions.
  • Fix parenthesis highlighting in DqlEditor. ()
  • Menus now close when the window is out of focus.
  • Fixed issue where text got completely truncated when TextEllipsis was used inside a Button.
  • Fix failing timeseries converter with empty array. ()
  • Fixed bug where sometimes the available width for ellipsized text was assumed to be larger than is actually was.
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.12.0

0.93.3

Patch Changes

  • Fixes missing autoComplete in the PasswordInput component.

0.93.2

Patch Changes

  • Migrations for version 0.93.0 are now referenced correctly.

0.93.1

Patch Changes

  • Testing subpackage now supports the correct entry point after a regression.

0.93.0

Minor Changes

  • In the DataTable, the correct hover styling is now applied to all column headers with column actions defined.

  • Editors now have a new focus behaviour. When navigating via the keyboard, users now have to press ENTER to start editing.

  • UseRovingFocus does not overwrite styles attribute of the ref anymore.

  • Fixed wrong button variant for toast dismiss button.

  • @dynatrace/strato-components-preview/conversion-utilities has been updated to use @dynatrace-sdk/client-query-v09 instead of @dynatrace-sdk/client-query-v02.

    Breaking-change: This change introduces a lot of changes since the move from RecordV2Beta[] to QueryResult. The conversion-utilities package is no longer compatible with @dynatrace-sdk/client-query-v02. Most of the conversion utilities have changed to accept ResultRecord[] and/or RangedFieldTypes[] that are provided from @dynatrace-sdk/client-query-v09. Please be aware that the conversion-utilities api may change at any given time to match changes in @dynatrace-sdk/client-query.

  • Update to client-query 1.0 sdk

  • Divider now accepts a variant and a color option.

  • Hiding a column can now be added to the column actions menu using TableUserActions.HideColumn.

  • Using dismiss functionality instead of the collapse functionality on NewPage.Sidebar.

    Breaking-changes:

    • Renaming onDismiss to onDismissChange and extending it with a suggested state and reason
    • Removing collapse form the NewPage.Sidebar
    • Introducing onDismissChange and dismissed on the NewPage.Sidebar
  • TimeseriesChart now supports SDK units.

  • The DataTable's default styling (variant) has been adjusted. It now sets rowSeparation to horizontalDividers and sets contained by default.

  • @dynatrace/strato-components-preview/editors has been updated to use @dynatrace-sdk/client-query-v09.

  • Fixed missing button when there are collapsed breadcrumbs.

  • Add Container component.

  • Replaced @dynatrace/strato-components-preview/formatters formatters with the @dynatrace-sdk/units formatters.

Patch Changes

  • Updated dependency use-resize-observer from 7.1.0 to 9.1.0.
  • Fixes an issue when clicking an item inside the roving focus container focuses the first item and then the clicked item. Also, fixes shift tabbing to skip the wrapping container that's just used for checking non-focusable items.
  • Ordered lists now increment correctly when nested.
  • Minor performance improvement in Menu component.
  • Fix bug where text inside TextEllipsis component gets truncated even though enough space is available (only occurs when middle ellipsis is used in combination with Flex).
  • Updated dependencies
    • @dynatrace/strato-icons@0.30.0

0.92.1

Patch Changes

  • Migration function for 0.91.0 will no longer fail the entire update process when the source file fails to parse.

0.92.0

Minor Changes

  • NewPage component now allows custom style overrides.

  • Button now supports variant, color, size, textAlign and width props and Button.Prefix and Button.Suffix components. BREAKING CHANGE: Options for the variant and width props changed. The props prefixIcon and suffixIcon are no longer supported. There is a migration available. Please update using the dt-app update command.

  • Text style variants are now aligned with the new design token structure.

    BREAKING-CHANGE: Text style definition is split up in textStyle and fontStyle to reflect the new token structure (see Text component and getTextStyle/getTextStyleCss). The exported styles are renamed and all text styles are now located in the 'core' package and removed from the 'typography' package.

    There is a migration available. Please update using the dtp-app update command.

  • ExternalLink component now accepts an onClick handler

  • Added ability to escape DataTable column accessors using quotes.

Patch Changes

  • Tables - Adjust TableUserActions component to allow for more flexible wrapping and usage patterns.
  • DataTable - vertical dividers are not aligned when horizontal scrolls are present.

0.91.2

Patch Changes

  • Publish config in packages has been fixed to ship correct files.
  • Updated dependencies
    • @dynatrace/strato-design-tokens@0.11.2
    • @dynatrace/strato-icons@0.29.1

0.91.1

Patch Changes

  • Updated dependencies
    • @dynatrace/strato-icons@0.29.0

0.91.0 (2023-03-06)

Features

  • preview-charts:
    • Removed color and original unit from Timeseries.
    • Added new menu for series actions on the Tooltip.
    • Removed suffix prop from SingleValue.
  • preview-notifications:
    • Toasts can now also be spawned outside of a component context.
  • preview-tables:
    • Toolbar component for downloading data from table is now available.

Bug Fixes

  • preview-charts:
    • Fixed performance issues LineCanvas.
    • Fixed issue on the pie/donut config props not taken into account. BREAKING-CHANGE
    • Annotations
    • Tooltip not showing the proper x-axis datapoints on time series chart.
    • Fixed maximum call size getXAxisRange.
  • preview-layouts:
    • Adjust newPage side-panel padding.
    • Add alt prop to default app icon, used for the <AppHeader /> simplest version.
  • preview-tables:
    • Make resizing columns work with column actions.
    • DataTable - vertical dividers are not aligned with horizontal scroll.
    • Expanded rows now collapse if data for table changes.
    • DataTable - TableVisualLookConfig - Nested header resizing.

Breaking Changes

  • preview-charts: The color is no longer part of the data. In order to override a series color please migrate the code to the new slotting approach (more details in the doc).

  • preview-charts: The content of the suffix prop will be migrated to the label or formatterOptions prop if possible, otherwise removed completely.

0.90.0 (2023-02-27)

Features

  • preview-charts:
    • Introduced track label functionality to AnnotationsChart.
    • Added markers interactions to TimeseriesChart.
    • Implemented scroll for annotations with more than 3 tracks.
    • Apply annotation track symbol and color props to markers.
    • Filter annotations out of bounds for TimeseriesChart Annotations.
    • Removed outer circle from markers in AnnotationsCharts.
    • Make hidden prop work for track and for marker.
    • Remove opacity from marker border when they overlap.
    • Support custom tooltip actions for annotations.
    • Created Track and Marker slots for Annotations.
    • Added tooltip hover interaction.
    • Added Tooltips for AnnotationsChart.
    • Created annotations slot configuration.
    • Moved AnnotationsChart to preview package.
    • Created threshold indicator component.
    • Fixed categorical bar chart not displaying correctly non-homogeneous data.
  • preview-forms:
    • Update onChange signature for forms components.
  • preview-layouts:
    • Add AppHeader compound components to configure the app name and icon.
    • Make AppHeader NavItems polymorphic to remove the react-router-dom dependency. BREAKING-CHANGE
  • preview-tables:
    • Implement user actions for column groups.

Bug Fixes

  • preview-charts:
    • Fixed CategoricalBarChart color overrides not working.
    • Fixed CategoricalBarChart displaying wrong unit, when different units are passed.
    • Fixed y-axis ticks on logarithmic scale.
    • Highlighted group items in the annotations tooltip.
    • Tooltip doesn't unpin and eventually doesn't show at all.
    • Tooltip trigger area is not on the whole marker when at the end of a track.
    • Fixed chart crashing on annotations bottom border hover.
    • Fixed overlay mouseposition with overflow.
    • Add missing overlay padding to AnnotationsChart in Timeseries.
    • Fixed tooltip disappearing on hover over it.
    • Unit in right axis accepts undefined value.
    • Fixed pointsDisplay plot override.
    • Fixed LineChart bad performance.
  • preview-core:
    • Fixed ProgressBar text reflow on condensed density variants.
  • preview-forms:
    • Fix clearing the select filter value on close.
  • preview-notifications:
    • ToastContainer is now a singleton component.
  • preview-overlays:
    • Fix sheet content container height.
  • preview-tables:
    • DataTable visual look bugs found by UX.

Refactors

  • Removed overlay from annotation tooltip implementation.

Breaking Changes

  • preview-forms: DatePicker onChange 'value' parameter type was renamed from DatePickerChangeEvent to DatePickerValue. TimeframeSelector onChange signature changed to object containing the 'from' string, 'to' string, and 'details' object, so the usage needs to be updated from onChange={(value, details) => { setValue(value); setDetails(details); } to onChange={(timeframe: Required<Timeframe>) => { setValue(timeframe); setDetails(timeframe?.details ?? null); }.

0.89.0 (2023-02-20)

Features

Package was renamed to @dynatrace/strato-components-preview

Still have questions?
Find answers in the Dynatrace Community