@sisense/sdk-ui 2.2.0 → 2.3.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 (83) hide show
  1. package/dist/ai.cjs +39 -27
  2. package/dist/ai.js +1650 -1155
  3. package/dist/analytics-composer.cjs +24 -24
  4. package/dist/analytics-composer.js +131 -127
  5. package/dist/derive-chart-family-BtTi3OxL.js +90465 -0
  6. package/dist/derive-chart-family-DeTlU_Wm.cjs +669 -0
  7. package/dist/{dimensions-mYUylB-h.cjs → dimensions-DpBTdNJ_.cjs} +1 -1
  8. package/dist/{dimensions-HgrcPa-Q.js → dimensions-Xxab6o5s.js} +13 -13
  9. package/dist/index.cjs +22 -22
  10. package/dist/index.js +12403 -12525
  11. package/dist/index.umd.js +1578 -0
  12. package/dist/packages/sdk-ui/src/ai/api/types.d.ts +2 -0
  13. package/dist/packages/sdk-ui/src/ai/common/icon-button.d.ts +1 -1
  14. package/dist/packages/sdk-ui/src/analytics-composer/index.d.ts +1 -0
  15. package/dist/packages/sdk-ui/src/analytics-composer/widget/chart-options/get-widget-options.d.ts +23 -7
  16. package/dist/packages/sdk-ui/src/app/client-application.d.ts +16 -0
  17. package/dist/packages/sdk-ui/src/chart/restructured-charts/chart-builder-factory.d.ts +3 -1
  18. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/helpers/alerts.d.ts +3 -0
  19. package/dist/packages/sdk-ui/src/chart/restructured-charts/{helpers/cartesians → highchart-based-charts/cartesians/helpers}/data-options.d.ts +2 -2
  20. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/helpers/data.d.ts +4 -0
  21. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/helpers/get-legacy-cartesian-chart-options.d.ts +3 -0
  22. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/stackable/bar-chart/bar-chart-builder.d.ts +2 -0
  23. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/stackable/bar-chart/highcharts-options-builder.d.ts +2 -0
  24. package/dist/packages/sdk-ui/src/chart/restructured-charts/{column-chart → highchart-based-charts/cartesians/stackable/column-chart}/column-chart-builder.d.ts +1 -1
  25. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/stackable/column-chart/highcharts-options-builder.d.ts +2 -0
  26. package/dist/packages/sdk-ui/src/chart/restructured-charts/{helpers/cartesians/stackable → highchart-based-charts/cartesians/stackable/helpers}/design-options.d.ts +3 -3
  27. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/types.d.ts +1 -0
  28. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/highcharts-based-chart-renderer/build-highchart-options.d.ts +20 -0
  29. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/highcharts-based-chart-renderer/highcharts-based-chart-renderer.d.ts +39 -0
  30. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/highcharts-based-chart-renderer/utils.d.ts +2 -0
  31. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/types.d.ts +28 -0
  32. package/dist/packages/sdk-ui/src/chart/restructured-charts/types.d.ts +2 -2
  33. package/dist/packages/sdk-ui/src/chart/types.d.ts +0 -1
  34. package/dist/packages/sdk-ui/src/chart-options-processor/apply-event-handlers.d.ts +15 -0
  35. package/dist/packages/sdk-ui/src/chart-options-processor/common-highcharts-option-service.d.ts +9 -0
  36. package/dist/packages/sdk-ui/src/chart-options-processor/subtype-to-design-options.d.ts +2 -1
  37. package/dist/packages/sdk-ui/src/chart-options-processor/theme-option-service.d.ts +8 -0
  38. package/dist/packages/sdk-ui/src/chart-options-processor/translations/design-options.d.ts +4 -1
  39. package/dist/packages/sdk-ui/src/common/components/grouped-items-browser/group.d.ts +1 -0
  40. package/dist/packages/sdk-ui/src/common/components/grouped-items-browser/types.d.ts +3 -0
  41. package/dist/packages/sdk-ui/src/common/components/loading-overlay.d.ts +1 -3
  42. package/dist/packages/sdk-ui/src/common/components/menu/menu-ids.d.ts +10 -1
  43. package/dist/packages/sdk-ui/src/common/components/menu/types.d.ts +2 -0
  44. package/dist/packages/sdk-ui/src/common/components/modal/index.d.ts +2 -0
  45. package/dist/packages/sdk-ui/src/common/components/modal/modal-context.d.ts +39 -0
  46. package/dist/packages/sdk-ui/src/common/components/modal/modal-provider.d.ts +19 -0
  47. package/dist/packages/sdk-ui/src/common/components/popover.d.ts +10 -0
  48. package/dist/packages/sdk-ui/src/common/hooks/use-combined-menu.d.ts +4 -8
  49. package/dist/packages/sdk-ui/src/dashboard/components/jtd-dashboard.d.ts +15 -0
  50. package/dist/packages/sdk-ui/src/dashboard/hooks/use-jtd.d.ts +113 -0
  51. package/dist/packages/sdk-ui/src/dashboard/types.d.ts +9 -2
  52. package/dist/packages/sdk-ui/src/data-browser/data-schema-browser/data-schema-browser.d.ts +14 -0
  53. package/dist/packages/sdk-ui/src/data-browser/data-schema-browser/data-schema-browser.styles.d.ts +6 -0
  54. package/dist/packages/sdk-ui/src/data-browser/dimensions-browser/types.d.ts +5 -0
  55. package/dist/packages/sdk-ui/src/decorators/component-decorators/as-sisense-component.d.ts +2 -0
  56. package/dist/packages/sdk-ui/src/decorators/component-decorators/with-modal.d.ts +6 -0
  57. package/dist/packages/sdk-ui/src/index.d.ts +2 -1
  58. package/dist/packages/sdk-ui/src/models/dashboard/index.d.ts +1 -0
  59. package/dist/packages/sdk-ui/src/models/dashboard/types.d.ts +6 -0
  60. package/dist/packages/sdk-ui/src/models/dashboard/use-dashboard-model/use-dashboard-model.d.ts +18 -17
  61. package/dist/packages/sdk-ui/src/models/dashboard/use-dashboard-model/use-dashboard-persistence.d.ts +34 -0
  62. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-render-pivot.d.ts +4 -4
  63. package/dist/packages/sdk-ui/src/plugins-provider/types.d.ts +2 -2
  64. package/dist/packages/sdk-ui/src/props.d.ts +3 -3
  65. package/dist/packages/sdk-ui/src/translation/resources/en.d.ts +7 -0
  66. package/dist/packages/sdk-ui/src/translation/resources/index.d.ts +14 -0
  67. package/dist/packages/sdk-ui/src/types.d.ts +26 -3
  68. package/dist/packages/sdk-ui/src/utils/filter-relations.d.ts +4 -4
  69. package/dist/packages/sdk-ui/src/widget-by-id/types.d.ts +72 -0
  70. package/dist/packages/sdk-ui/src/widgets/common/drilldown-breadcrumbs/styled-buttons.d.ts +2 -2
  71. package/dist/packages/sdk-ui/src/widgets/tabber-widget.d.ts +2 -1
  72. package/dist/use-common-filters-B2N7j9H-.cjs +350 -0
  73. package/dist/use-common-filters-BC4Vg9wu.js +32068 -0
  74. package/dist/{widget-composer-CACtfvw6.js → widget-composer-Bj5DrCSm.js} +83 -73
  75. package/dist/{widget-composer-JVl8mNCt.cjs → widget-composer-DjREvygd.cjs} +7 -7
  76. package/package.json +23 -19
  77. package/dist/derive-chart-family-BsbFdcgd.cjs +0 -758
  78. package/dist/derive-chart-family-C9IDI6UV.js +0 -102051
  79. package/dist/packages/sdk-ui/src/chart/restructured-charts/bar-chart/bar-chart-builder.d.ts +0 -2
  80. package/dist/packages/sdk-ui/src/chart/restructured-charts/helpers/cartesians/data.d.ts +0 -4
  81. package/dist/packages/sdk-ui/src/widget-by-id/use-get-dashboard-model-and-widget-model.d.ts +0 -14
  82. package/dist/use-common-filters-BKYG6WGA.cjs +0 -271
  83. package/dist/use-common-filters-DkwU7HJ3.js +0 -28928
