@sisense/sdk-ui 2.3.1 → 2.4.1

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 (72) hide show
  1. package/dist/ai.cjs +17 -16
  2. package/dist/ai.js +767 -670
  3. package/dist/analytics-composer.cjs +1 -1
  4. package/dist/analytics-composer.js +4 -4
  5. package/dist/{derive-chart-family-5O0nGmIH.cjs → derive-chart-family-Cqw-HJq1.cjs} +9 -9
  6. package/dist/{derive-chart-family-H5uuw6lv.js → derive-chart-family-woVAnbRi.js} +6909 -6862
  7. package/dist/{dimensions-aqixuZxM.js → dimensions-BHdLQaOB.js} +1 -1
  8. package/dist/{dimensions-R6yuR7CB.cjs → dimensions-oGJ_aWd5.cjs} +1 -1
  9. package/dist/index.cjs +15 -15
  10. package/dist/index.js +7589 -7286
  11. package/dist/index.umd.js +274 -273
  12. package/dist/packages/sdk-ui/src/ai/api/types.d.ts +1 -1
  13. package/dist/packages/sdk-ui/src/ai/common/icon-button.d.ts +1 -1
  14. package/dist/packages/sdk-ui/src/analytics-composer/types.d.ts +2 -2
  15. package/dist/packages/sdk-ui/src/api/rest-api.d.ts +9 -4
  16. package/dist/packages/sdk-ui/src/app/client-application.d.ts +1 -1
  17. package/dist/packages/sdk-ui/src/common/components/button.d.ts +1 -0
  18. package/dist/packages/sdk-ui/src/common/components/menu/context-menu/context-menu.d.ts +1 -1
  19. package/dist/packages/sdk-ui/src/common/components/menu/context-menu/menu.d.ts +4 -2
  20. package/dist/packages/sdk-ui/src/common/components/menu/menu-button.d.ts +8 -0
  21. package/dist/packages/sdk-ui/src/common/components/menu/types.d.ts +3 -1
  22. package/dist/packages/sdk-ui/src/common/components/popper.d.ts +6 -1
  23. package/dist/packages/sdk-ui/src/common/hooks/use-defaults.d.ts +1 -2
  24. package/dist/packages/sdk-ui/src/common/icons/drag-handle-icon.d.ts +3 -0
  25. package/dist/packages/sdk-ui/src/custom-widgets-provider/custom-widgets-context.d.ts +8 -0
  26. package/dist/packages/sdk-ui/src/custom-widgets-provider/custom-widgets-provider-adapter.d.ts +17 -0
  27. package/dist/packages/sdk-ui/src/custom-widgets-provider/custom-widgets-provider.d.ts +9 -0
  28. package/dist/packages/sdk-ui/src/custom-widgets-provider/index.d.ts +6 -0
  29. package/dist/packages/sdk-ui/src/custom-widgets-provider/types.d.ts +19 -0
  30. package/dist/packages/sdk-ui/src/custom-widgets-provider/use-custom-widgets.d.ts +25 -0
  31. package/dist/packages/sdk-ui/src/custom-widgets-provider/use-execute-custom-widget-query.d.ts +35 -0
  32. package/dist/packages/sdk-ui/src/dashboard/components/editable-layout/components/draggable-widget-wrapper.d.ts +12 -3
  33. package/dist/packages/sdk-ui/src/dashboard/components/editable-layout/editable-layout.d.ts +12 -1
  34. package/dist/packages/sdk-ui/src/dashboard/components/editable-layout/helpers.d.ts +57 -1
  35. package/dist/packages/sdk-ui/src/dashboard/components/editable-layout/utils.d.ts +13 -0
  36. package/dist/packages/sdk-ui/src/dashboard/constants.d.ts +11 -3
  37. package/dist/packages/sdk-ui/src/dashboard/dashboard.d.ts +11 -1
  38. package/dist/packages/sdk-ui/src/dashboard/index.d.ts +1 -1
  39. package/dist/packages/sdk-ui/src/dashboard/types.d.ts +72 -21
  40. package/dist/packages/sdk-ui/src/dashboard/use-dashboard-theme.d.ts +10 -0
  41. package/dist/packages/sdk-ui/src/filters/components/filters-panel/filters-panel.d.ts +35 -4
  42. package/dist/packages/sdk-ui/src/filters/hooks/index.d.ts +1 -1
  43. package/dist/packages/sdk-ui/src/filters/hooks/use-get-filter-members.d.ts +62 -24
  44. package/dist/packages/sdk-ui/src/index.d.ts +5 -5
  45. package/dist/packages/sdk-ui/src/indicator-canvas.d.ts +2 -0
  46. package/dist/packages/sdk-ui/src/models/dashboard/get-dashboard-model.d.ts +7 -0
  47. package/dist/packages/sdk-ui/src/models/dashboard/use-dashboard-model/use-dashboard-model-reducer.d.ts +21 -4
  48. package/dist/packages/sdk-ui/src/models/dashboard/use-dashboard-model/use-dashboard-model.d.ts +1 -1
  49. package/dist/packages/sdk-ui/src/models/dashboard/use-dashboard-model/use-dashboard-persistence.d.ts +8 -1
  50. package/dist/packages/sdk-ui/src/models/widget/types.d.ts +1 -1
  51. package/dist/packages/sdk-ui/src/models/widget/widget-model-translator.d.ts +3 -3
  52. package/dist/packages/sdk-ui/src/models/widget/widget-model.d.ts +3 -3
  53. package/dist/packages/sdk-ui/src/props.d.ts +52 -11
  54. package/dist/packages/sdk-ui/src/translation/resources/en.d.ts +7 -2
  55. package/dist/packages/sdk-ui/src/translation/resources/index.d.ts +14 -4
  56. package/dist/packages/sdk-ui/src/types.d.ts +59 -5
  57. package/dist/packages/sdk-ui/src/widget-by-id/types.d.ts +2 -2
  58. package/dist/packages/sdk-ui/src/widget-by-id/utils.d.ts +6 -6
  59. package/dist/packages/sdk-ui/src/widgets/common/drilldown-breadcrumbs/styled-buttons.d.ts +2 -2
  60. package/dist/packages/sdk-ui/src/widgets/custom-widget.d.ts +8 -0
  61. package/dist/{use-common-filters-CSwVz8Hy.js → use-common-filters-Br-CoziA.js} +3792 -3850
  62. package/dist/{use-common-filters-CN2YnxBs.cjs → use-common-filters-CCXbao1t.cjs} +62 -62
  63. package/dist/{widget-composer-BpeW0NNz.js → widget-composer-BCNu5BzM.js} +12 -12
  64. package/dist/{widget-composer-BB1-bv-q.cjs → widget-composer-DheWJukc.cjs} +2 -2
  65. package/package.json +7 -7
  66. package/dist/packages/sdk-ui/src/plugins-provider/custom-plugins-provider.d.ts +0 -19
  67. package/dist/packages/sdk-ui/src/plugins-provider/index.d.ts +0 -2
  68. package/dist/packages/sdk-ui/src/plugins-provider/plugins-context.d.ts +0 -9
  69. package/dist/packages/sdk-ui/src/plugins-provider/plugins-provider.d.ts +0 -18
  70. package/dist/packages/sdk-ui/src/plugins-provider/types.d.ts +0 -23
  71. package/dist/packages/sdk-ui/src/plugins-provider/use-execute-plugin-query.d.ts +0 -24
  72. package/dist/packages/sdk-ui/src/widgets/plugin-widget.d.ts +0 -8
