@sisense/sdk-ui 2.10.0 → 2.11.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 (102) hide show
  1. package/dist/ai.cjs +15 -15
  2. package/dist/ai.js +408 -401
  3. package/dist/analytics-composer/node.cjs +1 -1
  4. package/dist/analytics-composer/node.js +17 -17
  5. package/dist/analytics-composer.cjs +1 -1
  6. package/dist/analytics-composer.js +6 -6
  7. package/dist/{derive-chart-family-B1on_xkS.cjs → derive-chart-family-BauaWEEc.cjs} +49 -49
  8. package/dist/{derive-chart-family-BllGhqsW.js → derive-chart-family-BhAFg8OE.js} +10056 -9990
  9. package/dist/{dimensions-D-Z9sitz.js → dimensions-Bk74slQe.js} +1 -1
  10. package/dist/{dimensions-BYqdB-Q8.cjs → dimensions-DCxjxuyH.cjs} +1 -1
  11. package/dist/{execute-query-CGLL9vXX.js → execute-query-CxMSGp-J.js} +41 -40
  12. package/dist/{execute-query-CABqVn7C.cjs → execute-query-uQ2s1ZNz.cjs} +1 -1
  13. package/dist/index.cjs +22 -22
  14. package/dist/index.js +11201 -10704
  15. package/dist/index.umd.js +312 -311
  16. package/dist/packages/sdk-ui/src/ai/chart/nlq-chart-widget.d.ts +7 -1
  17. package/dist/packages/sdk-ui/src/app/client-application.d.ts +2 -2
  18. package/dist/packages/sdk-ui/src/calendar-heatmap-chart.d.ts +17 -3
  19. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/constants.d.ts +67 -36
  20. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/data-options/data-options.d.ts +2 -0
  21. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/data.d.ts +1 -0
  22. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/extras-options.d.ts +1 -2
  23. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/series-options/calendar-data-generator.d.ts +14 -7
  24. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-heatmap-charts-grid.d.ts +9 -1
  25. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-heatmap.d.ts +2 -4
  26. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-pagination/calendar-pagination.d.ts +2 -1
  27. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/sizing-helpers.d.ts +6 -17
  28. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/view-helpers.d.ts +3 -1
  29. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/utils/calendar-utils.d.ts +33 -0
  30. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/utils/index.d.ts +2 -0
  31. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/utils/with-calendar-heatmap-data-coloring.d.ts +17 -0
  32. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/alerts/index.d.ts +5 -0
  33. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/data/index.d.ts +21 -0
  34. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/data-options/index.d.ts +32 -0
  35. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/design-options/index.d.ts +17 -0
  36. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/funnel-chart-builder.d.ts +2 -0
  37. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/highchart-options/highcharts-options-builder.d.ts +2 -0
  38. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/funnel-chart/types.d.ts +12 -0
  39. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/helpers/data-options.d.ts +2 -2
  40. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/alerts/index.d.ts +1 -0
  41. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/data/index.d.ts +7 -0
  42. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/data-options/index.d.ts +11 -0
  43. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/design-options/index.d.ts +6 -0
  44. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/highchart-options/highcharts-options-builder.d.ts +2 -0
  45. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/sunburst-chart-builder.d.ts +2 -0
  46. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/sunburst-chart/types.d.ts +12 -0
  47. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/alerts/index.d.ts +1 -0
  48. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/data/index.d.ts +7 -0
  49. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/data-options/index.d.ts +11 -0
  50. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/design-options/index.d.ts +6 -0
  51. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/highchart-options/highcharts-options-builder.d.ts +2 -0
  52. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/treemap-chart-builder.d.ts +2 -0
  53. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/treemap-chart/types.d.ts +12 -0
  54. package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/types.d.ts +1 -1
  55. package/dist/packages/sdk-ui/src/chart/restructured-charts/types.d.ts +9 -8
  56. package/dist/packages/sdk-ui/src/chart-data-options/types.d.ts +3 -3
  57. package/dist/packages/sdk-ui/src/chart-options-processor/cartesian/utils/series-processor.d.ts +19 -0
  58. package/dist/packages/sdk-ui/src/chart-options-processor/chart-options-service.d.ts +3 -3
  59. package/dist/packages/sdk-ui/src/chart-options-processor/series-labels.d.ts +19 -0
  60. package/dist/packages/sdk-ui/src/chart-options-processor/translations/boxplot/boxplot-plot-options.d.ts +2 -2
  61. package/dist/packages/sdk-ui/src/chart-options-processor/translations/design-options.d.ts +26 -4
  62. package/dist/packages/sdk-ui/src/chart-options-processor/translations/funnel-plot-options.d.ts +2 -2
  63. package/dist/packages/sdk-ui/src/chart-options-processor/translations/funnel-series.d.ts +8 -0
  64. package/dist/packages/sdk-ui/src/chart-options-processor/translations/pie-plot-options.d.ts +2 -2
  65. package/dist/packages/sdk-ui/src/chart-options-processor/translations/scatter-series.d.ts +2 -1
  66. package/dist/packages/sdk-ui/src/chart-options-processor/translations/sunburst/sunburst-options.d.ts +78 -0
  67. package/dist/packages/sdk-ui/src/chart-options-processor/translations/tooltip-utils.d.ts +6 -5
  68. package/dist/packages/sdk-ui/src/chart-options-processor/translations/types.d.ts +2 -2
  69. package/dist/packages/sdk-ui/src/chart-options-processor/translations/value-label-section.d.ts +14 -11
  70. package/dist/packages/sdk-ui/src/common/components/modal/modal-context.d.ts +1 -2
  71. package/dist/packages/sdk-ui/src/dashboard/components/jtd-dashboard.d.ts +5 -4
  72. package/dist/packages/sdk-ui/src/dashboard/dashboard-helpers.d.ts +109 -0
  73. package/dist/packages/sdk-ui/src/dashboard/hooks/index.d.ts +7 -0
  74. package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/index.d.ts +20 -5
  75. package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-config-transformers.d.ts +85 -0
  76. package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-filters.d.ts +3 -2
  77. package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-formatters.d.ts +64 -2
  78. package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-handlers.d.ts +4 -5
  79. package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-menu.d.ts +1 -0
  80. package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-types.d.ts +260 -5
  81. package/dist/packages/sdk-ui/src/dashboard/hooks/use-dashboard-header-toolbar.d.ts +7 -0
  82. package/dist/packages/sdk-ui/src/dashboard/hooks/use-edit-mode-toolbar.d.ts +3 -0
  83. package/dist/packages/sdk-ui/src/dashboard/hooks/use-jtd-widget.d.ts +68 -0
  84. package/dist/packages/sdk-ui/src/dashboard/hooks/use-jtd.d.ts +33 -7
  85. package/dist/packages/sdk-ui/src/dashboard/hooks/use-tabber.d.ts +13 -0
  86. package/dist/packages/sdk-ui/src/dashboard/index.d.ts +1 -0
  87. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/utils.d.ts +1 -3
  88. package/dist/packages/sdk-ui/src/index.d.ts +9 -1
  89. package/dist/packages/sdk-ui/src/models/dashboard/translate-dashboard-utils.d.ts +25 -2
  90. package/dist/packages/sdk-ui/src/models/dashboard/types.d.ts +8 -4
  91. package/dist/packages/sdk-ui/src/props.d.ts +0 -6
  92. package/dist/packages/sdk-ui/src/types.d.ts +195 -21
  93. package/dist/packages/sdk-ui/src/utils/create-level-attribute.d.ts +11 -0
  94. package/dist/packages/sdk-ui/src/widget-by-id/translate-widget-style-options.d.ts +9 -0
  95. package/dist/packages/sdk-ui/src/widget-by-id/types.d.ts +45 -72
  96. package/dist/{types-Ds0KtTJF.cjs → types-DhvOgfXa.cjs} +1 -1
  97. package/dist/{types-BRtWk8uC.js → types-Dxieyr4A.js} +1 -1
  98. package/dist/{use-common-filters-D8tEa9zb.js → use-common-filters-DJyYvdev.js} +17387 -16944
  99. package/dist/{use-common-filters-hw1WKPCY.cjs → use-common-filters-Qj9249s0.cjs} +227 -226
  100. package/dist/{widget-composer-DL0xPtlC.js → widget-composer-azihIMsw.js} +3 -3
  101. package/dist/{widget-composer-B7zeAa_D.cjs → widget-composer-omIEhWNL.cjs} +1 -1
  102. package/package.json +11 -16
