@sisense/sdk-ui 2.13.0 → 2.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/dist/ai.cjs +2 -2
  2. package/dist/ai.js +6 -6
  3. package/dist/analytics-composer/node.cjs +1 -1
  4. package/dist/analytics-composer/node.js +4 -4
  5. package/dist/analytics-composer.cjs +1 -1
  6. package/dist/analytics-composer.js +6 -6
  7. package/dist/{derive-chart-family-Ca1NT5US.cjs → derive-chart-family-0J_WPLDy.cjs} +72 -48
  8. package/dist/{derive-chart-family-BcASqlOf.js → derive-chart-family-DHOhho50.js} +10577 -10434
  9. package/dist/{dimensions-DOxD1XtL.js → dimensions-Biz7anQc.js} +1 -1
  10. package/dist/{dimensions-DCT9XInO.cjs → dimensions-CtINdhqK.cjs} +1 -1
  11. package/dist/{execute-query-JhI9RXe_.js → execute-query-D1JOjJ8n.js} +1199 -1165
  12. package/dist/execute-query-k_ytd_Rf.cjs +1 -0
  13. package/dist/index.cjs +24 -24
  14. package/dist/index.js +6319 -6193
  15. package/dist/index.umd.js +362 -337
  16. package/dist/packages/sdk-ui/src/app/client-application.d.ts +23 -0
  17. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/constants.d.ts +12 -4
  18. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/index.d.ts +25 -1
  19. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/axes-options/continuous-axes-options.d.ts +12 -0
  20. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/axes-options/helpers.d.ts +24 -0
  21. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/axes-options/index.d.ts +2 -0
  22. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/axes-options/split-axes-options.d.ts +12 -0
  23. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/chart-options.d.ts +9 -2
  24. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/index.d.ts +3 -3
  25. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/series-options/calendar-data-generator.d.ts +12 -2
  26. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/series-options/index.d.ts +1 -1
  27. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/series-options/series-options.d.ts +9 -2
  28. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-heatmap-charts-grid.d.ts +2 -1
  29. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/data-helpers.d.ts +2 -1
  30. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/data-per-chart-instance.d.ts +13 -0
  31. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/sizing-helpers.d.ts +16 -3
  32. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/view-helpers.d.ts +4 -4
  33. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/hooks/use-calendar-heatmap-chart-options.d.ts +7 -6
  34. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/utils/calendar-utils.d.ts +1 -1
  35. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/data-options/index.d.ts +0 -4
  36. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/design-options/index.d.ts +14 -0
  37. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/helpers/data-options.d.ts +4 -0
  38. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/data-options/index.d.ts +0 -4
  39. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/design-options/index.d.ts +3 -0
  40. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/design-options/index.d.ts +3 -0
  41. package/dist/packages/sdk-ui/src/chart/restructured-charts/types.d.ts +5 -4
  42. package/dist/packages/sdk-ui/src/chart-options-processor/cartesian/utils/series-processor.d.ts +0 -3
  43. package/dist/packages/sdk-ui/src/chart-options-processor/category-chart-options/sunburst-chart-options.d.ts +2 -2
  44. package/dist/packages/sdk-ui/src/chart-options-processor/series-labels.d.ts +0 -3
  45. package/dist/packages/sdk-ui/src/chart-options-processor/style-to-design-options-translator/translate-to-highcharts-options.d.ts +4 -2
  46. package/dist/packages/sdk-ui/src/chart-options-processor/translations/design-options.d.ts +5 -4
  47. package/dist/packages/sdk-ui/src/chart-options-processor/translations/funnel-plot-options.d.ts +12 -17
  48. package/dist/packages/sdk-ui/src/chart-options-processor/translations/sunburst/sunburst-levels.d.ts +28 -2
  49. package/dist/packages/sdk-ui/src/chart-options-processor/translations/sunburst/sunburst-options.d.ts +28 -2
  50. package/dist/packages/sdk-ui/src/chart-options-processor/translations/treemap/treemap-labels.d.ts +2 -2
  51. package/dist/packages/sdk-ui/src/chart-options-processor/translations/types.d.ts +2 -2
  52. package/dist/packages/sdk-ui/src/common/components/menu/context-menu/context-menu.d.ts +1 -0
  53. package/dist/packages/sdk-ui/src/common/icons/alert-icon.d.ts +2 -0
  54. package/dist/packages/sdk-ui/src/dashboard/components/editable-layout/helpers.d.ts +11 -0
  55. package/dist/packages/sdk-ui/src/dashboard/dashboard.d.ts +0 -30
  56. package/dist/packages/sdk-ui/src/dashboard/hooks/use-dashboard-header-toolbar.d.ts +3 -2
  57. package/dist/packages/sdk-ui/src/dashboard/index.d.ts +1 -1
  58. package/dist/packages/sdk-ui/src/dashboard/types.d.ts +76 -4
  59. package/dist/packages/sdk-ui/src/dynamic-size-container/default-size.d.ts +20 -5
  60. package/dist/packages/sdk-ui/src/highcharts-renderer.d.ts +13 -0
  61. package/dist/packages/sdk-ui/src/models/dashboard/use-dashboard-model/use-dasboard-model-utils.d.ts +5 -5
  62. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-render-pivot.d.ts +7 -1
  63. package/dist/packages/sdk-ui/src/query-execution/index.d.ts +1 -1
  64. package/dist/packages/sdk-ui/src/translation/resources/en.d.ts +8 -0
  65. package/dist/packages/sdk-ui/src/translation/resources/index.d.ts +16 -0
  66. package/dist/packages/sdk-ui/src/types.d.ts +196 -53
  67. package/dist/packages/sdk-ui/src/utils/gradient.d.ts +37 -0
  68. package/dist/packages/sdk-ui/src/widget-by-id/types.d.ts +2 -0
  69. package/dist/{types-Cl0_Tfey.cjs → types-B8jkBXCe.cjs} +1 -1
  70. package/dist/{types-CnFd03Ga.js → types-DZhBEm3K.js} +1 -1
  71. package/dist/{use-common-filters-qFWk1Ia5.js → use-common-filters-8MsC7-0N.js} +26731 -25836
  72. package/dist/use-common-filters-DlP4xqST.cjs +846 -0
  73. package/dist/{widget-composer-ovIwmgin.js → widget-composer-D-ktDgUE.js} +131 -130
  74. package/dist/{widget-composer-C7ZAcFHK.cjs → widget-composer-DBwcb3ao.cjs} +5 -5
  75. package/package.json +7 -7
  76. package/dist/execute-query-CvH_36GC.cjs +0 -1
  77. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/highcharts-options-builder.d.ts +0 -8
  78. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/axes-options.d.ts +0 -12
  79. package/dist/packages/sdk-ui/src/highcharts-memorized.d.ts +0 -7
  80. package/dist/use-common-filters-WTVrWfsY.cjs +0 -845
