@sisense/sdk-ui 2.21.0 → 2.22.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.
- package/dist/ai.cjs +58 -58
- package/dist/ai.js +863 -846
- package/dist/analytics-composer/node.cjs +1 -1
- package/dist/analytics-composer/node.js +718 -709
- package/dist/analytics-composer.cjs +1 -1
- package/dist/analytics-composer.js +6 -6
- package/dist/{dimensions-DuUqQgpi.js → dimensions-BiLyFpCg.js} +1 -1
- package/dist/{dimensions-DVGn8ORR.cjs → dimensions-X4_igtmO.cjs} +1 -1
- package/dist/{execute-query-B21bnb05.js → execute-query-BEeqqDl6.js} +1483 -1490
- package/dist/execute-query-DJDE0zRU.cjs +1 -0
- package/dist/{index-0brX9D6q.cjs → index-NyouhE_A.cjs} +1 -1
- package/dist/{index-Ck90GjPy.js → index-kxX21arA.js} +15 -1
- package/dist/index.cjs +404 -404
- package/dist/index.js +22869 -21774
- package/dist/index.umd.js +644 -644
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/index.d.ts +1 -1
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/translate-dashboard-utils.d.ts +8 -1
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/types.d.ts +9 -2
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/index.d.ts +4 -0
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/persist-dashboard-model-middleware.d.ts +13 -0
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/{use-dashboard-model-reducer.d.ts → dashboard-model-reducer/types.d.ts} +19 -36
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/use-dashboard-model-reducer.d.ts +9 -0
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/utils.d.ts +28 -0
- package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/use-dashboard-persistence.d.ts +4 -4
- package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/duplicate-widget/duplicate-widget-utils.d.ts +34 -0
- package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/duplicate-widget/index.d.ts +2 -0
- package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/duplicate-widget/use-duplicate-widget-menu-item.d.ts +57 -0
- package/dist/packages/sdk-ui/src/domains/dashboarding/types.d.ts +43 -2
- package/dist/packages/sdk-ui/src/domains/dashboarding/use-composed-dashboard.d.ts +15 -3
- package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/cascading-filter-tile.d.ts +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/cascading-level-filter.d.ts +4 -1
- package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/use-cascadding-filter-tile-menu-items/use-cascadding-filter-tile-lock-menu-item.d.ts +13 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/use-cascadding-filter-tile-menu-items/use-cascadding-filter-tile-menu-items.d.ts +14 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/criteria-filter-tile/criteria-filter-tile.d.ts +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/custom-filter-tile.d.ts +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/date-filter/date-range-filter-tile/date-range-filter-tile.d.ts +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/date-filter/relative-date-filter-tile/relative-date-filter-tile.d.ts +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/{filter-tile.d.ts → filter-tile/filter-tile.d.ts} +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/filter-tile/index.d.ts +1 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/filter-tile/types.d.ts +36 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/filter-tile-container.d.ts +6 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/filters-panel/types.d.ts +13 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/index.d.ts +1 -1
- package/dist/packages/sdk-ui/src/domains/filters/components/member-filter-tile/member-filter-tile.d.ts +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/components/unsupported-filter-tile.d.ts +10 -1
- package/dist/packages/sdk-ui/src/domains/filters/shared/clone-filter-and-toggle-locked.d.ts +7 -0
- package/dist/packages/sdk-ui/src/domains/filters/shared/filter-tile-menu-button.d.ts +10 -0
- package/dist/packages/sdk-ui/src/domains/filters/shared/use-filter-tile-menu-items/use-filter-tile-lock-menu-item.d.ts +15 -0
- package/dist/packages/sdk-ui/src/domains/filters/shared/use-filter-tile-menu-items/use-filter-tile-menu-items.d.ts +14 -0
- package/dist/packages/sdk-ui/src/domains/formulas/index.d.ts +0 -1
- package/dist/packages/sdk-ui/src/domains/formulas/use-get-shared-formula.d.ts +20 -7
- package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/translate-widget-style-options/index.d.ts +1 -0
- package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/translate-widget-style-options/to-widget-dto-style.d.ts +63 -0
- package/dist/packages/sdk-ui/src/domains/widgets/helpers/header-menu-utils.d.ts +1 -1
- package/dist/packages/sdk-ui/src/domains/widgets/helpers/index.d.ts +1 -1
- package/dist/packages/sdk-ui/src/domains/widgets/shared/widget-header/types.d.ts +1 -17
- package/dist/packages/sdk-ui/src/domains/widgets/shared/widget-header/widget-menu-button.d.ts +1 -1
- package/dist/packages/sdk-ui/src/infra/api/types/dashboard-dto.d.ts +2 -1
- package/dist/packages/sdk-ui/src/infra/app/client-application.d.ts +17 -0
- package/dist/packages/sdk-ui/src/infra/app/settings/settings.d.ts +3 -0
- package/dist/packages/sdk-ui/src/infra/app/settings/types/deployment-props.d.ts +1 -1
- package/dist/packages/sdk-ui/src/infra/app/settings/types/features.d.ts +18 -1
- package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/index.d.ts +5 -0
- package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/plugin-context.d.ts +15 -0
- package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/plugin-provider.d.ts +21 -0
- package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/types.d.ts +50 -0
- package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/validate-plugins.d.ts +9 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/de-de.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/en-us.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/es-ar.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/es-es.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/fr-fr.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/it-it.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ja-jp.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ko-kr.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/nl-nl.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/pt-br.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ru-ru.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/tr-tr.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/zh-cn.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/en.d.ts +14 -0
- package/dist/packages/sdk-ui/src/infra/translation/resources/index.d.ts +28 -0
- package/dist/packages/sdk-ui/src/modules/ai/api/chat-rest-api.d.ts +2 -1
- package/dist/packages/sdk-ui/src/modules/ai/api/narration-endpoints.d.ts +2 -1
- package/dist/packages/sdk-ui/src/modules/ai/get-nlg-insights-from-widget.d.ts +1 -0
- package/dist/packages/sdk-ui/src/props.d.ts +13 -20
- package/dist/packages/sdk-ui/src/public-api/internal.d.ts +1 -0
- package/dist/packages/sdk-ui/src/public-api/public.d.ts +2 -2
- package/dist/packages/sdk-ui/src/public-api/sisense-internal.d.ts +6 -0
- package/dist/packages/sdk-ui/src/shared/components/alert/alert.d.ts +91 -0
- package/dist/packages/sdk-ui/src/shared/components/alert/index.d.ts +2 -0
- package/dist/packages/sdk-ui/src/shared/components/menu/menu-button.d.ts +2 -1
- package/dist/packages/sdk-ui/src/shared/components/quota-notification/quota-notification.d.ts +32 -0
- package/dist/packages/sdk-ui/src/shared/hooks/use-app-settings.d.ts +11 -0
- package/dist/packages/sdk-ui/src/shared/hooks/use-quota-notification.d.ts +54 -0
- package/dist/packages/sdk-ui/src/shared/hooks/use-quota-warning-dismissed.d.ts +8 -0
- package/dist/packages/sdk-ui/src/shared/icons/warning-icon.d.ts +6 -0
- package/dist/packages/sdk-ui/src/shared/icons/x-circle-icon.d.ts +6 -0
- package/dist/packages/sdk-ui/src/shared/types/menu-item.d.ts +17 -0
- package/dist/{use-common-filters-DBqRT0et.js → quota-notification-D6oMJal8.js} +10460 -10234
- package/dist/{use-common-filters-CXJN3RSs.cjs → quota-notification-z3dv2KoH.cjs} +129 -129
- package/dist/translations/de-de.cjs +1 -1
- package/dist/translations/de-de.js +16 -2
- package/dist/translations/en-us.cjs +1 -1
- package/dist/translations/en-us.js +1 -1
- package/dist/translations/es-ar.cjs +1 -1
- package/dist/translations/es-ar.js +16 -2
- package/dist/translations/es-es.cjs +1 -1
- package/dist/translations/es-es.js +16 -2
- package/dist/translations/fr-fr.cjs +1 -1
- package/dist/translations/fr-fr.js +16 -2
- package/dist/translations/it-it.cjs +1 -1
- package/dist/translations/it-it.js +16 -2
- package/dist/translations/ja-jp.cjs +1 -1
- package/dist/translations/ja-jp.js +16 -2
- package/dist/translations/ko-kr.cjs +1 -1
- package/dist/translations/ko-kr.js +16 -2
- package/dist/translations/nl-nl.cjs +1 -1
- package/dist/translations/nl-nl.js +16 -2
- package/dist/translations/pt-br.cjs +1 -1
- package/dist/translations/pt-br.js +16 -2
- package/dist/translations/ru-ru.cjs +1 -1
- package/dist/translations/ru-ru.js +16 -2
- package/dist/translations/tr-tr.cjs +1 -1
- package/dist/translations/tr-tr.js +16 -2
- package/dist/translations/zh-cn.cjs +1 -1
- package/dist/translations/zh-cn.js +16 -2
- package/dist/{types-Ch9J6ycn.cjs → types-CoY6F8Ma.cjs} +1 -1
- package/dist/{types-Ockb-LJ0.js → types-ixSwJkxM.js} +1 -1
- package/dist/{utils-BXDqo_yg.js → utils-BP-BglHE.js} +4181 -4157
- package/dist/{utils-DH69_bUK.cjs → utils-C8YMrOdw.cjs} +36 -36
- package/dist/{widget-composer-DfVCQL2G.js → widget-composer-CUUFoCb9.js} +3 -3
- package/dist/{widget-composer-DgCWcMJ1.cjs → widget-composer-DI4sHaNe.cjs} +3 -3
- package/package.json +10 -9
- package/dist/execute-query-BIkhszY1.cjs +0 -1
- /package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/{use-dasboard-model-utils.d.ts → use-dashboard-model-utils.d.ts} +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { FunctionComponent, ReactNode } from 'react';
|
|
2
2
|
import { DeepRequired } from 'ts-essentials';
|
|
3
|
+
import type { MenuItem } from '../../../shared/types/menu-item';
|
|
3
4
|
import { FilterVariant } from './common/filter-utils';
|
|
4
5
|
declare const BaseContainer: import("@emotion/styled").StyledComponent<{
|
|
5
6
|
theme?: import("@emotion/react").Theme | undefined;
|
|
@@ -40,6 +41,11 @@ interface FilterTileContainerProps {
|
|
|
40
41
|
onDelete?: () => void;
|
|
41
42
|
onEdit?: () => void;
|
|
42
43
|
locked?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Header menu items.
|
|
46
|
+
* When provided, the menu button is shown with these items.
|
|
47
|
+
*/
|
|
48
|
+
menuItems?: MenuItem[];
|
|
43
49
|
/**
|
|
44
50
|
* Render header title
|
|
45
51
|
*
|
|
@@ -61,6 +61,19 @@ export interface FiltersPanelConfig {
|
|
|
61
61
|
*/
|
|
62
62
|
enabled?: boolean;
|
|
63
63
|
};
|
|
64
|
+
/**
|
|
65
|
+
* Configuration for locking a filter.
|
|
66
|
+
*
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
lockFilter?: {
|
|
70
|
+
/**
|
|
71
|
+
* Determines whether the possibility to lock a filter is enabled.
|
|
72
|
+
*
|
|
73
|
+
* If not specified, the default value is `false`.
|
|
74
|
+
*/
|
|
75
|
+
enabled?: boolean;
|
|
76
|
+
};
|
|
64
77
|
};
|
|
65
78
|
}
|
|
66
79
|
/** @internal */
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { FunctionComponent } from 'react';
|
|
2
2
|
import { Attribute, DataSource, Filter } from '@sisense/sdk-data';
|
|
3
3
|
import { FilterTileDesignOptions } from '../filter-tile-container';
|
|
4
|
+
import { FilterTileConfig } from '../filter-tile/types';
|
|
4
5
|
/**
|
|
5
6
|
* Props of the {@link MemberFilterTile} component.
|
|
6
7
|
*/
|
|
@@ -27,6 +28,12 @@ export interface MemberFilterTileProps {
|
|
|
27
28
|
parentFilters?: Filter[];
|
|
28
29
|
/** Design options for the tile @internal */
|
|
29
30
|
tileDesignOptions?: FilterTileDesignOptions;
|
|
31
|
+
/**
|
|
32
|
+
* Config for the filter tile
|
|
33
|
+
*
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
config?: FilterTileConfig;
|
|
30
37
|
/**
|
|
31
38
|
* Render header title
|
|
32
39
|
*
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { Filter } from '@sisense/sdk-data';
|
|
3
3
|
import { FilterTileDesignOptions } from '../../../domains/filters/components/filter-tile-container';
|
|
4
|
+
import type { FilterTileConfig } from '../../../domains/filters/components/filter-tile/types';
|
|
4
5
|
export type UnsupportedFilterTileProps = {
|
|
5
6
|
filter: Filter;
|
|
6
7
|
design?: FilterTileDesignOptions;
|
|
@@ -8,6 +9,14 @@ export type UnsupportedFilterTileProps = {
|
|
|
8
9
|
onDelete?: () => void;
|
|
9
10
|
/** Filter edit callback */
|
|
10
11
|
onEdit?: () => void;
|
|
12
|
+
/** Callback to handle filter change (used for lock toggle) */
|
|
13
|
+
onChange?: (filter: Filter) => void;
|
|
14
|
+
/**
|
|
15
|
+
* Config for the filter tile
|
|
16
|
+
*
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
config?: FilterTileConfig;
|
|
11
20
|
/**
|
|
12
21
|
* Render header title
|
|
13
22
|
*
|
|
@@ -20,4 +29,4 @@ export type UnsupportedFilterTileProps = {
|
|
|
20
29
|
*
|
|
21
30
|
* @internal
|
|
22
31
|
*/
|
|
23
|
-
export declare const UnsupportedFilterTile: ({ filter, design, onDelete, onEdit, renderHeaderTitle, }: UnsupportedFilterTileProps) => import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
export declare const UnsupportedFilterTile: ({ filter, design, onDelete, onEdit, onChange, config, renderHeaderTitle, }: UnsupportedFilterTileProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { MenuItem } from '../../../shared/types/menu-item.js';
|
|
2
|
+
export interface FilterTileMenuButtonProps {
|
|
3
|
+
/** Menu items to show. Prepared by the filter tile. */
|
|
4
|
+
menuItems: MenuItem[];
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Menu button that opens a context menu with externally provided items.
|
|
8
|
+
* Used by filter tiles; menu items are built and merged with config in each tile.
|
|
9
|
+
*/
|
|
10
|
+
export declare const FilterTileMenuButton: ({ menuItems }: FilterTileMenuButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { MenuItem } from '../../../../shared/types/menu-item';
|
|
2
|
+
/** Id for the lock/unlock menu item of the filter tile. */
|
|
3
|
+
export declare const FILTER_TILE_LOCK_MENU_ITEM_ID = "filter-tile-lock";
|
|
4
|
+
/**
|
|
5
|
+
* Builds the lock menu item for the filter tile.
|
|
6
|
+
*
|
|
7
|
+
* @param locked - Current lock state
|
|
8
|
+
* @param onLockToggle - Handler for lock toggle
|
|
9
|
+
* @returns Filter tile lock menu item
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export declare function useFilterTileLockMenuItem({ locked, onLockToggle, }: {
|
|
13
|
+
locked: boolean;
|
|
14
|
+
onLockToggle: () => void;
|
|
15
|
+
}): MenuItem;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Filter } from '@sisense/sdk-data';
|
|
2
|
+
import type { MenuItem } from '../../../../shared/types/menu-item';
|
|
3
|
+
import type { FilterTileConfig } from '../../components/filter-tile/types';
|
|
4
|
+
/**
|
|
5
|
+
* Builds the complete menu items list for a filter tile,
|
|
6
|
+
* conditionally prepending them based on config.
|
|
7
|
+
*
|
|
8
|
+
* @param filter - The current filter
|
|
9
|
+
* @param config - Filter tile configuration
|
|
10
|
+
* @param onChange - Callback invoked when the filter changes (e.g., lock toggle)
|
|
11
|
+
* @returns Filter tile menu items
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export declare function useFilterTileMenuItems<T extends Filter>(filter: T, config: FilterTileConfig | undefined, onChange: ((filter: T) => void) | undefined): MenuItem[];
|
|
@@ -1,7 +1,24 @@
|
|
|
1
|
-
import { CalculatedMeasure } from '@sisense/sdk-data';
|
|
2
|
-
import { UseGetSharedFormulaParams } from '../../props';
|
|
3
|
-
import { DataState } from '../../shared/hooks/data-load-state-reducer';
|
|
1
|
+
import { CalculatedMeasure, DataSource } from '@sisense/sdk-data';
|
|
4
2
|
import { HookEnableParam } from '../../shared/hooks/types';
|
|
3
|
+
/**
|
|
4
|
+
* Params of the {@link useGetSharedFormula} hook
|
|
5
|
+
*
|
|
6
|
+
* Can consist either of an oid or a name/dataSource pair
|
|
7
|
+
*/
|
|
8
|
+
export interface UseGetSharedFormulaParams extends HookEnableParam {
|
|
9
|
+
/**
|
|
10
|
+
* Formula identifier
|
|
11
|
+
*/
|
|
12
|
+
oid?: string;
|
|
13
|
+
/**
|
|
14
|
+
* Formula name
|
|
15
|
+
*/
|
|
16
|
+
name?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Data source - e.g. `Sample ECommerce`
|
|
19
|
+
*/
|
|
20
|
+
dataSource?: DataSource;
|
|
21
|
+
}
|
|
5
22
|
/**
|
|
6
23
|
* Parameters for {@link useGetSharedFormula} hook.
|
|
7
24
|
*/
|
|
@@ -95,7 +112,3 @@ export declare const useGetSharedFormula: (params: UseGetSharedFormulaParams) =>
|
|
|
95
112
|
* @internal
|
|
96
113
|
*/
|
|
97
114
|
export declare function useGetSharedFormulaInternal(params: UseGetSharedFormulaParams): SharedFormulaState;
|
|
98
|
-
/**
|
|
99
|
-
* @internal
|
|
100
|
-
*/
|
|
101
|
-
export declare function translateToFormulaResponse(dataState: DataState<CalculatedMeasure | null>): SharedFormulaState;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { AxisLabel, DataLimits, LegendOptions, LineStyleOptions, LineWidth, Markers, Navigator, SeriesLabels } from '../../../../../types.js';
|
|
2
|
+
import type { AxisStyle, CartesianWidgetStyle } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Maps SDK legend options to Fusion DTO legend style.
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export declare function toLegendStyle(legend?: LegendOptions): CartesianWidgetStyle['legend'];
|
|
9
|
+
/**
|
|
10
|
+
* Maps SDK axis label options to Fusion DTO axis style.
|
|
11
|
+
* Fields not stored in SDK (ticks, inactive) use sensible defaults.
|
|
12
|
+
*
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
export declare function toAxisStyle(axisLabel?: AxisLabel): AxisStyle;
|
|
16
|
+
/**
|
|
17
|
+
* Maps SDK series labels to Fusion DTO labels style.
|
|
18
|
+
* For line charts (non-stacked), only enabled and rotation are restored.
|
|
19
|
+
*
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
export declare function toSeriesLabelsStyle(seriesLabels?: SeriesLabels): CartesianWidgetStyle['seriesLabels'];
|
|
23
|
+
/**
|
|
24
|
+
* Maps SDK navigator options to Fusion DTO navigator style.
|
|
25
|
+
* scrollerLocation is not written back (stored in widget.options).
|
|
26
|
+
*
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
export declare function toNavigatorStyle(navigator?: Navigator): CartesianWidgetStyle['navigator'];
|
|
30
|
+
/** Allowed line width tokens for CartesianWidgetStyle (thin=1, bold=3, thick=5). */
|
|
31
|
+
declare const LINE_WIDTH_TOKENS: readonly ["thin", "bold", "thick"];
|
|
32
|
+
export type LineWidthToken = (typeof LINE_WIDTH_TOKENS)[number];
|
|
33
|
+
/**
|
|
34
|
+
* Maps SDK line width options to Fusion DTO line width style.
|
|
35
|
+
* Validates string tokens and maps numeric widths to 'thin' | 'bold' | 'thick'.
|
|
36
|
+
*
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
39
|
+
export declare function toLineWidthStyle(lineWidth?: LineWidth | {
|
|
40
|
+
width?: string | number;
|
|
41
|
+
}): CartesianWidgetStyle['lineWidth'];
|
|
42
|
+
/**
|
|
43
|
+
* Maps SDK markers options to Fusion DTO markers style.
|
|
44
|
+
*
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
export declare function toMarkersStyle(markers?: Markers): CartesianWidgetStyle['markers'];
|
|
48
|
+
/**
|
|
49
|
+
* Maps SDK data limits to Fusion DTO data limits.
|
|
50
|
+
*
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
export declare function toDataLimitsStyle(dataLimits?: DataLimits): CartesianWidgetStyle['dataLimits'];
|
|
54
|
+
/**
|
|
55
|
+
* Maps SDK line chart style options to Fusion CartesianWidgetStyle (DTO).
|
|
56
|
+
* Used when serializing a line chart widget back to WidgetDto.
|
|
57
|
+
*
|
|
58
|
+
* @param styleOptions - Extracted line chart style options from WidgetModel.styleOptions
|
|
59
|
+
* @returns Fusion CartesianWidgetStyle for the widget DTO
|
|
60
|
+
* @internal
|
|
61
|
+
*/
|
|
62
|
+
export declare function toLineWidgetStyle(styleOptions: LineStyleOptions): CartesianWidgetStyle;
|
|
63
|
+
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { MenuItem } from '../../../shared/types/menu-item';
|
|
1
2
|
import { WidgetProps } from '../components/widget/types';
|
|
2
|
-
import { MenuItem } from '../shared/widget-header/types';
|
|
3
3
|
/**
|
|
4
4
|
* Adds a menu item to the widget header.
|
|
5
5
|
* @param menuItem - The menu item to add.
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* @internal
|
|
4
4
|
*/
|
|
5
5
|
export declare const widgetHelpers: {
|
|
6
|
-
withHeaderMenuItem(menuItem: import("
|
|
6
|
+
withHeaderMenuItem(menuItem: import("../../../shared/types/menu-item").MenuItem): (widget: import("../components/widget").WidgetProps) => import("../components/widget").WidgetProps;
|
|
7
7
|
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MenuItem } from '../../../../shared/types/menu-item';
|
|
1
2
|
/**
|
|
2
3
|
* Config for the info button (data passed into the header/toolbar API)
|
|
3
4
|
*/
|
|
@@ -39,20 +40,3 @@ export type ToolbarMenuConfig = {
|
|
|
39
40
|
*/
|
|
40
41
|
items?: MenuItem[];
|
|
41
42
|
};
|
|
42
|
-
/**
|
|
43
|
-
* Menu item in the toolbar
|
|
44
|
-
*/
|
|
45
|
-
export type MenuItem = {
|
|
46
|
-
/**
|
|
47
|
-
* Unique identifier for the menu item
|
|
48
|
-
*/
|
|
49
|
-
id: string;
|
|
50
|
-
/**
|
|
51
|
-
* Handler function to be called when the menu item is clicked
|
|
52
|
-
*/
|
|
53
|
-
onClick: () => void;
|
|
54
|
-
/**
|
|
55
|
-
* Caption of the menu item
|
|
56
|
-
*/
|
|
57
|
-
caption: string;
|
|
58
|
-
};
|
|
@@ -91,6 +91,23 @@ export type AppConfig = {
|
|
|
91
91
|
*/
|
|
92
92
|
alwaysShowErrorText?: boolean;
|
|
93
93
|
};
|
|
94
|
+
/**
|
|
95
|
+
* Custom HTTP headers to attach to every request made by the SDK.
|
|
96
|
+
*
|
|
97
|
+
* Useful for forwarding tracking-related headers (e.g. `x-request-id`, `x-correlation-id`)
|
|
98
|
+
* so that downstream services can correlate SDK traffic.
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```tsx
|
|
102
|
+
* appConfig={{
|
|
103
|
+
* customHttpHeaders: {
|
|
104
|
+
* 'x-correlation-id': '550e8400-e29b-41d4-a716-446655440000',
|
|
105
|
+
* },
|
|
106
|
+
* }}
|
|
107
|
+
* ```
|
|
108
|
+
* @internal
|
|
109
|
+
*/
|
|
110
|
+
customHttpHeaders?: Record<string, string>;
|
|
94
111
|
/**
|
|
95
112
|
* Tracking configuration
|
|
96
113
|
*/
|
|
@@ -3,6 +3,8 @@ import { AppConfig, ThemeSettings } from '../../../types';
|
|
|
3
3
|
import { FeatureMap } from './types/features.js';
|
|
4
4
|
/**
|
|
5
5
|
* Application settings
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
6
8
|
*/
|
|
7
9
|
export type AppSettings = Required<ConfigurableAppSettings> & ServerSettings;
|
|
8
10
|
/**
|
|
@@ -62,6 +64,7 @@ type ServerSettings = {
|
|
|
62
64
|
serverVersion: string;
|
|
63
65
|
serverFeatures: FeatureMap;
|
|
64
66
|
isUnifiedNarrationEnabled?: boolean;
|
|
67
|
+
isSisenseAiEnabled?: boolean;
|
|
65
68
|
user: {
|
|
66
69
|
tenant: {
|
|
67
70
|
name: string;
|
|
@@ -120,7 +120,24 @@ type DimensionalModelingFeature = {
|
|
|
120
120
|
};
|
|
121
121
|
type CloudCDNFeature = Feature<'cloudCDN'>;
|
|
122
122
|
type OnboardingFeature = Feature<'onboarding'>;
|
|
123
|
-
|
|
123
|
+
type AiAssistantFeature = Feature<'aiAssistant', {
|
|
124
|
+
unified?: boolean;
|
|
125
|
+
nlqV3Enabled?: boolean;
|
|
126
|
+
isNlqV3Enabled?: boolean;
|
|
127
|
+
naturalResponseEnabled?: boolean;
|
|
128
|
+
sharedFormulasEnabled?: boolean;
|
|
129
|
+
aiAccessControl?: string;
|
|
130
|
+
quotaNotification?: boolean;
|
|
131
|
+
featureModelType?: string;
|
|
132
|
+
}>;
|
|
133
|
+
type AiStudioFeature = Feature<'aiStudio', {
|
|
134
|
+
realtime?: boolean;
|
|
135
|
+
usageDisplay?: boolean;
|
|
136
|
+
isRealtimeEnabled?: boolean;
|
|
137
|
+
isUsageDisplayEnabled?: boolean;
|
|
138
|
+
}>;
|
|
139
|
+
type NewNavigationBetaFeature = Feature<'newNavigationBeta'>;
|
|
140
|
+
export type Features = (AlertingFeature | LiveQueryFeature | NlqFeature | PivotFeature | CustomCodeFeature | CustomCodeTransformationFeature | BuildDestinationFeature | VersionHistoryFeature | EmbedCodeFeature | LiveCustomColumnFeature | ExportingEngineV2Feature | ExportingXlsxV2Feature | ExportingCsvFeature | ConnectionManagementFeature | SisenseLightFeature | WizardSqlEditorFeature | MultiTenancyFeature | BloxFeature | FunnelFeature | Cloud360Feature | BreakByToggleFeature | GitIntegrationFeature | InfusionFeature | InfusionWebClientFeature | NotebooksFeature | AdminWebClientFeature | DateTimeFiltersFeature | TextFiltersFeature | NumericFiltersFeature | FilterRelationsEnabledFeature | TimeLevelSupportEnabledFeature | SyncDashboardEventsFeature | UserProfileFeature | ScatterFeature | CustomFontsFeature | PreferWidgetImageServerExportFeature | NewAdminUIFeature | SharedFormulasFeature | SideBarFeature | InfusionTokenEndpointFeature | ExplanationsForIndicatorWidgetsFeature | ExplanationsForCategoricalWidgetsFeature | WidgetDesignStyleFeature | FiscalOnFeature | ReactAnalyticsWidgetEditorFeature | DynamicSQLFeature | NewCustomConnectorFeature | CrossTenantPerspectivesFeature | EnableDatamodelPerspectiveFeature | AlwaysDirectRelationsFeature | ModelStatisticsFeature | ExportingCsvFormattedFeature | FlexibleTooltipsFeature | DimensionalModelingFeature | CloudCDNFeature | OnboardingFeature | AiAssistantFeature | AiStudioFeature | NewNavigationBetaFeature)[];
|
|
124
141
|
export type FeatureByKey<K extends string> = Extract<Features[number], {
|
|
125
142
|
key: K;
|
|
126
143
|
}>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { PluginProvider } from './plugin-provider';
|
|
2
|
+
export type { PluginProviderProps } from './plugin-provider';
|
|
3
|
+
export { PluginContext } from './plugin-context';
|
|
4
|
+
export type { PluginContextValue } from './plugin-context';
|
|
5
|
+
export type { Plugin, PluginValidationResult } from './types';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { Plugin } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Context for accessing registered plugins
|
|
5
|
+
*/
|
|
6
|
+
export interface PluginContextValue {
|
|
7
|
+
/**
|
|
8
|
+
* Array of validated and loaded plugins
|
|
9
|
+
*/
|
|
10
|
+
plugins: readonly Plugin[];
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* React context for plugin management
|
|
14
|
+
*/
|
|
15
|
+
export declare const PluginContext: import("react").Context<PluginContextValue>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import { Plugin } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Props for PluginProvider component
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export interface PluginProviderProps {
|
|
9
|
+
/**
|
|
10
|
+
* Array of plugins to register
|
|
11
|
+
*/
|
|
12
|
+
plugins: Plugin[];
|
|
13
|
+
/**
|
|
14
|
+
* Child components
|
|
15
|
+
*/
|
|
16
|
+
children: ReactNode;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Plugin Provider component that validates and provides access to plugins
|
|
20
|
+
*/
|
|
21
|
+
export declare const PluginProvider: React.FC<PluginProviderProps>;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plugin with metadata information
|
|
3
|
+
*
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export interface Plugin {
|
|
7
|
+
/**
|
|
8
|
+
* Unique name identifier for the plugin
|
|
9
|
+
*/
|
|
10
|
+
name: string;
|
|
11
|
+
/**
|
|
12
|
+
* Semantic version of the plugin
|
|
13
|
+
*/
|
|
14
|
+
version: string;
|
|
15
|
+
/**
|
|
16
|
+
* Required SDK API version range using simplified semver with standard AND/OR logic.
|
|
17
|
+
* - **OR**: `||` separates alternative ranges (version must match at least one).
|
|
18
|
+
* - **AND**: space-separated comparators (version must match all in that group).
|
|
19
|
+
*
|
|
20
|
+
* Supported comparators: `^x.y.z`, `~x.y.z`, `x.y.z`, `>=x.y.z`, `>x.y.z`, `<=x.y.z`, `<x.y.z`
|
|
21
|
+
*
|
|
22
|
+
* @example "^2.9.0" — any 2.x from 2.9.0 up (same major)
|
|
23
|
+
* @example "2.20.0" — exact version only
|
|
24
|
+
* @example "~2.9.0" — 2.9.x only (same major and minor)
|
|
25
|
+
* @example ">=2.0.0" — minimum version
|
|
26
|
+
* @example "^2.0.0 || ^3.0.0" — 2.x from 2.0.0 or 3.x from 3.0.0 (OR)
|
|
27
|
+
* @example ">1.2.3 <=2.3.1" — between 1.2.3 and 2.3.1 inclusive (AND)
|
|
28
|
+
* @example ">1.2.3 <=2.3.1 || ^3.0.0" — that range or any 3.x (AND + OR)
|
|
29
|
+
*/
|
|
30
|
+
requiredApiVersion: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Result of plugin validation
|
|
34
|
+
*
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
export interface PluginValidationResult {
|
|
38
|
+
/**
|
|
39
|
+
* The validated plugin
|
|
40
|
+
*/
|
|
41
|
+
plugin: Plugin;
|
|
42
|
+
/**
|
|
43
|
+
* Whether the plugin is valid and should be loaded
|
|
44
|
+
*/
|
|
45
|
+
isValid: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Reason for invalidation if isValid is false
|
|
48
|
+
*/
|
|
49
|
+
reason?: string;
|
|
50
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Plugin } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Validates and returns only valid plugins.
|
|
4
|
+
*
|
|
5
|
+
* @param plugins - Array of plugins to validate
|
|
6
|
+
* @param sdkVersion - Current SDK version
|
|
7
|
+
* @returns Array of valid plugins
|
|
8
|
+
*/
|
|
9
|
+
export declare const getValidPlugins: (plugins: Plugin[], sdkVersion: string) => Plugin[];
|
|
@@ -270,6 +270,12 @@ declare const _default: {
|
|
|
270
270
|
unknownResponse: string;
|
|
271
271
|
invalidInput: string;
|
|
272
272
|
noAvailableDataTopics: string;
|
|
273
|
+
failedToFetchCreditBalance: string;
|
|
274
|
+
};
|
|
275
|
+
quota: {
|
|
276
|
+
exceededErrorTitle: string;
|
|
277
|
+
exceededErrorDescription: string;
|
|
278
|
+
warningDescription: string;
|
|
273
279
|
};
|
|
274
280
|
};
|
|
275
281
|
attribute: {
|
|
@@ -389,6 +395,14 @@ declare const _default: {
|
|
|
389
395
|
nextGroup: string;
|
|
390
396
|
};
|
|
391
397
|
};
|
|
398
|
+
filterTile: {
|
|
399
|
+
menu: {
|
|
400
|
+
lock: string;
|
|
401
|
+
unlock: string;
|
|
402
|
+
lockGroup: string;
|
|
403
|
+
unlockGroup: string;
|
|
404
|
+
};
|
|
405
|
+
};
|
|
392
406
|
};
|
|
393
407
|
}[];
|
|
394
408
|
export default _default;
|
|
@@ -270,6 +270,12 @@ declare const _default: {
|
|
|
270
270
|
unknownResponse: string;
|
|
271
271
|
invalidInput: string;
|
|
272
272
|
noAvailableDataTopics: string;
|
|
273
|
+
failedToFetchCreditBalance: string;
|
|
274
|
+
};
|
|
275
|
+
quota: {
|
|
276
|
+
exceededErrorTitle: string;
|
|
277
|
+
exceededErrorDescription: string;
|
|
278
|
+
warningDescription: string;
|
|
273
279
|
};
|
|
274
280
|
};
|
|
275
281
|
attribute: {
|
|
@@ -389,6 +395,14 @@ declare const _default: {
|
|
|
389
395
|
nextGroup: string;
|
|
390
396
|
};
|
|
391
397
|
};
|
|
398
|
+
filterTile: {
|
|
399
|
+
menu: {
|
|
400
|
+
lock: string;
|
|
401
|
+
unlock: string;
|
|
402
|
+
lockGroup: string;
|
|
403
|
+
unlockGroup: string;
|
|
404
|
+
};
|
|
405
|
+
};
|
|
392
406
|
};
|
|
393
407
|
}[];
|
|
394
408
|
export default _default;
|
|
@@ -270,6 +270,12 @@ declare const _default: {
|
|
|
270
270
|
unknownResponse: string;
|
|
271
271
|
invalidInput: string;
|
|
272
272
|
noAvailableDataTopics: string;
|
|
273
|
+
failedToFetchCreditBalance: string;
|
|
274
|
+
};
|
|
275
|
+
quota: {
|
|
276
|
+
exceededErrorTitle: string;
|
|
277
|
+
exceededErrorDescription: string;
|
|
278
|
+
warningDescription: string;
|
|
273
279
|
};
|
|
274
280
|
};
|
|
275
281
|
attribute: {
|
|
@@ -389,6 +395,14 @@ declare const _default: {
|
|
|
389
395
|
nextGroup: string;
|
|
390
396
|
};
|
|
391
397
|
};
|
|
398
|
+
filterTile: {
|
|
399
|
+
menu: {
|
|
400
|
+
lock: string;
|
|
401
|
+
unlock: string;
|
|
402
|
+
lockGroup: string;
|
|
403
|
+
unlockGroup: string;
|
|
404
|
+
};
|
|
405
|
+
};
|
|
392
406
|
};
|
|
393
407
|
}[];
|
|
394
408
|
export default _default;
|
|
@@ -270,6 +270,12 @@ declare const _default: {
|
|
|
270
270
|
unknownResponse: string;
|
|
271
271
|
invalidInput: string;
|
|
272
272
|
noAvailableDataTopics: string;
|
|
273
|
+
failedToFetchCreditBalance: string;
|
|
274
|
+
};
|
|
275
|
+
quota: {
|
|
276
|
+
exceededErrorTitle: string;
|
|
277
|
+
exceededErrorDescription: string;
|
|
278
|
+
warningDescription: string;
|
|
273
279
|
};
|
|
274
280
|
};
|
|
275
281
|
attribute: {
|
|
@@ -389,6 +395,14 @@ declare const _default: {
|
|
|
389
395
|
nextGroup: string;
|
|
390
396
|
};
|
|
391
397
|
};
|
|
398
|
+
filterTile: {
|
|
399
|
+
menu: {
|
|
400
|
+
lock: string;
|
|
401
|
+
unlock: string;
|
|
402
|
+
lockGroup: string;
|
|
403
|
+
unlockGroup: string;
|
|
404
|
+
};
|
|
405
|
+
};
|
|
392
406
|
};
|
|
393
407
|
}[];
|
|
394
408
|
export default _default;
|
|
@@ -270,6 +270,12 @@ declare const _default: {
|
|
|
270
270
|
unknownResponse: string;
|
|
271
271
|
invalidInput: string;
|
|
272
272
|
noAvailableDataTopics: string;
|
|
273
|
+
failedToFetchCreditBalance: string;
|
|
274
|
+
};
|
|
275
|
+
quota: {
|
|
276
|
+
exceededErrorTitle: string;
|
|
277
|
+
exceededErrorDescription: string;
|
|
278
|
+
warningDescription: string;
|
|
273
279
|
};
|
|
274
280
|
};
|
|
275
281
|
attribute: {
|
|
@@ -389,6 +395,14 @@ declare const _default: {
|
|
|
389
395
|
nextGroup: string;
|
|
390
396
|
};
|
|
391
397
|
};
|
|
398
|
+
filterTile: {
|
|
399
|
+
menu: {
|
|
400
|
+
lock: string;
|
|
401
|
+
unlock: string;
|
|
402
|
+
lockGroup: string;
|
|
403
|
+
unlockGroup: string;
|
|
404
|
+
};
|
|
405
|
+
};
|
|
392
406
|
};
|
|
393
407
|
}[];
|
|
394
408
|
export default _default;
|