@sisense/sdk-ui 2.14.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 (44) hide show
  1. package/dist/ai.cjs +1 -1
  2. package/dist/ai.js +5 -5
  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-DJUpWKOP.cjs → derive-chart-family-0J_WPLDy.cjs} +45 -30
  8. package/dist/{derive-chart-family-D_bylSQy.js → derive-chart-family-DHOhho50.js} +5072 -5042
  9. package/dist/{dimensions-CTUJhW-M.js → dimensions-Biz7anQc.js} +1 -1
  10. package/dist/{dimensions-CdNGgk9I.cjs → dimensions-CtINdhqK.cjs} +1 -1
  11. package/dist/{execute-query-DyjkDYHG.js → execute-query-D1JOjJ8n.js} +212 -195
  12. package/dist/execute-query-k_ytd_Rf.cjs +1 -0
  13. package/dist/index.cjs +15 -15
  14. package/dist/index.js +4177 -4109
  15. package/dist/index.umd.js +253 -238
  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/categoricals/funnel-chart/data-options/index.d.ts +0 -4
  18. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/helpers/data-options.d.ts +4 -0
  19. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/data-options/index.d.ts +0 -4
  20. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/design-options/index.d.ts +3 -0
  21. package/dist/packages/sdk-ui/src/chart/restructured-charts/types.d.ts +0 -4
  22. package/dist/packages/sdk-ui/src/chart-options-processor/category-chart-options/sunburst-chart-options.d.ts +2 -2
  23. package/dist/packages/sdk-ui/src/chart-options-processor/translations/sunburst/sunburst-levels.d.ts +28 -2
  24. package/dist/packages/sdk-ui/src/chart-options-processor/translations/sunburst/sunburst-options.d.ts +28 -2
  25. package/dist/packages/sdk-ui/src/chart-options-processor/translations/types.d.ts +2 -2
  26. package/dist/packages/sdk-ui/src/common/icons/alert-icon.d.ts +2 -0
  27. package/dist/packages/sdk-ui/src/dynamic-size-container/default-size.d.ts +20 -5
  28. package/dist/packages/sdk-ui/src/highcharts-renderer.d.ts +13 -0
  29. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-render-pivot.d.ts +5 -1
  30. package/dist/packages/sdk-ui/src/query-execution/index.d.ts +1 -1
  31. package/dist/packages/sdk-ui/src/translation/resources/en.d.ts +6 -0
  32. package/dist/packages/sdk-ui/src/translation/resources/index.d.ts +12 -0
  33. package/dist/packages/sdk-ui/src/types.d.ts +88 -1
  34. package/dist/packages/sdk-ui/src/utils/gradient.d.ts +37 -0
  35. package/dist/packages/sdk-ui/src/widget-by-id/types.d.ts +2 -0
  36. package/dist/{types-D1qM-ltg.cjs → types-B8jkBXCe.cjs} +1 -1
  37. package/dist/{types-DglXXR-Q.js → types-DZhBEm3K.js} +1 -1
  38. package/dist/{use-common-filters-BGrn7zoW.js → use-common-filters-8MsC7-0N.js} +18093 -18004
  39. package/dist/{use-common-filters-DxzCHhgF.cjs → use-common-filters-DlP4xqST.cjs} +170 -170
  40. package/dist/{widget-composer-lBv40CFf.js → widget-composer-D-ktDgUE.js} +3 -3
  41. package/dist/{widget-composer-C24YJEek.cjs → widget-composer-DBwcb3ao.cjs} +1 -1
  42. package/package.json +7 -7
  43. package/dist/execute-query-CNt566O5.cjs +0 -1
  44. package/dist/packages/sdk-ui/src/highcharts-memorized.d.ts +0 -7
@@ -145,6 +145,29 @@ export type AppConfig = {
145
145
  */
146
146
  enabled?: boolean;
147
147
  };