@@ -1,16 +1,13 @@
1
1
  import { ChartDataOptionsInternal } from '../../chart-data-options/types';
2
- import { CompleteThemeSettings } from '../../types';
2
+ import { FunnelSeriesLabels } from '../../types';
3
3
  import { PlotOptions } from '../chart-options-service';
4
4
  import { FunnelChartDesignOptions } from './design-options';
5
5
  import { DataLabelsSettings } from './value-label-section';
6
- export declare const DefaultFunnelLabels: FunnelLabels;
7
- export type FunnelLabels = {
8
- enabled: boolean;
9
- showCategories: boolean;
10
- showValue: boolean;
11
- showPercent: boolean;
12
- showDecimals: boolean;
13
- };
6
+ /**
7
+ * Default configuration for funnel chart series labels.
8
+ * Enables all label components (category, value, percentage) by default.
9
+ */
10
+ export declare const DefaultFunnelSeriesLabels: FunnelSeriesLabels;
14
11
  export declare const DefaultFunnelSize: FunnelSize;
15
12
  export declare const funnelSizes: readonly ["wide", "regular", "narrow"];
16
13
  /** Visual size of the lowest slice (degree of funnel narrowing from highest to lowest slices)*/
@@ -23,13 +20,14 @@ export declare const DefaultFunnelDirection: FunnelDirection;
23
20
  export declare const funnelDirections: readonly ["regular", "inverted"];
24
21
  /** Direction of Funnel chart narrowing */
25
22
  export type FunnelDirection = (typeof funnelDirections)[number];