@@ -1,5 +1,6 @@
1
1
  import { Filter, Data, FilterRelations } from '@sisense/sdk-data';
2
2
  import type { NlqResponseData } from '../../ai';
3
+ import { ChartWidgetProps } from '../../props';
3
4
  import { NlqChartWidgetStyleOptions } from '../../types';
4
5
  /**
5
6
  * Props for {@link NlqChartWidget} component.
@@ -29,6 +30,11 @@ export interface NlqChartWidgetProps {
29
30
  * @default true
30
31
  */
31
32
  styleOptions?: NlqChartWidgetStyleOptions;
33
+ /**
34
+ * Widget props if we have them in full, to ensure NlqChartWidget will be rendered
35
+ * the same way as ChartWidget
36
+ */
37
+ widgetProps?: ChartWidgetProps;
32
38
  }
33
39
  /**
34
40
  * React component that renders a chart widget based on NLQ response data.
@@ -52,4 +58,4 @@ export interface NlqChartWidgetProps {
52
58
  * @group Generative AI
53
59
  * @internal
54
60
  */
55
- export declare const NlqChartWidget: ({ nlqResponse, onDataReady, styleOptions, filters, }: NlqChartWidgetProps) => import("react/jsx-runtime").JSX.Element;
61
+ export declare const NlqChartWidget: ({ nlqResponse, onDataReady, styleOptions, widgetProps, filters, }: NlqChartWidgetProps) => import("react/jsx-runtime").JSX.Element;
@@ -110,7 +110,7 @@ export type AppConfig = {
110
110
  onTrackingEvent?: (payload: TrackingEventDetails) => void;
111
111
  };
112
112
  /**
113
- * Configuration of the Jump to Dashboard feature
113
+ * Configuration of the Jump To Dashboard feature
114
114
  *
115
115
  * This feature is currently in Beta.
116
116
  *
@@ -138,7 +138,7 @@ export type AppConfig = {
138
138
  */