@@ -10,7 +10,7 @@ import { LegendPosition } from './chart-options-processor/translations/legend-se
10
10
  import { Coordinates } from './charts/map-charts/scattermap/types';
11
11
  import { StyledColumn, StyledMeasureColumn, Hierarchy, HierarchyId } from '.';
12
12
  import { HighchartsOptionsInternal } from './chart-options-processor/chart-options-service';
13
- import { CSSProperties } from 'react';
13
+ import { CSSProperties, ReactNode } from 'react';
14
14
  import { GeoDataElement, RawGeoDataElement } from './chart/restructured-charts/areamap-chart/types';
15
15
  import { TabCornerRadius, TabInterval, TabSize } from './widgets/tabber-widget';
16
16
  import { SoftUnion } from './utils/utility-types';
@@ -965,6 +965,17 @@ export type DashboardThemeSettings = {
965
965
  dividerLineColor?: string;
966
966
  borderWidth?: number;
967
967
  borderColor?: string;
968
+ /**
969
+ * Toolbar style settings for dashboard
970
+ */
971
+ toolbar?: {
972
+ /** Primary text color for the dashboard toolbar */
973
+ primaryTextColor?: string;
974
+ /** Secondary text color for the dashboard toolbar */
975
+ secondaryTextColor?: string;
976
+ /** Background color for the dashboard toolbar */
977
+ backgroundColor?: string;
978
+ };
968
979
  };