23
+ /** Funnel-specific data labels settings extending the base data labels configuration. */
24
+ export type FunnelDataLabelsSettings = DataLabelsSettings & {
25
+ funnelMinimumFontSizeToTextLabel: number;
26
+ };
26
27
  export type FunnelOptions = {
27
28
  allowPointSelect: boolean;
28
29
  cursor: 'pointer';
29
- dataLabels: DataLabelsSettings & {
30
- funnelMinimumFontSizeToTextLabel: number;
31
- formatter?: () => string;
32
- };
30
+ dataLabels: FunnelDataLabelsSettings;
33
31
  showInLegend: boolean;
34
32
  reversed: boolean;
35
33
  neckWidth: string | number;
@@ -37,9 +35,6 @@ export type FunnelOptions = {
37
35
  width: string | number;
38
36
  };
39
37
  export declare const isFunnelReversed: (direction: FunnelDirection) => boolean;
40
- export declare const seriesDataLabels: (labels: FunnelLabels) => {
41
- enabled: boolean;
42
- };
43
38
  export type RenderTo = {
44
39
  clientWidth: number;
45
40
  clientHeight: number;
@@ -51,4 +46,4 @@ export declare const DEFAULT_SHIFT = 50;
51
46
  export declare const funnelWidthPercentage: (renderTo: RenderTo | null) => number;
52
47
  export declare const funnelNeckWidth: (widthPercentage: number, funnelSize: FunnelSize) => number;
53
48
  export declare const funnelNeckHeight: (type: FunnelType) => number;
54
- export declare const getFunnelPlotOptions: (funnelDesignOptions: FunnelChartDesignOptions, chartDataOptions: ChartDataOptionsInternal, themeSettings?: CompleteThemeSettings) => PlotOptions;
49
+ export declare const getFunnelPlotOptions: (funnelDesignOptions: FunnelChartDesignOptions, chartDataOptions: ChartDataOptionsInternal) => PlotOptions;
@@ -3,10 +3,36 @@ import { CategoricalChartDataOptionsInternal } from '../../../chart-data-options
3
3
  import { CategoricalChartData } from '../../../chart-data/types';
4
4
  import { CompleteThemeSettings } from '../../../types';
5
5
  import { SunburstChartDesignOptions } from '../design-options';
6
- export declare function prepareSunburstLevels(chartData: CategoricalChartData, dataOptions: CategoricalChartDataOptionsInternal, designOptions: SunburstChartDesignOptions, themeSettings?: CompleteThemeSettings): {
6
+ export declare function prepareSunburstLevels(chartData: CategoricalChartData, dataOptions: CategoricalChartDataOptionsInternal, designOptions: SunburstChartDesignOptions, themeSettings?: CompleteThemeSettings): ({
7
7
  level: number;
8
+ color: string;
8
9
  dataLabels: {
9
10
  enabled: boolean;
11
+ useHTML: boolean;
12
+ className: string;
10
13
  formatter(this: PointLabelObject): string;
11
14
  };
12
- }[];
15
+ levelSize: {
16
+ unit: string;
17
+ value: any;
18
+ };
19
+ } | {
20
+ level: number;
21
+ dataLabels: {
22
+ formatter(this: PointLabelObject): string;
23
+ enabled: boolean;
24
+ rotation?: number | undefined;
25
+ inside?: boolean | undefined;
26
+ align?: "center" | "left" | "right" | undefined;
27
+ verticalAlign?: "top" | "middle" | "bottom" | undefined;
28
+ style?: import("../types").TextStyle | undefined;
29
+ backgroundColor?: string | import("../../..").HighchartsGradientColorObject | undefined;
30
+ borderColor?: string | import("../../..").HighchartsGradientColorObject | undefined;
31
+ borderRadius?: number | undefined;
32
+ borderWidth?: number | undefined;
33
+ padding?: number | undefined;
34
+ x?: number | undefined;
35
+ y?: number | undefined;
36
+ useHTML: boolean;
37
+ };
38
+ })[];
@@ -61,13 +61,39 @@ export declare function prepareSunburstSeries(chartData: CategoricalChartData, d
61
61
  average: number;
62
62
  } | undefined;
63
63
  })[];
64
- levels: {
64
+ levels: ({
65
65
  level: number;
66
+ color: string;
66
67
  dataLabels: {
67
68
  enabled: boolean;
69
+ useHTML: boolean;
70
+ className: string;
68
71
  formatter(this: import("highcharts").PointLabelObject): string;
69
72
  };
70
- }[];
73
+ levelSize: {
74
+ unit: string;
75
+ value: any;
76
+ };
77
+ } | {
78
+ level: number;
79
+ dataLabels: {
80
+ formatter(this: import("highcharts").PointLabelObject): string;
81
+ enabled: boolean;
82
+ rotation?: number | undefined;
83
+ inside?: boolean | undefined;
84
+ align?: "center" | "left" | "right" | undefined;
85
+ verticalAlign?: "top" | "middle" | "bottom" | undefined;
86
+ style?: import("../types").TextStyle | undefined;
87
+ backgroundColor?: string | import("../../..").HighchartsGradientColorObject | undefined;
88
+ borderColor?: string | import("../../..").HighchartsGradientColorObject | undefined;
89
+ borderRadius?: number | undefined;
90
+ borderWidth?: number | undefined;
91
+ padding?: number | undefined;
92
+ x?: number | undefined;
93
+ y?: number | undefined;
94
+ useHTML: boolean;
95
+ };
96
+ })[];
71
97
  showInLegend: boolean;
72
98
  turboThreshold: number;
73
99
  type: string;
@@ -1,6 +1,6 @@
1
1
  import Highcharts, { PointLabelObject } from '@sisense/sisense-charts';
2
2
  import { CategoricalChartDataOptionsInternal } from '../../../chart-data-options/types';
3
- import { CompleteThemeSettings } from '../../../types';
3
+ import { CompleteThemeSettings, TreemapSeriesLabels } from '../../../types';
4
4
  import { TreemapChartDesignOptions } from '../design-options';