139
139
  jumpToDashboardConfig?: {
140
140
  /**
141
- * Whether to enable or disable the jump to dashboard feature
141
+ * Whether to enable or disable the Jump To Dashboard feature
142
142
  *
143
143
  * If not specified, the default value is `true`
144
144
  */
@@ -1,12 +1,26 @@
1
1
  /// <reference types="react" />
2
2
  import { CalendarHeatmapChartProps } from './props';
3
3
  /**
4
- * A React component representing a calendar heatmap chart.
4
+ * A React component that visualizes values over days in a calendar-like view,
5
+ * making it easy to identify daily patterns or anomalies
5
6
  *
6
7
  * @param props - Calendar Heatmap chart properties
7
8
  * @returns Calendar Heatmap Chart component
8
9
  * @group Charts
9
- *
10
- * @internal
10
+ * @example
11
+ * ```tsx
12
+ * <CalendarHeatmapChart
13
+ * dataSet={DM.DataSource}
14
+ * dataOptions={{
15
+ * date: DM.Commerce.Date.Days,
16
+ * value: measureFactory.sum(DM.Commerce.Cost)
17
+ * }}
18
+ * styleOptions={{
19
+ * width: 800,
20
+ * height: 600,
21
+ * viewType: 'quarter'
22
+ * }}
23
+ * />
24
+ * ```
11
25
  */
12
26
  export declare const CalendarHeatmapChart: import("react").FunctionComponent<CalendarHeatmapChartProps>;
@@ -3,77 +3,96 @@ import { ViewType } from './types';
3
3
  * Default calendar heatmap chart configuration constants
4
4
  */
5
5
  export declare const CALENDAR_HEATMAP_DEFAULTS: {
6
- /** Default cell size in pixels */
7
- readonly CELL_SIZE: 50;
8
6
  /** Default view type */
9
7
  readonly VIEW_TYPE: ViewType.MONTH;
10
8
  /** Default color for days without data */
11
- readonly NO_DATA_COLOR: "rgb(245, 245, 245)";
12
- /** Transparent color for empty calendar cells */
13
- readonly EMPTY_CELL_COLOR: "transparent";
14
- /** Default chart background color */
15
- readonly BACKGROUND_COLOR: "white";
9
+ readonly NO_DATA_COLOR: "#f5f5f5";
16
10
  /** Default border width for cells */
17
11
  readonly BORDER_WIDTH: 0;
18
12
  /** Minimum cell size for showing data labels */
19
- readonly MIN_CELL_SIZE_FOR_LABELS: 10;
13
+ readonly MIN_CELL_SIZE_FOR_LABELS: 20;
20
14
  /** Total cells in a full calendar grid (6 rows × 7 days) */
21
15
  readonly TOTAL_CALENDAR_CELLS: 42;
22
16
  /** Days in a week */
23
17
  readonly DAYS_IN_WEEK: 7;
24
18
  /** Maximum calendar rows */
25
19
  readonly MAX_CALENDAR_ROWS: 6;
20
+ /** Show cell labels (day numbers) by default */
21
+ readonly SHOW_CELL_LABEL: true;
22
+ /** Show day labels (weekday names) by default */
23
+ readonly SHOW_DAY_LABEL: true;
24
+ /** Show month labels by default */
25
+ readonly SHOW_MONTH_LABEL: true;
26
+ /** Minimum сhart size threshold for using short month names */
27
+ readonly SHORT_MONTH_NAME_CHART_SIZE_THRESHOLD: 120;
28
+ /** Minimum сhart size threshold for showing day labels */
29
+ readonly SHOW_DAY_LABEL_CHART_SIZE_THRESHOLD: 120;
30
+ /** Minimum сhart size threshold for showing cell labels */
31
+ readonly SHOW_CELL_LABEL_CHART_SIZE_THRESHOLD: 120;
32
+ /** Default weekend enabled state */
33
+ readonly WEEKEND_ENABLED: false;
34
+ /** Default weekend days */
35
+ readonly WEEKEND_DAYS: readonly ["saturday", "sunday"];
36
+ /** Default weekend cell color */
37
+ readonly WEEKEND_CELL_COLOR: "#e6e6e6";
38
+ /** Default weekend hide values */
39
+ readonly WEEKEND_HIDE_VALUES: true;
40
+ /** Default start of week */
41
+ readonly START_OF_WEEK: "sunday";
26
42
  };
27
43
  /**
28
44
  * Calendar heatmap color scheme configuration
29
45
  */
30
46
  export declare const CALENDAR_HEATMAP_COLORS: {
31
- /** Color stops for the heatmap gradient */
32
- readonly GRADIENT_STOPS: readonly [[number, string], [number, string], [number, string]];
33
- /** Default text color */
34
- readonly TEXT_COLOR: "#333";
47
+ /** Default minimum color brightness percent */
48
+ readonly MIN_COLOR_BRIGHTNESS_PERCENT: 0.5;
49
+ /** Default maximum color brightness percent */
50
+ readonly MAX_COLOR_BRIGHTNESS_PERCENT: -0.3;
51
+ /** Default tooltip color brightness percent */
52
+ readonly TOOLTIP_COLOR_BRIGHTNESS_PERCENT: -0.2;
35
53
  /** Border color for tooltips */
36
54
  readonly TOOLTIP_BORDER_COLOR: "#c0c0c0";
37
55
  };
38
- /**
39
- * Calendar layout configuration
40
- */
41
- export declare const CALENDAR_LAYOUT: {
42
- /** Weekday abbreviations for calendar header */
43
- readonly WEEKDAY_LABELS: readonly ["S", "M", "T", "W", "T", "F", "S"];
44
- /** Margin calculations based on cell size */
45
- readonly MARGIN_RATIOS: {
46
- readonly TOP: 0.8;
47
- readonly BOTTOM: 0.4;
48
- readonly LEFT: 0.3;
49
- readonly RIGHT: 0.3;
56
+ export declare const CALENDAR_HEATMAP_SIZING: {
57
+ /** Default gap width */
58
+ readonly GAP_WIDTH: 30;
59
+ /** Default gap height */
60
+ readonly GAP_HEIGHT: 10;
61
+ /** Default margins */
62
+ readonly MARGINS: {
63
+ readonly TOP: 20;
64
+ readonly RIGHT: 40;
65
+ readonly BOTTOM: 20;
66
+ readonly LEFT: 40;
50
67
  };
51
- /** Minimum margin values */
52
- readonly MIN_MARGINS: {
53
- readonly TOP: 60;
54
- readonly BOTTOM: 30;
55
- readonly LEFT: 20;
56
- readonly RIGHT: 20;
68
+ readonly COLUMNS: 7;
69
+ readonly ROWS: 7;
70
+ readonly MIN_CELL_SIZE: 4;
71
+ readonly MAX_CELL_SIZE: 80;
72
+ readonly TITLE_HEIGHT: 20;
73
+ readonly PAGINATION_HEIGHT: 45;
74
+ readonly PAGINATION_BUTTON_SIZE: {
75
+ readonly WIDTH: 30;
76
+ readonly HEIGHT: 30;
57
77
  };
78
+ readonly MIN_TOOLTIP_WIDTH: 110;
58
79
  };
59
80
  /**
60
81
  * Font size and spacing calculations
61
82
  */
62
83
  export declare const CALENDAR_TYPOGRAPHY: {
63
- /** Font size ratio relative to cell size */
64
- readonly FONT_SIZE_RATIO: 0.2;
84
+ /** Font size ratio relative to cell size for day cell labels */
85
+ readonly FONT_SIZE_RATIO: 0.3;
65
86
  /** Minimum font size */
66
87
  readonly MIN_FONT_SIZE: 10;
67
- /** Maximum font size */
68
- readonly MAX_FONT_SIZE: 24;
88
+ /** Maximum font size for all labels (except pagination) */
89
+ readonly MAX_FONT_SIZE: 13;
69
90
  /** Label position adjustment ratio */
70
91
  readonly LABEL_Y_OFFSET_RATIO: 0.08;
71
92
  /** Axis label position ratio */
72
93
  readonly AXIS_LABEL_Y_RATIO: 0.3;
73
94
  /** Axis offset ratio */
74
95
  readonly AXIS_OFFSET_RATIO: 0.4;
75
- /** Axis label font size ratio */
76
- readonly AXIS_FONT_SIZE_RATIO: 0.24;
77
96
  /** Minimum axis font size */
78
97
  readonly MIN_AXIS_FONT_SIZE: 12;
79
98
  };
@@ -85,3 +104,15 @@ export declare const CALENDAR_HEATMAP_DATA_TYPE: "calendar-heatmap";
85
104
  * Full month date format
86
105
  */
87
106
  export declare const FULL_MONTH_DATE_FORMAT = "MMMM";
107
+ /**
108
+ * Short month date format (3 letters)
109
+ */
110
+ export declare const SHORT_MONTH_DATE_FORMAT = "MMM";
111
+ /**
112
+ * Single letter day abbreviation format
113
+ */
114
+ export declare const SINGLE_LETTER_DAY_DATE_FORMAT = "EEEEE";
115
+ /**
116
+ * Reference Sunday date
117
+ */
118
+ export declare const REFERENCE_SUNDAY_DATE = "2023-01-01T00:00:00Z";
@@ -7,6 +7,8 @@ import { ChartDataOptionsInternal } from '../../../../../chart-data-options/type
7
7
  *
8
8
  * Converts user-provided data options to the internal format used by the chart engine,
9
9
  * applying default date formatting and normalizing columns.
10
+ * Ensures that the date attribute has 'day' level granularity, which is required
11
+ * for proper calendar heatmap visualization.
10
12
  *
11
13
  * @param dataOptions - User-provided calendar heatmap chart data options
12
14
  * @returns Normalized internal data options
@@ -5,6 +5,7 @@ export type CalendarHeatmapDataValue = {
5
5
  date: Date;
6
6
  value?: number;
7
7
  blur?: boolean;
8
+ color?: string;
8
9
  };
9
10
  export type CalendarHeatmapChartData = {
10
11
  type: 'calendar-heatmap';
@@ -1,4 +1,3 @@
1
- import { BuildContext } from '../../../types.js';
2
1
  import { HighchartsOptionsInternal } from '../../../../../../chart-options-processor/chart-options-service.js';
3
2
  /**
4
3
  * Prepares the Highcharts's extras options (title, colorAxis, accessibility) for calendar heatmap
@@ -6,4 +5,4 @@ import { HighchartsOptionsInternal } from '../../../../../../chart-options-proce
6
5
  * @param ctx - The highcharts options builder context
7
6
  * @returns Extras options object
8
7
  */
9
- export declare function getExtrasOptions(ctx: BuildContext<'calendar-heatmap'>): Partial<HighchartsOptionsInternal>;
8
+ export declare function getExtrasOptions(): Partial<HighchartsOptionsInternal>;
@@ -1,5 +1,7 @@
1
1
  import { CalendarHeatmapChartData } from '../../../data.js';
2
2
  import { DateFormatter } from '../../../../../../../common/formatters/create-date-formatter.js';
3
+ import { CalendarDayOfWeek } from '../../../utils/calendar-utils.js';
4
+ import { CalendarHeatmapChartDesignOptions } from '../../../../../../../chart-options-processor/translations/design-options.js';
3
5
  /**
4
6
  * Represents a calendar chart data point for Highcharts
5
7
  */
@@ -8,28 +10,33 @@ export interface CalendarChartDataPoint {
8
10
  x: number;
9
11
  /** Y coordinate (week row, 0-5) */
10
12
  y: number;
11
- /** Data value or null for empty cells */
13
+ /** Data value or null for cells without data */
12
14
  value: number | null;
13
- /** Date timestamp or null for empty cells */
14
- date: number | null;
15
+ /** Date timestamp */
16
+ date: number;
15
17
  /** Date string for tooltip display */
16
18
  dateString?: string;
17
19
  /** Custom color override */
18
20
  color?: string;
21
+ /** Class name for the data point */
22
+ className?: string;
19
23
  /** Custom properties for the data point */
20
24
  custom: {
21
25
  /** Day of the month (1-31) */
22
26
  monthDay?: number;
23
27
  /** Whether this cell has data */
24
28
  hasData?: boolean;
25
- /** Whether this is an empty calendar cell */
26
- empty?: boolean;
29
+ /** Whether this data point should be blurred for highlighting */
30
+ blur?: boolean;
27
31
  };
28
32
  }
29
33
  /**
30
34
  * Generates calendar chart data for an entire month with provided data values
31
35
  *
32
- * @param dataPoints - Array of data points with dates and values
36
+ * @param data - Array of data points with dates and values
37
+ * @param dateFormatter - Date formatter function
38
+ * @param startOfWeek - Week start preference
39
+ * @param weekendsConfig - Weekend configuration (days, cellColor, hideValues)
33
40
  * @returns Array of calendar chart data points formatted for Highcharts
34
41
  */
35
- export declare function generateCalendarChartData(data: CalendarHeatmapChartData, dateFormatter: DateFormatter): CalendarChartDataPoint[];
42
+ export declare function generateCalendarChartData(data: CalendarHeatmapChartData, dateFormatter: DateFormatter, startOfWeek: CalendarDayOfWeek, weekendsConfig: CalendarHeatmapChartDesignOptions['weekends']): CalendarChartDataPoint[];
@@ -1,12 +1,15 @@
1
1
  import React from 'react';
2
2
  import { HighchartsOptionsInternal } from '../../../../../chart-options-processor/chart-options-service';
3
3
  import { MonthInfo } from './helpers/view-helpers.js';
4
- import { CalendarHeatmapViewType } from '../../../../../types';
4
+ import { CalendarHeatmapViewType, TextStyle } from '../../../../../types';
5
+ import { ContainerSize } from '../../../../../dynamic-size-container/dynamic-size-container';
5
6
  export declare const ChartsContainer: import("@emotion/styled").StyledComponent<{
6
7
  theme?: import("@emotion/react").Theme | undefined;
7
8
  as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
8
9
  } & {
9
10
  viewType: CalendarHeatmapViewType;
11
+ gridCols: number;
12
+ gridRows: number;
10
13
  }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
11
14
  export declare const ChartWrapper: import("@emotion/styled").StyledComponent<{
12
15
  theme?: import("@emotion/react").Theme | undefined;
@@ -21,6 +24,11 @@ interface CalendarHeatmapChartsGridProps {
21
24
  availableMonths: MonthInfo[];
22
25
  currentViewIndex: number;
23
26
  viewType: CalendarHeatmapViewType;
27
+ size: ContainerSize;
28
+ monthLabels?: {
29
+ enabled?: boolean;
30
+ style?: TextStyle;
31
+ };
24
32
  }
25
33
  export declare const CalendarHeatmapChartsGrid: React.FC<CalendarHeatmapChartsGridProps>;
26
34
  export {};
@@ -1,13 +1,11 @@
1
1
  import React from 'react';
2
2
  import { HighchartsBasedChartRendererProps } from '../../highcharts-based-chart-renderer/highcharts-based-chart-renderer.js';
3
3
  import { ChartRendererProps } from '../../../../../chart/types.js';
4
+ import { Themable } from '../../../../../theme-provider/types.js';
4
5
  export declare const ChartRootContainer: import("@emotion/styled").StyledComponent<{
5
6
  theme?: import("@emotion/react").Theme | undefined;
6
7
  as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
7
- } & {
8
- containerWidth?: number | undefined;
9
- containerHeight?: number | undefined;
10
- }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
8
+ } & Themable, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
11
9
  export declare const ChartsWrapper: import("@emotion/styled").StyledComponent<{
12
10
  theme?: import("@emotion/react").Theme | undefined;
13
11
  as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { MonthInfo } from '../helpers/view-helpers.js';
3
3
  import { CalendarHeatmapViewType } from '../../../../../../types.js';
4
+ import { Themable } from '../../../../../../theme-provider/types.js';
4
5
  export declare const PaginationContainer: import("@emotion/styled").StyledComponent<{
5
6
  theme?: import("@emotion/react").Theme | undefined;
6
7
  as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
@@ -14,7 +15,7 @@ export declare const NavigationButton: import("@emotion/styled").StyledComponent
14
15
  export declare const ViewDisplay: import("@emotion/styled").StyledComponent<{
15
16
  theme?: import("@emotion/react").Theme | undefined;
16
17
  as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
17
- }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
18
+ } & Themable, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
18
19
  interface CalendarPaginationProps {
19
20
  currentViewIndex: number;
20
21
  availableMonths: MonthInfo[];
@@ -1,25 +1,14 @@
1
1
  import { CalendarHeatmapViewType } from '../../../../../../types.js';
2
- export interface CalendarSize {
3
- width: number;
4
- height: number;
2
+ import { ContainerSize } from '../../../../../../dynamic-size-container/dynamic-size-container';
3
+ export interface CalendarSize extends ContainerSize {
5
4
  cellSize: number;
6
- chartMargins: {
7
- top: number;
8
- right: number;
9
- bottom: number;
10
- left: number;
11
- };
12
- }
13
- export interface ContainerSize {
14
- width: number;
15
- height: number;
16
5
  }
6
+ export declare function getViewGridInfo(viewType: CalendarHeatmapViewType, size: ContainerSize): {
7
+ cols: number;
8
+ rows: number;
9
+ };
17
10
  /**
18
11
  * Calculate optimal calendar size based on available container space
19
12
  * Ensures calendar cells are perfectly square (width = height)
20
13
  */
21
14
  export declare function calculateCalendarSize(containerSize: ContainerSize, viewType: CalendarHeatmapViewType): CalendarSize;
22
- /**
23
- * Get optimal gap size based on container size and view type
24
- */
25
- export declare function calculateOptimalGap(containerSize: ContainerSize, viewType: CalendarHeatmapViewType): number;
@@ -1,11 +1,13 @@
1
1
  import { CalendarHeatmapChartData } from '../../data';
2
2
  import { CalendarHeatmapViewType } from '../../../../../../types';
3
+ import { CalendarSize } from './sizing-helpers';
3
4
  export interface MonthInfo {
4
5
  year: number;
5
6
  month: number;
6
7
  monthName: string;
7
8
  }
8
- export declare function getAvailableMonths(chartData: CalendarHeatmapChartData, dateFormatter: (date: Date, format: string) => string): MonthInfo[];
9
+ export declare function shouldUseShortMonthNames(calendarSize: CalendarSize): boolean;
10
+ export declare function getAvailableMonths(chartData: CalendarHeatmapChartData, dateFormatter: (date: Date, format: string) => string, useShortMonthNames?: boolean): MonthInfo[];
9
11
  export declare function getMonthsPerView(viewType: CalendarHeatmapViewType): number;
10
12
  export declare function getGridLayout(viewType: CalendarHeatmapViewType): {
11
13
  columns: string;
@@ -0,0 +1,33 @@
1
+ import type { DateFormatter } from '../../../../../common/formatters/create-date-formatter.js';
2
+ /**
3
+ * Day of the week
4
+ */
5
+ export type CalendarDayOfWeek = 'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday';
6
+ /**
7
+ * Internal enum for start of week values
8
+ * @internal
9
+ */
10
+ export declare enum CalendarDayOfWeekEnum {
11
+ SUNDAY = "sunday",
12
+ MONDAY = "monday",
13
+ TUESDAY = "tuesday",
14
+ WEDNESDAY = "wednesday",
15
+ THURSDAY = "thursday",
16
+ FRIDAY = "friday",
17
+ SATURDAY = "saturday"
18
+ }
19
+ /**
20
+ * Get day of week index from day of week string
21
+ */
22
+ export declare function getDayOfWeekIndex(dayOfWeek: CalendarDayOfWeek): number;
23
+ /**
24
+ * Get day of week string from day of week index
25
+ */
26
+ export declare function getDayOfWeek(index: number): CalendarDayOfWeek;
27
+ /**
28
+ * Get localized weekday labels based on week start preference
29
+ * @param startOfWeek - Week start preference
30
+ * @param dateFormatter - Date formatter function for consistent formatting
31
+ * @returns Array of localized weekday abbreviations
32
+ */
33
+ export declare function getWeekdayLabels(startOfWeek: CalendarDayOfWeek, dateFormatter: DateFormatter): readonly string[];
@@ -0,0 +1,2 @@
1
+ export { CalendarDayOfWeekEnum, type CalendarDayOfWeek, getDayOfWeek, getDayOfWeekIndex, getWeekdayLabels, } from './calendar-utils.js';
2
+ export { withCalendarHeatmapDataColoring } from './with-calendar-heatmap-data-coloring.js';
@@ -0,0 +1,17 @@
1
+ import { CompleteThemeSettings, DataColorOptions, RangeDataColorOptions } from '../../../../../types';
2
+ import { CalendarHeatmapChartData } from '../data.js';
3
+ /**
4
+ * Returns the default color options for calendar heatmap chart
5
+ *
6
+ * @param themeSettings - Theme settings
7
+ * @returns Default color options
8
+ */
9
+ export declare function getCalendarHeatmapDefaultColorOptions(themeSettings: CompleteThemeSettings): RangeDataColorOptions;
10
+ /**
11
+ * Creates a decorator function that applies data-driven coloring to calendar heatmap data values.
12
+ * Uses a decorator pattern where the function accepts color options and returns a data transformer.
13
+ *
14
+ * @param colorOptions - Data color options configuration
15
+ * @returns A decorator function that colors calendar heatmap data values
16
+ */
17
+ export declare function withCalendarHeatmapDataColoring(colorOptions?: DataColorOptions): (data: CalendarHeatmapChartData) => CalendarHeatmapChartData;
@@ -0,0 +1,5 @@
1
+ import { BuildContext } from '../../../types';
2
+ /**
3
+ * Funnel-specific alerts function that extracts alerts from the funnel series formatting.
4
+ */
5
+ export declare const getFunnelChartAlerts: (ctx: BuildContext<'funnel'>) => string[];
@@ -0,0 +1,21 @@
1
+ import { DataTable } from '../../../../../../chart-data-processor/table-processor';
2
+ import { FunnelChartData, FunnelChartDataOptionsInternal } from '../types';
3
+ import { SupportedChartType, TypedLoadDataFunction } from '../../../../../../chart/restructured-charts/types';
4
+ /**
5
+ * Maximum number of data points allowed for funnel charts.
6
+ * This limit ensures optimal performance and user experience.
7
+ */
8
+ export declare const FUNNEL_CHART_DATA_LIMIT = 50;
9
+ /**
10
+ * Data translators for funnel charts.
11
+ */
12
+ export declare const dataTranslators: {
13
+ /**
14
+ * Loads data for funnel charts with funnel-specific data limiting for optimal performance.
15
+ */
16
+ loadData: TypedLoadDataFunction<SupportedChartType>;
17
+ /**
18
+ * Transforms data table to funnel chart data.
19
+ */
20
+ getChartData: (dataOptions: FunnelChartDataOptionsInternal, dataTable: DataTable) => FunnelChartData;
21
+ };
@@ -0,0 +1,32 @@
1
+ import { Attribute, Measure } from '@sisense/sdk-data';
2
+ import { ChartDataOptions, ChartDataOptionsInternal } from '../../../../../../chart-data-options/types';
3
+ import { FunnelChartDataOptions, FunnelChartDataOptionsInternal } from '../types';
4
+ /**
5
+ * Data options translators for funnel charts.
6
+ */
7
+ export declare const dataOptionsTranslators: {
8
+ /**
9
+ * Translates funnel chart data options to internal format.
10
+ */
11
+ translateDataOptionsToInternal: (dataOptions: FunnelChartDataOptions) => FunnelChartDataOptionsInternal;
12
+ /**
13
+ * Gets attributes from funnel chart data options.
14
+ */
15
+ getAttributes: (internalDataOptions: FunnelChartDataOptionsInternal) => Attribute[];
16
+ /**
17
+ * Gets measures from funnel chart data options.
18
+ */
19
+ getMeasures: (internalDataOptions: FunnelChartDataOptionsInternal) => Measure[];
20
+ /**
21
+ * Validates and cleans funnel chart data options.
22
+ */
23
+ validateAndCleanDataOptions: (dataOptions: FunnelChartDataOptions) => FunnelChartDataOptions;
24
+ /**
25
+ * Type guard to check if data options are funnel chart data options.
26
+ */
27
+ isCorrectDataOptions: (dataOptions: ChartDataOptions) => dataOptions is import('../../../../../../chart-data-options/types').CategoricalChartDataOptions;
28
+ /**
29
+ * Type guard to check if internal data options are funnel chart data options.
30
+ */
31
+ isCorrectDataOptionsInternal: (dataOptions: ChartDataOptionsInternal) => dataOptions is import('../../../../../../chart-data-options/types').CategoricalChartDataOptionsInternal;
32
+ };
@@ -0,0 +1,17 @@
1
+ import { ChartStyleOptions } from '../../../../../../types';
2
+ import { FunnelChartStyleOptions, FunnelChartDesignOptions } from '../types';
3
+ /**
4
+ * Translates style options to design options for funnel charts.
5
+ */
6
+ export declare function translateStyleOptionsToDesignOptions(styleOptions: FunnelChartStyleOptions): FunnelChartDesignOptions;
7
+ /**
8
+ * Checks if the style options are correct for funnel charts.
9
+ */
10
+ export declare function isCorrectStyleOptions(styleOptions: ChartStyleOptions): styleOptions is FunnelChartStyleOptions;
11
+ /**
12
+ * Design options translators for funnel charts.
13
+ */
14
+ export declare const designOptionsTranslators: {
15
+ translateStyleOptionsToDesignOptions: typeof translateStyleOptionsToDesignOptions;
16
+ isCorrectStyleOptions: typeof isCorrectStyleOptions;
17
+ };
@@ -0,0 +1,2 @@
1
+ import { ChartBuilder } from '../../../types';
2
+ export declare const funnelChartBuilder: ChartBuilder<'funnel'>;
@@ -0,0 +1,2 @@
1
+ import { HighchartsOptionsBuilder } from '../../../types';
2
+ export declare const funnelHighchartsOptionsBuilder: HighchartsOptionsBuilder<'funnel'>;
@@ -0,0 +1,12 @@
1
+ import { CategoricalChartData } from '../../../../../chart-data/types';
2
+ import { CategoricalChartDataOptions, CategoricalChartDataOptionsInternal } from '../../../../../chart-data-options/types';
3
+ import { FunnelStyleOptions } from '../../../../../types';
4
+ import { FunnelChartDesignOptions as FunnelDesignOptions } from '../../../../../chart-options-processor/translations/design-options';
5
+ /**
6
+ * Funnel chart specific type aliases for better readability.
7
+ */
8
+ export type FunnelChartData = CategoricalChartData;
9
+ export type FunnelChartDataOptions = CategoricalChartDataOptions;
10
+ export type FunnelChartDataOptionsInternal = CategoricalChartDataOptionsInternal;
11
+ export type FunnelChartStyleOptions = FunnelStyleOptions;
12
+ export type FunnelChartDesignOptions = FunnelDesignOptions;
@@ -1,5 +1,5 @@
1
1
  import { Attribute, Measure } from '@sisense/sdk-data';
2
- import { ChartDataOptions, CategoricalChartDataOptions, CategoricalChartDataOptionsInternal } from '../../../../../chart-data-options/types';
2
+ import { ChartDataOptions, CategoricalChartDataOptions, CategoricalChartDataOptionsInternal, ChartDataOptionsInternal } from '../../../../../chart-data-options/types';
3
3
  /**
4
4
  * Translates categorical chart data options to internal format.
5
5
  */
@@ -19,4 +19,4 @@ export declare function isCategoricalChartDataOptions(dataOptions: ChartDataOpti
19
19
  /**
20
20
  * Type guard to check if internal data options are categorical chart data options.
21
21
  */
22
- export declare function isCategoricalChartDataOptionsInternal(dataOptions: any): dataOptions is CategoricalChartDataOptionsInternal;
22
+ export declare function isCategoricalChartDataOptionsInternal(dataOptions: ChartDataOptionsInternal): dataOptions is CategoricalChartDataOptionsInternal;
@@ -0,0 +1,7 @@
1
+ import { loadDataBySingleQuery } from '../../../../helpers/data-loading';
2
+ import type { SunburstChartData, SunburstChartDataOptionsInternal } from '../types';
3
+ import { DataTable } from '../../../../../../chart-data-processor/table-processor';
4
+ export declare const dataTranslators: {
5
+ loadData: typeof loadDataBySingleQuery;
6
+ getChartData: (dataOptions: SunburstChartDataOptionsInternal, dataTable: DataTable) => SunburstChartData;
7
+ };
@@ -0,0 +1,11 @@
1
+ import { type ChartDataOptions } from '../../../../../../types';
2
+ import { getCategoricalAttributes, getCategoricalMeasures } from '../../helpers/data-options';
3
+ import type { SunburstChartDataOptions, SunburstChartDataOptionsInternal } from '../types';
4
+ import { ChartDataOptionsInternal } from '../../../../../../chart-data-options/types';
5
+ export declare const dataOptionsTranslators: {
6
+ translateDataOptionsToInternal: (dataOptions: SunburstChartDataOptions) => SunburstChartDataOptionsInternal;
7
+ getAttributes: typeof getCategoricalAttributes;
8
+ getMeasures: typeof getCategoricalMeasures;
9
+ isCorrectDataOptions: (dataOptions: ChartDataOptions) => dataOptions is import('../../../../../../types').CategoricalChartDataOptions;
10
+ isCorrectDataOptionsInternal: (dataOptions: ChartDataOptionsInternal) => dataOptions is import('../../../../../../chart-data-options/types').CategoricalChartDataOptionsInternal;
11
+ };
@@ -0,0 +1,6 @@
1
+ import { type ChartStyleOptions } from '../../../../../../types';
2
+ import type { SunburstChartStyleOptions, SunburstChartDesignOptions } from '../types';
3
+ export declare const designOptionsTranslators: {
4
+ translateStyleOptionsToDesignOptions: (styleOptions: SunburstChartStyleOptions) => SunburstChartDesignOptions;
5
+ isCorrectStyleOptions: (styleOptions: ChartStyleOptions) => styleOptions is import('../../../../../../types').SunburstStyleOptions;
6
+ };
@@ -0,0 +1,2 @@
1
+ import { HighchartsOptionsBuilder } from '../../../types';
2
+ export declare const sunburstHighchartsOptionsBuilder: HighchartsOptionsBuilder<'sunburst'>;
@@ -0,0 +1,2 @@
1
+ import { ChartBuilder } from '../../../types';
2
+ export declare const sunburstChartBuilder: ChartBuilder<'sunburst'>;