969
980
  /**
970
981
  * Filter theme settings
@@ -1164,7 +1175,7 @@ export type CompleteThemeSettings = DeepRequired<Omit<ThemeSettings, 'typography
1164
1175
  };
1165
1176
  };
1166
1177
  /** Complete set of configuration options that define functional style of the various elements of the charts as well as the look and feel of widget itself and widget header. */
1167
- export type WidgetStyleOptions = (ChartStyleOptions | TableStyleOptions | TextWidgetStyleOptions | PluginWidgetStyleOptions) & WidgetContainerStyleOptions;
1178
+ export type WidgetStyleOptions = (ChartStyleOptions | TableStyleOptions | TextWidgetStyleOptions | CustomWidgetStyleOptions) & WidgetContainerStyleOptions;
1168
1179
  /** Style settings defining the look and feel of widget itself and widget header */
1169
1180
  export interface WidgetContainerStyleOptions {
1170
1181
  /** Space between widget container edge and the chart */
@@ -1207,6 +1218,12 @@ export interface WidgetContainerStyleOptions {
1207
1218
  * @internal
1208
1219
  */
1209
1220
  renderToolbar?: RenderToolbarHandler;
1221
+ /**
1222
+ * Custom title to render in widget header
1223
+ *
1224
+ * @internal
1225
+ */
1226
+ renderTitle?: RenderTitleHandler;
1210
1227
  };
1211
1228
  }
1212
1229
  /**
@@ -1221,6 +1238,8 @@ export type NlqChartWidgetStyleOptions = {
1221
1238
  };
1222
1239
  /** @internal */
1223
1240
  export type RenderToolbarHandler = (onRefresh: () => void, defaultToolbar: JSX.Element) => JSX.Element | null;
1241
+ /** @internal */
1242
+ export type RenderTitleHandler = (defaultHeaderTitle: ReactNode) => ReactNode;
1224
1243
  /** Style settings defining the look and feel of the widget created in Fusion */