5
5
  export declare function prepareTreemapLevels(dataOptions: CategoricalChartDataOptionsInternal, chartDesignOptions: TreemapChartDesignOptions, themeSettings?: CompleteThemeSettings): Highcharts.PlotTreegraphLevelsOptions[];
6
- export declare function treemapLabelFormatter(this: PointLabelObject): string;
6
+ export declare function prepareTreemapLabelFormatter(level: number, seriesLabels: TreemapSeriesLabels): (this: PointLabelObject) => string;
@@ -1,6 +1,6 @@
1
1
  import { AreamapChartDesignOptions } from '../../chart/restructured-charts/areamap-chart/types';
2
2
  import { ChartType } from '../../types';
3
- import { AreaChartDesignOptions, AreaRangeChartDesignOptions, BarChartDesignOptions, BaseDesignOptionsType, BoxplotChartDesignOptions, CalendarHeatmapChartDesignOptions, ColumnChartDesignOptions, FunnelChartDesignOptions, IndicatorChartDesignOptions, LineChartDesignOptions, PieChartDesignOptions, PolarChartDesignOptions, ScatterChartDesignOptions, ScattermapChartDesignOptions, TreemapChartDesignOptions } from './design-options';
3
+ import { AreaChartDesignOptions, AreaRangeChartDesignOptions, BarChartDesignOptions, BaseDesignOptionsType, BoxplotChartDesignOptions, CalendarHeatmapChartDesignOptions, ColumnChartDesignOptions, FunnelChartDesignOptions, IndicatorChartDesignOptions, LineChartDesignOptions, PieChartDesignOptions, PolarChartDesignOptions, ScatterChartDesignOptions, ScattermapChartDesignOptions, SunburstChartDesignOptions, TreemapChartDesignOptions } from './design-options';
4
4
  /**
5
5
  * Style configuration for text elements in charts and UI components.
6
6
  * Defines the visual appearance and behavior of text rendering.
@@ -94,7 +94,7 @@ export type ChartDataType = 'cartesian' | 'categorical' | 'scatter' | 'table' |
94
94
  /**
95
95
  * Design options for a specific chart type
96
96
  */
97
- export type DesignOptions<SpecificChartType extends ChartType = ChartType> = SpecificChartType extends 'line' ? LineChartDesignOptions : SpecificChartType extends 'area' ? AreaChartDesignOptions : SpecificChartType extends 'bar' ? BarChartDesignOptions : SpecificChartType extends 'column' ? ColumnChartDesignOptions : SpecificChartType extends 'pie' ? PieChartDesignOptions : SpecificChartType extends 'funnel' ? FunnelChartDesignOptions : SpecificChartType extends 'polar' ? PolarChartDesignOptions : SpecificChartType extends 'indicator' ? IndicatorChartDesignOptions : SpecificChartType extends 'scatter' ? ScatterChartDesignOptions : SpecificChartType extends 'treemap' ? TreemapChartDesignOptions : SpecificChartType extends 'sunburst' ? TreemapChartDesignOptions : SpecificChartType extends 'boxplot' ? BoxplotChartDesignOptions : SpecificChartType extends 'areamap' ? AreamapChartDesignOptions : SpecificChartType extends 'scattermap' ? ScattermapChartDesignOptions : SpecificChartType extends 'calendar-heatmap' ? CalendarHeatmapChartDesignOptions : SpecificChartType extends 'arearange' ? AreaRangeChartDesignOptions : never;
97
+ export type DesignOptions<SpecificChartType extends ChartType = ChartType> = SpecificChartType extends 'line' ? LineChartDesignOptions : SpecificChartType extends 'area' ? AreaChartDesignOptions : SpecificChartType extends 'bar' ? BarChartDesignOptions : SpecificChartType extends 'column' ? ColumnChartDesignOptions : SpecificChartType extends 'pie' ? PieChartDesignOptions : SpecificChartType extends 'funnel' ? FunnelChartDesignOptions : SpecificChartType extends 'polar' ? PolarChartDesignOptions : SpecificChartType extends 'indicator' ? IndicatorChartDesignOptions : SpecificChartType extends 'scatter' ? ScatterChartDesignOptions : SpecificChartType extends 'treemap' ? TreemapChartDesignOptions : SpecificChartType extends 'sunburst' ? SunburstChartDesignOptions : SpecificChartType extends 'boxplot' ? BoxplotChartDesignOptions : SpecificChartType extends 'areamap' ? AreamapChartDesignOptions : SpecificChartType extends 'scattermap' ? ScattermapChartDesignOptions : SpecificChartType extends 'calendar-heatmap' ? CalendarHeatmapChartDesignOptions : SpecificChartType extends 'arearange' ? AreaRangeChartDesignOptions : never;
98
98
  /** A unique identifier for a series to be found in {@link ChartDataOptionsInternal} */
