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
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
.
- The
label
prop on theFormField
is now deprecated. - The
InputRef
type is now deprecated and is replaced with theFormControlRef
type. - The
Section
component, theDocumentOutlineContext
and theDocumentOutlineProvider
are now deprecated.
Accordion
Accordion.Section
now supports akeepMounted
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 akeepMounted
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 afocus
function to set focus the trigger.
Tabs
Tab
now supports akeepMounted
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 theFormFieldMessages
slot.
TimeframeSelector
- Add support for custom preset items using the
TimeframeSelector.Presets
andTimeframeSelector.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
TimeframeSelector
- The type of the forwarded ref changed to
TimeRangePickerRef
to include/give access to thefrom
andto
input refs. So if you explicitly use the old type for the ref -FormControlWithOverlayRef
- you would need to manually rename it toTimeRangePickerRef
.
@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
@dynatrace/strato-icons
was updated to version^0.35.11
.
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
Charts
ChartInteractionsConfig.defaultMode
-This property will be removed, as theinspect
andzoom-x
modes no longer exist. The default mode will be changed toexplore
.userData
prop is now deprecated on theTimeseriesChart
.
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.
@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 allowsstyle
andclassName
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 onautoWidth
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 extendingTimeseries
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
Core
- The
getThresholdColor
function has been deprecated.
FilterBar
defaultPinnedState
prop on theFilterBar.Item
has been deprecated. Use thedefaultPinnedState
prop on theFilterBar
component instead.
TextArea
- The
resizable
prop has been deprecated. It is replaced by aresize
prop, that now let's you define the resize axis individually. To mitigate the deprecation you can changeresizable={false}
toresize="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 theCodeEditor
andDQLEditor
.
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
andfigure
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 ofundefined
. - 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 tohorizontal
,vertical
,both
, ornone
. Note that theresizable
prop is now deprecated in favor of theresize
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 to0.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 themuted
category/series name on charts. Fixedcategorical
color palette not using the whole amount of colors on theTimeseries
and theHistogram
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 callingdownloadCSV
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
andMultiMeterBarChart
now correctly show an empty chart for 0 values.
PieChart
- Data of the
PieChart
can now be programmatically downloaded by callingdownloadCSV
on the charts ref.
SelectV2
SelectV2
visible focus now behaves correctly when displaying an error state.onFocus
andonBlur
events are now exposed on theSelectV2
element.SelectV2
now connects internal ids correctly when used in aFormField
.- Aria labeling props are now supported on the
SelectV2
.
SparklineChart
null
andundefined
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
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 theref.current.element
.
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 adownloadData
function on theref
. - Fixed tooltip scrollbar flakiness from
CategoricalBarChart
.
CodeSnippet
- Copying the values of the
CodeSnippet
withCtrl+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 adata-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 theOverlay
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
andPage.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
orActions
in theSheet
component.
SparklineChart
SparklineChart
x-axis is now consistent with theTimeseriesChart
.
Switch
- Disabled styling of the
Switch
is now consistent across checked and unchecked states.
TextInput
TextInput.Prefix
andTextInput.Suffix
now also support string values.TextInput
now supports adata-testid
prop that defaults to the "text-input-root" id.
TimeseriesChart
- Added the capability of downloading data programmatically. The
TimeseriesChart
now exposes adownloadData
function on theref
. - 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
andFlexItem
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
tocontentWidth
/contentHeight
to get the desired result. -
The
Container
,Grid
andFlex
now exposestyle
andclassName
props and have aligned styling forgap
sizing.BREAKING CHANGE:
gridGap
,gridRowGap
andgridColumnGap
have been removed from the API as their usage was deprecated. BREAKING CHANGE:rowGap
andcolumnGap
typings are now aligned with thegap
property and only accepts the number basedSpacingSizes
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 addeddismissToast
anddismissAllToasts
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 newPasswordInput.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 withref.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 toplacement
, which is automatically migrated.BREAKING-CHANGE:
Tooltip
position
prop is renamed toplacement
, thefallbackPositions
prop is renamed tofallbackPlacements
, and theTooltipPosition
type is renamed toTooltipPlacements
, which are automatically migrated.BREAKING-CHANGE:
Microguide
position
prop is renamed toplacement
, which is automatically migrated.BREAKING-CHANGE:
FeatureHighlight
position
prop is renamed to placement andFeatureHighlightPosition
type is renamed toFeatureHighlightPlacement
, which are automatically migrated.BREAKING-CHANGE:
InformationOverlay
position
prop is renamed toplacement
, which is automatically migrated. -
Added
formatter
to the meter bar chart. -
Added
formatter
to the multi meter bar chart. -
Added
start
prop to an orderedList
. -
Aligned
ExpandableText
components design with guidelines. -
Added tooltip to multi meter bar chart.
-
BREAKING-CHANGE: Removes
AppHeaderDeprecated
. TheAppHeader
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, aFilterBar.ResetButton
is now available, which provides a handler for resetting the filter values. -
Aligned
TerminologyOverlay
andInformationOverlay
designs. -
DataTable
- We have provided a space or sub-componentDataTable.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 whenDQLEditor
is inside a Drawer. -
The button now exposes
disabled
andaria-disabled
props to allow for natively disabling a button.Breaking changes
- The
disabled
prop now adds the nativedisabled
attribute to the underlyingbutton
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 toaria-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 thedisabled
prop toaria-disabled
and handle events accordingly to avoid triggering an action. - The
-
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 onToggleButtonGroup
. -
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 ashowLabels
prop to define whether a label is displayed. The configuration can be overwritten with theshowLabel
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 ofSingleValue
instances. - BREAKING CHANGE: Removed FormatterOptions support for the
SingleValue
formatter prop. - BREAKING CHANGE: Removed
React.Node
support for theSingleValue
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
, andPasswordInput
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 theSingleValue
instances had label. - Removed react-aria dependency in
Sheet
component. Tab
no longer require a unique title under theTabs
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 aTabPanel
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 toabbreviation
. If you update using dt-app a migration will be applied automatically. - Added FeatureHighlight component.
- Introduced new
SingleValueGrid
component, which contains several instances ofSingleValue
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 thePasswordInput
. -
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
andabsoluteValue
fromTimeseriesDatapoint
. -
Scrolling of DataTable header and body is now in sync also when navigating via keyboard.
-
Fix
NumberInput
width when used insideFlex
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 theToastContainer
, 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 forPrefix
andSuffix
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
- Only open autocomplete in
-
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 theonOpenChange
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 theDataTable
orSimpleTable
. -
Introduced Trend component integrated with the
SingleValue
. RedesignedSingleValue
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 ofreact-intl
. Migrations to addreact-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
fromCategoricalBarChart
andTimeseriesChart
. - 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
orbutton
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 theDonutChart
. This allows you to customize the middle section within theDonutChart
. -
Removed the visible focus outline in clearable multiselects.
-
In the
DataTable
component a callback eventonColumnResize
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
andPage Drawer
is now aligned. -
Adds support for anchors as part of the
ActionGroup
. -
Adds support for custom series actions for
PieChart
andDonutChart
.
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 aLink
.- 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 aloading
prop, which will display one of these 3 loading states:- When the data table is initially loaded and columns and data are being loaded.
- When the table is loading new data.
- 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 toDataTable.DownloadData
DataTable.Toolbar.FontStyle
changed toDataTable.FontStyle
DataTable.Toolbar.LineWrap
changed toDataTable.LineWrap
DataTable.Toolbar.VisibilitySettings
changed toDataTable.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 byMenu
component). - BREAKING CHANGE:
Menu.TriggerItem
was renamed toMenu.SubTrigger
,Menu.Content
tags inside nestedMenu
s are now of typeMenu.SubContent
and nestedMenu
s are now of typeMenu.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).
- Updated dependency
- Added
Avatar
andAvatarGroup
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 theProgressCircle
component instead.- BREAKING CHANGE: The
LoadingIndicator
component is no longer available. There is a migration available. Please update using the dt-app update command.
- BREAKING CHANGE: The
DataTable
export to CSV now handles arrays, undefined and null.- Dismissible overlays now remain open when closing a
Toast
notification. CodeSnippet
now provides anonCopy
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
andDQLEditor
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
. UseIntentButton
with iconOnly property instead.
- Removed
-
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 callsonFilterChange
only once when multiple items are added at the same time using theMoreMenu
.- 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, theautoWidth
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 theFilterBar.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 theTitleBar
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*
toCheckbox*Props
- Renamed component prop interfaces
SwitchProps*
toSwitch*Props
- Renamed component prop interfaces
TabsProps*
toTabs*Props
- Renamed component prop interfaces
-
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
whereonVisibilityHandler
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 indeterminateProgressCircle
when loading. -
The RunQueryButton now uses the ProgressCircle to display the loading state.
-
Release the
NewPage
component as stablePage
. Page panels now also supportminWidth
.Breaking changes
- The previously deprecated
Page
component is replaced by the new page component. - The old page's
SideBar
is renamed toSidebar
with the replacement of the page. - Mandatory
dismissed
andonDismissChange
prop on theSidebar
. - The compounds of the page (
Header
,Sidebar
,Main
, andDetailView
) 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> - The previously deprecated
-
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 ofTableUserActions
. - Disable cell actions when
null
is returned instead ofTableUserActions
.
- Disable column actions when
- 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[]
toQueryResult
. The conversion-utilities package is no longer compatible with@dynatrace-sdk/client-query-v02
. Most of the conversion utilities have changed to acceptResultRecord[]
and/orRangedFieldTypes[]
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
tohorizontalDividers
and setscontained
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); }
toonChange={(timeframe: Required<Timeframe>) => { setValue(timeframe); setDetails(timeframe?.details ?? null); }
.
0.89.0 (2023-02-20)
Features
Package was renamed to @dynatrace/strato-components-preview