@sisense/sdk-ui 2.29.0 → 2.30.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 (194) hide show
  1. package/dist/ai.cjs +57 -57
  2. package/dist/ai.js +767 -797
  3. package/dist/analytics-composer/node.cjs +1 -1
  4. package/dist/analytics-composer/node.js +723 -696
  5. package/dist/analytics-composer.cjs +1 -1
  6. package/dist/analytics-composer.js +6 -6
  7. package/dist/{apply-styled-options-to-query-CaP4IMrQ.js → apply-styled-options-to-query-BK1NnV4P.js} +1936 -1862
  8. package/dist/apply-styled-options-to-query-Dl8vVNxo.cjs +1 -0
  9. package/dist/{index-C77YCBVd.js → index-DCYw3JUB.js} +29 -7
  10. package/dist/index-DTvxJdqZ.cjs +1 -0
  11. package/dist/index.cjs +575 -482
  12. package/dist/index.js +26629 -25620
  13. package/dist/index.umd.js +925 -802
  14. package/dist/packages/sdk-ui/src/domains/dashboarding/common-filters/utils.d.ts +1 -1
  15. package/dist/packages/sdk-ui/src/domains/dashboarding/components/dashboard-container.d.ts +1 -1
  16. package/dist/packages/sdk-ui/src/domains/dashboarding/components/dashboard-header-config.d.ts +127 -0
  17. package/dist/packages/sdk-ui/src/domains/dashboarding/components/dashboard-header-targets.d.ts +30 -0
  18. package/dist/packages/sdk-ui/src/domains/dashboarding/components/dashboard-header-title.d.ts +20 -0
  19. package/dist/packages/sdk-ui/src/domains/dashboarding/components/dashboard-header.d.ts +10 -1
  20. package/dist/packages/sdk-ui/src/domains/dashboarding/constants.d.ts +2 -2
  21. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-helpers.d.ts +21 -0
  22. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/translate-dashboard-utils.d.ts +43 -1
  23. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/types.d.ts +7 -0
  24. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/utils.d.ts +2 -0
  25. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-module/dashboard-module.d.ts +34 -0
  26. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-module/types.d.ts +58 -0
  27. package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/duplicate-widget/use-duplicate-widget-menu-item.d.ts +7 -0
  28. package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/use-dashboard-header-menu-item.d.ts +9 -0
  29. package/dist/packages/sdk-ui/src/domains/dashboarding/persistence/types.d.ts +11 -1
  30. package/dist/packages/sdk-ui/src/domains/dashboarding/types.d.ts +18 -7
  31. package/dist/packages/sdk-ui/src/domains/dashboarding/utils.d.ts +9 -0
  32. package/dist/packages/sdk-ui/src/domains/data-browser/add-measure-popover/add-measure-data-browser.d.ts +11 -0
  33. package/dist/packages/sdk-ui/src/domains/data-browser/add-measure-popover/add-measure-popover.d.ts +14 -0
  34. package/dist/packages/sdk-ui/src/domains/data-browser/add-measure-popover/measure-ranking-title.d.ts +21 -0
  35. package/dist/packages/sdk-ui/src/domains/data-browser/add-measure-popover/measures.d.ts +13 -0
  36. package/dist/packages/sdk-ui/src/domains/filters/components/criteria-filter-tile/criteria-filter-menu.d.ts +2 -1
  37. package/dist/packages/sdk-ui/src/domains/filters/components/criteria-filter-tile/criteria-filter-operations.d.ts +1 -0
  38. package/dist/packages/sdk-ui/src/domains/filters/components/filter-editor-popover/filter-editor-context.d.ts +1 -0
  39. package/dist/packages/sdk-ui/src/domains/filters/components/filter-editor-popover/filter-editor-popover.d.ts +2 -1
  40. package/dist/packages/sdk-ui/src/domains/filters/components/filter-editor-popover/filter-editor.d.ts +2 -1
  41. package/dist/packages/sdk-ui/src/domains/filters/components/filter-editor-popover/sections/numeric-condition-section/types.d.ts +5 -0
  42. package/dist/packages/sdk-ui/src/domains/filters/components/filter-editor-popover/sections/ranking-condition/index.d.ts +3 -0
  43. package/dist/packages/sdk-ui/src/domains/filters/components/filter-editor-popover/sections/ranking-condition/ranking-condition-controls.d.ts +33 -0
  44. package/dist/packages/sdk-ui/src/domains/filters/components/filter-editor-popover/sections/ranking-condition/ranking-condition-utils.d.ts +13 -0
  45. package/dist/packages/sdk-ui/src/domains/filters/components/filters-panel/hooks/use-existing-filter-editing.d.ts +2 -1
  46. package/dist/packages/sdk-ui/src/domains/narrative/components/narrative-collapsible.d.ts +22 -4
  47. package/dist/packages/sdk-ui/src/domains/narrative/components/narrative-top-slot-shell.d.ts +2 -0
  48. package/dist/packages/sdk-ui/src/domains/narrative/components/narrative-trigger-button.d.ts +17 -0
  49. package/dist/packages/sdk-ui/src/domains/narrative/components/widget-narrative-interactive.d.ts +20 -2
  50. package/dist/packages/sdk-ui/src/domains/narrative/components/widget-narrative.d.ts +11 -9
  51. package/dist/packages/sdk-ui/src/domains/narrative/core/build-narrative-request.d.ts +1 -1
  52. package/dist/packages/sdk-ui/src/domains/narrative/core/get-narrative-dimensions-and-measures.d.ts +2 -2
  53. package/dist/packages/sdk-ui/src/domains/narrative/core/get-widget-narrative-from-widget-props.d.ts +18 -0
  54. package/dist/packages/sdk-ui/src/domains/narrative/core/to-nlg-api-verbosity.d.ts +7 -0
  55. package/dist/packages/sdk-ui/src/domains/narrative/core/widget-narrative-options.d.ts +101 -23
  56. package/dist/packages/sdk-ui/src/domains/narrative/core/widget-props-to-narrative-params.d.ts +35 -32
  57. package/dist/packages/sdk-ui/src/domains/narrative/hooks/use-get-widget-narrative.d.ts +11 -22
  58. package/dist/packages/sdk-ui/src/domains/narrative/hooks/use-line-height.d.ts +10 -0
  59. package/dist/packages/sdk-ui/src/domains/narrative/hooks/use-widget-narrative-state.d.ts +8 -9
  60. package/dist/packages/sdk-ui/src/domains/query-execution/core/execute-query.d.ts +34 -1
  61. package/dist/packages/sdk-ui/src/domains/query-execution/hooks/use-execute-excel-query/excel-export/build-jaql-excel-export.d.ts +13 -5
  62. package/dist/packages/sdk-ui/src/domains/query-execution/hooks/use-execute-excel-query/excel-export/build-xlsx-export-payload.d.ts +5 -0
  63. package/dist/packages/sdk-ui/src/domains/query-execution/hooks/use-execute-query-by-widget-id/use-execute-query-by-widget-id.d.ts +2 -1
  64. package/dist/packages/sdk-ui/src/domains/query-execution/types.d.ts +55 -3
  65. package/dist/packages/sdk-ui/src/domains/shared/header/header-item-size.d.ts +30 -0
  66. package/dist/packages/sdk-ui/src/domains/shared/header/header-items-renderer.d.ts +19 -0
  67. package/dist/packages/sdk-ui/src/domains/shared/header/header-spacer-item.d.ts +9 -0
  68. package/dist/packages/sdk-ui/src/domains/shared/header/index.d.ts +6 -0
  69. package/dist/packages/sdk-ui/src/domains/shared/header/resolve-header-items.d.ts +17 -0
  70. package/dist/packages/sdk-ui/src/domains/shared/header/types.d.ts +98 -0
  71. package/dist/packages/sdk-ui/src/domains/shared/header/use-resolved-header-items.d.ts +10 -0
  72. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/areamap-chart/data/areamap-data.d.ts +3 -1
  73. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/cartesians/helpers/data.d.ts +3 -1
  74. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/cartesians/stackable/streamgraph-chart/helpers/chart-data.d.ts +3 -1
  75. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/categoricals/helpers/data.d.ts +3 -1
  76. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/data/index.d.ts +3 -1
  77. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/data/index.d.ts +3 -1
  78. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/highcharts-based-chart-renderer/build-highchart-options.d.ts +1 -0
  79. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/alerts/index.d.ts +5 -0
  80. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/data/index.d.ts +22 -0
  81. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/data-options/index.d.ts +33 -0
  82. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/design-options/index.d.ts +21 -0
  83. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/highchart-options/highcharts-options-builder.d.ts +3 -0
  84. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/sankey-chart-builder.d.ts +3 -0
  85. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/sankey-node-colors.d.ts +10 -0
  86. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/sankey-chart/types.d.ts +38 -0
  87. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/highchart-based-charts/types.d.ts +2 -1
  88. package/dist/packages/sdk-ui/src/domains/visualizations/components/chart/restructured-charts/types.d.ts +12 -9
  89. package/dist/packages/sdk-ui/src/domains/visualizations/components/pivot-table/formatters/data-cell-formatters/data-cell-value-formatter.d.ts +1 -1
  90. package/dist/packages/sdk-ui/src/domains/visualizations/components/pivot-table/formatters/header-cell-formatters/header-cell-value-formatter.d.ts +1 -1
  91. package/dist/packages/sdk-ui/src/domains/visualizations/components/pivot-table/hooks/use-pivot-data-loading.d.ts +1 -0
  92. package/dist/packages/sdk-ui/src/domains/visualizations/components/pivot-table/resolve-pivot-container-size.d.ts +28 -0
  93. package/dist/packages/sdk-ui/src/domains/visualizations/components/sankey-chart.d.ts +30 -0
  94. package/dist/packages/sdk-ui/src/domains/visualizations/components/table/pure-table/helpers/format-numbers.d.ts +1 -1
  95. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-data/cartesian-data.d.ts +1 -1
  96. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-data/categorical-data.d.ts +1 -1
  97. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-data/chart-data-service.d.ts +1 -1
  98. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-data/scatter-data.d.ts +2 -2
  99. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-data/types.d.ts +2 -1
  100. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-data-options/apply-styled-options-to-query.d.ts +4 -4
  101. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-data-options/types.d.ts +47 -7
  102. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/chart-options-service.d.ts +3 -0
  103. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/tooltip.d.ts +1 -1
  104. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/design-options.d.ts +10 -1
  105. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/funnel-plot-options.d.ts +1 -1
  106. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/number-format-config.d.ts +12 -0
  107. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/pie-plot-options.d.ts +2 -1
  108. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/sunburst/sunburst-levels.d.ts +1 -1
  109. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/sunburst/sunburst-options.d.ts +1 -1
  110. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/treemap/treemap-tooltip.d.ts +2 -2
  111. package/dist/packages/sdk-ui/src/domains/visualizations/core/chart-options-processor/translations/types.d.ts +12 -3
  112. package/dist/packages/sdk-ui/src/domains/widgets/components/chart-widget/types.d.ts +8 -1
  113. package/dist/packages/sdk-ui/src/domains/widgets/components/chart-widget/use-chart-widget-excel-download.d.ts +1 -1
  114. package/dist/packages/sdk-ui/src/domains/widgets/components/chart-widget/use-chart-widget-narrative.d.ts +28 -0
  115. package/dist/packages/sdk-ui/src/domains/widgets/components/custom-widget/use-custom-widget-excel-download.d.ts +1 -1
  116. package/dist/packages/sdk-ui/src/domains/widgets/components/pivot-table-widget/pivot-table-widget.d.ts +4 -4
  117. package/dist/packages/sdk-ui/src/domains/widgets/components/pivot-table-widget/types.d.ts +7 -1
  118. package/dist/packages/sdk-ui/src/domains/widgets/components/pivot-table-widget/use-pivot-widget-excel-download.d.ts +1 -1
  119. package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/translate-widget-style-options/index.d.ts +1 -0
  120. package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/translate-widget-style-options/tabber.d.ts +17 -1
  121. package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/translate-widget-style-options/widget-narrative-style.d.ts +31 -0
  122. package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/types.d.ts +30 -1
  123. package/dist/packages/sdk-ui/src/domains/widgets/helpers/excel-export-map-dimensions-measures.d.ts +17 -2
  124. package/dist/packages/sdk-ui/src/domains/widgets/helpers/number-format-config-to-numeric-mask.d.ts +5 -0
  125. package/dist/packages/sdk-ui/src/domains/widgets/shared/widget-container/widget-container.d.ts +7 -1
  126. package/dist/packages/sdk-ui/src/domains/widgets/widget-model/widget-model.d.ts +6 -1
  127. package/dist/packages/sdk-ui/src/infra/api/narrative/narrative-endpoints.d.ts +2 -2
  128. package/dist/packages/sdk-ui/src/infra/app/types.d.ts +18 -0
  129. package/dist/packages/sdk-ui/src/infra/plugins/types.d.ts +34 -6
  130. package/dist/packages/sdk-ui/src/infra/plugins/widget-plugins/types.d.ts +169 -49
  131. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/de-de.d.ts +22 -0
  132. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/en-us.d.ts +22 -0
  133. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/es-ar.d.ts +22 -0
  134. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/es-es.d.ts +22 -0
  135. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/fr-fr.d.ts +22 -0
  136. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/it-it.d.ts +22 -0
  137. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ja-jp.d.ts +22 -0
  138. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ko-kr.d.ts +22 -0
  139. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/nl-nl.d.ts +22 -0
  140. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/pt-br.d.ts +22 -0
  141. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ru-ru.d.ts +22 -0
  142. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/tr-tr.d.ts +22 -0
  143. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/zh-cn.d.ts +22 -0
  144. package/dist/packages/sdk-ui/src/infra/translation/resources/en.d.ts +22 -0
  145. package/dist/packages/sdk-ui/src/infra/translation/resources/index.d.ts +44 -0
  146. package/dist/packages/sdk-ui/src/modules/ai/common/collapsible.d.ts +38 -2
  147. package/dist/packages/sdk-ui/src/modules/ai/get-nlg-insights-from-widget.d.ts +4 -13
  148. package/dist/packages/sdk-ui/src/modules/ai/index.d.ts +1 -1
  149. package/dist/packages/sdk-ui/src/modules/analytics-composer/nlq-v3-translator/shared/expression/process-measured-value.d.ts +14 -0
  150. package/dist/packages/sdk-ui/src/props.d.ts +46 -2
  151. package/dist/packages/sdk-ui/src/public-api/alpha.d.ts +3 -1
  152. package/dist/packages/sdk-ui/src/public-api/beta.d.ts +6 -0
  153. package/dist/packages/sdk-ui/src/public-api/internal.d.ts +1 -1
  154. package/dist/packages/sdk-ui/src/public-api/sisense-internal.d.ts +5 -3
  155. package/dist/packages/sdk-ui/src/types.d.ts +78 -6
  156. package/dist/{use-hover-Dju4Dcv3.js → quota-notification-DqabeDbO.js} +23733 -22015
  157. package/dist/quota-notification-gYE6PTWA.cjs +750 -0
  158. package/dist/translations/de-de.cjs +1 -1
  159. package/dist/translations/de-de.js +27 -5
  160. package/dist/translations/en-us.cjs +1 -1
  161. package/dist/translations/en-us.js +1 -1
  162. package/dist/translations/es-ar.cjs +1 -1
  163. package/dist/translations/es-ar.js +27 -5
  164. package/dist/translations/es-es.cjs +1 -1
  165. package/dist/translations/es-es.js +27 -5
  166. package/dist/translations/fr-fr.cjs +1 -1
  167. package/dist/translations/fr-fr.js +27 -5
  168. package/dist/translations/it-it.cjs +1 -1
  169. package/dist/translations/it-it.js +29 -7
  170. package/dist/translations/ja-jp.cjs +1 -1
  171. package/dist/translations/ja-jp.js +27 -5
  172. package/dist/translations/ko-kr.cjs +1 -1
  173. package/dist/translations/ko-kr.js +27 -5
  174. package/dist/translations/nl-nl.cjs +1 -1
  175. package/dist/translations/nl-nl.js +29 -7
  176. package/dist/translations/pt-br.cjs +1 -1
  177. package/dist/translations/pt-br.js +27 -5
  178. package/dist/translations/ru-ru.cjs +1 -1
  179. package/dist/translations/ru-ru.js +27 -5
  180. package/dist/translations/tr-tr.cjs +1 -1
  181. package/dist/translations/tr-tr.js +27 -5
  182. package/dist/translations/zh-cn.cjs +1 -1
  183. package/dist/translations/zh-cn.js +27 -5
  184. package/dist/{types-DlYJ_DZ0.cjs → types-DSNnndG6.cjs} +1 -1
  185. package/dist/{types-7YG0uOzO.js → types-DecTaxy7.js} +1 -1
  186. package/dist/{utils-C4PIba42.cjs → utils-Cpeyj9TN.cjs} +52 -52
  187. package/dist/{utils-BKRpWUGm.js → utils-L-HO2pCd.js} +2518 -2469
  188. package/dist/{widget-composer-BXEyx308.cjs → widget-composer-CyWQaInf.cjs} +1 -1
  189. package/dist/{widget-composer-DRDw1oBF.js → widget-composer-u6NMLm1C.js} +3 -3
  190. package/package.json +8 -8
  191. package/dist/apply-styled-options-to-query-D5D8pRl2.cjs +0 -1
  192. package/dist/index-C9G8giSk.cjs +0 -1
  193. package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/use-dashboard-header-toolbar.d.ts +0 -25
  194. package/dist/use-hover-CANskYrn.cjs +0 -720