1225
1244
  export interface WidgetByIdStyleOptions extends WidgetContainerStyleOptions {
1226
1245
  /**
@@ -1263,9 +1282,9 @@ export type TextWidgetStyleOptions = {
1263
1282
  bgColor: string;
1264
1283
  };
1265
1284
  /**
1266
- * Style settings defining the look and feel of PluginWidget
1285
+ * Style settings defining the look and feel of CustomWidget
1267
1286
  */
1268
- export type PluginWidgetStyleOptions = Record<string, unknown> & WidgetContainerStyleOptions;
1287
+ export type CustomWidgetStyleOptions = Record<string, unknown> & WidgetContainerStyleOptions;
1269
1288
  /**
1270
1289
  * Runs type guard check for ThemeOid.
1271
1290
  *
@@ -1407,6 +1426,29 @@ export type BoxplotDataPoint = {
1407
1426
  outliers: DataPointEntry[];
1408
1427
  };
1409
1428
  };
1429
+ /** Data point that represents the entire Indicator chart data. */
1430
+ export type IndicatorDataPoint = {
1431
+ /**
1432
+ * A collection of data point entries that represents values for all related `dataOptions`.
1433
+ *
1434
+ * @internal
1435
+ */
1436
+ entries?: {
1437
+ value?: DataPointEntry;
1438
+ secondary?: DataPointEntry;
1439
+ min?: DataPointEntry;
1440
+ max?: DataPointEntry;
1441
+ };
1442
+ };
1443
+ /**
1444
+ * Data point that represents the entire Text widget data.
1445
+ *
1446
+ * @internal
1447
+ */
1448
+ export type TextWidgetDataPoint = {
1449
+ /** HTML content of the text widget */
1450
+ html?: string;
1451
+ };
1410
1452
  /**
1411
1453
  * Data point in an Areamap chart.
1412
1454
  */
@@ -1562,6 +1604,18 @@ export type MenuPosition = {
1562
1604
  /** Vertical position */
1563
1605
  top: number;
1564
1606
  };
1607
+ /**
1608
+ * Menu alignment configuration for positioning
1609
+ * Used in {@link @sisense/sdk-ui!ContextMenuProps | `ContextMenuProps`}
1610
+ *
1611
+ * @internal
1612
+ */
1613
+ export type MenuAlignment = {
1614
+ /** Vertical alignment of the menu relative to its anchor point */
1615
+ vertical?: 'top' | 'bottom';
1616
+ /** Horizontal alignment of the menu relative to its anchor point */
1617
+ horizontal?: 'left' | 'right';
1618
+ };
1565
1619
  /**
1566
1620
  * Context menu section
1567
1621
  * Used in {@link @sisense/sdk-ui!ContextMenuProps | `ContextMenuProps`}
@@ -1629,7 +1683,7 @@ export type LoadingIndicatorConfig = {
1629
1683
  enabled?: boolean;
1630
1684
  };
1631
1685
  /**
1632
- * Data options with arbitrary keys. This is typically used in the context of a plugin widget.
1686
+ * Data options with arbitrary keys. This is typically used in the context of a custom widget.
1633
1687
  */
1634
1688
  export type GenericDataOptions = Record<string, Array<StyledColumn | StyledMeasureColumn>>;
1635
1689
  /**
@@ -22,7 +22,7 @@ export type TextWidgetType = 'richtexteditor';
22
22
  /**
23
23
  * The type of a widget on a dashboard.
24
24
  */
25
- export type FusionWidgetType = CartesianWidgetType | CategoricalWidgetType | 'chart/scatter' | 'indicator' | TabularWidgetType | 'chart/boxplot' | 'map/scatter' | 'map/area' | TextWidgetType | 'plugin';
25
+ export type FusionWidgetType = CartesianWidgetType | CategoricalWidgetType | 'chart/scatter' | 'indicator' | TabularWidgetType | 'chart/boxplot' | 'map/scatter' | 'map/area' | TextWidgetType | 'custom';
26
26
  export type WidgetSubtype = 'area/basic' | 'area/stacked' | 'area/stacked100' | 'area/spline' | 'area/stackedspline' | 'area/stackedspline100' | 'bar/classic' | 'bar/stacked' | 'bar/stacked100' | 'column/classic' | 'column/stackedcolumn' | 'column/stackedcolumn100' | 'line/basic' | 'line/spline' | 'pie/classic' | 'pie/donut' | 'pie/ring' | 'column/polar' | 'area/polar' | 'line/polar' | 'indicator/numeric' | 'indicator/gauge' | 'bubble/scatter' | 'treemap' | 'sunburst' | 'boxplot/full' | 'boxplot/hollow' | 'map/scatter' | 'areamap/world' | 'areamap/usa' | 'richtexteditor';
27
27
  export declare enum WidgetDashboardFilterMode {
28
28
  FILTER = "filter",
@@ -376,7 +376,7 @@ export type FunnelWidgetStyle = BaseWidgetStyle & WidgetContainerStyleOptions &
376
376
  decimals: boolean;
377
377
  };
378
378
  };