@@ -78,6 +78,8 @@ export interface NlqResponseData extends ExpandedQueryModel {
78
78
  widgetProps?: WidgetProps | undefined;
79
79
  /** The response message for the chat */
80
80
  userMsg: string;
81
+ /** @internal */
82
+ clarification: string;
81
83
  }
82
84
  export interface NlqResponse {
83
85
  data: NlqResponseData;
@@ -5,7 +5,7 @@ interface IconButtonProps extends MuiIconButtonProps {
5
5
  }
6
6
  declare const IconButton: import("@emotion/styled").StyledComponent<import("@mui/material/IconButton").IconButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
7
7
  ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
8
- }, "children" | "style" | "disabled" | "size" | "className" | "tabIndex" | "color" | "sx" | "classes" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge"> & {
8
+ }, "loading" | "children" | "style" | "disabled" | "size" | "className" | "tabIndex" | "color" | "sx" | "classes" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "loadingIndicator"> & {
9
9
  theme?: import("@emotion/react").Theme | undefined;
10
10
  } & IconButtonProps, {}, {}>;
11
11
  export default IconButton;
@@ -19,3 +19,4 @@ export * as dashboardComposer from './dashboard/dashboard-composer';
19
19
  */
20
20
  export * as executeQueryComposer from './execute-query/execute-query-composer';
21
21
  export * from './common/custom-superjson';
22
+ export * from './widget/chart-options/get-widget-options';
@@ -1,15 +1,31 @@
1
- import { ChartDataOptions, ChartStyleOptions } from '../../../types';
1
+ import { ChartDataOptions, ChartType, ChartStyleOptions } from '../../../types';
2
2
  import { MetadataItem } from '@sisense/sdk-data';