99
99
  type SeriesId = string;
100
100
  /**
@@ -1,4 +1,5 @@
1
1
  import { ContextMenuProps } from '../../../../props';
2
+ export declare const CONTEXT_MENU_SELECTED_WITH_DOT_CLASS = "csdk-context-menu-selected-with-dot";
2
3
  /**
3
4
  * Context menu
4
5
  *
@@ -0,0 +1,2 @@
1
+ import { SVGProps } from 'react';
2
+ export declare const AlertIcon: (props: SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
@@ -97,6 +97,17 @@ export declare const distributeEqualWidthInRow: (layout: WidgetsPanelLayout, col
97
97
  * @internal
98
98
  */
99
99
  export declare function updateLayoutAfterDragAndDrop(layout: WidgetsPanelLayout, dragData: EditableLayoutDragData, dropData: EditableLayoutDropData): WidgetsPanelColumnLayout;
100
+ /**
101
+ * Updates the layout based on column change.
102
+ *
103
+ * @param layout - The current layout to modify
104
+ * @param columnCount - The number of columns to update
105
+ *
106
+ * @returns A new layout with the columns updated
107
+ *
108
+ * @internal
109
+ */
110
+ export declare function updateColumnsCountInLayout(layout: WidgetsPanelLayout, columnCount: number): WidgetsPanelColumnLayout;
100
111
  export declare function getRowHeight(row: WidgetsPanelRow, widgets: WidgetProps[]): number;
101
112
  export declare function getRowMaxHeight(row: WidgetsPanelRow): number;
102
113
  export declare function getRowMinHeight(row: WidgetsPanelRow): number;
@@ -1,35 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { Filter, FilterRelations } from '@sisense/sdk-data';
3
2
  import { DashboardProps } from '../dashboard/types';
4
- import { WidgetsPanelLayout } from '../models';
5
- export declare enum DashboardChangeType {
6
- /** Dashboard filters have been updated */
7
- FILTERS_UPDATE = "FILTERS.UPDATE",
8
- /** Filters panel collapsed state changed */
9
- UI_FILTERS_PANEL_COLLAPSE = "UI.FILTERS.PANEL.COLLAPSE",
10
- /** Widgets panel layout updated */
11
- WIDGETS_PANEL_LAYOUT_UPDATE = "WIDGETS_PANEL_LAYOUT.UPDATE",
12
- /** Edit mode isEditing changed */
13
- WIDGETS_PANEL_LAYOUT_IS_EDITING_CHANGE = "WIDGETS_PANEL.EDIT_MODE.IS_EDITING.CHANGE",
14
- /** Widgets deleted from the dashboard */
15
- WIDGETS_DELETE = "WIDGETS.DELETE"
16
- }
17
- export type DashboardChangeAction = {
18
- type: DashboardChangeType.FILTERS_UPDATE;
19
- payload: Filter[] | FilterRelations;
20
- } | {
21
- type: DashboardChangeType.UI_FILTERS_PANEL_COLLAPSE;
22
- payload: boolean;
23
- } | {
24
- type: DashboardChangeType.WIDGETS_PANEL_LAYOUT_UPDATE;
25
- payload: WidgetsPanelLayout;
26
- } | {
27
- type: DashboardChangeType.WIDGETS_PANEL_LAYOUT_IS_EDITING_CHANGE;
28
- payload: boolean;
29
- } | {
30
- type: DashboardChangeType.WIDGETS_DELETE;
31
- payload: string[];
32
- };
33
3
  /**
34
4
  * React component that renders a dashboard whose elements are customizable. It includes internal logic of applying common filters to widgets.
35
5
  *
@@ -1,3 +1,4 @@
1
+ import { MenuItemSection } from '../../index';
1
2
  /**
2
3
  * @internal
3
4
  */