@@ -5,9 +5,32 @@ import { AnyObject } from '../../../shared/utils/utility-types';
5
5
  import type { AbstractDataPointWithEntries, GenericDataOptions } from '../../../types';
6
6
  import type { BasePluginInfo } from '../types';
7
7
  /**
8
- * Widget plugin declaration.
8
+ * Declares a widget plugin for registration with the Compose SDK.
9
9
  *
10
- * @sisenseInternal
10
+ * Pass an instance to the `plugins` prop on {@link SisenseContextProvider} to register a custom
11
+ * visualization that appears in the dashboard widget picker.
12
+ *
13
+ * @typeParam Props - Props type for the custom visualization component, extending {@link CustomVisualizationProps}.
14
+ * @group Plugin System
15
+ * @example
16
+ * ```tsx
17
+ * import { WidgetPlugin, CustomVisualization } from '@sisense/sdk-ui';
18
+ *
19
+ * const MyChart: CustomVisualization = ({ dataOptions }) => <div>{String(dataOptions)}</div>;
20
+ *
21
+ * const myPlugin: WidgetPlugin = {
22
+ * name: 'my-widget-plugin',
23
+ * version: '1.0.0',
24
+ * requiredApiVersion: '^2.9.0',
25
+ * pluginType: 'widget',
26
+ * customWidget: {
27
+ * name: 'my-widget',
28
+ * displayName: 'My Widget',
29
+ * visualization: { Component: MyChart },
30
+ * },
31
+ * };
32
+ * ```
33
+ * @beta
11
34
  */