3
- import { ChartRecommendations, ExpandedQueryModel } from '../../../analytics-composer/types';
3
+ import { AxesMapping, ChartRecommendations, ExpandedQueryModel } from '../../../analytics-composer/types';
4
+ /**
5
+ * @internal
6
+ */
4
7
  export declare const getChartRecommendationsOrDefault: (response: ExpandedQueryModel) => ChartRecommendations;
5
8
  /**
9
+ * Maps the metadata items to the chart data options.
10
+ *
11
+ * @param metadataItems - metadata items
12
+ * @param chartFamily - chart family
13
+ * @param axesMapping - axes mapping
14
+ * @returns chart data options
6
15
  * @internal
7
16
  */
8
- export declare const getTableOptions: (jaql: MetadataItem[]) => {
9
- dataOptions: {
10
- columns: (import("@sisense/sdk-data").Attribute | import("@sisense/sdk-data").JaqlElement | import("@sisense/sdk-data").CalculatedMeasure | import("@sisense/sdk-data").BaseMeasure)[];
11
- };
12
- };
17
+ export declare const getChartDataOptions: (metadataItems: MetadataItem[], chartFamily: string, axesMapping: AxesMapping) => ChartDataOptions;
18
+ /**
19
+ * Get chart style options for the chart widget.
20
+ *
21
+ * @param chartType - chart type
22
+ * @param axesMapping - axes mapping
23
+ * @param initialStyleOptions - initial style options
24
+ * @param useCustomizedStyleOptions - whether to use customized style. Charts as inline response messages use customized style. Charts for Query Composer use default style.
25
+ * @returns chart style options
26
+ * @internal
27
+ */
28
+ export declare const getChartStyleOptions: (chartType: ChartType, axesMapping: AxesMapping, initialStyleOptions: ChartStyleOptions, useCustomizedStyleOptions: boolean) => ChartStyleOptions;
13
29
  /**
14
30
  * Get chart options for the chart widget.
15
31
  *
@@ -109,6 +109,22 @@ export type AppConfig = {
109
109
  */
110
110
  onTrackingEvent?: (payload: TrackingEventDetails) => void;
111
111
  };
112
+ /**
113
+ * Configuration of the jump to dashboard feature
114
+ * Only the widgets with pre-configured JTD config will support this feature.
115
+ * You can configure the JTD config in the widget settings in Fusion UI having jump to dashboard plugin enabled.
116
+ *
117
+ * This feature is currently in alpha.
118
+ * To learn more about the jump to dashboard feature, see the [Jump to Dashboard documentation](https://docs.sisense.com/main/SisenseLinux/jump-to-dashboard.htm?tocpath=Add-ons%7C_____2#ConfiguringJTDPerWidget).
119
+ */
120
+ jumpToDashboardConfig?: {
121
+ /**
122
+ * Whether to enable or disable the jump to dashboard feature
123
+ *
124
+ * If not specified, the default value is `false`
125
+ */
126
+ enabled?: boolean;
127
+ };
112
128
  };