148
+ /**
149
+ * Global configuration for some specific aspects of data visualizations.
150
+ */
151
+ chartConfig?: {
152
+ /** `Table` and `PivotTable` configuration */
153
+ tabular?: {
154
+ /** Configuration for HTML content in `Table` and `PivotTable` */
155
+ htmlContent?: {
156
+ /**
157
+ * If true, the contents of table and pivot table cells are rendered as HTML instead of text.
158
+ *
159
+ * **Note**: The {@link StyledColumn.isHtml} property of columns in `dataOptions` are of higher precedence, and will therefore override this setting.
160
+ * @default true
161
+ * */
162
+ enabled?: boolean;
163
+ /**
164
+ * Enables sanitization of HTML content before rendering to prevent XSS attacks.
165
+ * @default true
166
+ * */
167
+ sanitizeContents?: boolean;
168
+ };
169
+ };
170
+ };
148
171
  };
149
172
  /**
150
173
  * Stands for a Sisense Client Application which connects to a Sisense Environment
@@ -17,10 +17,6 @@ export declare const dataOptionsTranslators: {
17
17
  * Gets measures from funnel chart data options.
18
18
  */
19
19
  getMeasures: (internalDataOptions: FunnelChartDataOptionsInternal) => Measure[];
20
- /**
21
- * Validates and cleans funnel chart data options.
22
- */
23
- validateAndCleanDataOptions: (dataOptions: FunnelChartDataOptions) => FunnelChartDataOptions;
24
20
  /**
25
21
  * Type guard to check if data options are funnel chart data options.
26
22
  */