12
35
  export interface WidgetPlugin<Props extends CustomVisualizationProps<any, any, any, any> = CustomVisualizationProps> extends BasePluginInfo {
13
36
  /**
@@ -147,38 +170,44 @@ export interface WidgetPlugin<Props extends CustomVisualizationProps<any, any, a
147
170
  */
148
171
  export type AnyWidgetPlugin = WidgetPlugin<any>;
149
172
  /**
150
- * Props passed to a user-defined custom visualization component.
151
- *
152
- * @typeParam DataOptions - The shape of data options for this custom visualization
153
- * @typeParam StyleOptions - The shape of style options for this custom visualization
154
- * @typeParam DataPoint - The shape of data points for event handlers
173
+ * Defines props passed to a user-defined custom visualization component.
155
174
  *
175
+ * @typeParam DataOptions - The shape of data options for this custom visualization.
176
+ * @typeParam StyleOptions - The shape of style options for this custom visualization.
177
+ * @typeParam DataPoint - The shape of data points passed to event handlers.
178
+ * @typeParam CustomOptions - The shape of arbitrary plugin-specific state (not data- or style-related).
179
+ * @group Plugin System
156
180
  * @example
157
181
  * ```tsx
158
- * import { CustomVisualization, CustomVisualizationProps, CustomWidgetDataPoint, StyledColumn, StyledMeasureColumn, DataPointEntry, GenericDataOptions} from '@sisense/sdk-ui';
182
+ * import {
183
+ * CustomVisualization,
184
+ * CustomVisualizationProps,
185
+ * CustomVisualizationDataPoint,
186
+ * StyledColumn,
187
+ * StyledMeasureColumn,
188
+ * DataPointEntry,
189
+ * GenericDataOptions,
190
+ * } from '@sisense/sdk-ui';
159
191
  *
160
192
  * interface MyDataOptions extends GenericDataOptions {
161
193
  * category: StyledColumn[];
162
194
  * value: StyledMeasureColumn[];
163
195
  * }
164
196
  *
165
- * interface MyDataPoint extends CustomWidgetDataPoint {
197
+ * interface MyDataPoint extends CustomVisualizationDataPoint {
166
198
  * entries: {
167
199
  * category: DataPointEntry[];
168
200
  * value: DataPointEntry[];
169
201
  * };
170
202
  * }
171
203
  *
172
- * type MyNewChartProps = CustomVisualizationProps<MyDataOptions, {}, MyDataPoint>;
204
+ * type MyChartProps = CustomVisualizationProps<MyDataOptions, {}, MyDataPoint>;
173
205
  *
174
- * const MyNewChart: CustomVisualization<MyNewChartProps> = (props) => {
175
- * const { dataOptions, onDataPointClick } = props;
176
- * // ... implementation based on props
177
- * return <div>My New Awesome Chart</div>;
206
+ * const MyChart: CustomVisualization<MyChartProps> = ({ dataOptions, onDataPointClick }) => {
207
+ * return <div>My Chart</div>;
178
208
  * };
179
209
  * ```
180
- *
181
- * @sisenseInternal
210
+ * @beta
182
211
  */
183
212
  export interface CustomVisualizationProps<DataOptions = GenericDataOptions, StyleOptions = CustomVisualizationStyleOptions, DataPoint extends AbstractDataPointWithEntries = AbstractDataPointWithEntries, CustomOptions = Record<string, unknown>> extends CustomVisualizationEventProps<DataPoint> {
184
213
  /** Data source for the custom visualization */
@@ -232,18 +261,39 @@ export type VisualizationStateUpdate<StyleOptions = CustomVisualizationStyleOpti
232
261
  customOptions?: DeepPartial<CustomOptions>;
233
262
  };
234
263
  /**
235
- * Style options for a custom visualization.
264
+ * Defines style options for a custom visualization.
236
265
  *
237
- * @sisenseInternal
266
+ * Extend this interface to add plugin-specific style properties passed via `styleOptions`.
267
+ *
268
+ * @group Plugin System
269
+ * @example
270
+ * ```ts
271
+ * interface MyWidgetStyleOptions extends CustomVisualizationStyleOptions {
272
+ * backgroundColor?: string;
273
+ * fontSize?: number;
274
+ * }
275
+ * ```
276
+ * @beta
238
277
  */
239
278
  export interface CustomVisualizationStyleOptions extends AnyObject {
240
279
  }
241
280
  /**
242
- * A user-defined custom visualization component.
243
- * This can be any visual representation of the data - chart, table, map, etc.
281
+ * Defines a user-defined custom visualization component.
282
+ * Can be any visual representation of data chart, table, map, etc.
244
283
  *
245
- * @typeParam Props - The props type for the custom visualization component
246
- * @sisenseInternal
284
+ * @typeParam Props - The props type for the custom visualization component, extending {@link CustomVisualizationProps}.
285
+ * @param props - Props injected by the dashboard, including `dataOptions`, `styleOptions`, `filters`, and event handlers.
286
+ * @returns A React node representing the rendered visualization.
287
+ * @group Plugin System
288
+ * @example
289
+ * ```tsx
290
+ * import { CustomVisualization, CustomVisualizationProps } from '@sisense/sdk-ui';
291
+ *
292
+ * const MyChart: CustomVisualization<CustomVisualizationProps> = ({ dataOptions, styleOptions }) => {
293
+ * return <div className="my-chart">{JSON.stringify(dataOptions)}</div>;
294
+ * };
295
+ * ```
296
+ * @beta
247
297
  */
248
298
  export type CustomVisualization<Props = CustomVisualizationProps> = (props: Props) => ReactNode;
249
299
  /**
@@ -257,10 +307,19 @@ export type CustomVisualization<Props = CustomVisualizationProps> = (props: Prop
257
307
  */
258
308
  export type AnyCustomVisualization = CustomVisualization<any>;
259
309
  /**
260
- * Event props for custom visualizations with generic data point type.
310
+ * Defines event handler props for a custom visualization component.
261
311
  *
262
- * @typeParam DataPoint - The shape of data points for this custom visualization
263
- * @sisenseInternal
312
+ * Included automatically via {@link CustomVisualizationProps}. Extend to add custom event props.
313
+ *
314
+ * @typeParam DataPoint - The shape of data points for this custom visualization.
315
+ * @group Plugin System
316
+ * @example
317
+ * ```tsx
318
+ * interface MyEventProps extends CustomVisualizationEventProps<MyDataPoint> {
319
+ * onCustomAction?: (id: string) => void;
320
+ * }
321
+ * ```
322
+ * @beta
264
323
  */
265
324
  export interface CustomVisualizationEventProps<DataPoint extends AbstractDataPointWithEntries = AbstractDataPointWithEntries> {
266
325
  /**
@@ -283,28 +342,35 @@ export interface CustomVisualizationEventProps<DataPoint extends AbstractDataPoi
283
342
  onDataPointsSelected?: CustomVisualizationDataPointsEventHandler<DataPoint>;
284
343
  }
285
344
  /**
286
- * Generic event handler for custom visualization data point click.
345
+ * Defines an event handler for a data point click in a custom visualization.
287
346
  *
288
- * @typeParam T - The shape of the data point
347
+ * @typeParam T - The shape of the data point.
348
+ * @group Plugin System
289
349
  * @example
290
350
  * ```tsx
291
351
  * const handleClick: CustomVisualizationDataPointEventHandler<MyChartDataPoint> = (point, event) => {
292
- * console.log('Clicked:', point.label, point.value);
352
+ * console.log('Clicked:', point.entries.category[0].value);
293
353
  * };
294
354
  * ```
295
- *
296
- * @sisenseInternal
355
+ * @beta
297
356
  */
298
- export type CustomVisualizationDataPointEventHandler<T extends AbstractDataPointWithEntries = AbstractDataPointWithEntries> = (point: CustomVisualizationDataPoint<T>, nativeEvent: PointerEvent | MouseEvent) => void;
357
+ export type CustomVisualizationDataPointEventHandler<T extends AbstractDataPointWithEntries = AbstractDataPointWithEntries> = (
358
+ /** Data point that was clicked. */
359
+ point: CustomVisualizationDataPoint<T>,
360
+ /** Native browser pointer or mouse event. */
361
+ nativeEvent: PointerEvent | MouseEvent) => void;
299
362
  /**
300
363
  * Represents a single data point in a custom visualization.
301
364
  *
302
- * This type is used to define the structure of a data point that is passed to event handlers
303
- * like `onDataPointClick`. It typically extends `AbstractDataPointWithEntries` to include
304
- * specific entries for categories, values, or other dimensions used in the widget.
365
+ * Extend `AbstractDataPointWithEntries` to define typed entries for your widget's data options.
366
+ * Instances are passed to event handlers such as `onDataPointClick`.
305
367
  *
368
+ * @typeParam T - The concrete data point shape, extending {@link AbstractDataPointWithEntries}.
369
+ * @group Plugin System
306
370
  * @example
307
- * ```typescript
371
+ * ```ts
372
+ * import { CustomVisualizationDataPoint, DataPointEntry } from '@sisense/sdk-ui';
373
+ *
308
374
  * interface MyChartDataPoint extends CustomVisualizationDataPoint {
309
375
  * entries: {
310
376
  * category: DataPointEntry[];
@@ -316,15 +382,25 @@ export type CustomVisualizationDataPointEventHandler<T extends AbstractDataPoint
316
382
  * console.log('Clicked category:', point.entries.category[0].value);
317
383
  * };
318
384
  * ```
319
- *
320
- * @sisenseInternal
385
+ * @beta
321
386
  */
322
387
  export type CustomVisualizationDataPoint<T extends AbstractDataPointWithEntries = AbstractDataPointWithEntries> = T;
323
388
  /**
324
- * Generic event handler for custom widget data point context menu.
389
+ * Defines an event handler for a data point context-menu event in a custom visualization.
325
390
  *
326
- * @typeParam T - The shape of the data point
327
- * @sisenseInternal
391
+ * @typeParam T - The shape of the data point.
392
+ * @group Plugin System
393
+ * @example
394
+ * ```tsx
395
+ * const handleContextMenu: CustomVisualizationDataPointContextMenuHandler<MyChartDataPoint> = (
396
+ * point,
397
+ * event,
398
+ * ) => {
399
+ * event.preventDefault();
400
+ * showContextMenu({ x: event.clientX, y: event.clientY, point });
401
+ * };
402
+ * ```
403
+ * @beta
328
404
  */
329
405
  export type CustomVisualizationDataPointContextMenuHandler<T extends AbstractDataPointWithEntries = AbstractDataPointWithEntries> = (
330
406
  /** Data point that triggered the context menu */
@@ -332,17 +408,20 @@ point: CustomVisualizationDataPoint<T>,
332
408
  /** Native browser event */
333
409
  nativeEvent: MouseEvent) => void;
334
410
  /**
335
- * Generic event handler for custom visualization data points selection.
411
+ * Defines an event handler for multi-point selection in a custom visualization.
336
412
  *
337
- * @typeParam T - The shape of the data point
413
+ * @typeParam T - The shape of the data point.
414
+ * @group Plugin System
338
415
  * @example
339
416
  * ```tsx
340
- * const handleSelect: CustomVisualizationDataPointsEventHandler<MyChartDataPoint> = (points, event) => {
417
+ * const handleSelect: CustomVisualizationDataPointsEventHandler<MyChartDataPoint> = (
418
+ * points,
419
+ * event,
420
+ * ) => {
341
421
  * console.log('Selected:', points.length, 'points');
342
422
  * };
343
423
  * ```
344
- *
345
- * @sisenseInternal
424
+ * @beta
346
425
  */
347
426
  export type CustomVisualizationDataPointsEventHandler<T extends AbstractDataPointWithEntries = AbstractDataPointWithEntries> = (
348
427
  /** Data points that were selected */
@@ -350,17 +429,58 @@ points: CustomVisualizationDataPoint<T>[],
350
429
  /** Native browser event */
351
430
  nativeEvent: MouseEvent) => void;
352
431
  /**
353
- * Props for the design panel component for the custom widget.
432
+ * Defines props passed to a custom design panel component.
354
433
  *
355
- * @sisenseInternal
434
+ * @typeParam StyleOptions - The shape of style options managed by this design panel, extending {@link CustomVisualizationStyleOptions}.
435
+ * @group Plugin System
436
+ * @example
437
+ * ```tsx
438
+ * import { DesignPanel, DesignPanelProps } from '@sisense/sdk-ui';
439
+ *
440
+ * interface MyStyleOptions extends CustomVisualizationStyleOptions {
441
+ * color?: string;
442
+ * }
443
+ *
444
+ * const MyDesignPanel: DesignPanel<MyStyleOptions> = ({ styleOptions, onChange }) => (
445
+ * <input
446
+ * type="color"
447
+ * value={styleOptions.color ?? '#000000'}
448
+ * onChange={(e) => onChange({ ...styleOptions, color: e.target.value })}
449
+ * />
450
+ * );
451
+ * ```
452
+ * @beta
356
453
  */
357
454
  export interface DesignPanelProps<StyleOptions = CustomVisualizationStyleOptions> {
455
+ /** Current style options managed by the design panel. */
358
456
  styleOptions: StyleOptions;
457
+ /** Callback invoked when the user changes a style option. */
359
458
  onChange: (styleOptions: StyleOptions) => void;
360
459
  }
361
460
  /**
362
- * The design panel component for the custom widget.
461
+ * Defines a design panel component for a custom widget.
363
462
  *
364
- * @sisenseInternal
463
+ * Renders inside the widget's style/design settings pane and receives the current
464
+ * `styleOptions` and an `onChange` callback to persist style changes.
465
+ *
466
+ * @typeParam StyleOptions - The shape of style options managed by this design panel, extending {@link CustomVisualizationStyleOptions}.
467
+ * @group Plugin System
468
+ * @example
469
+ * ```tsx
470
+ * import { DesignPanel, CustomVisualizationStyleOptions } from '@sisense/sdk-ui';
471
+ *
472
+ * interface MyStyleOptions extends CustomVisualizationStyleOptions {
473
+ * color?: string;
474
+ * }
475
+ *
476
+ * const MyDesignPanel: DesignPanel<MyStyleOptions> = ({ styleOptions, onChange }) => (
477
+ * <input
478
+ * type="color"
479
+ * value={styleOptions.color ?? '#000000'}
480
+ * onChange={(e) => onChange({ ...styleOptions, color: e.target.value })}
481
+ * />
482
+ * );
483
+ * ```
484
+ * @beta
365
485
  */
366
486
  export type DesignPanel<StyleOptions = CustomVisualizationStyleOptions> = FunctionComponent<DesignPanelProps<StyleOptions>>;
@@ -256,6 +256,8 @@ declare const _default: {
256
256
  yes: string;
257
257
  no: string;
258
258
  seeMore: string;
259
+ generateNarrative: string;
260
+ hideNarrative: string;
259
261
  };
260
262
  disclaimer: {
261
263
  poweredByAi: string;
@@ -309,6 +311,8 @@ declare const _default: {
309
311
  from: string;
310
312
  to: string;
311
313
  includeCurrent: string;
314
+ rankedBy: string;
315
+ selectField: string;
312
316
  };
313
317
  placeholders: {
314
318
  selectFromList: string;
@@ -333,6 +337,8 @@ declare const _default: {
333
337
  greaterThan: string;
334
338
  greaterThanOrEqual: string;
335
339
  isWithin: string;
340
+ top: string;
341
+ bottom: string;
336
342
  };
337
343
  validationErrors: {
338
344
  invalidNumber: string;
@@ -427,6 +433,11 @@ declare const _default: {
427
433
  table: {
428
434
  label: string;
429
435
  };
436
+ sankey: {
437
+ alerts: {
438
+ tooManyStages: string;
439
+ };
440
+ };
430
441
  };
431
442
  loadingOverlay: {
432
443
  label: string;
@@ -452,6 +463,17 @@ declare const _default: {
452
463
  median: string;
453
464
  variance: string;
454
465
  };
466
+ measuresAgg: {
467
+ countDistinct: string;
468
+ count: string;
469
+ sum: string;
470
+ average: string;
471
+ min: string;
472
+ max: string;
473
+ median: string;
474
+ variance: string;
475
+ stdev: string;
476
+ };
455
477
  };
456
478
  }[];
457
479
  export default _default;
@@ -256,6 +256,8 @@ declare const _default: {
256
256
  yes: string;
257
257
  no: string;
258
258
  seeMore: string;
259
+ generateNarrative: string;
260
+ hideNarrative: string;
259
261
  };
260
262
  disclaimer: {
261
263
  poweredByAi: string;
@@ -309,6 +311,8 @@ declare const _default: {
309
311
  from: string;
310
312
  to: string;
311
313
  includeCurrent: string;
314
+ rankedBy: string;
315
+ selectField: string;
312
316
  };
313
317
  placeholders: {
314
318
  selectFromList: string;
@@ -333,6 +337,8 @@ declare const _default: {
333
337
  greaterThan: string;
334
338
  greaterThanOrEqual: string;
335
339
  isWithin: string;
340
+ top: string;
341
+ bottom: string;
336
342
  };
337
343
  validationErrors: {
338
344
  invalidNumber: string;
@@ -427,6 +433,11 @@ declare const _default: {
427
433
  table: {
428
434
  label: string;
429
435
  };
436
+ sankey: {
437
+ alerts: {
438
+ tooManyStages: string;
439
+ };
440
+ };
430
441
  };
431
442
  loadingOverlay: {
432
443
  label: string;
@@ -452,6 +463,17 @@ declare const _default: {
452
463
  median: string;
453
464
  variance: string;
454
465
  };
466
+ measuresAgg: {
467
+ countDistinct: string;
468
+ count: string;
469
+ sum: string;
470
+ average: string;
471
+ min: string;
472
+ max: string;
473
+ median: string;
474
+ variance: string;
475
+ stdev: string;
476
+ };
455
477
  };
456
478
  }[];
457
479
  export default _default;
@@ -256,6 +256,8 @@ declare const _default: {
256
256
  yes: string;
257
257
  no: string;
258
258
  seeMore: string;
259
+ generateNarrative: string;
260
+ hideNarrative: string;
259
261
  };
260
262
  disclaimer: {
261
263
  poweredByAi: string;
@@ -309,6 +311,8 @@ declare const _default: {
309
311
  from: string;
310
312
  to: string;
311
313
  includeCurrent: string;
314
+ rankedBy: string;
315
+ selectField: string;
312
316
  };
313
317
  placeholders: {
314
318
  selectFromList: string;
@@ -333,6 +337,8 @@ declare const _default: {
333
337
  greaterThan: string;
334
338
  greaterThanOrEqual: string;
335
339
  isWithin: string;
340
+ top: string;
341
+ bottom: string;
336
342
  };
337
343
  validationErrors: {
338
344
  invalidNumber: string;
@@ -427,6 +433,11 @@ declare const _default: {
427
433
  table: {
428
434
  label: string;
429
435
  };
436
+ sankey: {
437
+ alerts: {
438
+ tooManyStages: string;
439
+ };
440
+ };
430
441
  };
431
442
  loadingOverlay: {
432
443
  label: string;
@@ -452,6 +463,17 @@ declare const _default: {
452
463
  median: string;
453
464
  variance: string;
454
465
  };
466
+ measuresAgg: {
467
+ countDistinct: string;
468
+ count: string;
469
+ sum: string;
470
+ average: string;
471
+ min: string;
472
+ max: string;
473
+ median: string;
474
+ variance: string;
475
+ stdev: string;
476
+ };
455
477
  };
456
478
  }[];
457
479
  export default _default;
@@ -256,6 +256,8 @@ declare const _default: {
256
256
  yes: string;
257
257
  no: string;
258
258
  seeMore: string;
259
+ generateNarrative: string;
260
+ hideNarrative: string;
259
261
  };
260
262
  disclaimer: {
261
263
  poweredByAi: string;
@@ -309,6 +311,8 @@ declare const _default: {
309
311
  from: string;
310
312
  to: string;
311
313
  includeCurrent: string;
314
+ rankedBy: string;
315
+ selectField: string;
312
316
  };
313
317
  placeholders: {
314
318
  selectFromList: string;
@@ -333,6 +337,8 @@ declare const _default: {
333
337
  greaterThan: string;
334
338
  greaterThanOrEqual: string;
335
339
  isWithin: string;
340
+ top: string;
341
+ bottom: string;
336
342
  };
337
343
  validationErrors: {
338
344
  invalidNumber: string;
@@ -427,6 +433,11 @@ declare const _default: {
427
433
  table: {
428
434
  label: string;
429
435
  };
436
+ sankey: {
437
+ alerts: {
438
+ tooManyStages: string;
439
+ };
440
+ };
430
441
  };
431
442
  loadingOverlay: {
432
443
  label: string;
@@ -452,6 +463,17 @@ declare const _default: {
452
463
  median: string;
453
464
  variance: string;
454
465
  };
466
+ measuresAgg: {
467
+ countDistinct: string;
468
+ count: string;
469
+ sum: string;
470
+ average: string;
471
+ min: string;
472
+ max: string;
473
+ median: string;
474
+ variance: string;
475
+ stdev: string;
476
+ };
455
477
  };
456
478
  }[];
457
479
  export default _default;
@@ -256,6 +256,8 @@ declare const _default: {
256
256
  yes: string;
257
257
  no: string;
258
258
  seeMore: string;
259
+ generateNarrative: string;
260
+ hideNarrative: string;
259
261
  };
260
262
  disclaimer: {
261
263
  poweredByAi: string;
@@ -309,6 +311,8 @@ declare const _default: {
309
311
  from: string;
310
312
  to: string;
311
313
  includeCurrent: string;
314
+ rankedBy: string;
315
+ selectField: string;
312
316
  };
313
317
  placeholders: {
314
318
  selectFromList: string;
@@ -333,6 +337,8 @@ declare const _default: {
333
337
  greaterThan: string;
334
338
  greaterThanOrEqual: string;
335
339
  isWithin: string;
340
+ top: string;
341
+ bottom: string;
336
342
  };
337
343
  validationErrors: {
338
344
  invalidNumber: string;
@@ -427,6 +433,11 @@ declare const _default: {
427
433
  table: {
428
434
  label: string;
429
435
  };
436
+ sankey: {
437
+ alerts: {
438
+ tooManyStages: string;
439
+ };
440
+ };
430
441
  };
431
442
  loadingOverlay: {
432
443
  label: string;
@@ -452,6 +463,17 @@ declare const _default: {
452
463
  median: string;
453
464
  variance: string;
454
465
  };
466
+ measuresAgg: {
467
+ countDistinct: string;
468
+ count: string;
469
+ sum: string;
470
+ average: string;
471
+ min: string;
472
+ max: string;
473
+ median: string;
474
+ variance: string;
475
+ stdev: string;
476
+ };
455
477
  };
456
478
  }[];
457
479
  export default _default;
@@ -256,6 +256,8 @@ declare const _default: {
256
256
  yes: string;
257
257
  no: string;
258
258
  seeMore: string;
259
+ generateNarrative: string;
260
+ hideNarrative: string;
259
261
  };
260
262
  disclaimer: {
261
263
  poweredByAi: string;
@@ -309,6 +311,8 @@ declare const _default: {
309
311
  from: string;
310
312
  to: string;
311
313
  includeCurrent: string;
314
+ rankedBy: string;
315
+ selectField: string;
312
316
  };
313
317
  placeholders: {
314
318
  selectFromList: string;
@@ -333,6 +337,8 @@ declare const _default: {
333
337
  greaterThan: string;
334
338
  greaterThanOrEqual: string;
335
339
  isWithin: string;
340
+ top: string;
341
+ bottom: string;
336
342
  };
337
343
  validationErrors: {
338
344
  invalidNumber: string;
@@ -427,6 +433,11 @@ declare const _default: {
427
433
  table: {
428
434
  label: string;
429
435
  };
436
+ sankey: {
437
+ alerts: {
438
+ tooManyStages: string;
439
+ };
440
+ };
430
441
  };
431
442
  loadingOverlay: {
432
443
  label: string;
@@ -452,6 +463,17 @@ declare const _default: {
452
463
  median: string;
453
464
  variance: string;
454
465
  };
466
+ measuresAgg: {
467
+ countDistinct: string;
468
+ count: string;
469
+ sum: string;
470
+ average: string;
471
+ min: string;
472
+ max: string;
473
+ median: string;
474
+ variance: string;
475
+ stdev: string;
476
+ };
455
477
  };
456
478
  }[];
457
479
  export default _default;