113
129
  /**
114
130
  * Stands for a Sisense Client Application which connects to a Sisense Environment
@@ -1,3 +1,5 @@
1
1
  import type { ChartBuilder, SupportedChartType } from './types.js';
2
- export declare const chartBuildersMap: Record<SupportedChartType, ChartBuilder<SupportedChartType>>;
2
+ export declare const chartBuildersMap: {
3
+ [K in SupportedChartType]: ChartBuilder<K>;
4
+ };
3
5
  export declare function getChartBuilder<CT extends SupportedChartType>(chartType: CT): ChartBuilder<CT>;
@@ -0,0 +1,3 @@
1
+ import { BuildContext } from '../../types';
2
+ import { CartesianChartTypes } from '../types';
3
+ export declare const getCommonCartesianAlerts: (ctx: BuildContext<CartesianChartTypes>) => string[];
@@ -1,5 +1,5 @@
1
- import { CartesianChartDataOptionsInternal, ChartDataOptions, ChartDataOptionsInternal } from '../../../../chart-data-options/types';
2
- import { CartesianChartDataOptions } from '../../../../types';
1
+ import { CartesianChartDataOptionsInternal, ChartDataOptions, ChartDataOptionsInternal } from '../../../../../chart-data-options/types';
2
+ import { CartesianChartDataOptions } from '../../../../../types';
3
3
  import { Attribute, Measure } from '@sisense/sdk-data';
4
4
  /**
5
5
  * Translates the data options for cartesian charts to internal format.
@@ -0,0 +1,4 @@
1
+ import { CartesianChartDataOptionsInternal } from '../../../../../chart-data-options/types';
2
+ import { DataTable } from '../../../../../chart-data-processor/table-processor';
3
+ import { CartesianChartData } from '../../../../../chart-data/types';
4
+ export declare function getCartesianChartData(chartDataOptions: CartesianChartDataOptionsInternal, dataTable: DataTable): CartesianChartData;
@@ -0,0 +1,3 @@
1
+ import { BuildContext } from '../../types';
2
+ import { CartesianChartTypes } from '../types';
3
+ export declare const getLegacyCartesianChartOptions: (ctx: BuildContext<CartesianChartTypes>, chartType: CartesianChartTypes) => import("../../../../../chart-options-processor/chart-options-service").HighchartsOptionsInternal;
@@ -0,0 +1,2 @@
1
+ import { ChartBuilder } from '../../../../../../chart/restructured-charts/types.js';
2
+ export declare const barChartBuilder: ChartBuilder<'bar'>;
@@ -0,0 +1,2 @@
1
+ import { HighchartsOptionsBuilder } from '../../../types';
2
+ export declare const barHighchartsOptionsBuilder: HighchartsOptionsBuilder<'bar'>;
@@ -1,2 +1,2 @@
1
- import { ChartBuilder } from '../types.js';
1
+ import { ChartBuilder } from '../../../../types.js';
2
2
  export declare const columnChartBuilder: ChartBuilder<'column'>;
@@ -0,0 +1,2 @@
1
+ import { HighchartsOptionsBuilder } from '../../../types';
2
+ export declare const columnHighchartsOptionsBuilder: HighchartsOptionsBuilder<'column'>;
@@ -1,5 +1,5 @@
1
- import { CartesianChartDataOptionsInternal } from '../../../../../chart-data-options/types';
2
- import { StackableChartDesignOptions } from '../../../../../chart-options-processor/translations/design-options';
3
- import { ChartStyleOptions, StackableStyleOptions } from '../../../../../types';
1
+ import { CartesianChartDataOptionsInternal } from '../../../../../../chart-data-options/types';
2
+ import { StackableChartDesignOptions } from '../../../../../../chart-options-processor/translations/design-options';
3
+ import { ChartStyleOptions, StackableStyleOptions } from '../../../../../../types';
4
4
  export declare function translateStackableStyleOptionsToDesignOptions(chartType: 'bar' | 'column', styleOptions: StackableStyleOptions, dataOptionsInternal: CartesianChartDataOptionsInternal): StackableChartDesignOptions;
5
5
  export declare function isStackableStyleOptions(styleOptions: ChartStyleOptions): styleOptions is StackableStyleOptions;
@@ -0,0 +1 @@
1
+ export type CartesianChartTypes = 'column' | 'bar';
@@ -0,0 +1,20 @@
1
+ import { TypedDataOptionsInternal, TypedDesignOptions } from '../../types.js';
2
+ import { HighchartsOptionsInternal } from '../../../../chart-options-processor/chart-options-service';
3
+ import { TypedChartData } from '../../types.js';
4
+ import { BuildContext, HighchartBasedChartTypes, HighchartsOptionsBuilder } from '../types.js';
5
+ import { SisenseChartDataPointsEventHandler } from '../../../../sisense-chart/types';
6
+ import { SisenseChartDataPointEventHandler } from '../../../../sisense-chart/types';
7
+ import { BeforeRenderHandler } from '../../../../props';
8
+ export declare function buildHighchartsOptions<CT extends HighchartBasedChartTypes>({ highchartsOptionsBuilder: builder, chartData, dataOptions, designOptions, extraConfig, dataPointsEventHandlers, onBeforeRender, }: {
9
+ highchartsOptionsBuilder: HighchartsOptionsBuilder<CT>;
10
+ chartData: TypedChartData<CT>;
11
+ dataOptions: TypedDataOptionsInternal<CT>;
12
+ designOptions: TypedDesignOptions<CT>;
13
+ dataPointsEventHandlers: {
14
+ onDataPointClick?: SisenseChartDataPointEventHandler;
15
+ onDataPointContextMenu?: SisenseChartDataPointEventHandler;
16
+ onDataPointsSelected?: SisenseChartDataPointsEventHandler;
17
+ };
18
+ extraConfig: BuildContext<CT>['extraConfig'];
19
+ onBeforeRender?: BeforeRenderHandler;
20
+ }): HighchartsOptionsInternal;
@@ -0,0 +1,39 @@
1
+ /// <reference types="react" />
2
+ import { BuildContext, HighchartBasedChartTypes, HighchartsOptionsBuilder } from '../types.js';
3
+ import { TypedChartData, TypedDataOptionsInternal, TypedDesignOptions } from '../../types.js';
4
+ import { SisenseChartDataPointEventHandler, SisenseChartDataPointsEventHandler } from '../../../../sisense-chart/types';
5
+ import { BeforeRenderHandler } from '../../../../props';
6
+ import { ChartRendererProps } from '../../../../chart/types';
7
+ export type HighchartsBasedChartRendererProps<CT extends HighchartBasedChartTypes> = {
8
+ chartData: TypedChartData<CT>;
9
+ dataOptions: TypedDataOptionsInternal<CT>;
10
+ designOptions: TypedDesignOptions<CT>;
11
+ onDataPointClick?: SisenseChartDataPointEventHandler;
12
+ onDataPointContextMenu?: SisenseChartDataPointEventHandler;
13
+ onDataPointsSelected?: SisenseChartDataPointsEventHandler;
14
+ onBeforeRender?: BeforeRenderHandler;
15
+ };
16
+ /**
17
+ * Creates a specific highcharts based chart renderer component
18
+ * with memoized highcharts options builder and alerts builder.
19
+ *
20
+ * @param highchartsOptionsBuilder - The highcharts options builder.
21
+ * @param getAlerts - The function to get the alerts.
22
+ * @returns The highcharts based chart renderer component.
23
+ */
24
+ export declare function createHighchartsBasedChartRenderer<CT extends HighchartBasedChartTypes>({ highchartsOptionsBuilder, getAlerts, }: {
25
+ /**
26
+ * The builder of highcharts options for specific chart type.
27
+ */
28
+ highchartsOptionsBuilder: HighchartsOptionsBuilder<CT>;
29
+ /**
30
+ * The function to get the alerts for specific chart type.
31
+ */
32
+ getAlerts: (ctx: BuildContext<CT>) => string[];
33
+ }): React.FC<HighchartsBasedChartRendererProps<CT>>;
34
+ /**
35
+ * Type guard to check if a value is a valid props object for the HighchartsBasedChartRenderer component
36
+ * @param value - The value to check
37
+ * @returns True if the value is a valid HighchartsBasedChartRendererProps, false otherwise
38
+ */
39
+ export declare function isHighchartsBasedChartRendererProps<CT extends HighchartBasedChartTypes>(props: ChartRendererProps): props is HighchartsBasedChartRendererProps<CT>;
@@ -0,0 +1,2 @@
1
+ import { ChartType } from '../../../../types';
2
+ export declare const isHighchartsBasedChart: (chartType: ChartType) => boolean;
@@ -0,0 +1,28 @@
1
+ import { HighchartsOptionsInternal } from '../../../chart-options-processor/chart-options-service';
2
+ import { CompleteThemeSettings } from '../../../index-typedoc';
3
+ import { TFunction } from '@sisense/sdk-common';
4
+ import { TypedChartData, TypedDataOptionsInternal, TypedDesignOptions } from '../types';
5
+ export type HighchartBasedChartTypes = 'column' | 'bar';
6
+ export type HighchartsOptionsBuilder<CT extends HighchartBasedChartTypes> = {
7
+ getChart: (ctx: BuildContext<CT>) => HighchartsOptionsInternal['chart'];
8
+ getSeries: (ctx: BuildContext<CT>) => HighchartsOptionsInternal['series'];
9
+ getAxes: (ctx: BuildContext<CT>) => {
10
+ xAxis: HighchartsOptionsInternal['xAxis'];
11
+ yAxis: HighchartsOptionsInternal['yAxis'];
12
+ };
13
+ getLegend: (ctx: BuildContext<CT>) => HighchartsOptionsInternal['legend'];
14
+ getPlotOptions: (ctx: BuildContext<CT>) => HighchartsOptionsInternal['plotOptions'];
15
+ getTooltip: (ctx: BuildContext<CT>) => HighchartsOptionsInternal['tooltip'];
16
+ getExtras: (ctx: BuildContext<CT>) => Partial<HighchartsOptionsInternal>;
17
+ };
18
+ export type BuildContext<CT extends HighchartBasedChartTypes> = {
19
+ chartData: TypedChartData<CT>;
20
+ dataOptions: TypedDataOptionsInternal<CT>;
21
+ designOptions: TypedDesignOptions<CT>;
22
+ extraConfig: {
23
+ translate: TFunction;
24
+ themeSettings: CompleteThemeSettings;
25
+ dateFormatter: (date: Date, format: string) => string;
26
+ accessibilityEnabled: boolean;
27
+ };
28
+ };
@@ -2,7 +2,6 @@
2
2
  import { Attribute, Measure, QueryResultData } from '@sisense/sdk-data';