379
- export type PluginStyle = any;
379
+ export type CustomWidgetStyle = any;
380
380
  export type TableWidgetStyle = {
381
381
  'colors/columns': boolean;
382
382
  'colors/headers': boolean;
@@ -1,7 +1,7 @@
1
1
  import { ChartSubtype } from '../chart-options-processor/subtype-to-design-options.js';
2
2
  import { ChartType, RenderToolbarHandler } from '../types.js';
3
3
  import { Panel, PanelItem, TextWidgetDtoStyle, WidgetStyle, WidgetSubtype, FusionWidgetType } from './types.js';
4
- import { ChartProps, ChartWidgetProps, PivotTableWidgetProps, PluginWidgetProps, TextWidgetProps, CommonWidgetProps, WithCommonWidgetProps, WidgetProps, WidgetType } from '../props';
4
+ import { ChartProps, ChartWidgetProps, PivotTableWidgetProps, CustomWidgetProps, TextWidgetProps, CommonWidgetProps, WithCommonWidgetProps, WidgetProps, WidgetType } from '../props';
5
5
  import { WidgetTypeInternal } from '../models/widget/types';
6
6
  import { WidgetModel } from '../models';
7
7
  export { mergeFilters, getFilterRelationsFromJaql, convertFilterRelationsModelToJaql, getFilterCompareId, } from '@sisense/sdk-data';
@@ -23,8 +23,8 @@ export declare function isPivotWidget(widgetType: WidgetType): boolean;
23
23
  export declare function isTextFusionWidget(fusionWidgetType: FusionWidgetType): boolean;
24
24
  export declare function isTextWidget(widgetType: WidgetType): boolean;
25
25
  export declare function isTextWidgetDtoStyle(widgetStyle: WidgetStyle): widgetStyle is TextWidgetDtoStyle;
26
- export declare function isPluginFusionWidget(fusionWidgetType: FusionWidgetType): boolean;
27
- export declare function isPluginWidget(widgetType: WidgetType): boolean;
26
+ export declare function isCustomWidgetFusionWidget(fusionWidgetType: FusionWidgetType): boolean;
27
+ export declare function isCustomWidget(widgetType: WidgetType): boolean;
28
28
  export declare function isChartFusionWidget(fusionWidgetType: FusionWidgetType): boolean;
29
29
  export declare function isChartWidget(widgetType: WidgetType): boolean;
30
30
  /**
@@ -44,13 +44,13 @@ export declare function isTextWidgetProps(widgetProps: CommonWidgetProps): widge
44
44
  */
45
45
  export declare function isPivotTableWidgetProps(widgetProps: CommonWidgetProps): widgetProps is WithCommonWidgetProps<PivotTableWidgetProps, 'pivot'>;
46
46
  /**
47
- * Type guard for checking if the widget props is for a plugin widget
47
+ * Type guard for checking if the widget props is for a custom widget
48
48
  *
49
49
  * @param widgetProps - The widget props to check.
50
- * @returns whether the widget props is for a plugin widget
50
+ * @returns whether the widget props is for a custom widget
51
51
  * @internal
52
52
  */
53
- export declare function isPluginWidgetProps(widgetProps: CommonWidgetProps): widgetProps is WithCommonWidgetProps<PluginWidgetProps, 'plugin'>;
53
+ export declare function isCustomWidgetProps(widgetProps: CommonWidgetProps): widgetProps is WithCommonWidgetProps<CustomWidgetProps, 'custom'>;
54
54
  /**
55
55
  * Type guard for checking if the widget props is for a chart widget
56
56
  *
@@ -1,11 +1,11 @@
1
1
  /// <reference types="react" />
2
2
  export declare const StyledPrevButton: 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"> & {
3
3
  ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
4
- }, "loading" | "children" | "style" | "disabled" | "size" | "className" | "tabIndex" | "color" | "sx" | "classes" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "loadingIndicator"> & {
4
+ }, "loading" | "children" | "disabled" | "size" | "className" | "style" | "tabIndex" | "color" | "sx" | "classes" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "loadingIndicator"> & {
5
5
  theme?: import("@emotion/react").Theme | undefined;
6
6
  }, {}, {}>;
7
7
  export declare const StyledNextButton: 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"> & {
8
8
  ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
9
- }, "loading" | "children" | "style" | "disabled" | "size" | "className" | "tabIndex" | "color" | "sx" | "classes" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "loadingIndicator"> & {
9
+ }, "loading" | "children" | "disabled" | "size" | "className" | "style" | "tabIndex" | "color" | "sx" | "classes" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "loadingIndicator"> & {
10
10
  theme?: import("@emotion/react").Theme | undefined;
11
11
  }, {}, {}>;
@@ -0,0 +1,8 @@
1
+ import { FunctionComponent } from 'react';
2
+ import { CustomWidgetProps } from '../props';
3
+ /**
4
+ * Component that renders a custom widget.
5
+ *
6
+ * @internal
7
+ */
8
+ export declare const CustomWidget: FunctionComponent<CustomWidgetProps>;