@@ -11,14 +12,14 @@ export interface DashboardHeaderToolbarMenuItem {
11
12
  * @internal
12
13
  */
13
14
  export interface UseDashboardHeaderToolbarProps {
14
- menuItems: DashboardHeaderToolbarMenuItem[];
15
+ menuItemSections: MenuItemSection[];
15
16
  toolbarComponents?: JSX.Element[];
16
17
  }
17
18
  /**
18
19
  * Hook that returns a toolbar element for dashboard header
19
20
  * @internal
20
21
  */
21
- export declare const useDashboardHeaderToolbar: ({ menuItems, toolbarComponents, }: UseDashboardHeaderToolbarProps) => {
22
+ export declare const useDashboardHeaderToolbar: ({ menuItemSections, toolbarComponents, }: UseDashboardHeaderToolbarProps) => {
22
23
  toolbar: () => import("react/jsx-runtime").JSX.Element;
23
24
  };
24
25
  export default useDashboardHeaderToolbar;
@@ -3,4 +3,4 @@ export { Dashboard } from './dashboard';
3
3
  export { useComposedDashboard, useComposedDashboardInternal, type ComposableDashboardProps, type UseComposedDashboardOptions, type ComposedDashboardResult, } from './use-composed-dashboard';
4
4
  export { useDashboardTheme, type DashboardThemeParams } from './use-dashboard-theme';
5
5
  export * from './hooks';
6
- export type { DashboardByIdProps, DashboardProps, DashboardLayoutOptions, DashboardStyleOptions, DashboardConfig, DashboardByIdConfig, WidgetsPanelConfig, EditModeConfig, DashboardFiltersPanelConfig, TabbersConfig, TabberConfig, TabberTabConfig, } from './types';
6
+ export type { DashboardByIdProps, DashboardProps, DashboardLayoutOptions, DashboardStyleOptions, DashboardConfig, DashboardByIdConfig, WidgetsPanelConfig, EditModeConfig, DashboardFiltersPanelConfig, TabbersConfig, TabberConfig, TabberTabConfig, DashboardChangeEvent, DashboardFiltersUpdatedEvent, DashboardFiltersPanelCollapseChangedEvent, DashboardWidgetsPanelLayoutUpdatedEvent, DashboardWidgetsPanelIsEditingChangedEvent, DashboardWidgetsDeletedEvent, } from './types';
@@ -1,12 +1,81 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { DataSource, Filter, FilterRelations } from '@sisense/sdk-data';
3
- import { DashboardChangeAction } from '../dashboard/dashboard';
4
3
  import { TabbersConfig } from '../dashboard/hooks/use-tabber';
5
4
  import { FiltersPanelConfig } from '../filters/components/filters-panel/types';
6
5
  import { DashboardStyleOptions, WidgetsOptions, WidgetsPanelLayout } from '../models';
7
6
  import { WidgetProps } from '../props';
8
7
  export type { DashboardStyleOptions, WidgetsPanelColumnLayout, WidgetsPanelLayout, WidgetsPanelCell, WidgetsPanelRow, WidgetsPanelColumn, } from '../models';
9
8
  export type { TabbersConfig, TabberConfig, TabberTabConfig } from '../dashboard/hooks/use-tabber';
9
+ /**
10
+ * Event triggered when dashboard filters are updated.
11
+ */
12
+ export interface DashboardFiltersUpdatedEvent {
13
+ /** Event type */
14
+ type: 'filters/updated';
15
+ /** New filters or filter relations after the update*/
16
+ payload: Filter[] | FilterRelations;
17
+ }
18
+ /**
19
+ * Event triggered when the filters panel collapsed state changes.
20
+ */
21
+ export interface DashboardFiltersPanelCollapseChangedEvent {
22
+ /** Event type */
23
+ type: 'filtersPanel/collapse/changed';
24
+ /** Is the filters panel collapsed? */
25
+ payload: boolean;
26
+ }
27
+ /**
28
+ * Event triggered when the widgets panel layout is updated.
29
+ *
30
+ * @remarks
31
+ * When `config.widgetsPanel.editMode.applyChangesAsBatch.enabled` is `true` (default),
32
+ * this event is only triggered when the user applies changes (clicks "Apply"),
33
+ * not during the editing process. When `false`, this event is triggered immediately
34
+ * after each layout change.
35
+ */
36
+ export interface DashboardWidgetsPanelLayoutUpdatedEvent {
37
+ /** Event type */
38
+ type: 'widgetsPanel/layout/updated';
39
+ /** The new widgets panel layout */
40
+ payload: WidgetsPanelLayout;
41
+ }
42
+ /**
43
+ * Event triggered when the edit mode state changes.
44
+ */
45
+ export interface DashboardWidgetsPanelIsEditingChangedEvent {
46
+ /** Event type */
47
+ type: 'widgetsPanel/editMode/isEditing/changed';
48
+ /** Is the widgets panel layout in editing state? */
49
+ payload: boolean;
50
+ }
51
+ /**
52
+ * Event triggered when widgets are deleted from the dashboard.
53
+ *
54
+ * @remarks
55
+ * When `config.widgetsPanel.editMode.applyChangesAsBatch.enabled` is `true` (default),
56
+ * this event is only triggered when the user applies changes (clicks "Apply"),
57
+ * not during the editing process. When `false`, this event is triggered immediately
58
+ * after widgets are deleted.
59
+ */
60
+ export interface DashboardWidgetsDeletedEvent {
61
+ /**
62
+ * Event type */
63
+ type: 'widgets/deleted';
64
+ /** The oids of the widgets deleted */
65
+ payload: string[];
66
+ }
67
+ /**
68
+ * Events that can be triggered by the Dashboard component
69
+ *
70
+ * @example
71
+ *
72
+ * Example of a filters update event:
73
+ *
74
+ * ```ts
75
+ * { type: 'filters/updated', payload: filters }
76
+ * ```
77
+ */
78
+ export type DashboardChangeEvent = DashboardFiltersUpdatedEvent | DashboardFiltersPanelCollapseChangedEvent | DashboardWidgetsPanelLayoutUpdatedEvent | DashboardWidgetsPanelIsEditingChangedEvent | DashboardWidgetsDeletedEvent;
10
79
  /**
11
80
  * Props of the {@link DashboardById} component.
12
81
  */
@@ -36,7 +105,7 @@ export interface DashboardContainerProps {
36
105
  *
37
106
  * @internal
38
107
  */
39
- onChange?: (action: DashboardChangeAction) => void;
108
+ onChange?: (event: DashboardChangeEvent) => void;
40
109
  }
41
110
  /**
42
111
  * Dashboard filters panel configuration
@@ -233,9 +302,12 @@ export interface DashboardProps {
233
302
  /**
234
303
  * Callback to receive changes
235
304
  *
236
- * @internal
305
+ * This callback is invoked when the dashboard state changes, such as filter updates,
306
+ * layout changes, or widget deletions. See {@link DashboardChangeEvent} for all possible event types.
307
+ *
308
+ * @param event The event that occurred
237
309
  */
238
- onChange?: (action: DashboardChangeAction) => void;
310
+ onChange?: (event: DashboardChangeEvent) => void;
239
311
  }
240
312
  /**
241
313
  * Props for the Dashboard Header component
@@ -1,18 +1,33 @@
1
1
  import { TableType } from '../chart-options-processor/translations/types';
2
2
  import { ChartType } from '../types';
3
3
  export declare const DEFAULT_PIVOT_TABLE_SIZE: {
4
- width: number;
5
- height: number;
4
+ readonly width: 400;
5
+ readonly height: 500;
6
6
  };
7
7
  export declare const getChartDefaultSize: (chartType: ChartType | TableType) => {
8
- width: number;
9
- height: number;
8
+ readonly width: 400;
9
+ readonly height: 500;
10
+ } | {
11
+ readonly width: 200;
12
+ readonly height: 200;
13
+ } | {
14
+ readonly width: 400;
15
+ readonly height: 400;
10
16
  };
11
17
  type WidgetSizeOptions = {
12
18
  hasHeader?: boolean;
13
19
  };
14
20
  export declare const getWidgetDefaultSize: (type: ChartType | TableType | 'pivot', { hasHeader }?: WidgetSizeOptions) => {
15
- width: number;
21
+ readonly width: 400;
22
+ readonly height: 500;
23
+ } | {
24
+ readonly width: 200;
25
+ readonly height: 200;
26
+ } | {
27
+ readonly width: 400;
28
+ readonly height: 400;
29
+ } | {
30
+ width: 400 | 200;
16
31
  height: number;
17
32
  };
18
33
  export {};
@@ -0,0 +1,13 @@
1
+ import { HighchartsOptionsInternal } from './chart-options-processor/chart-options-service';
2
+ type HighchartsRendererProps = {
3
+ options: HighchartsOptionsInternal;
4
+ };
5
+ /**
6
+ * Renders a Highcharts chart with optimized behavior
7
+ *
8
+ * This component wraps the `HighchartsReact` component and ensures efficient re-renders
9
+ * by detecting key changes that require chart re-initialization.
10
+ * It also handles cases where Highcharts mutates input options by making deep clone.
11
+ */
12
+ export declare const HighchartsRenderer: ({ options }: HighchartsRendererProps) => import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -1,14 +1,14 @@
1
1
  import { Authenticator } from '@sisense/sdk-rest-client';
2
- import { DashboardChangeAction } from '../../../dashboard/dashboard';
2
+ import { DashboardChangeEvent } from '../../../dashboard/types';
3
3
  import { UseDashboardModelAction } from '../../../models';
4
4
  /**
5
- * Convert a dashboard change action to a use dashboard model action.
5
+ * Convert a dashboard change event to a use dashboard model action.
6
6
  *
7
- * @param action - The dashboard change action to convert
8
- * @returns The useDashboardModel action or null if the action is not supported
7
+ * @param event - The dashboard change event to convert
8
+ * @returns The useDashboardModel action or null if the event is not supported
9
9
  * @internal
10
10
  */
11
- export declare function dashboardChangeActionToUseDashboardModelAction(action: DashboardChangeAction): UseDashboardModelAction | null;
11
+ export declare function dashboardChangeEventToUseDashboardModelAction(event: DashboardChangeEvent): UseDashboardModelAction | null;
12
12
  /**
13
13
  * Check if the persistence is supported and log a warning if it is not.
14
14
  *
@@ -14,6 +14,12 @@ type PivotRenderOptions = {
14
14
  themeSettings: CompleteThemeSettings;
15
15
  /** The size of the pivot table container. */
16
16
  size: ContainerSize | null;
17
+ /** Allow html in pivot table cells */
18
+ allowHtml?: boolean;
19
+ /** Sanitize html in pivot table cells */
20
+ sanitizeHtml?: boolean;
21
+ /** Whether the pivot table should take the full width of its container */
22
+ isFullWidth?: boolean;
17
23
  /** Callback to handle total height change. */
18
24
  onTotalHeightChange?: (totalHeight: number) => void;
19
25
  /** Callback to handle data point click. */
@@ -28,7 +34,7 @@ type PivotRenderOptions = {
28
34
  /**
29
35
  * A hook that renders the pivot table.
30
36
  */
31
- export declare function useRenderPivot({ pivotBuilder, dataOptions, styleOptions, themeSettings, size, onTotalHeightChange, onDataPointClick, onDataPointContextMenu, pageSize, onPageSizeChange, }: PivotRenderOptions): {
37
+ export declare function useRenderPivot({ pivotBuilder, dataOptions, styleOptions, themeSettings, size, allowHtml, sanitizeHtml, onTotalHeightChange, onDataPointClick, onDataPointContextMenu, pageSize, onPageSizeChange, isFullWidth, }: PivotRenderOptions): {
32
38
  pivotElement: JSX.Element | null;
33
39
  };
34
40
  export {};
@@ -3,6 +3,6 @@ export { useExecuteQuery } from './use-execute-query';
3
3
  export { useExecuteCsvQuery, useExecuteCsvQueryInternal } from './use-execute-csv-query';
4
4
  export { ExecuteQueryByWidgetId } from './execute-query-by-widget-id';
5
5
  export { useExecuteQueryByWidgetId, executeQueryByWidgetId, } from './use-execute-query-by-widget-id';
6
- export { useExecutePivotQuery } from './use-execute-pivot-query';
6
+ export { useExecutePivotQuery, useExecutePivotQueryInternal } from './use-execute-pivot-query';
7
7
  export { useQueryCache } from './use-query-cache';
8
8
  export type { QueryState, QueryLoadingState, QuerySuccessState, QueryErrorState, CsvQueryState, CsvQueryLoadingState, CsvQuerySuccessState, CsvQueryErrorState, PivotQueryState, PivotQueryLoadingState, PivotQuerySuccessState, PivotQueryErrorState, BaseQueryParams, ExecuteQueryParams, ExecuteQueryResult, ExecuteCsvQueryParams, ExecuteCSVQueryConfig, ExecuteQueryByWidgetIdParams, QueryByWidgetIdState, QueryByWidgetIdQueryParams, ExecutePivotQueryParams, } from './types';
@@ -359,6 +359,12 @@ export declare const translation: {
359
359
  pivotTable: {
360
360
  grandTotal: string;
361
361
  subTotal: string;
362
+ limits: {
363
+ baseNote: string;
364
+ rowsLimit: string;
365
+ columnsLimit: string;
366
+ columnsAndRowsLimit: string;
367
+ };
362
368
  };
363
369
  dashboard: {
364
370
  toolbar: {
@@ -370,6 +376,8 @@ export declare const translation: {
370
376
  viewMode: string;
371
377
  showFilters: string;
372
378
  hideFilters: string;
379
+ columns: string;
380
+ column: string;
373
381
  };
374
382
  };
375
383
  jumpToDashboard: {
@@ -369,6 +369,12 @@ export declare const resources: {
369
369
  pivotTable: {
370
370
  grandTotal: string;
371
371
  subTotal: string;
372
+ limits: {
373
+ baseNote: string;
374
+ rowsLimit: string;
375
+ columnsLimit: string;
376
+ columnsAndRowsLimit: string;
377
+ };
372
378
  };
373
379
  dashboard: {
374
380
  toolbar: {
@@ -380,6 +386,8 @@ export declare const resources: {
380
386
  viewMode: string;
381
387
  showFilters: string;
382
388
  hideFilters: string;
389
+ columns: string;
390
+ column: string;
383
391
  };
384
392
  };
385
393
  jumpToDashboard: {
@@ -759,6 +767,12 @@ export declare const resources: {
759
767
  pivotTable: {
760
768
  grandTotal: string;
761
769
  subTotal: string;
770
+ limits: {
771
+ baseNote: string;
772
+ rowsLimit: string;
773
+ columnsLimit: string;
774
+ columnsAndRowsLimit: string;
775
+ };
762
776
  };
763
777
  dashboard: {
764
778
  toolbar: {
@@ -770,6 +784,8 @@ export declare const resources: {
770
784
  viewMode: string;
771
785
  showFilters: string;
772
786
  hideFilters: string;
787
+ columns: string;
788
+ column: string;
773
789
  };
774
790
  };
775
791
  jumpToDashboard: {