3
3
  import { QueryDescription, QueryExecutionConfig } from '@sisense/sdk-query-client';
4
4
  import type { AreamapStyleOptions, ChartDataOptions, ChartStyleOptions, ScattermapStyleOptions, StackableStyleOptions } from '../../types';
5
- import type { SisenseChartProps } from '../../sisense-chart';
6
5
  import type { ChartRendererProps } from '../../chart';
7
6
  import type { CartesianChartData, ScattermapChartData } from '../../chart-data/types';
8
7
  import { AreamapChartDataOptions, AreamapChartDataOptionsInternal, CartesianChartDataOptions, CartesianChartDataOptionsInternal, ChartDataOptionsInternal, ScattermapChartDataOptions, ScattermapChartDataOptionsInternal } from '../../chart-data-options/types';
@@ -12,6 +11,7 @@ import { ClientApplication } from '../../app/client-application';
12
11
  import { AreamapProps } from '../../chart/restructured-charts/areamap-chart/renderer';
13
12
  import { ScattermapProps } from '../../charts/map-charts/scattermap/scattermap';
14
13
  import { AreamapData } from './areamap-chart/types';
14
+ import { HighchartsBasedChartRendererProps } from './highchart-based-charts/highcharts-based-chart-renderer/highcharts-based-chart-renderer';
15
15
  export type SupportedChartType = 'areamap' | 'column' | 'bar';
16
16
  export type TypedChartDataOptions<CT extends SupportedChartType> = CT extends 'areamap' ? AreamapChartDataOptions : CT extends 'scattermap' ? ScattermapChartDataOptions : CT extends 'column' | 'bar' ? CartesianChartDataOptions : never;