@@ -20,3 +20,7 @@ export declare function isCategoricalChartDataOptions(dataOptions: ChartDataOpti
20
20
  * Type guard to check if internal data options are categorical chart data options.
21
21
  */
22
22
  export declare function isCategoricalChartDataOptionsInternal(dataOptions: ChartDataOptionsInternal): dataOptions is CategoricalChartDataOptionsInternal;
23
+ export declare function withDataOptionsLimitations({ maxCategories, maxValues, }: {
24
+ maxCategories: number;
25
+ maxValues: number;
26
+ }): (dataOptions: CategoricalChartDataOptions) => CategoricalChartDataOptions;
@@ -17,10 +17,6 @@ export declare const dataOptionsTranslators: {
17
17
  * Gets measures from pie chart data options.
18
18
  */
19
19
  getMeasures: (internalDataOptions: PieChartDataOptionsInternal) => Measure[];
20
- /**
21
- * Validates and cleans pie chart data options.
22
- */
23
- validateAndCleanDataOptions: (dataOptions: PieChartDataOptions) => PieChartDataOptions;
24
20
  /**
25
21
  * Type guard to check if data options are pie chart data options.
26
22
  */
@@ -1,6 +1,9 @@
1
+ import { DeepPartial } from 'ts-essentials';
1
2
  import { type ChartStyleOptions } from '../../../../../../types';
2
3
  import type { SunburstChartDesignOptions, SunburstChartStyleOptions } from '../types';
3
4
  export declare const designOptionsTranslators: {
4
5
  translateStyleOptionsToDesignOptions: (styleOptions: SunburstChartStyleOptions) => SunburstChartDesignOptions;
6
+ getDefaultStyleOptions: () => SunburstChartStyleOptions;
7
+ translateLegacyStyleOptionsToModern: (styleOptions?: DeepPartial<SunburstChartStyleOptions>) => DeepPartial<SunburstChartStyleOptions>;
5
8
  isCorrectStyleOptions: (styleOptions: ChartStyleOptions) => styleOptions is import('../../../../../../types').SunburstStyleOptions;
6
9
  };
@@ -48,10 +48,6 @@ export interface ChartBuilder<CT extends SupportedChartType = SupportedChartType
48
48
  * Returns the measures from the internal data options.
49
49
  */
50
50
  getMeasures: (internalDataOptions: TypedDataOptionsInternal<CT>) => Measure[];
51
- /**
52
- * Validates and cleans the data options if needed.
53
- */
54
- validateAndCleanDataOptions?: (dataOptions: TypedChartDataOptions<CT>) => TypedChartDataOptions<CT>;
55
51
  /**
56
52
  * Checks if the data options are correct for the current chart type.
57
53
  */
@@ -3,7 +3,7 @@ import { CategoricalChartDataOptionsInternal } from '../../chart-data-options/ty
3
3
  import { CategoricalChartData } from '../../chart-data/types';
4
4
  import { CompleteThemeSettings, OptionsWithAlerts } from '../../types';
5
5
  import { HighchartsOptionsInternal } from '../chart-options-service';
6
- import { TreemapChartDesignOptions } from '../translations/design-options';
6
+ import { SunburstChartDesignOptions } from '../translations/design-options';
7
7
  /**
8
8
  * Convert intermediate chart data, data options, and design options
9
9
  * into pure highcharts config data for sunburst charts.
@@ -14,4 +14,4 @@ import { TreemapChartDesignOptions } from '../translations/design-options';
14
14
  * @param translate - translation function
15
15
  * @param themeSettings - theme settings
16
16
  */
17
- export declare const getSunburstChartOptions: (chartData: CategoricalChartData, chartDesignOptions: TreemapChartDesignOptions, dataOptions: CategoricalChartDataOptionsInternal, translate: TFunction, themeSettings?: CompleteThemeSettings) => OptionsWithAlerts<HighchartsOptionsInternal>;
17
+ export declare const getSunburstChartOptions: (chartData: CategoricalChartData, chartDesignOptions: SunburstChartDesignOptions, dataOptions: CategoricalChartDataOptionsInternal, translate: TFunction, themeSettings?: CompleteThemeSettings) => OptionsWithAlerts<HighchartsOptionsInternal>;
@@ -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 { 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
  /**
@@ -0,0 +1,2 @@
1
+ import { SVGProps } from 'react';
2
+ export declare const AlertIcon: (props: SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;
@@ -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 {};
@@ -16,6 +16,10 @@ type PivotRenderOptions = {
16
16
  size: ContainerSize | null;
17
17
  /** Allow html in pivot table cells */
18
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;
19
23
  /** Callback to handle total height change. */
20
24
  onTotalHeightChange?: (totalHeight: number) => void;
21
25
  /** Callback to handle data point click. */
@@ -30,7 +34,7 @@ type PivotRenderOptions = {
30
34
  /**
31
35
  * A hook that renders the pivot table.
32
36
  */
33
- export declare function useRenderPivot({ pivotBuilder, dataOptions, styleOptions, themeSettings, size, allowHtml, 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): {
34
38
  pivotElement: JSX.Element | null;
35
39
  };
36
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: {
@@ -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: {
@@ -761,6 +767,12 @@ export declare const resources: {
761
767
  pivotTable: {
762
768
  grandTotal: string;
763
769
  subTotal: string;
770
+ limits: {
771
+ baseNote: string;
772
+ rowsLimit: string;
773
+ columnsLimit: string;
774
+ columnsAndRowsLimit: string;
775
+ };
764
776
  };
765
777
  dashboard: {
766
778
  toolbar: {
@@ -920,6 +920,20 @@ export interface PivotTableStyleOptions {
920
920
  * Color of highlighted cells. If not specified, default value is light yellow (`#ffff9c`).
921
921
  */
922
922
  highlightColor?: string;
923
+ /**
924
+ * Boolean flag whether the widths of each vertical column of table cells should be automatically calculated
925
+ * to fit the width of the component, which defaults to '100%' if `width` is not specified.
926
+ *
927
+ * If `true`, all vertical columns of table cells will be resized to fit within the component width without requiring horizontal scroll.
928
+ * If a width is also specified in the `dataOptions` item, this will be used to calculate the width in proportion to the total width of the component.
929
+ * Using `isAutoContentWidth: true` with a large number of columns displayed may result in very narrow columns, and is not recommended.
930
+ *
931
+ * If `false`, each vertical column of table cells will be calculated to fit the contents, or if specified, the width provided in the corresponding `dataOptions` item.
932
+ * Horizontal scroll will be shown automatically if required.
933
+ *
934
+ * @default false
935
+ */
936
+ isAutoContentWidth?: boolean;
923
937
  }
924
938
  /**
925
939
  * Common part of IndicatorStyleOptions for all types of indicator
@@ -973,6 +987,33 @@ export interface TreemapStyleOptions extends BaseStyleOptions {
973
987
  };
974
988
  /**
975
989
  * Configuration for series labels - titles/names identifying data series in a chart
990
+ * Single label options object would be applied to all levels.
991
+ * Array of label options objects would be applied to each level.
992
+ *
993
+ * @example
994
+ * Single label options object would enable labels for all levels.
995
+ * ```typescript
996
+ * {
997
+ * seriesLabels: {
998
+ * enabled: true,
999
+ * },
1000
+ * }
1001
+ * ```
1002
+ *
1003
+ * @example
1004
+ * Array of label options objects would disable labels for first level and enable labels for second level.
1005
+ * ```typescript
1006
+ * {
1007
+ * seriesLabels: [
1008
+ * {
1009
+ * enabled: false,
1010
+ * },
1011
+ * {
1012
+ * enabled: true,
1013
+ * },
1014
+ * ],
1015
+ * }
1016
+ * ```
976
1017
  */
977
1018
  seriesLabels?: TreemapSeriesLabels;
978
1019
  /** Tooltip options object */
@@ -981,9 +1022,24 @@ export interface TreemapStyleOptions extends BaseStyleOptions {
981
1022
  mode?: 'value' | 'contribution';
982
1023
  };
983
1024
  }
1025
+ export type SunburstSeriesLabelsBase = SeriesLabelsBase & {
1026
+ /**
1027
+ * Color of the labels border
1028
+ */
1029
+ borderColor?: string;
1030
+ /**
1031
+ * Background color of the labels.
1032
+ */
1033
+ backgroundColor?: string;
1034
+ };
1035
+ export type SunburstSeriesLabels = SunburstSeriesLabelsBase | SunburstSeriesLabelsBase[];
984
1036
  /** Configuration options that define functional style of the various elements of the SunburstChart component */
985
1037
  export interface SunburstStyleOptions extends BaseStyleOptions {
986
- /** Labels options object */
1038
+ /**
1039
+ * Labels options object
1040
+ *
1041
+ * @deprecated Please use `seriesLabels` instead
1042
+ */
987
1043
  labels?: {
988
1044
  /** Array with single label options objects (order of items relative to dataOptions.category) */
989
1045
  category?: {
@@ -991,6 +1047,37 @@ export interface SunburstStyleOptions extends BaseStyleOptions {
991
1047
  enabled?: boolean;
992
1048
  }[];
993
1049
  };
1050
+ /**
1051
+ * Configuration for series labels - titles/names identifying data series in a chart
1052
+ * Single label options object would be applied to all levels.
1053
+ * Array of label options objects would be applied to each level.
1054
+ *
1055
+ * @example
1056
+ * Single label options object would enable labels for all levels.
1057
+ * ```typescript
1058
+ * {
1059
+ * seriesLabels: {
1060
+ * enabled: true,
1061
+ * },
1062
+ * }
1063
+ * ```
1064
+ *
1065
+ * @example
1066
+ * Array of label options objects would disable labels for first level and enable labels for second level.
1067
+ * ```typescript
1068
+ * {
1069
+ * seriesLabels: [
1070
+ * {
1071
+ * enabled: false,
1072
+ * },
1073
+ * {
1074
+ * enabled: true,
1075
+ * },
1076
+ * ],
1077
+ * }
1078
+ * ```
1079
+ */
1080
+ seriesLabels?: SunburstSeriesLabels;
994
1081
  /** Tooltip options object */
995
1082
  tooltip?: {
996
1083
  /** Define mode of data showing */
@@ -394,3 +394,40 @@ export declare const fromHighchartsGradientFormat: (highchartGradient: Highchart
394
394
  * @internal
395
395
  */
396
396
  export declare const withGradientConversion: <T>(color: T) => HighchartsGradientColorObject | Exclude<T, GradientColor>;
397
+ /**
398
+ * Converts a GradientColor to a valid CSS gradient string.
399
+ *
400
+ * For linear gradients, calculates the angle from the direction coordinates.
401
+ * For radial gradients, uses the center position and radius.
402
+ *
403
+ * @param gradient - The gradient color to convert
404
+ * @returns A valid CSS gradient string (e.g., "linear-gradient(90deg, #fff 0%, #000 100%)")
405
+ *
406
+ * @example
407
+ * ```ts
408
+ * const linearGradient: GradientColor = {
409
+ * type: 'linear',
410
+ * direction: { x1: 0, y1: 0, x2: 0, y2: 1 },
411
+ * stops: [
412
+ * { position: 0, color: '#003399' },
413
+ * { position: 1, color: '#3366AA' }
414
+ * ]
415
+ * };
416
+ * const css = toCSSGradientFormat(linearGradient);
417
+ * // Returns: "linear-gradient(180deg, #003399 0%, #3366AA 100%)"
418
+ *
419
+ * const radialGradient: GradientColor = {
420
+ * type: 'radial',
421
+ * center: { centerX: 0.5, centerY: 0.5, radius: 0.8 },
422
+ * stops: [
423
+ * { position: 0, color: '#ff0000' },
424
+ * { position: 1, color: '#0000ff' }
425
+ * ]
426
+ * };
427
+ * const css = toCSSGradientFormat(radialGradient);
428
+ * // Returns: "radial-gradient(circle 80% at 50% 50%, #ff0000 0%, #0000ff 100%)"
429
+ * ```
430
+ *
431
+ * @internal
432
+ */
433
+ export declare const toCSSGradientFormat: (gradient: GradientColor) => string;
@@ -419,6 +419,8 @@ export type TableWidgetStyle = {
419
419
  'colors/columns': boolean;
420
420
  'colors/headers': boolean;
421
421
  'colors/rows': boolean;
422
+ 'width/content': boolean;
423
+ 'width/window': boolean;
422
424
  };
423
425
  export type IndicatorWidgetStyle = WidgetContainerStyleOptions & {
424
426
  'indicator/gauge': {
@@ -1 +1 @@
1
- "use strict";const a=require("./execute-query-CNt566O5.cjs");class s extends a.DimensionalElement{constructor(e,r){var i;super((i=e.jaql.title)!==null&&i!==void 0?i:"",r),this.__serializable="JaqlElement",this.expression=e.jaql.dim||e.jaql.formula,this.metadataItem=e,e.jaql.agg?this.aggregation=e.jaql.agg:delete this.aggregation,e.jaql.formula?this.formula=e.jaql.formula:delete this.formula,e.jaql.sort?this.sortType=a.getSortType(e.jaql.sort):delete this.sortType,this.skipValidation=!0}get id(){return this.expression}jaql(e){return e===!0?this.metadataItem.jaql:this.metadataItem}serialize(){const e=super.serialize();return e.metadataItem=this.metadataItem,e.type=this.type,e}}const l={text:a.MetadataTypes.TextAttribute,numeric:a.MetadataTypes.NumericAttribute,datetime:a.MetadataTypes.DateLevel},d=t=>t&&t.__serializable==="JaqlElement";function n(t){var e;return new s(t,(e=l[t.jaql.datatype])!==null&&e!==void 0?e:"numeric")}function o(t){const{jaql:e}=t;if(e.formula)return a.createCalculatedMeasureHelper(e);const r=a.getGranularityFromJaql(e);return"agg"in e&&e.dim&&e.datatype?a.createMeasureHelper({expression:e.dim,dataType:e.datatype,agg:e.agg||"",granularity:r,format:void 0,sort:e.sort,title:e.title,dataSource:e.datasource}):e.dim&&e.datatype?a.createAttributeHelper({expression:e.dim,dataType:e.datatype,granularity:r,sort:e.sort,title:e.title,panel:t.panel,dataSource:e.datasource}):n(t)}const u={jaql:{datasource:{title:"",type:"elasticube"},metadata:[]},queryTitle:"",chartRecommendations:{}},m={model:"",metadata:[],chart:{},queryTitle:""},c=t=>"widgetProps"in t,p=t=>"dashboardOid"in t&&"widgetOid"in t,g=t=>"dashboardProps"in t,y=t=>"dashboardOid"in t;exports.EMPTY_EXPANDED_QUERY_MODEL=u;exports.EMPTY_SIMPLE_QUERY_MODEL=m;exports.JaqlElement=s;exports.createDimensionalElementFromMetadataItem=o;exports.isByIdDashboardCodeParams=y;exports.isByIdWidgetCodeParams=p;exports.isClientSideDashboardCodeParams=g;exports.isClientSideWidgetCodeParams=c;exports.isJaqlElement=d;
1
+ "use strict";const a=require("./execute-query-k_ytd_Rf.cjs");class s extends a.DimensionalElement{constructor(e,r){var i;super((i=e.jaql.title)!==null&&i!==void 0?i:"",r),this.__serializable="JaqlElement",this.expression=e.jaql.dim||e.jaql.formula,this.metadataItem=e,e.jaql.agg?this.aggregation=e.jaql.agg:delete this.aggregation,e.jaql.formula?this.formula=e.jaql.formula:delete this.formula,e.jaql.sort?this.sortType=a.getSortType(e.jaql.sort):delete this.sortType,this.skipValidation=!0}get id(){return this.expression}jaql(e){return e===!0?this.metadataItem.jaql:this.metadataItem}serialize(){const e=super.serialize();return e.metadataItem=this.metadataItem,e.type=this.type,e}}const l={text:a.MetadataTypes.TextAttribute,numeric:a.MetadataTypes.NumericAttribute,datetime:a.MetadataTypes.DateLevel},d=t=>t&&t.__serializable==="JaqlElement";function n(t){var e;return new s(t,(e=l[t.jaql.datatype])!==null&&e!==void 0?e:"numeric")}function o(t){const{jaql:e}=t;if(e.formula)return a.createCalculatedMeasureHelper(e);const r=a.getGranularityFromJaql(e);return"agg"in e&&e.dim&&e.datatype?a.createMeasureHelper({expression:e.dim,dataType:e.datatype,agg:e.agg||"",granularity:r,format:void 0,sort:e.sort,title:e.title,dataSource:e.datasource}):e.dim&&e.datatype?a.createAttributeHelper({expression:e.dim,dataType:e.datatype,granularity:r,sort:e.sort,title:e.title,panel:t.panel,dataSource:e.datasource}):n(t)}const u={jaql:{datasource:{title:"",type:"elasticube"},metadata:[]},queryTitle:"",chartRecommendations:{}},m={model:"",metadata:[],chart:{},queryTitle:""},c=t=>"widgetProps"in t,p=t=>"dashboardOid"in t&&"widgetOid"in t,g=t=>"dashboardProps"in t,y=t=>"dashboardOid"in t;exports.EMPTY_EXPANDED_QUERY_MODEL=u;exports.EMPTY_SIMPLE_QUERY_MODEL=m;exports.JaqlElement=s;exports.createDimensionalElementFromMetadataItem=o;exports.isByIdDashboardCodeParams=y;exports.isByIdWidgetCodeParams=p;exports.isClientSideDashboardCodeParams=g;exports.isClientSideWidgetCodeParams=c;exports.isJaqlElement=d;
@@ -1,4 +1,4 @@
1
- import { f as i, g as l, h as n, i as o, D as d, k as u, M as s } from "./execute-query-DyjkDYHG.js";
1
+ import { f as i, g as l, h as n, i as o, D as d, k as u, M as s } from "./execute-query-D1JOjJ8n.js";
2
2
  class m extends d {
3
3
  constructor(e, t) {
4
4
  var r;