17
17
  export type TypedDataOptionsInternal<CT extends SupportedChartType> = CT extends 'areamap' ? AreamapChartDataOptionsInternal : CT extends 'scattermap' ? ScattermapChartDataOptionsInternal : CT extends 'column' | 'bar' ? CartesianChartDataOptionsInternal : never;
@@ -24,7 +24,7 @@ export type TypedLoadDataFunction<CT extends SupportedChartType> = (options: {
24
24
  queryDescription: QueryDescription;
25
25
  executionConfig?: QueryExecutionConfig;
26
26
  }) => Promise<QueryResultData>;
27
- export type TypedChartRendererProps<CT extends SupportedChartType> = CT extends 'areamap' ? AreamapProps : CT extends 'scattermap' ? ScattermapProps : CT extends 'column' | 'bar' ? SisenseChartProps : never;
27
+ export type TypedChartRendererProps<CT extends SupportedChartType> = CT extends 'areamap' ? AreamapProps : CT extends 'scattermap' ? ScattermapProps : CT extends 'column' | 'bar' ? HighchartsBasedChartRendererProps<CT> : never;
28
28
  /**
29
29
  * Chart builder interface.
30
30
  */
@@ -17,5 +17,4 @@ export type ChartRendererProps = {
17
17
  onDataPointContextMenu?: ChartProps['onDataPointContextMenu'];
18
18
  onDataPointsSelected?: ChartProps['onDataPointsSelected'];
19
19
  onBeforeRender?: ChartProps['onBeforeRender'];
20
- filters?: ChartProps['filters'];
21
20
  };
@@ -25,3 +25,18 @@ export declare const applyEventHandlersToChart: (chartOptions: HighchartsOptions
25
25
  onDataPointContextMenu?: SisenseChartDataPointEventHandler | undefined;
26
26
  onDataPointsSelected?: SisenseChartDataPointsEventHandler | undefined;
27
27
  }) => HighchartsOptionsInternal;
28
+ /**
29
+ * Composable variant of applyEventHandlersToChart.
30
+ * Returns a function that applies event handlers to the chart options.
31
+ *
32
+ * @param dataOptions - The data options to use.
33
+ * @param onDataPointClick - The event handler for data point click.
34
+ * @param onDataPointContextMenu - The event handler for data point context menu.
35
+ * @param onDataPointsSelected - The event handler for data points selected.
36
+ * @returns A function that applies event handlers to the chart options.
37
+ */
38
+ export declare function withEventHandlers(dataOptions: ChartDataOptionsInternal, { onDataPointClick, onDataPointContextMenu, onDataPointsSelected, }?: {
39
+ onDataPointClick?: SisenseChartDataPointEventHandler;
40
+ onDataPointContextMenu?: SisenseChartDataPointEventHandler;
41
+ onDataPointsSelected?: SisenseChartDataPointsEventHandler;
42
+ }): (chartOptions: HighchartsOptionsInternal) => HighchartsOptionsInternal;
@@ -3,3 +3,12 @@ import { HighchartsOptionsInternal } from './chart-options-service';
3
3
  export declare const DEFAULT_ANIMATION_DURATION_MS_INIT = 600;
4
4
  export declare const DEFAULT_ANIMATION_DURATION_MS_UPDATE = 300;
5
5
  export declare const applyCommonHighchartsOptions: (chartOptions: HighchartsOptionsInternal, themeSettings: CompleteThemeSettings, accessibilityEnabled: boolean) => HighchartsOptionsInternal;
6
+ /**
7
+ * Composable variant of applyCommonHighchartsOptions.
8
+ * Returns a function that applies common highcharts options to the chart options.
9
+ *
10
+ * @param themeSettings - The theme settings to use.
11
+ * @param accessibilityEnabled - Whether accessibility is enabled.
12
+ * @returns A function that applies common highcharts options to the chart.
13
+ */
14
+ export declare function withCommonHighchartsOptions(themeSettings: CompleteThemeSettings, accessibilityEnabled: boolean): (chartOptions: HighchartsOptionsInternal) => HighchartsOptionsInternal;
@@ -10,9 +10,10 @@ import { AreamapType } from '../types';
10
10
  *
11
11
  * - `line/spline` - curved line from point to point.
12
12
  * - `line/basic` - straight line from point to point.
13
+ * - `line/step` - step line where segments create a step-like pattern.
13
14
  *
14
15
  */
15
- export type LineSubtype = 'line/spline' | 'line/basic';
16
+ export type LineSubtype = 'line/spline' | 'line/basic' | 'line/step';
16
17
  /**
17
18
  * Property of {@link AreaStyleOptions}
18
19
  *
@@ -1,3 +1,11 @@
1
1
  import { CompleteThemeSettings } from '../types';
2
2
  import { HighchartsOptionsInternal } from './chart-options-service';
3
3
  export declare const applyThemeToChart: (chartOptions: HighchartsOptionsInternal, themeSettings?: CompleteThemeSettings) => HighchartsOptionsInternal;
4
+ /**
5
+ * Composable variant of applyThemeToChart.
6
+ * Returns a function that applies theme options to the chart options.
7
+ *
8
+ * @param themeSettings - The theme settings to use.
9
+ * @returns A function that applies theme options to the chart options.
10
+ */
11
+ export declare function withThemeOptions(themeSettings?: CompleteThemeSettings): (chartOptions: HighchartsOptionsInternal) => HighchartsOptionsInternal;
@@ -37,7 +37,10 @@ export type StackableChartDesignOptions = CartesianChartDesignOptions & {
37
37
  showTotal?: boolean;
38
38
  totalLabelRotation?: number;
39
39
  } & DesignPerSeries;
40
- export type LineChartDesignOptions = CartesianChartDesignOptions;
40
+ export type LineChartDesignOptions = CartesianChartDesignOptions & {
41
+ /** Step type for step line charts: left, center, or right */
42
+ step?: 'left' | 'center' | 'right';
43
+ };
41
44
  export type AreaChartDesignOptions = StackableChartDesignOptions;
42
45
  export type BarChartDesignOptions = StackableChartDesignOptions;
43
46
  export type ColumnChartDesignOptions = StackableChartDesignOptions;
@@ -5,6 +5,7 @@ type GroupProps = {
5
5
  groupSecondaryActionConfig?: GroupSecondaryActionConfig;
6
6
  itemActionConfig?: ItemActionConfig;
7
7
  itemSecondaryActionConfig?: ItemSecondaryActionConfig;
8
+ collapsed?: boolean;
8
9
  };
9
10
  export declare const Group: React.FC<GroupProps>;
10
11
  export {};
@@ -5,6 +5,7 @@ export type GroupedItemsBrowserProps = {
5
5
  itemActionConfig?: ItemActionConfig;
6
6
  itemSecondaryActionConfig?: ItemSecondaryActionConfig;
7
7
  onScrolledToBottom?: () => void;
8
+ collapseAll?: boolean;
8
9
  };
9
10
  /**
10
11
  * A group of items.
@@ -14,6 +15,7 @@ export type ItemsGroup = {
14
15
  id: string;
15
16
  items: Item[];
16
17
  Icon?: React.ComponentType;
18
+ description?: string;
17
19
  };
18
20
  /**
19
21
  * An item in the list of grouped items.
@@ -24,6 +26,7 @@ export type Item = {
24
26
  Icon?: React.ComponentType;
25
27
  isDisabled?: boolean;
26
28
  hoverTooltip?: string;
29
+ description?: string;
27
30
  };
28
31
  export type GroupSecondaryActionConfig = {
29
32
  SecondaryActionButtonIcon: React.ComponentType<{
@@ -1,5 +1,4 @@
1
1
  import { ReactNode } from 'react';
2
- import { CompleteThemeSettings } from '../../types';
3
2
  /**
4
3
  * Component that displays a loading overlay.
5
4
  * Overlay is active when query is executed within a chart.
@@ -8,8 +7,7 @@ import { CompleteThemeSettings } from '../../types';
8
7
  * @returns Child component wrapped in dynamic overlay.
9
8
  * @internal
10
9
  */
11
- export declare const LoadingOverlay: ({ isVisible, themeSettings, children, }: {
10
+ export declare const LoadingOverlay: ({ isVisible, children, }: {
12
11
  isVisible: boolean;
13
- themeSettings: CompleteThemeSettings;
14
12
  children: ReactNode;
15
13
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,12 @@
1
+ /**
2
+ * A collection of unique menu IDs for all menus from all components.
3
+ *
4
+ * @internal
5
+ */
6
+ export declare enum MenuIds {
7
+ WIDGET_POINTS_DRILLDOWN = "widget-points-drilldown",
8
+ WIDGET_POINTS_CROSSFILTERING = "widget-points-crossfiltering"
9
+ }
1
10
  /**
2
11
  * A collection of unique menu IDs for all menu sections from all components.
3
12
  *
@@ -5,7 +14,7 @@
5
14
  *
6
15
  * @internal
7
16
  */
8
- export declare enum MenuIds {
17
+ export declare enum MenuSectionIds {
9
18
  DRILLDOWN_CHART_POINTS_SELECTION = "drilldown-chart-points-selection",
10
19
  DRILLDOWN_DRILL_DIRECTIONS = "drilldown-drill-directions",
11
20
  CROSSFILTERING_CHART_POINTS_SELECTION = "crossfiltering-chart-points-selection"
@@ -1,5 +1,7 @@
1
1
  import { MenuPosition, MenuItemSection } from '../../../types';
2
2
  export type MenuOptions = {
3
+ /** @internal */
4
+ readonly id?: string;
3
5
  position: MenuPosition;
4
6
  itemSections: MenuItemSection[];
5
7
  onClose?: () => void;
@@ -0,0 +1,2 @@
1
+ export { useModal, ModalContext, useModalContext, type ModalOptions, type ModalInstance, } from './modal-context';
2
+ export { ModalProvider, ModalTreeRootProvider, ModalTreeNodeProvider } from './modal-provider';
@@ -0,0 +1,39 @@
1
+ /// <reference types="react" />
2
+ import { SizeMeasurement } from '../../../types';
3
+ export interface ModalOptions {
4
+ title?: string;
5
+ content: React.ReactNode;
6
+ width?: number;
7
+ height?: number;
8
+ measurement?: SizeMeasurement;
9
+ }
10
+ export type ModalInstance = {
11
+ id: string;
12
+ options: ModalOptions;
13
+ anchorEl: HTMLElement;
14
+ resolve: () => void;
15
+ };
16
+ export type OpenModalFn = (options: ModalOptions) => Promise<string>;
17
+ export type CloseModalFn = (modalId?: string) => void;
18
+ type ModalSettings = {
19
+ openModal: OpenModalFn;
20
+ closeModal: CloseModalFn;
21
+ closeAllModals: () => void;
22
+ getModalStack: () => ModalInstance[];
23
+ isModalOpen: (modalId: string) => boolean;
24
+ };
25
+ export declare const ModalContext: import("react").Context<ModalSettings | null>;
26
+ /**
27
+ * Hook to get the modal context (modal API)
28
+ *
29
+ * @returns The modal context
30
+ * @internal
31
+ */
32
+ export declare const useModalContext: () => ModalSettings | null;
33
+ /**
34
+ * Hook to use modal functionality
35
+ *
36
+ * @returns Modal API functions
37
+ */
38
+ export declare const useModal: () => ModalSettings;
39
+ export {};
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ export interface ModalProviderProps {
3
+ children?: React.ReactNode;
4
+ }
5
+ /**
6
+ * The root-level provider component for managing and displaying modals.
7
+ * This component provides the modal API for controlling modal components.
8
+ */
9
+ declare const ModalTreeRootProvider: React.FC<ModalProviderProps>;
10
+ /**
11
+ * The node-level provider component for managing and displaying modals.
12
+ * This component provides the proxy access to the root modal API.
13
+ */
14
+ declare const ModalTreeNodeProvider: React.FC<ModalProviderProps>;
15
+ /**
16
+ * The general modal provider component that decides whether to use the root or node-level modal provider.
17
+ */
18
+ export declare const ModalProvider: ({ children }: ModalProviderProps) => import("react/jsx-runtime").JSX.Element;
19
+ export { ModalTreeRootProvider, ModalTreeNodeProvider };
@@ -18,6 +18,16 @@ type PopoverProps = {
18
18
  id?: string;
19
19
  position?: PopoverPosition;
20
20
  onClose?: () => void;
21
+ BackdropProps?: {
22
+ invisible?: boolean;
23
+ style?: React.CSSProperties;
24
+ };
25
+ style?: React.CSSProperties;
26
+ slotProps?: {
27
+ paper?: {
28
+ sx?: Record<string, any>;
29
+ };
30
+ };
21
31
  };
22
32
  /** @internal */
23
33
  export declare const Popover: (props: PopoverProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,19 +1,15 @@
1
1
  import { MenuOptions } from '../components/menu/types.js';
2
- export type IsTargetMenuFn = (menuOptions: MenuOptions) => boolean;
3
- export type CombineMenusFn = (currentMenuOptions: MenuOptions, capturedMenuOptions: MenuOptions) => MenuOptions;
2
+ export type CombineMenusFn = (menusOptions: MenuOptions[]) => MenuOptions;
4
3
  export interface CombinedMenuParams {
5
- /** Function to determine if the captured menu is the target menu */
6
- isTargetMenu: IsTargetMenuFn;
7
4
  /** Function to combine the current menu options with the captured menu options */
8
5
  combineMenus: CombineMenusFn;
9
6
  }
10
7
  /**
11
- * Custom hook to manage a combined menu, allowing you to capture
12
- * other menu before openning and combine it with the current one.
8
+ * Custom hook to manage a combined menu flow,
9
+ * allowing to combine multiple menus options opened one after the other.
13
10
  *
14
11
  * @internal
15
12
  */
16
- export declare const useCombinedMenu: ({ isTargetMenu, combineMenus }: CombinedMenuParams) => {
13
+ export declare const useCombinedMenu: ({ combineMenus }: CombinedMenuParams) => {
17
14
  openMenu: (options: MenuOptions) => void;
18
- onBeforeMenuOpen: (options: MenuOptions) => MenuOptions | null;
19
15
  };
@@ -0,0 +1,15 @@
1
+ import { type Filter } from '@sisense/sdk-data';
2
+ interface JTDDashboardProps {
3
+ dashboardOid: string;
4
+ filters: Filter[];
5
+ mergeTargetDashboardFilters: boolean;
6
+ displayToolbarRow: boolean;
7
+ displayFilterPane: boolean;
8
+ }
9
+ /**
10
+ * JTD-specific Dashboard component that handles runtime filters
11
+ * This component reuses DashboardById logic but is specifically designed for JTD use cases
12
+ * @internal
13
+ */
14
+ export declare const JTDDashboard: ({ dashboardOid, filters: runtimeFilters, mergeTargetDashboardFilters, displayToolbarRow, displayFilterPane, }: JTDDashboardProps) => import("react/jsx-runtime").JSX.Element;
15
+ export {};